Professional Documents
Culture Documents
Control of Manipulators
Control of Manipulators
Control of Manipulators
Problem
Solution
Linear
System Differential
Equation
Non Linear
System Differential
Equation
• Impractical - problems
– Imperfection of the dynamics model
– Inevitable disturbance
E d
E
d
• Control Design
– Stability (Servo Errors remain small when executing
trajectories)
– Close loop performance
• Problem
– Option 1: The natural response of the mechanical system is
under damped and oscillatory
– Option 2: The spring is missing and the system never
returns to its initial position if disturbed.
• Position regulation – maintain the block in a fixed place
regardless of the disturbance forces applied on the block
• Performance (system response) - critically damped
• Equation of motion (free body diagram)
mx bx kx f
Instructor: Jacob Rosen
Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA
Position Control – Second Order System
Position Regulation
f k p x kv x
mx bx kx k p x kv x
mx (b kv ) x (k k x ) x 0
mx bx k x 0
b b kv
k k k p
Servo- Based
• Equation of motion
mx bx kx f
• Define the model based portion of the control
f f
• Combine
mx bx kx f
• Define m
bx kx
• Resulting x f
f f
m
Servo- Based
bx kx
• Control law
f k p x kv x
• Combing the control law with the unit mass ( x f ) the close
loop eq. of motion becomes
x kv x k p x 0
Instructor: Jacob Rosen
Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA
Control Law Partitioning
kv 2 k p
• Servo control
f xd kv e k p e
• Combined with the eq. of motion of a unite mass leads to
x xd kv e k p e
e kv e k p e 0
• Select k v , k p to achieve specific performance (i.e. critical
damping)
• IF
– Our model of the system is perfect (knowledge of m, b, k )
– No noise
• Then the block will follow the trajectory exactly (suppress initial
error)
Instructor: Jacob Rosen
Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA
Disturbance Rejection
e kv e k p e f dist / m
max f dist (t ) a
t
e kv e k p e f dist / m
e f dist / mk p
• The higher the position gain k p the small will be the steady
state error.
• In order to eliminate the steady state error a modified control
low is used
f xd kv e k p e ki edt
ki e 0
e0
V (,
M () ) G () F (,
)
E d
E K v E K p E 0
V (,
M () ) G () F (,
)
• Error equation
1
• Steady state Error E K p M 1 () d
E K v E K p E Mˆ 1[( M Mˆ )
(V Vˆ ) (G Gˆ ) ( F Fˆ )]
• If the model was exact the right hand side would be zero and so
is the error.
Instructor: Jacob Rosen
Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA
Current Industrial Robot Control Systems
The Harsh Reality
K v E K p E K i Edt
d Inv _ Kin( X d )
J 1 ( ) X
d d d
J 1 ( ) X J 1 ( ) X
d d d d d
d Inv _ Kin( X d )
d / dt
d d
d
/ dt
d d
• Numerical differentiations
– Problem: Amplify noise
d d d (t ) d (t 1)
d
dt t
– Solution 1: When the trajectory is not known
• causal filters (past present values)
[ 1 , 2 ,..., n ]T
F [ f x , f y , f z , x , y , z ]T
X [ x, y, z , x , y , z ]T
Instructor: Jacob Rosen
Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA
Cartesian –Based Control Systems –
Cartesian decoupling Scheme
J T () F X J ()
F J T () X J ()
J
J 1 X J 1 J ()
V (,
M () ) G ()
J T V (,
J T J T M () ) J T G ()
M x () J T M () J 1
) J T M () J 1 J
V (, J T V (,
)
x
G () x J T G ()
X J ()
Example 1
Scraping a pint from a surface
Assumption:
(1) The tool is stiff
(2) The position and orientation of the
window is NOT known with accurately
respect to the robot base.
(3) A contact force normal to the surface
transmitted between the end effector and
the surface is defined
(4) Position control - tangent to the surface
(5) Force control – normal to the surface
Position control
Hybrid Control
Example 1
Washing a window with a sponge
Assumption:
(1) The sponge is compliant
(2) The position and orientation of the
window is known with respect to the robot
base.
SKYWASH
AEG, Dornier, Fraunhofer Institute,
Putzmeister - Germany
Using 2 Skywash robots for cleaning a Boeing
747-400 jumbo jet, its grounding time is
reduced from 9 to 3.5 hours. The world´s
largest cleaning brush travels a distance of
approximately 3.8 kilometers and covers a
surface of around 2,400 m² which is about
85% of the entire plane´s surface area. The
kinematics consist of 5 main joints for the
robot´s arm, and an additional one for the
turning circle of the rotating washing
brush.The Skywash includes database that
contains the aircraft-specific geometrical
data. A 3-D distance camera accurately
positions the mobile robot next to the aircraft.
The 3-D camera and the computer determine
the aircraft´s ideal positioning, and thus the
cleaning process begins.
Example 2
Scraping a pint from a surface
Assumption:
(1) The tool is stiff
(2) The position and orientation of the
window is NOT known with accurately
respect to the robot base.
(3) A contact force normal to the surface
transmitted between the end effector and
the surface is defined
(4) Position control - tangent to the surface
(5) Force control – normal to the surface
– Compliance Frame
– Selection Matrix
– Force and velocity commands
• Notes:
– Assumption must be made about the environment
– A given strategy may work only over a limited range of
conditions
• We define a compliance
frame so that X and Y are X
tangent to the surface
(ignoring for a moment the
Y
orientation DOF )
• The task is to control the Z
force in the Z direction and to
control the velocity in the X
and Y directions.
• Assumption – no friction –
control only velocity along X
and Y but not force
• Diagonal matrix
• Along the diagonal place
– A Value of 1 for velocity control
– A value of 0 for force control
s11 0 0 0 0 0 vx fx
0 v
s22 0 0 0 0 y
f
y
0 0 s33 0 0 0 v f
s v z fd z
0 0 0 s44 0 0 x x
0 0 0 0 s55 0 y y
0 0 0 0 0 s66 z z
• Natural Constraints
– Along each DOF of the task space, the environment imposes either a
position or a force constraint to the manipulator end effector. Such
constraints are termed natural constraints since they are determined directly
by the task geometry.
• Artificial Constrains
– Along each DOF of the task space, the manipulator can control only the
variables that are not subject to natural constraints. The reference values
for those variables are termed artificial constraints since they are imposed
with regard to the strategy of executing the given task.
– Artificial constraints are the desired trajectories (motion) or forces specified
by the user and associated with the task
• Conditions
– Artificial constrains must be compatible with the natural constrains since
one can not control force and position along the same DOF
– The number of natural and artificial constrains must be equal to the number
of DOF of the constraint space space (6 in general)
X : Fx 0
Y : V y r
Z : Fz 0
0 0 0 * 0
S 0 1 0 vd r f d *
0 0 0 * 0
X : Vx 0
Y : Vy 0
Z : Fz f z
x : x 0
y :y 0
z : z
1 x 0 *
1 y 0 *
0 z * f
S vd fd z
1 x
0 *
1 y 0 *
1 z
*
X : fx 0 X : v x vslide X : fx 0 X : fx 0
Y : fy 0 Y : fy 0 Y : fy 0 Y : fy 0
Z : v z vapprouch Z : f z f contact Z : v z vinsert Z : f z f max
x : x 0 x : x 0 x : x 0 x : x 0
y : y 0 y : y 0 y : y 0 y : y 0
z : z 0 z : z 0 z : z 0 z : z 0
X : Fx 0
Y : Fy 0
Z : z z surface
x : x x max
y max X
y : y y max
z : z 0 Y
1 x Z
1 y
0 z
S
0 x
0 y
1 z
• Manipulator
– Cartesian
– 3 DOF
– End Effector frame is aligned with
the compliance frame
• Control approach
– Joints: x, z – position control
– Joint y – force control
• Inputs
– Joints: x, z – trajectory
– Joint y – contact force
• Constraints
– Providing the constraints based on
the task
1 0 0
S 0 0 0
0 0 1
0 0 0
S ' I S 0 1 0
0 0 0
C
x C
T
x
C
x d R J ( )
T
S T
R
C
T
x d
Inv
Environment
Dyn
I S T
C R
T
C
C
F C F
fd T R
S Compliance Matrix
C
T R Rotataion of Task frame to Compliance Frame
• Common Practice
– Passive Compliance
– Compliance through softening position gains
• Typical Problems
– Jamming
– Damaged
• RRC – 6 DOF spring inserted between the robot and the end effector
(gripper)
• Global Stiffness is selected by the adjusting the individual springs S1-
S6 that can only bend but not expend or compressed.
– Cased 1 - S1, S4 – Cartesian misalignment
– Cased 2 – S2, S3 – Rotational misalignment
F K pxX
f x kx x
f
y
ky 0 y
fz kz z
*
x k x x
y 0 k y y
z k z z
J T ( ) K px J ( )
J T ( ) K px J ( )
• Express the Jacobian in the tool’s frame.
Problem
The mass must maintain a desired contact
force f d with the environment.
f e - Measured contact force
f dist - Disturbance force
f e ke x
1
x ke f e
The equation of motion (EOF) of the system fe
f mx ke x f dist
The EOM can be written in terms of the
Force Sensor
variable we wish to control
f f mk e fe f e f dist
1
mke 1
f e f dist
f fe
f fd kvf e k pf e
e fd fe
e fd fe
f f e
f f k e k e
e d vf pf
e kvf e k pf e 0
f fd kvf e k pf e
f fe
e fd fe
e fd fe
f f e
f f k e k e
e d vf pf
e kvf e k pf e 0
• Practical Implementations:
– Controlling constant force
f f 0
D D
f e ke x
df
fe e ke x
dx
• Simplifying the control low
f mke [ fd kvf e k pf e] f d
1
1
f m[k pf ke e kvf x ] f d
Instructor: Jacob Rosen
Advanced Robotic - MAE 263D - Department of Mechanical & Aerospace Engineering - UCLA
Force Control of Mass –Spring System
• Remaining problem -
– The stiffness of the environment k e is part of the control law
– The stiffness k e is unknown or changing
• Natural Constraints
– Natural constraints in position or
force are defined by the geometry
of the task that result from particular
mechanical or geometrical
characteristics of the task
configuration
• Artificial Constrains
– Artificial constraints are the desired
trajectories (motion) or forces
specified by the user and
associated with the task
Manipulator
Supervisor Actuators
Or RT Environment
Controller Structure
Planer Sensors
(Software)
(Hardware)
Commands Mechanical
Interaction
• Neville Hogan MIT 1980’s Port
• Manipulation - Case 1
– Interaction force – negligible F 0
– Interaction mechanical work – negligible dW F dX 0
– Control variables – motion X , X , X
– Control implementation – Position control
– Application: spray painting and welding
• Manipulation - Case 2
– Environmental constrains
• Tangent F 0
• Normal X 0
– Interaction mechanical work – negligible dW F dX 0
– Control variables – Motion control (tangent) / Force control
(normal)
– Control implementation – Hybrid control
– Application: Washing a window
Position (P) Pd P 0 K dF / dX
Force (F) Fd F 0 K dF / dX 0
x0
Slope kd
Fmax
Fd
x0
Fmax
Fmax Slope
• Position Control
x0
Fmax
Low Gain
High Gain
Fmax
Fenv ke ( x xˆ )
Environment
Constraint
F k d ( x x0 )
x̂ x0
Fmax
• Case 2 (interaction)
– If in contact with a compliant environment Fenv ke ( x xˆ )
– Both force and position depend on k d k e
kd ke
• 1 DOF system
• The dynamic equation
ma x ba x k a x f u F
• Where
ma – Mass of the body
ba – Damping coefficient
k a – Spring constant
f u – Driving force (servo) Force Sensor
F – External force
x – Displacement form equilibrium
• In equilibrium
x0 fu F 0
md x bd ( x x d ) k d ( x xd ) F
• Where
md – Desired mass
bd – Desired damping coefficient
k d – Desired spring constant
xd – Desired position trajectory
md x bd ( x x d ) k d ( x xd ) F
ma x ba x k a x f u F
bd
2 md k d
• 1 DOF system
• The body M is in contact with a
fixed body E (environment)
• The interaction with the
environment described as
bc x kc ( x xc ) F
Force Sensor
• Where xc is the equilibrium
position for which F 0
• Substituting
bc x kc ( x xc ) F
md x bd ( x x d ) k d ( x xd ) F
• Yields
md x (bd bc ) x (k d kc ) x bd x d k d xd kc xc
k k bd bc
c d c
md 2 md (k d kc )
k k bd bc
c d c
md 2 md (k d kc )
k k bd bc
c d c
md 2 md (k d kc )
Force Sensor
Fe M R X BD X e K D X e
Xe X X0
k11 b11
k 22 0 b22 0
k33 b33
KD BD
k 44 b44
0 k55 0 b55
k66 b66
Fe M R X BD ( X 0 X ) K D ( X 0 X )
X M [ K ( X X ) B ( X X )] F
1
R D 0 D 0 e
• Known kinematics
X J e J T Fe
X J J J 1 ( X J )
Fe M R X BD ( X 0 X ) K D ( X 0 X )
X M [ K ( X X ) B ( X X )] F
1
R D 0 D 0 e
• Known kinematics
X J e J T Fe
X J J J 1 ( X J )
• Assumptions
– Ignoring dynamics
– Compensation for gravity loads
• Joint torques (Eq. of motion of the robot)
J T F G ()
J T [ K D ( X 0 X ) BD ( X 0 X )] G ()
• Where K D , BD are 6x6 diagonal matrices representing the
desired stiffness and damping of the manipulator
k11 b11
k 22 0 b22 0
k33 b33
KD BD
k 44 b44
0 k55 0 b55
k66 b66