Real-Time Operating Systems and Software Architecture for Next Generation’S UAV
Total Page:16
File Type:pdf, Size:1020Kb
Degree Project Real-Time Operating Systems and Software Architecture for Next Generation’s UAV Student: Johan Nyman (F02) Company supervisor: Olivier Vanel Tutor Supaero: Jacques Lamaison Tutor LTH: Per Andersson September 2007 Real-Time Operating System and Software Architecture in next generation’s UAV ACKNOWLEDGEMENTS First of all I want to thank my supervisor at the company where I did this work, Mr. Olivier VANEL, who gave me the opportunity to carry out this internship. Your advice and introduction to the engineering process have been very helpful. The work presented in this report would not have been possible without the contribution of many persons. In particular I want to thank Mr. Jean-David POMMEPUY who has provided a lot of help and guidance when it comes to avionics software, and all the norms and standards that applies. On the hardware side, Mr. Gregory FREVA has never hesitated to provide his expertise, and to discuss the different combinations of hardware and software choices. The software team, led by Mr. Jean-David POMMEPUY, including Didier LHOTE and Arnaud COURVOISIER, has provided their help and feedback whenever necessary. I also want to thank the rest of the team that worked in my department at the company, for their availability and help when needed. The reason I ever got here is because of the education provided by LTH and SUPAERO, thank you for that. A special thanks goes to J-L GONNAUD at EADS, responsible for the Airbus A400M IMA integration, who explained some of the particularities of IMA, and conditions that applies to the certification of the system. Master thesis 2007 Johan Nyman Page 2 of 110 Real-Time Operating System and Software Architecture in next generation’s UAV ABBREVIATIONS ADU Air Data Unit AFDX Avionics Full DupleX switched Ethernet APEX APplication/EXecutive API Application Programming Interface ARINC Aeronautical Radio Incorporated ARP Aerospace Recommended Practice BAT Block Address Translation BSP Board Support Package COTS Commercial Off The Shelf cPCI compact PCI CPU Central Processing Unit CSP CPU Support Package DKM Downloadable Kernel Module FAA Federal Aviation Authority FIFO First In First Out GCS Ground Control Station HM Health Monitor HNS Hybrid Navigation System IDE Integrated Development Environment IEEE Institute of Electrical and Electronics Engineers IMA Integrated Modular Avionics I/O Input(s)/Output(s) IOU Input/Output Unit ISR Interrupt Service Routine JAR Joint Airworthiness Requirements JSF Joint Strike Fighter JTAG Joint Test Action Group J-UCAS Joint Unmanned Combat Aerial System KDI Kernel Downloadable Image LRM Line Replaceable Module LRU Line Replaceable Unit MCCU Mission and Critical Computer Unit MISRA Motor Industry Software Reliability Association MMU Memory Management Unit NDA Non Disclosure Agreement OS Operating System PCB Printed Circuit Board Master thesis 2007 Johan Nyman Page 3 of 110 Real-Time Operating System and Software Architecture in next generation’s UAV PCI Peripheral Component Interconnect PGU Piloting/Guidance Unit PMT Processeur Multi Technique POSIX Portable Operating System Interface for computer environments PTE Page Table Entry PXE Pre-boot eXecution Environment ROS Rules Of Security RPC Remote Procedure Call RSC Reusable Software Component RTCA Radio Technical Commission for Aeronautics RTOS Real-Time Operating System RTP Real Time Process TFTP Trivial File Transfer Protocol UAV Unmanned Aerial Vehicle VCT Virtual machine Configuration Table VM Virtual Machine VME Versa Module Eurocard GLOSSARY Host Machine used to develop the software Cross compiler Used on host to produce object code executable on target. Emulator Entity accepting the same input and producing the same output as a given system, using the same object code. Native compiler Compiles on host to execute on host. Used for development. Simulator Same as emulator but with different (derived) object code. Smart actuator An “intelligent” actuator in the sense that it receives a reference value and then uses a closed control loop to reach and maintain this value itself. Target Machine used to execute the software Test bed Permits to run equipment while simulating its environment. Master thesis 2007 Johan Nyman Page 4 of 110 Real-Time Operating System and Software Architecture in next generation’s UAV CONTENTS PART A: INTRODUCTION..................................................................................................9 A 1 Introduction.....................................................................................................................................9 A 1.1 Document Outline ......................................................................................................................9 A 1.2 Scope.........................................................................................................................................9 A 1.3 Problem formulation .................................................................................................................10 A 1.4 Methodology used....................................................................................................................11 A 1.5 Realization ...............................................................................................................................11 PART B: APPLICABLE NORMS, STANDARDS AND CONSTRAINTS IN AVIONICS ..13 B 1 DO-178B ........................................................................................................................................13 B 1.1 Reusable Software Component, RSC......................................................................................13 B 2 Integrated Modular Avionics .......................................................................................................14 B 2.1 Background..............................................................................................................................14 B 2.2 The concept of Integrated Modular Avionics............................................................................15 B 2.3 IMA Particularities ....................................................................................................................17 B 2.4 Certification Aspects ................................................................................................................20 B 2.5 Isolation and Independence between partitions.......................................................................20 B 3 Constraints....................................................................................................................................21 B 3.1 Hardware..................................................................................................................................21 B 3.2 Certification ..............................................................................................................................21 B 3.3 Industrial...................................................................................................................................21 PART C: REAL TIME OPERATING SYSTEMS ...............................................................23 C 1 Real-Time Operating Systems.....................................................................................................23 C 1.1 Worst Case Scenarios .............................................................................................................24 C 1.2 Complete Operating System or Simple Scheduler?.................................................................24 C 1.3 The Board Support Package....................................................................................................25 C 1.4 Make or Buy? ...........................................................................................................................26 C 2 Criteria for choosing RTOS .........................................................................................................26 C 2.1 Perennity..................................................................................................................................27 C 2.2 Norms and Standards ..............................................................................................................27 C 2.3 Supported Hardware ................................................................................................................28 C 2.4 Development............................................................................................................................28 C 2.5 Design......................................................................................................................................29 C 2.6 Functionality.............................................................................................................................29 C 2.7 Performance.............................................................................................................................31 C 2.8 Cost..........................................................................................................................................32 C 2.9 References...............................................................................................................................33 C 2.10 Ease of Use..............................................................................................................................33 C 3 Conclusion on CRITERIA.............................................................................................................33