Créer un robot Segway ou GyroPode avec Arduino
Ce week-end, je suis tombé sur deux projets de type SigWay ou GyroPode à base d'Arduino. C'est toujours intéressant de savoir comment cela fonctionne.
Le type de projet que l'on retrouve facilement sur le net sous les termes "Balancing Robot".
Ces deux projets apportent des informations intéressantes:
Ce projet utilise un système PID sur Arduino pour asservir les moteurs et faire en sorte que le robot reste en équilibre.
Pour maintenir le robot en équilibre, il faut faire tourner les roues du moteurs dans essayer de maintenir l'équilibre.
Les moteurs doivent contre-balancer la perte d'équilibre du robot par une action correctrice. Les moteurs sont contrôlés par l'Arduino à l'aide d'un point H L298 mais l'élément principal reste un gyroscope + accéléromètre (MPU6050, interfacé sur le bus I2C). L'accéléromètre permet de mesurer le vecteur d'accélération terrestre "g" et donc de savoir si le robot est en équilibre et appliquer une correction si nécessaire.
Paramètres du régulateur PID?
Les ingénieurs utilisent des logiciels pour modéliser le système et fixer les paramètres.
En plus du code et plan de montage, Roland présente également une méthode expérimentale permettant de fixer et affiner les valeurs du PID.
Ressources
Rien ne vaut une bonne vidéo YouTube.
Voyez également la page du tutoriel de Roland Pelayo
Cet autre robot Arduino équilibriste utilise des moteurs pas-à-pas, des StepStick (apparemment des DRV8825) et une commande à distance (Nunchuck). La liaison sans fil est assurée par ESP8266.
Un projet completement documenté sur l'article "Your Arduino Balancing Robot (YABR)".
Un plan de montage complet et du code Arduino ouvert. Franchement TOP.
Le projet dispose également d'une vidéo YouTube.
Ressources
Bonne lecture,
Dominique
Le type de projet que l'on retrouve facilement sur le net sous les termes "Balancing Robot".
Ces deux projets apportent des informations intéressantes:
- Utilisation d'un système PID (Proportionnel, Intégrale, Dérivée) pour asservir le robot. Avec code disponible et matériel facilement accessible et du code.
- Un projet utilisant également des servo-moteurs et un joystick pour faire avancer et tourner le robot.
Ce projet utilise un système PID sur Arduino pour asservir les moteurs et faire en sorte que le robot reste en équilibre.
Source: le projet de Roland Pelayo sur siyhacking.com |
Source: le projet de Roland Pelayo sur siyhacking.com |
- A gauche: le robot est en équilibre et les moteurs sont à l'arrêt.
- A droite: le robot tombe vers la droite, accélérer les moteurs permet de déplacer la base et comptant sur l'inertie de la tête du robot. Cela permet donc de redresser le robot. C'est un peu comme faire un grand pas en avant pour retrouver l'équilibre.
Les moteurs doivent contre-balancer la perte d'équilibre du robot par une action correctrice. Les moteurs sont contrôlés par l'Arduino à l'aide d'un point H L298 mais l'élément principal reste un gyroscope + accéléromètre (MPU6050, interfacé sur le bus I2C). L'accéléromètre permet de mesurer le vecteur d'accélération terrestre "g" et donc de savoir si le robot est en équilibre et appliquer une correction si nécessaire.
Paramètres du régulateur PID?
Les ingénieurs utilisent des logiciels pour modéliser le système et fixer les paramètres.
En plus du code et plan de montage, Roland présente également une méthode expérimentale permettant de fixer et affiner les valeurs du PID.
Ressources
Rien ne vaut une bonne vidéo YouTube.
Voyez également la page du tutoriel de Roland Pelayo
- How to build a self balancing robot (DiyHacking, anglais)
Exemple, schéma et code. - Schéma de montage (DiyHacking, anglais)
- Arduino UNO ou Nano
- Gyro+Accéleromètre I2C (MPU6050).
Voir d'autres modèles ici. - Un double pont-h L298N
- 2 x Geared DC Motor (et des roues)
- 3 plateformes (PCB, plexyglas, plastique, plaque robotique)
- Fils, connecteurs
- Bloc pile
Cet autre robot Arduino équilibriste utilise des moteurs pas-à-pas, des StepStick (apparemment des DRV8825) et une commande à distance (Nunchuck). La liaison sans fil est assurée par ESP8266.
Source: YABR project sur brokking.net |
Un plan de montage complet et du code Arduino ouvert. Franchement TOP.
Source: YABR project sur brokking.net |
Ressources
Bonne lecture,
Dominique
Écrire un commentaire