Webots Robot Model - EDGE

16
Webots Robot Model Benefits of WEBOTS Physics engine Simulation of full DOF humanoid Simulation of sensor input Control software in MATLAB Dynamic force modeling

Transcript of Webots Robot Model - EDGE

Page 1: 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

Page 2: Webots Robot Model - EDGE

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.

Page 3: Webots Robot Model - EDGE

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

Page 4: Webots Robot Model - EDGE

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

Page 5: Webots Robot Model - EDGE

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.

Page 6: Webots Robot Model - EDGE

Crouch Motion

Page 7: Webots Robot Model - EDGE

Crouch Motion Leg Torque

Page 8: Webots Robot Model - EDGE

Crouch Motion Body Torque

Page 9: Webots Robot Model - EDGE

Get Up motion

Page 10: Webots Robot Model - EDGE

Get Up motion Body Torque

Page 11: Webots Robot Model - EDGE

Get Up motion Arm Torque

Page 12: Webots Robot Model - EDGE

Get Up motion Leg Torque

Page 13: Webots Robot Model - EDGE

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.

Page 14: Webots Robot Model - EDGE

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.

Page 15: Webots Robot Model - EDGE

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

Page 16: Webots Robot Model - EDGE

Leg Inverse Kinematics Test