0% encontró este documento útil (0 votos)
42 vistas9 páginas

Análisis de Sistemas de Control con MATLAB

Guia basica de matlab

Cargado por

Alan Romero
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
42 vistas9 páginas

Análisis de Sistemas de Control con MATLAB

Guia basica de matlab

Cargado por

Alan Romero
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

1

Facultad de Ingeniería.
Escuela de Electrónica.
Asignatura: Sistemas de Control Automático SCO101.

Matlab en los Sistemas de Control Automático

Competencia
● Desarrolla soluciones con base en la tecnología electrónica y mediante el uso tanto de dispositivos
programables como discretos y el diseño electrónico (Ing. Biomédica).
● Crea soluciones a problemas de instrumentación y control de sistemas de producción industrial (Ing.
Automatización).
● Soluciona problemas en ingeniería que implican la integración de diferentes ramas del conocimiento,
como mecánica, eléctrica, electrónica e informática industrial, tanto en el área de planeación de plantas
industriales como en el de diseño de equipo mecatrónico (Ing. Mecatrónica).

Sub competencia

● Analiza sistemas de control automático utilizando las herramientas Matlab.


● Obtiene datos útiles de un sistema de control utilizando las herramientas Matlab.

Indicador de logro

● Crea funciones de transferencia a partir de sus expresiones polinómicas o de sus polos y ceros.
● Determina los parámetros de un sistema de segundo orden.
● Genera gráficos de la respuesta de un sistema en el dominio del tiempo cuando se le aplican señales escalón
unitario y señal impulso.
● Utiliza los comandos “series” y “feedback” para la reducción de diagramas de bloques.

Materiales y equipo

● 1 Computadora con MATLAB instalado


Introducción teórica

Aunque la teoría de los sistemas de control automático se desarrolló desde hace tiempo, en años recientes, el
análisis y diseño de sistemas de control han sido modificados dramáticamente por la proliferación de las
computadoras y el software que resuelve problemas matemáticos. Un buen ejemplo de software matemático que
se puede aplicar a los temas de control automático es MATLAB.

MATLAB es un lenguaje similar al lenguaje C. Algunas de sus características más notables son:

● La programación es relativamente sencilla (similar al lenguaje C).


● Hay continuidad entre valores enteros, reales y complejos.
● La amplitud de intervalo y la exactitud de los números son mayores que otros lenguajes similares.
● Cuenta con una muy buena biblioteca matemática.
● Abundantes herramientas gráficas, incluidas funciones de interfaz gráfica con el usuario.
● Capacidad de vincularse con los lenguajes de programación tradicionales.
● Transportabilidad de los programas escritos en MATLAB.

MATLAB cuenta con una herramienta para realizar simulaciones en un entorno gráfico usando diagramas de
bloque para sistemas de multidominio y el diseño basado en modelos. Admite el diseño y la simulación a nivel de
sistema, la generación automática de código y la prueba y verificación continuas de los sistemas embebidos.

La biblioteca matemática de MATLAB facilita los análisis matemáticos. Además, el usuario puede crear rutinas
matemáticas adicionales con mucha mayor facilidad que en otros lenguajes de programación, gracias a la
continuidad entre las variables reales y complejas. Entre las numerosas funciones matemáticas, los solucionadores
de álgebra lineal desempeñan un papel crucial; de hecho, todo el sistema MATLAB se basa en estos
solucionadores.

IMPORTANCIA DE LAS GRÁFICAS


El análisis visual de los problemas matemáticos ayuda a comprender las matemáticas y a hacerlas más asequibles.
Aunque esta ventaja es bien conocida, la presentación de resultados calculados con gráficos de computadora solía
requerir un esfuerzo adicional considerable. Con MATLAB, en cambio, bastan unos cuantos comandos para
producir presentaciones gráficas del material matemático. Es posible crear objetos gráficos científicos e incluso
artísticos en la pantalla mediante expresiones matemáticas.
Procedimiento

PRIMERA PARTE: DECLARACIÓN DE FUNCIONES DE TRANSFERENCIA Y REDUCCIÓN DE


DIAGRAMAS DE BLOQUES.

En MATLAB, se pueden representar funciones de transferencia utilizando diferentes formatos. Algunos de los
formatos comunes utilizados para expresar funciones de transferencia en MATLAB son los siguientes:

1. Formato de polinomios.
Se puede representar una función de transferencia utilizando los coeficientes de los polinomios del numerador y
denominador. Por ejemplo, para una función de transferencia 𝐺(𝑠) = (𝑠 + 2) / (𝑠^2 + 3𝑠 + 5), se puede
expresar en MATLAB de la siguiente manera:

num = [1 2];
den = [1 3 5];
G = tf(num, den);

una variante de este formato es definir primero la variable “s” como función de transferencia y luego escribir la
ecuación correspondiente, de la siguiente manera:

s = tf(‘s’);
G = (s + 2) / (s^2 + 3s + 5)

2. Formato de ceros y polos (forma factorizada).


Se puede representar una función de transferencia especificando los valores de los ceros y polos. Por ejemplo, para
una función de transferencia 𝐺(𝑠) = (𝑠 + 1) / (𝑠 − 2)(𝑠 + 3), se puede expresar en MATLAB de la siguiente
manera:

zeros = [-1];
poles = [2 -3];
G = zpk(zeros, poles, 1);

3. Formato de coeficientes parciales de fracciones simples (no se utilizará en esta guía)


4. Formato de matriz de estado (no se utilizará en esta guía)

5. A continuación, se declaran las diferentes funciones de transferencia de los bloques de la Figura 1.

Figura 1. Sistema de control realimentado

Escriba en la ventana de comandos de Matlab la primera línea de comandos y presione Enter, luego la segunda
línea y Enter y así sucesivamente hasta declarar todos los bloques.

s =tf('s');
G1 = 12.5
G2 = 1/(s + 1)
G3 = 1/s
H2 = 0.178
H1 = 1

Ya declarados todos los bloques hay que interconectados para que formen el sistema, eso se hace con los comandos
“series” y “feedback”.
Note que G1 y G2 están conectados en serie, por lo tanto, se escribirá en la ventana de comandos:

G12 = series(G1, G2)

Se ha creado un nuevo bloque G12 que contiene a G1 y G2.


Note que H2 forma una retroalimentación con G12, por lo que para hacer la reducción escribirá:
M1 = feedback(G12, H2, -1)

Note que M1 está en serie con G3, por tanto:

G = series(M1, G3)

Note que H1 forma una retroalimentación con G, por lo que para hacer la reducción escribirá:

M = feedback(G, H1, -1)

SEGUNDA PARTE: POLOS Y CEROS DE UNA FUNCIÓN DE TRANSFERENCIA.

En el análisis de sistemas de control es muy útil conocer la ubicación de los polos y ceros del sistema, hay un
comando de Matlab que los encuentra.
6. A continuación, se declara la siguiente función de transferencia de lazo abierto 𝐺𝑎:

den = [3 5 2 1]
num = [0 0 3 2]
Ga = tf(num,den)

El resultado debe ser:


3s+2
-----------------------
3 s^3 + 5 s^2 + 2 s + 1

Para encontrar el valor de los polos y ceros del sistema se usa el comando que se basa en la declaración anterior
de “num” y “den”:

[z,p,k] = tf2zp(num,den)

El resultado es el siguiente:

z=
-0.6667

p=

-1.3563 + 0.0000i
-0.1552 + 0.4708i
-0.1552 - 0.4708i

k=

¿Cómo se interpreta el resultado?

Una función de transferencia, declarada en término de sus polos y ceros tiene la forma:

Para el ejemplo indica que la función de transferencia tiene un cero en 𝑆 = −0.667, tienen tres polos, uno real
en 𝑆 = 1.3563 y dos complejos conjugados en 𝑆 = −0.1552 + 𝑗0.4708 y 𝑆 = −0.1552 − 𝑗0.4708 y
además la constante 𝐾 = 1.

7. Así como se puede declarar una función de transferencia como dos polinomios, es posible hacerlo en término
de sus polos y ceros. Por ejemplo, si se desea tener una función que contenga un cero en 𝑆 = −8, dos polos en
𝑆 = −4 y 𝑆 = −5, además la constante 𝐾 = 3.
Z = [-8];
P = [-4 -5];
K=3;
Gb = zpk(Z,P,K)
El resultado es:

3 (s+8)
-----------
(s+4) (s+5)

La función Gb en términos de polos y ceros, pero también se puede trasformar en términos de polinomios con el
siguiente comando:
[num,den] = zp2tf(Z,P,K)

El resultado:

num =

0 3 24

den =

1 9 20

8. Anteriormente se trabajó con la función M(s)

12.5
𝑀(𝑠) =
𝑆2 + 3.22 ∙ 𝑆 + 12.5

Esta es una función de segundo orden que está definida por los parámetros frecuencia de oscilación no amortiguada
𝜔𝑛 (𝑟𝑎𝑑/𝑠𝑒𝑔) y el factor de amortiguamiento 𝜁 (damping).

Con el siguiente comando se obtiene la información de los polos, factor de amortiguamiento, frecuencia de
oscilación no amortiguada y constante de tiempo del sistema:

damp(M)

Pole Damping Frequency Time Constant


(rad/seconds) (seconds)
-1.61e+00 + 3.15e+00i 4.56e-01 3.54e+00 6.20e-01
-1.61e+00 - 3.15e+00i 4.56e-01 3.54e+00 6.20e-01

Los polos están ubicados en 𝑆 = −1.61 + 𝑗3.15 y 𝑆 = −1.61 − 𝑗3.15, el factor de amortiguamiento es
de 0.46 y la frecuencia de oscilación no amortiguada 3.54 𝑟𝑎𝑑 / 𝑠𝑒𝑔.

TERCERA PARTE: GRAFICOS.

9. En el análisis de los sistemas de control es importante poder obtener gráficos de las funciones, por ejemplo, se
puede graficar la ubicación de los polos y ceros de la función con el comando “pzmap”
Digite en la ventana de comandos:

pzmap(M)

Se debe abrir una nueva venta en la que podrá observar la ubicación. Si coloca el puntero sobre alguno de los polos
podrá observar importante información sobre el mismo.
En el caso de M(s) ¿qué información le entrega? __________________________________________

Anteriormente se declaró la función Ga(s), usando el comando pzmap grafique sus polos y ceros. Note que en la
imagen se muestran tres polos y un cero.

10. También es útil observar la respuesta en el tiempo al aplicar una señal escalón unitario, con el comando “step”

step(M)

Repita el proceso con la función 𝐺𝑎.


En el caso de 𝐺𝑎(𝑠) ¿qué información le entrega? __________________________________________

Ejercicios

1. Para la siguiente función de transferencia G(s) de 2° orden encuentre los parámetros que lo definen:
2.6
𝐺(𝑠) =
3𝑠 2 + 0.8𝑠 + 1.2
2. Para el sistema anterior 𝐺(𝑠) encuentre los polos, los ceros y la constante K.
3. Para el sistema anterior 𝐺(𝑠) encuentre la respuesta ante una entrada escalón unitario
4. Si la función de transferencia anterior 𝐺(𝑠) es parte de un sistema de lazo cerrado con retroalimentación
unitaria, encuentre 𝑀(𝑠).

Bibliografía

● Ogata, K., (2010), Ingeniería de Control Moderna, Madrid, España: Pearson Educación, S.A.
● Nakamura, S., (1998). Análisis Numérico y Visualización Gráfica con Matlab, México, México: Prentice
Hall.
● Archivo mason.m, Recuperado en diciembre de 2016 de:
[Link]

También podría gustarte