T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
ROBOT CONTROL
T. Bajd and M. Mihelj
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Robot control deals with computation of the forces or torques which must be generated by the actuators in order to successfully accomplish the robot task.
• The robot task can be – execution of the motion in a free space, where position control
is performed, or – in contact with the environment, where control of the contact
force is required.• The choice of the control method depends on
– the robot task,– the mechanical structure of the robot mechanism.
• Robot control usually takes place in the world coordinate frame, which is defined by the user and is called also the coordinate frame of the robot task.
Robot control
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
General control approach
End-effector pose
Position Orientation
RPY notation of the orientation
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Control loop is closed separately for each particular degree of freedom
• Less suitable for robotic systems characterized by nonlinear and time varying behavior
• Position error computation– Reference positions– Measured robot joint positions– Position error
PD position control
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Control law; computation of control variable (torque, velocity)
• Actuation of robot motors is proportional to the error• Velocity feedback loop introduces damping into the system• Velocity error can be introduced into the control law (faster
system response)
• leading to
PD position control
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
Block schemes
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Robot inverse dynamic model
• In static conditions can be simplified to
• Estimated gravity term part of the control law
PD position control with gravity compensation
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
PD position control with gravity compensation
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Robot inverse dynamic model
• Robot forward dynamic model
• Define new variable
• leading to
Robot dynamic model
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Assume that the robot dynamic model is known– inertial matrix is an approximation of real values ,– represents an approximation of
• Consider the following control law
• where input y will be defined later.
Inverse dynamics control
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
Inverse dynamics control block scheme
y represents computed acceleration in joint space
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• position error
• velocity error
• control law
• error dynamics
PD position control
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
Controller block scheme
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Definition of pose error
• Control based on the transposed Jacobian matrix
• Control based on the inverse Jacobian matrix
Robot control in external coordinates
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• End-effector position
• Differential kinematics
Manipulator Jacobian matrix
Jacobian matrix
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Jacobian matrix
Manipulator Jacobian matrix
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Inverse velocity relation
• For a square matrix of dimension two
• Inverse velocity relation
• Inverse Jacobian matrix equals
Inverse Jacobian matrix
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Robot in contact with the environment (contact force f)• Find resulting joint torques
• In matrix form
Transposed Jacobian matrix
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Velocity relation
• Force/torque relation
• Transposed matrix
• Force/torque relation
Transposed Jacobian matrix
Transposed Jacobian matrix
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Pose error in external coordinates
• Control law formulation (control variable in external coordinates)
• Control variable in joint space
Transposed Jacobian matrix based Control
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Velocity relation
• Relation for small displacements
• Relation for small pose errors
• Control law in joint space
Inverse Jacobian matrix based Control
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
PD position control with gravity compensation in external coordinates• Control law
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Inverse dynamics
• Velocity relation
• Acceleration relation
• Computed acceleration for external coordinates control
Inverse dynamics control in external coordinates
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Pose error
• Velocity error
• Acceleration error
• Error dynamics
• Control law
Inverse dynamics control in external coordinates
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
Inverse dynamics control in external coordinates – block scheme
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• control of end-effector desired pose while the robot is in contact with the environment
– case of robot assembly (inserting a peg into a hole)
– robot movement assures minimal contact force during action
• robot end-effector exerts a predetermined force on the environment
– case of machining parts with robot (grinding)
– robot movement depends on the difference between the desired and the actual contact force.
Control of contact force with environment
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Dynamic model with contact force
• Define new variable
• leading to
Robot dynamics with contact
result of interaction with the environment
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Inverse dynamics with contact
• Forward dynamics with contact
• Control law
Inverse dynamics control with contact
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Force control is based on position control
• Reference values for acceleration, velocity and pose are computed from force error
Force control
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Force error
• Predefined manipulator behavior via inertia and damping matrices and
• Reference trajectory
Force control
T. Bajd, M. Mihelj, J. Lenarčič, A. Stanovnik, M. Munih, Robotics, Springer, 2010
• Parallel composition assumes force control in certain direction and pose control in other directions
Parallel composition