4
1 Laborator nr.3.: ALGORITMI DE CONDUCERE NUMERICĂ DIRECTĂ ALGORITMUL KALMAN Scopul lucrării: prezentarea algoritmului Kalman de conducere numeric direct; prezentarea problemelor legate de implementarea acestor algoritmi Consideraţii teoretice: Metoda clasică de abordare a problemei proiectării algoritmului de conducere se bazează pe schema din fig. 5.1.a. Datorită modului discret de funcţionare a sistemului de conducere, se consideră structura din fig. 5.1.b., unde H SHo este funcţia de transfer a elementului de eşantionare-reţinere de ordinul zero, respectiv : H s e s SH Ts E 0 1 () . Diversele tipuri de algoritmi de conducere numerică directă rezultă din cerinţele impuse funcţiei de transfer a sistemului închis, cu alte cuvinte a modului în care trebuie să se comporte ieşirea y(z) la o anumită referinţă w(z). H R (s) w(s) (s) u(s) y(s) - Fig.5.1.a. Schema buclei de reglare continuă H P (s)

LAB3

Embed Size (px)

DESCRIPTION

ira

Citation preview

  • 1

    Laborator nr.3.: ALGORITMI DE CONDUCERE NUMERIC DIRECT

    ALGORITMUL KALMAN

    Scopul lucrrii:

    prezentarea algoritmului Kalman de conducere numeric direct;

    prezentarea problemelor legate de implementarea acestor algoritmi

    Consideraii teoretice:

    Metoda clasic de abordare a problemei proiectrii algoritmului de conducere se

    bazeaz pe schema din fig. 5.1.a. Datorit modului discret de funcionare a sistemului de

    conducere, se consider structura din fig. 5.1.b., unde HSHo este funcia de transfer a

    elementului de eantionare-reinere de ordinul zero, respectiv :

    H se

    sSH

    T sE

    0

    1( )

    .

    Diversele tipuri de algoritmi de conducere numeric direct rezult din cerinele

    impuse funciei de transfer a sistemului nchis, cu alte cuvinte a modului n care trebuie s

    se comporte ieirea y(z) la o anumit referin w(z).

    HR(s) w(s) (s) u(s) y(s)

    -

    Fig.5.1.a. Schema buclei de reglare continu

    HP(s)

  • 2

    Metoda Kalman

    Metoda propus de Kalman pleac de la impunerea mrimilor de intrare i /sau de

    comand. Se poate alege u(z) astfel nct y(z) s ating valoarea staionar n "m" perioade

    de eantionare, astfel nct se poate scrie:

    y(z) = y1z-1

    + ... + ym-1z-m+1

    + z-m

    + ... =

    = [y1z-1

    + (y2 - y1)z-2

    + ... + (1 - ym-1)z-m

    ]/(1-z-1

    ) =

    = P(z-1

    )/(1-z-1

    ) = P(z-1

    )w(z)

    cu observaia:

    pi = 1

    In mod similar:

    u(z) = u0 + u1z-1

    + ... + umz-m

    + umz-m+1

    + ... =

    = [u0 + (u1 - u0)z-1

    + ... + (um - um-1)z-m

    ]/(1-z-1

    )=

    = Q(z-1

    )/(1-z-1

    ) = Q(z-1

    )w(z)

    cu observaia:

    qi = um = 1/Kf

    Funcia de transfer n "z" a algoritmului de reglare este:

    H zQ z

    P z

    q A z

    q B zR

    1

    1

    1

    0

    1

    0

    11 1

    HR(z)

    HSHo(s)

    w(s) w(z)

    TE TE

    TE

    (z)

    y(z) -

    u(z) y(s)

    HP(s)

    Fig.5.1.b. Schema buclei de reglare numeric

  • 3

    unde q Bbi

    0

    1

    11

    Pentru eliminarea comenzii iniiale se poate adopta o procedur Kalman extins. In acest

    caz parametrul q0 poate lua valori cuprinse ntre:

    qa bi

    0

    1

    1

    1min

    q

    bi0

    1max

    Pentru a controla valoarea iniial a comenzii, respectiv pentru a evita intrarea n

    saturaie a algoritmului se poate utiliza un algoritm Kalman extins. In acest caz se

    extinde durata procesului tranzitoriu la un numr de "m+1" taci iar polinoamele P(z-1

    )

    i Q(z-1

    ) au urmtoarea structur:

    P(z-1

    ) = p1z-1

    + ... + pm+1z-m-1

    Q(z-1

    ) = q0 + q1z-1

    + ... + qm+1z-m-1

    Prin identificarea coeficienilor qi, pj n funcie de ai, bj rezult necesitatea includerii unei

    rdcini suplimentare z = 1/ pentru rdcinile polinoamelor B(z-1

    ) i A(z-1

    ). Astfel,

    raportul polinoamelor P(z-1

    ) i Q(z-1

    ) poate fi scris sub forma:

    P(z-1

    )/Q(z-1

    )=(p1'z-1

    +p2'z-2

    +..+ pm'z-m

    )(-z-1

    )/(qo+q1'z-1

    +p2'z-2

    +...+ pm'z-m

    )(-z-1

    )

    Relaiile ce se impun n cazul identitii raportului polinoamelor P/Q cu B/A sunt

    echivalente:

    qi' = aiq0', i=1,m

    pj' = bjq0', j=1,m

    innd seama de modelul extins, rezult relaiile:

    q0 = q0' p1 = p1'

    q1=q1' - q0' p2 = p2' - p1'

    .

    qm = qm' - qm-1' pm = pm' - pm-1'

    qm+1 = -qm pm+1 = -pm'

    Comanda iniial se calculeaz cu ajutorul relaiei:

  • 4

    u0 = q0 = 0q0' = [q0 - 1/bi]

    Parametrii de acord ai algoritmului de reglare se calculeaz cu ajutorul relaiilor:

    q0 = u0 - care se alege n concordan cu cerinele procesului;

    q1 = q0(a1 - 1) + 1/B p1=q0*b1;

    q2 = q0(a2 - a1) + a1/B p1 = q0(b2 - b1) + b1/B

    ..

    qm = q0(am - am-1) + am-1/B pm = q0(bm - bm-1) + bm-1/B

    qm+1 = -am(q0 - 1/B) pm+1=-bm(q0 - 1/B)

    Cu aceti parametri de acord se elaboreaz comanda, unde q0 se alege aprioric, de aceast

    alegere depinznd comportarea ulterioar a sistemului. Se impune alegerea lui q0 astfel

    nct s fie respectate relaiile:

    q0min q0 q0max

    Desfurarea lucrrii:

    1. Se consider funcia de transfer:

    H sT s

    efsm( )

    1

    11

    ,

    cu T1 3 ,34 sec , m 1 86, sec , TE = 1 sec.

    Se cere algoritmul de reglare dup metoda lui Kalman. S se scrie un program n

    MATLAB pentru simularea conducerii numerice a procesului considerat. Vor fi puse n

    eviden rspunsul la treapt i evoluia comenzii pe durata de simulare.

    Probleme:

    a) S se calculeze algoritmul de reglare pentru sistemul fizic din laborator

    b) S se implementeze algoritmul de reglare pe acest sistem fizic.