Loop closures for quadruped leg

Typically: "How do I... ", "How can I... " questions
Post Reply
Joaquin_Pineiro
Posts: 3
Joined: 03 Aug 2024, 02:37

Loop closures for quadruped leg

Post by Joaquin_Pineiro »

Hello, I'm working on a quadruped leg that is controlled with 3 servomotor: one for the hip, another for the femur, and another for the tibia movement. The mechanicsm has a few free joints that must be connected in a depedant way. Currently I'm using dummys to make loop closures according the tutorial https://manual.coppeliarobotics.com/en/ ... s.htm#loop, but i can't get it to work. The link for the .ttt model is provided here https://drive.google.com/file/d/1tqxlhM ... sp=sharing

Thanks everyone.

Joaquin_Pineiro
Posts: 3
Joined: 03 Aug 2024, 02:37

Re: Loop closures for quadruped leg

Post by Joaquin_Pineiro »

I figured out how to make it work, however, dummys seem to be connected by spring producing a movement in the shoulder joint when moving femur servo; this shouldn't be happening. I dont know how to make fully rigid this link between dummys. I have tweaked all the parameters in the dummys and it didn't worked. The link has the updated robot: https://drive.google.com/file/d/1tqxlhM ... drive_link

coppelia
Site Admin
Posts: 10504
Joined: 14 Dec 2012, 00:25

Re: Loop closures for quadruped leg

Post by coppelia »

Please excuse the delay due to summer vacations.

Your main problem is model self-collisions: you can visualize all collisions in the simulation dialog (Display contact points). Additionally, make sure to respect design considerations 7 & 8 mainly.

Cheers

Joaquin_Pineiro
Posts: 3
Joined: 03 Aug 2024, 02:37

Re: Loop closures for quadruped leg

Post by Joaquin_Pineiro »

Hello, thanks for the reply. I been observing the contact points but, there is a collision inside a part that in not moving and i dont know why is there. Anyway, I have assembled all the robot, an now every link is not colliding with anything, so there shouln't be intra collision.

Now the model is worse than before, i cant even put the dummys to work because the robot starts to bounce. I left all the joints in position control so there is no movement except in the front right leg. I left all the joints in free except the ones named "servo", and also left two dummys to connect the "rotula_grande_1" with the shoulder link. That in first place doesn't work...

Curious thing: when the femur servo joint, is free, the robot doesn't start to bounce. I noticed a collision in the femur link, but in the layer of respondable doesn't seem to be colliding with anything...

I uploaded the model in: https://drive.google.com/file/d/1BaCLxj ... sp=sharing

Thanks in advanced.

Joaquín.

coppelia
Site Admin
Posts: 10504
Joined: 14 Dec 2012, 00:25

Re: Loop closures for quadruped leg

Post by coppelia »

The easiest would be to set ALL local respondable masks to 0: the robot is not supposed to collide with itself, except when legs do impossible/forbiden movements.

Then, with the Bullet engine, you need to adjust all masses/inertias in order to respect the various design considerations, namely: make sure to have much larger inertia values (e.g. 40x) and/or larger mass values (e.g. 4x), then the robot becomes stable. ([Menu bar > Edit > Shape mass and inertia > ...])

Additionally: normally you would simulate each leg as a simple 3-link kinematic chain (no loops). The loops can then be handled via IK just for eye candy.

Cheers

Post Reply