<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Transport Robot | Personal Website</title><link>https://lxk-221.github.io/tags/transport-robot/</link><atom:link href="https://lxk-221.github.io/tags/transport-robot/index.xml" rel="self" type="application/rss+xml"/><description>Transport Robot</description><generator>Hugo Blox Builder (https://hugoblox.com)</generator><language>en-us</language><lastBuildDate>Fri, 01 Sep 2023 00:00:00 +0000</lastBuildDate><image><url>https://lxk-221.github.io/media/icon_hu68170e94a17a2a43d6dcb45cf0e8e589_3079_512x512_fill_lanczos_center_3.png</url><title>Transport Robot</title><link>https://lxk-221.github.io/tags/transport-robot/</link></image><item><title>Transport Robot</title><link>https://lxk-221.github.io/project/006.transport-robot/</link><pubDate>Fri, 01 Sep 2023 00:00:00 +0000</pubDate><guid>https://lxk-221.github.io/project/006.transport-robot/</guid><description>&lt;h2 id="overview">Overview&lt;/h2>
&lt;p>This project aims to make a lightweight transport robot for a material-carrying competition. Robots are asked to catch materials from several specific positions and carry them to some other positions. The more accurately the materials are placed, and the more materials are handled, the shorter the time used, resulting in a higher score. In this project, a mobile robot with a lightweight arm is designed, and two 2D cameras are used, which are mounted on the end effector of the arm and the side of the robot chassis, respectively. We use a visual serving strategy to adjust our arm to guarantee the accuracy of placing.&lt;/p>
&lt;p>In this project, I was responsible for the control of the chassis, arm, and camera. I use a RANSAC-based method to detect the target and do a close-loop control for placing action. I also participated in the design of the robot, including the layout, the type of arm selected, and the carrying strategy.&lt;/p>
&lt;h2 id="description-of-the-task">Description of the Task&lt;/h2>
&lt;p>Several materials in three colors—red, green, and blue—are arranged in different positions on the shelf. Besides, there are the same number of QR codes on the shelf as the number of materials, each QR code represents the target position of the material. With all this information, the robot should first grasp these materials onto the robot, and carry them to the desired position.&lt;/p>
&lt;p>Besides, black grids on the ground allow us to use grayscale sensors for the robot&amp;rsquo;s localization.&lt;/p>
&lt;p>For the placement, we use a RANSAC-based method to detect the center of the target position according to the camera mounted on the end effector.&lt;/p>
&lt;h2 id="final-version-of-our-robot">Final Version of Our Robot&lt;/h2>
&lt;p>This video shows the whole process of the competition, as we can see, the robot uses a visual serving strategy to adjust the end effector and achieve precise placement.
&lt;div style="position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden;">
&lt;iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" loading="eager" referrerpolicy="strict-origin-when-cross-origin" src="https://www.youtube.com/embed/XEpZW4rSB-8?autoplay=0&amp;controls=1&amp;end=0&amp;loop=0&amp;mute=0&amp;start=0" style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; border:0;" title="YouTube video"
>&lt;/iframe>
&lt;/div>
&lt;/p>
&lt;h2 id="group-and-team">Group and Team&lt;/h2>
&lt;p>
&lt;figure id="figure-team">
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img src="https://lxk-221.github.io/media/projects/transport-robot/Team.jpg" alt="screen reader text" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
Team
&lt;/figcaption>&lt;/figure>
&lt;figure id="figure-group">
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img src="https://lxk-221.github.io/media/projects/transport-robot/Large_Team.jpg" alt="screen reader text" loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;figcaption>
Group
&lt;/figcaption>&lt;/figure>
&lt;/p></description></item></channel></rss>