Démarrer avec MyRobotLab pour InMoov, sous Windows

Lorsque j’ai décidé d’écrire cet article, il s’agissait avant tout de faire une synthèse de tout ce qui existait sur les sites et les forums, pour éclairer celles et ceux qui comme moi avaient galéré un peu pour recoller les morceaux.
Mon objectif est toujours le même, mais je vais m’efforcer d’être un peu pédagogue ; cela implique plusieurs choses :

  • il n’est pas question de faire un tutoriel « pas-à-pas » que chacun peut suivre sans rien apprendre,
  • il vaut mieux donner les grandes lignes de chaque étape, en expliquant les objectifs des développeurs,
  • autant que possible, il s’agira d’offrir de nouvelles pistes d’évolutions, et de les explorer le cas échéant.

Pour commencer, essayons de comprendre ce qu’est MyRobotLab

MyRobotLab est un logiciel destiné à animer et à piloter des robots, assemblages de mécanique et d’électronique destinés à exécuter des tâches programmées par les humains. Wikipédia donne cette définition :

Un robot est un dispositif mécatronique (alliant mécanique, électronique et informatique) conçu pour accomplir automatiquement des tâches imitant ou reproduisant, dans un domaine précis, des actions humaines. La conception de ces systèmes est l’objet d’une discipline scientifique, branche de l’automatisme nommé robotique.

MyRobotLab est un logiciel conçu et diffusé sous licence « libre » (ou « opensource ») ce qui sous-entend que ces concepteurs agissent dans l’intérêt commun, sans rechercher à tout prix les profits. Cela signifie aussi que ce projet peut évoluer de multiples manières, voir même donner lieu à des développements secondaires ou parallèles, qu’on appelle des « forks ». Dans le cas de MRL, je n’ai pas identifié de fork, mais plutôt des sous-projets, liés la plupart du temps à des modèles de robots en particulier.
La branche qui nous intéresse en particulier est donc celle dédiée à InMoov,  accessible ici : https://github.com/MyRobotLab/inmoov

Sur le site Github de InMoov, on trouve tous les fichiers récents liés au développement de la branche. Ces fichiers seront récupérés automatiquement lorsque nous ferons l‘installation pilotée de MRL pour InMoov. Cela signifie donc que l’installation de MRL peut revêtir 2 formes :

  • soit on l’installe en mode universel, sans orientation pour un robot ou pour un autre : c’est le mode qu’il faut choisir par exemple si vous avez développé un robot personnel.
  • soit on l’installe pour InMoov, auquel cas il s’agit simplement d’utiliser l’installation pilotée.

Installer MRL pour InMoov en mode « piloté »

Installer MRL en mode piloté, dans le cas d’InMoov, signifie que les développeurs ont eu la gentillesse de concocter un script d’installation spécialement pour InMoov, qui fera seul la plus grande partie du travail. Pour chaque version de MRL, la procédure reste la même. Au moment où j’écris ces lignes, la version qui vient de sortir est Manticore (v1.0.2693) de décembre 2017.
Pour profiter de cette largesse, il y a seulement 3 étapes à suivre :

  1. installer JAVA version 8 sur votre Windows : https://www.java.com/fr/download/manual.jsp
  2. récupérer l’archive de la version 1.0.2693 (MANTICORE) du projet MRL pour InMoov : http://www.inmoov.fr/wp-content/uploads/mrl/myrobotlab.1.0.2693.zip et la décompresser dans un dossier c:\mrl ; cette archive s’installe dans un dossier qui porte son nom et  contient le script d’installation, qu’il suffit de lancer pour finaliser l’installation.

    Chacune de vos installation de MRL (selon les versions) prendra place dans le dossier \mrl
  3. lancer le script : START_INMOOV.bat

Le script met à jour et complète l’installation de MRL pour InMoov

Le script télécharge et installe dans votre dossier tous les fichiers utiles à la configuration et à l’activation du robot InMoov.

A l’issue, une interface s’ouvre : c’est la « SwingGui » (interface servant à piloter les services lancés selon les fichiers de configuration initiaux).
A ce stade, votre robot InMoov existe dans MRL, en mode « virtual » ; c’est-à-dire qu’il ne sait pas encore si vous avez construit tout ou partie de ses composants, et encore moins comment ils sont raccordés à votre PC. Néanmoins, vous découvrez que le logiciel décompose votre robot en parties nommément identifiées ; chacune de ces parties est interfacée à MRL sous forme d’un service. Un service a donc pour rôle de relier le monde physique (un bras, une main, les yeux, le cerveau, etc.) au monde logique informatique. Pour fonctionner, un service utilisera un composant logiciel en fonction de son rôle ; un exemple emblématique est celui du cerveau : ce service a pour rôle de dialoguer avec les humains, d’exécuter des commandes reçues vocalement, et d’envoyer des ordres aux autres services ; il s’appuie sur un composant essentiel : le chatbot, en quelque sorte et par abus de langage l’intelligence artificielle (IA) du robot.  Nous verrons dans un autre article que ce terme est un peu exagéré, les IA et les chatbots fonctionnant un peu différemment.

Compléter votre installation avec Arduino-IDE et Chrome

Pour pouvoir, par la suite, faire communiquer MRL avec le ou les Arduino de votre robot, il faut d’ors et déjà disposer de  l’IDE (Environnement de Développement Intégré) Arduino, téléchargeable ici : https://www.arduino.cc/en/Main/Software . Ce logiciel est indispensable pour charger dans l’Arduino le programme qui lui permettra de piloter votre robot sur plusieurs de ses fonctions. Par exemple, pour activer une main, ce qui est un bon point de départ.
Pour configurer votre Arduino, il faut lui téléverser le programme MRLcomm.ino (situé dans votre dossier MRL sous :  C:\mrl\myrobotlab.1.0.2693\resource\Arduino\MrlComm). N’oubliez-pas de fermer votre logiciel MRL : fermer l’interface SwingGui.

Enfin, vous devez vous assurer d’avoir le navigateur Google Chrome installé sur votre PC. C’est lui qui assurera les échanges vocaux entre vous et votre robot. En effet, Chrome offre nativement une API de reconnaissance vocale qui fonctionne dans les 2 sens :

  • elle peut lire des textes stockés dans des fichiers (la mémoire du robot),
  • elle peut traduire ce qu’elle entend (Chrome doit être configuré pour capter les sons de votre micro-casque, si vous en avez un) sous forme de texte

Nota : qu’est-ce qu’une API ? Application Programming Interface, c’est une interface qu’un programme met à disposition d’autres programmes pour partager des services. Beaucoup de programmes fonctionnent ainsi, y-compris sur le web.

En résumé, à ce stade de votre installation vous avez réalisé les opérations suivantes :

  1. installer JAVA 8 sur votre ordinateur,
  2. installer la dernière version de MRL packagée pour InMoov, dans c:\mrl\
  3. installer l’IDE Arduino,
  4. installer le navigateur Google Chrome

Configurer MRL en fonction de vos travaux sur InMoov

à suivre…

Partagez...
Share on Facebook0Share on Google+0Tweet about this on TwitterShare on LinkedIn0

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *