[CFC] : Poppybox

For the “School of Moon” show with 2 Poppy, I did the “Poppybox” which is a box behind the pelvis to switch between 4 embedded batteries.
http://poppy.discourse.group/uploads/poppy/optimized/2X/4/4fe15ce5a7094169455ed28905bdcbdb59fac3d1_1_281x500.jpg

It is very useful but there are still switches, and having a way to switch the batteries, read their load “by WIFI” is wanted.
That is why I want to launch a project about “automatic Poppybox”.
I am going to actively work on this because I need it.
Here is the specification of the automatic Poppybox :

  • having robust wires and connectors for the LiPo batteries embedded
  • replace the switches by MOSFET commandable switches by an Arduino or a micro-controller in communication with the ODROID or Raspberry by UART (USB connection is too big)
  • read the voltage of each battery on analogic port (and give it to the ODROID/Raspberry)
  • add the IMU MM7150 to the PCB to have the measurement unit close to the intermediary solid : the pelvis
  • get 4 analogic ports to measure foot pressure
  • get others ports to plugg additional buttons (the Nao buttons to capture pose for instances should be awesome)
  • find a subcontrator to make the PCB (if you know a good subcontrator I am very interested)
  • Think about this module to be plugged on a Drone…

Concerning voltage adaptation for 5V or 7.4V I am still looking for a magic system. @Nicolas you talked to me about a internet site to help you design your own power supply. I am very interested in it :slight_smile:

Yes, you can use the TI web tool called webench to design easily your power convertion : http://www.ti.com/lsds/ti/analog/webench/power.page

Actually we design a new board called Hipi. It’s main purpose is to manage RaspberryPi on poppy humanoid. I start to draw it and I put an “addon” connector to manage this kind of things.
For now I create this connector to manage a clean start/stop button and possibly a batterie dedicated to head…
You have a really interresting case and I could take it to adapt my connection to your project!
If you just need to manage an extra UART, I probably can add it easily!

Yes I saw the Hipi project, that is why I posted the Poppybox so that you can see my spec if it can give you ideas. I am still thinking about it.

Here below, a French Spec for Poppybox.

Spécifications de la PoppyBox

Contexte

La pièce de danse contemporaine « School of Moon » de la compagnie SHONEN fait intervenir deux robots « Poppy » conçus par le laboratoire FLOWERS de l’INRIA. Les capacités corporelles du robot sont uniques (notamment grâce à son torse articulé).
Le spectacle est composé de deux parties : le spectacle à part entière (1h20) et une installation (durée dépendant du public). Un des robots Poppy est présent tout le long du spectacle.
La gestion de l’énergie est donc capitale. Plusieurs tests ont été fait avec deux batteries de 2200mAh (30C) en parallèle mais le changement des batteries dans la structure complexe du robot demande 10min, ce qui couperait le spectacle.

PoppyBox existante

Pour y remédier, il a été décidé de mettre 4 batteries de 2200mAh dans le robot mais pas en parallèle. Une batterie est dédiée à l’informatique du robot et les trois autres sont interchangeables par l’intermédiaire de deux switchs à glissière. Cette solution a été retenue pour des raisons de d’urgence mais les switchs doivent être actionnés par les danseurs à la demande du manipulateur robot via radiotransmission FM.
Cette solution de secours a amélioré la fiabilité du robot mais des limites ont été observées :

  • Les fils des batteries étant mobiles, il y a eu beaucoup de casse. Heureusement qu’il y avait les batteries de secours
  • Les connecteurs de batteries sont des connecteurs utilisés en modélisme (voir photo) mais qui sont difficiles à brancher et qui peuvent avoir des faux contacts internes.
  • Le passage par les danseurs est fastidieux et ils ne peuvent pas contrôler directement que ça marche
  • Il est nécessaire de changer la batterie quand elle est épuisée. Pour cela, il est utile de mesurer la tension aux bornes de chaque batterie. La solution ici est de récupérer la tension aux bornes de chaque servomoteur, d’en récupérer le minimum et le maximum. Mais la perte de charge dans les fils avant d’arriver au premier servomoteur peut être très forte et biaiser la mesure.
  • La batterie reliée à l’informatique ne possède pas de servomoteurs. Il est donc impossible d’avoir le niveau de cette batterie pour le moment.
  • L’inclusion d’électronique supplémentaire semble nécessaire, et à y être, autant inclure une centrale inertielle.
  • La résolution de certains bugs liés aux servomoteurs Dynamixel passent souvent par un reset des moteurs. Le fait d’avoir un switch général puissance permet de la faire aisément. Cela constitue aussi un arrêt d’urgence
  • La présence de switch implique aussi d’éventuels accrochages puisque le robot est souvent au contact de personnes (danseurs ou enfants)

Poppybox automatique

Le projet est donc de créer une PoppyBox automatique.
Tout d’abord, une recherche est à mener encore sur les câbles et les connecteurs batterie afin d’en obtenir de meilleure qualité.
Ensuite, l’objectif est de remplacer les switchs par des MOSFET. Ces MOSFET seraient commandés par un microcontrôleur ou bien une Arduino Micro connectée en port UART sur l’informatique embarquée. La carte n’aurait donc plus qu’un seul switch physique pour l’alimentation de l’informatique et de la carte en question. (Voir si un switch pour l’électronique de puissance n’est pas nécessaire comme arrêt d’urgence)
La présence d’un microcontrôleur permet aussi d’avoir accès directement au niveau des tensions des batteries afin d’avoir un monitoring digne de ce nom des 4 batteries. Ainsi, 4 ports analogiques peuvent être dédiés.
Le choix de l’UART a été fait en comparaison de l’USB à cause des connecteurs USB beaucoup trop encombrants. De plus, la réactivité d’une telle carte doit être de l’ordre de 10Hz. Le débit d’informations n’est donc pas limitant.
La Poppybox sera fixée au pelvis du robot de manière solide, on pourra donc y ajouter un module AHRS. Le module retenu est le module récent de Microchip, le MM7150 qui possède un coprocesseur dédié à la fusion de données. Le bus d’interface est un bus I²C, facilement gérable par un microcontrôleur ou une Arduino.
Un luxe serait d’avoir les ports analogiques restants disponibles pour récupérer la pression sous les pieds, et les ports digitaux aussi accessible pour disposer de boutons sur Poppy (pour faciliter l’enregistrement de poses par exemple)
La carte sera un prototype (en double pour deux Poppy), il faudra la faire graver par un sous-traitant et la packager dans un boitier. Le boitier sera sans doutes imprimé en 3D pour être homogène de la pièce du Pelvis de Poppy.
Enfin, cette Poppybox pourra être utilisée dans le futur spectacle mettant en scène des drones. Il peut être intéressant de penser en amont à certaines fonctionnalités.

1 Like

Ce projet est extrèmement intérréssant, il pourrait être complémentaire au projet de la carte hipi :

I found an PCB subcontractor : elecktor

They are actually Eurocircuits - I’ve used them before and they are good. Fast turnaround and relatively good prices for low volumes. At higher volumes they are really good price. The quality is very nice.

They also have now a lower price service for quick prototyping NAKED proto (without solder mask and silkscreen) but about half price. Really nice for early prototypes.

1 Like