Anda di halaman 1dari 23

I.T.M.

CONTROL I

RESUMEN
Pues en el presente documento se pretende dar una introduccin a la
herramienta de MATLAB llamada Simulink que esta a su vez nos es de gran
utilidad para simular sistemas, en esta el sistema ya puede ser representado
por bloques como se ha hecho anteriormente a mano.
Para iniciar se ve una demostracin de lo que es el Simulink, ya que se
entendi se realizan unos modelos.
Se explica cmo iniciar Simulink a partir de su botn en MATLAB,
posteriormente se ve todo lo relacionado a su manejo como es: el uso del
navegador de libreras y la ayuda en Simulink (ayuda en lnea, help
Simulink, navegador de ayuda).
Despus se ven algunos ejemplos demostrativos, luego que se abren
dichos ejemplos se ve como ejecutar correr la simulacin.
Luego ya que se corri la simulacin ve como modificar los parmetros
de dicha simulacin.
Posteriormente se ve lo que es la creacin de un modelo sencillo, la
introduccin de bloques en el modelo, modificacin del parmetro de
cada bloque, como conectar los bloques y como correr nuestro modelo.

I.T.M.
INTRODUCCIN

CONTROL I

MATLAB dispone de un entorno grafico para el desarrollo de las


actividades que realiza en el rea de trabajo llamado Simulink. El uso de
Simulink es para simular sistemas. Este se utiliza una interfaz grafica de
usuario (GUI) para que el usuario interactu con los bloques que
representan subsistemas. Los bloques se pueden situar donde se requiera,
modificar su tamao, etiquetarlos, especificar sus parmetros, e
interconectarlos para completar sistemas a partir de los cuales se pueden
correr las simulaciones.
Las caractersticas bsicas del Simulink son: simulacin de sistemas
dinmicos, entorno grafico, el sistema se representa como una
interconexin de bloques elementales, cada bloque lleva asociado un
modelo matemtico que representa su relacin entrada/salida.

DESARROLLO
Primero veremos un demo de Simulink y posteriormente se realizan modelos
sencillos. Un ejemplo de un sistema es el utilizado para demostrar el uso de
la condicional if-then-else, que se muestra a continuacin en la figura 1:

Figura 1.

I.T.M.

CONTROL I

INICIANDO SIMULINK
Para iniciar el programa Simulink, se puede realizar de diferentes formas, la
mas sencilla teclear desde la ventana de comandos de MATLAB:
>>simulink

Tambien es posible acceder al programa desde el botn Simulink de la


barra de botones de MATLAB, esto se ve en la figura 2, el botn de Simulink
esta marcado con un circulo rojo.

Figura 2.
Al iniciar Simulink, se presenta una ventana como la de la figura 3, que
corresponde al Navegador de libreras o Library browser de Simulink:

I.T.M.

CONTROL I
En
esta
ventana
se
muestran todas las libreras
disponibles; cada una de
ellas contiene bloques
elementales con los que se
pueden construir sistemas.
En
funcin
de
la
instalacin concreta de
Simulink, el nmero de
libreras puede ser menor o
mayor.

Figura 3.

Ayuda En Simulink
Debido a que Simulink es un toolbox de MATLAB, ayuda se estructura del
mismo modo:
-Ayuda En Lnea
Se accede a travs de la ventana de comandos de MATLAB. La ayuda se
obtiene en modo texto. Por ejemplo, al teclear
>>help simulink
Se visualizara la ayuda que lista los comandos de Simulink. Si se requiere de
algn bloque en especial se le da el nombre del bloque como ya se ha
visto. Esto se muestra en la figura 4.

I.T.M.

CONTROL I

Figura 4.
-Navegador de Ayuda
Se accede desde el men Help, seleccionado la opcin Simulink help. Esto
se puede ver en la figura 5.

Figura 5.

I.T.M.

CONTROL I

EJEMPLOS DE DEMOSTRACIN DE SIMULINK


Simulink proporciona ejemplos y demostraciones de sus principales
funcionalidades. Se accede a ellos a travs del men Help (de MATLAB)
seleccionando la opcin Demos. Esto se ve en la figura 6.

Figura 6.

EJECUCIN DE UN SISTEMA EJEMPLO


Como primer paso, ejecutaremos el ejemplo ifsub, demostracin de
bloques if-Then-Else.
Formas de abrir el sistema ejemplo:
Desde la ventana de comandos de MATLAB, teclear ifsub.
Navegar en los ejemplos (demos) de Simulink y seleccionar, dentro
de la carpeta Block Diagramming Features, el modelo If-Then-Else
Blocks

I.T.M.

CONTROL I

El ejemplo tiene parecido con el que se muestra en la figura 1 como se ve


en la figura 7.

Figura 7.
Forma de ejecutar la simulacin: Para la ejecucin de la simulacin se
puede realizar desde el men Simulation seleccionando la opcin Start o
con el icono de play de la barra de tareas.
El sistema indica con un aviso acstico cuando se ha alcanzado el final de
la simulacin; si deseramos parar la ejecucin antes de llegar al final,
bastara con seleccionar, dentro del men Simulation, la opcin stop.
Esto es particularmente til en simulaciones lentas; una simulacin rpida
como la de este ejemplo puede durar menos de un segundo en una PC
normal.
Ms adelante comprobaremos cuales han sido los resultados de la
simulacin: se han obtenido tanto la evolucin de la temperatura en el
interior de la casa como los costes de calefaccin.
Algunos detalles importantes sobre la simulacin:

I.T.M.

CONTROL I
Si no se han modificado los parmetros iniciales, Simulink habr
simulado el comportamiento del sistema durante los primeros 10
segundos.
Los instantes de comienzo y fin de la simulacin se pueden cambiar
dentro del men Simulation eligiendo la opcin Simulation
Parameters . Probaremos a relanzar la simulacin con distintos
tiempos de comienzo (Start Time) y fin (Stop Time). El resto de los
parmetros no se modificaran por ahora.

Las ventanas de representacin grfica de resultados: Estas ventanas


funcionan de un modo similar a un registrador de seales o un osciloscopio
digital. Seran bastante utilizadas en nuestras simulaciones y, por tanto,
conviene familiarizarse con su comportamiento. Son el elemento Scope y
en el ejemplo aparece una. Para visualizar los resultados deberemos hacer
doble clic sobre este elemento:
IMAGEN BLOQUE DEL OSCILOSCOPIO
Una vez hecho doble clic sobre el elemento, aparecer una ventana
grafica con los resultados de simulacin; es una imagen similar a la que se
veria en un osciloscopio digital:
La ventana de resultados permite ajustar
la zona a visualizar: los tres botones con
forma de lupa, sirven para hacer zoom
sobre un rea de la grfica. El primero de
ellos permite definir un rectngulo sobre
el grafico y ampliar exactamente esa
rea. Los otros permiten definir una recta
vertical u horizontal respectivamente y
hacen zoom solo en una dimensin. Por
ltimo, el siguiente botn, que presenta
un dibujo de unos prismticos, sirve para
ajustar el tamao del grafico a los
disponibles.
Si el tiempo de simulacin es muy
elevado, la grfica no retiene todos los
datos, sino que descarta los mas antiguos
y conserva solo los ltimos. Para modificar
el nmero de datos a retener, se debe
pinchar sobre el segundo botn de la
izquierda (Parameters) y modificar, dentro
de Data History el valor indicado para el

I.T.M.

CONTROL I

TIPOS DE BLOQUES EN SIMULINK


En el sistema elegido como ejemplo puede observarse como existen
multitud de bloques distintos; todos los bloques de Simulink se estructuran
de diferentes categoras. La ventana que permite arrancar Simulink permite
comprobar cules son las categoras de bloques existentes. Basta con
hacer clic sobre el signo + que acompaa al elemento Simulink de la lista,
para profundizar en las opciones existentes. En la figura 8 se muestra, en la
figura 8-a, el aspecto inicial del navegador; y en la figura 8-b el resultado
de pulsar sobre el signo + de la categora Continuous. Los elementos que
aparecen a la derecha son los bloques con los que se puede construir un
modelo.

Figura 8-a

I.T.M.

CONTROL I

Figura 8-b
A continuacin se indican algunos de los bloques que se usaran en esta
practica y las siguientes y la categora a la que pertenecen:
Sources: Entradas o fuentes de seales

Step (escalon)
Ramp (rampa)
Sine wave (senoidal)
Pulse generador (tren de pulsos)
From workspace (lectura de datos desde MATLAB)

I.T.M.

CONTROL I

Sinks: Salidas o dispositivos de visualizacin/ almacenamiento de variables


del sistema.
Scope
Display
To workspace
Continuous: Representan sistemas continuos por su relacin entrada-salida
Derivative
Integrator
Transfer Fen (funcin de transferencia en s expresada como cociente
de polinomios)
Zero Pole(funcin de transferencia en s expresada en forma
factorizada)
Math operators: Operaciones matemticas sobre seales
Sum (sumador de seales)
Gain(ganancia o multiplicacin de una seal por una constante)
Signal Routing: Permite realizar conexiones especiales entre seales
Mux: (multiplexor: agrupa distintas seales en un vector o bus)
El procedimiento de trabajo para la creacin de un modelo ser
seleccionar los bloques adecuados de entre los presentes en estas
categoras, colocarlos sobre la ventana de diseo y establecer las
conexiones correspondientes entre ellos. A continuacin crearemos un
modelo de ejemplo.

I.T.M.

CONTROL I

CREACION DE UN MODELO SENCILLO


Como ejemplo, crearemos un modelo que nos permita generar una seal
cualquiera (una funcion del tiempo) y representar sus valores.
Comenzaremos representando la funcion sen(t).
Primer paso: creacin del modelo.
Desde la ventana Simulink Library Browser, haremos clic sobre el botn
create new model (pagina en blanco). Automticamente se abrir una
ventana en blanco que ser la ventana de diseo para nuestro modelo.
Esto se muestra en la figura 9 rodeando con un crculo el botn
mencionado.

Figura 9.

I.T.M.

CONTROL I

Segundo paso: introduccin de bloques en el modelo.


Los elementos se introducen haciendo un arrastre con el ratn desde la
ventana que contiene el listado de todos los bloques hacia la ventana de
diseo. En nuestro caso requeriremos los siguientes bloques:
Dentro de la categora Sources, el bloque Sine Wave. Este
elemento se corresponde con una seal senoidal, que es la que
deseamos generar.
Dentro de la categora Sinks, el bloque Scope. Sera el que
utilicemos para visualizar la seal.
Una vez introducidos estos modelos, la ventana de diseo presentara un
aspecto como el que se muestra en la figura 10.

Figura 10.
Tercer paso: modificacin de parmetros en los bloques introducidos.
Todos los bloques de Simulink permiten una cierta configuracin. En
particular, el bloque correspondiente a la funcin seno se puede
configurar en cuanto amplitud, frecuencia, fase, etc. Para ello se debe
hacer doble clic sobre el bloque, con lo que aparecer una ventana de
introduccin de parmetros.
Para nuestra primera simulacin, introduciremos los siguientes valores:
Sine type:
time based (buscamos generar una seal continua y
no discreta)
Amplitude: 4 (la seal tomara valores de -4 a +4)
Bias:
0 (componente continua=0, seal centrada)
Frequency: 3 rad/s (frecuencia de la seal seno)
Phase:
0 (desfase respecto del instante t=0)
Sample time: 0 (tiempo de muestreo, ser cero para seales
continuas)

I.T.M.
Lo anterior se muestra en la figura 12

CONTROL I

Figura 12.
Cuarto paso: interconexin de elementos.
Una vez situados los elementos en la ventana de diseo, es necesario
establecer conexiones entre ellos. Para conectar 2 elementos debe
hacerse un arrastre con el ratn desde la salida de uno de ellos hasta la
entrada del elemento correspondiente. Una vez que establecidas las dos
conexiones necesarias para nuestro sistema, deberamos obtener lo que se
muestra en la figura 13

Figura 13.

I.T.M.

CONTROL I

Quinto paso: lanzamiento de la simulacin y comprobacin de resultados.


Lanzaremos la simulacin con la opcin Start del men Simulation y
comprobaremos los resultados obtenidos haciendo doble clic sobre el
bloque Scope. Se mostrara una ventana grafica como la vista en el
primer ejemplo sobre la que podremos hacer zoom para ajustar nuestra
curva. Deber aparecer algo similar a lo que se muestra en la figura 14.

Figura 14.
Una vez creado el esquema, probaremos a representar otras seales que
nos ofrece Simulink dentro de la categora Sources. Para ello borraremos
del esquema el bloque Sine Wave y en su lugar insertaremos otro
cualquiera. En particular, probaremos uno a uno los siguientes bloques:
Step (escalon), la simulacin de es este se muestra en la figura 15.
Figura 15
Ramp (rampa), este se muestra en la figura 16.
Figura 16
Pulse generator (tren de pulsos), este se muestra en la figura 17.
Figura 17
En cada uno de los casos debemos lanzar de nuevo la simulacin

I.T.M.

CONTROL I

CREACION DE UN SEGUNDO MODELO


A continuacin crearemos un modelo algo ms complicado, en el que se
realice alguna operacin con las seales. Vamos a crear un sistema que
nos permita calcular la integral de una seal.
El bloque que realiza la integral de una seal se encuentra dentro de la
categora Continuous. Es el bloque denominado Integrator. Con l, y con
los bloques que tenamos del esquema anterior, deberemos realizar un
montaje como el que se muestra en la figura 18.

Figura 18-a

Figura 18-b

I.T.M.

CONTROL I

Si ejecutamos la simulacin y visualizamos los resultados veremos como se


obtiene la integral de la seal de entrada. Podemos probar a cambiar la
seal de entrada para comprobar como:
La integral de una seal escalon es una seal rampa
La integral de una seal rampa es una seal parbola
Etc.
A continuacin haremos un cambio en el esquema que nos permita ver en
el mismo grafico las dos seales: la original y su integral.
Para visualizar dos seales en el elemento Scope es necesario recurrir al
bloque multiplexor Mux de la categora Signals Routing. Este bloque
tiene por finalidad agrupas 2 o mas seales para formar un vector. De este
modo, se agruparan la seal de entrada y la seal de salida y el conjunto
ser lo que se envi al osciloscopio. Las conexiones se deben realizar tal y
como se muestra en la figura 19.

Figura 19.

I.T.M.

CONTROL I

En este esquema hay algo nuevo que no sabemos hacer: como crear una
rama nueva sobre una conexin ya existente (la segunda rama que llega
al multiplexor no parte de la salida de un bloque, si no de un punto
intermedio de una conexin). La forma de crear este tipo de conexiones es
pulsando el botn Ctrl al mismo tiempo que se comienza a arrastrar el
ratn.
Lanzando una nueva simulacin, debemos comprobar que en la ventana
del osciloscopio se muestran las dos seales: la original y la integral, tal y
como se muestra en la figura 20.

Figura 20.

SIMULACIN DE UN SISTEMA DESCRITO POR UNA ECUACIN DIFERENCIAL


En el ejemplo anterior se ha comprobado como es posible obtener la
integral de una seal cualquiera. Esta ser la herramienta que utilizaremos
para representar una ecuacin diferencial.
En nuestro caso queremos representar un sistema fsico consistente en una
masa M unida a un muelle de constante elstica K, y con un rozamiento
viscoso V, tal y como se describe en la figura:

I.T.M.

CONTROL I
El objetivo ser ver cmo afecta la
fuerza aplicada f(t) al movimiento de la
masa, descrito por x(t).
La ecuacin diferencial que rige el
comportamiento de este sistema es:
f(t)= M(d2 x(t)/dt2) + B(d x(t)/dt)+Kx(t)

Para presentar este sistema en Simulink, veremos a continuacin unos


ejemplos de utilizacin de los bloques integrador, sumador y multiplicador
por constante (se encuentran dentro de las categoras Continuous y
Math). Dado que no son ejemplos completos, no se deben introducir en
Simulink, se incluyen solo como ayuda para entender la forma de
representar una ecuacin cualquiera:
Bloque integrador: Permite obtener a partir de d2x(t)/dt2 sus integrales
dx(t)/dt y x(t) como se muestra en la figura 21:

Figura 21

I.T.M.

CONTROL I

Bloque sumador: permite sumar/ restar seales como se muestra en la


figura 22.

Figura 22.
Bloque multiplicador o ganancia: permite multiplicar un bloque por una
constante este se muestra en la figura 23:

Figura 23.

I.T.M.

CONTROL I

Una vez vistos estos ejemplos pasaremos a representar la ecuacin


difernecial propuesta.
Para ello despejaremos de la ecuacin inicial el termino d2x(t)/dt2,
obteniendo la siguiente ecuacin y ya el esquema en la figura 24:
d2x(t)/dt2=(1/M)(f(t)- Bdx(t)/dt-Kx(t))

K=10 B=1 1/M=1


Figura 24.
Analizando el diagrama podemos comprobar qcomo corresponde
exactamente a la ecuacin diferencial planteada para el sistema. Otros
sistemas de cualquier tipo (elctricos, trmicos, etc.) podran representarse
de la misma forma si se conoce su ecuacin diferencial.
Se han elegido los siguientes valores para las constantes y para f(t):
K:10
B:1
M:1
f(t): funcin escaln

I.T.M.

CONTROL I

Nota: En el diagrama que se muestra alguno de los bloques se encuentra


girado para que sea ms difcil realizar las conexiones. Esto se hace
seleccionando el bloque y eligiendo la opcin Flip Block del men
Format.
Despuesde comprender el funcionamiento del esquema propuesto, se
introduce en Simulink y observaremos cual es el resultado obtenido en el
elemento Scope (ver figura 25). Lo que se ve es el efecto que una fuerza
en forma de escalon (seal de entrada) produce sobre la posicin (seal
de salida). En el conjunto muelle-amortiguador, el movimiento de la masa
debe presentar oscilaciones que poco a poco deben ir desapareciendo.

Figura 25.
Una vez que hemos creado el esquema que permite simular un
determinado sistema fsico, podemos comprobar hasta que punto es til
disponer de una simulacin para comprobar el funcionamiento de
cualquier sistema. Realizaremos las siguientes pruebas:
Sobre el esquema anterio, aumentaremos el valor de la masa M
cambiando la ganancia (Gain) del elemento correspondiente.
Realizaremos de nuevo la simulacin y comprobaremosel efecto de
las variaciones de este parmetro.
Haremos lo mismo con la constante elstica K con el rozamiento
viscoso B

I.T.M.

CONTROL I
Por ultimo, probaremos la respuesta ante otros tipos de seal de
entrada, senoidal, pulsos, etc.

CONCLUSIONES

Anda mungkin juga menyukai