Je vous présente mon nouveau projet.
Il s'agit de faire un robot bipède contrôlé par un terminal Android via bluetooth.
Tout ressemblance avec le film Real Steel est fortuite ^^
Car le but est d'en faire un robot danseur et non de combat

Plusieurs étapes plus ou moins parallélisable :
- la construction matérielle du robot ;
- l'application de base Arduino pour gérer les servocommandes ;
- la prise de contrôle du robot en Bluetooth ;
- la constitution d'une large bibliothèque de "poses" et d'animations (enchainement de poses).
Pour la partie "matériel", je ne voulais pas partir d'un base robotique telque le Kondo, Kumotek ou RoboPhilo (trop cher a mon gout entre 800 et 1200€, auquel il fait ajouter le hack pour arduino et les sensors qui vont bien... et surtout me privant du plaisir du bricolage les mains dans le cambouis).
Après une petite étude de cout, le robot complet devrait me revenir a ~750€. J'ai donc décider de le faire de A a Z.
Je suis partie d'un carte Arduino 2560 et d'un shield MEGA IO v2.1de DFRobot.
Ce qui offre un très grand nombre de DPIN pour les servos (et pour les sensors a venir). Le second option était une carte SCS32 associé a une carte Arduino UNO.
J'ai préféré l'Arduino 2560 pour le nombre de possibilité mais l'inconvénient est la taille et le poids de la carte et du shield (voir photo du robot de dos).
Le robot est constitué d'un certain nombre d'élément "standard" pour servo issus du catalogue Lynxmotion. Lynxmotion a plusieurs bipèdes a son catalogue mais aucun ne m'a vraiment séduit par sa construction ou ses possibilités d'extension.
Le torse est le seul élément spécifiquement typé pour bipède... au final, je le trouve trop petit pour le robot tel que je l'ai construit.
Un autre element central du robot est le servo par lui meme !
Ne sachant pas quoi prendre, j'ai opté pour le HiTec HS-422 vendu vers 10€ (couple de 4.2Kg/cm, Lynxmotion utilise dans certains de ses bipèdes).
Cela s'est averé être un mauvais choix : pas assez puissant pour tenir le robot sur ses jambes !
Donc, je suis parti pour tout ce qui est jambe pour des TowerPro MG995 (couple de 12Kg/cm) qui coute a peine plus cher (13€). Evidement, prendre un magnifique servo digital de 65Kg/cm aurait été le choix ideal... mais a 60€ le bestiau... trop cher

Aujourd'hui, j'ai fini a 80% la partie mécanique. Il me manque des pinces en guise de mains, mus par des micro-servos. Ce qui devrait porté le degré de liberté (DOF) a 23

Il me faudrait probablement un boitier pour caché la carte et le shield et pour mettre un peu d'ordre dans les cables ^^
Dans les sensors que je compte ajouter, il y aura un capteur Infra-rouge (type GP2D120) situé dans chaque avant bras, un ou plusieurs Ultrasonique situé au niveau de la tête (basé sur une tourelle pan/tilt).
Je compte aussi ajouter un gyro pour garder le robot en équilibre (la partie software devrait permettre de contrôler le robot en InverseKinematics)
De par ma premier expérience robotique avec un des Roby du forum, je maitrise pas trop mal la communication bluetooth entre l'Arduino et Android.
J'ai équipé la 2560 d'un module XBee Bluetooth. L'avantage du bluetooth, c'est que finalement n'importe quel dongle BT permet de se lier avec l'Arduino.
Je prévois de faire, en plus du module Android, un module software fait en Processing.org pour piloter le robot via un PC (et pourquoi pas une appli iPad un jour...).
Actuellement, je bosse sur la partie algo de la cinématique des animations (sur l'Arduino). Ça se passe plutôt bien pour le moment.
Le plus embêtant étant de calibrer les servos (car malheureusement les servos en sont pas tous calibré pile poil). Les plus observateurs noterons des excentrations des servos sur les photos.
J'ai défini quelques "poses" et quelques animations mais la route est longue pour avoir suffisamment de poses pour faire des enchainements intéressants

Et voici une petite vidéo de Shaky vous saluant


