![Page 1: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/1.jpg)
Ejemplos de Simulink
Pedro CorcueraDpto. Matemática Aplicada y Ciencias de la ComputaciónUniversidad de Cantabria
![Page 2: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/2.jpg)
Índice
• Creación de modelos• Solución de ecuaciones diferenciales• Subsistemas• Ejemplos en ingeniería
Simulink 2
![Page 3: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/3.jpg)
Creación de nuevo modelo en Simulink
• Para editar un modelo– Abrir la ventana de un nuevo modelo
– Conectar los bloques
– Añadir bloques
– Cambiar el tamaño de los bloques
Simulink 3
– Cambiar el tamaño de los bloques
– Modificar etiquetas y añadir anotaciones
– Parametrizar los bloques y la simulación
– Ejecutar y modificar
• Guardar un modelo (formato Simulink y .m)
Abrir un modelo desde Matlab
![Page 4: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/4.jpg)
Elementos de un modelo Simulink
• Un modelo Simulink típico consiste de tres
elementos:– Entradas, Sources o inputs
• Constantes, generadores de funciones (ondas senoidales,
escalón o señales creadas en Matlab)
Simulink 4
escalón o señales creadas en Matlab)
– Sistema modelado, representado por el diagrama de
bloques
– Salidas, Sinks u outputs• Gráficos, osciloscopios, ficheros
SourcesDiagrama de bloques del Sistema
Sources
![Page 5: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/5.jpg)
Abrir ventana de nuevo modelo
• Para crear un modelo en Simulink se pulsa sobre el
icono New model del Simulink Library Browser
o se selecciona File→ New → Model
Simulink 5
![Page 6: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/6.jpg)
Espacio de trabajo
• En el espacio de trabajo se colocarán los diagramas
de bloque del modelo
Simulink 6
Espacio de trabajo
![Page 7: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/7.jpg)
Añadir bloques
Hacer click sobre una librería para desplegar los bloques
Simulink 7
Arrastrar los bloques deseados dentro de la ventana del modelo Simulink
![Page 8: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/8.jpg)
Añadir bloques
Hacer click sobre una librería para desplegar los bloques
Simulink 8
Arrastrar los bloques deseados dentro de la ventana del modelo Simulink
![Page 9: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/9.jpg)
Añadir bloques
Hacer click sobre una librería para desplegar los bloques
Simulink 9
Arrastrar los bloques deseados dentro de la ventana del modelo Simulink
![Page 10: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/10.jpg)
Conectar los bloques
Para añadir un conector: Arrastrar, pulsando el botón derecho del ratón y la tecla Ctrl, desde una salida, o desde una entrada, de alguno de los bloques al otro bloque
Simulink 10
![Page 11: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/11.jpg)
Cambiar el tamaño y/o mover los bloques
Tras seleccionar el bloque, aparecen en él los puntos, desde los cuales se puede arrastrar para cambiar el tamaño del bloque
Simulink 11
Posteriormente se pueden mover el bloquepara que las líneas de conexión queden rectas
![Page 12: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/12.jpg)
Modificar etiquetas y añadir anotaciones
Hacer click en la etiqueta y editarla
Etiquetas
Simulink 12
Anotaciones
Hacer dobleclick en el fondo y escribir el texto
![Page 13: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/13.jpg)
Parametrizar los bloques
Simulink 13
Hacer doble clicksobre el bloque que se desea parametrizar
![Page 14: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/14.jpg)
Parametrizar los bloques
Simulink 14
Hacer doble clicksobre el bloque que se desea parametrizar
![Page 15: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/15.jpg)
Parametrizar los bloques
Simulink 15
Hacer doble clicksobre el bloque que se desea parametrizar
![Page 16: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/16.jpg)
Parametrizar los bloques
Simulink 16
Hacer doble clicksobre el bloque que se desea parametrizar
![Page 17: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/17.jpg)
Guardar el modelo
• Para guardar el modelo seleccionar File→ Save
• El sufijo de los modelos Simulink es .mdl
• Desde la ventana de comandos de Matlab se puede
abrir el modelo escribiendo el nombre del fichero
Simulink 17
![Page 18: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/18.jpg)
Ejecución de la simulación del modelo
• Asignar los parámetros de la simulación
• Ejecutar una simulación desde la ventana del modelo
• Poner y sacar valores en/desde los modelos– Utilizar en Matlab los valores obtenidos en la simulación
– Variables definidas en Matlab y Simulink
Simulink 18
– Variables definidas en Matlab y Simulink
• Simular desde la línea de comandos
![Page 19: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/19.jpg)
Asignar parámetros de la simulación
Simulink 19
![Page 20: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/20.jpg)
• Solvers proporcionados:– ode45: Método basado en Dormand - Prince , un paso Runge –
Kutta y es recomendado como un primer método
– ode23: Método basado en Bogacki – Shampine, un paso un
paso Runge – Kutta y pude ser más eficiente que ode45 cuando
la tolerancia es amplia
Parámetros de la simulación
la tolerancia es amplia
– ode113: Este es un multipaso , de orden variable Adams –
Bashforth – Moulton PECE. Es recomendable cuando la función
evaluación consume tiempo y la tolerancia es poca
– ode15s: Es un multipaso , de orden variable basado en la fórmula
de diferenciación “ backward”
– ode23: un paso basado en la fórmula de Rosembrock de orden
2.
Simulink 20
![Page 21: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/21.jpg)
• Otros parámetos tiene que ver con la entrada/salida
de datos al modelo y desde el modelo
Parámetros de la simulación
Simulink 21
![Page 22: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/22.jpg)
• Los parámetros y variables de los modelos se pueden
acceder desde la ventana de Comandos de Matlab
Parámetros de la simulación
Simulink 22
![Page 23: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/23.jpg)
• Los parámetros y variables de los modelos se pueden
acceder desde la ventana de Comandos de Matlab
Parámetros de la simulación
Después de ejecutar la simulación en Simulink
Simulink 23
![Page 24: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/24.jpg)
• Tanto desde la ventana de Matlab como la de
Simulink se “ve” el mismo Workspace o Espacio de
trabajo
Variables definidas en Matlab y Simulink
Matlab Simulink
Simulink 24
» T = 2 ;
» K = 1 ;
K = 1pi=3.14159...
t = 0:0.01:10T = 2
Espacio detrabajo
![Page 25: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/25.jpg)
• Se pulsa el icono Start o en el menú Simulation→
Start
Ejecución de la simulación
Simulink 25
![Page 26: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/26.jpg)
• Comando Matlab sim[t, x, y] = sim('model', Timespan, Opciones, ut)
donde model es el nombre del diagrama de bloques.
Timespan especifica la salida de los puntos de tiempo
Opciones es una estructura que permite asignar los
Ejecución de la simulación
valores de los parámetros en la ventana de diálogo
Simulation:Parameters
ut asigna la parte Load de la página Workspace I/O de la
ventana Simulation:Parameters
Ejemplo:
> [t, y] = sim(‘ejem1_1’,5);
> plot(t, y)
Simulink 26
![Page 27: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/27.jpg)
• Modelo Simulink que resuelve la ecuación diferencial:
• Condición inicial:
Solución de ecuaciones diferenciales que modelan Sistemas Continuos
( )5sin 4dx
tdt
=
• Condición inicial:
Simulink 27
(0) 2.x = −
![Page 28: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/28.jpg)
• Input: función 5sin(4t)
• Output: x(t) que es la solución de la ecuación
diferencial
Diagrama del modelo
(0) 2x = −
• A continuación, se construye el modelo con Simulink
Simulink 28
x
dx
dt
s
15sin(4t)
(input)
x(t)
(output)
integrador
![Page 29: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/29.jpg)
• La siguiente tabla resume el bloque y la librería
donde se encuentra para ser inluído en el modelo
– Se arrastra el bloque de la librería hasta la ventana de
trabajo
Selección de bloques para el modelo
Simulink 29
Modelo Librería Bloque
Input Sources Sink
Integrador Continuous Integrator
Output Sink Scope
![Page 30: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/30.jpg)
Selección de bloques para el modelo
Simulink 30
![Page 31: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/31.jpg)
Selección de bloques para el modelo
Simulink 31
![Page 32: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/32.jpg)
Selección de bloques para el modelo
Simulink 32
![Page 33: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/33.jpg)
• Colocar el cursor en el puerto de salida
(> a la derecha) del bloque “Sine Wave”
.El cursor cambia de forma a cruz
• Arrastrar desde el puerto de salida del
bloque “Sine Wave” hasta el puerto de
Conexión de los bloques con líneas de señal
entrada (> a la izquierda) del bloque
“Integrator” . Cuando el cursor se
encuentra sobre el puerto de entrada
cambia de forma a cruz doble
• Arrastrar desde la salida del bloque
“Integrator” hasta la entrada del bloque
“Scope”
Simulink 33
Las flechas indican la
dirección de la señal.
![Page 34: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/34.jpg)
• El input del modelo es:
5sin(4t)
• Para ello se hace doble click
en el bloque “Sine Wave” y en
Configurar bloques con datos del modelo
en el bloque “Sine Wave” y en
la ventana de diálogo de los
parámetros del bloque
ingresar:
Amplitude = 5
Frequency = 4
Simulink 34
![Page 35: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/35.jpg)
• El valor inicial es: -2
• Para ello se hace doble click
en el bloque “Integrator” y se
Configurar bloques con datos del modelo
en el bloque “Integrator” y se
ingresa la condición inicial = -2
Simulink 35
![Page 36: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/36.jpg)
• En la ventana de trabajo, click
en “Simulation” y seleccionar
“Start”
Ejecutar la simulación
• Otra forma es hacer click en el
icono Start
Simulink 36
![Page 37: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/37.jpg)
• Hacer doble click en el
bloque “Scope”
• Se visualiza el output x(t) en
la ventana Scope
Visualizar resultados de la simulación
la ventana Scope
• Se puede mejorar la
visualización utilizando los
iconos de la ventana. Ej.:
Autoscale y Tick labels all
Simulink 37
![Page 38: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/38.jpg)
• Ejercicio: Poner en la misma gráfica la señal de entrada y la
de salida
Visualizar resultados de la simulación
Simulink 38
![Page 39: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/39.jpg)
Sistema masa-muelle-amortiguador
• Descripción:
• Modelo:Notación Laplace:2d x dx
Simulink 39
• Condiciones iniciales, sistema en equilibrio: – función de la fuerza es un escalón con magnitud 3
– valores de los parámetros: m = 0.25, c = 0.5, k = 1
Fkxxcxm =++ ���
)()()()(2 sFskXscsXsXms =++
Notación Laplace:
m
ks
m
cs
m
sF
sXsG
++
==2
/1
)(
)()( FT
2
2( )
d x dxm c kx f t
dt dt+ + =
Notación simplificada:
![Page 40: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/40.jpg)
• Si se expresa la ecuación en términos de la derivada
de mayor orden
• Diagrama de bloques asociado:
Diagrama de simulación del sistema continuo de segundo orden
)(tfkxxcxm =++ ��� xm
cx
m
ktf
mx ��� −−= )(
1
• Diagrama de bloques asociado:
Simulink 40
m1
s
1
s
1
c/m
k/m
f(t)
input xx(t)
output
+--
x�x��
velocidad desplazamiento
![Page 41: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/41.jpg)
• A partir del modelo se identifican los bloques
necesarios en las librerías Simulink:– Bloque Step (1) - Librería Sources
– Bloque Sum (1) - Librería Math Operations
– Bloque Gain (3) - Librería Math Operations
Diagrama de bloques Simulink del sistema continuo de segundo orden
– Bloque Gain (3) - Librería Math Operations
– Bloques Integrator (2) - Librería Continuos
– Bloque Scope (1) - Librería Sink
• Cada bloque requiere ser configurado con las ICs:– el sistema inicialmente está en equilibrio:
– input: escalón con magnitud 3
– valores de los parámetros: m = 0.25, c = 0.5, k = 1
Simulink 41
0,0 == xx�
![Page 42: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/42.jpg)
Arrastrar el bloque “Sum” desde la librería “Math Oper”
Creación del diagrama de bloques en Simulink (scso)
Simulink 42
Doble click en Sum para cambiar los parámetros a rectangular y + - -
![Page 43: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/43.jpg)
Arrastrar el bloque “Gain”desde la librería “Math Oper”
Creación del diagrama de bloques en Simulink (scso)
La ganancia es 4 porque 1/m=4
Simulink 43
Doble click en Gain para cambiarlos parámetros del bloqueCambiar etiqueta
![Page 44: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/44.jpg)
Arrastrar el bloque “Step”desde la librería “Math Oper”
Creación del diagrama de bloques en Simulink (scso)
Simulink 44
Doble click en Step para cambiarlos parámetros Step time a 0 y Final value a 3
![Page 45: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/45.jpg)
Arrastrar los bloques “Integrator”desde la librería “Continuous”
Creación del diagrama de bloques en Simulink (scso)
Simulink 45
El bloque “integrator” tiene por defecto valor inicial 0. No es necesario modificarlo. Se cambian los títulos
![Page 46: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/46.jpg)
Arrastrar el bloque “Scope” desdela librería “Sink”
Creación del diagrama de bloques en Simulink (scso)
Simulink 46
![Page 47: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/47.jpg)
Crear dos nuevos bloques “Gain”desde la librería “Math Oper”
Creación del diagrama de bloques en Simulink (scso)
Simulink 47
Para girar el bloque gain, seleccionarlo, y elegir Flip Block en el menú Format. Cambiar etiqueta. Doble click en los bloques Gain para modificar los parámetros. c/m =2, k/m = 4
![Page 48: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/48.jpg)
Conectar todos los bloques. Etiquetar las señales haciendo doble click sobre las líneas.Para hacer derivaciones de una línea se coloca el cursor sobre la línea y se mantiene pulsada la tecla Ctrl hasta conectar al otro bloque.
Creación del diagrama de bloques en Simulink (scso)
Simulink 48
Ejecutar
![Page 49: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/49.jpg)
Resultados del modelo en Simulink (scso)
Simulink 49
Respuesta subamortiguada
Overshoot de 0.5
Valor final de 3
![Page 50: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/50.jpg)
Comprobación de resultados
• Forma Standard
• Frecuencia natural
)(1
tfk
xxk
c
mk
x=++ �
��
0.2==m
knω
Simulink 50
• Tasa de amortiguamiento
• Ganancia estática
5.02
=→= ζω
ζ
k
c
n
11
==k
K
![Page 51: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/51.jpg)
• El siguiente sistema muelle-masa-amortiguador se
resuelve según la ec. de movimiento (sin fricción):
• Tomando la transformada de Laplace e ignorando las
condiciones iniciales
Uso del bloque de función de transferencia en un scso
)(tfkxxcxm =++ ���
condiciones iniciales
• La función de transferencia (output/input X(s)/F(s)) es:
Simulink 51
)()()()(2 sFskXscsXsXms =++
m
ks
m
cs
m
sF
sXsG
++
==2
/1
)(
)()(
42
4)(
2 ++=
sssG
![Page 52: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/52.jpg)
Arrastrar los bloques “Transfer Fcn” desde la librería “Continuous”
Uso del bloque de función de transferencia en Simulink para un scso
Simulink 52
Ajustar el Numerator y Denominator coefficient a [4] y [1 2 4] del bloque “Transfer Fcn”
![Page 53: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/53.jpg)
• El bloque espacio de estado (state-space) es una
alternativa al bloque función de transferencia
• Las variables de estado para el sistema mma son
posición y velocidad
Bloque de espacio de estado
xx =
• Las derivada de las variables de estado son
Simulink 53
xxxx�=
=
2
1
Fm
xm
cx
m
kx
xx1
212
21
−−−=
=
�
�
![Page 54: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/54.jpg)
• En notación matricial
Bloque de espacio de estado
=
+=
x
x
102
1x
BuAxx�
0]01[
1
===
+=
DC
DuCxyxy
Simulink 54
=
=
−−=
m
Fm
c
m
k
10
10
B
u
A
donde:A = matriz del sistemaB = matriz de entradaC = matriz de salidaD = matriz de transmitancia directa
0=D
![Page 55: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/55.jpg)
Arrastrar los bloques “State Space”desde la librería “Continuos”
Bloque de espacio de estado en Simulinkpara un scso
Simulink 55
Ajustar los valores de las matrices A=[0 1;-4 -2], B=[0; 4], C=[1 0] y D=[0] del bloque “State Space”
![Page 56: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/56.jpg)
• Se modela la amortización de un prestámo de dinero:
donde:
b(k) pago mensual
r = i+1 siendo i el interés mensual, y
Sistema discreto Simulink
)()1()( kpkrbkb −−=
r = i+1 siendo i el interés mensual, y
p(k) pago de final de mes.
• Modelo de bloques
Simulink 56
ki
p(k)
b(k)
-+
b(k-1)z-1
![Page 57: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/57.jpg)
• Si el balance de un préstamo es:
Considerar como condiciones iniciales:
Balance inicial: 15000
Interés: 1%
Modelo de bloques de sistema discreto Simulink
)()1()( kpkrbkb −−=
Interés: 1%
Pago mensual = 200
• Calcular el balance del préstamo despues de 100
pagos
Simulink 57
![Page 58: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/58.jpg)
• A partir del modelo se identifican los bloques
necesarios en las librerías Simulink:– Bloque Constant (1) - Librería Sources
– Bloque Sum (1) - Librería Math Operations
– Bloque Gain (3) - Librería Math Operations
Modelo de bloques de sistema discreto Simulink
– Bloque Gain (3) - Librería Math Operations
– Bloques Unit delay (1) - Librería Discrete
– Bloque Scope y Display (1) - Librería Sink
• Cada bloque requiere ser configurado con las ICs:– Bloque Unit Delay, Initial Condition: 15000, Sample Time:
1
– Bloque Gain: 1.01
Simulink 58
![Page 59: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/59.jpg)
• Modelo Simulink:
Modelo de bloques de sistema discreto Simulink
Unit Delay
z
1
Display
6341
Constant
200
Simulink 59
Unit Delay
ScopeGain
-K-
Display
![Page 60: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/60.jpg)
Modelo de bloques de sistema discreto Simulink
En Parameter Configuration de Simulation ajustar a
Solver type: Fixed-stepSolver: discreteStart time: 0 Stop time: 100
Simulink 60
![Page 61: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/61.jpg)
Resultado de la simulación de sistema discreto Simulink
Unit Delay
z
1
ScopeGain
-K-
Display
6341
Constant
200
Simulink 61
Scope
![Page 62: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/62.jpg)
Seleccionar todos los bloques y señales a ser incluídos en el subsistema usando una cajaenvolvente
Seleccionar Edit:Create Subsystem del menu del modelo. Simulinkreemplaza los bloques
Creación de Subsistemas: Encapsulado
reemplaza los bloquesseleccionados por un bloqueSubsystem con puertos de entraday salida según las líneas de señalesy les asigna un nombre por defecto
Cambiar el tamaño del bloqueSubsystem para que las etiquetasde puertas sean legibles y mover para alinear
Simulink 62
![Page 63: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/63.jpg)
Para ver o editar el subsistema, hacerdoble-click sobre el bloque. Apareceráuna nueva ventana conteniendo el subsistema.
Además del los bloques, se añade un bloque Inport para la señal que entraal subsistema y un bloque Outport se
Creación de Subsistemas: Encapsulado
al subsistema y un bloque Outport se añade para la señal que sale del subsistema. Si se cambia las etiquetasde esos puertos, cambia las etiquetasen el icono del nuevo bloque.
Nota: Una vez se crea el subsistemano hay operación inversa, por lo quese sugiere guardar el modelo antes de crear el subsistema.
Simulink 63
![Page 64: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/64.jpg)
• Se desea modelar un sistema de masa-resorte:
Creación de Subsistemas: bloque subsystem
• El modelo de cada móvil es:
Simulink 64
[ ])()(1
111 ++− −−−= nnnnnn
n
n xxkxxkm
x��
Ecuación para un móvil:
![Page 65: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/65.jpg)
Se construye el subsistema de un móvil según el modelo. La ganancia del bloque 1/masa se asigna 1/m1.
Creación de Subsistemas: bloque subsystem
Despl
1
Velocidad
1s
Res.izq
k1
Res.der
k2Posicion
1s
Fuerzaresultante
Add 1
Add
1/masa
-K-
Izq
2
Der
1
Simulink 65
Se hacen dos copias del bloquesubsystem y se conectan los bloques como se muestra
![Page 66: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/66.jpg)
Se asignan las constantes de los resortes y masas desde Matlab creandoun fichero .m (pe setSubsys) y se ejecuta en Matlab% Asignación de constantes para resortes y masas
k1 = 1; k2 = 2; k3 = 4; m1 = 1; m2 = 3; m3 = 2;
Creación de Subsistemas: bloque subsystem
Los parámetros de cada bloque subsystem se configura:Móvil 1: valor del bloque Gain del bloque Resorte Izq a k1 y para el bloque Resorte Der a k2. Valor del bloque Gain del bloque 1/masa a
Simulink 66
bloque Resorte Der a k2. Valor del bloque Gain del bloque 1/masa a 1/m1. Inicializar el bloque Integrator Velocidad a 0 y el Integrator Posicion a 1.Móvil 2: valor del bloque Gain del bloque Resorte Izq a k2 y para el bloque Resorte Der a k3. Valor del bloque Gain del bloque 1/masa a 1/m2. Inicializar el bloque Integrator Velocidad a 0 y el Integrator Posicion a 0. Móvil 3: valor del bloque Gain del bloque Resorte Izq a k3 y para el bloque Resorte Der a 0. Valor del bloque Gain del bloque 1/masa a 1/m3. Inicializar el bloque Integrator Velocidad a 0 y el Integrator Posicion a 0.
![Page 67: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/67.jpg)
Se configura el bloque Scope para almacenar los datos de salida al workspace. Asignar Start time a 0 y Stop time a 100. Se puede obtener la gráfica desde Matlab con el comando simplot. Después de ejecutar las simulación, se obtiene:
Creación de Subsistemas: bloque subsystem
Simulink 67
Tiempo (seg)
Desplazamiento
![Page 68: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/68.jpg)
Se crea un subsistema. Usamos el desarrollado para el sistema masa-resorte copiando en una nueva ventana de modelo el bloque Masa-Resorte1
Ejemplo: enmascarado de bloques
Seleccionar el bloque y se escoje Edit:Mask
Simulink 68
se escoje Edit:MaskSubsystem en el menú de la ventana de modelos para obtenerla ventana de diálogodel editor Mask.Guardar el modelo(CartMask)
![Page 69: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/69.jpg)
El editor Mask tiene cuatro pestañas: Icon, Parameters, Initialization, Documentation.
La página Documentationdel editor sirve para establecer un tipo , colocar
Ejemplo: enmascarado de bloques
establecer un tipo , colocar una descripción del bloque y una descripción más detallada que se mostrará cuando se selecciona el sistema Help de Matlab
Simulink 69
![Page 70: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/70.jpg)
La página Parametersdel editor Mask se usa para definir parámetros para el bloque del susbsistema. Se divide en dos secciones: Una superior en la que se define los campos de
Ejemplo: enmascarado de bloques
Añadir
Eliminar
Mover arriba
Mover abajodefine los campos de diálogo y el orden en que se muestran, asociando una variable Matlab con cada campo. La sección inferior contiene opciones para cada campo definido en la parte superior.
Simulink 70
Mover abajo
![Page 71: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/71.jpg)
La pestaña Parameters se usa para crear, editar y eliminar campos de diálogo asociado a variables Matlab con cada campo. Para cada campo añadido se asocia un Prompt, Variable, Type, Evaluate y Tunable.Resultado:
Ejemplo: enmascarado de bloques
Resultado:
Simulink 71
![Page 72: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/72.jpg)
El campo Type en Dialog parameters puede ser: edit, Checkbox y Popups .El valor asignado a la variable asociada con un campo de diálogo depende del estado de si selecciona el campo Evaluate.Si Evaluate se selecciona la variable asociada con el campo tendrá el valor de la expresión del campo. El campo Tunable determina si el parámetro se puede modificar durante la ejecución de la simulación.El campo Callback permite asociar con el parámetro un bloque de código que se ejecuta cuando el parámetro de diálogo se ingresa.
Ejemplo: enmascarado de bloques
que se ejecuta cuando el parámetro de diálogo se ingresa.
Simulink 72
![Page 73: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/73.jpg)
La página Initialization proporciona una lista de variables asociados con los parámetros del bloque y un campo de Initialization commands. Los bloques del subsistema se debe configurar para usar las variables definidas en las páginas Initialization y Parameters. Para ello se selecciona el subsistema y se escoge Edit:Look Under Mask en el menú de la ventana de modelo. Hacer doble click en el bloque Gain con etiqueta Res.Izq. Y asignar Gain a k_izq. Repetir con Res.Der. Para asignar Gain a k_der. Lo mismo con 1/mass para asignar Gain a masa. Asignar Initial
Ejemplo: enmascarado de bloques
k_der. Lo mismo con 1/mass para asignar Gain a masa. Asignar Initialcondition del integrador Velocidad a x_dot0 y en Posicion a x0.
Simulink 73
![Page 74: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/74.jpg)
Las variables definidas en la máscara de un subsistema son locales y no pueden acceder a las variables del workspace de Matlab. Un campo de entrada en el diálogo de un bloque enmascarado puede contener constantes o expresiones usando variables definidas en el workspace de Matlab. El valor del contenido del campo de entrada se asigna a la variable interna del subsistema enmascarado asociado con el campo de entrada. Esta variable se puede usar para inicializar el bloque o puede usarse para definir otras variables internas definidas en el campo
Ejemplo: enmascarado de bloques
usarse para definir otras variables internas definidas en el campo Initialization commands
Simulink 74
Despl
1
Velocidad
1s
Res.izq
-K-
Res.der
-K-Posicion
1s
Fuerzaresultante
Add1
Add
1/masa
-K-
Izq
2
Der
1
![Page 75: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/75.jpg)
La página Icon permite diseñar iconos propios para los bloques enmascarados. Consiste de seis campos. En el campo Drawing commandsse puede poner comandos Matlab para dibujar y etiquetar el icono.
Ejemplo: enmascarado de bloques
Masa-Resorte1
m
Simulink 75
Si en la página Initialization se agrega la línea:m_etiq=sprintf('%1.1f kg',mass);
y en Drawing Commands:text(0.45,0.6,'m')text(0.25,0.4,m_etiq)
![Page 76: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/76.jpg)
Una vez que se crea el bloque enmascarado se puede copiar a una ventana de modelo de forma idéntica cuando se copia de la librería de bloques de Simulink. Para el ejemplo se arrastra tres copias del bloque Masa-Resorte, se conecta y se asignan los parámetros con un fichero .m. El modelo así queda completo.
Ejemplo: Uso de bloque enmascarado
Simulink 76
![Page 77: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/77.jpg)
Se tiene el siguiente modelo Simulink guardado en el fichero llamado ejmod.mdl
Ejemplo: Vector de estado del modelo
Velocidad
1s
Sine WaveScope
Gain 1
0.4
Gain
0.2
Desplazamiento
1s
En la ventana de comandos Matlab se ejecuta el comando:>> [sizes,x0,states]=ejmod([],[],[],0)sizes =
Simulink 77
x0 =00
states = 'ejmod/Desplazamiento''ejmod/Velocidad'
sizes =2000001
![Page 78: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/78.jpg)
Se tiene el siguiente sistema no lineal:
cuyo modelo (nolinear_mod.mdl) en Simulink es:
Ejemplo: linealización de un modelo
2
3
212
21
3xxxx
xx
−+=
−=�
�
x1 Out
1
x2 Integrator
1s
x1 Integrator
1s
Gain
-1
Simulink 78
En la ventana de comandos Matlab se ejecutan los comandos:>> [A,B,C,D]=linmod('nolinear_mod');>> disp(A)
0 -1.00001.0000 -3.0000
>> disp(eig(A))-0.3820-2.6180
x2 Out
2
Fcn
f(u)
pow(u[1],3)-3*u[1]
indica que el sistema es estable
![Page 79: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/79.jpg)
Movimiento de un vehículo
• Considérese un coche conducido en línea recta a lo
largo de una carretera plana
• La ecuación de movimiento se deduce a partir de los
siguientes factores:FF
Simulink 79
b.vb.v
FFvv
mm
![Page 80: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/80.jpg)
Modelo del vehículo
• Ecuaciones:
F = m.dv/dt + b.v
donde:– F = fuerza proporcionada por el motor
Simulink 80
– m = masa del vehículo
– dv/dt = tasa de cambio de velocidad (aceleración)
– b = factor de amortiguamiento (resistencia del viento)
– v = velocidad (velocidad del vehículo)
![Page 81: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/81.jpg)
Modelo del vehículo: Simulink
• Ecuaciones:
F/m –v.b/m= dv/dt
• Subsistemas:
– La entrada del sistema es el control de combustible (pedal
Simulink 81
– La entrada del sistema es el control de combustible (pedal
de aceleración), bajo control del conductor
– El subsistema “Engine Management” convierte la posición
del pedal a potencia del motor
– El subsistema “Vehicle Dynamics” convierte la potencia
del motor a velocidad del vehículo
– La salida se suministra en horsepower (hp)
![Page 82: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/82.jpg)
Modelo del vehículo: Simulink
Simulink 82
![Page 83: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/83.jpg)
Subsistema Engine Management
• Convierte la entrada del pedal de combustible (0-
100%) a potencia del motor (0 – 200 hp)
Simulink 83
![Page 84: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/84.jpg)
Tablas de interpolación (Lookup Tables)
• Convierte rpm a potencia
Simulink 84
![Page 85: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/85.jpg)
Subsistema Vehicle Dynamics
• Convierte la entrada del pedal de combustible (0-
100%) a potencia del motor (0 – 200 hp)
Simulink 85
![Page 86: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/86.jpg)
Modelo del vehículo: Ajustes
• Cambiar la masa m del vehículo entre 1 ton (coche
pequeño) y 35 tons (camión).
• Incrementar la resistencia del aire incrementando la
variable b.
Simulink 86
variable b.
• Usando datos reales del fabricante para la Lookup
Table. Se puede modelar también motores diesel
• Remplazar la entrada Ramp con una entrada Step
para simular cambios bruscos en el pedal de
aceleración
![Page 87: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/87.jpg)
Cancelación de ruido acústico (CRA)
• Desarrollar el modelo Simulink de un sistema de
reducción de ruido utilizando el algoritmo de mínimo
cuadrados medio (Least Mean Squares, LMS)
• En audio “ruido” se refiere a cualquier señal junto a
las que se desean escuchar
Simulink 87
las que se desean escuchar
• Se usa un filtro adaptativo
![Page 88: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/88.jpg)
CRA: Filtro adaptativo
• Diagrama de bloques
Simulink 88
• Ecuación
– Es un filtro tipo FIR con N coeficientes variables w
∑=
−⋅=N
k
k knxnw0
)()( y(n)
![Page 89: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/89.jpg)
CRA: La ecuación LMS
• El algoritmo Least Mean Squares (LMS) actualiza
cada coeficiente sobre la base de cada muestra y
basado en el error e(n)
)()()( nxnenw 1)(nw kkk ⋅+=+ µ
Simulink 89
• Esta ecuación minimiza la potencia del error e(n)
• El valor de µ (mu) es crítico (compromiso)
– Si µ es demasiado bajo, el filtro reacciona lentamente
– Si µ es muy grande, la resolución del filtro es pobre
)()()( nxnenw 1)(nw kkk ⋅+=+ µ
![Page 90: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/90.jpg)
CRA: Modelo Simulink
Simulink 90
![Page 91: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/91.jpg)
CRA: Entrada/Salidas
• Entrada: Señal + Ruido
• Salida
Simulink 91
• Error
• Evolución de los pesos
![Page 92: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/92.jpg)
Modulación DSB-AM
Simulink 92
![Page 93: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/93.jpg)
Transformada de Park
Simulink 93
![Page 94: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/94.jpg)
Sistema de Control PI
Simulink 94
![Page 95: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/95.jpg)
Control de tensión de un generador
Simulink 95
![Page 96: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/96.jpg)
Control de tensión de un generador
Simulink 96
![Page 97: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/97.jpg)
Control tensión/frecuencia de un generador
Simulink 97
![Page 98: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/98.jpg)
Control tensión/frecuencia de un generador
Simulink 98
![Page 99: Universidad de Cantabria · Creación de nuevo modelo en Simulink • Para editar un modelo – Abrir la ventana de un nuevo modelo – Conectar los bloques – Añadir bloques](https://reader030.vdocumento.com/reader030/viewer/2022041123/5d277f7c88c9935d388cd8c9/html5/thumbnails/99.jpg)
Circuito paralelo RLC
Simulink 99