
Ce cours propose un parcours complet et progressif, allant des fondamentaux des systèmes embarqués jusqu’à la mise en œuvre d’architectures logicielles temps réel pour des applications de contrôle-commande. Il débute par un premier chapitre introductif posant les bases historiques et théoriques des systèmes embarqués, tout en définissant l’architecture matérielle du microcontrôleur (AVR, PIC ou autre) qui servira de support pratique tout au long de la formation. Le deuxième chapitre se concentre sur l’interfaçage bas niveau avec le monde extérieur en étudiant la gestion des entrées/sorties numériques et l’acquisition de signaux analogiques via le convertisseur analogique-numérique. Le troisième chapitre, plus dense, explore en détail les protocoles de communication série, qu’ils soient asynchrones avec l’UART ou synchrones comme l’I2C et le SPI, qui constituent les briques essentielles pour connecter capteurs et périphériques. Le quatrième chapitre approfondit les modules matériels de temporisation que sont les timers et compteurs, en couvrant aussi bien la génération d’événements périodiques que la production de signaux PWM pour le pilotage d’actionneurs. Le cinquième chapitre introduit le mécanisme essentiel des interruptions, permettant de basculer d’une logique d’attente active à une architecture réactive et efficace. La seconde partie du cours s’oriente vers les systèmes temps réel, avec un sixième chapitre qui en pose les concepts théoriques fondamentaux, notamment la distinction entre contraintes souples et dures ainsi que la notion de déterminisme. Le septième chapitre concrétise ces concepts en plongeant dans le fonctionnement interne d’un noyau temps réel (RTOS) comme OSA ou FreeRTOS, en mettant l’accent sur l’ordonnancement préemptif et la gestion des tâches. Le huitième chapitre élargit cette maîtrise en étudiant les services avancés offerts par le noyau, tels que les mécanismes de synchronisation (sémaphores, mutex), la communication inter-tâches par files de messages, ainsi que les stratégies de gestion mémoire déterministe. Enfin, le neuvième et dernier chapitre consolide l’ensemble des acquis à travers des applications concrètes relevant de l’automatique, en guidant les apprenants dans la conception et l’implémentation d’un régulateur PID numérique intégré dans une architecture logicielle multi-tâches sous RTOS, aboutissant à la réalisation d’un système embarqué temps réel complet, maîtrisé depuis la couche matérielle jusqu’à l’algorithme de contrôle.
- Enseignant: mohamed fekir