{"id":306,"date":"2019-04-04T23:04:30","date_gmt":"2019-04-04T23:04:30","guid":{"rendered":"http:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/?page_id=306"},"modified":"2019-12-13T22:40:10","modified_gmt":"2019-12-13T22:40:10","slug":"uav-subsystem-progress","status":"publish","type":"page","link":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/system-implementation\/uav-subsystem-progress\/","title":{"rendered":"UAV Subsystem Progress"},"content":{"rendered":"<div id=\"pl-306\"  class=\"panel-layout\" ><div id=\"pg-306-0\"  class=\"panel-grid panel-no-style\" ><div id=\"pgc-306-0-0\"  class=\"panel-grid-cell\" ><div id=\"panel-306-0-0-0\" class=\"so-panel widget panel-first-child\" data-index=\"0\" ><\/div><div id=\"panel-306-0-0-1\" class=\"so-panel widget widget_text\" data-index=\"1\" >\t\t\t<div class=\"textwidget\"><p><strong>Update: UAV subsystem Fall performance (Dec. 13, 2019)<\/strong><\/p>\n<p><span style=\"font-weight: 400\">The UAV can realize motion control, localization, GPS waypoint navigation, and temperature measurement. The UAV is integrated into the ROS environment so that it can be controlled and provides real-time feedback via ROS Message. To ensure safety, the UAV requires manual control to take off. Once the UAV is hovering successfully, it would go to the target waypoint after receiving the ROS command, which contains the information of latitude, longitude, and height of the waypoint. The UAV would hover at the waypoint until the convergence of GPS and temperature data. The accuracy of waypoint navigation is within \u00b1 0.5m. The accuracy of temperature measurement is about \u00b1 1.2\u00b0C (when measuring ambient temperature).<\/span><\/p>\n<p>By Preliminary Design Review (Mar. 18, 2019), the progress on UAV includes:<\/p>\n<ul>\n<li>Finished setting up the high-level processor<\/li>\n<li>Finished registration<\/li>\n<li>Finished setting up the ROS environment<\/li>\n<li>Implemented temperature sensor reading script<\/li>\n<li>Finished UAV indoor takeoff test and motor test<\/li>\n<li>Implemented UAV waypoint navigation using ROS<\/li>\n<li>Test UAV waypoint navigation using Xbee<\/li>\n<\/ul>\n<h2>UAV High-level Processor Setup<\/h2>\n<p>We set up the high-level processor and the ROS environment on the onboard computer of Asctec Pelican.\u00a0 The setup guide can be found here:<\/p>\n<p><a href=\"http:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/documentation\/asctec-pelican-uav-setup-guidance\/\">Asctec Pelican Setup Guide<\/a><\/p>\n<h2>Navigation Algorithm<\/h2>\n<div class=\"page\" title=\"Page 19\">\n<div class=\"section\">\n<div class=\"layoutArea\">\n<div class=\"column\">\n<p>The waypoint navigation algorithm of the UAV uses the GPS data to do the localization and takes the data from the pressure sensor to estimate the height. It contains three major parts: ROS Interface, Autopilot system, and PID motor controller. The ROS interface is able to transfer ROS Messages into corresponded serial commands. After receiving the serial command, the Autopilot system will be able to generate the command of motor speed which will be fed to the PID motor controller.<\/p>\n<p>The Autopilot system contains the feedback control loop which will make sure that the stop position is within the tolerance range of the target waypoint. The UAV will hover at the target waypoint until the GPS data is converged and then go to the next waypoint.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<h2>Temperature Measurement<\/h2>\n<div class=\"page\" title=\"Page 19\">\n<div class=\"section\">\n<div class=\"layoutArea\">\n<div class=\"column\">\n<div class=\"page\" title=\"Page 19\">\n<div class=\"section\">\n<div class=\"layoutArea\">\n<div class=\"column\">\n<p>The temperature measurement is performed using an NTC thermistor based USB temperature sensor. We implemented a ROS wrapper for the temperature sensing on board which reads temperature data from the sensor (an HID device) and publish the temperature data. The temperature sensor is placed at the bottom of the UAV.<\/p>\n<\/div>\n<h2>Current Status (By SVD)<\/h2>\n<div class=\"page\" title=\"Page 19\">\n<div class=\"section\">\n<div class=\"layoutArea\">\n<div class=\"column\">\n<p>The UAV is able to realize motion control, localization, GPS waypoint navigation, and temperature measurement. The UAV is integrated into the ROS environment so that it is able to be controlled and provide real-time feedback via ROS Message. For safety concern, the UAV requires manual control to take-off. Once the UAV is hovering successfully, it will go to the target waypoint after receiving the ROS command which contains the information of latitude, longitude, and height of the waypoint. The UAV will hover at the waypoint until the convergence of GPS and temperature data. The accuracy of waypoint navigation is lower than 0.5m. The accuracy of temperature measurement is about 1.2\u00b0C.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\t\t<\/div><div id=\"panel-306-0-0-2\" class=\"so-panel widget widget_media_video\" data-index=\"2\" ><h3 class=\"widget-title\">UAV Motor Test Using ROS<\/h3><div style=\"width:100%;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-306-1\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/youtube\" src=\"https:\/\/youtu.be\/Cn8yz1gd8hY?_=1\" \/><a href=\"https:\/\/youtu.be\/Cn8yz1gd8hY\">https:\/\/youtu.be\/Cn8yz1gd8hY<\/a><\/video><\/div><\/div><div id=\"panel-306-0-0-3\" class=\"so-panel widget widget_media_video\" data-index=\"3\" ><h3 class=\"widget-title\">UAV Height Mode Flight Test<\/h3><div style=\"width:100%;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-306-2\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/youtube\" src=\"https:\/\/youtu.be\/V077NkBLRao?_=2\" \/><a href=\"https:\/\/youtu.be\/V077NkBLRao\">https:\/\/youtu.be\/V077NkBLRao<\/a><\/video><\/div><\/div><div id=\"panel-306-0-0-4\" class=\"so-panel widget widget_media_video\" data-index=\"4\" ><h3 class=\"widget-title\">UAV Waypoint Navigation Test Using XBee<\/h3><div style=\"width:100%;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-306-3\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/youtube\" src=\"https:\/\/youtu.be\/xZjFAu11o-I?_=3\" \/><a href=\"https:\/\/youtu.be\/xZjFAu11o-I\">https:\/\/youtu.be\/xZjFAu11o-I<\/a><\/video><\/div><\/div><div id=\"panel-306-0-0-5\" class=\"so-panel widget widget_media_video panel-last-child\" data-index=\"5\" ><h3 class=\"widget-title\">SVD UAV Test<\/h3><div style=\"width:100%;\" class=\"wp-video\"><video class=\"wp-video-shortcode\" id=\"video-306-4\" preload=\"metadata\" controls=\"controls\"><source type=\"video\/youtube\" src=\"https:\/\/youtu.be\/LTnyRVrexw4?_=4\" \/><a href=\"https:\/\/youtu.be\/LTnyRVrexw4\">https:\/\/youtu.be\/LTnyRVrexw4<\/a><\/video><\/div><\/div><\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>By Preliminary Design Review (Mar. 18, 2019), the progress on UAV includes:Finished setting up the high-level processorFinished registrationFinished setting up the ROS environmentImplemented temperature sensor reading scriptFinished UAV indoor takeoff test and motor testImplemented UAV waypoint navigation using ROSTest UAV [&hellip;]<\/p>\n","protected":false},"author":164,"featured_media":0,"parent":285,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-306","page","type-page","status-publish","hentry","clearfix"],"_links":{"self":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/wp-json\/wp\/v2\/pages\/306","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/wp-json\/wp\/v2\/users\/164"}],"replies":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/wp-json\/wp\/v2\/comments?post=306"}],"version-history":[{"count":10,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/wp-json\/wp\/v2\/pages\/306\/revisions"}],"predecessor-version":[{"id":539,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/wp-json\/wp\/v2\/pages\/306\/revisions\/539"}],"up":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/wp-json\/wp\/v2\/pages\/285"}],"wp:attachment":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2018teamg\/wp-json\/wp\/v2\/media?parent=306"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}