matlab

43
MATLAB Miguel Angel Mota Velázquez

description

d

Transcript of matlab

Page 1: matlab

MATLAB

Miguel Angel Mota Velázquez

Page 2: matlab

MATLAB es el nombre abreviado de “MATrix LABoratory”

MATLAB es un lenguaje de alto nivel y un entorno interactivo que le permite realizar tareas de cálculo complejas.

MATLAB tiene también un lenguaje de programación propio.

MATLAB dispone de un código básico y de varias librerías especializadas (toolboxes).

Page 3: matlab

Espacio de trabajo

En Command Window es donde se ejecutan los comandos de MATLAB, a continuación del prompt (aviso) característico (>>)

La ventana Current Directory muestra los ficheros del directorio activo o actual.

El Workspace contiene información sobre todas las variables que se hayan definido en esta sesión y permite ver y modificar las matrices con las que se esté trabajando.

Command History muestra los últimos comandos ejecutados en la Command Window.

Page 4: matlab

• MATLAB distingue entre mayúsculas y minúsculas.• La comilla ' es la que, en un teclado estándar, se encuentra en la tecla de la

interrogación.• Los comentarios deben ir precedidos por % o, lo que es lo

mismo, MATLAB ignora todo lo que vaya precedido por el símbolo %.• CLC .- limpia la pantalla.• Clear .- borra variables• Home .- desplaza hacia arriba la pantalla.• La tecla ESC borra toda la línea.• Es posible recuperar comandos anteriores de MATLAB y por moverse dichos

comandos con las teclas arriba/abajo.• Para establecer el espacio de trabajo: desktop layout default• Pretty (ans)Muestra la respuesta de mejor manera• Exit .- Salir de matlab• Help <comando> .- Muestra ayuda

Consideraciones generales

Page 5: matlab
Page 6: matlab
Page 7: matlab
Page 8: matlab
Page 9: matlab
Page 10: matlab
Page 11: matlab
Page 12: matlab
Page 13: matlab
Page 14: matlab

Editar gráfica

Varias instrucciones para el análisis de sistemas generan automáticamente gráficas. Un último aspecto que será importante en la obtención de representaciones gráficas es la forma de incluir textos en ellas, las principales instrucciones que pueden utilizarse son:

• title escribe un título en la parte superior para nombrar a la gráfica. • xlabel permite escribir un nombre al eje x de la gráfica. • ylabel permite escribir un nombre para el eje y de la gráfica. • legend indica lo que representa cada curva de la gráfica.

Page 15: matlab

Editar gráfica

Page 16: matlab

Editar gráfica

Page 17: matlab

Operaciones con polinomios

Page 18: matlab

Raíces de un polinomio

Page 19: matlab

Descomposición de fracciones parciales de una función de transferencia

Se utiliza [r,p,k]=residue(num,den)

𝐵(𝑠)𝐴(𝑠)

=𝑛𝑢𝑚𝑑𝑒𝑛

=𝑏 (1 )𝑠𝑛+𝑏 (2 )𝑠𝑛−1+…+𝑏(𝑛)𝑎 (1 )𝑠𝑛+𝑎 (2 )𝑠𝑛− 1+…+𝑎(𝑛)

𝐵(𝑠)𝐴(𝑠)

=𝑟 (1)

𝑠−𝑝 (1 )+

𝑟 (2)𝑠−𝑝 (2 )

+…+𝑟 (𝑛)

𝑠−𝑝 (𝑛 )+𝐾 (𝑠)

Si se tiene la función de transferencia

Descomposición en fracciones parciales

Page 20: matlab
Page 21: matlab
Page 22: matlab
Page 23: matlab

Para dinámica de sistemas

Definir funciones de transferencia.Convertir de estados a FT y viceversa. Convertir funciones en el dominio de la frecuencia al dominio del tiempo.Aplicar entradasObtener mapa de polos y ceros.

Page 24: matlab

ejemplo

Page 25: matlab

Obtener mapa de polos y ceros

La función pzmap realiza la representación gráfica de la situación en el planocomplejo de los polos (cruces) y los ceros (círculos) del sistema. Por ejemplo, elsiguiente código Matlab:

sis=tf([1 8.5],[1 10 61])pzmap(sis)

Page 26: matlab

Respuesta a un salto unitario

Page 27: matlab

Respuesta a un salto unitario

Si se desean representar funciones sobre una misma ventana pero en gráficas separadas, debe utilizarse la instrucción subplot, su formato es el siguientesubplot(renglones, columnas, activar)donde renglones y columnas representan el número de cada una de éstas que se desea aparezcan en laventana, y activar indica la gráfica que se va a trazar. Si, por ejemplo, se desea mostrar a la izquierda lagráfica de la función seno y a la derecha la del coseno, se deberá crear una ventana con un renglón y doscolumnas para las gráficas, de acuerdo con las siguientes instrucciones» a = [0:0.1:2*pi]; % a: contiene 63 ángulos entre 0 y 2π» b = sin(a); % b: contiene los valores del seno de a» c = cos(a); % c: contiene los valores del coseno de a» subplot(1,2,1) % crea ventana de 1 x 2 y selecciona la primera gráfica» plot(a,b) % representa al seno» subplot(1,2,2) % selecciona la segunda gráfica» plot(a,c) % representa al coseno

Page 28: matlab

Transformación de modelos de sistemas

Formulación en el espacio de estados de sistemas dados como función de transferencia

Page 29: matlab

Transformación de modelos de sistemas

Transformación del espacio de estados a una función de transferencia

Page 30: matlab

Transformada de Laplace

Page 31: matlab

Transformada inversa de Laplace

Page 32: matlab

Ejercicios

Page 33: matlab

Solución de sistemas de ecuaciones

Page 34: matlab

Solución de sistemas de ecuaciones

Page 35: matlab

TRANSFORMADA Z

Comando.- ztrans

Sintaxis.- ztrans(f,trans_index,eval_point)

Descripción.-

http://www.mathworks.com/help/symbolic/ztrans.html

Page 36: matlab

TRANSFORMADA Z

f .- símbolo de la función

Trans_index .- índice de transformación o variable de tiempo discreto.

eval_point .- variable simbólica, punto de evaluación

Page 37: matlab

TRANSFORMADA Z

Ejemplo

Page 38: matlab

TRANSFORMADA Z

Una de las características de MATLAB es que dispone de un gran número de funciones que actúan sobre un a matriz entrada a entrada. La suma, resta y producto por un escalar se realizan elemento a elemento, sin embargo, elevar a una potencia, multiplicar y dividir no. Estas operaciones pueden hacerse entrada a entrada anteponiendo un punto al símbolo de la operación correspondiente: .*, ./ y .^ .Ejemplos.

EDU>> A=[1 3 5; 7 9 11; 13 15 17]; A^3 % Calcula el producto AAA

ans = 2421 3051 3681 6255 7857 945910089 12663 15237

Generación de funciones muestreadas

Page 39: matlab

TRANSFORMADA Z

EDU>> A.^3 % Calcula la potencia cúbica de cada entrada de A ans = 1 27 125 343 729 13312197 3375 4913

Generación de funciones muestreadas

Page 40: matlab

TRANSFORMADA ZGENERACION DE LA FUNCION POTENCIAL x(k) = 2 k

k=linspace(0,5,20); % define valores de k x=2.^ k; % función potencial grid % rejilla para grafica plot(k, x,'ro') % gráfica x en función de k xlabel('k'); % rotulo para eje x ylabel('x(k)'); % rotulo para eje y title('POTENCIAL DISCRETA')

Page 41: matlab

TRANSFORMADA ZGENERACION DE LA RAMPA UNITARIA DISCRETA

k = 0:10; % define valores de k x = k; % función rampa para x axis([0 10 0 10]); % define ejes grid % rejilla para gráfica plot(k, x,'ro') % grafica x en función de kxlabel('k'); % rotulo para eje x ylabel('x(k)'); % rotulo para eje y title('RAMPA UNITARIA DISCRETA')

Page 42: matlab

TRANSFORMADA ZGENERACION DE ESCALÓN UNITARIO DISCRETO

x = ones (1,11); % define once valores de 1's v = [ 0 10 0 2]; % define valores de ejes axis (v); plot (x,'ro') % gráfica círculos de color rojo xlabel ('k') % asigna rotulo al eje x ylabel ('x(k)') % asigna rotulo al eje y title (‘ESCALON UNITARIO DISCRETO’)

Page 43: matlab

TRANSFORMADA INVERSA Z

Ejemplo