Le projet

L'objectif de ce projet est de réaliser un robot de A à Z (from scratch), la mission principale de ce robot est d'effectuer des livraisons de cubes de différentes couleurs : rouge, vert, bleu.

Le terrain est représenté sous forme d’un quadrillage plus ou moins maillé contenant certaines cases de couleur. Le robot se déplace comme un suiveur de ligne sur le quadrillage depuis sa base, trouve la case correspondant à son bloc, le livre et revient à sa base. A partir de là, un nouveau bloc peut lui être remis et sa mission recommence.

Ce projet à un intérêt pédagogique qui sera utilisé dans le cadre d'un futur cours de système embarqué. L'objectif est de fournir aux étudiants un calculateur de base à partir de cartes ARM STM32 qui sera amené à piloter divers périphériques en utilisant les pilotes PIO, ADC, PWM, Timer, etc.

Ce robot utilise une carte de la série STM32F407, cette série de cartes est conçue pour des applications médicales et industrielles où le haut niveau d'intégration et de performance est nécessaire . Le STM32F407 offre la performance du cœur Cortex™-M4 (avec unité à virgule flottante) fonctionnant à 168 MHz.

La carte STM32 vas être programmé avec la librairie LibOpenCM3, c'est une libraire bas niveau open source destiné pour les microcontrôleurs ARM, et comme c'est une librairie bas niveau elle vas nous permettre de mieux comprendre et de mieux contrôler la carte, par exemple pour générer un signale PWM on utilise des timers et on configure des registres, etc.

Les phases de réalisation

  • Phase 1 :
    • Design 3D du robot.
    • Documentation sur STM32.
  • Phase 2 :
    • Montage des composants et châssis.
    • Codage du contrôleur moteurs et du capteur infrarouge.
  • Phase 3 :
    • Contrôleur PID pour le suiveur de ligne.
    • Réaliser un suiveur de ligne.
  • Phase 4 :
    • Détection de quadrillage.
    • Implémentation d’un algorithme qui calcule le plus court chemin dans une carte.
    • Déplacement sur la grille selon un chemin bien spécifié.
  • Phase 5 :
    • Découverte de la grille.
    • Livraison des objets et retour vers la base.

Notre expérience

C’est une bonne expérience nous avons beaucoup appris dans plusieurs domaines, l’impression 3D, les capteurs, stm32, ARM cortexe , la librairie open source libopencm3.

La partie la plus intéressante dans ce projet c’est l’utilisation de la librairie open source libopencm3 qui nous a permis de la configuration bas niveau de stm32.

Vu la duré très courte de projet nous avons pas fait la phase 5 mais ça reste une très bonne expérience.

Lien github : https://github.com/inesHH/Torpedo/

Participants : Ines Harmali, Oussama Haddad