modelos de orden mayor modelo de primer/segundo orden

8
Modelo de primer/segundo orden + retardo: aproximación de otros modelos de orden mayor © 2019, Antonio Sala Piqueras, Universitat Politécnica de València. Todos los derechos reservados. Este código ejecutó sin errores en Matlab R2019b Motivación y objetivos: Los modelos no oscilatorios de primer y segundo orden + retardo -- , -- son muy habituales como modelos aproximados de procesos. Si se dispone de un modelo de primeros principios de mayor orden, puede aproximarse de forma sencilla a uno de ellos. Así, se le podrían aplicar reglas/tablas relativamente sencillas de, por ejemplo, sintonía de PIDs, etc. en la literatura de control de procesos. También podría interpretarse "intuitivamente" la respuesta en términos de dinámicas sencillas y retardo. Tabla de Contenidos Simulación de un sistema de orden 5 + retardo..................................................................................................... 1 Aproximación del modelo de orden mayor a primer orden + retardo:.................................................................... 2 Opción (a): Igualdad de término de grado 1 de serie de Taylor......................................................................... 2 Opción (b): igualdad de dos primeros términos de Taylor.................................................................................. 3 Aproximación a segundo orden más retardo.......................................................................................................... 6 Conclusiones............................................................................................................................................................ 8 Simulación de un sistema de orden 5 + retardo G_TF=@(s) 3*(-0.15*s+1)/(1.1*s+1)/(0.5*s+1)/(0.1*s+1)^3; %función de Matlab s=tf('s'); Proceso=G_TF(s); %objeto Control Systems Toolbox Proceso.InputDelay=0.06;% también tiene un poco de retardo puro adicional step(Proceso), grid on 1

Upload: others

Post on 25-Jul-2022

19 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: modelos de orden mayor Modelo de primer/segundo orden

Modelo de primer/segundo orden + retardo: aproximación de otrosmodelos de orden mayor© 2019, Antonio Sala Piqueras, Universitat Politécnica de València. Todos los derechos reservados.

Este código ejecutó sin errores en Matlab R2019b

Motivación y objetivos: Los modelos no oscilatorios de primer y segundo orden + retardo -- ,

-- son muy habituales como modelos aproximados de procesos.

Si se dispone de un modelo de primeros principios de mayor orden, puede aproximarse de forma sencilla a uno

de ellos. Así, se le podrían aplicar reglas/tablas relativamente sencillas de, por ejemplo, sintonía de PIDs, etc.

en la literatura de control de procesos. También podría interpretarse "intuitivamente" la respuesta en términos

de dinámicas sencillas y retardo.

Tabla de Contenidos

Simulación de un sistema de orden 5 + retardo.....................................................................................................1Aproximación del modelo de orden mayor a primer orden + retardo:.................................................................... 2

Opción (a): Igualdad de término de grado 1 de serie de Taylor......................................................................... 2Opción (b): igualdad de dos primeros términos de Taylor.................................................................................. 3

Aproximación a segundo orden más retardo.......................................................................................................... 6Conclusiones............................................................................................................................................................ 8

Simulación de un sistema de orden 5 + retardo

G_TF=@(s) 3*(-0.15*s+1)/(1.1*s+1)/(0.5*s+1)/(0.1*s+1)^3; %función de Matlabs=tf('s');Proceso=G_TF(s); %objeto Control Systems ToolboxProceso.InputDelay=0.06;% también tiene un poco de retardo puro adicionalstep(Proceso), grid on

1

Page 2: modelos de orden mayor Modelo de primer/segundo orden

Aproximación del modelo de orden mayor a primer orden + retardo:

Opción (a): Igualdad de término de grado 1 de serie de TaylorPolos: con el criterio de coincidencia de serie de Taylor, tenemos que:

y

Hasta primer orden coincidirían: .

Ceros: con el criterio de coincidencia de serie de Taylor, tenemos que y

Hasta primer orden coincidirían: .

Con lo cual, retardo como suma de polos no dominantes (y retardos que ya estuvieran presentes):

aprox_polos=0.5+0.1*3; aprox_ceros=0.15;retardoaprox=aprox_polos+aprox_ceros+Proceso.InputDelay

2

Page 3: modelos de orden mayor Modelo de primer/segundo orden

retardoaprox = 1.0100

G_aprox=3/(1.1*s+1)*exp(-retardoaprox*s);step(Proceso,G_aprox,8)legend('Orden 5 +ret.','Orden 1 + retardo'), grid on

Comprobemos igualdad de primer término de Taylor

syms s %necesito el "s" del symbolic toolbox, no del control toolboxTG=taylor(G_TF(s)*exp(-Proceso.InputDelay*s),s,'Order',3);vpa(TG,5)

ans =

G_aprox_sy=3/(1.1*s+1)*exp(-retardoaprox*s);vpa(simplify(taylor(G_aprox_sy,s,'Order',3)),5)

ans =

Opción (b): igualdad de dos primeros términos de Taylor

Como el modelo de 1er orden + retardo tiene dos parámetros ajustables, podemos igualar los términos s y :

syms tau d realG_1ord_delay=1/(tau*s+1)*exp(-d*s);TG_1ord_delay=taylor(G_1ord_delay,s,'Order',3)

TG_1ord_delay =

3

Page 4: modelos de orden mayor Modelo de primer/segundo orden

Coef_1ord_Delay=coeffs(TG_1ord_delay,s)*dcgain(Proceso)

Coef_1ord_Delay =

Coef_G=coeffs(TG,s);sol=solve(Coef_1ord_Delay==Coef_G);ed=eval(sol.d)'

ed = 1×2 3.3214 0.8986

etau=eval(sol.tau)'

etau = 1×2 -1.2114 1.2114

%escogemos la solución estableG_ap_Taylor2 = 1/(sol.tau(2)*s+1)*exp(-sol.d(2)*s)*dcgain(Proceso);

Comprobemos que, en efecto, la solución tiene igual los términos de Taylor hasta que el proceso:

TGA=(simplify(taylor(G_ap_Taylor2,s,'Order',3)));vpa(TGA,5)

ans =

%la solución la ponemos en la control toolbox:s=tf('s');G_aprox_b=dcgain(Proceso)*1/(etau(2)*s+1)*exp(-ed(2)*s)

G_aprox_b = 3 exp(-0.899*s) * ----------- 1.211 s + 1 Continuous-time transfer function.

step(Proceso,G_aprox,G_aprox_b,8), grid on, legend('G','aprox Taylor grado 1 (a)','aprox Taylor grado 2 (b)')

4

Page 5: modelos de orden mayor Modelo de primer/segundo orden

bodemag(Proceso,G_aprox,G_aprox_b), grid on

5

Page 6: modelos de orden mayor Modelo de primer/segundo orden

bodemag(Proceso-G_aprox,Proceso-G_aprox_b,logspace(-0.75,2.5,100)),legend('1-Taylor (a)','2-Taylor (b)'), grid ontitle('Error de Modelado en frecuencia: Bode (amplitud)')

Aproximación a segundo orden más retardoComo el segundo polo no está demasiado alejado del primero, podemos intentar conservarlo y, por sencillez,

aplicar la regla (conservar Taylor hasta s) en el resto de dinámicas:

aprox_polos=0.1*3;retardoaprox_2=aprox_polos+aprox_ceros+Proceso.InputDelay

retardoaprox_2 = 0.5100

G_aprox_2orden=3/(1.1*s+1)/(0.5*s+1)*exp(-retardoaprox_2*s);step(Proceso,G_aprox_b,G_aprox_2orden,8)legend('Orden 5+ ret.','Orden 1 + retardo (b)','Orden 2 + retardo'), grid on

6

Page 7: modelos de orden mayor Modelo de primer/segundo orden

bodemag(Proceso-G_aprox_b,Proceso-G_aprox_2orden,logspace(-1.5,2.5)),legend('1er-ord+ret (b)','2o-ord+ret'), grid ontitle('Error de Modelado en frecuencia: Bode (amplitud)')

7

Page 8: modelos de orden mayor Modelo de primer/segundo orden

ConclusionesUn proceso estable no oscilatorio puede ser aproximado con precisión razonable a primer orden + retardo.

De forma rápida, usar en los polos no dominantes, en ceros . Si existen polos

cerca del dominante, puede aproximarse a 2º orden + retardo (podría ser aconsejable, el error de modelado se

reduce bastante). Se puede refinar la aproximación haciendo más lento dicho polo dominante para aproximar la

dinámica eliminada hasta el término de la serie de Taylor.

8