{"id":1146,"date":"2023-04-24T14:22:04","date_gmt":"2023-04-24T05:22:04","guid":{"rendered":"https:\/\/control.kau.ac.kr\/?page_id=1146"},"modified":"2025-04-09T22:19:02","modified_gmt":"2025-04-09T13:19:02","slug":"robust-path-following-control","status":"publish","type":"page","link":"https:\/\/control.kau.ac.kr\/?page_id=1146","title":{"rendered":"Robust Path Following Control"},"content":{"rendered":"<p><span style=\"font-size: 20px; font-weight: bold;\">Objective<\/span><\/p>\r\n<!-- \/wp:post-content -->\r\n<p><!-- wp:paragraph -->Design a robust nonlinear path following control law for a fixed-wing UAV to track a reference path under the wind disturbance<\/p>\r\n<!-- \/wp:paragraph -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:heading {\"level\":4} -->\r\n<h4 class=\"wp-block-heading\">Disturbance Observer<\/h4>\r\n<!-- \/wp:heading -->\r\n<p><!-- wp:paragraph -->System model for the wind estimator<\/p>\r\n<!-- \/wp:paragraph -->\r\n<p><!-- wp:paragraph -->$$ \\begin{bmatrix} \\dot{x} \\\\ \\dot{y} \\end{bmatrix} = \\begin{bmatrix} V_a \\cos \\psi + W_N \\\\ V_a \\sin \\psi + W_E \\end{bmatrix}$$<\/p>\r\n<!-- \/wp:paragraph -->\r\n<p><!-- wp:paragraph -->Update law of the disturbance observer<\/p>\r\n<!-- \/wp:paragraph -->\r\n<p><!-- wp:paragraph -->$$ \\dot{\\hat{\\bf{w}}} = -T_w \\hat{\\bf{w}} + T_w ( \\dot{\\bf{x}} &#8211; \\bf{u}) $$<br \/>where, \\( \\hat{\\bf{w}} = \\begin{bmatrix} \\hat W_n &amp; \\hat W_e \\end{bmatrix}^T \\) is the wind velocity estimate in the north and east direction, \\( T_w \\) is the diagonal observer gain matrix, and \\( \\bf{u} = \\begin{bmatrix} V_a \\cos \\psi &amp; V_a \\sin \\psi \\end{bmatrix}^T \\)<\/p>\r\n<!-- \/wp:paragraph -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:heading {\"level\":4} -->\r\n<h4 class=\"wp-block-heading\">System Model<\/h4>\r\n<!-- \/wp:heading -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:image {\"align\":\"center\",\"id\":1167,\"sizeSlug\":\"full\",\"linkDestination\":\"media\"} -->\r\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/error_kinematics.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"520\" height=\"326\" class=\"wp-image-1167\" src=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/error_kinematics.jpg\" alt=\"\" \/><\/a>\r\n<figcaption class=\"wp-element-caption\">Error representation on Serret-Frenet frame<\/figcaption>\r\n<\/figure>\r\n<!-- \/wp:image -->\r\n<p><!-- wp:paragraph -->The error kinematics model becomes,<\/p>\r\n<!-- \/wp:paragraph -->\r\n<p><!-- wp:paragraph -->$$ \\begin{align} \\dot{e}_t &amp;= V_g \\cos (\\chi &#8211; \\chi_r ) &#8211; ( 1 &#8211; \\kappa (s) e_n ) \\dot{s} \\\\ \\dot{e}_n &amp;= V_g \\sin (\\chi &#8211; \\chi_r ) &#8211; \\kappa (s) e_t \\dot{s} \\end{align} $$<\/p>\r\n<!-- \/wp:paragraph -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:heading {\"level\":4} -->\r\n<h4 class=\"wp-block-heading\">Path Following Control Law<\/h4>\r\n<!-- \/wp:heading -->\r\n<p><!-- wp:paragraph --><strong>Command Filtered Backstepping<\/strong><\/p>\r\n<!-- \/wp:paragraph -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:image {\"align\":\"center\",\"id\":1170,\"sizeSlug\":\"full\",\"linkDestination\":\"media\"} -->\r\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/Commnadbackstepping.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1108\" height=\"364\" class=\"wp-image-1170\" src=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/Commnadbackstepping.jpg\" alt=\"\" \/><\/a>\r\n<figcaption class=\"wp-element-caption\">Block diagram of the path following control law implementation<\/figcaption>\r\n<\/figure>\r\n<!-- \/wp:image -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:heading -->\r\n<h2 class=\"wp-block-heading\">Hardware-in-the-loop Tests<\/h2>\r\n<!-- \/wp:heading -->\r\n<p><!-- wp:paragraph --><strong>Bspline Path Following<\/strong><\/p>\r\n<!-- \/wp:paragraph -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:image {\"align\":\"center\",\"id\":1171,\"sizeSlug\":\"full\",\"linkDestination\":\"media\"} -->\r\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/FlightExperiment_RobustBspline.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"918\" height=\"539\" class=\"wp-image-1171\" src=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/FlightExperiment_RobustBspline.jpg\" alt=\"\" \/><\/a>\r\n<figcaption class=\"wp-element-caption\">Reference path and actual trajectory of the UAV<\/figcaption>\r\n<\/figure>\r\n<!-- \/wp:image -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:image {\"align\":\"center\",\"id\":1172,\"sizeSlug\":\"full\",\"linkDestination\":\"media\"} -->\r\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/FlightExperiment_RobustBspline_Errorstates.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"531\" height=\"400\" class=\"wp-image-1172\" src=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/FlightExperiment_RobustBspline_Errorstates.jpg\" alt=\"\" \/><\/a>\r\n<figcaption class=\"wp-element-caption\">Error states: Cross-track, along-track, and course angle error<\/figcaption>\r\n<\/figure>\r\n<!-- \/wp:image -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:heading -->\r\n<h2 class=\"wp-block-heading\">Flight Tests<\/h2>\r\n<!-- \/wp:heading -->\r\n<p><!-- wp:paragraph --><strong>Circular trajectory following<\/strong><\/p>\r\n<!-- \/wp:paragraph -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:image {\"align\":\"center\",\"id\":1175,\"width\":504,\"height\":402,\"sizeSlug\":\"full\",\"linkDestination\":\"media\"} -->\r\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><a href=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/FlightExperiment_RobustCircular.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-1175\" src=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/FlightExperiment_RobustCircular.jpg\" alt=\"\" width=\"504\" height=\"402\" \/><\/a>\r\n<figcaption class=\"wp-element-caption\">Reference path and actual trajectory of the UAV<\/figcaption>\r\n<\/figure>\r\n<!-- \/wp:image -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:image {\"align\":\"center\",\"id\":1176,\"sizeSlug\":\"full\",\"linkDestination\":\"media\"} -->\r\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/FlightExperiment_RobustCircularWind.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"531\" height=\"399\" class=\"wp-image-1176\" src=\"https:\/\/control.kau.ac.kr\/wp-content\/uploads\/2023\/04\/FlightExperiment_RobustCircularWind.jpg\" alt=\"\" \/><\/a>\r\n<figcaption class=\"wp-element-caption\">Wind velocity estimate from the flight test data (Moderate wind condition)<\/figcaption>\r\n<\/figure>\r\n<!-- \/wp:image -->\r\n<p>&nbsp;<\/p>\r\n<!-- wp:heading {\"level\":4} -->\r\n<h4 class=\"wp-block-heading\">Conclusion<\/h4>\r\n<!-- \/wp:heading -->\r\n<p><!-- wp:paragraph -->The experimental results show that the improved tracking performance as well as the enhanced robustness, proving the applicability of the proposed algorithm in the various mission of the fixed-wing UAV in wind disturbance environment.<\/p>\r\n<!-- \/wp:paragraph -->\r\n\r\n<!-- wp:spacer \/-->\r\n<h4><strong>Researcher<\/strong><\/h4>\r\n<p><strong>\uae40\uc218\ud604(Kim Su Hyeon)<br \/>angelfive92@gmail.com<\/strong><\/p>","protected":false},"excerpt":{"rendered":"<p>Objective Design a robust nonlinear path following control law for a fixed-wing UAV to track a reference path under the wind disturbance &nbsp; Disturbance Observer System model for the wind estimator $$ \\begin{bmatrix} \\dot{x} \\\\ \\dot{y} \\end{bmatrix} = \\begin{bmatrix} V_a \\cos \\psi + W_N \\\\ V_a \\sin \\psi + W_E \\end{bmatrix}$$ Update law of the &hellip; <a href=\"https:\/\/control.kau.ac.kr\/?page_id=1146\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Robust Path Following Control<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":11,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-templates\/full-width.php","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-1146","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/control.kau.ac.kr\/index.php?rest_route=\/wp\/v2\/pages\/1146","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/control.kau.ac.kr\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/control.kau.ac.kr\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/control.kau.ac.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/control.kau.ac.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1146"}],"version-history":[{"count":28,"href":"https:\/\/control.kau.ac.kr\/index.php?rest_route=\/wp\/v2\/pages\/1146\/revisions"}],"predecessor-version":[{"id":2055,"href":"https:\/\/control.kau.ac.kr\/index.php?rest_route=\/wp\/v2\/pages\/1146\/revisions\/2055"}],"up":[{"embeddable":true,"href":"https:\/\/control.kau.ac.kr\/index.php?rest_route=\/wp\/v2\/pages\/11"}],"wp:attachment":[{"href":"https:\/\/control.kau.ac.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1146"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}