How can I reduce excessive bouncing in my small quadruped Simulink model using Spatial Contact Force settings while joints run in position mode?
Show older comments
Issue: Excessive Bouncing in Quadruped Robot Simulation
Problem Description
I am simulating a small quadruped robot using the Spatial Contact Force block in Simulink. The robot's feet interact with the ground, but the simulation exhibits excessive bouncing despite using position control for the joints instead of torque control. It is a mini version of the model in Quadruped Robot Locomotion using DDPG Agent, I am using a joint trajectory for each of the joints on the robot and I have the actuators set to motion provided by input and torque automatically computed. I believe this is were the projblem begins as during locomotion there is a bounce when the robot's foot contacts the ground, after this occurs several times the robot becomes instable and falls over. I tested this gait on a larger version of the robot and it worked however there was a bounce but the size allowed the robot to continue. After shrinking the model this bounce has become too pronounced and is currently detrimental. A video of the test.
% Body and leg geometry
L = 136.4/1000; % Distance b/w front and rear hip joints (m)
L_back = 181.08/1000; % Length of the torso (m)
l1 = 55/1000; % Link #1 length (m)
l2 = 59/1000; % Link #2 length (m)
The robot's leg lengths are in millimeters (L_back = 181 mm, L = 136 mm distance between front and rear hip joints, thigh = l1 = 55 mm, calf = l2 = 59 mm).
The foot height and foot-ground distance are set to 15 mm (0.015 m) this is the distance the gait moves each foot. the foot goes up then down 15 mm and the forward distance is set to 15 mm.
The simulation time has dramatically increased after scaling the model down.
The feet exhibit exaggerated interaction with the ground, as if the ground is too soft or springy.
Current Contact Force Block Settings
Normal Force:
Stiffness: 1000
Damping: 100
Transition Region Width: 0.00005
Frictional Force:
Static Friction: 0.9
Dynamic Friction: 0.88
Critical Velocity: 0.001
Questions:
Main: Since I cannot switch to torque control, how can I further reduce bouncing in position mode?
Is a foot height and foot-ground distance of 15 mm too large for a small-scale robot?
How should I adjust the stiffness, damping, or transition width to improve ground interaction?
Why is the simulation time increasing significantly after scaling down the model?
Any guidance on parameter tuning for a small quadruped robot would be appreciated!
1 Comment
ashanni sonny
on 2 Mar 2025
Accepted Answer
More Answers (0)
Categories
Find more on Assembly in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!