Webots Robot Model - EDGE
Transcript of Webots Robot Model - EDGE
Webots Robot Model
Benefits of WEBOTS
• Physics engine
• Simulation of full DOF humanoid
• Simulation of sensor input
• Control software in MATLAB
• Dynamic force modeling
Model use in Design
• Design aid for finding required servo/joint strength
• To design control algorithms with sensor input long before a physical hardware is available.
• Design Inverse Kinematics Algorithm • Design Zero Moment Point Algorithm • Test viable walking gaits • Test strategies for fall recovery. • Control code very similar to code implemented in
hardware controller.
Humanoid Robot Model
• 24 DOF • 6 DOF legs • 4 DOF arms • 2 DOF torso • Height of 0.74m • Humanoid proportions • Simulated sensors
– Gyro – Compass – Accelerometer – Camera – Force sensors – Proximity sensors
Robot Detailed Specs ROBOT A (heavy)
Robot Simulation Specifications Link Length (m) Weight (kg)
Foot 0.05 0.2
Lower Leg 0.15 0.5
Upper Leg 0.15 1
Upper Torso 0.25 3
Lower Torso 0.1 1
Upper Arm 0.12 0.5
Lower Arm 0.12 0.3
Neck 0.02 0.05
Head 0.4 0.1
Total Weight (kg) 9.15
Total Height (m) 0.74
USE case simulations
• Static force simulations not adequate • Additional forces, torques from body generated during
dynamic motions. • High stress motions simulated to find maximum torque
values. • Springs, max servo torques simulated to test adequacy of
hardware. • Torque measured on all joints in real time. • Cases Simulated:
– 2 sec. Crouch motion – stress on leg, knee joints – Splayed feet pose- stress on side leg side foot. – Fall recovery – stress on arms, body, legs.
Crouch Motion
Crouch Motion Leg Torque
Crouch Motion Body Torque
Get Up motion
Get Up motion Body Torque
Get Up motion Arm Torque
Get Up motion Leg Torque
Inverse Kinematics Development
• Gives joint angles with position, orientation as Input.
• Leg Inverse Kinematics • Xr,yr,zr=rotation angles around axes • P = position vector. • (T) = Leg_Inv_Kin( xr, yr, zr, p) • Allows complex movement with
simple inputs. • Developed using solution from
“Closed Form Inverse Kinematics Joint Solution for Humanoid Robots” By Muhammad Ali, Andy Park, and George Lee.
Inverse Kinematics Benefits
• Allows for motions to be easily developed that are near impossible otherwise
• Smooth weight shifting, parametric leg motions possible. • Makes walking stride easier to develop, smoother, and
better. • Body orientation can be taken into account. • Demo shows smooth leg movement in all 3 directions
simultaneously, which is extremely difficult without IK • Foot orientation remains at 0,0,0 ,meaning feet stay flat
relative to body. • Practical application of this is shifting weight and center of
gravity to maintain stability.
Functional Code used in Demo
time = wb_robot_get_time() ;
p = [ a+b*cos((pi/4)*time) , 0.08*sin((pi/4)*time), 0.05*sin((pi/4)*time)] ;
T = Leg_Inv_Kin(xrot,yrot,zrot,p);
for i = 1:6
wb_servo_set_position(l_leg(i),T(i));
wb_servo_set_position(r_leg(i),T(i));
end
Leg Inverse Kinematics Test