1
Facultad de Ingeniería.
Escuela de Electrónica.
Asignatura: Sistemas de Control Automático SCO101.
Simulink y Matlab en los Sistemas de Control Automático
● 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).
● Analiza sistemas de control automático utilizando las herramientas Matlab y Simulink.
● Obtiene datos útiles de un sistema de control utilizando las herramientas Matlab y Simulink.
● Utiliza la herramienta simulink para obtener parámetros útiles del comportamiento de un sistema de
control.
● 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.
● 1 Computadora con MATLAB y SIMULINK instalado
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.
SIMULINK
Simulink es un entorno de diagramas de bloque para la simulación 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.
Simulink ofrece un editor gráfico, bibliotecas de bloques personalizables y solucionadores para modelar y
simular sistemas dinámicos. Se integra con MATLAB, lo que permite incorporar algoritmos de MATLAB en los
modelos y exportar los resultados de la simulación a MATLAB para llevar a cabo más análisis.
SERVOMECANISMOS.
Desde hace mucho tiempo los servomecanismos son uno de los ejemplos típicos de los sistemas
retroalimentados. Uno de los más clásicos es el que está compuesto por un control proporcional y elementos de
carga mecánica (elementos de inercia y fricción viscosa), el sistema se esquematiza en la Figura 3.1.
Figura 3.1. Esquema de un servomecanismo.
La relación matemática que define la posición angular θ (variable controlada c(t)) respecto al torque T es la
siguiente:
2
𝑑𝑐 𝑑𝑐
𝐽∙ 2 + 𝐵∙ 𝑑𝑡
= 𝑇(𝑡)
𝑑𝑡
El proceso de modelado es el siguiente:
2
𝐽∙𝑆 ∙𝐶(𝑠) + 𝐵∙𝑆∙𝐶(𝑠) = 𝑇(𝑠)
(𝐽∙𝑆 + 𝐵)∙𝑆∙𝐶(𝑠) = 𝑇(𝑠)
𝐶(𝑠) 1
𝑇(𝑠)
= (𝐽∙𝑆+𝐵)∙𝑆
𝐶(𝑠) 𝐾
𝐸(𝑠)
= (𝐽∙𝑆+𝐵)∙𝑆
El diagrama de bloque se presenta en la Figura 3.2.
Figura 3.2. Diagrama de bloques de un servomecanismo.
La función de transferencia de lazo cerrado es:
𝐶(𝑠) 𝐾
𝑅(𝑠)
= 2
𝐽∙𝑆 +𝐵∙𝑆+𝐾
El sistema anterior se puede mejorar incorporando una retroalimentación de velocidad utilizando el diagrama
que se muestra en la Figura 3.3.
Figura 3.3. Servomecanismo con retroalimentación de velocidad.
UTILIZANDO SIMULINK.
Para comenzar a utilizar Simulink primero hay que iniciar MATLAB, dando doble click en el ícono de acceso
directo del programa, luego de unos momentos se abrirá el entorno de programación de MATLAB, donde se
destaca la “Ventana de comandos” o “Command Windows” donde se escriben directamente los comandos que se
desean ejecutar y observando ahí mismo el resultado de su ejecución.
Para activar la herramienta deberá escribir directamente “simulink” en la ventana de comandos y luego de unos
momentos se abrirá la pantalla inicial del entorno de trabajo, como se muestra en Fig. 3.4, donde se destaca el
buscador de librerías en el que se encontrarán los diferentes bloques que se utilizarán para construir los modelos
que se simularán.
Fig 3.4. Entorno de trabajo de simulink.
Para iniciar una nueva simulación debe dar clic en el menú “File”, “new “y seleccione “Model”, entonces se
abrirá una nueva ventana en la que se implementará el sistema. La idea es que los bloques que se encuentran en
el buscador de librerías sean arrastrados hasta la nueva ventana y más adelante se interconectarán.
Para esta actividad se simulará un sistema muy elemental, un pequeño motor de DC y dado que sus partes
mecánicas son pequeñas se puede trabajar como un sistema de primer orden. En este motor cuando se le aplica
1.0 Volt el motor gira a 762 RPM, por lo que se utilizará esta relación para definir una función de transferencia
muy básica para comenzar a trabajar con el motor (ver Fig. 3.5).
Fig 3.5. Corte transversal de un motor de DC (tomado de Kuo B.
“Sistemas de control automático”).
Al inicio se trabajará con un sistema simple, por lo que responderá de forma instantánea a los estímulos que se le
aplican, más adelante en la actividad se añadirán otros elementos para representar fenómenos de la respuesta
transitoria.
Cuando se trabaja con motores es útil determinar algunos de sus parámetros de operación como por ejemplo el
par (N m) o la velocidad angular (rad / seg), también llamada frecuencia de giro (RPM). Para medir esta última
se usan diferentes métodos, uno de ellos implica el uso de la dínamo taquimétrica, en el que se acopla
mecánicamente el dispositivo al motor y la frecuencia de giro es transformada en voltaje (ver Fig. 3.6).
Fig 3.6. Dínamo taquimétrica acoplada a un motor de DC
(tomado de Kuo B.“Sistemas de control automático”).
Sistemas de lazo abierto.
1) Tomando como base la información en la introducción teórica active simulink y abra una ventana para
crear el modelo del motor de DC. Para esto deberá arrastrar al área de trabajo los siguientes bloques:
Elemento Librería de Simulink
Transfer Fcn Continuous
Constant Sources
Display Sinks
2) Ahora debe ajustar los parámetros de cada bloque, haciendo doble click en cada uno de ellos,
comenzando con la función de transferencia. Dado que el motor gira a 762 RPM cuando se le aplica 1.0
Volt deberá colocar en él:
• Numerator coefficients: [762]
• Denominator coefficients: [1]
3) Para funcionar el motor necesita energía que será proporcionada por el bloque Constant, por lo que
deberá ajustar un valor de 5.25, que representará la situación en la que se aplican 5.25 Volt al motor.
4) Luego de estos ajustes deberá ensamblar el sistema siguiendo la Fig. 3.7. Las conexiones entre bloques
se logra acercando el cursor a un terminal, luego se dá click y manteniendo presionado el click se
arrastra el cursor hasta el otro terminal que se va a conectar.
Nota: en este ejercicio se analiza el sistema descrito por el elemento de función de transferencia. Se
aplica valor constante de 5.25 V y en el presentador se mira la salida que el sistema produce.
Fig 3.7. Conexiones del sistema del motor.
5) Para ejecutar la simulación deberá presionar el botón circular que se encuentra en la parte de arriba de la
ventana (ver Fig. 3.7) ¿A qué velocidad gira el motor? ________
6) Dada la situación anterior, ¿qué voltaje debería aplicar al motor para que gire a 3000 RPM? ________
7) Luego de responder a la pregunta anterior modifique el Voltaje de entrada y verifique que su intuición es
correcta, de no ser así consulte con su instructor.
8) En la introducción teórica se mencionó al dínamo taquimétrico, entonces debe crear un nuevo modelo
con elementos similares a los que utilizó anteriormente, pero deberá modificarlos, tanto la función de
transferencia en la que debe colocará 1 / 1000 y en la señal de entrada al sistema 4000, que representarán
el giro del motor al que se le está midiendo la frecuencia. El sistema debe verse similar al de la Fig. 3.8.
Fig 3.8. Conexiones del sistema del dínamo taquimétrico.
9) Ejecute la simulación y verifique que los resultados son correctos ¿qué resultado obtendría si el motor
gira a 2500 RPM? ____________
10) Combine de manera coherente los dos sistemas anteriores, teniendo como señal de entrada 5.25 Volt y
observando en dos displays distintos tanto los RPM como el Voltaje. La simulación deberá tener un
aspecto similar a la Fig. 3.9.
11) Ejecute la simulación ¿al combinar los dos sistemas los resultados son los mismos que antes? ______
Fig 3.9. Conexiones del sistema de motor al dínamo taquimétrico.
Sistemas de lazo cerrado.
12) En los sistemas de control se utilizan muchos sistemas con retroalimentación, para experimentar con un
ejemplo de estos sistemas modifique la simulación anterior como se muestra en Fig. 3.10. Para esto
deberá ubicar un nuevo elemento llamado Sum que se encuentra en la librería Math Operations.
13) Para que Sum de la realimentación quede con uno de los signos negativo, de doble clic sobre este y en
“List of signs” coloque: |+-
Fig 3.10. Conexiones del sistema retroalimentado
14) Ejecute la simulación ¿a qué frecuencia gira el motor? __________ ¿va más lento que antes? ¿qué
frecuencia representan los 7.0 Volt que se aplican a la entrada? __________
Respuesta transitoria y valor de estado estable.
15) Hasta el momento los modelos utilizados son muy simples, ahora se utilizará una función de
transferencia más compleja, la cual genera una respuesta transitoria. Por lo que deberá abrir un nuevo
modelo y arrastrará los siguientes bloques (debe incluir dos elementos Scope):
Elemento Librería de Simulink
Transfer Fcn Continuous
Step Sources
Scope Sinks
16) Deberá realizar los siguientes ajustes:
“Step” (para aplicar una señal escalón desplazada en el tiempo 1.0 segundos):
• Step Time: 1
• Initial Value: 0
• Final Value: 5.25
Transfer Fcn (sistema de primer orden):
• Numerator coefficients: [762]
• Denominator coefficients: [0.375 1]
17) Debe interconectarlos como se muestra en la Fig. 3.11 y ejecute la simulación.
Nota: En este caso se obtendrá la respuesta escalón del sistema. Por ello el bloque “step” proporciona la señal
escalón que se aplica a la entrada del sistema.
18) Para observar los resultados de la simulación haga doble clic en los elementos “Scope”. Para ver mejor
las gráficas presione el botón de auto escala que tiene la siguiente forma (ver Fig 3.12).
Fig 3.11. Conexiones del sistema del motor usando una función de transferencia
que genera una respuesta transitoria.
Fig 3.12. Resultado de la simulación
19) Observando las gráficas:
¿Qué Voltaje se está aplicando al motor? _____________
¿En qué valor de tiempo se aplica el escalón? __________
Cuando la gráfica de la salida del motor se estabiliza ¿a qué velocidad gira el motor? _________
¿En qué valor de tiempo comienza a girar el motor? ______________
¿Cuánto tiempo le lleva al motor llegar a una velocidad estable? ___________
20) Ejecute la simulación del siguiente sistema y observe los resultados en los dos dispositivos Scope (Nota:
para realizar esta simulación deberá incluir un nuevo elemento llamado “Mux” que se encuentra en
“Commonly Used Blocks”
Figura 3.11. Simulación donde se mira la entrada y la salida en la misma gráfica.
Modelo del servosistema con retroalimentación de velocidad
21) Implemente el servosistema con retroalimentación de velocidad (ver Figura 3.12) en simulink. Para ello
se han usado las siguientes constantes:
2
𝐽 = 1. 0 𝑘𝑔 − 𝑚
𝐵 = 1. 0 𝑁 − 𝑚/𝑟𝑎𝑑/𝑠𝑒𝑔
𝐾 = 12. 5 𝑁 − 𝑚
𝐾ℎ = 0. 178 𝑠𝑒𝑔
Ajuste la señal escalón con un valor inicial 0, valor final 1.0 y “step time” de 1.0 seg.
Figura 3.12. Simulación del servomecanismo con retroalimentación de velocidad.
Obtenga el gráfico que entrega “Scope” y con este responda a las siguientes preguntas:
¿Qué unidades tienen r(t) y c(t)? _________
¿Es estable el sistema? _________
¿Tienen error de estado estable? _________
¿Cuál es el valor del sobre impulso? _________
¿Cuál es el valor del tiempo pico? _________
22) Modifique el sistema para aplicar un disturbio d(t) = 0.2*u(t - 7), como se muestra en la Figura 3.13.
Además use un tiempo de simulación de 12 segundos.
Figura 3.13. Servomecanismo al que se le aplica un disturbio.
Obtenga el gráfico que entrega “Scope”:
¿Qué unidades tienen d(t)? _________
¿Se modificó la respuesta del sistema antes de aplicar el disturbio? _______
Determine el porcentaje de regulación %R
|𝑉𝑒𝑠𝑡𝑎𝑏𝑙𝑒−𝑉𝑑𝑒𝑠𝑝𝑢𝑒𝑠 𝑒𝑙 𝑑𝑖𝑠𝑡𝑢𝑟𝑏𝑖𝑜|
%𝑅 = 𝑉𝑒𝑠𝑡𝑎𝑏𝑙𝑒
𝑋100%
¿El sistema logra compensar los efectos del disturbio? _____________
Cierre la ventana de simulink.
Ejercicios
23) En un sistema de distribución de fluido se tiene una válvula que controla la presión con la que éste sale.
El rango de giro de la válvula es de 0° 𝑎 270° y la presión a la salida se incrementa de forma
proporcional desde 0 𝑝𝑠𝑖 hasta llegar a 200 𝑝𝑠𝑖 con el giro máximo. Utilizando los procedimientos de la
primera parte de la práctica implemente un modelo del sistema descrito y verifique su funcionamiento
tanto para las condiciones mínimas como para las máximas, además determine qué giro debe aplicar a la
válvula para lograr una presión de 150 𝑝𝑠𝑖.
24) En el sistema anteriormente descrito existe un sensor para medir la presión que entrega 0. 1 𝑚𝐴 por cada
𝑝𝑠𝑖, implemente un modelo que integre tanto la válvula como el medidor de manera que al aplicar un
cierto giro se obtenga tanto un valor de presión como una lectura de corriente a la salida del sensor.
Verifique para las condiciones mínimas y máximas, además determine el valor de salida del sensor
cuando la presión es de 150 𝑝𝑠𝑖.
25) Ejecute la simulación del siguiente sistema:
Con las condiciones que se muestra en la figura ¿a qué frecuencia gira el motor? ______
Determine mediante prueba y error que valor debe tener el control proporcional para que el motor gire a
4000 𝑅𝑃𝑀 ____________
● 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]