{"id":47,"date":"2026-02-17T16:15:26","date_gmt":"2026-02-17T16:15:26","guid":{"rendered":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/system-design\/"},"modified":"2026-05-02T23:56:36","modified_gmt":"2026-05-02T23:56:36","slug":"system-design","status":"publish","type":"page","link":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/system-design\/","title":{"rendered":"System Design"},"content":{"rendered":"\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">System Requirements<\/h3>\n\n\n\n<figure class=\"wp-block-table alignwide is-style-stripes\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>ID<\/strong><\/td><td><strong>Functional Requirement<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><tr><td>F.R.1<\/td><td>Detect anomaly<\/td><td>The system shall detect anomaly like fighting, loitering, trespassing, etc.<\/td><\/tr><tr><td>F.R.2<\/td><td>Enable K7 to patrol<\/td><td>The system shall enable robots to autonomously patrol along predefined paths.<\/td><\/tr><tr><td>F.R.3<\/td><td>Enable K7 to avoid obstacles<\/td><td>The system shall enable robots to detect and navigate around stationary and moving objects to prevent collisions.<\/td><\/tr><tr><td>F.R.4<\/td><td>Generate collision free path<\/td><td>The system shall generate collision free path to a given goal point within lanelet.<\/td><\/tr><tr><td>F.R.5<\/td><td>Receive waypoints from the user<\/td><td>The system shall allow users to input or select waypoints for the robot to follow.<\/td><\/tr><tr><td>F.R.6<\/td><td>Provide waypoint suggestion to the user<\/td><td>The system shall provide user recommended waypoints from AI model based on historical data.<\/td><\/tr><tr><td>F.R.7<\/td><td>Visualize patrol status<\/td><td>The system shall provide a real-time visual representation of the robot&#8217;s current location and patrol progress on top of the map on dashboard.<\/td><\/tr><tr><td>F.R.8<\/td><td>Redirect K7<\/td><td>The system shall change the robot&#8217;s current destination for emergency alarm.<\/td><\/tr><tr><td>F.R.9<\/td><td>Support alarm verification<\/td><td>The system shall allow users to confirm or dismiss detected security alarms or anomalies.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-table alignwide\"><table class=\"has-fixed-layout\"><thead><tr><th>Mandatory Functional Requirements<\/th><th>Mandatory Performance Requirements<\/th><\/tr><\/thead><tbody><tr><td>M.F.1: Build Maps<\/td><td>M.P.1.1: Improve global map consistency with no structural misalignment after loop closure obtains \u2265 1 loop edge.<br>M.P.1.2: Erase 100% dynamic objects and outliers from the final map to enhance static map quality by reducing wall misalignment \u2264 15%.<\/td><\/tr><tr><td>M.F.2: Localize the Vehicle<\/td><td>M.P.2.1: Initialize vehicle position with user command with a success rate \u2265 90% when user input is within 50 cm from the true global position.<br>M.P.2.2: Localize vehicle position with a success rate \u2265 95% under various scenarios (Tepper, NSH, Knightscope).<\/td><\/tr><tr><td>M.F.3: Plan Smooth Collision-Free Path with Safe Margin<\/td><td>M.P.3.1: Plan path \u2265 5cm from the obstacles.<br>M.P.3.2: Plan Path that is collision-free within 5s.<br>M.P.3.3: Smoothness \u2265 18 in general cases.<\/td><\/tr><tr><td>M.F.4: Patrol along Planned Path<\/td><td>M.P.4.1: The lateral overshoot shall not exceed 10% of the step-offset.<br>M.P.4.2: The steady-state cross-track error (CTE) shall remain &lt; 5 cm while traversing at a constant velocity of 1.5 m\/s.<\/td><\/tr><tr><td>M.F.5: User Interaction<\/td><td>M.P.5.1: Connect automatically within 30 seconds once robot system launch.<br>M.P.5.2:Publish waypoints to ROS2 stack within 50 ms after publish button pressed.<br>M.P.5.3: Notify operator with 50 ms once robot stack shutdown.<\/td><\/tr><tr><td><\/td><td><\/td><\/tr><tr><td><\/td><td><\/td><\/tr><tr><td><\/td><td><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<figure class=\"wp-block-table alignwide\"><table class=\"has-fixed-layout\"><thead><tr><th>ID<\/th><th>Non-Functional Requirement<\/th><\/tr><\/thead><tbody><tr><td>M.N.1<\/td><td>The system will allow non-expert users to configure patrol without prior knowledge related to robot.<\/td><\/tr><tr><td>M.N.2<\/td><td>The system shall provide real-time visualized warnings and status notifications to ensure operator awareness of system conditions.<\/td><\/tr><tr><td>M.N.3<\/td><td>The system shall support modular planner architecture, allowing different planning algorithms to be independently developed, integrated, and replaced.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Function Architecture<\/h3>\n\n\n\n<figure class=\"wp-block-image alignwide size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"678\" src=\"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Functional-Architecture-New-2026-SVD.drawio-1024x678.png\" alt=\"\" class=\"wp-image-556\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Functional-Architecture-New-2026-SVD.drawio-1024x678.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Functional-Architecture-New-2026-SVD.drawio-300x198.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Functional-Architecture-New-2026-SVD.drawio-768x508.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Functional-Architecture-New-2026-SVD.drawio-1536x1016.png 1536w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Functional-Architecture-New-2026-SVD.drawio-2048x1355.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Cyberphysical Architecture<\/h3>\n\n\n\n<figure class=\"wp-block-image alignwide size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"654\" src=\"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Cyberphysical-Architecture-New-2026-SVD.drawio-1024x654.png\" alt=\"\" class=\"wp-image-557\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Cyberphysical-Architecture-New-2026-SVD.drawio-1024x654.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Cyberphysical-Architecture-New-2026-SVD.drawio-300x192.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Cyberphysical-Architecture-New-2026-SVD.drawio-768x491.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Cyberphysical-Architecture-New-2026-SVD.drawio-1536x981.png 1536w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/05\/PatrolKnight-Cyberphysical-Architecture-New-2026-SVD.drawio-2048x1308.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">System Design Description<\/h3>\n\n\n\n<p>The system integrates external sensor data, localization information, user input, and predictive modeling into a unified global planning framework. The architecture is structured around the patrol robot planning and user interaction system<\/p>\n\n\n\n<p><strong>User Interface<\/strong><\/p>\n\n\n\n<p>The User Interface module enables structured human-in-the-loop interaction while maintaining transparency in system decisions. Raw user input is first processed into structured waypoint constraints or mission preferences, which are then provided to the planning module. Once route candidates are generated, the interface visualizes multiple route options (e.g., gray lines) alongside the selected route (e.g., blue line) to enhance interpretability and operator trust. This separation between input processing, visualization, and planning logic ensures modularity and prevents tight coupling between UI components and core decision algorithms. By explicitly exposing alternative route options and current execution plans, the system supports informed supervision without overwhelming the operator, thereby balancing autonomy and controllability.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><\/li>\n<\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/Screenshot-from-2026-02-12-22-53-32-1024x640.png\" alt=\"\" class=\"wp-image-182\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/Screenshot-from-2026-02-12-22-53-32-1024x640.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/Screenshot-from-2026-02-12-22-53-32-300x188.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/Screenshot-from-2026-02-12-22-53-32-768x480.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/Screenshot-from-2026-02-12-22-53-32-1536x960.png 1536w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/Screenshot-from-2026-02-12-22-53-32.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><strong>Path Planning <\/strong><\/p>\n\n\n\n<p>The Global Planning module serves as the decision-making core of the system. It integrates updated environmental models, robot localization, predictive state estimates, and user-defined constraints to generate feasible route candidates. Rather than producing a single deterministic path, the planner generates multiple route options to enable comparative evaluation. These candidates are assessed using predefined cost functions that may incorporate path length, safety margins, environmental risk levels, and predicted future state changes. The system then selects an optimal route for execution while logging both candidate options and the final decision for traceability and post-mission analysis. This multi-stage planning structure improves robustness, supports explainability, and allows future integration of feasibility-aware evaluation methods such as MAPF-based coordination or dynamic risk modeling.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"345\" src=\"http:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/image-19-1024x345.png\" alt=\"\" class=\"wp-image-133\" srcset=\"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/image-19-1024x345.png 1024w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/image-19-300x101.png 300w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/image-19-768x259.png 768w, https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-content\/uploads\/sites\/96\/2026\/02\/image-19.png 1355w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>On the Knightscope platform, the lower-level motion generation stack leverages Autoware for both behavior planning and local trajectory execution. The behavior planner is responsible for high-level decision-making, such as lane following, stopping, obstacle response, and scenario-based motion transitions. It interprets the global route provided by our system and determines context-aware driving behavior. Downstream of the behavior planner, the local planner generates dynamically feasible trajectories while accounting for vehicle kinematics, collision avoidance, and real-time obstacle updates. By relying on Autoware\u2019s mature local and behavior planning modules, we ensure industrial-grade safety constraints, smooth trajectory generation, and real-time dynamic obstacle handling. This separation allows our system to focus on global route generation and mission-level decision logic, while delegating motion-level feasibility and safety-critical control to a well-tested autonomy framework.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/autowarefoundation.github.io\/autoware_universe\/main\/docs\/assets\/images\/autoware_universe_front.png\" alt=\"\" \/><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>System Requirements ID Functional Requirement Description F.R.1 Detect anomaly The system shall detect anomaly like fighting, loitering, trespassing, etc. F.R.2 Enable K7 to patrol The system shall enable robots to autonomously patrol along predefined paths. F.R.3 Enable K7 to avoid obstacles The system shall enable robots to detect and navigate around stationary and moving objects [&hellip;]<\/p>\n","protected":false},"author":451,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-47","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-json\/wp\/v2\/pages\/47","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-json\/wp\/v2\/users\/451"}],"replies":[{"embeddable":true,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-json\/wp\/v2\/comments?post=47"}],"version-history":[{"count":10,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-json\/wp\/v2\/pages\/47\/revisions"}],"predecessor-version":[{"id":558,"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-json\/wp\/v2\/pages\/47\/revisions\/558"}],"wp:attachment":[{"href":"https:\/\/mrsdprojects.ri.cmu.edu\/2026teame\/wp-json\/wp\/v2\/media?parent=47"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}