Présentation du robot
Schéma électronique du robot
Ci-dessous le schéma conceptuel qui met en lumière les différentes cartes utilisées afin de diviser le robot en plusieurs blocs. Ceci permet un travail en parallèle sur les différents blocs ainsi que le recyclage des blocs pour l'année suivante (surtout pour la carte d'asservissement).
Carte LattePanda principale
Cette carte est le cerveau principal du robot. Vu qu'une LattePanda est assez puissante pour qu'elle fait tourner Ubuntu, on a pris la décision d'écrire le programme principal en Python. Ce programme est exécuté automatiquement juste après le démarrage de la carte. Il permet juste avec des appelles à des fonctions comme motion_goto(x,y)
de se déplacer tout en évitant les adversaires à l'aide du LiDAR. Elle contrôle le robot en envoyant des commandes à l'Arduino Mega.
Carte LattePanda machine vision
Cette carte gère tout ce qui est en relation avec les caméras qui sont sur les mâts. Elle communique avec la carte principale via Wifi pour donner les positions des tags ArUco.
Carte Arduino Mega
Cette carte contrôle tout les servos moteurs. La question qui se pose souvent est "Pourquoi pas juste contrôler les servos avec la LattePanda?". C'est possible de faire ceci mais c'est plus simple vu qu'on a déjà plus d'expérience avec les Arduinos. Aussi le fait qu'il y a beaucoup de GPIOs mises en disposition avec un réseau I2C, la gestion des servos et du déplacement devient raisonnable de la mettre sur une carte Arduino.
Carte STM32 asservissement
Cette carte a deux objectifs: piloter le moteur et gérer l'asservissement de position du robot. Le choix d'une STM32 avec une PCB faite maison est pour gérer une tâche assez grande et garder la base roulante réutilisable pour les années prochaines avec seulement des améliorations à ajouter. Ceci nous permet de consacrer plus de temps sur les autres parties du robot.
No Comments