280 likes | 494 Views
Control of Robot Manipulators. Professor Nicola Ferrier ME Room 2246, 265-8793 ferrier@engr.wisc.edu. Control. Tasks. Robot Level task. P e (t). Trajectory Planning (IK, J, etc). controller. Power electronics. Current to motors. Control. Tasks. Robot Level task. P e (t).
E N D
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
Control • 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
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) Error signal control signal Reference angle 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:
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 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)
Three solutions • Under-damped (w2 < 0) • w has complex roots • Oscillates with frequency If B is small and KPE is large: unstable!
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