Está en la página 1de 11

PRÁCTICA Nº 3

ANÁLISIS DE LA RESPUESTA TRANSITORIA DE SISTEMAS CONTINUOS.

OBJETIVO:

Utilizar el paquete MATLAB para obtener la respuesta transitoria de sistemas


continuos a las señales estándar de prueba.

Utilizar el paquete CC para obtener la respuesta transitoria de sistemas continuos


a las señales estándar de prueba.

Determinar las especificaciones de respuesta transitoria.

Comparar los dos paquetes y mencionar las diferencias.

INTRODUCCIÓN:

La respuesta temporal de un sistema está formada por la respuesta transitoria y la


respuesta permanente o estacionaria.

Para analizar un sistema se estudia su respuesta a las señales estándar de


prueba que son la señal impulso unitario, escalón unitario y rampa.

La respuesta transitoria a las señales de prueba se utiliza frecuentemente para


investigar las características en el dominio temporal de los sistemas de control.
Las características de respuesta transitoria tales como tiempo de subida, tiempo
de pico, máximo sobreimpulso, tiempo de asentamiento y error en estado
estacionario se pueden determinar a partir de la respuesta a una señal escalón
unitario.

Respuesta al escalón unitario.

Si se conocen el numerador y el denominador de la función de transferencia en


lazo cerrado las instrucciones:

𝑠𝑡𝑒𝑝(𝑛𝑢𝑚, 𝑑𝑒𝑛) y 𝑠𝑡𝑒𝑝(𝑛𝑢𝑚, 𝑑𝑒𝑛, 𝑡)

1
generarán las gráficas de respuesta a un escalón unitario. (El parámetro t en la
orden step es el tiempo especificado por el usuario).

Ejemplo 1: Obtener la respuesta temporal de un sistema a una entrada escalón


unitario a partir de su función de transferencia.

Sea el sistema:

𝐶(𝑠) 25
= 2
𝑅(𝑠) 𝑠 + 4𝑠 + 25

El programa en MATLAB para obtener esta respuesta es:

%-------------Respuesta a un escalón unitario de una función de transferencia-------

%-----------Introduzca el numerador y el denominador de la F. de T.--------

𝑛𝑢𝑚 = [0 0 25];

𝑑𝑒𝑛 = [1 4 25];

%-------Introduzca la siguiente instrucción-----------------

𝑠𝑡𝑒𝑝(𝑛𝑢𝑚, 𝑑𝑒𝑛)

%----------Introduzca la rejilla y el título de la gráfica-------------

grid

title (‘Respuesta al escalón unitario de G(s) = 25/(s^2+4s+25)’)

Ejemplo 2: Dada la F. de T. de un sistema de control obtenga su respuesta a una


señal escalón unitario.

𝐶(𝑠) 6.3223𝑠 2 + 18𝑠 + 12.8112


= 4
𝑅(𝑠) 𝑠 + 6𝑠 3 + 11.3223𝑠 2 + 18𝑠 + 12.8112

Obtener una gráfica de la curva de respuesta marcada con ‘o’

Las instrucciones que deben utilizarse son:

2
%--------------------Respuesta a un escalón unitario----------

%************si se desea representar la respuesta a un escalón unitario con marcas

%’o’, ‘x’, ‘—‘, etc, utilice el siguiente programa**********

%*****Introduzca el numerador y el denominador de la función de transferencia en


%lazo cerrado*****

𝑛𝑢𝑚 = [0 0 6.3223 18 12.8112];

𝑑𝑒𝑛 = [1 6 11.3223 18 12.8112];

%*****Introduzca la siguiente instrucción para la respuesta y representación


%gráfica*****

[𝑐, 𝑥, 𝑡] = 𝑠𝑡𝑒𝑝(𝑛𝑢𝑚, 𝑑𝑒𝑛); 𝑝𝑙𝑜𝑡(𝑡, 𝑐,′ 𝑜′ )

%**Introduzca la rejilla, título de la gráfica y etiquetas para los ejes x e y**

𝑔𝑟𝑖𝑑

𝑡𝑖𝑡𝑙𝑒(′𝑅𝑒𝑠𝑝𝑢𝑒𝑠𝑡𝑎 𝑎𝑙 𝑒𝑠𝑐𝑎𝑙ó𝑛 𝑢𝑛𝑖𝑡𝑎𝑟𝑖𝑜′ )

𝑥𝑙𝑎𝑏𝑒𝑙(′𝑡 𝑠𝑒𝑔′ )

𝑦𝑙𝑎𝑏𝑒𝑙(′𝑠𝑎𝑙𝑖𝑑𝑎 𝑐 ′ )

Ejemplo 3: Sea un sistema mecánico masa-resorte-amortiguador, donde m = 1 kg,

B = 3 N-s/m, y k = 2 N/m. Suponga que en t = 0 se tira de la masa m hacia debajo


de forma que x (0) = 0.1 m y x’(0) = 0.05 m/s. Obtenga la gráfica del movimiento
de la masa sujeta a la condición inicial. (Suponga que no existe función forzante
externa).

La ecuación para el sistema es:

𝑚𝑥̈ + 𝑏𝑥̇ + 𝑘𝑥 = 0
𝑚
Con las condiciones iniciales 𝑥(𝑜) = 0.1 𝑚 𝑦 𝑥 ′ (0) = 0.05 𝑠

3
La transformada de Laplace de la ecuación del sistema es:

𝑚[𝑠 2 − 𝑠𝑥(0) − 𝑥̇ (0)] + 𝑏[𝑠𝑋(𝑠) − 𝑥(0)] + 𝑘𝑋(𝑠) = 0

(𝑚𝑠 2 + 𝑏𝑠 + 𝑘)𝑋(𝑠) = 𝑚𝑥(0) + 𝑚𝑥̇ (0) + 𝑏𝑥(0)

Resolviendo esta ecuación para 𝑋(𝑠) y sustituyendo los valores numéricos se


obtiene:

𝑚𝑥(0)𝑠 + 𝑚𝑥̇ (0) + 𝑏𝑥(0) 0.1𝑠 + 0.35


𝑋(𝑠) = = 2
𝑚𝑠 2 + 𝑏𝑠 + 𝑘 𝑠 + 3𝑠 + 2
Esta ecuación se puede escribir como:

0.1𝑠 2 + 0.35𝑠 1
𝑋(𝑠) = 2
𝑠 + 3𝑠 + 2 𝑠
Por lo tanto, el movimiento de la masa m se puede obtener como la respuesta al
escalón unitario del sistema:

0.1𝑠 2 + 0.35𝑠
𝑋(𝑠) =
𝑠 2 + 3𝑠 + 2

El programa en MATLAB que dará una gráfica del movimiento de la masa es:

%-----Respuesta de un sistema a condiciones iniciales-----

𝑛𝑢𝑚 = [0.1 0.35 0];

𝑑𝑒𝑛 = [1 3 2];

%***Introduzca la siguiente instrucción de respuesta al escalón unitario***

𝑠𝑡𝑒𝑝(𝑛𝑢𝑚, 𝑑𝑒𝑛);

%***Introduzca la rejilla y el título de la gráfica***

𝑔𝑟𝑖𝑑

title(‘Respuesta del sistema masa-resorte-amortiguador a condiciones iniciales’)

4
Respuesta impulsional o al impulso unitario.

La idea básica es que, cuando las condiciones iniciales son cero, la repuesta a un
impulso unitario de 𝐺(𝑠) es la misma que la respuesta a un escalón unitario de
𝑠𝐺(𝑠).

Para obtener la respuesta a un impulso unitario del sistema:

𝐶(𝑠) 1
= 𝐺(𝑠) =
𝑅(𝑠) 𝑠+1

Como 𝑅(𝑠) = 1 para obtener la respuesta impulsional, se tiene:

𝐶(𝑠) 1 𝑠 1
= 𝐺(𝑠) = =( )
𝑅(𝑠) 𝑠+1 𝑠+1 𝑠

De esta manera se convierte la respuesta a un impulso unitario de 𝐺(𝑠) en la


respuesta a un escalón unitario de 𝑠𝐺(𝑠). Si se introducen el numerador y
denominador siguientes en el programa MATLAB

𝑛𝑢𝑚 = [1 0]

𝑑𝑒𝑛 = [1 1]

y utilizamos la instrucción de respuesta a un escalón unitario, se obtiene una


gráfica de la respuesta a un impulso unitario del sistema.

%---Respuesta a un impulso unitario---

%***Para obtener la respuesta a un impulso unitario de un sistema de primer


%orden G(s)=1/(s+1), se multiplica s por G(s) y se utiliza la instrucción de
%respuesta a un escalón unitario***

%***Introduzca el numerador y el denominador de sG(s)***

𝑛𝑢𝑚 = [1 0];

𝑑𝑒𝑛 = [1 1];

%***Introduzca la instrucción de respuesta a un escalón unitario***

𝑠𝑡𝑒𝑝(𝑛𝑢𝑚, 𝑑𝑒𝑛)

𝑔𝑟𝑖𝑑

5

𝑡𝑖𝑡𝑙𝑒(′𝑅𝑒𝑠𝑝𝑢𝑒𝑠𝑡𝑎 𝑎 𝑢𝑛 𝑖𝑚𝑝𝑢𝑙𝑠𝑜 𝑢𝑛𝑖𝑡𝑎𝑟𝑖𝑜 𝑑𝑒 𝐺(𝑠) = 1⁄(𝑠 + 1) )

Respuesta a una señal rampa.

Para obtener la respuesta a una entrada rampa de la función de transferencia del


sistema 𝐺(𝑠), divida 𝐺(𝑠) por 𝑠 y utilice la instrucción de respuesta a un escalón
unitario, por ejemplo, dado es sistema cuya función de transferencia de lazo
cerrado está dada por:

𝐶(𝑠) 𝜔𝑛2
= 2
𝑅(𝑠) 𝑠 + 2𝜉𝜔𝑛 𝑠 + 𝜔𝑛2
1
Para una entrada rampa se tiene que 𝑅(𝑠) = .Por lo tanto su salida está dada
𝑠2
por:

1
𝐶(𝑠) =
𝑠2 +𝑠+1
Por lo tanto su salida está dada por:

1 1 1 1
𝐶(𝑠) = =
𝑠2 + 𝑠 + 1 𝑠2 (𝑠 2 + 𝑠 + 1)𝑠 𝑠

Una vez que se ha obtenido la gráfica deseada es posible escribir texto en la


pantalla para lo que se utiliza la siguiente instrucción:

𝑡𝑒𝑥𝑡(3.4, −0.6, 𝑔𝑟á𝑓𝑖𝑐𝑎1′ )

Con esta instrucción se escribe ‘gráfica 1’, empezando en las coordenadas x=3.4,
y=-0.06.

Otra forma de escribir un texto o textos en una gráfica es utilizar el comando


𝑔𝑡𝑒𝑥𝑡. La sintaxis es:

𝑔𝑡𝑒𝑥𝑡(′𝑡𝑒𝑥𝑡 ′ )

Cuando se ejecuta gtext, la computadora espera hasta que el cursor se posiciona


(utilizando el ratón) en la posición deseada. Cuando se pulsa el botón izquierdo
del ratón, el texto encerrado en comillas simples se escribe en el en el dibujo en la
posición señalada por el cursor.

Dado el sistema de segundo orden:


6
𝐶(𝑠) 𝜔𝑛2
= 2
𝑅(𝑠) 𝑠 + 2𝜉𝜔𝑛 𝑠 + 𝜔𝑛2

Que recibe el nombre de sistema de segundo orden estándar. Dadas 𝜔𝑛 𝑦 𝜉, el


comando:

𝑝𝑟𝑖𝑛𝑡𝑠𝑦𝑠(𝑛𝑢𝑚, 𝑑𝑒𝑛) o 𝑝𝑟𝑖𝑛𝑡𝑠𝑦𝑠(𝑛𝑢𝑚, 𝑑𝑒𝑛, 𝑠)

imprime 𝑛𝑢𝑚⁄𝑑𝑒𝑛como un cociente de polinomios en s.

Por ejemplo si 𝜔𝑛 = 5𝑟𝑎𝑑/𝑠𝑒𝑔 y 𝜉 = 0.4, el programa de MATLAB que genera la


función de transferencia en la forma estándar es:

𝜔𝑛 = 5;

𝑑𝑎𝑚𝑝𝑖𝑛𝑔𝑟𝑎𝑡𝑖𝑜 = 0.4;

[𝑛𝑢𝑚0, 𝑑𝑒𝑛] = 𝑜𝑟𝑑2(𝜔𝑛 , 𝑑𝑎𝑚𝑝𝑖𝑛𝑔𝑟𝑎𝑡𝑖𝑜 );

𝑛𝑢𝑚 = 5^2 ∗ 𝑛𝑢𝑚0;

𝑝𝑟𝑖𝑛𝑡𝑠𝑦𝑠𝑡(𝑛𝑢𝑚, 𝑑𝑒𝑛,′ 𝑠 ′ )
𝑛𝑢𝑚
𝑑𝑒𝑛
𝑛𝑢𝑚⁄
𝑑𝑒𝑛 =
25
𝑠2 + 4𝑠 + 25

También es posible obtener la gráfica de respuesta al escalón unitario en tres


dimensiones usando el comando “mesh”

Ejemplo 4: Dada la función de transferencia de lazo cerrado dibuje las curvas de


respuesta al escalón unitario 𝐶(𝑡) cuando 𝜉 tiene los siguientes valores: 𝜉 = 0, 0.2,
0.4, 0.6, 0.8 𝑦 1.0

También dibuje una gráfica en tres dimensiones.

7
%---Gráficas bidimensional y tridimensional de la respuesta al escalón de un
%sistema de segundo orden estándar con 𝜔𝑛 = 1 y zeta = 0, 0.2, 0.4, 0.6, 0.8 y
%1.0 ---

𝑡 = 0: 0.2: 10;

𝑧𝑒𝑡𝑎 = [0 0.2 0.4 0.6 0.8 1];

𝑓𝑜𝑟 𝑛 = 1: 6;

𝑛𝑢𝑚 = [0 0 1];

𝑑𝑒𝑛 = [1 2 ∗ 𝑧𝑒𝑡𝑎(𝑛) 1];

[𝑦(1: 51, 𝑛), 𝑥, 𝑡] = 𝑠𝑡𝑒𝑝(𝑛𝑢𝑚, 𝑑𝑒𝑛, 𝑡];

𝑒𝑛𝑑

%Para representar un diagrama bidimensional, introduzca la orden plot(t,y)

𝑝𝑙𝑜𝑡(𝑡, 𝑦)

𝑔𝑟𝑖𝑑

𝑡𝑖𝑡𝑙𝑒(′𝑅𝑒𝑠𝑝𝑢𝑒𝑠𝑡𝑎 𝑎𝑢𝑛 𝑒𝑠𝑐𝑎𝑙ó𝑛 𝑢𝑛𝑖𝑡𝑎𝑟𝑖𝑜 𝑐𝑜𝑛 𝜔𝑛 = 1 𝑦 𝜁 = 0, 0.2, 0.4, 0.6, 0.8, 1′ )

𝑥𝑙𝑎𝑏𝑒𝑙(′𝑡 (𝑠𝑒𝑔)′ )

𝑦𝑙𝑎𝑏𝑒𝑙(′𝑅𝑒𝑠𝑝𝑢𝑒𝑠𝑡𝑎′ )

𝑡𝑒𝑥𝑡(4.1, 1.86, ′\𝜁 = 0′ )

𝑡𝑒𝑥𝑡(3.5, 1.5, ′0. 2′ )

𝑡𝑒𝑥𝑡(3.5, 1.24, ′0.4′)

𝑡𝑒𝑥𝑡(3.5, 1.08, ′0.6′ )

𝑡𝑒𝑥𝑡(3.5, 0.95, ′0.8′ )

𝑡𝑒𝑥𝑡(3.5, 0.86, ′1.0′ )

8
%Para representar un diagrama tridimensional, introduzca la orden mesh(t,zeta,y’)

𝑚𝑒𝑠ℎ(′𝑡, 𝑧𝑒𝑡𝑎, 𝑦 ′ )

𝑡𝑖𝑡𝑙𝑒(𝑅𝑒𝑠𝑝𝑢𝑒𝑠𝑡𝑎 𝑡𝑟𝑖𝑑𝑖𝑚𝑒𝑛𝑠𝑖𝑜𝑛𝑎𝑙 𝑎 𝑢𝑛 𝑒𝑠𝑐𝑎𝑙ó𝑛 𝑢𝑛𝑖𝑡𝑎𝑟𝑖𝑜)

𝑥𝑙𝑎𝑏𝑒𝑙(′𝑡 𝑠𝑒𝑔′ )

𝑦𝑙𝑎𝑏𝑒𝑙(′\𝑧𝑒𝑡𝑎′ )

𝑧𝑙𝑎𝑏𝑒𝑙(′𝑅𝑒𝑠𝑝𝑢𝑒𝑠𝑡𝑎′ )

Para obtener las especificaciones de respuesta transitoria el programa que puede


emplearse es:

%---Éste es un programa MATLAB para encontrar el tiempo de subida, tiempo


%pico, sobreimpulso máximo y tiempo de asentamiento del sistema de segundo
%orden y sistemas de orden superior---

%------En este ejemplo se supone que zeta = 0.6 y 𝜔𝑛 = 5-----

𝑛𝑢𝑚 = [0 0 25];

𝑑𝑒𝑛 = [1 6 25];

𝑡 = 0: 0.005: 5;

[𝑦, 𝑥, 𝑡] = 𝑠𝑡𝑒𝑝(𝑛𝑢𝑚, 𝑑𝑒𝑛, 𝑡);

𝑟 = 1; 𝑤ℎ𝑖𝑙𝑒 𝑦(𝑟) < 1.001; 𝑟 = 𝑟 + 1; 𝑒𝑛𝑑;

𝑡𝑖𝑒𝑚𝑝𝑜𝑠𝑢𝑏𝑖𝑑𝑎 = (𝑟 − 1) ∗ 0.005

𝑡𝑖𝑒𝑚𝑝𝑜𝑠𝑢𝑏𝑖𝑑𝑎 =

0.550

[𝑦𝑚𝑎𝑥, 𝑡𝑝] = max(𝑦) ;

𝑡𝑖𝑒𝑚𝑝𝑜𝑝𝑖𝑐𝑜 = (𝑡𝑝 − 1) ∗ 0.005

𝑡𝑖𝑒𝑚𝑝𝑜𝑝𝑖𝑐𝑜 =

0.7850

9
𝑠𝑜𝑏𝑟𝑒𝑡𝑖𝑟𝑜𝑚𝑎𝑥 = 𝑦𝑚𝑎𝑥 − 1

𝑠𝑜𝑏𝑟𝑒𝑡𝑖𝑟𝑜𝑚𝑎𝑥 =

0.0948

𝑠 = 1001; 𝑤ℎ𝑖𝑙𝑒 𝑦(𝑠) > 0.98 & 𝑦(𝑠) < 1.02; 𝑠 = 𝑠 − 1; 𝑒𝑛𝑑;

𝑡𝑖𝑒𝑚𝑝𝑜𝑎𝑠𝑒𝑛𝑡𝑎𝑚𝑖𝑒𝑛𝑡𝑜 = (𝑠 − 1) ∗ 0.005

𝑡𝑖𝑒𝑚𝑝𝑜𝑎𝑠𝑒𝑛𝑡𝑎𝑚𝑖𝑒𝑛𝑡𝑜 =

1.850

DESARROLLO:

a) Obtenga, usando MATLAB, la respuesta a un escalón unitario de un


sistema de segundo orden cuya función de transferencia está dada por:

𝐶(𝑠) 𝜔𝑛2
= 2
𝑅(𝑠) 𝑠 + 2𝜉𝜔𝑛 𝑠 + 𝜔𝑛2

Donde:

𝐶(𝑠) 1
= 𝐺(𝑠) = 2
𝑅(𝑠) 𝑠 + 0.2𝑠 + 1

Determine el valor de la relación de amortiguamiento 𝜉, la frecuencia natural no


amortiguada 𝜔𝑛 y determine todas las especificaciones de respuesta transitoria y
compruebe en su gráfica el valor de estos parámetros.

b) Obtenga, usando MATLAB, la respuesta a un impulso unitario del mismo


sistema.
c) Obtenga, usando MATLAB, la respuesta a una entrada velocidad (rampa
unitaria).
d) Explique, paso a paso, el programa para determinar las especificaciones de
respuesta transitoria.
e) Obtenga tanto la solución analítica como la computacional, , usando
MATLAB, de la respuesta al escalón unitario del sistema de alto orden:

𝐶(𝑠) 3𝑠 3 + 25𝑠 2 + 72𝑠 + 80


= 4
𝑅(𝑠) 𝑠 + 8𝑠 3 + 40𝑠 2 + 96𝑠 + 80

10
[Obtenga la expansión en fracciones simples de C(s) cuando 𝑅(𝑠) es una función
escalón unitario].

f) Obtenga, usando MATLAB, la curva de respuesta al escalón unitario para el


sistema de control con retroalimentación unitaria cuya función de
transferencia de lazo abierto es:

10
𝐺(𝑠) =
𝑠(𝑠 + 2)(𝑠 + 4)

NOTA: En todas las gráficas incluya texto que indique sobre la curva que es lo que
se está obteniendo.

11

También podría gustarte