Introduction Sujets Définitions Organisation des programmes temps réel Organisation des systèmes temps réel Applications en temps réel PIF6004 Sujets Spéciaux en informatique II
Définitions Système Temps Réel VS Système Embarqué
Définitions Temps réel: Période de temps associés à l’accomplissement d’une tâche donnée. Par exemple, un compteur (horloge de base du CPU) qui varie d’une quantité donnée. L’accroissement du compteur n’est ni influencé, ni conditionnel. Temps d’exécution: Période de temps associé à l’accomplissement d’une tâche donnée dans un environnement multi-tâche. Système temps réel: Un système qui contrôle en environnement particulier en recevant des données, les traitant et prenant une action précise ou retournant les résultats rapidement pour modifier le comportement de l’environnement dans une période de temps courte.
Définitions Système temps réel (suite): Par contrôle en TR on entend, les mécanismes et les procédures installées dans un système informatique qui permettent une gestion en mode synchrone des périphériques (capteurs et actuateurs) et une interaction synchronisée avec les événements du TR. La contrainte de coïncidence stipule qu’un système TR doit avoir une réponse très rapide à un stimulus (requête) quelconque. Les systèmes TR doivent garantirent que l’intervalle de temps réel entre l’occurrence d’un événement et la réaction (réponse) ne dépasse par une certaine limite (intervalle de confiance). Temps de réponse: L’intervalle de temps réel entre un événement quelconque et la réponse que donne le système TR à cet événement.
Définitions Système temps réel (suite):
Définitions Temps de réponse (suite): Les temps de réponse des systèmes peuvent varier selon l’application: – Contrôle radar, robot => sec – Réservation de billet d’avion, guichet automatique => 1 sec – Contrôle d’inventaire => 30 sec
Organisation des programmes TR Les applications TR doivent être écrites sous forme modulaire ce qui permet des les exécuter de façon concurrente. Les modules (composantes) des systèmes TR deviennent des tâches (processus/threads). L’organisation est donc basée sur le multitasking.
Organisation des programmes TR Chaque tâche (processus/threads) peut alors avoir les états suivants: Dormant, Ready, Active, Blocked.
Organisation des systèmes TR Les systèmes TR sont constitués de 3 composantes distinctes: CPU, Périphériques (capteurs), Autres périphériques (CPU-related)
Organisation des systèmes TR Horloge TR => compteur d’intervalles Une interruption matérielle est générée à la fin de chaque intervalle de temps, un compteur est alors incrémenté de 1 Intervalles de temps classiques (1/60 sec, 1, sec, 0.1 sec, 0.01 sec, sec) Permet de chronométrer certains événements Pour initier certaines opérations périodiquement L’intervalle ne devrait pas être plus petit que le plus petit intervalle d’échantillonnage Interface digitale Données digitales (valve ouverte ou fermée, interrupteur ouvert ou fermé) Ne peuvent prendre que deux valeurs: VRAI ou FAUX, ( 0 ou 1, fermé ou ouvert, activé ou non activé etc.). Ce type de signal sert à indiquer l'état d'un système ou d'une variable de procédé (signal d'entrée) ou encore à modifier l'état d'un système (signal de sortie). L'appareil qui sert à indiquer l'état d'une variable de procédé est un interrupteur.
Organisation des systèmes TR Interface digitale (suite) Il existe des interrupteurs de température, de débit, de pression, de niveau, de position etc. Ainsi, un interrupteur de température calibré à 20 Deg. C changera d'état ( 0 à 1 ou encore 1 à 0 ) lorsque la température de la variable mesurée descendra sous le seuil de 20 Deg. C et rechangera d'état lorsque la température remontera au-dessus de ce seuil. Les cartes de sortie digitale servent à activer où désactiver des appareils de contrôle digitaux tel que les relais (pour démarrer les moteurs), vanne solénoïde (pour actionner les cylindres hydrauliques), sirènes, gyrophare etc.
Organisation des systèmes TR Interface digitale (suite)
Organisation des systèmes TR Interface d’impulsion Les données correspondent à des suites d’impulsions. La mesure du débit d’une pompe pourrait correspondre proportionnellement à la fréquence d’impulsions. Contrôle de moteur pas à pas, par la génération de séquences d’impulsions Input => Interface: Compteur d’impulsions Output => Interface: Générateur d’impulsions
Organisation des systèmes TR Interface d’impulsion (suite)
Organisation des systèmes TR Interface analogue Une donnée analogique est un signal (voltage, courant, résistance etc.) correspondant à la valeur d'une mesure effectuée par un appareil. Ces appareils de mesure sont habituellement appelés transmetteurs. Il existe des transmetteurs pour mesurer la température, la pression, le débit, le niveau, le poids, la concentration de certains gaz, le PH d'un liquide, la longueur, la vitesse, la vibration et j'en passe ! Le travail du transmetteur est de mesurer à l'aide d'une sonde ou capteur une variable de procédé, et ensuite de "linéariser" et convertir le signal mesurer en un signal "standardiser" qui pourra être lu par une carte d'entrée analogique reliée à un ordinateur ou système de contrôle. Le signal "standardisé" le plus utilisé est le signal "4 à 20 milliampères". Ce standard spécifie qu'un signal de 4 milliampères correspond à la valeur minimum de la variable de procédé mesurée et que le signal 20 milliampères correspond à la valeur maximum.
Organisation des systèmes TR Interface analogue (suite) Ainsi, si vous voulez mesurer la température d'un liquide qui ne sera jamais plus froid que 5 degrés C et jamais plus chaud que 48 Deg. C vous pourriez calibrer votre transmetteur ainsi: 0 Deg. C = 4mA et 50 Deg. C = 20mA. Lorsque votre carte d'entrée mesurera 4mA elle indiquera une mesure de 0% à votre ordinateur et lorsqu'elle mesurera 20mA elle indiquera 100%. Il ne reste plus au programmeur qu'à faire la conversion pour avoir la valeur réelle. Les signaux analogiques ne servent pas seulement qu'en lecture (entrée), on les utilisent aussi comme signal de sortie vers des équipements de contrôle comme les positionneurs de vannes de régulation (4mA = 0%, 20mA = 100% d'ouverture), les variateurs de vitesse de moteurs électriques etc.
Organisation des systèmes TR Interface analogue (suite)
Applications TR Système bancaire (temps de réponse 1-10 sec)
Applications TR Système de contrôle de procédés chimiques (temps de réponse < 1-5 min) INPUT => T o, pression OUTPUT => Ajustement des valves => Ajustement des éléments chauffants
Applications TR Contrôle d’inventaire (temps de réponse < 3 sec)
Applications TR Système de gestion de bases de données (temps de réponse < 3 sec, Utilisation de sémaphores pour gérer l’accès mutuel)
Applications TR Système de contrôle d’avion (temps de réponse < 1 sec)
Applications TR Système de contrôle aérien (temps de réponse < 1 sec)
Applications TR Système de réservation (temps de réponse 10 sec)
Applications TR Schéma d’un système de contrôle One Sensor/One Actuator
Applications TR Schéma d’un système de contrôle One Sensor/One Actuator: Algorithme, temps d’échantillonnage T [ secs, msecs]
Applications TR Algorithme de contrôle d’un hélicoptère (Système avec taux d’échantillonnage multiple)
Applications TR Algorithme de contrôle d’un hélicoptère (Système avec taux d’échantillonnage multiple)
Applications TR Algorithme de contrôle d’un système de gestion du trafic aérien (Système hiérarchique)
Applications TR Système de traitement de signal (DSP) Un DSP transforme un signal d’un format dans un autre format Filtrage digital Compression/décompression de la voix, vidéo Traitement de signaux Radar, Image.
Applications TR Système de traitement de signal (Système Radar)