EMBEDDED CONTROL SYSTEMS Lecture 0 INTRODUCTION A. ASTAPKOVITCH State University of Aerospace Instrumentation, Saint-Petersburg, 2011 GOALS OF THE COURSE Understanding of the theory and the engineering concepts and principles behind embedded systems (multichannel real time control systems); Knowledge of the present level : of embedded control solutions for space and car industry; modern hardware ( microproccessors, microcontrollers, signal processors; single board computers, modular systems, system on chip, distributed control systems); software developing technology chain (OS Neutrino, OSEK/VDX, modern IDE); COURSE INCLUDES TOPICS SYSTEM ENGINEERING HARWARE COMPONENT MODERN SOFTWARE DEVELOPING TECHNOLOGY RTOS NEUTRINO, OSEK/VDX PART 1. SYSTEM ENGINEERING LECTURE 1. EMBEDDED CONTROL - PAST AND PRESENT § 1. § 2. § 3. § 4. § 5. History of the embedded control systems Modern car control system Mars rover SPIRIT-OPPORTUNITY mission Control system concept Mechanical design LECTURE 2. MARS ROVER CONTROL SYSTEM § 1. § 2. § 3. § 4. § 5. Control system functions Digit video system Hardware component of the control system Software component of the control system Principles of the autonomous operation LECTURE 3. SPACE CONTROL ENGINEERING STANDARTS § 1. § 2. § 3. § 4. § 5. International cooperation in space projects ECSS structure Review of the engineering branch ECSS-E Standard control system model Basic definitions COURSE REVIEW System Engineering History of the control systems for space research Moon automatic research station LUNA-16 • 101 g of moon sample were received on Earth ; SPUTNIK-3 first satellite with digit control system 12/09/1970 - 21/09/1970 COURSE REVIEW System Engineering Control system of the modern car is distributed Modern car control system is the more than just one net COURSE REVIEW System Engineering JPL mars rover Spirit-Opportunity control system Autonomous operation is only possible solution Mars rover Opportunity still working on MARS Rover Spirit was discovered that water existed on Mars in past COURSE REVIEW System Engineering Review of European Standards for Space- ECSS Interaction with environment) Control objectives Control commands Actuators Controller Controlled Plant Control feedback Sensors Control System Controlled system Control performance Standard ECSS-E-60A model of control system PART 2. CONTROL SYSTEM HARDWARE BASICS-I LECTURE 4. COMPUTING SYSTEM STRUCTURE § 1. Architecture basic principles § 2. Microprocessor, signal processor, microcontroller § 3. Moor and Amdahl laws § 4. Control system structure § 5. Basic definitions LECTURE 5. MODULE CONTROL SYSTEM § 1. COTS and OEM solutions § 2. Standard PC-104 § 3. CompactPCI § 4. Standard VMEbus § 5. System on module LECTURE 6. DISTRIBUTED CONTROL SYSTEM § 1. Controller and ECU § 2. Control system topology basic definitions § 3. Microcontroller architecture § 4. Interrupt function basics § 5. Timer modules PART 2. CONTROL SYSTEM HARDWARE BASICS-II LECTURE 7. MICROCONTROLLERS PIC18F (Microchip) § 1. § 2. § 3. § 4. § 5. Review of nanoWatt Technology family Peripherals Interrupt system realization Fault tolerant features Application example LECTURE 8. DISTRIBUTED CONTROL SYSTEM § 1. § 2. § 3. § 4. § 5. Car control system structure Platform approach Control net topology CAN bus LINbus and MOST COURSE REVIEW HARDWARE COMPONENT Moor law Number of transistor is doubled every 18 month (after 96 ) 24 month ( 70- 95 ) 20 Amdahl law The speedup S of a program using N multiple processors in parallel computing is limited by the sequential fraction of the program f. S ≤ 1/ (f+(1-f)/N) < 1/f S ( 0 N) 15 S ( 0.05 N) S ( 0.1 N) 10 S ( 0.2 N) 5 0 0 5 10 N 15 20 COURSE REVIEW HARDWARE BASIC • Microprocessor - Signal processor - Microcontroller • Architecture OMAP-L138(Texas Instruments) COURSE REVIEW VMEbus MODULAR SYSTEM Form factor PC-104 90*96 mm ISA bus 8 Mbit One board computer Tiger (VersaLogic) in form factor PC-104+ PCI bus 133 Mbit Atom Z5xx (1.11 ГГц.) COURSE REVIEW VMEbus MODULAR SYSTEM VMEbus family Version Protocol Мbyte/s VMEbus BLT 40 VME64 MBLT 80 VME64x 2eVME 160 VME320 2eSST 320-500 COURSE REVIEW Microcontroller PIC18 - control system on chip COURSE REVIEW CAR CONTROL NETS DISTRIBUTED CONTROL SYSTEMS ON THE BASE OF THE DIFFERENT NETS CAR CONTROL SYSTEMS CLASS RATE А(small) < 10 Kb/s Application Configuration control: door, mirrors, climate, belts … B (medium) 10 – 125 Kb/s Sensor, actor information exchange C(high) 0.125- 1 Мb/s Real time времени control > 1 Мb/s D Multimedia CAN net AND LIN net IS THE MOST POPULAR FOR CLASSES A,B,C CLEAR THAT CLASS D WILL BE FIBER NET NET D2D Domestic Digital Bus MOST Media Oriented Systems Transport MML Mobile Media Link SAE CLASS D Max. rate 12 Мbit/ s fiber 25 Мbit/ s fiber 110 Мbit/s fiber Company Optical Chip Consortium Мерседесах S-класса Delphi Automotive Systems AMIC (Automotive Multimedia Interface Collaboration: GM,FORD,TOYOTA, DAIMLER,CRYSLER, RENAULT) PART 3. SOFTWARE DEVELOPING TECHNOLOGY LECTURE 9. DEVELOPING CYCLES § 1. § 2. § 3. § 4. § 5. LECTURE 10. REVIEW OF MODERN TECHNOLOGY Introduction Basic definitions V-model System integration Complete cycle design LECTURE 11. RTOS BASICS § 1. § 2. § 3. § 4. § 5. POSIX ,ARINC-653 standards OSEK/VDX POSIX threads Time measurement in digital control systems Real time control basic definitions § 1. § 2. § 3. § 4. § 5. Developing method hierarchy Linear coding Component coding RTOS and mRTOS Application generator COURSE REVIEW V-MODEL A framework to describe the software development life cycle activities COURSE REVIEW NESTED SW DEVELOPING TECHNOLOGY UP DOWN DOWN UP APPLICATION GENERATOR RTOS and mRTOS technology BASIC ELEMENTS: RTOS model (threads, process, message ….) IDE created code structure COMPONENT CODING TECHYNOLOGY BASIC ELEMENTS : functions, subroutine, macros object library, macros library LINEAR CODING TECHNOLOGY BASIC ELEMENTS : Assembler , C, JAVA COURSE REVIEW MULTI LEVEL DESCRIPTION RTOS and mRTOS are the core of the modern developing technology TASK LOOP CYCLE Tc SYSTEM PROCESS Tsys = Tisr+Tdisp TIME SLOT Tk KERNEL PROCESS 1st PROCESS 2nd PROCESS 3rd PROCESS CYCLE K CYCLE K+1 CYCLE K+2 RR dispatcher processogramma BASIC ELEMENTS: scheduling, interrupt servicing, inter process communications It is necessary to use multilevel algorithm description COURSE REVIEW RTOS STANDARDS POSIX 1003.1a ( OS Definition ) 1003.1b ( Realtime Extensions ) 1003.1c ( Threads ) ARINC-653 (Avionics Application Software Standard Interface) OSEK/VDX OSEK OS operating system OSEK Time time triggered operating system OSEK COM communication services OSEK FTCOM fault tolerant communication OSEK NM network management OSEK OIL Implementation Language OSEK ORTI kernel awareness for debuggers. - PART 4. MODERN SOFTWARE DEVELOPING PLATFORMS LECTURE 12. PLATFORM QNX6 § 1. § 2. § 3. § 4. § 5. Basic principles RTOS Neutrino Neutrino threads Messages, communications, interrupts IDE QNX Momentics LECTURE 13. PLATFORM MPLAB (Microchip) § 1. § 2. § 3. § 4. § 5. Basic principles Project manager Linker Assembler, macroassembler, C mRTOS technology LECTURE 14. PLATFORM OSEK/VDX LECTURE 15. TT-PARADIGM § 1. § 2. § 3. § 4. § 5. § 1. mRTOS OSEKtime § 2. Tasks and tt- sheduler § 3. Interrupt servicing § 4. Time synchronization § 5. OSEK FTCom Basic principles and OSEK standard structure OSEK RTOS OSEK COM OSEK NM OSEK OIL COURSE REVIEW PLATFORM QNX6 QNX6 platform is based on RTOS Neutrino; Core of the RTOS Neutrino : microkernel structure, thread, message communications; COURSE REVIEW NEUTRINO INTERPROCESS COMMUNICATIONS Uniform procedure and different types PROCESS SERVER_1 PROCESS СLIENT Connection ConnectAttach() THREAD _ 1 THREAD_ 2 THREAD_ 1 THREAD_ 2 Channel ChannelCreate() THREAD_ M THREAD_ K NEUTRINO COMMUNICATION TYPE IMPLEMENTATION LEVEL MESSAGE-PASSING MICROCERNEL SIGNALS MICROCERNEL POSIX MESSAGE QUEUES EXTERNAL PROCESS SHARED MEMORY PROCESS MENAGER PIPES EXTERNAL PROCESS FIFO EXTERNAL PROCESS COURSE REVIEW OSEK/VDX Motivation • High, recurring expenses in the development and variant management of non-application related aspects of control unit software • Incompatibility of control units made by different manufacturers due to different interfaces and protocols Goal Support of the portability and reusability of the application software by: • Specification of interfaces which are abstract and as application-independent as possible, in the following areas: real-time operating system, communication and network management • Specification of a user interface independent of hardware and network • Efficient design of architecture: The functionality shall be configurable and scalable, to enable optimal adjustment of the architecture to the application in question • Verification of functionality and implementation of prototypes in selected pilot projects COURSE REVIEW OSEK/VDX mRTOS Event Triggered and Time Triggered mRTOS TT sheduling changes a classical RTOS world COURSE REVIEW OSEK/VDX OSEK/VDX - Event Triggered mRTOS) •The specification of the OSEK/VDX OS provides a pool of services and processing mechanisms. •The operating system serves as a basis for the controlled real-time execution of concurrent application and provides their environment on a processor. •The architecture of the OSEK/VDX OS distinguishes three processing levels: interrupt level, a logical level for operating systems activities and task level. •The interrupt level is assigned higher priorities than the task level. In addition to the management of the processing levels, operating system services are provided for functionality like task management, event management, resource management, counter, alarm and error treatment. OSEK/VDX OSEKtime – Time Triggered mRTOS •The OSEKtime operating system provides the necessary services to support distributed fault-tolerant highly dependable real-time applications (e.g., start-up of the system, message handling, state message interface, interrupt processing, synchronization and error handling). COURSE REVIEW OSEK/VDX COMMUNICATION SUBSYSTEMS OSEK/VDX communication (COM) • The communication specification provides interfaces for the transfer of data within vehicle networks systems. This communication takes place between and within network stations (ECU’s). OSEK/VDX Fault-Tolerant Communication FTCom • FTCom is divided into the layers: Application, Message Filtering, Fault Tolerant, and Interaction • The Application layer provides the Application Programming Interface • The Message Filtering layer provides mechanisms for message filtering • The Fault Tolerant layer provides services required to support the faulttolerant functionality, that includes mechanisms for message instance management and support of message status information