Beyon Motion — Contrôle de Moteur Pas-à-Pas Industriel
Développement autonome d'un système complet de contrôle de moteurs pas-à-pas avec encodeur magnétique, retour de position en boucle fermée et profils d'accélération, sur Raspberry Pi Pico.
Galerie
Problématique
Concevoir un système de contrôle de mouvement précis et autonome, capable de piloter un moteur pas-à-pas industriel avec retour de position, sans dépendance à des bibliothèques tierces.
Solution apportée
Architecture logicielle en couches : couche HAL bas niveau, driver TMC2209 sur mesure avec contrôle des registres UART, et classe SmartMotor avec PID intégré pour le suivi de trajectoire.
Description du projet
Projet personnel ambitieux visant à concevoir un système de contrôle de moteur pas-à-pas de qualité industrielle, entièrement développé en autonomie.
Le driver TMC2209 est piloté en UART avec manipulation directe des registres bit à bit pour configurer le courant, le microstepping et les protections thermiques. L'encodeur magnétique AS5600L (I2C) assure un retour de position haute résolution avec gestion du dépassement de plage (wraparound 4096 points). Une classe SmartMotor implémente un algorithme PID de suivi de position avec profils d'accélération/décélération configurables.
Le projet est développé sur Raspberry Pi Pico avec le SDK officiel C/C++ et un système de build CMake, ainsi qu'en MicroPython pour le prototypage rapide. L'architecture logicielle multicouche (HAL → Driver → SmartMotor) garantit la maintenabilité et la réutilisabilité du code.
Résultat
Système fonctionnel avec précision de positionnement < 1° et profils d'accélération configurables, réutilisable sur tout projet de robotique ou d'automatisme.