Definition of an Industrial Robot
A robot is a A robot is a re-programmable multifunctionalre-programmable multifunctional manipulator designed to move material, manipulator designed to move material, parts, tools, or specialized devices through parts, tools, or specialized devices through variable programmed motions for the variable programmed motions for the performance of a variety of tasks.performance of a variety of tasks.
Robot Institute of America
(Group within Society of Manufacturing Engineers)
Components of Industrial Robot
Mechanical structure or manipulatorMechanical structure or manipulator
ActuatorActuator
SensorsSensors
Control systemControl system
Modeling and Control of Manipulators
ModelingModeling
• KinematicsKinematics
• Differential kinematicsDifferential kinematics
• DynamicsDynamics
Modeling and Control of Manipulators
ControlControl
• Trajectory planning
• Motion control
• Hardware/software architecture
Mechanical Components
Robots are serial “chain” mechanisms Robots are serial “chain” mechanisms made up of made up of • ““links” (generally considered to be rigid), and links” (generally considered to be rigid), and • ““joints” (where relative motion takes place) joints” (where relative motion takes place)
Joints connect two links Joints connect two links • PrismaticPrismatic• revoluterevolute
“Degrees of Freedom”
Degrees of freedom (DoF) is the number Degrees of freedom (DoF) is the number of independent movements the robot is cof independent movements the robot is capable of apable of
Ideally, each joint has exactly one degree Ideally, each joint has exactly one degree of freedom of freedom • degrees of freedom = number of joints degrees of freedom = number of joints
Industrial robots typically have 6 DoF, but Industrial robots typically have 6 DoF, but 3, 4, 5, and 7 are also common 3, 4, 5, and 7 are also common
Mechanical Configurations
Industrial robots are categorized by the first three joint types
Five different robot configurations: • Cartesian (or Rectangular), • Cylindrical, • Spherical (or Polar), • Jointed (or Revolute), and • SCARA
3-D Kinematics
Position and Orientation of a Rigid BodyPosition and Orientation of a Rigid Body
Coordinate transformation (translation+rotation)
3-D Homogeneous Transformations
Homogeneous vector
Homogeneous transformation matrix
3-D Homogeneous Transformations
Composition of coordinate transformations
3-D Homogeneous Transformations
Euler AnglesEuler Angles
Minimal representation of orientation
Three parameters are sufficient
Euler Angles
Two successive rotations are not made about parallel axes
How many kinds of Euler angles are there?
][
Direct Kinematics
Compute the position and orientation of the end effector as a function of the joint variables
Aim of Direct Kinematics
The direct kinematics function is expressed by the homogeneous transformation matrix
Direct Kinematics
Open Chain
Denavit-Hartenberg ConventionDenavit-Hartenberg Convention
Joint Space and Operational SpaceJoint Space and Operational Space
Description of end-effector task
position: coordinates (easy)
orientation: (n s a) (difficult)
w.r.t base frame
Function of time
Operational space
Independent variables
Joint space
Prismatic: d
Revolute: theta
Kinematic RedundancyKinematic Redundancy
Definition
A manipulator is termed kinematically redundant
when it has a number of degrees of mobility whic
h is greater than the number of variables that are
necessary to describe a given task.
Inverse Kinematics
Inverse KinematicsInverse Kinematics
we know the desired “world” or “base” coordinates for the end-effector or tool
we need to compute the set of joint coordinates that will give us this desired position (and orientation in the 6-link case).
the inverse kinematics problem is much more difficult than the forward problem!
Inverse KinematicsInverse KinematicsInverse KinematicsInverse Kinematics
there is no general purpose technique that will guarantee a closed-form solution to the inverse problem!
Multiple solutions may exist Infinite solutions may exist, e.g., in the case
of redundancy There might be no admissible solutions
(condition: x in (dexterous) workspace)
Differential Kinematics and Statics
Differential KinematicsDifferential Kinematics
Find the relationship between the joint velocities and the end-effector linear and angular velocities.
Linear velocity
Angular velocity
i
ii dq
for a revolute joint
for a prismatic joint
Jacobian ComputationJacobian Computation
nOn
Pni
Oi
Pi
O
P qJ
Jq
J
Jq
J
Jv
1
1
1
The contribution of single joint i to the end-effector angular velocity
The contribution of single joint i to the end-effector linear velocity
Jacobian ComputationJacobian Computation
Kinematic SingularitiesKinematic Singularities
The Jacobian is, in general, a function of the configuration q; those configurations at which J is rank-deficient are termed Kinematic singularities.
Reasons to Find SingularitiesReasons to Find Singularities
Singularities represent configurations at which mobility of the structure is reduced
Infinite solutions to the inverse kinematics problem may exist
In the neighborhood of a singularity, small velocities in the operational space may cause large velocities in the joint space
Dynamics
DynamicsDynamics
relationship between the joint actuator torques relationship between the joint actuator torques and the motion of the structureand the motion of the structure
Derivation of dynamic model of a manipulatorDerivation of dynamic model of a manipulator
Simulation of motion
Design of control algorithms
Analysis of manipulator structures
Method based on Lagrange formulationMethod based on Lagrange formulation
Lagrange FormulationLagrange Formulation
Generalized coordinatesGeneralized coordinates n variables which describe the link positions of an
n-degree-of-mobility manipulator
The Lagrange of the mechanical system
Lagrange FormulationLagrange Formulation
The Lagrange’s equations
Generalized force Given by the nonconservative force Joint actuator torques, joint friction torques, joint to
rques induced by interaction with environment
Computation of Kinetic EnergyComputation of Kinetic Energy
Consider a manipulator with n rigid links
Kinetic energy of link i
Kinetic energy of the motor
actuating link i
Kinetic Energy of LinkKinetic Energy of Link
Express the kinetic energy as a function of the generalized coordinates of the system, that are the joint variables
Computation of Potential EnergyComputation of Potential Energy
Consider a manipulator with n rigid links
Joint Space Dynamic ModelJoint Space Dynamic Model
Viscous friction torques Coulomb
friction torques
Actuation torques
Force and moment exerted on the environment
Multi-input-multi-output; Strong coupling; NonlinearityMulti-input-multi-output; Strong coupling; Nonlinearity
Direct Dynamics and Inverse Dynamics
Direct Dynamics and Inverse Dynamics
Direct dynamics:Direct dynamics: Given joint torques and initial joint position and Given joint torques and initial joint position and
velocity, determine joint accelerationvelocity, determine joint acceleration Useful for simulationUseful for simulation
Inverse dynamics:Inverse dynamics:
Given joint position, velocity and acceleration, determine joint torques
Useful for trajectory planning and control algorithm implementation
Trajectory Planning
Trajectory PlanningTrajectory Planning
Goal: to generate the reference inputs to the Goal: to generate the reference inputs to the motion control system which ensures that the motion control system which ensures that the manipulator executes the planned trajectorymanipulator executes the planned trajectory
Motion control system
Robot Trajectory planning system
torques
Position, velocity, acceleration
Joint Space TrajectoryJoint Space Trajectory
Inverse kinematics algorithm
Trajectory parameters in
operation space
Joint (end-effector) trajectories in terms of position, velocity and acce
leration
Trajectory parameters in joint space Trajectory
planning algorithmInitial and final en
d-effector location, traveling time, etc.
Polynomial interpolationPolynomial interpolation
Trapezoidal velocity profileTrapezoidal velocity profile
Point-to-point MotionPoint-to-point Motion
011
1)( atatatatq nnnn
Motion Control
Motion ControlMotion Control
Determine the time history of the generalized
forces to be developed by the joint actuators so
as to guarantee execution of the commanded
task while satisfying given transient and steady-
state requirements
The Control ProblemThe Control Problem
Joint space control problem
Open loop
Independent Joint ControlIndependent Joint Control
Regard the manipulator as formed by n Regard the manipulator as formed by n
independent systems (n joints)independent systems (n joints)
control each joint as a SISO systemcontrol each joint as a SISO system
treat coupling effects as disturbancetreat coupling effects as disturbance
Independent Joint ControlIndependent Joint Control
Assuming that the actuator is a rotary dc motor Assuming that the actuator is a rotary dc motor
Position and Velocity FeedbackPosition and Velocity Feedback