trajectory tracking control
Post on 15-Apr-2022
10 Views
Preview:
TRANSCRIPT
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!
top related