Ce nouveau projet consiste à tester le fonctionnement de différents moteurs dans des conditions proches de l’utilisation en robotique mobile sans avoir à subir les contraintes de mise en oeuvre réelle sur une base roulante.
Ainsi, ce banc de simulation servira à la fois aux débutants pour tester leurs algorithmes de contrôle, et aux plus expérimentés pour rechercher les paramétrages aux conditions limites de fonctionnement avant patinage. Lorsque nos tests seront terminés, nous pourrons même proposer au public de tester eux-mêmes les différents modes en proposant une interface homme-machine ludique et pédagogique en toute sécurité : pas question d’avoir un robot fonçant à 1 mètre par seconde dans une allée encombrée.
Le prototype est réalisé en partenariat avec des industriels :
– Portescap pour les moteurs.
– Soprolec pour les drivers de brushless.
– Vicatronic pour les encodeurs pour roue libre.
– Matlog pour l’électronique logique
– Easyrobotics pour les petites pièces mécaniques
Nous cherchons actuellement d’autres partenaires :
– conditionnement des plateaux
– accus et batteries
– construction des éléments mécaniques
Les schémas de principe
Plusieurs idées ont été proposées, depuis une idée générale et quelques discussions en réunion ou des échanges avec nos partenaires industriels qui nous ont apporté leurs connaissances et leur expérience.
L’idée d’un disque tournant a été abandonnée au profit d’un cylindre, pour ne pas introduire d’angle dans le mouvement.
Les étapes du projet
Vidéos des prototypes
Voici deux vidéos des résultats en cours : il n’y a pas encore de forces exercées sur la roue, pour simuler le poids, l’inertie, les glissements. Ce sera notre plus gros challenge pour 2010 !
Principe de construction
Nous avons choisi d’utiliser deux plateaux : l’un pour l’électronique de commande et l’IHM et l’autre pour la mécanique et l’électronique de puissance.
Le plateau "méca" sera constitué d’un plateau tournant librement sur lequel sera posé une roue mise en mouvement par le moteur testé. Le moteur et la roue seront fixés à un bras pour permettre à la roue de rester en contact avec le plateau malgré les imperfections. Des poids seront disposés sur le moteur ou sur le plateau.
Le principe général est modélisé sous Google SketchUp, et servira également à trouver les bonnes dimensions et faire une mise en plan. C’est aussi un très bon moyen de partager avec toute la communauté les différents composants mécaniques que nous utilisons, puisque tous les modèles sont réutilisables
Il est également possible de tester la physique réelle dans le modèle simulé avec SketchyPhysics, ce qui permettra d’illustrer de manière très pédagogique le fonctionnement des moteurs et des roues.
Modélisation théorique du plateau
Trois forces entrent en jeu :
– le couple moteur faisant tourner la roue motrice
– les frottements entre la roue motrice et le sol
– l’inertie du plateau
Matériel
Mécanique
– moteurs Portescap
– encodeurs Scancon par Vicatronic
– roues de roller
– roulements à bille
Electronique
– carte Arduino Duemilanove ou Rabbit
– alimentation 24 volts
– driver pour moteurs BLDC par Soprolec
Choix des composants
Commande des moteurs
Pour les drivers, Soprolec nous a conseillé des drivers pour moteurs brushless très intéressants car ils sont puissants mais restent suffisamment peu encombrants et abordables pour notre usage.
Interfaces utilisateur et logique
Pour l’électronique logique, c’est Matlog qui nous a conseillé plusieurs solutions :
- la grosse artillerie comportant un panel PC tactile, une carte d’acquisition, un logiciel de développement. Cela nécessite beaucoup de développement et une mise au point de l’application importante.
- un module embarqué intégré, comme le Rabbit OP7200. C’est un appareil complet, homogène et suffisant pour traiter toute l’application
Solution | Positif | Négatif |
---|---|---|
Panel PC | performances élevées, grand écran couleur | prix élevé ( 3000 €), beaucoup de développement |
Rabbit OP7200 | intégré, compact, prix modique | petit écran 4" monochrome, trop discret |
Voici les datasheets :
Réalisation de la mécanique
Les poids
Pour simuler l’inertie, nous pouvons disposer des poids sur le plateau tournant. Ainsi le plateau résistera à l’accélération lors du démarrage et à l’inverse sera entraînée par son poids lors des décélérations.
Les poids disposés sur le plateau seront appelés "palets", des cylindres percés. Il faut choisir le et l’épaisseur diamètre à la fois pour la facilité de réalisation (sauf si nous trouvons un partenaire équipé d’une machine adaptée) et pour avoir des poids standards.
Soit R le rayon du palet, H la hauteur et r le rayon du trou, et Rho la masse volumique du métal utilisé. Alors le poids du palet = Rho x H x Pi x (R² - r²).
L’odomètre
Une roue libre de même matière et de même taille que la roue utilisée pour la mise en rotation du plateau tournant sera mise en contact avec le plateau. Un encodeur rotatif récupérera les informations de rotation et permettra de connaitre la vitesse instantanée du plateau, ainsi que de réaliser des asservissements précis.
Le codeur que Vicatronic nous a conseillé est un Scancon à axe creux de 8 mm, convenant parfaitement aux axes des roues de roller que nous utilisons. Il a une précision de 1024 pas par tour.
Pour aller plus loin
D’autres bancs : http://timupsinsa.ifrance.com/essais/banc_moteur.htm
Evolution
Nous allons équiper le banc moteur avec des capteurs de couple : une première société nous a contactée et nous espérons vous présenter bientôt les résultats ! Plus d’infos début 2010...