About the bioloidcontrol Physics Simulator
What
The physics simulator now in the bioloidcontrol project is a close-to-realistic simulation of the bioloid humanoid robot. Here are some key features :
- Written in C++ : with a decent object hierarchy (IMHO)
- Complete bioloid bus simulator drivable via TCP (all commands)
- Realistic physics : dimensions, masses, inertias taken from Portugeuse research group
- Robot parameters created from Excel file (via a perl-to-XML translator)
- Bioloid components (servos, IMUs, etc) react to bioloid message packets realistically
- Code is readable and extensible (and open source)
There are videos - via YouTube:
Physics simulation controlled by Controller - playshow
This has the two parts of bioloidcontrol communicating with each other (and executing "playshow" in the controller main window) :
Physics simulation controlled by Controller - walking
This has the two parts of bioloidcontrol communicating with each other (and executing "test 0.05 5 0 0" in the controller main window) :
Physics simulation controlled by perl - passive-balancing
This is just the physics simulator being controlled by the perl snippet in misc/ (via a TCP socket). The robot"s movements are just in response to me pressing the "4" key (and then respawning it in the GUI with "r") :
Why
For me : Because I didn"t want to get bogged down in hardware details before I had a chance to see whether my controller ideas worked. And I didn"t want to pay for WebBots, and player/stage/gazebo wouldn"t compile on my non-GPU-accelerated laptop.
For you : Because you might want to test stuff without wearing out your physical robot.
How
The physics simulator "ODE" does most of the heavy lifting for the simulation. Of course, there"s a lot to do in between receiving a message on the bioloid bus to seeing whether the robot topples over in 3-D...
Where
Available via anonymous SVN on bioloidcontrol.sourceforge.net (all under the GPL2).
Who
The main bioloidcontrol "controller" was written by Rainer Jäkel (a.k.a. "cosa"). This new physics module was added by Martin Andrews (mostly appearing as "mdda").
When
- Right now;
- Comments welcome;
- Code even more welcome...