Animatronic Interactif : Le Live

Author avatar3regards | Last edit 18/02/2022 by L'Atelier-Bellangerais

Introduction

Des quatre coins de Rennes et de l'Hexagone, une équipe de Makers se réunit à l'occasion d'un Festival pour tenter la réalisation d'un personnage animé et interactif.


Lien vers l'album Photos

Lien du stream vidéo


Quelques contraintes propres au Hackathon : 2 jours (+une soirée), une dizaine de participants et une restitution ouverte au public le deuxième jour.

L'objet de cette page est de documenter en temps quasi réel les avancées du projet, afin de pouvoir en reproduire les étapes, voire, de les améliorer.

C'est parti !


Materials

Tools

Step 1 - Jour 0, Jour 1 Jour 2 - Commencer à documenter

Ce sera LA contrainte, pour que :


1) Tout les participants (et les visiteurs), sachent "où on en est ?"

2) A l'issue du projet : Bravo ! Tout est déjà documenté pour être remixé

Conseil : Nommer un rapporteur par pôle pour faciliter la remontée d'informations auprès des facilitateurs...

Step 2 - Jour 1 - Samedi Matin : Faire connaissance, trouver les affinités

Un résumé de qui est qui et qui de fait quoi...

  • Ivan, Valentin et Tonino planchent sur les capteurs avec Ardunio et Rapi...
  • Yo, Marc, Rémy, Pierre sur le chariot à roues du robot
  • Tony et Stéphane sur la Documentation
  • Marie, Chloé, Lucie travaillent sur les éléments textiles, un haut de forme et même un nœud papillon.
  • La découpeuse laser permet de prototyper, ajuster ou et graver certaines pièces en carton ou en bois (Rémy, Chloé ou Stéphane)
  • Olivier démonte des trucs pour récupérer des choses (engrenages, courroies)
  • 3 imprimantes 3D sont prêtes à démarrer (Marc et Tony): 2 Ultimaker et une Vertex, particulièrement véloce...

Les Groupes que l'on à pu observer :

  • 👘 Habillage de l'automate : Marie, Chloé, Lucie.
  • ⚙️ Structure de l'automate : Yo, Marc, Rémy, Pierre.
  • 😀 Animation de l'automate : Valentin, Yvan, Gaël (Pierre et Tony en aide).
  • 🎤 Reconnaissance vocale : Tonino (Tony en aide).
  • 🚗 Système de déplacement : Yo, Marc.
  • 📄 Documentation générale : Stéphane, Tony.



Step 3 - Jour 1 - Samedi après-midi - Les défis

Lister les Tâches, les Trier par Pôle:


💚 Ce qui fonctionne déjà !

  • Le chariot roule !
  • L'œil bouge !
  • La main droite bouge
  • Les accessoires textiles sont en bonne voie
  • Les premières pièces de déco et d'assemblage sont découpéesau laser


💙 Ce qui semble facile :

  • Faire rouler l'animatronic
  • En plus de l'indispensable chapeau, habiller la structure du robot avec du textile, un pare soleil de voiture... et une couverture de survie !


💛 Ce qui mérite réflexion : Comment rendre le robot "vivant"

  • Calibrer les moteurs pas à pas pour les mouvements envisagés
  • Mouvements des mains, saisie d'un objet
  • Mouvement de la bouche...
  • Synchroniser mouvements et paroles de l'animatronic


💔 Ce qui ne semble pas facile : Permettre au robot de communiquer

  • Insérer un système de communication intelligent dans le robot (Installer "Jarvis" sur un Raspberry Pi s'avère ardu...)
  • Permettre à l'animatronic "d'apprendre" de nouvelles choses (quoique...)
  • Rendre aléatoires les "routines" d'expression de l'animatronic

❌ Ce qui ne sera pas fait (a priori...) : Rendre le robot autonome

  • Fabriquer une télécommande pour piloter le robot à distance (Il sera au moins filoguidé... Mais sans marche arrière...)
  • Utiliser des capteurs sonores pour la reconnaissance vocale (trop de bruits ambiants, trop de voix simultanées)


Step 4 - Jour 1 - 👘 Le robot prend corps !

Processus :


Fichiers open-sources : [Photo des plans]


Ressources utilisées :

Machine : Machine à coudre

Technique : Patronage de pour le textile


To Do : photos des proto / plans des habits


Step 5 - Jour 1 - ⚙️ Structure de l'Animatronic

Processus :


Le Chariot motorisé : comment il va pouvoir bouger ce petit bonhomme ?

  • La sécurité d'abord ! (Parce qu'il avance comme un âne ce diable !)
  • Capteurs de proximité (infrarouge)
  • Pare-choc "intelligent" pour arrêter le moteur en cas de rencontre avec un obstacle

La structure / La motorisation / L'alimentation / La sécurité / Détection des collision / Arrêt d'urgence

La structure tient : Le ventre de la bête / La tête / Les accessoires


📝 Bonne avancée mais difficile de donner des plans numériques


Fichiers open-sources : [Photo des plans]


Ressources utilisées :

Machine : Soudure à l'arc, Meuleuse

Technique : Soudure.

To Do : photos des proto / plans des habits



Step 6 - Jour 1 - 😀 Animation : capteurs et réponses

Quelques mots :


Processus :

  • Action / Réaction : Qu'est-ce qui provoque quoi ?
  • Capteur Passifs / Actifs : On a tout ce qu'il faut ?
  • Remonter des infos (mais pas trop) : Quel support ? Quel format ?
  • Déclencher une réaction (ou pas !!!!) : Commande et puissance...
Conseil : Pour valider un montage, utiliser une breadboard avant de tout souder...
📝 Beaucoup de difficulté au début mais, tout le monde à surmonté les problèmes


Fichiers open-sources : [Code arduino / branchements ?]


Ressources utilisées :

Machine : Ordinateurs

Logiciel : Arduino / bibliothèque : Max72XX, Servo ...


To Do : Code à remettre / schéma de cablage



Step 7 - Jour 1 - 🎤 Synthèse vocale ou Interface plus exotique ?

1- L'IDEE INITIALE : Une reconnaissance vocale opérée par un rapsberry pi.


Les enfants poseraient leurs questions en lien avec l'environnement en français et le robot répondrait en français.


2 - PROBLEME TECHNIQUES :

  • Des professionnels de la silicone vallée bosse à plein temps pour avoir des IA qui permettent de parler avec des machines en Language naturel et de passer le test de Turing. Je vous laisse imaginer la complexité de la tache.
  • A la manière de Siri il est possible de faire reconnaitre de mots clefs et de demander à un algorithme d'associer ces mots clefs avec une intention. En fonction de l'intention reconnue une réponse est déclenchée. Il faut donc de toute manière avoir un set de questions et de réponses pré-conçue.
  • Le moteur "speech to text" ou stt sur lequel se base "JARVIS", snow boy, n'existe plus.
  • L'autre stt gratuit et hors ligne pocketSphynx ne fonctionne qu'en anglais, et pas très bien.
  • Même problème est la synthèse vocale, souvent en anglais.
  • L'IOT et les APIs, c'est pas ma tasse de thé. Compliqué de faire fonctionner JARVIS (qui n'est pas maintenu depuis 3 ans) avec Google speech. Peut-être une histoire de ficher Json.
  • Le bruit ambiant rend la compréhension des mots clefs super difficile.
  • Le "parlé" enfant peut-être une source de complexité supérieur
  • Pour atteindre une bonne efficacité il faut entrainer l'algorithme, ce qui n'est pas adapté lorsqu'il y a plusieurs interlocuteurs.


3 - CONCLUSION INTERMEDIAIRE ==> EXIT JARVIS ET LA RECONNAISSANCE VOCALE


4 - SOLUTION ALTERNATIVE :


Plus simple et plus consistant, remplacer de la reconnaisse vocale par de la reconnaissance optique.


Avantages :

  • Plus consistant : la reconnaissance optique n'est pas dépendant du volume ambiant ou du contexte, surtout s'il intègre son propre système d'éclairage.
  • Questions et réponses rédigé. Un peu à la manière d'un QR code, le décryptage d'une couleur ou d'un motif déclenche une réponse.
  • Permet la manipulation d'objets. C'est pas COVID mais c'est rigolo.


Principes : Une caméra reconnais un code à deux couleurs. En fonction du code reconnu, déclenche la lecture d'un fichier MP3.


Matériel nécéssaire :


Voir en J2 (plus bas) pour le détail du fonctionnement.



Step 8 - Jour 1&2 - 🚗 Le robot dans sa mobilitée

Processus :


Fichiers open-sources : [Schéma de câblage / y'a t'il un code ?]


Ressources utilisées :

Machine : Ordinateur / Arduino / Électronique

Technique : Logiciel de reconnaissance vocal Jarvis


Technique : Montage électronique / Codage


To Do : ??

Step 9 - Jour 1&2: 📄 Documenter pour Restituer

To Do : La visio à documenter / la grille des avancées du projet.
Conseil 1: Le A3 ou le PowerPoint, ben c'est pas si mal !

Conseil 2 : Un bon pitch est un Pitch court (2 à 4min max)

Conseil 3 : Un rapporteur ou plusieurs intervenants ?

Conseil 4 : Penser à ceux qui "n'y connaissent rien..."

Step 10 - Jour 1&2 : Tester... Encore et encore

... Jusqu'à ce que ça marche... Ou qu'on abandonne (à un moment, il faut)

Step 11 - Jour 2, le matin : Choisir, c'est renoncer

... Heu... Et si en fait, on ne faisait que ce qui marche ? (ou pas...)


Les groupes sur le jour 2 :


To do : Y-a t'il des changement ?


  • 👘 Habillage de l'automate : Marie, Chloé, Lucie.
  • ⚙️ Structure de l'automate : Yo, Marc, Rémy, Pierre (Stéphane, Chloé en aide).
  • 😀 Animation de l'automate : Valentin, Yvan.
  • 🎤 Reconnaissance vocale : Tonino, Tony (Stéphane et Chloé en aide).
  • 🚗 Système de déplacement : Yo, Marc.
  • 📄 Documentation générale : Stéphane, Tony.


Step 12 - Jour 2 - Combiner les fonctions

Tout ça, faut que ça marche ensemble...


  • Aller voir les copains
  • Piquer des idées
  • Mutualiser du matériel
  • Pensez à plusieurs pôles ?
  • Dire les problèmes, pas les planquer...

Step 13 - Jour 2 - 👘 Le robot prend corps !

texte

Step 14 - Jour 2 - ⚙️ Structure de l'Animatronic

texte

Step 15 - Jour 2 - 😀 Animation : capteurs et réponses

texte

Step 16 - Jour 2 - 🎤 Synthèse vocale ou Interface plus exotique ?

Fichiers open-sources : [Programme reconnaissance couleur / Plan des cartes et de la boite de détection / Schéma de câblage pour le détecteur de couleur]


To Do : ajouter les sources : Programme Python de la reconnaisance vocal / Programme Python de la reconnaisance des couleurs / Plans de la boite et des cartes colorées.

Step 17 - Jour 2 - Restituer : Le bilan

  • Si rien ne marche, Peaufiner le Pitch
  • Est-ce qu'on ne peut pas "tricher" pour la présentation ?
  • Débusquer "le diable dans les détails"
  • Faire simple...
  • Si ça marche pas, c'est pas grave, c'est l'intention qui compte...

Step 18 - Le début de la Fin

Arrivé ici:


  • L'animatronic doit commencer à fonctionner un peu tout seul...
  • Certains n'ont plus rien à faire, sinon à regarder...
  • Ca serait bien de lui donner un nom ? non ?


... Hey ! Est-ce que tout est bien documenté ? Y a des photos ? des vidéos ? Du son ?


Conseil : Si ça sert plus, alors c'est peut-être le moment de ranger...

Step 19 - Epilogue...

  • Comment ça s'est passé ?
  • La météo de l'humeur de chacun
  • Les réussites,
  • Les échecs,
  • Les frustrations
  • Ce qu'on a appris / confirmé / maitrisé.


C'est la Fin !

Notes and references

Cahier des charges et Liste des ressources disponibles réalisé en amont du Hackathon :

https://docs.google.com/document/d/1KuY6qdZxfLTBXZP8aNcI_dwIocBYwu62WJG46BG2STs/edit?usp=sharing_eil_m&ts=61e14799

Comments

Draft