Está en la página 1de 19

LABORATORIO – PRÁCTICA 1:

INTRODUCCIÓN A MATLAB Y SIMULINK

SEÑALES Y SISTEMAS
Eduardo Martínez de Rioja
(Material heredado de Miguel Ángel Cámara Vázquez)
Departamento de Teoría de la Señal y Comunicaciones - Universidad Rey Juan Carlos
eduardo.martinez@urjc.es
(Actualizado el 29 de enero de 2020)

Grado en Ingeniería Aeroespacial en Aeronavegación


Curso 2019/2020

1/28 1 / 67
Índice
1. Introducción a MATLAB
• ¿Qué es MATLAB?
• Interfaz de trabajo
• Sintaxis en MATLAB
• Operaciones básicas
• Bucles y estructuras de control
• Ayuda y depurador
• Uso de scripts
2. Introducción a Simulink
• ¿Qué es Simulink?
• Interfaz de trabajo
• Modelado de sistemas
3. Bibliografía

2/28 2 / 67
Introducción a MATLAB
¿Qué es MATLAB?
• MATLAB (MATrix LABoratory) es un lenguaje de alto nivel para computación e ingeniería basado
en el manejo de matrices, además de ser el nombre del propio software que lo integra. Dada su
potencia, es una herramienta estándar para realizar cálculos de una manera relativamente simple.
• Desde el punto de vista de las Señales y Sistemas, MATLAB se puede considerar como un entorno
matemático de simulación, con el cual vamos a poder implementar modelado y análisis de sistemas
de diferente índole.

Aplicaciones de MATLAB
• Matemáticas y computación.
• Desarrollo de algoritmos.
• Modelado, simulación y prototipado.
• Análisis de datos, exploración y visualización.
• Desarrollo de aplicaciones.

MATLAB dispone de conjuntos de funciones específicas para diferentes ámbitos, denominadas toolbox.
También, podemos crear toolboxes adicionales específicas de nuestro proyecto, las cuales pueden “llamar”
a funciones internas de MATLAB o a alguna de sus toolboxes básicas.

3 / 67
3/28
Introducción a MATLAB

Interfaz de trabajo
• Para abrir MATLAB, haremos click en el acceso directo disponible en
el Escritorio o en el menú Inicio.

(a) Acceso directo

(b) Carga de MATLAB

4 / 67
4/28
Introducción a MATLAB

➢ Una vez abierto, nos encontraremos con una pantalla como la siguiente.

Documentación

Figura: Pantalla principal


de MATLAB

➢ La interfaz de MATLAB se divide en varias zonas:


• Workspace: aquí se almacenan las variables con las que estamos trabajando.
• Ventana de comandos: aquí podremos ejecutar comandos directamente.
• Navegador de archivos: aquí podremos ver qué funciones tenemos en la carpeta de trabajo.
• Detalles: muestra información sobre el archivo seleccionado en el navegador.
• Documentación: introduciendo el nombre de una función en la barra de búsqueda
accederemos a la ayuda de MATLAB.

5 / 67
5/28
Sintaxis en MATLAB: operaciones básicas
e Comentarios:
% This is a comment, it starts with a “%”
e Aritmética simple:
y = 5*3 + 2^2; % simple arithmetic
e Crear vectores:
x = [1 2 4 5 6]; % create the vector “x”
e Multiplicar los elementos de dos vectores 1 a 1:
x_mult = [6 5 3 7 1]; % create the vector “x_mult”
y_mult = x.*x_mult; % multiply each element one-by-one
e Potencias y raíces:
x1 = x.^2; % square each element in x
x2 = sqrt(x); % square root each element in x
e Crear números complejos:
z = 1+1i; % Create a complex number
a = real(z); % Pick off real part
b = imag(z); % Pick off imaginary part

6 / 67
6/28
Sintaxis en MATLAB: operaciones básicas

e Generar vectores de tiempo:


t = 0:0.01:5; % Generate sampled time
e Crear modelos de señal:
x4 = exp(-t).*cos(2*pi*10*t); % Generate a discrete signal
e Representar señales:
plot(t, x4); % Plot points

Figura: Representación de la
señal "x4" generada en el
ejemplo superior

7 / 67
7/28
Sintaxis en MATLAB: bucles y estructuras de control

e Bucle for : e Estructura de control if :

sum_value = 0; if i==5
for i=1:100 a = i*2;
sum_value = sum_value+i; else
End a = i*4;
end
e Bucle while: e Estructura de control switch:
i = 1; switch i
sum_value = 0; case 5
while i<=100 a = i*2;
sum = sum+i; otherwise
i = i+1; a = i*4;
end end

8/28 8 / 67
Ayuda y documentación

• MATLAB incluye una amplísima documentación sobre cada una de las funciones y
toolboxes que contiene.
• Tenemos 2 formas de acceder a la ayuda:
− Introduciendo el nombre de una función u operador en la barra de búsqueda de documentación,
o escribiendo doc y el nombre de la función en la ventana de comandos (p. ej. doc sum). Si
escribimos solo doc accederemos a la ventana principal de la ayuda de MATLAB. Aquí se
encuentran tanto la ayuda básica como los tutoriales.

− Escribiendo help y el nombre de la función en la ventana de comandos (p. ej. help sum). De
esta forma, accedemos a una ayuda simplificada de la función buscada.

Figura: Sección de ayuda


de MATLAB

9 / 67
9/28
Depuración en MATLAB

• Dado que MATLAB es un lenguaje de programación interpretado, no disponemos


de sistemas avanzados de control de sintaxis.
• Por tanto, es muy probable de que nos percatemos de posibles errores durante la
ejecución final de nuestro programa.
• Para encontrar puntos con fallos, podemos utilizar el modo de depuración y añadir
breakpoints para detener el programa en la zona donde creemos que hay un error e
inspeccionar las variables que se generan.
• Utilizando la opción step podemos avanzar línea a línea y comprobar lo que sucede
al ejecutar el código.

Figura: Modo de depuración


habilitado al introducir un
breakpoint

10 / 67
10/28
Uso de scripts

• Una forma muy útil de ejecutar comandos de manera consecutiva, sin tener que
escribirlos una y otra vez en la ventana de comandos, es mediante el uso de scripts.
• Para crear un script, pulsaremos en el botón New de la ventana principal de MATLAB,
obteniendo una pantalla similar a la mostrada a continuación.

Figura: Script vacío

11 / 67
11/28
Índice
1. Introducción a MATLAB
• ¿Qué es MATLAB?
• Interfaz de trabajo
• Sintaxis en MATLAB
• Operaciones básicas
• Bucles y estructuras de control
• Ayuda y depurador
• Uso de scripts
2. Introducción a Simulink
• ¿Qué es Simulink?
• Interfaz de trabajo
• Modelado de sistemas
3. Bibliografía

12/28 12 / 67
Introducción a Simulink
¿Qué es Simulink?
• Simulink es un entorno gráfico del tipo ”arrastrar y soltar”, con el que se pueden
construir simulaciones de señales simples, complejas, o incluso sistemas dinámicos.
• Esta herramienta forma parte de MATLAB, y permite al usuario concentrarse
en la estructura del problema y no tanto en cómo programar dicho problema.
• Por tanto, Simulink nos va a permitir modelar ciertos tipos de problemas utilizando
bloques gráficos interconectados.

Figura: Ejemplo de sistema


modelado con Simulink

13 / 67
13/28
Introducción a Simulink

Interfaz de trabajo
• Para abrir Simulink, haremos click en el botón ”Simulink”, situado en la barra superior.
• Una vez arranque Simulink, nos encontraremos una pantalla de inicio como la
mostrada en la diapositiva, donde podremos crear un nuevo modelo, o cargar
proyectos anteriores y diversos tipos de ejemplos.

(a) Acceso a Simulink

(b) Inicio de Simulink

14 / 67
14/28
Introducción a Simulink
Interfaz de trabajo
• En la pestaña Examples podemos buscar el modelo Double Mass-Spring-Damper.
Lo cargamos y observaremos una pantalla como la que vemos a continuación:
• Si le damos al botón Run, ejecutaremos la simulación del modelo.
• Finalmente, haciendo doble click sobre el apartado Velocity of Masses
podremos ver el resultado de la simulación.

(a) Modelo de ejemplo (b) Resultado de la simulación

15 / 67
15/28
Introducción a Simulink

Modelado de sistemas

• Si queremos crear un modelo nuevo, en la pestaña New de la pantalla de inicio de


Simulink, haremos click en Blank Model, obteniendo una pantalla como la de la
izquierda.
• A continuación, haciendo click en el botón Library Browser, podremos acceder
a los diferentes tipos de bloques con los que podemos modelizar un determinado
sistema.

(a) Modelo en blanco (b) Librería de Simulink

16 / 67
16/28
Ejemplo de modelado de una señal sinusoidal
e Vamos a crear un modelo básico basado en una señal seno, y un
osciloscopio virtual (Scope).
e Buscamos los bloques Sine wave y Scopeen la librería de Simulink, los arrastramos
al modelo en blanco, y los unimos.
e Si hacemos doble click en el bloque Sine wave, accederemos a los parámetros con
los que se puede configurar la onda sinusoidal (amplitud, frecuencia, fase, etc.).
e Para comprobar los resultados, ejecutamos la simulación y haremos doble click
en el bloque Scope.

(b) Parámetros de la
señal seno

(a) Modelo de señal sinusoidal

17 / 67
17/28
Cómo realizar la entrega
➢ Se habilitará en Aula Virtual una entrega donde subir los resultados de la práctica.

➢ La fecha límite para subir los documentos será el lunes 17 de Febrero.

➢ Elementos a entregar:

• Documento PDF explicando la resolución de cada uno de los ejercicios, incorporando la


información que sea necesaria (figuras, fórmulas, esquemas, etc.). Su longitud no debe ser
mayor a 20 páginas.
• Código utilizado para resolver los ejercicios, debidamente comentado (sólo para aquellos
ejercicios en que sea necesario). Se recomienda archivos independientes por ejercicio, en
formato .m.
• Modelos creados en Simulink, en formato .mdl o .slx.

➢ Todos los elementos a entregar deben ser comprimidos en un único archivo .zip,
que será el archivo a subir en la entrega. El nombre del archivo .zip deberá
seguir el formato Lab1_Apellidos_Nombre_SyS_GIAA.zip.

➢ El no entregar la práctica a tiempo, o sin seguir las reglas establecidas anteriormente,


conllevará una calificación de 0 puntos en dicha práctica.

18 / 67
18/28
Bibliografía

• Documentación oficial de MATLAB:


https://es.mathworks.com/help/matlab/

• Manual de Introducción a MATLAB. Manuel López Martínez y José Ángel


Acosta Rodríguez.
http://www.esi2.us.es/~mlm/RAN/ManualMatlabRAN.pdf

• Manual básico de MATLAB. María Cristina Casado Fernández. Servicios


Informáticos UCM. http://webs.ucm.es/centros/cont/
descargas/documento11541.pdf

• Manual de uso de Matlab. Universidad de Oviedo. http://webs.ucm.


es/centros/cont/descargas/documento11541.pdf

• Curso de Programación en MATLAB y Simulink. Alberto Herreros y


Enrique Baeyens. Universidad de Valladolid. http://webs.ucm.es/
centros/cont/descargas/documento11541.pdf

19 / 67
19/28

También podría gustarte