Control of Robot Manipulators Professor Nicola Ferrier ME Room 2246, 265-8793 ferrier@engr.wisc.edu
Control Tasks Robot Level task Pe(t) Trajectory Planning (IK, J, etc) controller Power electronics Current to motors
Control Tasks Robot Level task Pe(t) Trajectory Planning (IK, J, etc) controller Power electronics Current to motors
Independent Joint Control (chapter 6*) Use computed reference points (setpoints) for each joint Control each joint “independently” Ignore dynamic effects Treat each joint as a stand alone “motor” Dynamics Based control (Chapter 8*) Use dynamics model to facilitate control Compute torque feedforward Inverse Dynamic Control Operation Space control And Compliance, Impedance, Force…. *Spong, Hutchinson, Vidyasagar, “Robot Modeling and Control”, Wiley, 2006
Jointed system components
Independent Joint Control Use computed reference points (setpoints) for each joint Control each joint “independently” Ignore dynamic effects Treat each joint as a stand alone “motor” Simplifies control Block Diagram (next slide)
Block Diagram of PE controller for a single joint Energy source (current) Reference angle Error signal control signal torque u PE controller u = Kpe e Motor +reduction +transmission Joint measured joint position, qm Actual joint position, q Joint position sensor
Independent Joint Control Control each joint independently without “communication” between actuators Basic Steps: Model actuator Use kinematics to obtain set-points for each joint Develop a controller for each joint Error for joint i:
Need to model relationships: Actuator Model Need to model relationships: between actuator input (current) and output (torque) Section 6.1: Permanent magnet DC-motor Torque is approximately linear with applied current (equation 6.4) Applied current, amp Motor torque, Nm Motor constant, Nm/amp
actuator current vs torque
Need to model relationships: Actuator Model Need to model relationships: between actuator torque and motor angle (q) Section 6.1: Permanent magnet DC-motor Second order ode (equation 6.8 and 6.16) disturbance control input Rotational inertia of joint, kg m^2 Effective damping (friction, back emf), Nm/amp
Independent Joint Control Control each joint independently without “communication” between actuators Basic Steps: Model actuator Use kinematics to obtain setpoints for each joint (recall trajectory planning – chapter 5) Develop a controller for each joint Error for joint i:
Proportional control for each joint Input proportional to position error: Neglect disturbance, wlog set reference position to zero or
Proportional control for each joint Second order linear differential equation: has general form solution: where
Block Diagram of PE controller Kpe 1 + - s(Js+F) Sensor transfer function
Three solutions What does this term do?
Three solutions Over-damped (w2 > 0) Critically damped (w2 = 0)
If B is small and KPE is large: unstable! Three solutions Under-damped (w2 < 0) w has complex roots Oscillates with frequency If B is small and KPE is large: unstable!
Example Step Responses (1 radian)
PE controllers can lead to PI, PID controllers PE controllers can lead to Steady state error Unstable behavior Add Integral Term: ….but now we can have overshoot Add derivative term (PID Controller)
Block Diagram of PE controller Kpe 1 + - s(Js+F) Ki(1/s) Kd(s) Sensor transfer function
Set Gains for PID Controller wlog set (we already have ) Convert to third order equation Solution will be of the form where
Set Gains for PID Controller Critically damped when w = 0 or An equation in 3 unknowns Need two more constraints: Minimum energy Minimum error Minimum jerk And we need the solution to double minimization Beyond the scope of this class – topic of optimal control class More on gains in Advanced Robotics Course ….
Problems with Independent Joint Control Synchronization ? If one joint does not follow the trajectory, where is the end-effector??? Ignores dynamic effects Links are connected Motion of links affects other links Could be in-efficient use of energy
Dynamics: Equations of Motion Dynamic Model forces/torques motion of manipulator+load Equations of Motion Ideally we can use Modeling errors Friction synchronization