Définition d'une release améliorant la fiabilité et la robustesse

Les robots Poppy commencent a être utilisés dans plusieurs projets montrant qu’il survient lors d’utilisations intensives des soucis de fiabilité et de robustesse liés à certains composants que nous utilisons.

Nous pensons qu’il serait peut être nécessaire de faire une version 1.1 de l’Humanoid et du Torso afin de réduire ces problèmes.

J’ouvre ce topic pour referencer l’ensemble des points d’améliorations souhaitables puis définir les priorités de developpement pour viser une nouvelle release d’ici la fin de l’année.

Poke: @Manon, @Thot, @Comacina, @Maximilien, @juju, @droy

2 Likes

Je suis d’accord, Poppy V1.0 n’a pas fini sa carrière, et loin de là :grin:
En général, en robotique, c’est là que tout se joue : Le fameux “effet démo” est une chose à éliminer. Et pour moi, c’est un sujet de recherche à part entière pour faire avancer la robotique. Avec Poppy on y est presque :slight_smile:

Voici une première liste :

  • Mettre des mains articulées, avec des XL-320. Le projet de prothèse apporte déjà la pièce à mettre au bout du bras pour le poignet et Ergo Jr apporte les autres pièces. Il manque la liaison entre en XL-320 et les doigts. Je reçois la pièce vendredi matin, je pourrai donc essayer assez vite. Pour l’alim, je compte l’attacher dans l’avant-bras, il y a de la place. Il risque d’y avoir par contre un problème de dimensions, il faudrait peut etre integrer les XL-320 directement dans l’avant-bras… A voir.

  • Pour les batteries, je suis parti pour prendre deux batteries de 2200mAh, une dans chaque cuisse pour équilibrer le tout. Cela permet à Poppy de tenir au moins 2 heures sur scène (il ne bouge pas tout la temps)

  • Pour la Razor, il faudrait voir où la caser. L’ideal c’est sur le Pelvis mais il faut qu’elle soit horizontale… je n’ai pas encore trouvé sans gaffer…

  • pour le wifi, on peut garder la petite EDIMAX du kit, en wifi 802.11n, mais les tentatives de connexions sont pas toujours un succés. Je vais essayer d’utiliser le wifi 802.11ac qui passe sur la bande à 5GHz jamais utilisée pour le moment. Je pense que ça dépendra de la criticité du projet qui utilise Poppy.

  • Pour le capteur de contact sous les pieds, j’ai ma version en aluminium mais je n’ai pas eu (et je pense que je n’aurai pas le temps) de développer une version imprimable.

  • Pour les yeux, j’utilise le faux ecran sur lequel je place une feuille blanche sur laquelle je dessine. Pour info, les enfants pourraient être interessés :slight_smile:

  • pour les pieds, sachant que je vais faire des choregraphies debout, j’envisage de faire des pieds plus grands en surface. Peut-être le faire marcher comme ça ? avec le jeu et les flexibilités ? je ne sais pas encore.

  • Tu parles d’une nouvelle version de torse, tu parles du poppy Torse ou en général du torse ?

  • J’ai désactivé les checksum error et c’est un pur bonheur.

  • J’ai désactivé les overload error… avec modération.

  • Je cable Poppy avec des serflex. Problème : ça pique. Je suis en train d’apprendre une technique de cablage à l’ancienne avec du fil qui consiste à tisser le long du fil. L’avantage est que c’est plus solide et que c’est doux. Je vais m’entrainer sur Poppy.

  • Au niveau logiciel, je réfléchi encore, mais le stop-motion est quelque chose de très puissant.

Tu veux dire un programmation par clés comme avec chorégraphe ?

Yep, avec clés mais aussi clés extremes (min et max) et cles checkpoint, avec differentes trajectoires possibles, splines, droites et “pop” (petites accelerations)

Points d’amélioration:

  • Remplacement de l’Odroid U3 en fin de vie (Raspi 2 ? --> nouvelle version tete)
  • Mettre des accès USB accessible depuis hors de la tête pour le dongle Wifi (moins de perturbations) et d’autres trucs custom
  • Carte Razor par défaut avec emplacement de montage sur les pièces de structure (et je vote aussi pour un emplacement sur le pelvis)
  • écran + intégration avec pypot
  • textToSpeech + intégration avec pypot
1 Like

Beaucoup d’éléments importants sont déjà cité ci-dessus. Le passage à la Raspberry Pi 2, pour unifier les créatures Poppy et la maintenance des images, semble très utile.

L’intégration de la main articulée avec les XL-320 semble poser la question de l’intégration avec les autres moteurs: sur le projet prothèse, on a pour le moment deux systèmes électroniques différents. C’est ok pour les utilisations geeks, moins pour monsieur tout le monde.

Une dimension soft qui me semble importante: intégrer une librairie de sound processing puissante dans pypot, afin de pouvoir construire des chorégraphies avec les mouvements et les sons mixés de manière uniforme. Features de base: contrôle temps réel du volume, sampling rate, vitesse, pitch, idéalement avec des algos de type PSOLA pour pouvoir changer la vitesse sans changer le pitch et vice versa, d’un nombre N de sons en même temps.
(Cela n’est cependant pas un élément de fiabilité/robustesse).

Sur le projet prothèse un système d’alimentation unifié a été réalisé par @joelortiz.
La carte prend l’alimentation de poppy (12V) et la convertie pour des XL320.

Toutes les sources sont dispo ici

1 Like

Super,

Le moteur du torse à tendance à chauffer si on laisse brancher le poppy-torso longtemps. Le moteur connecté à la base semble prendre du jeux avec le temps.
Si je remarque d’autres choses, je publierai ici.

Autre chose qui m’est arrivé hier. La ventouse du poppy-torso a tendance à se décrocher et quand le robot est sur une table… il tombe de la table !!
Résultat : fracture de l’épaule droite. Il faut que je réimprime la pièce. Est-ce qu’il y a une matière particulière pour l’impression ?

Il m’est arrivé la même chose à Amsterdam : https://twitter.com/poppy_project/status/631161902434021377
Toute les matières vont bien (ABS et PLA si tu peux utiliser une imprimante de type FDM), pense juste à orienter la pièce de telle sorte à avoir la partir avec le watermark poppy de façon verticale. Si tu l’imprime dans l’autre sens elle est trop fragile sur les côtés.

tant qu’à faire une nouvelle version de l’électronique autant factoriser tout les petits truc de la tête dans une seule carte.

L’idée serait de faire un shield Rpi avec l’alimentation (12V moteur => 5V), l’ampli audio et un level shifter I2C pour pouvoir faire fonctionner un écran de led (on a déjà un proto fonctionnel).

@Xevel avait désigné une carte (Poppy IO module) format sodim qui comprenait une arduino mega, 2 usb2ax et un acceléro/gyro. Pour le moment on ne l’a jamais utilisé cette nouvelle release serait aussi l’occasion d’ajouter la possibilité de monter cette carte sur le shield!

Avec cette concaténation plus besoin de câblage compliqué et de soudure tout tient sur 3 carte (RPI, Shield, poppy IO module) fixé les unes au autre!

Le gros soucis que nous avons avec la raspberry pi est l’emplacement mécanique des USB et de l’ethernet. Nous devons avoir accès à l’usb à l’intérieur de la tête et à l’ethernet à l’extérieur.
D’apres les information que nous avons pu trouver sur le forum de RPI, En début d’année raspberry devrais sortir une Rpi2 au format sodim en gardant le pinout du compute module 1!

On pourrais donc avoir une carte sur laquelle on à toute l’électronique relative à la tête et la possibilité de placer un compute module Rpi et le Poppy IO module sur une carte adapté à la mécanique de Poppy!

Qu’en pensez vous?

Si on fait ça, faut rajouter un mini onduleur.
Avec le MCP73833, ça donne :

source

Je suis tout à fait d’accord. Moins il y a de fils, mieux c’est :slight_smile:

Par contre, êtes-vous sûr de passer en Raspberry Pi 2 ? Est-elle assez puissante? Les ports USB sont -ils OK ?
Les ODROID sont-elles en fin de vie ? J’ai vu que la ODROID XU4 venait de sortir qui a l’air vraiment intéressante.
Faire des shields ne permet plus de changer de carte de contrôle.
Sinon, pour la carte il faut aussi ajouter un troisième USB2AX si possible pour des XL-320 (avec l’alim 7.4V qui va avec) pour les mains ou d’autres petits moteurs malins.

oui la PI2 est suffisamment balèze, on l’utilise pour toutes les autres créatures que les humanoide, et oui la Odroid est en fin de vie. De plus la rapsberry bénéficie d’une large communauté et d’une documentation largement plus fournis.
Une compatibilité avec des xl320 dans un réseau AX est en cours de test…

1 Like

Il est vrai qu’en général, quand j’ai un problème sur l’ODROID, je passe par les forum de la Raspberry. Si vos avez testé c’est bon. C’est vrai que maintenant, je me sers de l’ODROID comme passerelle vers un autre PC plus puissant pour les calculs.
Pour la compatibilité des XL-320 c’est une super bonne étude à faire :smile:

Il n’y a officiellement plus de Odroid du coup le développement de la version 1.1 devient notre priorité. Nous avons donc fait une réunion de crise pour lister toutes les options que nous avons.

#Quick and dirty way

Avec cette méthode on fait un patch rapide ou on met tous ce qu’on peut dans la tête…

#Quick and dirty way XU4

Avec cette méthode on fait un patch rapide ou on met tous ce qu’on peut dans la tête avec une Odroid XU4…

#Shield RP2 + Option IO module

Avec cette solution on utilise une RPI2 classique et on crée un shield pour regrouper les fonctionnalités sur une carte centrale afin de limiter l’encombrement.

Le shield contient :

#Carte mère compute module + Option IO module
Avec cette solution on utilise un compute module RPI Pour avoir un maximum de souplesse.
Pour le moment il n’existe que des compute module d’une puissance équivalente a une RPI 1 mais la fondation RPI a certifié que la version 2 du compute module garderait exactement le même pinout et que cette version devrais arrivé à la fin de cette année. Cela signifie que nous devrons nous contenter d’une RPI1 durant quelque mois, une bonne occasion d’optimisé nos appli.

Le shield contient :

##Nous attendons vos retours le plus rapidement possible pour approfondir l’une des solution!

Bonjour,

ces points ont déjà été cités, mais j’aurais aimé comme améliorations:

  • les pieds plus grands pour une meilleure stabilité de Poppy debout
  • un systeme text-to-speech

Voici mon avis :
Dans tous les cas, les solutions qui encombrent la tête sont à éviter. Donc il faut limiter au max les câbles. Si on veut, dans notre cas optimiser la fiabilité, les solutions contenant “dirty” dans leur titre :wink: sont à proscrire.
La fiabilité CEM en sera encore améliorée :smile:
Pour la ODROID, c’est la U3 qui n’est plus dispo ? Ou c’est carrément la boite qui a coulé ?

Concernant la Raspberry Pi 1, il me semblait que le goulot d’étranglement se trouvait dans le port USB ? Et donc une optimisation de Pypot ne semble pas suffisante. Maintenir 50Hz avec Pypot est quand même un gros plus par rapport aux autres solutions. Le compute module possède un port USB, est-il assez rapide ?

Je vois que dans les solutions avec shield, le USB2AX n’est pas intégré, ou en option. Est-ce normal ?

Je suis pour les deux dernières solutions. Celle avec la Raspberry PI 2 est moins propre que celle avec le compute module mais elle me semble plus accessible (prix + simple). Celle avec le compute module, pour moi, c’est la vitesse du port USB qui me semble à tester.

On a démarré le developpement de la carte mère dédiée robotique pour les Poppy:

Vos remarques sont les bienvenues si vous voyez qu’on a oublié des points importants.

Aussi, on voudrait que l’utilité de cette carte dépasse l’intégration dans des créatures Poppy pour servir à d’autres projets de robotique. Si vous voyez des caractéristiques à rajouter/enlever pour avoir une carte un peu plus générique, c’est le moment.

On a acheté une compute module + shield, on va benchmarker ça avec @Nicolas sur un Poppy Humanoid.
Après, la solution raspberry pi 1 est temporaire, on fait le pari qu’on va avoir une RP2 computer module sous peu…

Je partage ici une idée : la butée de pliage du genou est très ouverte. Je réfléchi, et je n’ai pas trouvé de solution mais il serait intéressant d’avoir un genou qui se ferme entièrement.
Cela permettrai d’avoir une position accroupie très basse et une amplitude de mouvement à 4 pattes plus large.