Walking robot floor / platform simulation in Simulink

I am trying to create a simple body model that will be subsequently monitored. However, I have problems when I connect both legs to the body.

I did what I created the model, starting with the left foot attached to the world frame, and then to the torso. I ended up duplicating one of the legs and again tying it to the world frame and torso, effectively closing the “loop”. However, when you try to run the simulation, the following error message appears.

'untitled/Right Leg/Hip/Revolute Joint' has a degenerate mass distribution on its follower side. 

I have a feeling that this is due to the fact that both legs are attached to the torso and to the world frame.

If I let my legs dangle from the torso, attaching the torso to the world frame directly, then it works. But I need the legs to be attached to the "ground / floor"

What will be the correct way to model this so that I can later actuate the joints?

Two-row system block diagram

Two-row system visualization

+5
source share
1 answer

I believe that you need three connections between your robot and the floor:

  • The force of contact between the left foot and the floor

  • The force of contact between the right foot and the floor

  • A virtual connection that allows you to specify the initial height of the torso above the floor.

A virtual connection to indicate the initial height above the floor is usually done using the 6-DOF Joint. It does not limit anything, but allows you to specify the initial position, orientation and speed of the torso.

Contact strength can be executed with a hard stop, but I would recommend that you look at this library on a central MATLAB file exchange:

https://www.mathworks.com/matlabcentral/fileexchange/47417-simscape-multibody-contact-forces-library

This will allow you to simulate the contact between the legs and the floor, as well as the friction that will allow the robot to walk. The required force is the force of contact facing the plane.

Try it and see what you think.

- Steve

0
source

Source: https://habr.com/ru/post/1231935/


All Articles