Once an algorithm or a specific treatment has been designed in order to control a process or to filter a signal, this one must be implemanted on a actual hardware platform. Although microcontrollers or PLCs are kinds of well known solutions, more versatile systems, leading to decreased costs and and a reduced "time to mareket" are now available to embedd the required processing.In order to select the most appropriate ones, the system engineer needs to know the way these platforms work, from both hardware and software sides. He also has to be familiar with the mechanisms which are used to manage tasks and system resources, such as memory and IOs. This curse is targetted to provide the students this deep enough understanding on how things go, so that they can get the best of "now our days" generalist embedded systems in the context of processes' automation. Thus, after full completion of this cursus, the student will be able to define the application structure that fits with the design constraints, as well as the type of operating system / hardware platform couple to be used. Multitasks programming techniques provided within this course session will help the student to implemant the automation software a modular and efficent way.
After completion of this course session, the students will be able to (a) list the automation application requirements from the customers needs and the constraints that apply to the system to bo controlled, (b) define an application structure that meets the previous requirements while selecting an appropriate platform (from both hardware and software point of view), (c) developp the application itself, using the appropriate mechanisms (multi tasking and multi threading, resources sharing, inter-processes communication)
This course is not solely an extension of computer sciences' related modules. In fact, outcomes from Automatics have also to be taken into account. As an example, a clear understanding of what a so-called "real time system" is requires the use of the Shanon Sampling Theorem... Moreover, most of the developped applications has to do with regulation, filtering or systems' control tasks. Finally, because we are dealing here with pieces of software that are connected to the "real-world", constraints araising from the interfacing hardware (and then from electronics) will influence the way programs will be structured and designed.
pdf documents organized as a serial of brief thematic articles (one per course session) , sources and binaries ; Embest SBC-6000X hardware platforms; Slackware Linux 14.0 virtual machine.
Programming Language such as C, C++ or Java; Basic notions in Automatics and Electronics.
(1) Specific aspects of automation softwares (2) global structure of an industrial automation system (3) Operating Systems' principles (4) Common interfacing techniques (5) Usefull OS mechanisms for automation (6) What makes embedded systems special.
Systèmes d'Exploitation pour l'Informatique Industrielle
Operating Systems for Industrial Automation
Examination is performed through three different ways :
(1) exercices, whoose subject is provided at the end of each session and whoose results must be sent no later that at the beginning of the next session
(2) a application project
(3) a written exam.