Z Wikipedii, wolnej encyklopedii
Algorytm linearyzacji statycznej – jeden z algorytmów służących do sterowania manipulatorem elastycznym. Pozwala on zamienić nieliniowy układ w poczwórny integrator.
Model manipulatora zapisany jest jako:
![{\displaystyle M_{1}q_{1}^{''}+Cq_{1}^{'}+D_{1}+K(q_{1}-q_{2})=0}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/54de1fc830c3aecf1d08d21d9a44226add59f635)
![{\displaystyle Iq_{2}^{''}+K(q_{2}-q_{1})=u}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/ef54caf0c6ad0cedc30e4828c769484a77400835)
Powyższy model można zapisać także w innej postaci. W tym celu wprowadza się nowe zmienne:
![{\displaystyle x_{1}=q_{1},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/4b2598ca829a4b983dbbf06ab6673001c296257e)
![{\displaystyle x_{2}=q_{1}^{'},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/2432047037c9d928731e327d28085d0516ab6048)
![{\displaystyle x_{3}=q_{2},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/2f2cbfc8b758ac15ed1ca6b2136b9972cf2ad999)
![{\displaystyle x_{4}=q_{2}^{'},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/f33b1c12e3ecc813710006d94af1aac017a04e1f)
a następnie wyznacza się ich pochodne (wzory zostały uproszczone, aby nie komplikować zapisu):
![{\displaystyle x_{1}^{'}=x_{2}}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/c85c95e442881d0b622c9d16a07e4ce6fce6d53f)
![{\displaystyle x_{2}^{'}=F(x_{1},x_{2})+H_{1}(x_{1})x_{3}}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/a404ec3bda0368a2f3f2518bada6e3b3ae6e91f1)
![{\displaystyle x_{3}^{'}=x_{4}}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/2308222d650a55d6088b4dd7a580d2546ae9d404)
![{\displaystyle x_{4}^{'}=H_{2}(x_{1},x_{3})+I^{-1}u.}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/eefa759fc389bd1689b70436fe9007b5a3ab0018)
W kolejnym kroku wprowadzane są współrzędne linearyzujące.
![{\displaystyle \xi _{1}=x_{1},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/f8cebde632c171428597fb1d56a596b6e7c892eb)
![{\displaystyle \xi _{2}=x_{2},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/5f892a8d05243755cfe144ee5133685f9571ada6)
![{\displaystyle \xi _{3}=F(x_{1},x_{2})+H_{1}(x_{1})x_{3},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/d316fc59d554ea6fd7693822c992bb2af6eedd97)
![{\displaystyle \xi _{4}=H_{3}(x_{1},x_{2},x_{3})+H_{1}(x_{1})x_{4}.}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/7f5a70b260d441e3b3ad7a982c64d2cd56dece62)
Podobnie jak wcześniej wyznaczane są ich pochodne:
![{\displaystyle \xi _{1}^{'}=x_{1}^{'}=x_{2}=\xi _{2},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/ac38949faf97faa510bd4c498746101cb80fe654)
![{\displaystyle \xi _{2}^{'}=x_{2}^{'}=\xi _{3},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/e799605b0ee468361c3f38232a6768df17629b5b)
![{\displaystyle \xi _{3}^{'}=\xi _{4},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/4aa61db704d52ee786bb0caa0f42904b238c43d3)
![{\displaystyle \xi _{4}^{'}=H_{4}(x_{1},x_{2},x_{3},x_{4})+H_{1}(x_{1})I^{-1}u.}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/d5d485f0574ca0d98d8d3bb3fa3c69f003d4efb6)
Na koniec wprowadzane jest sprzężenie, którego zadaniem będzie pozbycie się nieliniowości ze wzoru na
![{\displaystyle u=IK^{-1}M_{1}^{-1}[-H_{4}+v],}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/3f5da9d1a80d1f4adce40dcd8530b791e40d5c7f)
gdzie
to nowe sterowanie.
Uzyskiwany jest w ten sposób układ zapisany jako:
![{\displaystyle \xi _{1}^{'}=x_{1}^{'}=x_{2}=\xi _{2},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/ac38949faf97faa510bd4c498746101cb80fe654)
![{\displaystyle \xi _{2}^{'}=x_{2}^{'}=\xi _{3},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/e799605b0ee468361c3f38232a6768df17629b5b)
![{\displaystyle \xi _{3}^{'}=\xi _{4},}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/4aa61db704d52ee786bb0caa0f42904b238c43d3)
![{\displaystyle \xi _{4}^{'}=v.}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/2dd37689409e229ce9c8e9fcc04593de5fa0f9c7)
Jest to poczwórny integrator (układ składający się z czterech modułów całkujących).
Zadaniem układu jest śledzenie zadanej trajektorii, tzn.
Po zastosowaniu sterowania
o odpowiedniej postaci uzyskiwany jest warunek na eksponencjalną zbieżność błędu do zera:
![{\displaystyle e^{(4)}+K_{3}e^{(3)}+K_{2}e^{(2)}+K_{1}e^{(1)}+K_{0}e=0.}](https://cdn.statically.io/img/wikimedia.org/api/rest_v1/media/math/render/svg/e1386f35042597f959ba0110a9bb39770fbdf86b)
W tym przypadku wartości
wyznaczane są z twierdzenia Hurwitza.
- K.Tchoń, A.Mazur, I.Dulęba, R.Hossa, R.Muszyński, Manipulatory i roboty mobilne. Modele, planowanie ruchu, sterowanie, Warszawa 2000 (ISBN 83-7101-427-9).