Submitted:
25 June 2025
Posted:
26 June 2025
You are already at the latest version
Abstract
Keywords:
1. Introduction
2. Background
3. Methodology
4. Supervisor DEVS Model Development
4.1. Supervisor Coupled Model
- The Takeoff model is used to initialize the mission, verify the status of the autonomy system prior to takeoff, and to alert the other Supervisor sub-components that the mission has started.
- The On Route model facilitates the forwarding of mission items (e.g., waypoints) to the flight control computer as they are reached throughout the flight.
- The Landing model defines the behavior of the Supervisor from the receipt of the last mission item until the helicopter has landed or handed control to the pilot, through several trajectories based on the availability of safe landing points.
4.2. Landing Point Manager Atomic Model
5. Implementing the Supervisor
5.1. Landing Point Manager Atomic Model
5.2. Supervisor Coupled Model
6. Interface Development
6.1. UDP Output Interface
6.2. Shared Memory Interface
6.3. Reliable UDP Interface
7. Supervisor Model Verification and Deployment
7.1. Testing in Simulated Time
7.2. Deployment on Bell 412
- Flight Control Computer (FCC): Responsible for inner/outer-loop autonomy state control, the FCC sends digital commands to the helicopter's flight controls and manages the aircraft's trajectory during flight, executing tasks such as automatic take-off and waypoint navigation.
- Mission Planner: Utilizing a custom NRC version of QGroundControl [27], this software configures autonomous helicopter missions, specifying take-off locations, creating flight plans, and defining speeds and altitudes between waypoints.
- Mission Manager: NRC-developed software that oversees the helicopter's flight path, manages mission execution, and conveys the autonomy's intent (desired speed, heading, altitude, etc.) to the autonomy guidance module via visual cues.
- Landing Zone Evaluation Module: Comprising the Peregrine LIDAR system [28], this module generates coordinates for the most suitable landing location within the designated landing area.
- Autonomy Guidance: This pilot display software communicates the autonomy's intent and reference points to the pilot.
- Aircraft Inertial Navigation System (INS): Located within the aircraft, this module provides information about the aircraft's state, including roll, pitch, yaw, position, speed, and more, to the other autonomy components.
- Supervisory Controller: Serving as a high-level supervisory controller, it monitors the state of the autonomy system and its sub-systems.
8. Conclusions and Future Work
Author Contributions
Funding
Conflicts of Interest
Abbreviations
| NRC | National Research Council |
| DEVS | Discrete Event System Specification |
| CVLAD | Canadian Vertical Lift Autonomy Demonstration |
| ASRA | Advanced Systems Research Aircraft |
| FCC | Flight Control Computer |
| DES | Discrete-Event System |
| TTM | Transition Time Model |
| PLP | Planned Landing Point |
| LP | Landing Point |
| UDP | User Datagram Protocol |
| TCP | Transmission Control Protocol |
| ARQ | Automatic Repeat Request |
| RUDP | Reliable User Datagram Protocol |
References
- Colucci, F. 2022. “Supervised Autonomy, Step-by-Step”. Vertiflite, Fort Worth, USA: Vertical Flight Society.
- Zeigler, B. P., T. G. Kim, and H. Praehofer. 2000. Theory of Modeling and Simulation: Integrating Discrete Event and Continuous Complex Dynamic Systems. New York: Academic Press.
- Belloli, L., D. Vicino, C. In Ruiz-Martin, and G. Wainer. 2019. “Building Devs Models with the Cadmium Tool”. In Proceedings of the 2019 Winter Simulation Conference, edited by N. Mustafee, K.H.G. Bae, S. Lazarova-Molnar, M. Rabe, C. Szabo, P. Haas, and Y.-J. Son, Piscataway, New Jersey: Institute of Electrical and Electronics Engineers, Inc. 45-59. [Google Scholar]
- Wonham, W.M., K. Cai, and K. Rudie. 2017. “Supervisory Control of Discrete-Event Systems: A Brief History–1980-2015”. IFAC-PapersOnLine 50(1): 1791-1797.
- Ramadge, P. J.; Wonham, W. M. (87). "Supervisory Control of a Class of Discrete Event Processes". SIAM Journal on Control and Optimization. 25 (1): 206–230. 19 January. [CrossRef]
- Song, H. , and T. Kim. 2005. “Application of Real-Time DEVS to Analysis of Safety-Critical Embedded Control Systems: Railroad Crossing Control Example”. Simulation 81(2): 119–136. [CrossRef]
- Hejase M, Oguz AE, Kurt A, Ozguner U and Redmill K. “A Hierarchical Hybrid State System Based Controller Design Approach for an Autonomous UAS Mission” 16 Conference: 16th AIAA Aviation Technology, Integration, and Operations Conference. 20 June. [CrossRef]
- Delbene A, Baglietto M, Simetti E. Visual Servoed Autonomous Landing of an UAV on a Catamaran in a Marine Environment. Sensors (Basel). 2022 ;22(9):3544. 6 May. [CrossRef] [PubMed] [PubMed Central]
- Borshchova, I. 2017. Vision-based Automatic Landing of a Rotary UAV. PhD Thesis. St. John’s: Faculty of Engineering and Applied Science. Memorial University of Newfoundland.
- Qt, “QStateMachine class,” Qt Documentation. [Online]. Available: https://doc.qt.io/qt-6.2/qstatemachine.html. [Accessed: 13-Jun-2025].
- Praehofer, H. , and D. In Pree. 1993. “Visual Modeling of DEVS-based Multiformalism Systems Based on Higraphs”. In Proceedings of the 1993 Winter Simulation Conference, edited by G.W. Evans, M. Mollaghasemi, E.C. Russell, and W.E. Biles, Piscataway, New Jersey: Institute of Electrical and Electronics Engineers, Inc. 595–603. [Google Scholar]
- Wainer, G. A. 2009. Discrete-Event Modeling and Simulation: A Practitioner's Approach. Boca Raton: CRC Press.
- Van Tendeloo, Y. , and H. Vangheluwe. 2017. “An Evaluation of DEVS Simulation Tools”. SIMULATION 93(2):103-121. [CrossRef]
- Zeigler, B.P., A. C. Chow, and D.H. Kim. 1994. “Abstract Simulator for the Parallel DEVS Formalism”. Proceedings of the Fifth Annual Conference on AI, Simulation, and Planning in High Autonomy Systems. 7th – 9th 94, Gainesville, Florida, USA, 157-163. 19 December.
- Niyonkuru, D. , and G. Wainer. 2021. “A DEVS Based Engine for Building Digital Quadruplets”. Simulation 97:7 485-506. [CrossRef]
- Hu, X. , and B. Zeigler. 2005. “Model Continuity in the Design of Dynamic Distributed Real-Time Systems”. 8: IEEE Transactions on Systems, Man, and Cybernetics - Part A: Systems and Humans 35(6). [CrossRef]
- Moallemi M., S. Jafer, A. In S. Ahmed, and G. Wainer. 2011. Interfacing DEVS and visualization models for emergency management. In Proceedings of the 2011 Symposium on Theory of Modeling & Simulation: DEVS Integrative M&S Symposium (TMS-DEVS '11). Society for Computer Simulation International, San Diego, CA, USA; 111–116. [Google Scholar]
- Wainer, G.A. , and E. Glinsky. 2004. “Model-Based Development of Embedded Systems with RT-CD++.” 10th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), 25th-28th 04, Toronto, ON, Canada. 20 May.
- Bergero, F. , and E. Kofman. 2011. “PowerDEVS: a Tool for Hybrid System Modeling and Real-Time Simulation”. Simulation 87(1–2): 113–132. [CrossRef]
- Gholami S, and H. Sarjoughian. 2017. “Action-Level Real-Time Network-On-Chip Modeling”. 2: Simulation Modelling Practice and Theory 77.
- Hughes, B. and M. Cotterell, “Selection of an Appropriate Project Approach,” in Software Project Management, London u.a.: McGraw-Hill, 1999, pp. 64–70.
- van Lamsweerde, “Domain Understanding and Requirement Elicitation,” in Requirements engineering: From system goals to UML models to software specifications, Chichester, UK: John Wiley, 2009, pp. 61–87.
- Ammann P and, J. Offutt, Introduction to software testing. Cambridge: Cambridge University Press, 2017.
- J. Horner, T. J. Horner, T. Trautrim, C. Ruiz-Martin, I. Borshchova, and G. Wainer, “Winter Simulation Conference 2022,” in Proceedings of the Winter Simulation Conference 2022, pp. 441–452.
- Tanenbaum S, N. I. Feamster, and D. Wetherall, Computer Networks. London: Pearson, 2021.
- Kohlhoff C, “Boost ASIO Documentation,” Boost C++ libraries, 08-Dec-2022. [Online]. Available: https://www.boost.org/doc/libs/1_81_0/doc/html/boost_asio.html. [Accessed: 01-Jun-2025].
- DroneControl, 2019, QGroundControl, Available at: http://qgroundcontrol.com, [Accessed: 01-Jun-2025].
- Aaron Aupperlee, 2017, The Pittsburgh Tribune-Review, Available at: https://www.govtech.com/fs/airbus-partners-with-near-earth-autonomy-to-ensure-self-flying-cars-can-land-safely.html#:~:text=A%20laser%20scanner%20developed%20by%20Near%20Earth%20Autonomy,cars%2C%20and%20for%20slopes%20that%20could%20complicate%20landing. [Accessed: 01-Jun-2025].
















| Input Port | Description of the inputs received |
| aircraft_state | Receives the current state of the aircraft |
| landing_achieved | Signal indicating that the aircraft has successfully landed |
| lp_recv | Receives the landing point from the perception system |
| perception_status | Operational status of the perception system |
| pilot_takeover | Signal indicating that the pilot has taken control |
| plp_ach | Signal indicating that the planned landing point has been achieved |
| start_supervisor | Signal indicating the mission has started and takeoff should commence |
| waypoint | Receives the next waypoint in the mission to handle |
| Output port | Description of the outputs sent |
| control_yielded | Sends an acknowledgement that the supervisor has relinquished control of the aircraft |
| fcc_command_hover | Sends hover command to the FCC |
| fcc_command_land | Sends land command to the FCC |
| fcc_command_orbit | Sends orbit command to the FCC |
| fcc_command_velocity | Sends velocity command to the FCC |
| fcc_waypoint_update | Sends waypoint command to the FCC |
| lp_expired | Sends notification that the LP accept timer has expired |
| lp_new | Sends new valid landing point |
| mission_complete | Declares the mission as being complete after landing |
| notify_pilot | Notifies the pilot that they should take control of the aircraft |
| request_aircraft_state | Requests the current aircraft state |
| set_mission_monitor_status | Tells the Mission Manager to stop monitoring mission progress |
| start_mission | Sends a notification that the mission has started |
| update_boss | Sends updates to autonomy guidance |
| update_gcs | Sends updates to the mission planning software |
| update_mission_item | Updates Mission Manager that the last mission item has been reached |
| LP_Manager - Test: 0 | ||
| Time | Input Port | Value |
| 00:00:02:000 | start_mission | 1 |
| 00:00:10:000 | plp_ach | 0 10 45 -75 100 45 |
| 00:00:12:000 | aircraft_state | 99 0 0 0 0 0 0 |
| … | … | … |
| LP_Manager | Test: 0 | ||
| Time | State | Output Port | Value |
| 00:00:00:000 | IDLE | ||
| 00:00:02:000 | WAIT_FOR_LANDING_PHASE | 1 | |
| 00:00:10:000 | REQUEST_STATE_PLP | 0 10 45 -75 100 45 | |
| 00:00:10:100 | GET_STATE_PLP | o_request_aircraft_state | 1 |
| … | … | … | … |
| Test: 1 | |||
| Time | State | Output Port | Value |
| 00:00:00:000 | START_LZE_SCAN | ||
| 00:00:00:001 | PILOT_CONTROL |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).