Trajectory Tracking Control
Transcript of Trajectory Tracking Control
Robotics 2
Prof. Alessandro De Luca
Trajectory Tracking Control
Inverse dynamics controlgiven the robot dynamic model
and a twice-differentiable desired trajectory for π‘ β [0, π]
applying the feedforward torque in nominal conditions
yields exact reproduction of the desired motion, provided that π(0) = π,(0), οΏ½ΜοΏ½(0) = οΏ½ΜοΏ½,(0) (initial matched state)
π π, οΏ½ΜοΏ½ + π π + friction model
Robotics 2 2
π π οΏ½ΜοΏ½ + π π, οΏ½ΜοΏ½ = π’
π, π‘ β οΏ½ΜοΏ½, π‘ , οΏ½ΜοΏ½,(π‘)
π’, = π π, οΏ½ΜοΏ½, + π(π,, οΏ½ΜοΏ½,)
In practice ...
n initial state is βnot matchedβ to the desired trajectory π,(π‘)n disturbances on the actuators, truncation errors on data, β¦n inaccurate knowledge of robot dynamic parameters (link
masses, inertias, center of mass positions)n unknown value of the carried payloadn presence of unmodeled dynamics (complex friction
phenomena, transmission elasticity, β¦)
a number of differences from the nominal condition
Robotics 2 3
Introducing feedback
with 6π, 7π estimates of terms(or coefficients) in the dynamic model
note: 7π’, can be computed off line [e.g., by 8ππΈ;(π,, οΏ½ΜοΏ½,, οΏ½ΜοΏ½,)]
feedback is introduced to make the control scheme more robust
different possible implementations depending on amount of computational load share
Β§ OFF LINE ( open loop) Β§ ON LINE ( closed loop)
two-step control design:1. compensation (feedforward) or cancellation (feedback) of nonlinearities2. synthesis of a linear control law stabilizing the trajectory error to zero
Robotics 2 4
7π’, = 6π π, οΏ½ΜοΏ½, + 7π(π,, οΏ½ΜοΏ½,)
A series of trajectory controllers1. inverse dynamics compensation (FFW) + PD
2. inverse dynamics compensation (FFW) + variable PD
3. feedback linearization (FBL) + [PD+FFW] = βCOMPUTED TORQUEβ
4. feedback linearization (FBL) + [PID+FFW]
more robust to uncertainties, but also more complex to implement in real time
typically, only localstabilization oftrajectory error
π(π‘) = π,(π‘) β π(π‘)
Robotics 2 5
π’ = 7π’, + πΎ? π, β π + πΎ@(οΏ½ΜοΏ½, β οΏ½ΜοΏ½)
π’ = 7π’, + 6π π, πΎ? π, β π + πΎ@(οΏ½ΜοΏ½, β οΏ½ΜοΏ½)
π’ = 6π π οΏ½ΜοΏ½, + πΎ? π, β π + πΎ@(οΏ½ΜοΏ½, β οΏ½ΜοΏ½) + 7π(π, οΏ½ΜοΏ½)
π’ = 6π π οΏ½ΜοΏ½, + πΎ? π, β π + πΎ@ οΏ½ΜοΏ½, β οΏ½ΜοΏ½ + πΎA B π, β π ππ‘ + 7π(π, οΏ½ΜοΏ½)
+
_
π’ROBOT (or its DYNAMIC MODEL)
Feedback linearization control
symmetric andpositive definitematrices πΎ?, πΎ@
Robotics 2 6
οΏ½ΜοΏ½οΏ½ΜοΏ½ ππDE(π)
+
+
π 6π(π)
7π(π, οΏ½ΜοΏ½)
π(π, οΏ½ΜοΏ½)
πΎ@πΎ?
+
_
οΏ½ΜοΏ½, + πΎ@οΏ½ΜοΏ½,+ πΎ?π,
in nominalconditions
( 6π = π, 7π = π) nonlinear robot dynamics nonlinear control law
linear anddecoupled
system
π π οΏ½ΜοΏ½ + π π, οΏ½ΜοΏ½ = π’ = π π π + π π, οΏ½ΜοΏ½ οΏ½ΜοΏ½ = π
global asymptoticstabilization of tracking error
π = οΏ½ΜοΏ½, + πΎ@ οΏ½ΜοΏ½, β οΏ½ΜοΏ½ + πΎ? π, β π
Interpretation in the linear domain
πΎ@πΎ?
+
under feedback linearization control, the robot has a dynamic behavior that isinvariant, linear and decoupled in its whole workspace (β(π, οΏ½ΜοΏ½))
> 0, diagonal
each joint coordinate πI evolves independently from the others, forced by πI
π = οΏ½ΜοΏ½ π
error transients πI = π,I β πI β 0 exponentially, prescribed by πΎ?I, πΎ@I choicelinearity
decoupling
a unitary mass (π = 1) in the joint space !!
Robotics 2 7
οΏ½ΜοΏ½, + πΎ@οΏ½ΜοΏ½, + πΎ?π,οΏ½ΜοΏ½
οΏ½ΜοΏ½ + πΎ@οΏ½ΜοΏ½ + πΎ?π = 0 βΊ οΏ½ΜοΏ½I +πΎ@I ΜπI + πΎ?IπI = 0
_
πΎ@πΎ?
+ π = οΏ½ΜοΏ½ π
Robotics 2 8
οΏ½ΜοΏ½, + πΎ@οΏ½ΜοΏ½, + πΎ?π,οΏ½ΜοΏ½
Addition of an integral term: PIDwhiteboardβ¦
_
+
+πΎA
+_
π, π
> 0,diagonal
οΏ½ΜοΏ½ = π = οΏ½ΜοΏ½, + πΎ@ οΏ½ΜοΏ½, β οΏ½ΜοΏ½ + πΎ? π, β π + πΎA B π, β π ππ
οΏ½ΜοΏ½I + πΎ@IοΏ½ΜοΏ½I + πΎ?IπI + πΎ?I B πIππ = 0β(2)
π = π, β π
πI = π,I β πI (π = 1, . . , π)β(1)
π R + πΎ@Iπ + πΎ?I + πΎAI1π πI π = 0β[πI π‘ ]β(3)
π T + πΎ@Iπ R + πΎ?Iπ + πΎAI πI π = 0π Γ β(4)
1 πΎ?IπΎ@I πΎAI
πΎAI(πΎ@IπΎ?I β πΎAI)/πΎ@I
3210
β(5)
exponentialstability
conditions by Routh criterion
β(6)
β πΎ?I > 0,πΎ@I > 0,0 < πΎAI < πΎ?IπΎ@I
feedbacklinearization robot
π, π‘ , οΏ½ΜοΏ½, π‘ ,οΏ½ΜοΏ½, π‘ π
οΏ½ΜοΏ½
n desired joint trajectory can be generated from Cartesian data
n real-time computation by Newton-Euler algo: π’YZ[ = 8ππΈπΌ(π, οΏ½ΜοΏ½, π)n simulation of feedback linearization control
Remarks
π,(π‘)
Hint: there is no use in simulating this control law in ideal case ( 7π = π); robot behavior will be identical to the linear and decoupled case of stabilized double integrators!!
Robotics 2 9
true parameters π
estimated parameters 7π
οΏ½ΜοΏ½, π‘ , οΏ½ΜοΏ½, 0 , π,(0)
οΏ½ΜοΏ½,(π‘)οΏ½ΜοΏ½,(π‘)
οΏ½ΜοΏ½,(0) π,(0) π, 0 = πDE π, 0οΏ½ΜοΏ½, 0 = π½DE π, 0 οΏ½ΜοΏ½, 0οΏ½ΜοΏ½, π‘ = π½DE π, οΏ½ΜοΏ½, π‘ β Μπ½(π,)οΏ½ΜοΏ½,
Further commentsn choice of the diagonal elements of πΎπ, πΎ@ (and πΎπΌ)
n for shaping the error transients, with an eye to motor saturations...
n parametric identificationn to be done in advance, using the property of linearity in the dynamic
coefficients of the robot dynamic modeln choice of the sampling time of a digital implementation
n compromise between computational time and tracking accuracy, typically πc = 0.5 Γ· 10 ms
n exact linearization by (state) feedback is a general technique of nonlinear control theory
n can be used for robots with elastic joints, wheeled mobile robots, ... n non-robotics applications: satellites, induction motors, helicopters, ...
critically damped transientπ(π‘) = π,(π‘) β π(π‘)
π‘
π(0)
Robotics 2 10
Another example of feedback linearization designn dynamic model of robots with elastic joints
n π = link positionn π = motor position (after reduction gears)n π΅h = diagonal matrix (> 0) of inertia of the (balanced) motorsn πΎ = diagonal matrix (> 0) of (finite) stiffness of the joints
n is there a control law that achieves exact linearization via feedback?
2π generalizedcoordinates (π, π)
YES and it yieldslinear and decoupled system:π chains of 4 integrators(to be stabilized by linear
control design)
Robotics 2 11
(1)(2)
4π statevariables
π₯ = (π, π, οΏ½ΜοΏ½, οΏ½ΜοΏ½)
π π οΏ½ΜοΏ½ + π π, οΏ½ΜοΏ½ + π π + πΎ π β π = 0π΅hοΏ½ΜοΏ½ + πΎ π β π = π’
π’ = πΌ π, π, οΏ½ΜοΏ½, οΏ½ΜοΏ½ + π½ π, π, οΏ½ΜοΏ½, οΏ½ΜοΏ½ π
Hint: differentiate (1) w.r.t. time until motor acceleration οΏ½ΜοΏ½ appears; substitute this from (2); choose π’ so as to cancel all nonlinearities β¦
πlπIππ‘l
= πI, π = 1, . . , π
Alternative global trajectory controller
n global asymptotic stability of π, οΏ½ΜοΏ½ = (0,0) (trajectory tracking)n proven by Lyapunov+Barbalat+LaSallen does not produce a complete cancellation of nonlinearities
n the οΏ½ΜοΏ½ and οΏ½ΜοΏ½ that appear linearly in the model are evaluated on the desired trajectory
n does not induce a linear and decoupled behavior of the trajectory error π π‘ = π,(π‘) β π(π‘) in the closed-loop system
n lends itself more easily to an adaptive versionn cannot be computed directly by the standard NE algorithm...
symmetric andpositive definite matrices
SPECIAL factorization such thatοΏ½ΜοΏ½ β 2π is skew-symmetric
Robotics 2 12
π’ = π π οΏ½ΜοΏ½, + π π, οΏ½ΜοΏ½ οΏ½ΜοΏ½, + π π + πΉoοΏ½ΜοΏ½, + πΎ?π + πΎ@οΏ½ΜοΏ½
Analysis of asymptotic stabilityof the trajectory error - 1
n Lyapunov candidate and its time derivative
robot dynamics (including friction)control law
n the closed-loop system equations yield
n substituting and using the skew-symmetric property
Robotics 2 13
β
π π οΏ½ΜοΏ½ + π π, οΏ½ΜοΏ½ οΏ½ΜοΏ½ + π π + πΉoοΏ½ΜοΏ½ = π’π’ = π π οΏ½ΜοΏ½, + π π, οΏ½ΜοΏ½ οΏ½ΜοΏ½, + π π + πΉoοΏ½ΜοΏ½, + πΎ?π + πΎ@οΏ½ΜοΏ½
π =12 οΏ½ΜοΏ½
qπ π οΏ½ΜοΏ½ +12 π
qπΎ?π β₯ 0 οΏ½ΜοΏ½ =12 οΏ½ΜοΏ½
qοΏ½ΜοΏ½ π οΏ½ΜοΏ½ + οΏ½ΜοΏ½qπ π οΏ½ΜοΏ½ + πqπΎ?οΏ½ΜοΏ½
π π οΏ½ΜοΏ½ = βπ π, οΏ½ΜοΏ½ οΏ½ΜοΏ½ β πΎ@ + πΉo οΏ½ΜοΏ½ β πΎ?π
οΏ½ΜοΏ½ = βοΏ½ΜοΏ½q πΎ@ + πΉo οΏ½ΜοΏ½ β€ 0 οΏ½ΜοΏ½ = 0 β οΏ½ΜοΏ½ = 0n since the system is time-varying (due to π,(π‘)), direct application
of LaSalle theorem is NOT allowed β use Barbalat lemmaβ¦
error state π₯
π = π, π‘ β π, οΏ½ΜοΏ½ = οΏ½ΜοΏ½, π‘ β οΏ½ΜοΏ½ π = π π, Μπ, π‘ = π(π₯, π‘)β
β go toslide 10 in
block 8
Analysis of asymptotic stabilityof the trajectory error - 2
n since i) π is lower bounded and ii) οΏ½ΜοΏ½ β€ 0, we can check condition iii) in order to apply Barbalat lemma
Robotics 2 14
n from i) + ii), π is bounded β π and οΏ½ΜοΏ½ are boundedn assume that the desired trajectory has bounded velocity οΏ½ΜοΏ½,
β οΏ½ΜοΏ½ isbounded
then also οΏ½ΜοΏ½ will be bounded (in norm) since
... is this bounded? οΏ½ΜοΏ½ = β2οΏ½ΜοΏ½q(πΎ@ + πΉo)οΏ½ΜοΏ½
n using the following two properties of dynamic model terms0 < π β€ πDE(π) β€ π < β π(π, οΏ½ΜοΏ½) β€ πΌv οΏ½ΜοΏ½
bounded bounded boundedboundedin norm by π
boundedin norm by πΌv οΏ½ΜοΏ½ bounded
οΏ½ΜοΏ½ = βπDE(π) π π, οΏ½ΜοΏ½ οΏ½ΜοΏ½ + πΎ?π + (πΎ@ + πΉo)οΏ½ΜοΏ½
β limzβ{
οΏ½ΜοΏ½ π‘ = 0
Analysis of asymptotic stabilityof the trajectory error β end of proof
n we can now conclude by proceeding as in LaSalle theorem
Robotics 2 15
n the closed-loop dynamics in this situation isοΏ½ΜοΏ½ = 0 β οΏ½ΜοΏ½ = 0
π π οΏ½ΜοΏ½ = βπΎ?π
is the largestinvariant set in οΏ½ΜοΏ½ = 0
(global) asymptotic trackingwill be achieved
βΉ οΏ½ΜοΏ½ = 0 β π = 0 (π, οΏ½ΜοΏ½) = (0, 0)
Regulation as a special casen what happens to the control laws designed for trajectory
tracking when ππ is constant? are there simplifications?n feedback linearization
n no special simplificationsn however, this is a solution to the regulation problem with
exponential stability (and decoupled transients at each joint!)n alternative global controller
n we recover the PD + gravity cancellation control law!!
Robotics 2 16
π’ = πΎ?(π, β π) β πΎ@οΏ½ΜοΏ½ + π π
π’ = π π πΎ? π, β π β πΎ@οΏ½ΜοΏ½ + π π, οΏ½ΜοΏ½ + π(π)
Trajectory execution without a modeln is it possible to accurately reproduce a desired smooth joint-
space reference trajectory with reduced or no information on the robot dynamic model?
n this is feasible in case of repetitive motion tasks over a finite interval of timen trials are performed iteratively, storing the trajectory error
information of the current execution [π-th iteration] and processing it off line before the next trial [(π + 1)-iteration] starts
n the robot should be reinitialized in the same initial position at the beginning of each trial
n the control law is made of a non-model based part (typically, a decentralized PD law) + a time-varying feedforward which is updated at every trial
n this scheme is called iterative trajectory learningRobotics 2 17
Scheme of iterative trajectory learningn control design can be illustrated on a SISO linear system
in the Laplace domain
Robotics 2 18
π·(π)πͺ(π)
closed-loop system without learning(πΆ(π ) is, e.g., a PD control law) π π =
π¦(π )π¦,(π )
=π π πΆ(π )
1 + π π πΆ(π )
control law at iteration ππ’οΏ½ π = π’οΏ½οΏ½ π + π£οΏ½ π = πΆ π ποΏ½ π + π£οΏ½ π
system output at iteration ππ¦οΏ½ π = π π π¦, π +π(π )
1 + π π πΆ(π )π£οΏ½ π
βplug-inβ signal:π£E(π‘) β‘ 0 at
first (π = 1) iteration
π·(π)πͺ(π)
n algebraic manipulations on block diagram signals in the Laplace domain: π₯ π = β π₯(π‘) , π₯ = π¦,, π¦, π’οΏ½, π£, π β π¦,, π¦οΏ½, π’οΏ½οΏ½ , π£οΏ½, ποΏ½ , with transfer functions
Robotics 2 19
Background math on feedback loopswhiteboardβ¦
π¦ π = π π π’ π = π π π£ π + π’οΏ½ π = π π π£ π + π π πΆ π π π = π π π£ π + π π πΆ π π¦, π β π¦(π )
Β§ feedback control law at iteration π
Β§ error at iteration π
π’οΏ½οΏ½ π = πΆ π π¦, π β π¦οΏ½ π = πΆ π π¦, π β π π πΆ(π ) π£οΏ½ π + π’οΏ½οΏ½ π
(1 + π π πΆ π ) π¦ π == π π π£ π + π π πΆ π π¦, π
β
π¦ π =π π πΆ π
1 + π π πΆ π π¦, π +π π
1 + π π πΆ π π£ π = π π π¦, π +ποΏ½ π π£(π )β
π’οΏ½οΏ½ π =πΆ π
1 + π π πΆ π π¦, π βπ π πΆ π
1 + π π πΆ π π£οΏ½ π = πc π π¦, π βπ π π£οΏ½ π β
ποΏ½ π = π¦, π β π¦οΏ½ π = π¦, π β π π π¦, π +ποΏ½ π π£οΏ½ π = 1 βπ π π¦, π βποΏ½ π π£οΏ½ π
ποΏ½(π ) = 1/(1 + π π πΆ π )
Learning update lawn the update of the feedforward term is designed as
Robotics 2 20
with πΌ and π½ suitable filters(also non-causal, of the FIR type) π£οΏ½οΏ½E π = πΌ(π )π’οΏ½οΏ½ π + π½(π )π£οΏ½ π
n if a contraction condition can be enforced
then convergence is obtained for π β β(for all π = ππ frequencies such that ...) π½ π β πΌ π π(π ) < 1
recursive expressionof feedforward term π£οΏ½οΏ½E π =
πΌ π πΆ π 1 + π π πΆ π
π¦, π + (π½ π β πΌ π π π )π£οΏ½(π )
recursive expressionof error π = π¦, β π¦
ποΏ½οΏ½E π =1 β π½ π
1 + π π πΆ π π¦, π + π½ π β πΌ π π π ποΏ½(π )
π£{ π =π¦, π π(π )
πΌ π π π 1 β π½ π + πΌ π π π π{ π =
π¦, π 1 + π π πΆ(π )
1 β π½ π 1 β π½ π + πΌ π π π
Robotics 2 21
π£οΏ½οΏ½E π = πΌ π π’οΏ½οΏ½ π + π½ π π£οΏ½ π = πΌ π πΆ π ποΏ½ π + π½ π π£οΏ½ π
π¦οΏ½οΏ½E π = π π π£οΏ½οΏ½E π + π’οΏ½οΏ½EοΏ½ π = π π πΌ π π’οΏ½οΏ½ π + π½ π π£οΏ½ π + π’οΏ½οΏ½EοΏ½ π
Proof of recursive updateswhiteboardβ¦
Β§ recursive expression for the error ποΏ½
Β§ recursive expression for the feedworward π£οΏ½
ποΏ½ π = π¦, π β π¦οΏ½ π = π¦, π β π(π )(π£οΏ½ π + π’οΏ½οΏ½ π )
π£οΏ½ π =1
π π π¦, π β ποΏ½ π β π’οΏ½οΏ½ π β
ποΏ½οΏ½E π = π¦, π β π¦οΏ½οΏ½E π
= (1 β π½ π ) π¦, π β πΌ π β π½ π π π πΆ π β π½ π ποΏ½ π β π π πΆ(π )ποΏ½οΏ½E π
ποΏ½οΏ½E π =1 β π½ π
1 + π π πΆ π π¦, π + π½ π β πΌ π π π ποΏ½(π )β
= π π πΌ π πΆ π ποΏ½ π + π½ π 1
π(π ) π¦, π β ποΏ½ π β π½ π πΆ π ποΏ½ π + πΆ π ποΏ½οΏ½E(π )
= πΌ π πΆ π ποΏ½(π )π¦, π βποΏ½ π π£οΏ½ π + π½ π π£οΏ½ π
=πΌ π πΆ π
1 + π π πΆ π π¦, π + (π½ π β πΌ π π π ) π£οΏ½(π )
Robotics 2 22
π£οΏ½οΏ½E π =πΌ π πΆ π
1 + π π πΆ π π¦, π + (π½ π β πΌ π π π ) π£οΏ½(π )
Proof of convergencewhiteboardβ¦
from recursive expressions
ποΏ½οΏ½E π =1 β π½ π
1 + π π πΆ π π¦, π + π½ π β πΌ π π π ποΏ½(π )
compute variations from π to π + 1 (repetitive term in trajectory π¦, vanishes!)βπ£οΏ½οΏ½E π = π£οΏ½οΏ½E π β π£οΏ½ π = (π½ π β πΌ π π π ) βπ£οΏ½(π )
βποΏ½οΏ½E π = ποΏ½οΏ½E π β ποΏ½ π = π½ π β πΌ π π π βποΏ½(π )
by contraction mapping condition π½ π β πΌ π π π < 1 β π£οΏ½ β π£{, ποΏ½ β π{π£{ π =
πΌ π πΆ π 1 + π π πΆ π
π¦, π + (π½ π β πΌ π π π ) π£{(π )
π{ π =1 β π½ π
1 + π π πΆ π π¦, π + π½ π β πΌ π π π π{(π )
π£{ π =π¦, π π(π )
πΌ π π π 1 β π½ π + πΌ π π π
π{ π =π¦, π
1 + π π πΆ(π )1 β π½ π
1 β π½ π + πΌ π π π β π£{ π =π¦, π π(π )
πΌ π π π 1 β π½ π + πΌ π π π
π{ π =π¦, π
1 + π π πΆ(π )1 β π½ π
1 β π½ π + πΌ π π π β
Comments on convergencen if the choice π½ = 1 allows to satisfy the contraction condition, then
convergence to zero tracking error is obtained
and the inverse dynamics command has been learned
Robotics 2 23
n in particular, for Ξ± π = 1/π(π ) convergence would be in 1 iteration only!
n the use of filter Ξ²(π ) β 1 allows to obtain convergence (but with residual tracking error) even in presence of unmodeled high-frequency dynamics
n the two filters can be designed from very poor information on system dynamics, using classic tools (e.g., Nyquist plots)
π{(π ) = 0
π£{(π ) =π¦,(π )π(π )
Application to robotsn for π-dof robots modeled as
we choose as (initial = pre-learning) control law
and design the learning filters (at each joint) using the linear approximation
Robotics 2 24
n initialization of feedforward uses the best estimates
or simply π£E = 0 (in the worst case) at first trial π = 1
π΅h + π(π) οΏ½ΜοΏ½ + πΉo + π(π, οΏ½ΜοΏ½) οΏ½ΜοΏ½ + π π = π’
π’ = π’οΏ½ = πΎ? π, β π + πΎ@ οΏ½ΜοΏ½, β οΏ½ΜοΏ½ + 7π π
πI π =πI(π )π,I(π )
=πΎ@Iπ + πΎ?I
οΏ½π΅hIπ R + οΏ½πΉoI + πΎ@I π + πΎ?I
π£E = οΏ½π΅h + 6π(π,) οΏ½ΜοΏ½, + οΏ½πΉo + οΏ½π(π,, οΏ½ΜοΏ½,) οΏ½ΜοΏ½, + 7π π,
π = 1,β― ,π
Experimental set-upn joints 2 and 3 of 6R MIMO CRF robot prototype @DIS
Robotics 2 25
50o/s160o
desired velocity/position for both joints
β 90% gravity balanced
through springs
Harmonic Drivestransmissions
with ratio 160:1
resolvers andtachometers
DC motors withcurrent amplifiers
DSP ππ = 400Β΅sD/A = 12 bit
R/D = 16 bit/2πA/D = 11 bit/(rad/s)
high level ofdry friction
De Luca, Paesano, Ulivi: IEEE Trans Ind Elect, 1992
Experimental results
Robotics 2 26
error for π = 1, 3, 6, 12
feedforward π£π for π = 3, 6, 12 (zero at π = 1)join
t 2 joint 3
feedback π’οΏ½οΏ½ for π = 1, 3, 6, 12
On-line learning control
Robotics 2 27
n re-visitation of the learning idea so as to acquire the missing dynamic information in model-based trajectory control
n on-line learning approachn the robot improves tracking performance already while executing the task
in feedback mode
n uses only position measurements from encodersn no need of joint torque sensors
n machine learning techniques used forn data collection and organizationn regressor construction for estimating model perturbations
n fast convergencen starting with a reasonably good robot model
n extension to underactuated robots or with flexible components
Control with approximate FBL
Robotics 2 28
n dynamic model, its nominal part and (unstructured) uncertainty
π π οΏ½ΜοΏ½ + π π, οΏ½ΜοΏ½ = π π = 6π + βπ π = 7π + βπ
πYZ[ = 6π π π + 7π π, οΏ½ΜοΏ½n model-based (approximate) feedback linearization
n resulting closed-loop dynamics with perturbation
οΏ½ΜοΏ½ = π + πΏ(π, οΏ½ΜοΏ½, π)n control law for tracking π, π‘ is completed by using (at π‘ = π‘οΏ½) a
linear design (PD with feedforward) and a learning regressor ποΏ½π = π’οΏ½ + ποΏ½= οΏ½ΜοΏ½,,οΏ½ + πΎ?(π,,οΏ½ β ποΏ½) + πΎ@(οΏ½ΜοΏ½,,οΏ½ β οΏ½ΜοΏ½οΏ½) + ποΏ½
On-line learning scheme
Robotics 2 29
FeedbackLinearization
Gaussian ProcessRegression
Data Set CollectionProcedure
Linear Controlfor Tracking
π,(π‘)+
+
πYZ[,οΏ½π’οΏ½
ποΏ½
ποΏ½, οΏ½ΜοΏ½οΏ½
ποΏ½, οΏ½ΜοΏ½οΏ½π’οΏ½
ποΏ½, ποΏ½
ποΏ½
On-line regressor
Robotics 2 30
n Gaussian Process (GP) regression to estimate the perturbation πΏn from input-output observations that are noisy, with π ~π© 0, π΄οΏ½ , the
generated data points at the π-th control step are
n assuming the ensemble of π, observations has a jointly Gaussian distribution
n the predictive distribution that approximates πΏ οΏ½π for a generic query οΏ½π is
ποΏ½ = (ποΏ½, οΏ½ΜοΏ½οΏ½, π’οΏ½) ποΏ½ = οΏ½ΜοΏ½οΏ½ β π’οΏ½
πE:οΏ½ DEποΏ½
~ π© 0,πΎ ππq π (ποΏ½ , ποΏ½ )
π( οΏ½π) ~ π© π( οΏ½π), πR( οΏ½π)with
π οΏ½π = πq οΏ½π πΎ + π΄οΏ½ DEπ
πR οΏ½π = π οΏ½π, οΏ½π β πq οΏ½π πΎ + π΄οΏ½ DEπ( οΏ½π)
β ποΏ½ = π(ποΏ½)
a Kernel to be chosen
Simulation results
Robotics 2 31
§ Kuka LWR iiwa, 7-dof robot§ model perturbations: dynamic parameters with ± 20% variation,
uncompensated joint frictionΒ§ 7 separate GPs (one for each joint), each with 21 inputs at every π‘ = π‘οΏ½Β§ sinusoidal trajectories for each joint
norm of the joint errors
positioncomponents
in theCartesian
space
β¦ at the first and only iteration!
Simulation results
Robotics 2 32
video(sloweddown)
Extension to underactuated robots
Robotics 2 33
πΒ₯Β₯(π) πΒ₯Β¦(π)πΒ₯Β¦q (π) π¦¦(π)
οΏ½ΜοΏ½Β₯οΏ½ΜοΏ½Β¦
+πΒ₯ π, οΏ½ΜοΏ½πΒ¦ π, οΏ½ΜοΏ½
= π0
uk akqd(t)
§ planner optimizes motion of passive joints (at every iteration)§ controller for active joints with partial feedback linearization§ two regressors (on/off-line) for learning the required acceleration
corrections for active and passive joints
Experiments on the Pendubot
Robotics 2 34
§ Pendubot, 2-dof robot with passive second joint§ swing-up maneuvers from down-down to a new equilibrium state
β up-up
β down-up
Experimental results
Robotics 2 35
video
convergence in 2 iterations!