Practica 6 Modelado de Sistemas

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 21

CDMX, A 7 DE JUNIO DE 2021.

ACADEMIA DE CONTROL Y AUTOMATIZACIÒN


SEXTA SESIÓN DE LABORATORIO DE MODELADO DE SISTEMAS
ELABORO: ING. RAFAEL NAVARRETE ESCALERA

Objetivo.- Esta sesión tiene como propósito conocer los diferentes comandos de
MATLAB y SIMULIMK para dar soluciones a los diferentes problemas de control y
automatización en el espacio de estado. Es decir, la transformación de un sistema
basado en el espacio de estados a su función de transferencia y viceversa.
Introducción:
La representación en espacio de estados es particularmente aplicada a sistemas
con múltiples entradas y salidas (sistemas MIMO). Esta representación de
sistema permite una formulación sencilla de problemas de optimización dinámica
en el dominio del tiempo, las cuales se pueden resolver de manera analítica y
algunos otros solamente de manera numérica. Otra razón muy importante por la
cual se utiliza el espacio de estados es el significado fundamental del término
estado de un sistema dinámico. En el cual físicamente el estado de un sistema
dinámico se determina por el contenido de energía presente en los acumuladores
de energía del sistema. Por ejemplo, en los sistemas eléctricos son variables de
estado la capacitancia y la inductancia ya que acumulan energía eléctrica.

De manera general, la expresión matemática del espacio de estados es como se


muestra a continuación:


x (t)= Ax (t)+ Bu(t) y (t)=Cx(t )+ Du(t )

En donde:

x(t) Vector de estado con dimensión n

1
u(t) Vector de entrada con dimensión r
y(t) Vector de salida con dimensión m
A Matriz del sistema con dimensión n x n
B Matriz de entrada con dimensión n x r
C Matriz de salida con dimensión m x n
D Matriz de entrada-salida con dimensión m x r

Ejemplo: Dado el siguiente sistema representado en el espacio de estados:

[][
x1

x2 1
x
0 x2 0 ][ ] [ ]
x1
= −4 −3 1 + 1 u y= [ 0 10 ] x + [ 0 ] u
2
[]
A= −4 −3 B= 1 C=[ 0 10 ]
Siendo: [
1 0 0 ] [] D= [ 0 ]

¿Encontrar la función de transferencia del sistema?

Uso del MATLAB


La función ss2tf convierte las ecuaciones de espacio de estados:
x ' = Ax+ Bu y=Cx + Du

En una función de transferencia polinómica en potencias descendientes de s:

b0 s n +b1 s n−1+ ...+ bn−1 s+ bn


F (s)= m m−1
a0 s + a1 s + ...+ am−1 s +am

¡Practique!

[][
x1

x2 1
x
0 x2 0 ][ ] [ ]
x1
= −4 −3 1 + 1 u y= [ 0 10 ] x + [ 0 ] u
2
[]
>>% Convertir modelo de espacio de estados en función de transferencia.
>>A = [-4 -3; 1 0];
>>B = [1;0];

2
>>C = [0 10];
>>D = 0;
>>iu = 1;
>>[num,den] = ss2tf(A,B,C,D,iu)
>>%Como la matriz B es de una sola columna, es decir, una sola entrada se
>>puede omitir “iu” que significa una entrada

Resultado obtenido por la función ss2tf son los siguientes:

num=[ 0 0 10 ], den=[ 1 4 3 ]

Por lo tanto, la función de transferencia es:

y (s ) 10
= 2
u (s ) s +4 s +3

Nota: La función ss2tf calcula los vectores num y den que contienen los
coeficientes, en orden descendente de potencias de s, del numerador y
denominador de la función de transferencia polinómica para la iu-ésima entrada.
Los argumentos de entrada A, B, C y D son las matrices de las ecuaciones de
espacio de estados que corresponden a la iu-ésima entrada, donde iu es el número
de entrada en el caso de un sistema de múltiples entradas. En el caso de un
sistema de una sola entrada, iu es 1.
También un sistema representado en función de transferencia se
puede convertir en una representación de espacio de estados
usando la función tf2ss:
Ejemplo: Obtenga a través del MATLAB el espacio de estados del
siguiente sistema representado en función de transferencia:
y (s ) 10
= 2
u (s ) s +4 s +3
¡Practique!
>>% Convertir función de transferencia a espacio de estados.
>>num = 10;
>>den = [1 4 3];
>>[A,B,C,D] = tf2ss(num,den)
>>%Obtener con el comando step la respuesta en el tiempo

3
>>step(A,B,C,D)

Los valores de las matrices calculadas por la función tf2ss son los
siguientes:

A= −4 −3 B= 1 C=[ 0 10 ]
[
1 0 0 ] [] D= [ 0 ]

Por tanto, las ecuaciones de espacio de estados son:


[][
x1

x2
= −4 −3 x 1 + 1 u y= [ 0 10 ] x 1
1 0 x2 0 ][ ] [ ] []
x2

Nota).- Cuando la matriz D=0 se puede omitir su representación.

La respuesta en el tiempo es:

Uso de SIMULINK

Obtener la respuesta en el tiempo usando el bloque State Space (espacio de


estados) del siguiente sistema:

4

[][
x1
• = 0 1 x 1 + 0 u y= [ 1 0 ] x1 + [ 0 ] u
x2 −4 −2 x 2 4
][ ] [ ] x2 []

Desarrollo de la práctica:

I. Obtenga la representación en el espacio de estados de cada


uno de los siguientes sistemas definidos por sus funciones de
transferencia, escribiendo tanto el programa MATLAB como los
resultados obtenidos con el uso del comando MATLAB tf2ss:

Y (s ) s
a) =
U ( s) (s +10)(s 2+ 4 s+16)

num=[1 0];
den=[1 14 56 160];
a=tf(num,den)
[A,B,C,D]=tf2ss(num,den)

A= −4 −3 B= 1 C=[ 0 10 ]
1 [
0 0 ] [] D= [ 0 ]

5
A=

-14 -56 -160


1 0 0
0 1 0

B=

1
0
0

C=

0 1 0

D=

Y (s ) 25.04 s+5.008
b) = 3
U ( s) s +5.03247 s2 +25.1026 s +5.008
clear
clc
num=[25.04 5.008];
den=[1 5.03247 25.1026 5.008];
a=tf(num,den)
[A,B,C,D]=tf2ss(num,den)
A=

-5.0325 -25.1026 -5.0080


1.0000 0 0
0 1.0000 0

B=

1
0
0

6
C=

0 25.0400 5.0080

D=

Y 1 (s) 2⋅ s+ 3
c) = 2
U (s) s +0.1 s+ 1
Y 2 (s) s 2+2 ⋅ s+1
=
U (s) s2 +0.1 s +1

II. Considere las siguientes representaciones en el espacio de


estados y con el uso del comando MATLAB ss2tf obtenga sus
funciones de transferencia escribiendo tanto el programa
MATLAB como los resultados obtenidos:
a) Sistema 1:

clear
[][ x1

x2
= 0 1 x1 0 [ y ] =[ 0 1 ] x 1
+ u
−0.4 −1.3 x 2 1 ][ ] [ ] x2 []
clc
A=[0 1; -0.4 -1.3];
B=[0;1];
C=[0 1];
D=0
[num,den]=ss2tf(A,B,C,D);
FT=tf(num,den)
s
FT = 2
s +1.3 s +0.4

b) Sistema 2:

[][
x1
• = 0 1 x 1 + 1 1 u1
x2 −25 −4 x 2 0 1 u2
][ ] [ ][ ]
[ yy ]=[ 10 01 ][ xx ]+[ 00 00][ uu ]
1

2
1

2
1

7
>> A=[0 1;-25 -4];
>> B=[1 1;0 1];
>> C=[1 0;0 1];
>> D=[0 0;0 0];
>> step(A,B,C,D)
>> B1=[1;0];
>> B2=[1;1];
>> C1=[1 0];
>> C2=[0 1];
>> D=0;
>> [num1,den1]=ss2tf(A,B1,C1,D)
>> [num2,den2]=ss2tf(A,B2,C2,D)

Y 1 ( s) s+ 4
= 2
U s s + 4 s+ 25
( )
Y 2 ( s) s−25
= 2
U ( s ) s +4 s+ 25

c) Sistema 3:

clear
[][
x1

x2 1
x
0 x2 0 ][ ] [ ]
x1
2
[]
= −1 −1 1 + 1 [ u ] y= [ 1 2 ] x + [ 0 ] [ u ]

clc
A=[-1 -1; 1 0];
B=[1;0];
C=[1 2];
D=0;
[num,den]=ss2tf(A,B,C,D);
FT=tf(num,den)
s+2
F ( t )= 2
s +s +1

III. De respuesta a la siguiente interrogante:

¿A que atribuyes que la representación en el espacio de estados


del siguiente sistema proporcione la misma función de

8
transferencia del ejercicio propuesto en la introducción de esta
práctica, cuando se analizó el uso de la función ss2tf?

[][
x1
• = 0 1 x 1 + 0 u y= [ 10 0 ] x 1 + [ 0 ] u
x2 −3 −4 x 2 1
][ ] [ ] x2 []
y (s ) 10
=
u (s ) s2 +4 s +3
Esto es así por que la matriz A es la transpuesta del
sistema original del ejemplo de introducción; al igual
que la matriz B y C

IV. Genere en SIMULINK el siguiente modelo en el espacio de


estados:

Siendo los valores de cada bloque los siguientes:

 G 1 ( s)=0.4 ; [Gain]

 G2 ( s): [State Space].

9

[][
x1

x2
= 0 1 x1 0 y= [ 0 1 ] x1
][ ] [ ]
+ u
−0.4 −1.3 x 2 1 x2 []
 H 2 ( s): [State Space 1]

[][
x1

x2
x x1
= −2 0 1 + 1 u y= [ 0 10 ] x
1 0 x2 0][ ] [ ] 2
[]
 H 1 ( S)=1

 Simule el modelo en el espacio de estados, especificando el


procedimiento de simulación al seleccionar Parameters del menú
Simulation de la ventana de trabajo: Escoja solver como el algoritmo
de simulación, introduzca 0 para star time 10.

 Ahora convertir los bloques en el espacio de estados “G 2 ( s) y H 2 (s)”


en bloques de función de transferencia usando la función
[num,den]=ss2tf(A,B,C,D) luego simule el modelo en SIMULINK
10
llamado “modelo de bloques”. Finalmente pida una simulación
directamente de la ventana de trabajo sin especificar parámetros de
simulación.

 Compare ambas respuestas en el osciloscopio y de responda el


siguiente cuestionamiento:
¿Ambas respuestas observadas en la ventana del osciloscopio son
similares o diferentes, sus escalas en ambos ejes son iguales o
diferentes y, los tiempos de simulación son iguales o diferentes?
Ambas respuestas son iguales ya que a pesar de que una es con
espacios de estado y la otra es con funciones de transferencia, la
respuesta del sistema es la misma, ya que son las mismas entradas,
solamente expresadas diferente

11
V. Considere el siguiente sistema en el espacio de estados:

[][
x1
• = 0 1 x 1 + 1 1 u1 y 1 = 1 0 x1 + 0 0 u1
][ ] [ ][ ] [ ] [ ][ ] [ ][ ]
x2 −25 −4 x 2 0 1 u2 2
y 0 1 x2 0 0 u2

 Genere un código en MATLAB que obtenga la curva de respuesta ante


una señal escalón unitario, con el uso del comando step.
 Conteste el siguiente cuestionamiento:
1) ¿Cuántas curvas de respuesta al escalón unitario se obtienen?
Se obtienen 4 curvas de respuestas.

12
2) ¿Qué puedes decir del comportamiento de la curva de respuesta
obtenida o de las curvas de respuestas obtenidas? Que son 2
respuestas de salida diferentes ante 2 entradas diferentes,
ambas curvas son la misma pero con un comportamiento inverso
3) ¿Cómo se obtiene la función de transferencia o las funciones de
transferencias de cada una de las respuestas observadas?
¿Cuál es o cuáles son estas? Separando las entradas y salidas
en el sistema se pueden obtener las funciones de transferencia
por separado de cada una de las respuestas según la entrada,
las funciones son las siguientes:
Y 1 ( s) s+ 4
= 2
U s s + 4 s+ 25
( )

13
Y 2 ( s) s−25
= 2
U s s +4 s+ 25
( )

4) No olvidar mostrar el código, que muestre: Titulo, etiquetas en el


eje x e y, color y textura en la respuesta del punto anterior.
>> A=[0 1;-25 -4];
>> B=[1 1;0 1];
>> C=[1 0;0 1];
>> D=[0 0;0 0];
>> step(A,B,C,D)
>> B1=[1;0];
>> B2=[1;1];
>> C1=[1 0];
>> C2=[0 1];
>> D=0;
>> [num1,den1]=ss2tf(A,B1,C1,D)

num1 =

0 1 4

den1 =

1.0000 4.0000 25.0000

>> [num2,den2]=ss2tf(A,B2,C2,D)

num2 =

14
0 1 -25

den2 =

1.0000 4.0000 25.0000

>> FT1=tf(num1,den1)

FT1 =

s+4
--------------
s^2 + 4 s + 25

Continuous-time transfer function.

>> FT2=tf(num2,den2)

FT2 =

s - 25
--------------
s^2 + 4 s + 25

Continuous-time transfer function.

VI. Con el uso de los comandos series, parallel y feedback (si se


requieren) genere un código, que obtenga la función de
transferencia del siguiente sistema representado en el especio de

15
estados a través del diagrama en SIMULINK que se muestra a
continuación:

>> g1=0.4;
>> A=[0 1;0 -2];
>> B=[0;100];
>> C=[1 0];
>> D=0;
>> [num1,den1]=ss2tf(A,B,C,D);
>> A1=[-4 -1;3 -1];
>> B1=[1;1];
>> C1=[1 0];
>> [num2,den2]=ss2tf(A1,B1,C1,D);
>> G1=tf(num1,den1)
>> H1=tf(num2,den2)
>> Gt=series(g1,G1);
>> Gt=feedback(G1,H1);
>> Gs=series(g1,Gt);
>> Cs=feedback(Gs,1)

40 s 2 +200 s+ 280
C ( s) =
s 4 +7 s 3 +57 s 2+ 314 s +280

16
VII. Use la forma manual “G(s)=C ¿” para obtener del espacio de
estados del punto V la función de transferencia o las funciones de
transferencias. ¿Obtuvo la misma respuesta del punto V.3?
>> A=[0 1;-25 -4];
>> B1=[1;0];
>> B2=[1;1];
>> C1=[1 0];
>> C2=[0 1];
>> D=0;
>> syms s;
>> sI=[s 0;0 s];
>> sima=sI-A;
>> isima=inv(sima);
>> G1=C1*isima*B1+D
>> G2=C2*isima*B2+D
Si son diferentes por que use el comando de variable simbólica como se ve en el
código y se ven diferentes los resultados
G1 =

(s + 4)/(s^2 + 4*s + 25)


G2 =

s/(s^2 + 4*s + 25) - 25/(s^2 + 4*s + 25)

Actividad complementaria

Dado el siguiente sistema representado en el espacio de estados:

17
0 1 0 0 0
A=
[
−4
0
0
−2
0
0
0
2
1
1 −4 −2
] [] B= 1 C=
0
0
1 0 0 0
[
0 0 1 0 ] D= [ 00]

a) A través de un código MATLAB graficar sus respuestas ante una señal


escalón unitaria de amplitud de una unidad “μ(t )=1”.

b) Las gráficas obtenidas, deberán aparecer impresas en una sola ventana de


gráficos con su etiqueta respectiva (y1, y2). Para hacer esto utilice el
comando gtext como se muestra a continuación: >>gtext(‘etiqueta’) este
comando posiciona el texto con el Mouse. Ubique el apuntador del Mouse

18
en la posición en donde se desee que se encuentre la etiqueta. También no
olvidar: Titulo, etiquetas en el eje x e y, y color.
c) Obtener sus funciones de transferencias.

Gs1 =

s^2 + 2 s + 4
--------------------------------
s^4 + 4 s^3 + 10 s^2 + 16 s + 16
Gs2 =

s
--------------------------------
s^4 + 4 s^3 + 10 s^2 + 16 s + 16
d) No olvidar mostrar el código.
>> A=[0 1 0 0;-4 -2 0 2;0 0 0 1;0 1 -4 -2];
>> B=[0;1;0;0];
>> C1=[1 0 0 0];
>> C2=[0 0 1 0];
>> C=[1 0 0 0;0 0 1 0];
>> [num,den]=ss2tf(A,B,C1,0);
>> [num1,den1]=ss2tf(A,B,C2,0);
>> Gs1=tf(num,den)
>> Gs2=tf(num1,den1)

VIII. Explique cada comando utilizado en la práctica. Para precisar


cada una de las respuestas utilice el “help” de la ventana de
comandos.

19
Se uso mucho el comando ss2tf para transformar espacios de
estados a funciones de transferencia, que en mi caso es mas fácil de
manipular
También use el comando step que somete al sistema ante una señal
de escalón unitario.

CONCLUSIONES
Realizar una conclusión final relacionada con los resultados obtenidos en la
práctica de manera individual
Zepeda Saborio Jose Guillermo
En mi caso el desarrollo de la practica me apoyo a reforzar el uso de algunos
comandos que usamos al inicio del semestre, aun que ahora aplicados a sistemas
mas complejos o con mas salidas y entradas, además aprendimos a usar de
manera efectiva los comandos para transformar sistemas en espacios de estados
a funciones de transferencia y viceversa, además de identificar cuando es mas
fácil trabajar con una forma y con la otra, se puede identificar también de manera
fácil cuantas entradas y salidas tiene el sistema en la representación en espacios
de estados, ya que dependiendo del numero de columnas en B son la cantidad de
entradas al sistema y la cantidad de filas en C es la cantidad de salidas del
sistema..
Martinez Alberto Ricardo
Conforme vamos avanzando notó la importancia de los comandos que vimos al
inicio de las prácticas y el cómo ya es más fácil identificarlos además estás nos
pueden ayudar si sabemos usarlas en sistemas más complejos y el punto de todo
esto es poder llegar a una solución lo más fácil posible o realizando el menor
trabajo posible claro sin cambiar la calidad de los trabajos con la ayuda de estas
herramientas
Sánchez Olguin Alexis Damian
Siempre en estas practicas sirve para desenvolvernos y poner en práctica la teoría
vista en clase, en prácticas establecidas para la clase. En esta ocasión con
múltiples entradas y salidas de un sistema MiMO las cuales se pueden resolver de
20
manera analítica y algunos otros solamente de manera numérica. Esta
representación de sistema permite una formulación sencilla de problemas de
optimización dinámica.

Es importante tomar en cuenta las siguientes recomendaciones:

1. Los códigos y los diagramas de simulación deben ser en el entorno


respectivo de MATLAB y/o SIMULINK.

2. Cada equipo debe entregar impreso los resultados obtenidos del


desarrollo de la práctica, sin consideraciones teóricas.

3. Las conclusiones y comentarios del desarrollo de la practica deberán


ser individuales.

4. Fecha de envío a través del correo escarafa60@gmail.com es


antes del ½ día del próximo lunes 7 de junio.

21

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy