Difference between revisions of "PR2 Arm Control"
From Healthcare Robotics Wiki
(→Lowlevel Controllers) 
(→Lowlevel Controllers) 

Line 22:  Line 22:  
T = PID(spline(t, trajectory)  q_cur)  T = PID(spline(t, trajectory)  q_cur)  
    
−  T = J^T * PD(x_err) + J_null * (q_posture  q)  +  T = J^T * PD(x_err) + Kff * J_null * (q_posture  q) 
    
Same but: PD(x_err) = R * Kp * R^T * x_err + R * Kd * R^T * x_dot  Same but: PD(x_err) = R * Kp * R^T * x_err + R * Kd * R^T * x_dot 
Revision as of 06:50, 30 June 2011
Lowlevel Controllers
Controller  Joint Spline Trajectory Controller  JTranspose Controller  JTranspose Task Controller  JInverse Controller  End Effector Cartesian Impedance Control 

Designer  Stuart Glaser  Stuart Glaser  Adam Leeper  Stuart Glaser  MIT 
Control Space  Joint space  Cartesian Space  Cartesian Space  Cartesian Space  Cartesian Space 
Control Type  Joint position, velocity, acceleration control with PID  Controls force at the end effector with PD on the Cartesian error  Same as JTranspose, shaped stiffness matrix in end effector's frame  Position or Velocity Cartesian control with PD control on joint velocities  Forcestiffness hybrid control, JTranspose on some DOF, force control on others 
Relevant Equations 
T = PID(spline(t, trajectory)  q_cur) 
T = J^T * PD(x_err) + Kff * J_null * (q_posture  q) 
Same but: PD(x_err) = R * Kp * R^T * x_err + R * Kd * R^T * x_dot 
T = Kp * (q_proxy  q) + Kd * (q_dot_des  q_dot) q_dot_des = J_pinv * x_dot + J_null * (q_posture  q) 
T = J^T * F F = PD(x_err) or F_des 
Control Location  Joints  User specified Cartesian pose  User specified Cartesian pose  User specified Cartesian pose  Wrist Cartesian pose 
Interfaces 





Demonstrated Tasks 



 
Specify Trajectory  Yes  No  No  No  Yes 
Change Gains on the Fly  No  Yes  Yes  No  Yes, if using impedance control 
Integral Control  Yes  No  No  No  No 
Cartesian Velocity Saturation  No  Yes  Yes  No, not implemented yet  No 
Torque Saturation  No  Yes  Yes  No  No 
Notes 

