Do you have motion tracking tools? Ideally, a mocap system would be very useful, but it is expensive.
Seems like Poppy Humanoid is trackable with the kinect. Did you try on Alion?
An alternative is to explore the use of QRCodes and visual tracking.
For motion tracking, for the moment I use just a camera. But my first objective is to have software tracking, but it is on the road
I note for kinect, it seems to be the best alternative I see even if I never used it.
New BIG update:
My project was funded by Mairie de Toulouse so as to have a smarter robot⊠Therefore, I have all components to build the legs of Poppy.
(It lacks me just few robotis frames on the way)
Moreover, I work on the soft part about real-time control with synchronous data flow architecture. This architecture allowed me to program my old robot very efficiently but it lacks still one thing.
This thing is trajectory computation. After the Russ Tedrake course, it appears that designing an optimisation controller is a good thing. The optimisation algorithms used are âquadratic programmingâ but the system is very non linear here.
I had a course about evolutionary algorithms at INRIA North concerning CMAES algorithm. I am thinking about crossing all of these. If you know papers about this I am very interested.
Finally, the last part in progress is that I have legs⊠But no foot. I am then thinking about foot design using 3D printing. My search about puppetry helped me a lot!
I just have two questions:
About Arduino interface with Pypot, is there any tutorial ? Or should I open a simple serial port and manage my own bus?
About the pelvic link of Poppy, I am looking for the one of version 1.0 which seems very robust with 3 parts. Can you send me a link to the STL ? If you are not working on it.
And after playing with one leg, Poppy is a little monster⊠Take care about fingers it is a great work. I wish I will give contributions as far as I can.
Hello @Thot !
Many questions Just a comment on CMA-ES: this is indeed a very efficient and easy to use optimization algorithm. I recommend you play with the Python implementation of it: https://www.lri.fr/~hansen/cmaes_inmatlab.html
Best,
Pierre-Yves
Hi @Thot,
Regarding trajectory optimization using CMA-ES you should have a look at Freek Stulp work: http://perso.ensta-paristech.fr/~stulp/
He wrote a series of papers on this topic. I am familiar with this one, which is quite short and understandable:
Freek Stulp and Pierre-Yves Oudeyer. Emergent Proximo-Distal Maturation through Adaptive Exploration. In International Conference on Development and Learning (ICDL), 2012. Paper of Excellence Award
He also developed a C++ library for this: https://github.com/stulp/dmpbbo
Nevertheless as @oudeyer said, there is a python implementation for CMA-ES. Regarding Dynamic Movement Primitives (a powerful trajectory generation and control framework, used in the Stulpâs paper above) you should check this very interesting blog, which also provides a nice python implementation: http://studywolf.wordpress.com/ (the 3 posts about Dynamic Movement Primitives)
Can you give me some details on this? Or even see some codes ^^
At the moment the way itâs done for the poppy humanoid is as you said just opening a serial port and managing the bus yourself (see this file for an example).
The ârightâ way to go, or at least, what I think would be a better solution, would be to write a dedicated IO and the associated controller for communicating with an Arduino board.
Thanks for your answers, the python CMA-ES library is very well done. There is the possibility to call the evolution function outside the loop âfminâ using the method CMAEvolutionStrategy.tell(f,x).
I wanted to call the algorithm at each time step, and it is possible. The effort must be done in the cost function.
Waiting for my legs, I have taken robot arms with AX-18 to test this strategyâŠ
I will do a documentation when it will be more stable on the wiki.
Beautiful !!! So nice âcollantsâ and shoes :))))
I just wanted to give some feedbacks about Poppy (beta version) legs mounting. Maybe it is resolved in v1.0 but they are not blocking points:
- The servo motors MX-28/64AT with an aluminium plate are very good servo motors, not too hot, and there is no need of nuts on only one side. BUT take care not to force on the screws, once the screw is broken, it is not possible to remove the remaining screw in the thread hole. (I have broken 2 screws)
- the ankle MX-28 servo motor mounting has very few tolerance. Once it is inserted in the âlegâ component, it is not possible to remove it.
- The wire between knee servo motor and thigh servo motor (which is along the thigh) is 200mm long. It seems to be too short when the robot sits down. I have made my own wire a bit longer.
I will mount the upper body in a few moment. I will report any issues.
Yep I raised an issue here: Increase tolerances for the shin/motor assembly · Issue #2 · poppy-project/Poppy-lightweight-biped-legs · GitHub
In the kit, it will have custom wires, a bit longer, for the legs.
For the upper body, do you plan to use the 1.0 or the beta version ?
I will use the v1.0 version (I have also taken the v1.0 pelvis which is smarter). I keep the beta legs which are OK.
I also try to design the foot by myself⊠not easy but funny.
Ok perfect, it will be easier to support your project like this
The dance shoes are fitting Poppy Humanoid very well!
You have a battery in this setup?
Sorry, it was just a photo of the robot on stage. There is no power.
Hi Thot,
Quickly a movie with poppy dancing !