{"id":440,"date":"2016-11-18T00:29:47","date_gmt":"2016-11-18T04:29:47","guid":{"rendered":"http:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/?page_id=440"},"modified":"2016-11-18T20:48:38","modified_gmt":"2016-11-19T00:48:38","slug":"robot-arm-control","status":"publish","type":"page","link":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/robot-arm-control\/","title":{"rendered":"Robot Arm : AEROTECH"},"content":{"rendered":"<p>The first step for achieving this goal of motion tracking and 3D reconstruction involves accurate calibration of the sensors. The scope of the project involves calibrating these sensors accurately using a robotic arm and an engineered calibration target.<\/p>\n<p>The basic system setup has been shown below.<\/p>\n<p>&nbsp;<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-415\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_1.png\" alt=\"aerotech_1\" width=\"863\" height=\"457\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_1.png 863w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_1-300x159.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_1-768x407.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_1-700x371.png 700w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_1-520x275.png 520w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_1-360x191.png 360w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_1-250x132.png 250w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_1-100x53.png 100w\" sizes=\"auto, (max-width: 863px) 100vw, 863px\" \/><\/p>\n<p>&nbsp;<\/p>\n<p>The calibration target would be attached to the end effector of the robotic arm, which would move around in the capture system and calibrate the sensors attached to the capture space. The calibration process would involve four methods, namely: geometric calibration of the cameras, estimation of the illumination: light field calibration, photometric calibration of the cameras and acoustic calibration of the microphones.<\/p>\n<p>In the first\u00a0stage we are testing the geometric calibration on a smaller and manageable case by using a 3-axis linearly actuated 3 degree of freedom(DOF) prismatic jointed robot, namely the AEROTECH robot.<\/p>\n<p>It is of paramount importance that one has the ability to plan and execute the desired trajectory of the calibration target in order to achieve a successful geometric calibration of the camera. The trajectory is embedded with set points at which the camera is triggered by the PSO to capture images of the calibration target. This dictates some amount of motion planning. The AEROTECH programming environment is equipped with command sets which come in handy for trajectory generation.<\/p>\n<p>The next step is executing desired motion in 3D space. We decided on going with a Helical path as it gives us a good test bed to perform camera calibration in a wide variety of positions. Also, we have successfully been able to fire the PSO for all 3 axes with multiple window tracking, so that helps us trigger the camera at desired set points even when traversing a 3D path. Some work has been done on velocity profiling, to prevent jerky motions when the robot changes acceleration or velocity or both.<\/p>\n<p>The steps in sequence highlight the stages of system implementation for the AEROTECH robot arm:<\/p>\n<ol>\n<li>\u00a0Robot setup : Assembling the robot, wiring it to the controller and mounting it. \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0\u00a0<img loading=\"lazy\" decoding=\"async\" class=\"wp-image-517 aligncenter\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Setup-225x300.jpg\" alt=\"setup\" width=\"306\" height=\"408\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Setup-225x300.jpg 225w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Setup-768x1024.jpg 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Setup-700x933.jpg 700w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Setup-520x693.jpg 520w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Setup-360x480.jpg 360w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Setup-250x333.jpg 250w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Setup-100x133.jpg 100w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Setup.jpg 1200w\" sizes=\"auto, (max-width: 306px) 100vw, 306px\" \/><\/li>\n<li>A3200 controller setup: Daisy chaining the controllers to achieve 3-axis PSO triggering, with X axis controller being the master and Y &amp; Z being the slaves. \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <img loading=\"lazy\" decoding=\"async\" class=\"wp-image-515 aligncenter\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/A3200-225x300.jpg\" alt=\"a3200\" width=\"308\" height=\"411\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/A3200-225x300.jpg 225w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/A3200-768x1024.jpg 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/A3200-700x933.jpg 700w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/A3200-520x693.jpg 520w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/A3200-360x480.jpg 360w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/A3200-250x333.jpg 250w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/A3200-100x133.jpg 100w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/A3200.jpg 1200w\" sizes=\"auto, (max-width: 308px) 100vw, 308px\" \/><\/li>\n<li>Cable management: Installing cable carriers to avoid cable entanglement. \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 <img loading=\"lazy\" decoding=\"async\" class=\"wp-image-516 aligncenter\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Cable-226x300.jpg\" alt=\"cable\" width=\"316\" height=\"420\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Cable-226x300.jpg 226w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Cable-700x928.jpg 700w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Cable-520x689.jpg 520w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Cable-360x477.jpg 360w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Cable-250x331.jpg 250w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Cable-100x133.jpg 100w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/Cable.jpg 706w\" sizes=\"auto, (max-width: 316px) 100vw, 316px\" \/><\/li>\n<li>XYZ-axes motion : Testing motion of robot along all axes.<\/li>\n<li>PSU for Z-axis: Power Supply Unit for Z-axis motor as the controller&#8217;s inbuilt power supply unit seems to be malfunctioning.<\/li>\n<li>Continuous pulse output \u2013 Testing PSO : Testing the performance of Position Synchronized Output from the robot.<\/li>\n<li>Multiple axis PSO triggering : Configuring the PSO of the robot to trigger the camera when desired set points are reached.<\/li>\n<li>Multiple axis PSO triggering, PULSE mode: Integrating the PSO output from the robot with the camera trigger setup ans successfully capturing images.<\/li>\n<li>Trajectory generation: Helical Path<img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-444\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_2.png\" alt=\"aerotech_2\" width=\"933\" height=\"334\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_2.png 933w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_2-300x107.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_2-768x275.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_2-700x251.png 700w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_2-520x186.png 520w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_2-360x129.png 360w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_2-250x89.png 250w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_2-100x36.png 100w\" sizes=\"auto, (max-width: 933px) 100vw, 933px\" \/><\/li>\n<li>Velocity Profiling : To reduce jerks and motion blur while capturing images.<\/li>\n<\/ol>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-445\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_3.png\" alt=\"aerotech_3\" width=\"907\" height=\"269\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_3.png 907w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_3-300x89.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_3-768x228.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_3-700x208.png 700w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_3-520x154.png 520w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_3-360x107.png 360w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_3-250x74.png 250w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-content\/uploads\/sites\/18\/2016\/11\/aerotech_3-100x30.png 100w\" sizes=\"auto, (max-width: 907px) 100vw, 907px\" \/><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The first step for achieving this goal of motion tracking and 3D reconstruction involves accurate calibration of the sensors. The scope of the project involves calibrating these sensors accurately using a robotic arm and an engineered calibration target. The basic [&hellip;]<\/p>\n","protected":false},"author":89,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-440","page","type-page","status-publish","hentry","clearfix"],"_links":{"self":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-json\/wp\/v2\/pages\/440","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-json\/wp\/v2\/users\/89"}],"replies":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-json\/wp\/v2\/comments?post=440"}],"version-history":[{"count":7,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-json\/wp\/v2\/pages\/440\/revisions"}],"predecessor-version":[{"id":520,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-json\/wp\/v2\/pages\/440\/revisions\/520"}],"wp:attachment":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamg\/wp-json\/wp\/v2\/media?parent=440"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}