MODELAMIENTO DE PROCESOS INDUSTRIAL
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
INSTRUCCIONES
1. Las actividades de laboratorio y los informes se desarrollarán conjuntamente
por dos alumnos como máximo.
2. Si algún alumno no pudo hacer las actividades el día previsto para el
laboratorio, podrá entregar el informe posteriormente, siempre y cuando
justifique su ausencia, de no hacerlo tendrá nota (0.0) para ese laboratorio.
3. Los trabajos o informes deberán ser entregados, únicamente en la fecha que
el profesor determine previamente ante el grupo de alumnos.
4. Las soluciones a los ejercicios deberán ser realizadas en forma clara, simple
y organizada. No deberá ser utilizado en el informe material ya presentado
en las guías de laboratorio.
5. El informe contendrá las actividades ejecutadas con sus respectivas
respuestas y análisis con alto criterio de ingeniería.
6. La solución de los ejercicios deberán ser simuladas en Matlab® – Simulink.
OBJETIVO
Las actividades a seguir tienen por objetivo fijar la operación y el uso del Matlab® y
del Simulink, programas que serán usados en el decorrer de todo el curso, tanto
como herramienta para futuros proyectos de controladores, como para simulación
de sistemas y análisis de datos, y especialmente como herramienta para
implementación.
REFERENCIAS
1- Ogata, K. Engenharia de Controle Moderno. Prentice Hall do Brasil, 3a. Ed.,
1998.
2- Hanselman, D.; Littlefield, B. MATLAB® 5: Versão do Estudante, Guia do
Usuário, Makron Books, 1999.
3- www.mathworks.com
4- sistemas dinámicos del ingeniero Francisco Moreno y Armando Becerra.
1. ¿QUÉ ES MATLAB®?
La primera versión de Matlab® data de los años 70, y fue diseñada como
herramienta de apoyo para los cursos de Teoría de Matrices, Álgebra Lineal y
Análisis Numérico. Su nombre matlab® corresponde al acrónimo: “MATrix
LABoratory”.
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
Hoy en día, matlab es un programa muy potente, con un entorno agradable, que
incluye herramientas de cálculo científico y técnico y de visualización gráfica, así
como un lenguaje de programación de alto nivel.
Figura 1. La ventana principal del Matlab® (versión 7)
2. OPERACIONES ELEMENTALES Y VARIABLES
La forma de representar números y de operar de matlab es la misma que la de las
calculadoras de bolsillo.
Por ejemplo:
Se observa que se usa el punto como separador decimal, en lugar de la coma. Las
operaciones usuales se realizan con los mismos símbolos y en la misma
secuencia que en las calculadoras.
Para que matlab ejecute una orden, es preciso pulsar la tecla ENTER, por ejemplo,
para calcular el valor de 3 + 5 × 2 + 1, se ejecuta la instrucción
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
Y se obtiene como respuesta:
Esto quiere decir que el resultado se ha almacenado en la variable ans. En cambio,
Indica a matlab que el resultado de esa operación ha de guardarse en la variable s.
Compruébelo y observa la diferencia con el caso anterior.
2.1. Reglas para nombrar variables
• El nombre de una variable puede tener como máximo 63 caracteres (31 en
versiones anteriores), que pueden ser letras, números y el guión de subrayar
• El primer carácter tiene que ser una letra. lado2 es un nombre válido, pero no lo
es 2lado.
• Las mayúsculas y las minúsculas tienen valor distintivo. La variable Base es
distinta de la variable base.
• Dentro de un nombre de variable no puede haber espacios en blanco. lado1 es
válido, pero no lado 1.
• Existen nombres que deben evitarse, porque tienen significado propio en Matlab:
ans, pi, …..
3. EL ESCRITORIO
La ventana de Matlab muestra un escritorio dividido en varias partes:
• Las órdenes se escriben en la Command Window.
• La ventana Workspace proporciona diversa información sobre las variables
utilizadas.
• Todas las órdenes quedan registradas en el Command History. Si queremos borrar
la ventana de órdenes (Command Window) podemos hacerlo utilizando la orden
clc; hay que tener en cuenta que esto no afecta a las variables que ya estén en
uso.
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
4. CÓMO ENCONTRAR AYUDA (HELP)
La orden helpwin sirve para obtener información sobre un tema concreto. Por
ejemplo,
Si no se conoce la orden exacta sobre la que deseamos ampliar la información, se
puede escribir simplemente helpwin para abrir una ventana de ayuda Help en la
que aparecerá, entre otras cosas, una lista de temas, un índice de términos y un
buscador de palabras.
5. FORMATOS
Cuando matlab presenta los resultados, elige por defecto un formato con tres dígitos
como máximo para la parte entera y 4 como máximo para la parte decimal; si el
número que se quiere mostrar necesita más dígitos, se utiliza la notación
exponencial. Esta es la opción short de la orden format. Por ejemplo:
Independientemente del formato con el que se muestra un cálculo en pantalla, el
ordenador realiza todos los cálculos con diez y seis cifras significativas.
6. ALGUNAS FUNCIONES MATEMÁTICAS
Matlab dispone de una gama muy completa de funciones —con la orden help elfun
se puede obtener la lista completa— que se corresponden con las funciones
matemáticas más utilizadas. Algunos ejemplos de estas funciones son:
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
Es importante tener en cuenta que las funciones trigonométricas, el ángulo siempre
se expresa en radianes.
7. VECTORES Y MATRICES
Uno de los aspectos más notables de Matlab lo constituye la forma en que permite
manipular y operar con vectores y matrices.
7.1. Vectores fila
En general los vectores fila se introducen escribiendo entre corchetes cada una de
sus componentes separadas por un espacio o una coma. Por ejemplo:
También se pueden introducir especificando el valor de cada componente en el
orden que se desee:
Otras órdenes para casos particulares:
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
8. EXPRESIONES SIMBÓLICAS Y CADENAS DE CARACTERES
Las capacidades de Matlab se pueden ampliar instalando diversos módulos
(toolboxes). Uno de ellos, denominado Symbolic Math Toolbox, permite realizar
cálculo simbólico, es decir, permite manipular las variables sin necesidad de utilizar
sus aproximaciones numéricas.
Para utilizar el módulo de cálculo simbólico Symbolic Math Toolbox es necesario
crear unos objetos simbólicos que representan las variables simbólicas. Por
complejidad del lenguaje, a los objetos simbólicos de Matlab también se les llama
variables simbólicas. Otro tipo de variables de Matlab son las cadenas de
caracteres; una cadena de caracteres es una colección de caracteres ascii
encerrados entre apóstrofos. Por ejemplo:
Entre otras, el módulo Symbolic Math Toolbox permite realizar las tareas siguientes:
9. M-ARCHIVOS
Las órdenes de matlab se pueden introducir y ejecutar directamente a través de la
ventana de comandos, pero también es posible escribir un archivo de texto que
contenga las órdenes y ejecutarlas todas en bloque. Un archivo que contiene
órdenes de matlab se denomina un M-archivo. Para que matlab reconozca como tal
un M-archivo, este debe tener además la extensión .m.
Los M-archivos se pueden escribir utilizando el editor incluido en la instalación de
matlab, al que se accede a través del menú File. Para ejecutar las órdenes
contenidas en el M-archivo nombre.m, basta teclear su nombre desde la ventana
de comandos. Por ejemplo
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
Un caso especial de M-archivos son los archivos de función. Son aquellos cuya
primera línea ejecutable (no de comentario) comienza con la palabra function.
Una función se define con un m-fichero, cuyo nombre coincide con el de la función.
La primera línea ejecutable es:
Seguida de las instrucciones necesarias. Cuando hay más de un argumento de
salida, éstos deben ir entre corchetes y separados por comas. Por ejemplo:
Es conveniente comenzar las primeras líneas del fichero con un comentario
(iniciándolas con el símbolo %), explicando cómo debe usarse la función y sus
argumentos (tanto de entrada como de salida). De esta manera, dicha explicación
será visible mediante la instrucción help nombre_función. La función puede
finalizarse en cualquier momento utilizando la instrucción return. Por ejemplo
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
10. REPRESENTACIONES GRÁFICAS UTILIZANDO MATLAB
10.1. Representación de funciones con la orden ezplot
La orden ezplot permite representar gráficamente expresiones simbólicas en el
plano. Cada vez que se utiliza esta orden, matlab crea y activa una ventana gráfica
a la que le asigna el nombre figure. Algunos usos de la orden ezplot son:
Por ejemplo:
Produce el resultado que se observa en la siguientes Figuras.
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
Figura 2. Representación gráfica de funciones a través de matlab®.
10.2. Representación de funciones con la orden fplot
Esta es una orden similar a ezplot, pero se utiliza para representar funciones
definidas mediante M-archivos o introducidas como cadena de caracteres.
11. SIMULINK
Simulink, también producido por la the Mathworks Inc., es un programa destinado a
la simulación de sistemas dinámicos. Opera en conjunto con Matlab, pero al
contrario de este su interfase con el usuario es totalmente gráfica, hecha a partir de
la interconexión de bloques. Simulink es ejecutado a partir del Matlab a través de su
ícono , o utilizando el comando:
La ventana principal de Simulink tiene apariencia de la figura de abajo. Note que
cada una de las cajas (Sources, Sinks, etc.) pueden ser accedidas a partir de un
click del mouse, haciendo con que se abran nuevas ventanas. Cada bloque puede
ser conectado, generando al sistema a ser simulado.
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
Figura 3. Ventana principal del Simulink®.
La idea general es utilizar el Simulink para simular los sistemas. Para crear un nuevo
sistema basta escoger FILE>NEW en el menú de la parte superior de la ventana.
Con eso una nueva ventana en blanco, con la misma barra de menús, aparecerá en
una pantalla. Como primer ejemplo se va crear un diagrama como el descrito en la
figura de abajo, copiando los bloques de sus respectivos grupos. Realice eso
arrastrándolos con el mouse. La conexión entre los bloques se hace de la misma
forma.
Figura 4. Proyecto a objetos utilizando simulink.
Una vez que se tenga hecho eso, se debe dar double-click en ambos bloques para
tener acceso a sus configuraciones. Configure el generador de señal para generar
una onda diente de sierra con una frecuencia de 1 Hz y con una amplitud de pico
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
unitaria. Configure el osciloscopio para exhibir por lo menos unos diez períodos de
la onda.
Antes de iniciar la simulación es necesario entender un poco su funcionamiento.
Simulink, como todos los programas que hacen simulación de sistemas dinámicos,
utiliza algoritmos de integración para resolver la evolución temporal de las
ecuaciones del sistema numéricamente. En la figura 5 se presenta la ventana de
configuración de la simulación en simulink, fue obtenida desde el menú
SIMULATION>PARAMETERS y que ilustra como el usuario puede hacer uso de los
diferentes algoritmos y de sus características.
Es importante resaltar que Simulink utiliza algoritmos de paso variable, es decir que
el paso de integración varía entre los valores mínimo y máximo de la ventana de
parámetros conforme a un algoritmo interno previamente seleccionado, relacionado
con el valor del parámetro de tolerancia. Los valores default de estos parámetros
“auto” son adecuados para el sistema. Por lo tanto se debe verificar siempre si la
simulación ocurre como se espera. Si se presentan problemas con el paso de
integración, se debe experimentar hacer el paso mínimo igual al paso máximo y
disminuirlo paulatinamente.
De los diversos algoritmos de integración, probablemente se hará uso del
RungeKutta de 4ª y 5ª orden (“Runge- Kutta 5”) o del algoritmo de Euler. Más
detalles sobre los algoritmos de integración, sus aplicaciones específicas y
configuración de parámetros podrá ser consultados en la sección “Simulink User’s
Guide”, disponíble en Mathword. Finalmente, para iniciar la simulación basta usar la
opción SIMULATION>START del menú principal y su modelo simulink será
ejecutado.
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
Figura 5. Ventana configuración para simulaciones en simulink.
EJERCICIOS PARA REALIZAR EN MATLAB
LABORATORIO N° 1
1) Ejercicio:
Hacer un vector de 6 términos desde -4 hasta 7 utilizando el comando linspace
2) Ejercicio:
Se tiene un vector v = [1 2 3 4], sumarle a cada término +1, y elevarlo a la segunda
potencia
3) Ejercicio:
Representar la función u(t) siguiente en el intervalo [0, 10]
4) Ejercicio:
Representar gráficamente la función y=x·sen(x) para valores de x desde - π hasta
π con pasos de π /10
5) Ejercicio:
Polinomios en MATLAB. f(x) = x5 + 2x4 + 5x2 -7x +14. Evaluar el polinomio para
x=3 utilizando el comando polyval. Además encontrar las raíces para dichos
polinomio.
6) Ejercicio:
En 1845 el demógrafo belga Pierre Francois usó los datos de la población
norteamericana de 1790 a 1840 para predecir la población americana hasta el año
1930, bajo la hipótesis de que seguía la ley logística. Tomando No = 3,9 y K =197,3
(ambas en millones de habitantes) y r = 0.03135, completese la siguiente tabla
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
7) Ejercicio:
Adapte un polinomio a un conjunto de datos. Asumiendo que deseamos aproximar
un polinomio de quinto orden en un intervalo de tiempo -2 < t < 3, para la función
exponencial y = exp(t), grafique los datos de la funcion exponencial y el polinomio
obtenido para el intervalo -4 < t < 5.
8) Ejercicio:
Para el conjunto de datos anteriores del ejercicio 7. Adapte a un polinomio de tercer
y segundo orden. Compare los resultados.
9) Ejercicio
Ajuste un polinomio a los dados en la tabla siguiente, después calcule el polinomio
y grafique los valores de la tabla y el polinomio calculado en función de los valores
de x.
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
10) Ejercicio:
Genere un vector desde 0 hasta 10 con pasos de 1. Calcule la media y la desviación
estándar.
11) Ejercicio:
Recursos de grabación (almacenaje de datos).
» a = [1 2 3 4 5 6 7 8];
» b = a*2;
» c = a - 1;
» save datos1 a b c
» dir
» clear
» whos
» load datos1
» whos
» clear
12) Ejercicio:
Grafique la siguiente función en tres dimensiones entre
13) Ejercicio:
Un polinomio tiene como raíces en -2, 2, -2+3j y -2-3j. Determine el polinomio y
grafique la función polinomial para o intervalo de -5 a 5 con incrementos de 0,01.
14) Ejercicio:
Represente en simulink la siguiente relación matemática Tf = (9/5)Tc + 32, donde
Tc es la temperatura de entrada con un comportamiento tipo rampa de 0 hasta 5
desde
0 < t < 10 segundos
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK
15) Ejercicio:
Represente en simulink con Vpico de 2.5v e bias 0.12v
16) Ejercicio:
Represente en simulink
17) Ejercicio:
Represente en simulink el siguiente sistema para una función de entrada unitaria
MODELAMIENTO DE PROCESOS INDUSTRIALES
LABORATORIO Nº1
INTRODUCCIÓN A MATLAB Y SIMULINK