Vous êtes sur la page 1sur 40

Systèmes embarqués temps réel

Cycle Ingénieur EEA

Pr. AMAMI Benaissa


2020/2021

Pr. Amami Benaissa FST Tanger 2021 1


Chapitre 1:
Systèmes embarqués temps réel

Pr. Amami Benaissa FST Tanger 2018 2


Qu’est ce qu’un système embarqué?

Electronique

L'ingénierie
des systèmes
embarqués

Informatique

• Ensemble de méthodes, de techniques et d’outils qui associent le hardware et le


software pour concevoir et développer des systèmes :
• Autonomes, Intelligents Capables d’assurer, des fonctions allant du simple
Contrôle, de la communication de la Surveillance à la Supervision en temps réeel

Pr. Amami Benaissa FST Tanger 2018 3


Qu’est ce qu’un système embarqué?

Pr. Amami Benaissa FST Tanger 2018 4


Domaines d’utilisation
,.

Les domaines dans lesquels on trouve des systèmes embarqués sont de plus en plus
nombreux :
•Astronautique : fusée, satellite artificiel, sonde spatiale, etc.
•Automate programmable industriel, contrôle-commande
•Électroménager : télévision, four à micro-ondes
•Environnement [archive]
•Équipement médical
•Guichet automatique bancaire (GAB)
•impression : imprimante multifonctions, photocopieur, etc.
•Informatique : disque dur, Lecteur de disquette, etc.
•Métrologie
•Militaire : missile
•Multimédia : console de jeux vidéo, assistant personnel
•Télécommunication : Set-top box, téléphonie, routeur, pare-feu, serveur de
temps, Téléphone portable
•Transport : Automobile, Aéronautique (avionique), Ferroviaire,

Pr. Amami Benaissa FST Tanger 2018 5


Architecture matériel d’un système embarqué
Circuits dédiés à des applications spécifiques
(FPGA) Fild Programmable Gate Array
(ASIC) Application Specific Integrated Circuits

Les systèmes embarqués utilisent généralement des microprocesseurs à


basse consommation d'énergie ou des microcontrôleurs, dont la partie logicielle est
en partie ou entièrement programmée dans le matériel, généralement en mémoire
dans une mémoire morte (ROM), EPROM, EEPROM, FLASH, etc. (on parle alors
de firmware).
Pr. Amami Benaissa FST Tanger 2018 6
Exemple : Automobiles

Pr. Amami Benaissa FST Tanger 2018 7


Exemple : Airbus A340 [Boniol1998]:
• .
• Il y a 115 équipements avec :
• 3 calculateurs qui élaborent les paramètres inertiels
• 2 calculateurs qui implémentent les lois de guidage
• 5 calculateurs qui implémentent les lois de pilotage
• 2 calculateurs d’alarmes, etc.
• Environ 200 000 données sont échangées

Pr. Amami Benaissa FST Tanger 2018 8


Caractéristiques d’un système embarqué

Les principales caractéristiques d'un système embarqué sont les suivantes :

• C'est un système principalement numérique : Il met en œuvre généralement un


processeur.

• Il exécute une application logicielle dédiée pour réaliser une fonctionnalité


précise.

• Un PC standard peut exécuter tout type d'applications car il est généraliste alors
qu'un système embarqué n'exécute qu'une application dédiée.

• L’interface IHM peut être aussi simple qu’une led qui clignote ou aussi complexe
qu’un cockpit d'avion de ligne.

Pr. Amami Benaissa FST Tanger 2018 9


Caractéristiques d’un système embarqué
• Contrairement au PC, un système embarqué doit faire face à des environnements
plus hostiles. Il doit faire face à un ensemble de paramètres agressifs :
o Variations de la température.
o Vibrations, chocs.
o Variations des alimentations.
o Interférences RF.
o Corrosion.
o Eau, feu, radiations.

Pr. Amami Benaissa FST Tanger 2018 10


Contraintes et défis technologiques
o Les systèmes embarqués exécutent des tâches prédéfinies et ont un cahier des
charges contraignant à remplir, qui peut être d'ordre :

o D'espace compté : l'espace mémoire peut être de limité de l'ordre de quelques Go maximum
(bien que la taille vienne à être de moins en moins limitée grâce à la miniaturisation des
éléments). Il convient de concevoir des systèmes embarqués qui répondent aux besoins au
plus juste pour éviter un surcoût ;

o De puissance de calcul : il convient d'avoir la puissance de calcul juste nécessaire pour


répondre aux besoins et aux contraintes temporelles de la tâche prédéfinie. Ceci en vue
d'éviter un surcoût de l'appareil et une consommation excédentaire d'énergie (courant
électrique) ;

o D'autonomie : la consommation énergétique doit être la plus faible possible, due à


l'utilisation de batteries et/ou, de panneaux solaires voire de pile à combustible pour certains
prototypes ;
o Temporel : les temps d'exécution et l'échéance temporelle d’une tâche sont déterminés (les
délais sont connus ou bornés a priori). Cette dernière contrainte fait que généralement de
tels systèmes ont des propriétés temps réel ;

o De sûreté de fonctionnement : car s'il arrive que certains de ces systèmes embarqués
subissent une défaillance, ils mettent des vies humaines en danger ou mettent en péril des
investissements importants. Ils sont alors dits « critiques » et ne doivent jamais faillir.
Par « jamais faillir », il faut comprendre toujours donner des résultats justes, pertinents et ce
dans les délais attendus par les utilisateurs (machines et/ou humains) des dits résultats ;
Pr. Amami Benaissa FST Tanger 2018 11
Classification des systèmes embarqués

Activité de calcul, qui lit ses données et ses entrées lors de son
démarrage, qui fournit ses sorties, Faible couplage avec l’environnement
Pas de contrainte du temps Traitements algorithmiques

Système en interaction quasi permanente avec son environnement, y


compris après l'initialisation du système; la réaction du système est
déterminée par les événements reçus et par l'état courant (fonction des
événements et des réactions passés); le rythme de l'interaction est
déterminé par le système et non par l'environnement.
Pas de contraintes temporelles : ex : Bureautique

Système en interaction permanente avec son environnement, y compris après


l'initialisation du système; la réaction du système est déterminée par les événements
reçus et par l'état courant (fonction des événements et des réactions passées); mais
le rythme de l'interaction est déterminé par l'environnement et non par le système.
Systèmes de contrôle commande avec contraintes temporelles

Pr. Amami Benaissa FST Tanger 2018 12


Systèmes embarqués Réactif : ou de contrôle - commande
Quelle que soit la nature et la complexité du système, on décompose un système embarqués en :
• le système contrôlé
• le système de contrôle
Le système contrôlé = environnement (procédé) équipé d'une instrumentation qui réalise l'interface avec le
système de contrôle
Le système de contrôle = éléments matériels (microprocesseurs… ) et logiciels dont la mission est d'agir sur le
procédé via les actionneurs en fonction de l'état de ce procédé indiqué par les capteurs de manière maintenir
ou conduire le procédé dans un état donné
L'aspect « temps » a une place importante sous la forme d'un temps de réaction, d'une échéance à respecter, etc.

Pr. Amami Benaissa FST Tanger 2018 13


Systèmes embarqués de contrôle - commande

Extrais du livre « Système temps réel de contrôle commande


de F. Cottet et E. Grolleau, Dunod 2005 édit dunod »

Exemple : Moteur à combustion

Pr. Amami Benaissa FST Tanger 2018 14


Systèmes embarqués Temps réel
Qu’est ce qu’un temps réel?

• La définition d’un Système Temps Réel est un concept un peu


vague et chacun a sa propre idée sur la question.
• Temps réel, temps non réel, temps différé,
temps partagé,
• Il se prête facilement pour les non spécialistes à une confusion
ou à une amalgame.
- Regarder un match sur TV en temps réel :
(Le direct s’oppose au temps différé , c’est ce qui se passe, en ce moment même, ailleurs)
- Simulation d’un phénomène en temps réel

Temps réel = respect des échéances, ou des délais

Pr. Amami Benaissa FST Tanger 2018 15


Systèmes embarqués Temps réel

• Différentes définitions :

• On qualifie de temps réel une application mettant en œuvre un système


informatique dont le comportement est conditionné par l’évolution
dynamique de l’état du procédé qui lui est connecté.
• Ce système informatique est alors chargé de suivre ou de piloter ce
procédé en respectant des contraintes temporelles définies dans le cahier
des charges de l’application.
• C'est donc bien le processus extérieur à contrôler qui impose ses
contraintes temporelles au système embarqué et non le contraire.
Jean-Pierre ELLOY, 1991

Pr. Amami Benaissa FST Tanger 2018 16


Systèmes embarqués Temps réel

• Autres définitions :
• Un système est dit Temps Réel lorsque l'information après acquisition et
traitement reste encore pertinente. (Le temps d'acquisition d’une
information périodique et son traitement doivent rester inférieurs à la
période de rafraîchissement de cette information).
• Une application est dite temps réelle si elle a la capacité de traiter
en un temps déterminé un flux d'évènements issus d'un processus,
sans perdre un seul de ces évènements.
• Une application est dite temps réelle lorsque son temps de réponse
est négligeable par rapport aux phénomènes physiques observés.

Pr. Amami Benaissa FST Tanger 2018 17


Systèmes embarqués Temps réel

• Autres définitions :
• Pour qu'une application traitant un phénomène soit temps-réel il faut que
le temps de traitement du phénomène soit inférieur à sa variation.
• Si un afficheur de température dans un bureau met 1 seconde à afficher
une nouvelle température, personne ne le remarquera car les variations
se font très lentement.
• Un logiciel capable d'effectuer des traitements en une demi-seconde
serait apte à gérer en temps réel l'affichage sur le tableau de bord d'un
véhicule mais serait inapte à gérer en temps réel le guidage d'un missile.
• Justesse des calculs (déterminisme logique) mais aussi du temps auquel
les résultats sont produits (déterminisme temporelle).
• Si les contraintes temporelles de l'application ne sont pas
respectées, on parle de défaillance du système.

Pr. Amami Benaissa FST Tanger 2018 18


Systèmes embarqués Temps réel

• Les contraintes temporelles peuvent être de deux types :

1. Contraintes temporelles relatives ou lâches (temps réel mou : soft real-time) :


les fautes temporelles sont tolérables : un retard dans l'obtention du résultat n'est
pas dramatique.
(ex. : jeux vidéo, applications multimédia, distributeur de billets, téléphonie
mobile...) ;
2. Contraintes temporelles strictes ou dures (temps réel dur : hard real-time) : les
fautes temporelles ne sont pas tolérables : un retard dans l'obtention du résultat le
rend inutile (détection de missile, air bag)
(ex. : avionique, véhicules spatiaux, automobile, transport ferroviaire...).

Pr. Amami Benaissa FST Tanger 2018 19


Systèmes embarqués Temps réel

Cette caractéristique temporelle peut être très différente suivant l'application :

• Marie-Agnès Peraldi-Frati

• Quelques heures pour le contrôle de production impliquant des réactions


chimiques
• 24 heures pour les prévisions météo.
• Plusieurs mois ou années pour les systèmes de navigation de sonde spatiale
• Un système temps réel n’est pas un système « qui va vite / rapide»

Pr. Amami Benaissa FST Tanger 2018 20


Systèmes embarqués temps réel :
Quelques exemples

• Exemple de l’ Airbag:
• La gestion d'un airbag est temps réelle : quand un capteur détecte une déformation de la
carrosserie suffisamment importante, il envoie un signal au contrôleur qui doit avoir gonflé les
airbags dans les 10 ms sous peine d'arriver trop tard ce qui aurait des conséquences
désastreuses pour les occupants de la voiture.
• Capteurs concernés : capteurs de crash .
• Actionneurs : générateur de gaz.

• Contrainte :
• Il doit gonfler l'airbag en 35 à 45 millisecondes
• Au bout de 120 millisecondes, le gaz s'échappe et le sac d'air est dégonflé

Temps de réponse inferieur à 120 ms.

Pr. Amami Benaissa FST Tanger 2018 21


Systèmes embarqués temps réel :
Quelques exemples
Exemple : Systèmes de freinage ABS

Pr. Amami Benaissa FST Tanger 2018 22


Systèmes embarqués temps réel :
Quelques exemples
Exemple : Systèmes de freinage ABS

Pr. Amami Benaissa FST Tanger 2018 23


Systèmes embarqués temps réel :
Quelques exemples

• Exemple de l’ABS (Système anti-blocage des roues) :


• Capteurs concernés : capteur de vitesse, capteur de glissement.
• Actionneurs : Système hydraulique, frein.
Contrainte :
• un système de freinage ABS ne doit pas mettre plus de 150ms
pour acquérir l’information et 1s pour réagir

Temps de réponse inferieur à 150 ms.

Pr. Amami Benaissa FST Tanger 2018 24


Systèmes embarqués temps réel :
Quelques exemples
• Exemple de l’ESP (Electronic Stability Program) :

Pr. Amami Benaissa FST Tanger 2018 25


Systèmes embarqués temps réel :
Quelques exemples
• Exemple de l’ESP (Electronic Stability Program) :
• Capteurs concernés : vitesse , volant, roues.
• Actionneurs : injection moteur, frein.

• Contrainte :
• réaction sur les freins et l’injection suite à un coup de volant
brusque en moins de 150 milliseconde

Temps de réponse inferieur à 150 ms.

Pr. Amami Benaissa FST Tanger 2018 26


Cycle de développement en V des applications informatiques
pour le systèmes contrôle-commande
La conception d'un système embarqué Temps réel demande à son concepteur
d'être pluridisciplinaire : électronique, informatique, réseaux, sécurité etc.….

3 étapes : Spécification, Conception , Programmation

« ce que l'on a à faire


ou le quoi » mise en forme du
« cahier des charges »

« comment » modélisation de
l'architecture logicielle de l'application
(modules, tâches, objets...)

Dans le cas des applications de contrôle-commande,


les tests opérationnels en exécution réelle sont
souvent difficiles : Extrais du livre « Système
- exécution unique : satellite d'exploration ; temps réel de contrôle
- coût très élevé : fusée... ; commande de F. Cottet et
- risques humains : avion... E. Grolleau, Dunod 2005
édit dunod » Implémentation dans un langage temps réel

Pr. Amami Benaissa FST Tanger 2018 27


Cycle de développement couplé matériel-logiciel
En effet, le cahier des charges d'une application de contrôle-commande d'un
procédé va intégrer à la fois la description du matériel et les fonctions à remplir
par ce procédé (Logiciel) .

Extrais du livre « Système


temps réel de contrôle
commande de F. Cottet et E.
Grolleau, Dunod 2005 édit
dunod »

Pr. Amami Benaissa FST Tanger 2018 28


Cycle de développement en W
Le développement de la partie logicielle d'une application de contrôle-commande va être réalisé sur une
plate-forme dite « hôte » qui n'a aucun rapport avec l'environnement d'exécution ou environnement «
cible » en termes de processeur, mémoire, système d'exploitation, etc.

Machine Hote Machine Cible

CompactRIO
Labview
Noyau temps réel

1. Developer l’application sur l’ordinateur Hote


2. Charger le code via une connexion adéquate
3. Executer le code sur une (cible) Temps réel

Pr. Amami Benaissa FST Tanger 2018 29


Cycle de développement en W
• Ce processus conduit à modifier le cycle en « V » de développement des
applications informatiques classiques par un cycle en « W » où la deuxième partie
du cycle correspond à la reprise de la première partie du cycle mais dans
l'environnement « cible »

Extrais du livre « Système temps réel


de contrôle commande de F. Cottet et
E. Grolleau, Dunod 2005 édit dunod »

De nouveau, des tests doivent être réalisés dans cet environnement


d'exécution.

Pr. Amami Benaissa FST Tanger 2018 30


Systèmes embarqués temps réel :
Quelques échecs
• Quelques échecs:

• Mission Vénus : le satellite d'exploration est passe à plus de 500 000 km de la


planète Venus au lieu de 5 000 km, prévu initialement. Cet échec a été
attribué à un simple remplacement d'une virgule par un point dans un
programme Fortran (« DO 20 I = 1. 5 » au lieu de « DO 20 I - 1, 5 »).

• Avion militaire américain F16 : lors des premiers essais en vol, l'avion était
déclaré sur le « dos » au passage de l'équateur à la très grande surprise du
pilote. Cela était simplement dû à une erreur de signe dans le programme.

• Navette spatiale américaine : lors du premier lancement de la navette, le


départ a été annulé et la mission reculée de trois jours (coût très important).
Ce faux départ était dû à une erreur de synchronisation entre les deux
ordinateurs de conduite de vol. Le fonctionnement en redondance de ces
ordinateurs conduisait à un test de cohérence de certaines grandeurs
physiques. Étant donné une désynchronisation des deux ordinateurs, ce test a
été négatif simplement à cause de la mesure du même, paramètre effectuée à
des Instants différents.
Pr. Amami Benaissa FST Tanger 2018 31
Systèmes embarqués temps réel :
Quelques échecs
• Mission sur Mars : lors de la mission d'exploration de la planète Mars par le robot Pathrînder,
une remise à zéro périodique des données acquises a fortement perturbé la mission. Ce
problème était lié à un blocage d'une tâche très prioritaire par une tâche moins prioritaire
mais détenant une ressource critique (réseau de communication vers la terre}. En particulier
les données météorologiques mesurées étaient très spécifiques d'un point de vue « durée et
taille » du fait des caractéristiques martiennes,

• Eusce Ariane V : lors du premier lancement, la fusée a dû être détruite à cause d'une
trajectoire non correcte. Cette erreur était liée à la réutilisation de certains modules logiciels
utilisés dans le contexte d'Ariane IV. Les spécifications, attachées à l'accélération, auraient dû
être différentes en termes de limites afin d'éviter ce dysfonctionnement.

• Cette liste d'exemples de problèmes au niveau de l'exécution d'applications de contrôle-


commande montre la nécessité de mettre en place un cycle de développement encore plus
rigoureux pour ces applications de gestion de procédé physique dont les tests en exécution
réelle ne sont pas toujours facilement accessibles.

Pr. Amami Benaissa FST Tanger 2018 32


Architecture logicielle d’une application contrôle
commande
D'une manière très générique, l'architecture logicielle d'une application de contrôle-
commande multitâche peut être découper en un ensemble de tâches ou activités
selon les groupes suivants :

Extrais du livre « Système temps réel de contrôle


commande de F. Cottet et E. Grolleau, Dunod 2005 édit
dunod »

Pr. Amami Benaissa FST Tanger 2018 33


Architecture logicielle d’une application contrôle
commande
• Tâches d'entrées/sorties
• Ces tâches permettent d'accéder aux données externes par l'intermédiaire de cartes
d'entrées /sorties et ensuite de capteurs et d'actionneurs directement lies au procédé
géré. Ces tâches peuvent être activées de façon régulière ou par interruption
• Tâches de traitement
• Ces tâches constituent le cœur de l'application. Elles intègrent des traitements de
signaux (analyse spectrale, corrélation, traitement d'images, etc.) ou des lois de
commande (régulation tout ou rien, régulation du premier ordre, régulation PID, etc.).
• Tâches de gestion de l'interface utilisateur :
• Ces tâches permettent de présenter l'état du procédé ou de sa gestion à l'utilisateur. En
réponse, l'opérateur peut modifier les consignes données ou changer les commandes.
Ces tâches peuvent être très complexes et coûteuses en temps de calcul si l'interface
gérée est de taille importante (tableau de bord} ou de type graphique (représentation
3D).
• Tâches de sauvegarde :
• Ces tâches permettent de stocker l'état du système à des instants fixés. Cette
sauvegarde peut être utilisée a posteriori pour analyser le fonctionnement de
l'application ou lors d'une reprise d'exécution à une étape précédente
• Tâches de communications :
• Ces tâches sont destinées à gérer les messages envoyés ou reçus à travers un ou
plusieurs réseaux ou bus de terrain. Si ce type de tâches existe, l'application est dite
distribuée ou répartie.
Pr. Amami Benaissa FST Tanger 2018 34
Architecture logicielle d’une application contrôle
commande

• Les tâches peuvent être liées par des relations de type :

• Synchronisation : cela se traduit par une relation de précédence d'exécution entre


les tâches ;
• Communications : le transfert de données entre les tâches ;
• Partage de ressources (mémoire ou E/S): Accès d’une seule tâche à la fois

Extrais du livre « Système temps


réel de contrôle commande de
F. Cottet et E. Grolleau, Dunod
2005 édit dunod »

Pr. Amami Benaissa FST Tanger 2018 35


l’industrie 4.0 ou l’usine connectée

• Le concept «industrie 4.0» désigne le recours aux


technologies numériques pour rendre les activités de
fabrication plus agiles, plus souples et mieux adaptées
aux besoins des clients.
• Il existe déjà des usines intelligentes où l’Internet, des
capteurs sans fil, des logiciels et d’autres technologies de
pointe sont utilisés afin d’optimiser la production et
d’améliorer la satisfaction des clients.
• Ces outils permettent à l’entreprise de réagir plus rapidement
aux changements du marché, d’offrir des produits plus
personnalisés et d’accroître son efficacité opérationnelle dans
le cadre d’un cycle d’amélioration continue.

Pr. Amami Benaissa FST Tanger 2018 36


l’industrie 4.0 ou l’usine connectée

Pr. Amami Benaissa FST Tanger 2018 37


l’industrie 4.0 ou l’usine connectée

• Surveiller et contrôler en temps réel les machines et l’équipement


• Installation des capteurs sans fil sur les machines et les
équipements pour surveiller la production et recueillir des
données en temps réel dans une ou plusieurs usines.
• Possibilité ainsi effectuer un suivi précis de la production,
repérer et corriger les problèmes et prendre des décisions
stratégiques plus éclairées. C’est ce qu’on appelle l’Internet
industriel des objets.

Pr. Amami Benaissa FST Tanger 2018 38


l’industrie 4.0 ou l’usine connectée

• Introduire des procédés intelligents


• Utilisez des machines capables d’analyser leurs propres données pour prévoir à quel
moment leur entretien doit être effectué; certaines peuvent même prendre rendez-
vous avec un technicien. Les technologies de contrôle avancées évaluent la qualité en
temps réel durant la production et interviennent lorsqu’il faut corriger des défauts.
• Expérimenter l’impression 3D

• Utilisez des imprimantes 3D pour produire rapidement des prototypes, fabriquer des
formes complexes et créer des produits hautement p
• Connecter les produits à l’Internet

• Dotez vos produits de capteurs pour en surveiller l’utilisation. Servez-vous-en pour


aviser vos clients lorsqu’il est temps d’effectuer l’entretien et pour leur signaler les
problèmes éventuels. Vous pouvez également utiliser les produits intelligents pour
ajouter des services en fonction de l’usage, pour passer à un modèle d’affaires axé sur
les produits en tant que service ou pour développer de nouveaux produits novateurs

Pr. Amami Benaissa FST Tanger 2018 39


Bibliographies
• Des parties du cours entière ont été extraites du livre Système temps réel de contrôle commande de F. Cottet et E.
Grolleau, Dunod 2005
• Livre : Ordonnancement et ses applications, Chengbin chu/ Jean Marie Proth, Masson , 1996
• Commande en temps réel, Daniel Tschirhart, Dunod 1990
• Sites officiels de National Instrument
• Les systèmes électroniques embarqués dans l’automobile, l’IUT de Belfort-Montbéliard
• Systèmes embarqués et automobile , Gérard Duchene
• Systèmes embarqués Enjeux –Perspectives, Françoise Simonot-Lion
• Les Systèmes Électroniques Embarqués un enjeu majeur pour l’automobile, Joseph Beretta
• Tout CAN , Benoît Sanson
• Exécutif temps réel Pierre-Yves Duval , Ecole d’informatique temps réel, La Londes les Maures 7-11 Octobre 2002
• Cours Systèmes temps rée, Azmani Monir FST Tanger 2011
• Introduction aux systèmes temps réel, Samia Bouzefrane, CEDRIC –CNA
• La méthode DARTS et la programmation multitâche en LabVIEW KhanhHieuNGO, Emmanuel GROLLEAU LISI/ENSMA
• Systèmes temps-réel, Matthieu Herrb CNRS-LAAS, Avril 2008

Pr. Amami Benaissa FST tanger 40

Vous aimerez peut-être aussi