Ejemplos_Simulink

download Ejemplos_Simulink

of 99

Transcript of Ejemplos_Simulink

  • 7/27/2019 Ejemplos_Simulink

    1/99

    Ejemplos de Simulink

    Pedro CorcueraDpto. Matemtica Aplicada yCiencias de la ComputacinUniversidad de Cantabria

    [email protected]

  • 7/27/2019 Ejemplos_Simulink

    2/99

    ndice

    Creacin de modelos Solucin de ecuaciones diferenciales Subsistemas Ejemplos en ingeniera

    Simulink 2

  • 7/27/2019 Ejemplos_Simulink

    3/99

    Creacin de nuevo modelo en Simulink

    Para editar un modelo Abrir la ventana de un nuevo modelo Conectar los bloques Aadir bloques Cambiar el tamao de los blo ues

    Simulink 3

    Modificar etiquetas y aadir anotaciones Parametrizar los bloques y la simulacin Ejecutar y modificar

    Guardar un modelo (formato Simulink y .m)Abrir un modelo desde Matlab

  • 7/27/2019 Ejemplos_Simulink

    4/99

    Elementos de un modelo Simulink

    Un modelo Simulink tpico consiste de treselementos: Entradas, Sources o inputs

    Constantes, generadores de funciones (ondas senoidales,escaln o seales creadas en Matlab

    Simulink 4

    Sistema modelado, representado por el diagrama debloques

    Salidas, Sinks u outputs

    Grficos, osciloscopios, ficheros

    SourcesDiagramade bloques

    del Sistema

    Sources

  • 7/27/2019 Ejemplos_Simulink

    5/99

    Abrir ventana de nuevo modelo

    Para crear un modelo en Simulink se pulsa sobre elicono New model del Simulink Library Browser o se selecciona File New Model

    Simulink 5

  • 7/27/2019 Ejemplos_Simulink

    6/99

    Espacio de trabajo

    En el espacio de trabajo se colocarn los diagramasde bloque del modelo

    Simulink 6

    Espacio de trabajo

  • 7/27/2019 Ejemplos_Simulink

    7/99

    Aadir bloquesHacer clicksobre una librerapara desplegar los bloques

    Simulink 7

    Arrastrar los bloques deseadosdentro de laventana del modeloSimulink

  • 7/27/2019 Ejemplos_Simulink

    8/99

    Aadir bloquesHacer clicksobre una librerapara desplegar los bloques

    Simulink 8

    Arrastrar los bloques deseadosdentro de laventana del modeloSimulink

  • 7/27/2019 Ejemplos_Simulink

    9/99

    Aadir bloquesHacer clicksobre una librerapara desplegar los bloques

    Simulink 9

    Arrastrar los bloques deseadosdentro de laventana del modeloSimulink

  • 7/27/2019 Ejemplos_Simulink

    10/99

    Conectar los bloquesPara aadir un conector:Arrastrar,pulsando el botn derecho del ratn y latecla Ctrl, desde una salida, o desde una entrada, de

    alguno de los bloques al otro bloque

    Simulink 10

  • 7/27/2019 Ejemplos_Simulink

    11/99

    Cambiar el tamao y/o mover los bloquesTras seleccionar el bloque, aparecen en l lospuntos, desde los cuales se puede arrastrar paracambiar el tamao del bloque

    Simulink 11

    Posteriormente se pueden mover el bloquepara que las lneas de conexin queden rectas

  • 7/27/2019 Ejemplos_Simulink

    12/99

    Modificar etiquetas y aadir anotaciones

    Hacer clicken la etiqueta y editarla

    Etiquetas

    Simulink 12

    Anotaciones

    Hacer dobleclicken elfondo y escribir el texto

  • 7/27/2019 Ejemplos_Simulink

    13/99

    Parametrizar los bloques

    Simulink 13

    Hacer doble clicksobre el bloque quese deseaparametrizar

  • 7/27/2019 Ejemplos_Simulink

    14/99

    Parametrizar los bloques

    Simulink 14

    Hacer doble clicksobre el bloque quese deseaparametrizar

  • 7/27/2019 Ejemplos_Simulink

    15/99

    Parametrizar los bloques

    Simulink 15

    Hacer doble clicksobre el bloque quese deseaparametrizar

  • 7/27/2019 Ejemplos_Simulink

    16/99

    Parametrizar los bloques

    Simulink 16

    Hacer doble clicksobre el bloque quese deseaparametrizar

  • 7/27/2019 Ejemplos_Simulink

    17/99

  • 7/27/2019 Ejemplos_Simulink

    18/99

    Ejecucin de la simulacin del modelo

    Asignar los parmetros de la simulacin Ejecutar una simulacin desde la ventana del modelo Poner y sacar valores en/desde los modelos

    Utilizar en Matlab los valores obtenidos en la simulacin

    Simulink 18

    Simular desde la lnea de comandos

  • 7/27/2019 Ejemplos_Simulink

    19/99

    Asignar parmetros de la simulacin

    Simulink 19

  • 7/27/2019 Ejemplos_Simulink

    20/99

  • 7/27/2019 Ejemplos_Simulink

    21/99

    Otros parmetos tiene que ver con la entrada/salidade datos al modelo y desde el modelo

    Parmetros de la simulacin

    Simulink 21

  • 7/27/2019 Ejemplos_Simulink

    22/99

    Los parmetros y variables de los modelos se puedenacceder desde la ventana de Comandos de Matlab

    Parmetros de la simulacin

    Simulink 22

  • 7/27/2019 Ejemplos_Simulink

    23/99

    Los parmetros y variables de los modelos se puedenacceder desde la ventana de Comandos de Matlab

    Parmetros de la simulacin

    Despus de ejecutar lasimulacin en Simulink

    Simulink 23

  • 7/27/2019 Ejemplos_Simulink

    24/99

    Tanto desde la ventana de Matlab como la deSimulink se ve el mismo Workspace o Espacio detrabajo

    Variables definidas en Matlab y Simulink

    Matlab Simulink

    Simulink 24

    T = 2 ; K = 1 ;

    K = 1 pi=3.14159...

    t = 0:0.01:10T = 2

    Espacio de

    trabajo

  • 7/27/2019 Ejemplos_Simulink

    25/99

    Se pulsa el icono Start o en el men SimulationStart

    Ejecucin de la simulacin

    Simulink 25

  • 7/27/2019 Ejemplos_Simulink

    26/99

    Comando Matlabsim[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 tiempoOpciones es una estructura que permite asignar los

    Ejecucin de la simulacin

    valores de los parmetros en la ventana de dilogoSimulation:Parametersut asigna la parte Load de la pgina Workspace I/O de la

    ventana Simulation:ParametersEjemplo:> [t, y] = sim(ejem1_1,5);

    > plot(t, y) Simulink 26

  • 7/27/2019 Ejemplos_Simulink

    27/99

    Modelo Simulink que resuelve la ecuacin diferencial:

    Solucin de ecuaciones diferenciales que

    modelan Sistemas Continuos

    ( )5sin 4dx

    t dt =

    Simulink 27

    (0) 2. x =

  • 7/27/2019 Ejemplos_Simulink

    28/99

    Input: funcin5sin(4 t ) Output: x(t) que es la solucin de la ecuacin

    diferencial

    Diagrama del modelo

    (0) 2 x =

    A continuacin, se construye el modelo con Simulink

    Simulink 28

    xdxdt

    s1

    5sin(4 t )(input)

    x(t )(output)

    integrador

  • 7/27/2019 Ejemplos_Simulink

    29/99

    La siguiente tabla resume el bloque y la libreradonde se encuentra para ser inludo en el modelo Se arrastra el bloque de la librera hasta la ventana de

    trabajo

    Seleccin de bloques para el modelo

    Simulink 29

    Modelo Librera BloqueInput Sources SinkIntegrador Continuous Integrator Output Sink Scope

  • 7/27/2019 Ejemplos_Simulink

    30/99

    Seleccin de bloques para el modelo

    Simulink 30

  • 7/27/2019 Ejemplos_Simulink

    31/99

    Seleccin de bloques para el modelo

    Simulink 31

  • 7/27/2019 Ejemplos_Simulink

    32/99

    Seleccin de bloques para el modelo

    Simulink 32

    C i d l bl l d

  • 7/27/2019 Ejemplos_Simulink

    33/99

    Colocar el cursor en el puerto de salida(> a la derecha) del bloqueSine Wave .El cursor cambia de forma a cruz

    Arrastrar desde el puerto de salida delbloqueSine Wave hasta el puerto de

    Conexin de los bloques con lneas de

    seal

    entrada (> a la izquierda) del bloqueIntegrator . Cuando el cursor seencuentra sobre el puerto de entradacambia de forma a cruz doble

    Arrastrar desde la salida del bloqueIntegrator hasta la entrada del bloqueScope

    Simulink 33

    Las flechas indican la direccin de la seal.

  • 7/27/2019 Ejemplos_Simulink

    34/99

    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

    la ventana de dilogo de losparmetros del bloqueingresar:

    Amplitude = 5Frequency = 4

    Simulink 34

  • 7/27/2019 Ejemplos_Simulink

    35/99

    El valor inicial es:-2 Para ello se hace doble click

    en el blo ue Inte rator se

    Configurar bloques con datos del modelo

    ingresa la condicin inicial = -2

    Simulink 35

  • 7/27/2019 Ejemplos_Simulink

    36/99

    En la ventana de trabajo, clicken Simulation y seleccionar Start

    Ejecutar la simulacin

    Otra forma es hacer click en elicono Start

    Simulink 36

  • 7/27/2019 Ejemplos_Simulink

    37/99

    Hacer doble click en elbloque Scope

    Se visualiza el output x(t)en

    Visualizar resultados de la simulacin

    a ven ana cope Se puede mejorar la

    visualizacin utilizando losiconos de la ventana. Ej.:Autoscale y Tick labels all

    Simulink 37

  • 7/27/2019 Ejemplos_Simulink

    38/99

    Ejercicio: Poner en la misma grfica la seal de entrada y lade salida

    Visualizar resultados de la simulacin

    Simulink 38

  • 7/27/2019 Ejemplos_Simulink

    39/99

    Sistema masa-muelle-amortiguador

    Descripcin:

    Modelo:Notacin La lace:

    Simulink 39

    Condiciones iniciales, sistema en equilibrio: funcin de la fuerza es un escaln con magnitud 3

    valores de los parmetros:m = 0.25, c = 0.5, k = 1

    F kx xc xm=++

    )()()()(2 s F skX scsX s X ms =++

    m

    k s

    m

    c s

    m s F s X

    sG++

    ==

    2

    /1)()(

    )( FT

    2 ( ) x x

    m c kx f t dt dt + + =

    Notacin simplificada:

    Diagrama de simulacin del sistema

  • 7/27/2019 Ejemplos_Simulink

    40/99

    Si se expresa la ecuacin en trminos de la derivadade mayor orden

    Diagrama de simulacin del sistemacontinuo de segundo orden

    )(t f kx xc xm =++ xmc x

    mk t f

    m x = )(1

    Simulink 40

    m1

    s1

    s1

    c/m

    k/m

    f(t)input x

    x(t)

    output

    +- - x x

    velocidad desplazamiento

    Diagrama de bloques Simulink del

  • 7/27/2019 Ejemplos_Simulink

    41/99

    A partir del modelo se identifican los bloquesnecesarios en las libreras Simulink:

    Bloque Step (1) - Librera Sources Bloque Sum (1) - Librera Math Operations Bloque Gain (3) - Librera Math Operations

    Diagrama de bloques Simulink delsistema continuo de segundo orden

    Bloques Integrator (2) - Librera Continuos Bloque Scope (1) - Librera Sink

    Cada bloque requiere ser configurado con las ICs: el sistema inicialmente est en equilibrio: input: escaln con magnitud 3 valores de los parmetros:m = 0.25, c = 0.5, k = 1

    Simulink 41

    0,0 == x x

    Creacin del diagrama de bloques en

  • 7/27/2019 Ejemplos_Simulink

    42/99

    Arrastrar el bloque Sum desde lalibrera Math Oper

    Creacin del diagrama de bloques enSimulink (scso)

    Simulink 42

    Doble click en Sum para cambiar losparmetros a rectangular y + - -

    Creacin del diagrama de bloques en

  • 7/27/2019 Ejemplos_Simulink

    43/99

    Arrastrar el bloque Gain desde la librera Math Oper

    Creacin del diagrama de bloques enSimulink (scso)

    La ganancia es 4 porque 1/m=4

    Simulink 43

    Doble click en Gain para cambiarlos parmetros del bloque

    Cambiar etiqueta

    Creacin del diagrama de bloques en

  • 7/27/2019 Ejemplos_Simulink

    44/99

    Arrastrar el bloque Step desde la librera Math Oper

    Creacin del diagrama de bloques enSimulink (scso)

    Simulink 44

    Doble click en Step para cambiarlos parmetros Step time a 0 y

    Final value a 3

    Creacin del diagrama de bloques en

  • 7/27/2019 Ejemplos_Simulink

    45/99

    Arrastrar los bloques Integrator desde la librera Continuous

    Creacin del diagrama de bloques enSimulink (scso)

    Simulink 45

    El bloque integrator tiene por defecto valorinicial 0. No es necesario modificarlo.

    Se cambian los ttulos

    Creacin del diagrama de bloques en

  • 7/27/2019 Ejemplos_Simulink

    46/99

    Arrastrar el bloque Scope desdela librera Sink

    Creacin del diagrama de bloques enSimulink (scso)

    Simulink 46

    Creacin del diagrama de bloques en

  • 7/27/2019 Ejemplos_Simulink

    47/99

    Crear dos nuevos bloques Gain desde la librera Math Oper

    Creacin del diagrama de bloques enSimulink (scso)

    Simulink 47

    Para girar el bloque gain, seleccionarlo,y elegir Flip Block en el men Format.Cambiar etiqueta. Doble click en losbloques Gain para modificar los

    parmetros. c/m =2, k/m = 4

    Creacin del diagrama de bloques en

  • 7/27/2019 Ejemplos_Simulink

    48/99

    Conectar todos los bloques. Etiquetar las seales haciendo doble click sobre las lneas.Para hacer derivaciones de una lnea se coloca el cursor sobre la lnea yse mantiene pulsada la tecla Ctrl hasta conectar al otro bloque.

    Creacin del diagrama de bloques enSimulink (scso)

    Simulink 48

    Ejecutar

    R lt d d l d l Si li k ( )

  • 7/27/2019 Ejemplos_Simulink

    49/99

    Resultados del modelo en Simulink (scso)

    Simulink 49

    Respuesta subamortiguadaOvershoot de 0.5Valor final de 3

    Comprobacin de resultados

  • 7/27/2019 Ejemplos_Simulink

    50/99

    Comprobacin de resultados

    Forma Standard

    Frecuencia natural

    )(1

    t f k

    x xk c

    mk x

    =++

    0.2==mk

    n

    Simulink 50

    Tasa de amortiguamiento

    Ganancia esttica

    5.02 ==

    k c

    n

    11

    ==k K

  • 7/27/2019 Ejemplos_Simulink

    51/99

    Uso del bloque de funcin de

  • 7/27/2019 Ejemplos_Simulink

    52/99

    Arrastrar los bloques Transfer Fcn desde la librera Continuous

    qtransferencia en Simulink para un scso

    Simulink 52

    Ajustar el Numerator y Denominator coefficient a [4]y [1 2 4] del bloque Transfer Fcn

    Bloque de espacio de estado

  • 7/27/2019 Ejemplos_Simulink

    53/99

    El bloque espacio de estado (state-space ) es unaalternativa al bloque funcin de transferencia

    Las variables de estado para el sistema mma sonposicin y velocidad

    Bloque de espacio de estado

    Las derivada de las variables de estado son

    Simulink 53

    x x x x

    =

    =

    21

    F m

    xmc

    xmk

    x x x 1

    212

    21

    =

    =

    Bloque de espacio de estado

  • 7/27/2019 Ejemplos_Simulink

    54/99

    En notacin matricial

    Bloque de espacio de estado

    =

    +=

    x x

    2

    1x

    BuAxx

    0]01[

    1

    =

    ==

    +=

    DC

    DuCxy

    x y

    Simulink 54

    =

    =

    =

    m

    F mc

    mk

    10

    B

    u

    Adonde: A = matriz del sistemaB = matriz de entradaC = matriz de salidaD = matriz de transmitancia directa

    Bloque de espacio de estado en Simulink

  • 7/27/2019 Ejemplos_Simulink

    55/99

    Arrastrar los bloques State Space desde la librera Continuos

    para 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

    Sistema discreto Simulink

  • 7/27/2019 Ejemplos_Simulink

    56/99

    Se modela la amortizacin de un prestmo de dinero:

    donde:b(k)pago mensual

    Sistema discreto Simulink

    )()1()( k pk rbk b =

    r = i+1siendo i el inters mensual, y p(k)pago de final de mes.

    Modelo de bloques

    Simulink 56

    k i

    p(k)

    b(k)

    -+ b(k-1) z -1

    Modelo de bloques de sistema discretol k

  • 7/27/2019 Ejemplos_Simulink

    57/99

    Si el balance de un prstamo es:

    Considerar como condiciones iniciales:Balance inicial: 15000

    Simulink

    )()1()( k pk rbk b =

    Pago mensual = 200

    Calcular el balance del prstamo despues de 100

    pagos

    Simulink 57

    Modelo de bloques de sistema discretoSi li k

  • 7/27/2019 Ejemplos_Simulink

    58/99

    A partir del modelo se identifican los bloquesnecesarios en las libreras Simulink:

    Bloque Constant (1) - Librera Sources Bloque Sum (1) - Librera Math Operations Bloque Gain (3) - Librera Math Operations

    Simulink

    Bloques Unit delay (1) - Librera Discrete Bloque Scope y Display (1) - Librera Sink

    Cada bloque requiere ser configurado con las ICs:

    Bloque Unit Delay, Initial Condition: 15000, Sample Time:1

    Bloque Gain: 1.01

    Simulink 58

    Modelo de bloques de sistema discretoSi li k

  • 7/27/2019 Ejemplos_Simulink

    59/99

    Modelo Simulink:Simulink

    Unit Delaz

    16341

    Constant

    200

    Simulink 59

    ScopeGain

    -K-

    Modelo de bloques de sistema discretoSi li k

  • 7/27/2019 Ejemplos_Simulink

    60/99

    SimulinkEn Parameter Configurationde Simulation ajustar a

    Solver type: Fixed-stepSolver: discreteStart time: 0 Stoptime: 100

    Simulink 60

    Resultado de la simulacin de sistemadi t Si li k

  • 7/27/2019 Ejemplos_Simulink

    61/99

    discreto Simulink

    Unit Delayz

    1

    Sco eGain

    -K-

    Display

    6341

    Constant

    200

    Simulink 61

    Creacin de Subsistemas: Encapsulado

  • 7/27/2019 Ejemplos_Simulink

    62/99

    Seleccionar todos los bloques yseales a ser includos en elsubsistema usando una cajaenvolvente

    Seleccionar Edit:Create Subsystemdel menu del modelo. Simulink

    p

    reemp aza os oques

    seleccionados por un bloqueSubsystem con puertos de entraday salida segn las lneas de sealesy les asigna un nombre por defecto

    Cambiar el tamao del bloqueSubsystem para que las etiquetasde puertas sean legibles y moverpara alinear

    Simulink 62

    Creacin de Subsistemas: Encapsulado

  • 7/27/2019 Ejemplos_Simulink

    63/99

    Para ver o editar el subsistema, hacerdoble-click sobre el bloque. Apareceruna nueva ventana conteniendo elsubsistema.

    Adems del los bloques, se aade unbloque Inport para la seal que entra

    p

    al subsistema y un bloque Outport seaade para la seal que sale delsubsistema. Si se cambia las etiquetasde esos puertos, cambia las etiquetasen el icono del nuevo bloque.

    Nota : Una vez se crea el subsistemano hay operacin inversa, por lo quese sugiere guardar el modelo antes decrear el subsistema.

    Simulink 63

    Creacin de Subsistemas: bloquesubsystem

  • 7/27/2019 Ejemplos_Simulink

    64/99

    Se desea modelar un sistema de masa-resorte:subsystem

    El modelo de cada mvil es:

    Simulink 64

    [ ])()(1 111 ++ = nnnnnnn

    n x xk x xk m x

    Ecuacin para un mvil:

    Creacin de Subsistemas: bloquesubsystem

  • 7/27/2019 Ejemplos_Simulink

    65/99

    Se construye el subsistema de un mvil segn el modelo. La ganancia delbloque 1/masa se asigna 1/m1.

    subsystem

    Despl1

    Velocidad

    1s

    Res.izq

    k1

    Res.der

    k2Posicion

    1s

    Fuerzaresultante

    Add1

    Add

    1/masa

    -K-

    Izq2

    Der1

    Simulink 65

    Se hacen dos copias del bloquesubsystem y se conectan losbloques como se muestra

    Creacin de Subsistemas: bloquesubsystem

  • 7/27/2019 Ejemplos_Simulink

    66/99

    Se asignan las constantes de los resortes y masas desde Matlab creandoun fichero .m (pe setSubsys) y se ejecuta en Matlab% Asignacin de constantes para resortes y masask1 = 1; k2 = 2; k3 = 4; m1 = 1; m2 = 3; m3 = 2;

    subsystem

    Los parmetros de cada bloque subsystem se configura:Mvil 1: valor del bloque Gain del bloque Resorte Izq a k1 y para el

    Simulink 66

    .1/m1. Inicializar el bloque Integrator Velocidad a 0 y el IntegratorPosicion a 1.Mvil 2: valor del bloque Gain del bloque Resorte Izq a k2 y para elbloque Resorte Der a k3. Valor del bloque Gain del bloque 1/masa a1/m2. Inicializar el bloque Integrator Velocidad a 0 y el IntegratorPosicion a 0.Mvil 3: valor del bloque Gain del bloque Resorte Izq a k3 y para elbloque 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.

    Creacin de Subsistemas: bloquesubsystem

  • 7/27/2019 Ejemplos_Simulink

    67/99

    Se configura el bloque Scope para almacenar los datos de salida alworkspace. Asignar Start time a 0 y Stop time a 100. Se puede obtener lagrfica desde Matlab con el comando simplot. Despus de ejecutar lassimulacin, se obtiene:

    subsystem

    Simulink 67

    Tiempo (seg)

    D e s p l a z a m i e n t o

    Ejemplo: enmascarado de bloques

  • 7/27/2019 Ejemplos_Simulink

    68/99

    Se crea un subsistema. Usamos eldesarrollado para el sistema masa-resorte copiando en una nueva ventanade modelo el bloque Masa-Resorte1

    Seleccionar el bloque y

    Simulink 68

    se esco e : as

    Subsystem en elmen de la ventana demodelos para obtenerla ventana de dilogodel editor Mask.Guardar el modelo(CartMask)

    Ejemplo: enmascarado de bloques

  • 7/27/2019 Ejemplos_Simulink

    69/99

    El editor Mask tiene cuatropestaas: Icon,Parameters, Initialization,Documentation.

    La pgina Documentationdel editor sirve paraestablecer un tipo , colocaruna descripcin del bloquey una descripcin msdetallada que se mostrarcuando se selecciona el

    sistema Help de Matlab

    Simulink 69

    Ejemplo: enmascarado de bloques

  • 7/27/2019 Ejemplos_Simulink

    70/99

    La pgina Parametersdel editor Mask se usapara definir parmetrospara el bloque delsusbsistema. Se divideen dos secciones: Unasuperior en la que se

    AadirEliminarMover arriba

    define los campos dedilogo y el orden enque se muestran,asociando una variableMatlab con cada campo.

    La seccin inferiorcontiene opciones paracada campo definido enla parte superior.

    Simulink 70

    Ejemplo: enmascarado de bloques

  • 7/27/2019 Ejemplos_Simulink

    71/99

    La pestaa Parameters se usapara crear, editar y eliminarcampos de dilogo asociado avariables Matlab con cada campo.Para cada campo aadido seasocia un Prompt, Variable, Type,Evaluate y Tunable.Resultado:

    Simulink 71

    Ejemplo: enmascarado de bloques

  • 7/27/2019 Ejemplos_Simulink

    72/99

    El campo Type en Dialog parameters puede ser: edit, Checkbox y Popups .El valor asignado a la variable asociada con un campo de dilogo dependedel estado de si selecciona el campo Evaluate.Si Evaluate se selecciona la variable asociada con el campo tendr el valorde la expresin del campo. El campo Tunable determina si el parmetro sepuede modificar durante la ejecucin de la simulacin.El campo Callback permite asociar con el parmetro un bloque de cdigoque se ejecuta cuando el parmetro de dilogo se ingresa.

    Simulink 72

  • 7/27/2019 Ejemplos_Simulink

    73/99

    Ejemplo: enmascarado de bloques

  • 7/27/2019 Ejemplos_Simulink

    74/99

    Las variables definidas en la mscara de un subsistema son locales y nopueden acceder a las variables del workspace de Matlab. Un campo deentrada en el dilogo de un bloque enmascarado puede contenerconstantes o expresiones usando variables definidas en el workspace deMatlab. El valor del contenido del campo de entrada se asigna a lavariable interna del subsistema enmascarado asociado con el campo deentrada. Esta variable se puede usar para inicializar el bloque o puedeusarse para definir otras variables internas definidas en el campoInitialization commands

    Simulink 74

    Despl1

    Velocidad

    1s

    Res.izq

    -K-

    Res.der

    -K-Posicion

    1s

    Fuerzaresultante

    Add1

    Add

    1/masa

    -K-

    Izq2

    Der1

    Ejemplo: enmascarado de bloques

  • 7/27/2019 Ejemplos_Simulink

    75/99

    La pgina Icon permite disear iconos propios para los bloquesenmascarados. Consiste de seis campos. En el campo Drawing commandsse puede poner comandos Matlab para dibujar y etiquetar el icono.

    Masa-Resorte1

    m

    Simulink 75

    Si en la pgina Initialization seagrega la lnea:m_etiq=sprintf('%1.1f kg',mass);

    y en Drawing Commands:text(0.45,0.6,'m')text(0.25,0.4,m_etiq)

    Ejemplo: Uso de bloque enmascarado

  • 7/27/2019 Ejemplos_Simulink

    76/99

    Una vez que se crea el bloque enmascarado se puede copiar a unaventana de modelo de forma idntica cuando se copia de la librera debloques de Simulink. Para el ejemplo se arrastra tres copias del bloqueMasa-Resorte, se conecta y se asignan los parmetros con un fichero .m.El modelo as queda completo.

    Simulink 76

    Ejemplo: Vector de estado del modelo

  • 7/27/2019 Ejemplos_Simulink

    77/99

    Se tiene el siguiente modeloSimulink guardado en el ficherollamado ejmod.mdl

    Velocidad

    1s

    Sine Wave Scope

    Gain 1

    0.4

    Gain

    0.2

    Desplazamiento

    1s

    En la ventana de comandos Matlab seejecuta el comando:>> [sizes,x0,states]=ejmod([],[],[],0)

    Simulink 77

    x0 =00

    states ='ejmod/Desplazamiento''ejmod/Velocidad'

    s zes =

    2000001

    Ejemplo: linealizacin de un modelo

  • 7/27/2019 Ejemplos_Simulink

    78/99

    Se tiene el siguiente sistema no lineal:

    cuyo modelo (nolinear_mod.mdl) en Simulink es:2

    3212

    21

    3 x x x x x x

    +=

    =

    x1 Out1

    x2Integrator

    1s

    x1Integrator

    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

    Movimiento de un vehculo

  • 7/27/2019 Ejemplos_Simulink

    79/99

    Considrese un coche conducido en lnea recta a lolargo de una carretera plana

    La ecuacin de movimiento se deduce a partir de lossiguientes factores:

    Simulink 79

    b.vb.v

    vv

    mm

    Modelo del vehculo

  • 7/27/2019 Ejemplos_Simulink

    80/99

    Ecuaciones: F = m.dv/dt + b.vdonde: F = fuerza proporcionada por el motor

    Simulink 80

    m = masa del vehculo dv/dt = tasa de cambio de velocidad (aceleracin) b = factor de amortiguamiento (resistencia del viento) v = velocidad (velocidad del vehculo)

    Modelo del vehculo: Simulink

  • 7/27/2019 Ejemplos_Simulink

    81/99

    Ecuaciones: F/m v.b/m= dv/dt

    Subsistemas: La entrada del sistema es el control de combustible edal

    Simulink 81

    de aceleracin), bajo control del conductor El subsistema Engine Management convierte la posicindel pedal a potencia del motor

    El subsistema Vehicle Dynamics convierte la potenciadel motor a velocidad del vehculo

    La salida se suministra en horsepower (hp)

    Modelo del vehculo: Simulink

  • 7/27/2019 Ejemplos_Simulink

    82/99

    Simulink 82

    Subsistema Engine Management

  • 7/27/2019 Ejemplos_Simulink

    83/99

    Convierte la entrada del pedal de combustible (0-100%) a potencia del motor (0 200 hp)

    Simulink 83

    Tablas de interpolacin (Lookup Tables)

  • 7/27/2019 Ejemplos_Simulink

    84/99

    Convierte rpm a potencia

    Simulink 84

    Subsistema Vehicle Dynamics

  • 7/27/2019 Ejemplos_Simulink

    85/99

    Convierte la entrada del pedal de combustible (0-100%) a potencia del motor (0 200 hp)

    Simulink 85

    Modelo del vehculo: Ajustes

  • 7/27/2019 Ejemplos_Simulink

    86/99

    Cambiar la masam del vehculo entre 1 ton (cochepequeo) y 35 tons (camin).

    Incrementar la resistencia del aire incrementando lavariableb.

    Simulink 86

    Usando datos reales del fabricante para la LookupTable. Se puede modelar tambin motores diesel

    Remplazar la entrada Ramp con una entrada Steppara simular cambios bruscos en el pedal deaceleracin

    Cancelacin de ruido acstico (CRA)

  • 7/27/2019 Ejemplos_Simulink

    87/99

    Desarrollar el modelo Simulink de un sistema dereduccin de ruido utilizando el algoritmo de mnimo

    cuadrados medio (Least Mean Squares, LMS) En audio ruido se refiere a cualquier seal junto a

    Simulink 87

    las que se desean escuchar Se usa un filtro adaptativo

  • 7/27/2019 Ejemplos_Simulink

    88/99

    CRA: La ecuacin LMS

  • 7/27/2019 Ejemplos_Simulink

    89/99

    El algoritmo Least Mean Squares (LMS) actualizacada coeficiente sobre la base de cada muestra y

    basado en el error e(n) =

    Simulink 89

    Esta ecuacin minimiza la potencia del error e(n) El valor de (mu) es crtico (compromiso)

    Si es demasiado bajo, el filtro reacciona lentamente Si es muy grande, la resolucin del filtro es pobre

    CRA: Modelo Simulink

  • 7/27/2019 Ejemplos_Simulink

    90/99

    Simulink 90

  • 7/27/2019 Ejemplos_Simulink

    91/99

    Modulacin DSB-AM

  • 7/27/2019 Ejemplos_Simulink

    92/99

    Simulink 92

    Transformada de Park

  • 7/27/2019 Ejemplos_Simulink

    93/99

    Simulink 93

    Sistema de Control PI

  • 7/27/2019 Ejemplos_Simulink

    94/99

    Simulink 94

    Control de tensin de un generador

  • 7/27/2019 Ejemplos_Simulink

    95/99

    Simulink 95

    Control de tensin de un generador

  • 7/27/2019 Ejemplos_Simulink

    96/99

    Simulink 96

    Control tensin/frecuencia de ungenerador

  • 7/27/2019 Ejemplos_Simulink

    97/99

    Simulink 97

    Control tensin/frecuencia de ungenerador

  • 7/27/2019 Ejemplos_Simulink

    98/99

    Simulink 98

    Circuito paralelo RLC

  • 7/27/2019 Ejemplos_Simulink

    99/99

    Simulink 99