Click here to load reader

MOTION CONTROL Joint space control Decentralized ... ROBOTICS Prof. Bruno SICILIANO MOTION CONTROL Joint space control Decentralized control Computed torque feedforward control Centralized

  • View
    221

  • Download
    3

Embed Size (px)

Text of MOTION CONTROL Joint space control Decentralized ... ROBOTICS Prof. Bruno SICILIANO MOTION CONTROL...

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    MOTION CONTROL

    Joint space control

    Decentralized control

    Computed torque feedforward control

    Centralized control

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    THE CONTROL PROBLEM

    Joint space control

    Operational space control

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    JOINT SPACE CONTROL

    Dynamic model

    B(q)q + C(q, q)q + Fvq + g(q) =

    Control find :

    q(t) = qd(t)

    transmissions

    Krq = qm m = K1r

    drives

    K1r = Ktia

    va = Raia + Kvqm

    va = Gvvc

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Voltage-controlled manipulator

    B(q)q + C(q, q)q + F q + g(q) = u

    F = Fv + KrKtR1a KvKr

    u = KrKtR1a Gvvc

    KrKtR1a Gvvc = + KrKtR

    1a KvKrq

    = KrKtR1a (Gvvc KvKrq)

    Kr with elements 1

    Ra with small elements

    not too large

    decentralized control

    Gvvc KvKrq

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Torque-controlled manipulator

    reduction of sensitivity to parameter variations

    Kt, Kv , Ra

    ia = Givc

    centralized control

    = u = KrKtGivc

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    DECENTRALIZED CONTROL

    Dynamic model at motor side

    K1r BK1r qm+K

    1r CK

    1r qm+K

    1r FvK

    1r qm+K

    1r g = m

    average inertia

    B(q) = B + B(q)

    K1r BK1r qm + Fmqm + d = m

    viscous friction

    Fm = K1r FvK

    1r

    disturbance

    d = K1r B(q)K1r qm + K

    1r C(q, q)K

    1r qm + K

    1r g(q)

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Manipulator + drives

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    INDEPENDENT JOINT CONTROL

    Manipulator n independent systems (joint drives)

    control of each joint axis as a singleinput/singleoutputsystem

    coupling effects between joints treated as disturbance inputs

    Effective rejection of the effects of d on m

    large value of amplifier gain before point of intervention ofdisturbance

    presence of integral action in the controller so as to cancelthe effect of gravitational component on output at steadystate (constant m)

    Proportional-integral (PI) control

    C(s) = Kc1 + sTc

    s

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    General structure

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Position feedback

    CP (s) = KP1 + sTP

    sCV (s) = 1 CA(s) = 1

    kTV = kTA = 0

    transfer function of forward path

    C(s)G(s) =kmKP (1 + sTP )

    s2(1 + sTm)

    transfer function of return path

    H(s) = kTP

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    root locus analysis

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    closed-loop input/output transfer function

    m(s)

    r(s)=

    1

    kTP

    1 +s2(1 + sTm)

    kmKP kTP (1 + sTP )

    W (s) =

    1

    kTP(1 + sTP )

    (1 +

    2s

    n+

    s2

    2n

    )(1 + s)

    closed-loop disturbance/output transfer function

    m(s)

    D(s)=

    sRa

    ktKP kTP (1 + sTP )

    1 +s2(1 + sTm)

    kmKP kTP (1 + sTP )

    XR = KP kTP TR = max

    {TP ,

    1

    n

    }

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Position and velocity feedback

    CP (s) = KP CV (s) = KV1 + sTV

    sCA(s) = 1

    kTA = 0

    transfer function of forward path

    C(s)G(s) =kmKP KV (1 + sTV )

    s2(1 + sTm)

    transfer function of return path

    H(s) = kTP

    (1 + s

    kTV

    KP kTP

    )

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    root locus analysis

    choice of zeroTV = Tm

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    closed-loop input/output transfer function

    m(s)

    r(s)=

    1

    kTP

    1 +skTV

    KP kTP+

    s2

    kmKP kTP KV

    W (s) =

    1

    kTP

    1 +2s

    n+

    s2

    2n

    design requirements

    KV kTV =2nkm

    KP kTP KV =2nkm

    closed-loop disturbance/output transfer function

    m(s)

    D(s)=

    sRa

    ktKP kTP KV (1 + sTm)

    1 +skTV

    KP kTP+

    s2

    kmKP kTP KV

    XR = KP kTP KV TR = max

    {Tm,

    1

    n

    }

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Position, velocity and acceleration feedback

    CP (s) = KP CV (s) = KV CA(s) = KA1 + sTA

    s

    G(s) =km

    (1 + kmKAkTA)

    1 +

    sTm

    (1 + kmKAkTA

    TA

    Tm

    )

    (1 + kmKAkTA)

    transfer function of forward path

    C(s)G(s) =KP KV KA(1 + sTA)

    s2G(s)

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    transfer function of return path

    H(s) = kTP

    (1 +

    skTV

    KP kTP

    )

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    root locus analysis

    choice of zero

    TA = Tm

    kmKAkTATA Tm kmKAkTA 1

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    closed-loop input/output transfer function

    m(s)

    r(s)=

    1

    kTP

    1 +skTV

    KP kTP+

    s2(1 + kmKAkTA)

    kmKP kTP KV KA

    closed-loop disturbance/output transfer function

    m(s)

    D(s)=

    sRa

    ktKP kTP KV KA(1 + sTA)

    1 +skTV

    KP kTP+

    s2(1 + kmKAkTA)

    kmKP kTP KV KA

    XR = KP kTP KV KA TR = max

    {TA,

    1

    n

    }

    design requirements

    2KP kTPkTV

    =n

    kmKAkTA =kmXR

    2n 1

    KP kTP KV KA = XR

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    reconstruction of acceleration

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Decentralized feedforward compensation

    High values of velocities and accelerations

    degraded tracking capabilities

    Adoption of feedforward action

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Position feedback

    r(s) =

    (kTP +

    s2(1 + sTm)

    kmKP (1 + sTP )

    )md(s)

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Position and velocity feedback

    r(s) =

    (kTP +

    skTV

    KP+

    s2

    kmKP KV

    )md(s)

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Position, velocity and acceleration feedback

    r(s) =

    (kTP +

    skTV

    KP+

    (1 + kmKAkTA)s2

    kmKP KV KA

    )md(s)

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Control with torque-controlled drive and current feedfoward

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    COMPUTED TORQUE FEEDFORWARDCONTROL

    At output of PIDD2

    a2e + a1e + a0e + a1

    te()d +

    Tm

    kmmd +

    1

    kmmd

    Ra

    ktd

    =Tm

    kmm +

    1

    kmm

    a2e + a

    1e + a

    0e + a1

    te()d =

    Ra

    ktd

    E(s)

    D(s)=

    Ra

    kts

    a2s3 + a

    1s2 + a

    0s + a1

    adoption of too high loop gains

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Computed torque

    feedforward action (inverse model)

    dd = K1r B(qd)K

    1r qmd+K

    1r C(qd, qd)K

    1r qmd+K

    1r g(qd)

    reduction of disturbance rejection effort (limited gains)

    off-line/on-line computation

    partial compensation

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    CENTRALIZED CONTROL

    Manipulator Coupled nonlinear multi-input/multi-outputsystem

    B(q)q + C(q, q)q + F q + g(q) = u

    PD control with gravity compensation

    Regulation to constant equilibrium posture qd

    Lyapunov direct method

    state [ qT qT ]T q = qd q

    Lyapunov function candidate

    V (q, q) =1

    2qT B(q)q +

    1

    2qT KP q > 0 q, q 6= 0

    V = qT B(q)q +1

    2qT B(q)q qT KP q

    =1

    2qT

    (B(q) 2C(q, q)

    )q qT F q + qT

    (u g(q) KP q

    )

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    choice of control

    u = g(q) + KP q KDq

    V = qT (F + KD)q

    V = 0 q = 0, q

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    dynamics of controlled system

    B(q)q + C(q, q)q + F q + g(q) = g(q) + KP q KDq

    at equilibrium (q q 0)

    KP q = 0 = q = qd q 0

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Inverse dynamics control

    Dynamic model

    B(q)q + n(q, q) = u

    n(q, q) = C(q, q)q + F q + g(q)

    Nonlinear state feedback (global linearization)

    linear structure in u

    (B(q)) = n q

    u = B(q)y + n(q, q)

    q = y

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Choice of stabilizing control y

    y = KP q KDq + r

    r = qd + KDqd + KP qd

    q + KD q + KP q = 0

    perfect cancellation

    constraints on hardware/software architecture of controlunit

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Robust control

    Imperfect compensation

    u = B(q)y + n(q, q)

    uncertainty

    B = B B n = n n

    Bq + n = By + n

    q = y + (B1B I)y + B1n = y

    = (I B1B)y B1n

    Choice of control

    y = qd + KD(qd q) + KP (qd q)

    q + KD q + KP q =

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    q = qd y +

    first-order differential equation

    = H + D(qd y + )

    Estimate on range of variation of uncertainty

    supt0

    qd < QM < qd

    I B1(q)B(q) 1 q

    n < q, q

  • INDUSTRIAL ROBOTICS Prof. Bruno SICILIANO

    Choice of control

    y = qd + KD q + KP q + w

    = H + D( w)

    H = (H DK) =

    [O I

    KP KD

    ]

    Lyapunov method

    V () = T Q > 0 6= 0

    V = T Q + T Q

    = T (HT Q + QH) + 2T QD( w)

Search related