Kondo KHR-2HV Robot Simulation Using Webots (Video)

Why does that robot look so happy?

Simple, it's just been successfully simulated to a surprisingly degree by Laurent Lessieux using the Webots robot simulation software application. The robot is a Kondo KHR-2HV humanoid. For this simulation project, Laurent not only simulated the physical aspects of the robot, he also created additional programs to simulate the RCB3 on-board robot controller within the Webots system.

Laurent is one of the few people in the world currently  building sophisticated humanoid robot simulation models. Prior to simulating the KHR-2HV in Webots, Laurent successfully simulated the same robot using the Microsoft Robotics Studio tools, so we really wanted to track him down to find out some of his secrets, and to hear his comparisons between the two robot simulation packages.

Lem: Could you give us a brief overview of the process you followed to create the KHR-2HV simulation in Webots?
Laurent: Sure. Here's a quick outline:
  1. Simplification of the Kondo KHR-2HV model
  2. Separation of the model into individual parts
  3. Creation of tools to generate the parts and related information for Webots
  4. Generation of Bounding box and Convex hulls for visualization of the robot
  5. Creation of a RCB3 controller simulation program for use in Webots
           o RCB file support
           o Scenario support
           o Keyboard functionality to simulate the remote control
  6. Creation of a sensor simulation program for Webots
           o Program was designed to simulate both gyros and an accelerometer, but
              only the accelerometer has been tested so far
  7. Texture mapping tool
I decided to build a basic software tool set to automatically generate  the Webots model from simple data. The input source selected was a 3D model in Wavefront Obj format. Even though it took more time to build and test the tool set, I chose this approach so that the tools could be reused when I need to simulate another robot.


Lem: Sounds as if you already have another robot in mind.

Laurent: Yes, I do. I'd like to simulate the Kyosho MANOI AT01 in Webots next. It's similar enough to the KHR-2HV that it shouldn't take  much time to simulate successfully, yet different enough to be an interesting challenge. Starting off with an accurate 3D geometric model, hopefully from Kyosho, will be really helpful.

Lem : Besides building the reusable tool set, what took the most time and effort?

Laurent: Creating the RCB3 controller simulation. Most of the work was fairly simple and straight forward, but the way that the servos are  driven wasn't easy to simulate correctly. It took a lot of experimentation - trial and error.

Lem: Are you satisfied with the simulation as it's turned out?

Laurent: Yes, very much so. It's better than I expected. Still, it's not 100% perfect. As you can see in the video clip, the robot is falling down after doing the push ups. It's all stock motion sequences but I was expecting that the motion right after the push ups would fail and the robot would fall on its back so I added in a stand-up motion. But, it didn't fail and the robot ended up standing up correctly at that point. So when my added motion tried to make it standup, it actually caused it to fall. It turns out that the Webots simulation reproduces everything very accurately, even when you make mistakes.

Lem: What's your impression of Webots after building the simulation? How does it compare to the Microsoft Robotics Studio (MRS)?

Laurent: I'm very positive about Webots and its approach to robot simulation. At the same time, it's not really practical nor fair to try and compare the two systems against each other since they address different needs and can be complimentary solutions.
With MRS, Microsoft appears to be creating a general environment or "studio" that can be used across almost every robot development need for a wide range of robots. You could think of it as an "OS" for robots with some applications.

In contrast, Webots is extremely focused and experienced with robot simulation. They didn't want to dilute their energy by addressing other aspects of the robot development process. So a direct comparison would be like comparing apples and oranges.

Lem: Would it be possible to use Webots along with MRS?

Laurent: Theoretically. It's easy to imagine a Webots simulation with an MRS interface, though I haven't tried it.

Lem: Fair enough. Let's limit the scope of this discussion just to simulation then.

Laurent: It is much simpler to describe a robot in Webots than it was with the Microsoft SDK. It allowed a simpler interface with the  controller code, which was all in clear C/C++, while the Microsoft SDK required a complex and somewhat confusing framework. I made more progress in 2 weeks with Webots than I was able to accomplish in 2 months trying to simulate the same robot.

Webots has a very solid simulation engine, that seems to do the job well, as you can easily see from the video clip. Since Webots works under Linux as well, it may appeal to a wider range of robot developers than a Windows only solution.
Another very pleasant surprise is that Webots runs fine on my laptop, which makes it practical to demo or even to work on when I'm traveling. It may seem odd to imagine running robot simulations while flying in an aircraft at 40,000 feet between Japan and Europe, but that's exactly what I did.

Lem: How do you think developers will apply Webots?

Laurent: Of course, one possible use for the simulation is to test scenarios and motions before running them on the real robot. You could  write a long scenario, test and update it until it's working exactly the way you want it, without running the real robot once. Combat simulation isn't far off either. You would just need 2 simulated
robots plus some good scenarios and motions.

Lem: Now that you have the basic KHR-2HV simulation working well, what's the next step?

Laurent: Right now I'm working on some new features. One is a user interface (UI) to visualize a scenario or motion in process - a bit  like the H2H3 software with the ability to see what the robot will actually do. The basic UI is almost finished. After that I might add file loading and scenario creation, then later add motion creation.
Related links:


2 thoughts on “Kondo KHR-2HV Robot Simulation Using Webots (Video)

  1. Lem,
    Many thanks for the article.

    Just one comment that I would add, once I have clean the code a bit and finished the User Interface I am working on at the moment, the package will be available for free as an Open Source project.

    The full details of the release are not yet decided but be sure to check Robots-Dreams and Webots webpages for an announcement I hope in the next month or so.


  2. Hello,

    Would it possible to have files webots simulation KHR-2HV

    Sincerely ZANIN.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>