Professional Documents
Culture Documents
Motion control
• The error driving the feedback part of the control law can
be defined either in Cartesian or in joint space
• Control action always occurs at the joint level (where
motors drive the robot), but performance has to be
evaluated at the task level
• Robot is an electro-mechanical system driven by actuating
torques produced by the motors
• It is possible, however, to consider a kinematic command
(most often, a velocity) as control input to the system...
• Thanks to the presence of low-level feedback control
loops at the robot joints that allow imposing the
commanded reference velocity (in the “ideal case”)
Motion control
q(t0)=qs
And
q(tf)=qf .
– 4 coefficients (4 constraints)
– Define the trajectory q(t) to be a polynomial of degree n
qt0 q0 q t0 v0
q t0 a1 2a2t0 3a3t02 v0
qt f q f q t f v f
qt f a1 2a2t f 3a3t 2f v f
Point to point planning
1 t0 t 2
0 t a0 q0
3
0
2
0 1 2t0 3t a1 v0
0
1 t f t 2
t a2 q f
3
f f
0 1 2t f 3t a3 v f
2
f
Example
a0 10, a1 0, a2 90, a3 60
q t 10 90t 60t
2 3
Polynomial trajectory
• Cubic polynomial trajectory
• Matlab code:
syms t;
q=10-90*t^2+60*t^3;
t=[0:0.01:1];
plot(t,subs(q,t))
xlabel('Time sec')
ylabel('Angle(deg)')
Velocity profile
• Matlab code:
syms t;
qdot=-180*t+180*t^2;
t=[0:0.01:1];
plot(t,subs(qdot,t))
xlabel('Time sec')
ylabel(’velocity(deg/s)')
Acceleration profile
• Acceleration profile for cubic polynomial trajectory
• Matlab code:
syms t;
qddot=-180+360*t;
t=[0:0.01:1];
plot(t,subs(qddot,t))
xlabel('Time sec')
ylabel(’Acceleration(deg/s2)')
Home work
• A single link robot with a rotary joint is at
Ө=15ْ degrees. It is desired to move the
joint in a smooth manner to Ө=75ْ in 3 sec.
Find the coefficeints of a cubic to bring the
manipulator to rest at the goal.
qt0 q0 q t f q f
q t0 v0 q t f v f
qt0 0 qt f f
t0 is the start time t f is the end time
q0 , v0 and 0 are the initial position , velocity and acceleration
q f , v f and f are the final position , velocity and acceleration
POINT TO POINT TRAJECTORY
– 6 coefficients (6 constraints)
– Define the trajectory q(t) to be a polynomial of degree n
q0 a0 a1t0 a t a t a t a t
2
2 0
3
3 0
4
4 0
5
5 0
v0 a1 2a2t0 3a t 4a t 5a t
2
3 0
3
4 0
4
5 0
q f a0 a1t f a t a t a t a t
2
2 f
3
3 f
4
4 f
5
5 f
v f a1 2a2t f 3a t 4a t 5a t
2
3 f
3
4 f
4
5 f