Guía de Uso de Simulink 2018
Guía de Uso de Simulink 2018
Guía de Uso de Simulink 2018
Introducción
En la siguiente guía se presentan dos modelos dinámicos, uno mecánico y otro eléctrico, para ver su
comportamiento con el software de Simulink.
Desarrollo
1. Abrir Matlab en la computadora. Picar en la pestaña HOME y seleccionar el elemento que dice
Simulink Library. Ver figura 1.
3. Ejemplo 1. Para empezar, se desarrollará el siguiente problema, ver figura 4, con ayuda de
Simulink: Encontrar VC(t). La salida y es iL.
Solución 1:
VS(t) – VR – VL – VC = 0 (1)
Donde:
VS(t) = u0(t)
VR = i R
VL = L di/dt
Reemplazando:
𝑑𝑖
u0(t) - i R - L 𝑑𝑡 - VC = 0 (2)
Pero,
𝑑𝑉𝐶
i(t) = iR = iL = iC = 𝐶
𝑑𝑡
y reemplazando este último valor en la ecuación anterior,
𝑑𝑉𝐶 𝑑 𝑑𝑉𝐶
𝐶 𝑅 + 𝐿 (𝐶 ) + 𝑉𝐶 = 𝑢0 (𝑡)
𝑑𝑡 𝑑𝑡 𝑑𝑡
𝑑 2 𝑉𝑐 𝐿 𝑑𝑉𝑐 1 1
𝑑𝑡 2
+𝑅 𝑑𝑡
+ 𝑅𝐶 𝑉𝑐 = 𝑅𝐶 𝑢0 (𝑡) (2)
(2) se reorganizar de la siguiente forma, para hallar su respuesta en Simulink, ver ecuación 3:
𝑑2 𝑉𝑐 1 𝐿 𝑑𝑉𝑐 1
= 𝑢0 (𝑡) − − 𝑉
𝑑𝑡 2 𝑅𝐶 𝑅 𝑑𝑡 𝑅𝐶 𝑐
1 𝐿 1
𝑉𝐶̈ = 𝑢0 (𝑡) − 𝑉𝐶̇ − 𝑉
𝑅𝐶 𝑅 𝑅𝐶 𝐶
𝑑 2 𝑉𝑐 𝑑𝑉𝑐
𝑑𝑡 2
= 3𝑢0 (𝑡) − 4 𝑑𝑡
− 3𝑉𝑐 (3)
Este orden es con el fin de desarrollar una combinación de bloques que satisfaga la anterior
expresión.
Sum (ver figura 6): acceder a la ventana de Simulink Library Browser > Simulink > Math
Operations, picar sobre el ícono de Sum, sin soltar el botón secundario, arrastrar a la ventana
donde se elaborará el modelo y soltar el botón secundario.
Integrator (ver figura 7): acceder a la ventana de Simulink Library Browser > Simulink >
Continuous, picar sobre el ícono de Integrator con el botón secundario. Sin soltar el botón
secundario, arrastrar a la ventana donde se elaborará el modelo y soltar el botón. Arrastrar dos
integradores.
Gain (ver figura 8): acceder a la ventana de Simulink Library Browser > Simulink > Commonly
Used Blocks, picar sobre el ícono de Gain, sin soltar el botón secundario, y arrastrar a la ventana
donde se elaborará el modelo. Arrastrar tres ganancias.
También es posible lo siguiente: Simulink Library Browser > Simulink > Math Operations.
Nota 1: Para unir un ícono con otro, mover el puntero a la salida de uno de ellos hasta que aparezca una
cruz, picar sin soltar el botón secundario, y mover esta cruz hasta la entrada del ícono a conectar.
Observe que aparece una trayectoria en línea maciza color negro. Soltar el botón secundario.
Nota 2: Antes de conectar las ganancias, es necesario configurar el sumador con tres entradas. Hacer
doble clic sobre el ícono del sumador, y aparece una ventana, como la de la figura 10. Ubicarse en List of
signs. En la ecuación (3) se suman tres elementos, uno de ellos positivo y dos negativos. Por lo anterior,
los signos en esta ventana se deben ubicar, tal que en el ícono sum aparecerán estos signos en sentido
anti horario. Dar OK para aceptar.
Nota 4: Para cambiar en nombre del ícono de gain, se da doble clic sobre el nombre del ícono y se
asigna el nombre deseado.
Nota 5: Para cambiar los valores de gain, se da doble clic sobre el ícono de la ganancia a cambiar y se
modifica en la casilla “Gain”. Ver figura 12.
Gain1 = 1/(R*C)
Gain2 = L/R
Gain3 = 1/(R*C)
𝑑𝑉𝐶
Nota 6: Las condiciones iniciales, iL (0-) = 𝐶 (0) = 0 y VC(0-) = 0.5 V, se deben introducir al modelo.
𝑑𝑡
Para esto, hacer doble clic en el integrador de la izquierda, y escribir “dx0” en Initial condition, igual
procedimiento para el integrador de la derecha, y escribir “x0”. Cuando se programe con Matlab, se
asignarán valores a estas variables. Luego se acepta, oprimiendo OK. Ver figura 13
Nota 7: Lo siguiente es agregar la función de entrada, que es un escalón unitario, y que se encuentra en
Simulink Library Browser > Sources > Step. Ver figura 14. Colocarlo detrás de Gain1 y conectarlos.
𝑑𝑉𝑐 𝑑 2 𝑉𝑐
En este ejemplo se visualizará 𝑉𝑐 , 𝑑𝑡
𝑦 𝑑𝑡 2
para ello se generarán 3 señales. Para configurar el
multiplexor, se da doble clic sobre Mux y se cambia el valor a “3” en “Number of Inputs”. Ver
figura 17.
Figura 17. Configuración de Mux.
Por último, se arrastra un Simout, que se encuentra en Simulink Library Browser > Sinks, para
visualizar las señales resultantes de la simulación. Ver figura 18.
Se debe guardar el modelo. Para ello dirigirse a la parte superior y dar click en Save As y guardar
en una carpeta de proyectos el nombre para este ejemplo es “SimEjemplo1” (El nombre es
importante. Tener en cuenta que el nombre no sea usado por otro archivo). Ver figura 21.
Ingresamos a Matlab. En la pestaña home le damos clic en new script, ver figura 22.
%Se ejecuta el modelo con el comando sim. En este caso, el modelo en simulink
%debe estar en la misma carpeta.
sim('Ejercicio1')
%Para saber que soluciones se están graficando, la entrada más alta del
%multiplexor está asociada d2Vc, la entrada media a dVc y la entrada inferior
%a Vc.
legend('d2Vc','dVc','Vc')
Se guarda, en la misma carpeta, el script del modelo con otro nombre, por ejemplo, Ejercicio1a,
oprimiendo el icono Save Workspace y se ejecuta, oprimiendo el ícono Run, en la pestaña EDITOR de
Matlab. Ver figura 24.
Si los pasos se siguieron correctamente, se obtiene un resultado como el siguiente, ver figura 25:
Figura 25. Gráfico de la simulación del diagrama de bloques del circuito eléctrico.
Solución 2 (Por variables de estado):
Otro método para obtener y mostrar la salida del ejemplo 1, es usando el bloque State-Space desde
Continuous en la biblioteca de Simulink, como se muestra en la figura 26.
Como los almacenadores de energía son la inductancia y la capacitancia, entonces las variables de
estado serán iL y VC respectivamente. Redefiniendo las variables por x1 = iL y x2 = VC, entonces, derivando:
Entonces
O
Por lo tanto,
Y en forma matricial,
𝑥̇ = 𝐴𝑥 + 𝐵𝑢
o
(6)
Y = Cx + Du
(7)
Desarrollo
1. Abrir Matlab. Picar en la pestaña HOME y seleccionar el elemento que dice Simulink Library. Ver
figura 27.
Step (ver figura 30): acceder a la ventana de Simulink Library Browser > Simulink > Sources, picar
sobre el ícono de Step, sin soltar el botón secundario, arrastrar a la ventana donde se elaborará
el modelo y soltar el botón secundario.
Figura 30. Localización de Step
State-Space (ver figura 31): acceder a la ventana de Simulink Library Browser > Simulink >
Continuous, picar sobre el ícono de State-Space, sin soltar el botón secundario, arrastrar a la
ventana donde se elaborará el modelo y soltar el botón secundario.
Se debe guardar el modelo. Para ello dirigirse a la parte superior de la ventana de trabajo y dar click en
Save As y guardar en una carpeta de proyectos el nombre para este ejemplo es “SimEjemplo2” (El
nombre es importante. Tener en cuenta que el nombre no sea usado por otro archivo).
Las condiciones iniciales son especificadas en la ventana de Comandos de MATLAB, como x1=0; x2=0.5.
Para esto, generar el siguiente script:
clc %Se borra el command window.
clear all %Se borran variables guardadas en otros programas.
close all %Se cierran ventanas externas de Matlab.
%Se ejecuta el modelo con el comando sim. En este caso, el modelo en simulink
%debe estar en la misma carpeta.
sim('Prueba1VE')
%Se grafican los resultados arrojados por simout.
plot(simout);
%Para saber que valores son cuales en este caso como el primero del
%multiplexor es la segunda derivada entonces va de primero y asi
%sucesivamente
legend('d2Vc')
Guardar el programa con el nombre ‘Prueba1aVE’.
Ejercicio
Se organizan las variables, dejando la derivada de mayor orden de un lado y el resto del otro:
Para desarrollar el modelo de simulink, las condiciones iniciales se hacen igual a 0 y la fuerza de
entrada igual a un escalón unitario.
El modelo debe ser como el de la figura 27, ya que se requiere interconectar las dos ecuaciones.
(En este ejercicio también se configuran los valores de tiempo de encendido y tiempo de
simulación).
Figura 27. Modelo en simulink de guía.
Se crea una Script y se le da los valores
%Se borra el command window
clc
%Se borra variables guardas
clear all
%Se cierran ventanas externas de matlab
close all
%Se dan valores a los valores del modelo de simulink.
t0=0;%Tiempo de encendido del escalon
x10=0;%Condicion Inicial X1
dx10=0;%Condicion Inicial dx1
x20=0;%Condicion Inicial X2
dx20=0;%Condicion Inicial dx2
K1=1;%Constante del resorte 1
K2=1;%Constante del resorte 2
B=1;%Viscosidad
M1=5;%Masa 1
M2=2;%Masa 2
%Se ejecuta el modelo con el comando sim En este caso el modelo en simulink
tsim=30;
%debe estar en la misma carpeta
sim('SimEjercicio1')
%Se grafica los resultados arrojados por simout
plot(simout)
hold on
plot(simout1)
%Para saber que valores son cuales en este caso como el primero del
%multiplexor es la segunda derivada entonces va de primero y asi
%sucesivamente
legend('X1','X2')
Y según para estos valores se debería obtener una gráfica como muestra la figura 28.
Figura 28. Señales de x1 y x2.