{"id":34,"date":"2016-09-14T07:05:09","date_gmt":"2016-09-14T07:05:09","guid":{"rendered":"http:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/?page_id=34"},"modified":"2017-05-12T18:07:21","modified_gmt":"2017-05-12T22:37:21","slug":"system-requirements","status":"publish","type":"page","link":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/system-design\/system-requirements\/","title":{"rendered":"System Requirements"},"content":{"rendered":"<p>Our requirements encompass the features of autonomous vehicles with an ability to perform evasive maneuvers. The robot must be able to perceive its environment and know its state within it. It must be able to navigate from point to point in the environment, and do so reliably without hitting obstacles or going unstable. On top of these standard requirements, our project also requires the robot to be capable of advanced evasive maneuvers, while remaining stable.<\/p>\n<figure class=\"figure-set\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-158\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-content\/uploads\/sites\/15\/2016\/09\/objective_tree-300x205.png\" alt=\"objective_tree\" width=\"450\" height=\"308\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-content\/uploads\/sites\/15\/2016\/09\/objective_tree-300x205.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-content\/uploads\/sites\/15\/2016\/09\/objective_tree-768x526.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-content\/uploads\/sites\/15\/2016\/09\/objective_tree-1024x701.png 1024w\" sizes=\"auto, (max-width: 450px) 100vw, 450px\" \/><\/figure>\n<p>&nbsp;<\/p>\n<h3>Functional Requirements<\/h3>\n<table style=\"width: 754px;height: 187px\">\n<tbody>\n<tr>\n<td style=\"width: 10%\">FR1<\/td>\n<td style=\"width: 80%\">Localize itself and obstacles around it<\/td>\n<td style=\"width: 10%\">m-F<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">FR2<\/td>\n<td style=\"width: 80%\">Drive autonomously between two user-specified waypoints<\/td>\n<td style=\"width: 10%\">m-F<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">FR3<\/td>\n<td style=\"width: 80%\">Reliably reach the goal point<\/td>\n<td style=\"width: 10%\">m-F<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">FR4<\/td>\n<td style=\"width: 80%\">Avoid static obstacles<\/td>\n<td style=\"width: 10%\">d-F, m-S<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">FR5<\/td>\n<td style=\"width: 80%\">Avoid a suddenly-appearing obstacle while driving on a straight path<\/td>\n<td style=\"width: 10%\">m-S<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">FR6<\/td>\n<td style=\"width: 80%\">\u00a0Maintains stable driving at all times<\/td>\n<td style=\"width: 10%\">\u00a0m-S<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>Non-functional Requirements<\/h3>\n<table style=\"width: 100%\">\n<tbody>\n<tr>\n<td style=\"width: 10%\">NF1<\/td>\n<td style=\"width: 80%\">Have an emergency kill switch\/manual override it<\/td>\n<td style=\"width: 10%\">m-F<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">NF2<\/td>\n<td style=\"width: 80%\">Be compact (1\/10th scale RC car)<\/td>\n<td style=\"width: 10%\">m-F<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">NF3<\/td>\n<td style=\"width: 80%\">Be physically robust<\/td>\n<td style=\"width: 10%\">m-F<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">NF4<\/td>\n<td style=\"width: 80%\">Be robust to varying lighting conditions<\/td>\n<td style=\"width: 10%\">d-F, m-S<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">NF5<\/td>\n<td style=\"width: 80%\">Be robust to varying surface conditions<\/td>\n<td style=\"width: 10%\">m-S<\/td>\n<\/tr>\n<tr>\n<td style=\"width: 10%\">NF6<\/td>\n<td>Cost less than $5000 to develop<\/td>\n<td style=\"width: 10%\">m-S<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<h3>Performance Requirements<\/h3>\n<table style=\"width: 100%\">\n<tbody>\n<tr>\n<td style=\"width: 10%\">PR1<\/td>\n<td style=\"width: 80%\">Localize itself to within 30cm (1 vehicle length) accuracy<\/td>\n<td style=\"width: 10%\">m-F<\/td>\n<\/tr>\n<tr>\n<td>PR2<\/td>\n<td>Drive from an initial point to a user-specified goal point with only a<br \/>\n\u2018START\u2019 command from human input<\/td>\n<td>m-F<\/td>\n<\/tr>\n<tr>\n<td>PR3<\/td>\n<td>Avoid static obstacles of sizes larger than 5cmx5cm5cm, located with a<br \/>\nclearance of at least 1 vehicle length between each other, with a 100%<br \/>\nsuccess rate, at low speeds (no wheel slipping)<\/td>\n<td>m-F<\/td>\n<\/tr>\n<tr>\n<td>PR4<\/td>\n<td>Reach the specified goal point within a 30cm radius 70% of the time<\/td>\n<td>d-F, m-S<\/td>\n<\/tr>\n<tr>\n<td>PR5<\/td>\n<td>Avoid a suddenly-appearing (but otherwise static) obstacle while driving on<br \/>\na straight path at a speed greater than 0.5m\/s. The obstacle will appear<br \/>\ninstantaneously at a distance 30cm or greater away from the system.<\/td>\n<td>m-S<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p style=\"text-align: right\">m=mandatory, d=desired, F=fall, S=spring<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Our requirements encompass the features of autonomous vehicles with an ability to perform evasive maneuvers. The robot must be able to perceive its environment and know its state within it. It must be able to navigate from point to point in the environment, and do so reliably without hitting obstacles or going unstable. On top&hellip;&nbsp;<\/p>\n","protected":false},"author":55,"featured_media":0,"parent":24,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"class_list":["post-34","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-json\/wp\/v2\/pages\/34","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-json\/wp\/v2\/users\/55"}],"replies":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-json\/wp\/v2\/comments?post=34"}],"version-history":[{"count":15,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-json\/wp\/v2\/pages\/34\/revisions"}],"predecessor-version":[{"id":515,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-json\/wp\/v2\/pages\/34\/revisions\/515"}],"up":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-json\/wp\/v2\/pages\/24"}],"wp:attachment":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2016teamd\/wp-json\/wp\/v2\/media?parent=34"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}