Présentation de Ben-J
#1
Posté 06 décembre 2011 - 11:42
Je vais présenter ici Ben-J.
Ben-J est un robot sans prétention, juste pour mon loisir, qui n'a pas de but particulier.
Ce qui m'interressait, c'était de programmer, car je ne me sens pas à l'aise avec l'électronique, ni la mécanique. C'est donc sur un kit robotique que j'ai choisi de me baser pour donner libre cours à mes envies.
Il s'agit d'un robot qui n'existe pas sur le papier. Parfois, si j'ai 3 minutes et une idée, je tente un assemblage ou le développement d'une fonctionnalité.
Un jour, je tombe sur les pattes de lit métalique tubulaire que j'avais gardé de mon ancien sommier ... Je les assemble pour donner une structure en T à laquelle je fixe des bras. Pour créer un peu de longueur à ces bras, je découpe 2 rectangles de plexiglass que je perce pour accrocher me moteurs dessus.
Voici ce à quoi pourrait ressembler Ben-J :
Sur cette photo, il n'y a que les bras. Les roues et la tête ne sont là que pour illustrer ce qu'il pourrait être.
Ensuite, vient l'heure de quelques essais de pilotage d'un bras en ligne de commande :
Mon fils ne loupe rien de ce que je fais.
Test pour voir si mon bras est capable de tenir un rubik cube, de rester en position d'effectuer des mouvements sans le lacher :
Je me dis que là, ce serait bien de choper un algo de résolution de Rubik et de lui faire faire.
Ca reste une idée
Avec les lignes de commande, ce n'est pas terrible. Je m'interresserais bien à des algos génétiques qui me permettrait d'avoir une certaine gestuelle, mais ça me semble compliqué à mettre en place en peu de temps. (A explorer)
Je branche donc ma manette pour prendre le contrôle du bras à travers Excel avec un peu de VBA qui implémente DirectX :
6 mois plus tard, alors que Ben-J prenait la poussière, j'ai quelques heures devant moi et je lui monte une tête :
Photo 10
Photo 11
Photo 12
Mes enfants le trouve mignon et décide de lui donner un nom : Ben-J
Quelques temps après, je lui monte 2 webcams dans les orbites et des sourcils :
Photo 13
Photo 14
Photo 15
Photo 16
J'essai un peu l'environnement Robotique de Microsoft et j'implémente les services de traking et de synthèse vocale.
Ensuite, j'essai de lui donner des expressions avec ses sourcils.
Photo 17
Photo 18
Photo 19
Les enfants accrochent, Ben-J se met à parler et à prendre des expressions.
Là, je me dis que je me servirais bien de Ben-J pour des interractions sociales.
Lors des tests sourcils en ligne de commande, un incident intervient :
Photo 20
Je me trompe de direction sur mon moteur et le sourcil vient dégommer ma webCam ...
Je me cré alors une petite interface graphique sommaire avec des expressions prédéfinies(/\ -- \/ -/ \-) pour éviter ce genre d'incident (sans gravité ici)
Aujourd'hui, je ne peux plus approcher Ben-J sans que mes enfants soient là :
Photo 21
Il prend de temps en temps d'autres apparences :
Photo 22
L'avenir de Ben-J n'est pas fixé.
Evolutions possibles :
- Interactions sociales
- Jeux grace à sa synthèse vocale (devinettes, ...)
- tracking et reconnaissance d'objets
- Résolution d'un Rubik
Contraintes :
- Mes enfants m'ont interdis de le démonter
Ajout de matériel :
- Ma fille préfère les chenilles comme Wall-E plutôt que les roues.
Prochaine évolution :
- Indéterminée ! Ca peut prendre des mois
- Mike118 aime ceci
#2
Posté 07 décembre 2011 - 03:21
Je suis aussi de l'avis de tes enfants, ne le démonte pas, termine le
J'ai toutefois quelques questions.
Avec qui pilote tu des AX12 ?
Tu parle de VB tu as une Lib pour ces servos pour Arduino ?
Il en existe plusieurs, de laquelle s'agit il ?
Je parle d'Arduino mais je n'en suis pas certain. Donc peut tu préciser quel est le Microcontroleur que tu utilise ?
Pour les roues (sur la 1ère photo) il n'y a encore pas de moteur ?
Et quelle type de propulsion ?
Ta fille veux des chenilles mais les moteurs ? Elle te laisse aussi le choix ?
En tout cas, merci pour ce partage qui va je n'en doute pas évoluer. Tu ne semble pas être un père qui veux décevoir ses enfants. Alors nous non plus
Nous voulons en savoir plus au fil de tes avancées.
Cdlt
Yves
#3
Posté 07 décembre 2011 - 12:37
Oui tes enfant on raisons , ne démonte pas ton robot , termine le.
Quel carte Microcontrôleurs , et quel alimentation utilise tu pour faire fonctionner ton robot???
En tous cas j'ai hâte de voir les avancées de l'évolution de ton robot Ben-J.
Et comme dit Astondb8 , merci pour ce partage.
@Cordialement.
#4
Posté 07 décembre 2011 - 01:56
Comment ta fait tes pinces ? C'est deux servo ?
Page Facebook : https://www.facebook...appartelier2.0/
Page Twitter : https://twitter.com/2Appartelier (bateau seulement)
Boutique Robot-Maker : https://www.robot-ma...er-20/produits/
Besoin d'une impression 3D grand format ? Contactez moi !
#9
Posté 07 décembre 2011 - 06:30
Si il est en etat de fonctionner ca serai vraiement bien un petite vidéo ...
si tu n'as rien pour je peux te conseiller camstudio gratuit ca enregistre ton affichage http://www.clubic.com/telecharger-fiche10618-camstudio.html...
Bonne continuation @+
Ma Chaîne youtube
------
#11
Posté 07 décembre 2011 - 09:38
Merci pour vos commentaires et votre enthousiasme
Je vais essayer de répondre sans oublier personne.
La plupart des pièces proviennent du "Bioloid Comprehensive Kit" de chez Robotis composé de 18 servo AX-12+ et 1 senseur AX-S1.
Microcontroleur :
Le tout est piloté par une "brique" CM-5 basée sur un microcontroleur ATmega128 (8bit 128k).
Le CM-5 avec sa mémoire peut embarquer un programme compilé en C. Le programme est chargé via le port série de l'ordinateur.
Le CM-5 peut prendre directement des instructions sur le port COM et donner de l'information sur celui-ci.
C'est comme ça que je l'utilise : Relié au PC sur le port COM.
Pilotage :
Sur les premières photos, je communique avec le CM-5 via Hyper Terminal sous Windows. J'ai ouvert une session sur le port COM et je lance des instructions aux moteurs.
Comme c'est fastidieux et pas rapide de lancer les commandes en hyperTerminal, j'ai ensuite branché une manette pour prendre le control de Ben-J. Pour cela, je me suis servi de l'environnement de développement d'Excel (Alt+F11) pour écrire en VBA le code de contrôle (Je n'ai pas Visual Basic 6 à la maison alors je passe par les applications Office).
Sous cet environnement, j'ai écris quelques classes de control (qui n'implémente que ce dont j'ai besoin) en référençant une librairy de communication avec le port Serie. De la même façon qu'avec hyperTerminal, j'ouvre le port COM via le code et j'envoie les instructions.
Pour celà, j'initialise le port, j'entre dans une boucle, je lis les valeurs renvoyées par la manette et je transmets les positions des joystics aux moteurs que j'ai choisi de controler.
Ensuite, pour le tracking d'objet avec les cameras, j'ai utilisé la suite Robotique de Microsoft (gratuite) qui offre des services qu'ont peut consommer (Service WebCam, service vocal, et d'autres ...). J'ai détourner un exemple de programme qui existait déjà "BlobTraker" de façon à intercepter les coordonnées d'une couleur prédéfinie vue par les Web Cams. Ensuite, en fonction de la position de cette couleur dans l'image, je fait tourner les moteurs de façon à centrer l'objet. Toutefois, c'est très dépendant des conditions de lumière. De plus, il y a un décallage sensible entre le moment ou l'objet de couleur et "vue" et le moment ou j'arrive à le centrer. Donc, si l'objet est en mouvement, c'est une galère absolue. (Je dois optimiser tout ça)
Les roues :
Pour ce qui est des roues, il n'y a pour le moment rien du tout.
Je suis allé dans une casse auto avec mes enfants (ce qui n'a pas manqué de les impressioner) et j'ai demandé à ce qu'on me démonte un moteur d'essuie glace. Je pense faire ma motorisation avec un ou deux moteurs de ce genre si c'est assez costaud.
Si je devais faire un système à chenille et bien ... je ne sais pas encore comment je ferais
L'alimentation :
Ben-J est alimenté via un transfo 12V.
Si je dois utiliser des moteur de type essuis glace, j'envisagerai peut être un autre type d'alimentation. De plus, le jour où il devient mobile, il faudra qu'il embarque sa source d'energie.
Les pinces :
Ce sont effectivement 2 servos montés sur un troisième. Comme j'ai 18 servos dans ma boite, ça m'a laissé un peu de liberté.
Les WebCams :
J'ai 2 WebCams, mais ce n'est initialement pas pour la 3D.
C'est juste que ça équilibrait Ben-J d'un point de vu esthétique.
Là encore, ça me laisse une certaine liberté :
- Utilisation 3D
- navigation avec l'une et reconnaissance d'objets avec l'autre ?
Design :
Ben-J est arrivé un peu comme ça ... sans avoir été réfléchi au préalable.
Mais c'est vrai que j'ai des sources d'inspiration :
- Wall-E
- Short circuit
- Les robots de l'attraction Star Tour à Euro Disney dans les files d'attente
Vidéo :
La plupart des images sont tirées de vidéos, mais elle sont parfois longue, alors j'ai fait des captures pour l'instant, mais je vais faire un montage qui reprend l'ensemble des vidéos que j'ai et que je publierai ici.
Pour étendre les fonctionnalités de Ben-J, j'envisage de me mettre à l'arduino d'ici peu.
Bonne soirée.
#12
Posté 08 décembre 2011 - 09:17
Comme tous les autres j'ai envie de t'encourager ! Tu fais des choses très sympas. Et même si on retrouve de l'inspiration dans le Johnny 5 de short circuit ou dans wall-e (n'est-il pas lui-même un peu inspiré de johnny 5 ?), on sent qu'il y a aussi de l'imagination et de la récupération. ("J'ai des bouts de lits, qu'est-ce que je peux faire avec, réfléchissons..." )
C'est comique que tu utilises Excell pour jouer avec ton robot, je ne savais même pas que c'était possible.
Je te souhaite une bonne continuation, tu as encore un grand nombre de possibilités d'amélioration mais tu as une base très intéressante !
Esprit
*Rêve d'en caser un dans un robot*
#14
Posté 22 janvier 2012 - 12:48
Juste magnifique
#15
Posté 22 janvier 2012 - 01:47
très belle réalisation, bravo!
#18
Posté 13 mars 2012 - 03:00
Ce robot me rappelle très fortement Shaky, le premier robot construit par les informaticiens du MIT (il me semble). Il tremblait à chaque mouvement à cause d'un centre de gravité trop haut et d'une mécanique plein de jeu, ce qui foutait en l'air les super algo de reconnaissance qui avait été implémenté.
Je ne peux que te conseiller d'alourdir la base et/ou de réduire la hauteur des bras/tête.
Répondre à ce sujet
0 utilisateur(s) li(sen)t ce sujet
0 members, 0 guests, 0 anonymous users