Synchronisation et synchronisation
Les premières priorités de toute application temps réel sont la synchronisation, le timing et la réponse déterministe du système, et une attention particulière doit être portée à ces aspects lors de la conception.commande de moteurLe logiciel. En substance, le processus semble très simple : le système lit les valeurs des capteurs, traite l’algorithme de contrôle, surveille la sécurité du système et gère l’étage de sortie en ajustant le rapport cyclique de la sortie PWM.
De petites erreurs de synchronisation peuvent entraîner de graves dysfonctionnements du système, un fonctionnement erratique et de mauvaises performances. Pour garantir un fonctionnement optimal, il est essentiel de maintenir la synchronisation et d'assurer le déterminisme du système. Je tiens à souligner qu'il s'agit d'un système temps réel critique et que le respect des délais est absolument impératif.
Le logiciel de commande du moteur peut être implémenté soit en mode bare-metal sans système d'exploitation, en utilisant un RTOS (système d'exploitation temps réel) adapté, soit en mode hybride multicœur, où certains cœurs du processeur fonctionnent en mode bare-metal tandis que d'autres utilisent un système d'exploitation. Les solutions bare-metal reposent toujours sur une architecture pilotée par interruptions, où ces dernières gèrent les tâches critiques en termes de temps et garantissent un déroulement précis des opérations.
Qu’il s’agisse d’une solution bare-metal, RTOS ou hybride, une analyse temporelle, une priorisation des tâches et une analyse de sécurité doivent être effectuées pour garantir des performances système efficaces et fiables.
L'analyse temporelle garantit l'exécution de toutes les tâches dans les délais impartis. Elle prend notamment en compte le temps d'exécution dans le pire des cas pour chaque tâche. Parmi les principales tâches critiques de la commande moteur figurent l'acquisition des données des capteurs, l'exécution des algorithmes de commande via la génération de signaux PWM, la détection et la gestion des défauts, l'arrêt d'urgence et les fonctions de sécurité, la communication en temps réel avec les autres composants du système et la synchronisation avec les systèmes externes.
Système d'exploitation temps réel (RTOS)
Choisir le bon système d'exploitation temps réel (RTOS) pour votre application de commande de moteurs est essentiel pour garantir des performances élevées, une fiabilité à toute épreuve et une sécurité optimale. Les principaux critères à prendre en compte sont les performances temps réel du RTOS, son efficacité en termes de ressources (empreinte mémoire et utilisation du processeur), ainsi que la gestion préemptive des tâches par priorités. La gestion efficace et rapide des interruptions, de même que la fiabilité et la robustesse du système, sont également des facteurs clés. Le support et la documentation du fournisseur, la compatibilité matérielle, ainsi que la disponibilité d'outils de développement (environnements de développement intégrés, débogueurs, analyseurs, etc.) et d'écosystèmes (bibliothèques, exemples de code, etc.) sont des éléments importants. Enfin, les conditions de licence et le coût du RTOS doivent également être considérés.
Compte tenu des divers facteurs et exigences spécifiques des applications de commande de moteurs, FreeRTOS, un système d'exploitation temps réel open source largement répandu et reconnu pour son efficacité et sa polyvalence, constitue un excellent choix. Ce choix est particulièrement avantageux lorsque la rentabilité, l'efficacité opérationnelle, la flexibilité du système, sa fiabilité et sa robustesse, sa facilité d'utilisation, la compatibilité matérielle étendue et l'optimisation des ressources sont des critères essentiels.
Date de publication : 8 mai 2024
