InMoov à la taille d'un enfant (Small InMoov)


petit inmoov2

Le but du projet est de réaliser un InMoov plus petit pour gagner du poids  ,  afin de le rendre autonome avec une plateforme équipée de moteurs DC.

Beaucoup de fichiers de Gael sont modifiés , afin d'installer des Servo-moteurs plus petits .

Les articulations sont équipées de roulements à billes pour simplifier le montage.

Pour réaliser ce projet vous devez imprimer les fichiers à l’échelle 0.64 

L'avantage de la taille permet de merger beaucoup de fichiers STL de Gael . (cela permet de gagner du temps de montage et rend plus rigide le robot)

Le bassin est modifié pour utiliser des grands servo-moteurs .

La taille du Mini Inmoov une fois terminé est de 1 mètre 15 et sont poids de 6 kg

Divers éléments sont déplacés vue la place (type caméra , HP) , et certains supprimés comme les paupières .

L'avant Bras et la main seront remplacés par un système Pan/tilt et une autre main articulé .

Main 5DOF cher banggood

Chez Aliexpress

20200610_175134

petit inmoov


petit inmoov3

camera

La tête étant réduite , la caméra ne peux être fixée dans l’œil .

Je l'ai déporté sous le cou , avec un micro servo-moteur SG92 pour la motoriser.

Les fichiers STL sont dans le menu téléchargement .

La caméra utilisée  est la LifeCam3000 Microsoft

Le micro sort sur le coté gauche de la caméra , il faudra dénuder la prise USB

Toute l'électronique rentre au dos du Mini InMoov  (Bon c'est un peu juste).

Vous trouverez dans le menu téléchargement les supports pour les différentes cartes .

A gauche et à droite les Méga arduino , avec les  Nervo Board de Gael .

en bas le bloc alimentation .

Au centre l'amplificateur , avec 2 Nano arduino , un pour la syncronisation de la bouche , l autre pour le néopixel .

Sur le bassin les deux servo-moteurs pour les hanches , et en dessous le Hub USB.

Le Pc sera fixé  sur le dos  ou  au pied sur le socle motorisé.

inmoov electronique


Schéma de câblage des Arduino NANO 

Un pour le néopixel ring 16 leds et les leds RGB à clignotement lent pour les yeux,  l' autre pour la synchronisation de la bouche . 

  fichier .ino pour la bouche

Le câblage est réalisé sur une plaque d'essai à pastilles (en Epoxy).
Le servo-moteur ,les leds, le néopixel ring seront raccordés dessus .

Démo en vidéo

arduino nano

schema


roulement3

Dans le montage des épaules , pour plus de fluidité, j'ai modifié les fichiers des épaules en ajoutant des roulements à bille .

Vous trouverez ses petits roulements sur le site www.123roulement.com

Ci joint les références . 

MR126 taille 6x12x3 mm

61706-zz-zen taille 30x37x4 mm

roulement4


Les Modifications apportées par manque de place .

Caméra déporté sous le coup.

Modification du sternum pour installer un haut parleur .

Création d un cache sexe entre les jambes .

L'entre jambes est fixé avec un serre-câble sur le tube de support.

Modification du support Néopixel pour installer une loupe et un Néopixel ring de 16 LEDs.

Le Kinet n'ayant pas la place , création d un cache à cet emplacement.
(A suivre ultérieurement pour installer des détecteurs)

  • nota : Les fichiers STL sont dans le menu téléchargement.

sternum


main

Voici la main gauche avec le système pan/tilt . 

Cette main commandée sur Ali-express est livrée sans documentation .

Ci joint le fichier PDF trouvé sur internet  (en anglais) .


Réalisation du support motorisé

Le But du montage est de motoriser notre robot .

Matériel nécessaire :

  • Une carte Arduino Uno (ou autre)
  • Un pont en H type  L298N 
  • 2 moteurs DC
  • Un Capteur ultason HC-SR04  (il sera possible bien sur s'ajouter des capteurs  si vous vouler controler toutes les direction du robot.)

Ci - joint le schéma de câblage . 

L alimentation du pont pourra accepte de 5v à 12 volts en fonction de vos moteurs bien sur .

les broches PWM utilisées pour les moteurs sont 5,6, 10,11.

les broches 3 et 4 pour le capteur ultrason.

Le câblage est réalisé sur une plaque d'essai à pastilles (en Epoxy), le pont H est fixé par 4 entretoises le tout enfiché sur la carte arduino.

Le montage terminé , il nous reste à programmer tout cela dans MRL (myrobotlab) .

moteur2


Il existe dans MRL un service nommé  MotorDualPwm nous allons donc l'utiliser .

Pour le capteur nous avons le service UltasonicSensor . Il faudra aussi que notre mini InMoov nous obéisse à la voix . (exemple viens vers moi, marche,recule,tourne à droite,tourne à gauche).

Si il rencontre un obstacle il devra s'arrêter et demander de l'aide .

Le projet sera compléter d'un pilotage par un smartphone android ( je vais donc écrire une mise à jour du logiciel InMoov Android) 


Il nous faut donc créer un fichier de configuration pour les services supplémentaires .

Un fichier PYTHON pour gérer les événements.

Un fichier AIML pour les commandes vocales .

Nous allons commencer par le fichier de configuration du matériel . 

Ci joint le fichier que j'ai appeler I_moteur.py pour suivre la philosophie des concepteurs InMoov.

Créer le fichier et placer le dans le réperdoire  ...../InMoov/services  (dans le fichier , modifier le port com , selon votre configuration).

serviceradar

Maintenant nous allons créer le fichier python pour les événements .

Ci joint le fichier exemple des mouvements de mon plateau. Vous pouvez bien sur l'adapter à vos besoins .

Comment cela marche ? 

Dans le programme Python en marche avant , je fais avancer pendant 20 secondes le robot  , si il rencontre un obstacle , il s’arrête et demande ce qu il doit faire .

motor1.move(0.5) fais avancer le moteur 1 a 50 % de sa vitesse (valeur 1 = 100%)

motor2.move(-0.2) fais reculer le moteur 2 a 20 % de sa vitesse (valeur 1 = 100%) etc ....

motor1.stop() arrête le moteur 1 

if (radar.range() <= 30 ):  ( si le radar est a 30 cm alors arrête les moteurs , vous pouvez bien sur modifier cette valeur du radar)

Une fois votre programme Python créer copier le dans le répertoire ; .../inMoov/custom

moteurpy

Il nous reste à créer le fichier AIML pour que notre mini robot nous obéisse .

Ci joint le fichier AIML , une fois crée copier le dans le répertoire ...../InMoov/chatbot/bots/fr/aiml/ votre fichier aiml

aimmoteur

Voila votre InMoov n'est plus statique , effectivement il est sur des roues pour le faire marcher avec ses deux jambes  , c 'est une autre HISTOIRE ...........

à suivre.