Tarea4 07 sol+manipulador2segmentos

6
Departamento de Ingeniería de Sistemas y Automática Universidad Politécnica de Valencia INGENIERÍA DE CONTROL I 2007-8 __________________________________________________________________________________________________ P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected] J.V. Roig. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 75768 e-mail [email protected] Tarea 4. Control de sistemas no lineales Se tiene un manipulador con dos segmentos y una unión flexible al que se le ajusta un modelo simplificado que puede expresarse por: ; 2 ) ( 5 . 0 ) ( 5 . 0 2 1 2 2 1 1 1 u sen + = = θ θ θ θ θ θ θ & & & & Un punto de equilibrio, para u=0, es 0 2 1 = = θ θ . Tomaremos como vector de estado: [ ] T x 2 2 1 1 θ θ θ θ & & = . 1. Obtener un modelo linealizado en torno al punto de equilibrio. 2. Encontrar una transformación no lineal, ) ( x h z = que permita linealizar el sistema por realimentación del estado. 3. Diseñar para el sistema linealizado y para la aproximación lineal, un control por realimentación del estado que sitúe los polos en torno a -2. 4. Comparar la respuesta de ambos sistemas cuando se parte de una posición inicial: rad 05 . 0 0 , 2 0 , 1 = = θ θ rad 5 . 0 0 , 2 0 , 1 = = θ θ 5. Si solamente se miden los ángulos, diseñar el control equivalente por realimentación de la medida (salida). Solución. 1. Obtener un modelo linealizado en torno al punto de equilibrio. En el punto de funcionamiento las variables son: u=0, es 0 20 10 = = θ θ , 0 20 10 = = θ θ & & El modelo de estado, con el vector de estado elegido, es:

Transcript of Tarea4 07 sol+manipulador2segmentos

Page 1: Tarea4 07 sol+manipulador2segmentos

Departamento de Ingeniería de Sistemas y Automática

Universidad Politécnica de Valencia

INGENIERÍA DE CONTROL I 2007-8

__________________________________________________________________________________________________ P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected] J.V. Roig. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 75768 e-mail [email protected]

Tarea 4. Control de sistemas no lineales Se tiene un manipulador con dos segmentos y una unión flexible al que se le ajusta un modelo simplificado que puede expresarse por:

;2)(5.0

)(5.0

212

2111

u

sen

⋅+−=

−−−=

θθθθθθθ

&&

&&

Un punto de equilibrio, para u=0, es 021 == θθ .

Tomaremos como vector de estado: [ ]Tx 2211 θθθθ &&= .

1. Obtener un modelo linealizado en torno al punto de equilibrio. 2. Encontrar una transformación no lineal, )(xhz = que permita linealizar el sistema

por realimentación del estado. 3. Diseñar para el sistema linealizado y para la aproximación lineal, un control por

realimentación del estado que sitúe los polos en torno a -2.

4. Comparar la respuesta de ambos sistemas cuando se parte de una posición inicial: rad05.00,20,1 == θθ

rad5.00,20,1 == θθ 5. Si solamente se miden los ángulos, diseñar el control equivalente por

realimentación de la medida (salida).

Solución.

1. Obtener un modelo linealizado en torno al punto de equilibrio. En el punto de funcionamiento las variables son:

u=0, es 02010 == θθ , 02010 == θθ && El modelo de estado, con el vector de estado elegido, es:

Page 2: Tarea4 07 sol+manipulador2segmentos

Departamento de Ingeniería de Sistemas y Automática

Universidad Politécnica de Valencia

INGENIERÍA DE CONTROL I 2007-8

__________________________________________________________________________________________________ P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected] J.V. Roig. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 75768 e-mail [email protected]

u

⎥⎥⎥⎥

⎢⎢⎢⎢

+

⎥⎥⎥⎥

⎢⎢⎢⎢

⎡−

+

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

−=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

2000

00

sin0

05.005.0100005.005.00010

1

2

2

1

1

2

2

1

1

θ

θθθθ

θθθθ

&

&

&&

&

&&

&

en el que se pone de manifiesto la parte no-lineal, que habría que linealizar. O bien

u

xxx

xxxx

uxgxfx

⎥⎥⎥⎥

⎢⎢⎢⎢

+

⎥⎥⎥⎥

⎢⎢⎢⎢

−−−=+=

2000

)(5.0

)(5.0sin)()(

31

4

311

2

&

en forma afín del control.

En general, para linealizar habría que calcular: ⎥⎥⎦

⎢⎢⎣

∂∂

⎥⎥⎦

⎢⎢⎣

∂∂

j

i

j

i

xg

xf

, . En esta caso, la única

función no lineal (el seno) se linealiza sustituyéndolo por el ángulo. Por tanto, el sistema linealizado será:

u

⎥⎥⎥⎥

⎢⎢⎢⎢

+

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

−=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

2000

05.005.0100005.005.10010

2

2

1

1

2

2

1

1

θθθθ

θθθθ

&

&

&&

&

&&

&

2. Encontrar una transformación no lineal, )(xhz = que permita linealizar el sistema por realimentación del estado.

Para transformar el sistema, de forma que las funciones no lineales solamente aparezcan con la última variable de estado (o el último subconjunto de variables de estado de la misma dimensión que el vector de entrada, en el caso multivariable), seguiremos el procedimiento indicado en el anexo.

Definimos el nuevo vector de estado, z, tomando:

),,,(),,,(),,,(),,,(

432144

432133

432122

432111

xxxxhzxxxxhzxxxxhzxxxxhz

====

Empezamos por la primera nueva variable de estado: ];)()([111 uxgxf

xhx

xhz +

∂∂

=∂∂

= &&

Haciendo: ;01 =∂∂ g

xh debe ser: ;0

4

1 =∂∂xh dado que el vector [ ]Tg 2000= .

Así pues, ),,( 32111 xxxhz = .

Page 3: Tarea4 07 sol+manipulador2segmentos

Departamento de Ingeniería de Sistemas y Automática

Universidad Politécnica de Valencia

INGENIERÍA DE CONTROL I 2007-8

__________________________________________________________________________________________________ P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected] J.V. Roig. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 75768 e-mail [email protected]

),,,()(5.0(sin( 43212243

1311

2

12

1

111 xxxxhzx

xh

xxxxh

xxh

xxh

z ==∂∂

+−−−∂∂

+∂∂

=∂∂

= &&

Operando como antes, dado el valor de g , ;04

2 =∂∂

xh ),,( 32122 xxxhz = ; ;0

3

1 =∂∂xh

);,( 2111 xxhz =

Repitiendo el proceso:

),,,()(5.0(sin( 43213343

2311

2

22

1

222 xxxxhzx

xh

xxxxh

xxh

xxh

z ==∂∂

+−−−∂∂

+∂∂

=∂∂

= &&

Igualmente, deberá ser ;04

3 =∂∂xh

),,( 32123 xxxhz = ; luego ;03

2 =∂∂

xh );,( 2122 xxhz =

;02

1 =∂∂xh );( 111 xhz =

Finalmente:

),,,()(5.0(sin( 43214443

3311

2

32

1

333 xxxxhzx

xh

xxxxh

xxh

xxh

z ==∂∂

+−−−∂∂

+∂∂

=∂∂

= &&

Ahora bien, al calcular 4z& debe ser:

;0;0;03

3

4

44 ≠∂∂

→≠∂∂

→≠∂∂

xh

xhg

xh

Hemos definido el nuevo vector como una cadena de integradores:

)(5.0cos

)(5.0sin

422134

31123

212

11

xxxxzz

xxxzzxzz

xz

−−⋅−==

−−−====

=

&

&

&

siendo:

]2)`(5.0[5.0)](5.0sin)[5.0(cossin 3131112214 uxxxxxxxxz −−+−−−+−⋅=&

con ecuación de estado:

u

zzzzzzzzz

z

⎥⎥⎥⎥

⎢⎢⎢⎢

+

⎥⎥⎥⎥

⎢⎢⎢⎢

−−++−

=

1000

)sin(5.0)5.0(cossin 3131221

4

3

2

&

El sistema, con este vector de estado, se puede linealizar tomando:

vkzzrvkzzzzzzzu +−=+−−−−++⋅−= )()sin(5.0)5.0(cossin 3131221

dando lugar al sistema controlado:

Page 4: Tarea4 07 sol+manipulador2segmentos

Departamento de Ingeniería de Sistemas y Automática

Universidad Politécnica de Valencia

INGENIERÍA DE CONTROL I 2007-8

__________________________________________________________________________________________________ P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected] J.V. Roig. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 75768 e-mail [email protected]

uz

kkkk

z

⎥⎥⎥⎥

⎢⎢⎢⎢

+

⎥⎥⎥⎥

⎢⎢⎢⎢

=

1000

100001000010

4321

&

3. Diseñar para el sistema linealizado y para la aproximación lineal, un control por realimentación del estado que sitúe los polos en torno a -2.

Los sistemas en cuestión son:

u

llll ⎥⎥⎥⎥

⎢⎢⎢⎢

+

⎥⎥⎥⎥

⎢⎢⎢⎢

⎥⎥⎥⎥

⎢⎢⎢⎢

−−−−−

−=

⎥⎥⎥⎥⎥

⎢⎢⎢⎢⎢

2000

5.05.0100005.005.10010

2

2

1

1

43212

2

1

1

θθθθ

θθθθ

&

&

&&

&

&&

&

y uz

kkkk

z

⎥⎥⎥⎥

⎢⎢⎢⎢

+

⎥⎥⎥⎥

⎢⎢⎢⎢

−−−−

=

1000

100001000010

4321

&

Ligados por la equivalencia:

)(5.0cos

)(5.0sin

21114

2113

12

11

θθθθθθθ

θθ

&&&

&

−−⋅−=

−−==

=

z

zz

z

Para que los polos esté, en torno a -2, en el segundo caso se puede hacer por simple comparación de coeficientes:

122

33

4442344 232248)2( kskskskssssss −+−−−=++++=+

k=[16 32 24 8] Luego será: Para el sistema linealizado aproximado: » a=[0 1 0 0;-1.5 0 .5 0;0 0 0 1;.5 0 -.5 0]; » b=[0 0 0 2]’; » p= [-2 -2.001 -2.01 -1.999];

l=[-17.5100 20.1050 11.0300 4.0050]

4. Comparar la respuesta de ambos sistemas cuando se parte de una posición inicial: rad05.00,20,1 == θθ

rad5.00,20,1 == θθ Observad que los tres sistemas que estamos considerando son:

Page 5: Tarea4 07 sol+manipulador2segmentos

Departamento de Ingeniería de Sistemas y Automática

Universidad Politécnica de Valencia

INGENIERÍA DE CONTROL I 2007-8

__________________________________________________________________________________________________ P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected] J.V. Roig. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 75768 e-mail [email protected]

1. Sistema “real”:

2. Sistema aproximado lineal:

3. Sistema linealizado por realimentación:

Por lo tanto, cabe esperar que:

a. Los sistema S1 y S2 se comporten de forma semejante para pequeñas señales b. Los sistema S2 y S3 son lineales, con dinámicas distintas (S3 es una cadena de integradores). c. S3 es el sistema real, realimentado (por lo tanto modificado) y no se parece al S2 para ninguna señal.

Por lo tanto, podemos asignar polos similares en S2 y S3 pero no corresponderán a comportamientos similares de x en ambos sistemas. Para visualizar estas respuestas vamos a simular ambos sistemas con Simulink®.

x' = Ax+Bu y = Cx+Du

lineal-exact

Scope3

Scope2

Scope1

Scope

x' = Ax+Bu y = Cx+Du

Lineal-aprox

m

m

K

- l

K

- k

en el que se puede ver las diferencias de ambos sistemas lineales, en bucle abierto, y a partir de condiciones iniciales “coherentes”. 5. Si solamente se miden los ángulos, diseñar el control equivalente por realimentación de la medida (salida). Este apartado es similar (observador de orden reducido) en el caso del modelo lineal aproximado. Es inviable en el caso de la linealización exacta, que requiere la realimentación del estado, o bien ha de desarrollarse un observador no lineal del estado.

Page 6: Tarea4 07 sol+manipulador2segmentos

Departamento de Ingeniería de Sistemas y Automática

Universidad Politécnica de Valencia

INGENIERÍA DE CONTROL I 2007-8

__________________________________________________________________________________________________ P. Albertos. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 79570 e-mail [email protected] J.V. Roig. Dept. Ingeniería de Sistemas y Automática. UPV. Ext.: 75768 e-mail [email protected]

Linealización por realimentación Si se tiene un sistema escalar dado por:

;)()( uxgxfx ⋅+=& (1)

en todo el rango de valores { }0)( , ≠⊆∈ xgRXx , se puede encontrar la ley de control

[ ]vxkxfxg

u +⋅+−= )()(

1 (2)

tal que el sistema controlado es lineal: vxkx +⋅=&

• En el caso de que f(x) tuviera varios sumandos, se podría cancelar selectivamente algunos de ellos, si el resto no fuera perjudicial desde el punto de vista dinámico o de control.

• En el supuesto de un sistema de mayor dimensión, en el que f y g son vectores de funciones, no se puede realizar esta cancelación (2), salvo que el control y el término no lineal aparezcan solamente en la ecuación de estado de una única variable.

Así, por ejemplo, si se tuviera:

uxgxf

bxaxxx

⋅⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡ +=⎥

⎤⎢⎣

⎡)(

0)(

21

2

1&

&

se podría tomar [ ]vdxcxxfxg

u +++−= )()()(

121

dando lugar al sistema lineal:

vxx

dcba

xx

⋅⎥⎦

⎤⎢⎣

⎡+⎥

⎤⎢⎣

⎡⎥⎦

⎤⎢⎣

⎡=⎥

⎤⎢⎣

⎡10

2

1

2

1&

&

• En caso contrario hay que recurrir a un cambio de variables previo, (una transformación no lineal o difeomorfismo), y deben darse determinadas condiciones para que se pueda realizar la linealización. La idea es trasladar a la ecuación de estado de una única variable, el comportamiento no lineal, para proceder como anteriormente. Supongamos que se tiene: ;)()( uxgxfx ⋅+=& con dim(x) = n

Se hace el cambio, para la primera variable: ;0)0( ),( 111 == hxhz de forma que

;0)()(

;1,,1 ;0)()(

sea ,)()(

)()()(

≠∂

∂−==

∂∂

∂∂

+∂

∂=

∂∂

=

xgx

xhnixg

xxh

uxgxxh

xfxxh

xxxh

z

ni

iiii

K

&&

(3)

y habiéndose tomado

;1,,1 );()(

1 −=∂

∂=+ nixf

xxh

z ii K (4)