Sunteți pe pagina 1din 16

Lab. No.1 Introduccin al matlab y simulink.

UNIVERSIDAD FRANCISCO DE PAULA SANTANDER FACULTAD DE INGENIERIA CONTROL AUTOMATICO CONTROL ANALOGICO

LABORATORIO No. 1 Introduccin al Matlab y simulink

INSTRUCCIONES 1- Las actividades de laboratorio y talleres debern ser desarrollados en grupos de hasta 2 (dos)

alumnos. 2- Las tcnicas y herramientas didcticas que se empleen en los laboratorios tiene como finalidad el refuerzo, la conformacin y ejecucin de los diferentes aspectos que hacen parte de la asignatura. De forma que el alumno desarrolle un pensamiento flexible, dinmico, audaz, independiente, persistente, divergente y original en su formacin como profesional.

OBJETIVOS

Hacer uso de los comandos de Matlab y simulink para familiarizarse con su uso. Usar el simulink para crear diferentes funciones de transferencia as como una herramienta capaz de usarse para la simulacin de sistemas.
REFERENCIAS Andrew Knight Basics of MATLAB and Beyond. Chapman and Hall/CRC; 1 edition, 1999. Hanselman, D.; Littlefield, B. MATLAB 5: Verso do Estudante, Guia do Usurio, Makron Books, 1999. White Robert: Computational Mathematics: Models, Methods, and Analysis with MATLAB and MPI. Chapman and Hall/CRC; 1 edition, 2003. http://www.mathworks.com

1. MATLAB
Graficar la siguiente funcin f (t) = 3Sen t + 2Cos t donde = 2f y f = 2 Hz. Defina el vector t para valores de [0 0.01 0.02 0.03 ....... 2]; Sugerencia: Defina la funcin f como la suma de 2 funciones, f1 y f2, por ejemplo. Despus grafique con el comando plot(t, f, t, f1, t, f2)

Utilizar matrices para encontrar las corrientes de malla del siguiente circuito

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

Sugerencia: Defina la funcin f como la suma de 2 funciones, f1 y f2, por ejemplo. Despus grafique con el comando plot(t, f, t, f1, t, f2)

Utilizar matrices para encontrar las corrientes de malla del siguiente circuito

Las ecuaciones de malla son: 15i1 5i2 = 20 -5i1 + 10i2 = 0

Otras caractersticas importantes de Matlab estn relacionadas con funciones polinomiales como son: Races de polinomios, multiplicacin, suma y divisin de polinomios, as como evaluacin y derivada de los mismos.

Races de polinomios. En Matlab un polinomio se representa por un vector fila cuyos


componentes son los coeficientes del polinomio en orden descendente. Por ejemplo el polinomio x + 3x + 0x + 5x + 4
4 3 2

se representa en Matlab por: p = [1 3 0 5 4] p= 13054 Dado el polinomio, las races se encuentran con el comando roots: x = roots(p) x= -3.3407 0.5021 + 1.2460i 0.5021 - 1.2460i -0.6635 Las races, por convencin, son vectores columna; el comando poly se utiliza para la obtencin del polinomio a partir de sus races, as, para las races anteriores polinom = poly(x) polinom =
Control Automtico Control Analgico IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink. 1.0000 3.0000 0.0000 5.0000 4.0000

Multiplicacin de polinomios. Considrese el producto de dos polinomios:


a(x) = x + 3x + 2x 1
3 2

b(x) = 2x 4x + 3x + 6
3 2

El producto est dado por el comando conv: a = [1 3 4 -1]; b = [2 -4 3 6]; c = conv(a, b) c= 2 2 -1 -3 34 21 -6 Este resultado corresponde con 2x + 2x x 3x + 34x + 21x 6
6 5 4 3 2

Adicin de polinomios No existe un comando especial para la suma de polinomios, se trabaja


con la suma estndar de vectores. Para los polinomios anteriores, se tiene d=a+b d= 3 -1 7 5 esto es, d(x) = 3x x + 7x + 5
3 2

Cuando los polinomios son de diferente orden, debern agregarse ceros para ajustar el orden de los polinomios, por ejemplo e = c + [0 0 0 d] e= 2 2 -1 0 33 28 -1 que corresponde con e(x) = 2x6 + 2x5 x4 + 33x2 + 28x 1

Divisin de polinomios. Cuando haya necesidad de dividir dos polinomios, se utiliza el comando
deconv, Usando los polinomios anteriores para dividir el polinomio c entre el polinomio b [resul, residuo] = deconv(c, b) resul = 1 3 4 -1 residuo = 0000000 Como era de esperarse, el resultado es el polinomio a sin residuo, puesto que la divisin es exacta.

Derivada de un polinomio. Matlab tiene el comando polyder para derivar un polinomio, como
ejemplo, derivemos los polinomios a y b anteriormente dados,

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink. g = polyder([1 3 4 -1]), h = polyder(b) g= 364 h= 6 -8 3

Evaluacin de polinomios. Puede ser til evaluar un polinomio y posteriormente graficarlo, para
ello se utiliza el comando polyval, ejemplo x = -1:0.01:3; poli = [2 3 -7 5]; f = polyval(poli, x); plot(x, f);grid;title('Grfica de 2x^3+3x^2-7x+5') xlabel('x');ylabel('poli(x)'); Aqu, se genera el vector x con 100 puntos que comienzan en 1 y terminan en 3. Posteriormente se evala el polinomio 2x + 3x 7x + 5 y el resultado se almacena en f. La grfica del polinomio se muestra en la siguiente figura.
3 2

Funciones Las funciones de matlab son muchas, pero consideraremos aqu solo las bsicas como:
abs(), sin(), asin(), angle(), exp(), log(x), log10(), sqrt() e imag().

Valor absoluto de un nmero


a = 2 + j * 3; b = -4; abs(a) ans = 3.6056

Funcin Seno y seno inverso (El ngulo debe estar en radianes)


f = sin(pi/3), fi = asin(f)*180/pi
Control Automtico Control Analgico IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink. f= 0.8660 fi = 60.0000

ngulo de un nmero
teta = 180*angle(a)/pi teta = 56.3099

Exponencial de un nmero
exp(-2) ans = 0.1353

Logaritmo natural
log(ans) ans = -2

Raz cuadrada
sqrt(875) ans = 29.5804

Obtencin de la parte imaginaria de un nmero complejo


imag(a) ans = 3 Otras funciones son cos(), acos, tan(), atan(), real(), conj()

Operadores matriciales
Los siguientes signos se utilizan en las operaciones matriciales: + Suma - Resta * Multiplicacin
Control Automtico Control Analgico IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink. ^ Potencia Transpuesta conjugada

Operadores relacionales y lgicos


Los siguientes operadores relacionales y lgicos se utilizan en Matlab: < Menor que <= Menor que o igual a > Mayor que >= Mayor que o igual a == Igual ~= No igual & AND | OR ~ NOT Observe que = se utiliza en una sentencia de asignacin, mientras que == se emplea en una relacin.

Caracteres especiales
En Matlab se utilizan los siguientes caracteres especiales: [ ] Utilizado para formar matices y vectores ( ) Precedencia de operacin aritmtica , Separa elementos y argumentos de funcin ; final de filas, suprime la impresin : Generacin de vectores ! Ejecucin de orden del sistema operativo % Comentarios

2. SIMULINK
El simulink es un toolbox de Matlab que permite simular sistemas de control por medio de diagramas de bloque. Para iniciar el simulink, entramos a Matlab, y en el espacio de trabajo de Matlab se teclea simulink, como se muestra en la siguiente pantalla

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

Al dar un Enter () al comando de la pantalla anterior se abre la ventana Simulink Library Browser y se nos muestra las bibliotecas que contiene, y que son: Simulink Aerospace Blockset CDMA Reference Blockset Communications Blockset Constrol System ToolboxEtc. Como se ve en la siguiente pantalla:

La presentacin de las bibliotecas podra cambiar dependiendo de las que se hayan instalado en cada computadora. La figura tambin nos muestra en la parte superior, cuatro iconos: para crear un nuevo espacio de trabajo, para abrir un modelo ya existente, para fijar la pantalla de bibliotecas de forma que siempre permanezca visible y por ltimo, el icono para bsqueda de bibliotecas. Cada una de las bibliotecas de simulink contiene un cierto nmero de bloques. Hay dos formas de accesar a los bloques componentes de cada biblioteca, oprimiendo sobre el signo + de la biblioteca de simulink, por ejemplo,

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

Cada bloque de la biblioteca contiene un subconjunto de bloques que son usados para formar la simulacin deseada. Al hacer doble clic sobre cualquiera de ellos se nos muestran los componentes del bloque en cuestin, por ejemplo, al seleccionar el bloque de Continuous, se obtiene

Llevaremos a cabo una simulacin simple para efecto de aplicar un poco de lo que se ha visto, para ello, abrimos el men File, New y seleccionamos Model, para crear la ventana (Work Space de Simulink) donde efectuaremos una simulacin. Tambin se puede abrir esta ventana dando un doble click sobre el primer icono de la parte superior izquierda de la ventana Simulink Library Browser.

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

Cierre la ventana de Continuous, y en la biblioteca de simulink haga doble clic sobre Sources para tener accesibles sus componentes, arrastre con el ratn el componente de Sine Wave (Seal senoidal) a la ventana de trabajo de Simulink. Puede, si as lo desea, cerrar la ventana correspondiente a componentes de Sources, y posteriormente abrir la de Sinks, para arrastrar el componente Scope (Osciloscopio) hacia la misma ventana, hasta ahora se tiene lo siguiente

Una vez conectados, como en la ventana anterior, haga doble clic sobre el Scope para abrir la pantalla que se muestra en la figura anterior. Al iniciar la simulacin, oprimiendo el icono indicado en la figura anterior, en la pantalla del osciloscopio aparecer la seal correspondiente; como se muestra en la parte izquierda de la siguiente figura. La figura de la parte derecha se obtiene al oprimir el icono de autoescala del osciloscopio.

Para cambiar las caractersticas de la onda senoidal, haga doble clic sobre el componente de Sine Wave (Seal Senoidal) sobre la ventana de trabajo, pueden realizarse cambios en la frecuencia, amplitud, fase etc. Use y observe los iconos del osciloscopio para aumentar y disminuir el tamao de la grfica, cambiar los ajustes del osciloscopio, imprimir y mantener los ejes. Si gusta salve el modelo anterior. Realizaremos ahora la simulacin de la Funcin de Transferencia (tf) de un sistema de lazo abierto. Abra una nueva ventana de trabajo y arrastre los componentes Step de las bibliotecas
Control Automtico Control Analgico IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

10

correspondientes, de forma que se tenga un Step de la Ventana Sources, un Transfer Fcn de la ventana Continuous y un Scope de la ventana Sinks como se muestra en la ventana de trabajo siguiente

Haga doble clic sobre el componente Transfer Fcn y realice los cambios siguientes para obtener la funcin de transferencia deseada, en Numerator coloque los coeficientes del Numerator de tf entre corchetes y separados por espacios, en Denominator haga lo mismo y en Absolute tolerance la dejamos en auto una vez hecho esto haga clik sobre Apply y Ok.

Al terminar de realizar el modelo y ejecutar la simulacin deber observar la siguiente seal del Osciloscopio

Cambiemos ahora los parmetros de la simulacin para que la seal se inicie en cero. Haga doble click sobre el componente Step y aparece la ventana Block Parameters:Step y cambie el Step time de 1 a 0, para que el escaln inicie en tiempo cero y Final value permanece en uno para que el escaln siga con el valor de uno como se muestra en la figura siguiente

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

11

Oprima el botn OK y ejecute de nuevo la simulacin y observe los cambios en la seal dada por el osciloscopio, la cual debe ser de la siguiente forma

Salve la simulacin del modelo abriendo File Save del men de la ventana de trabajo y abrase una nueva ventana de trabajo para crear el siguiente diagrama compuesto por elementos arrastrados desde la ventana Sources Step, desde la ventana Math Operations arrastrando Sum, desde la ventana Continuous Transfer Fcn y de la ventana Sinks Scope haciendo las conexiones pertinentes y calibrndolos apropiadamente tenemos el modelo de la ventana siguiente.

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

12

Cambie los parmetros de la simulacin utilizando su Men de la ventana anterior para ajustar el eje del tiempo con la opcin Configuration Parameters y en la ventana que nos proporciona como se muestra en seguida:

Modelamiento de Ecuaciones
El simulink puede ser usado para modelar ecuaciones diferenciales.

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink. Se desea modelar la siguiente ecuacin diferencial

13

la seal u es como se muestra.

Lo primero es despejar la derivada de mayor orden

El diagrama en el simulink quedara como se muestra.

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

14

TABLA 1. Ordenes de Matlab y Funciones Matriciales

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

15

TALLER EXTRACURRICULAR COMPLEMENTARIO DE REFUERZO

Ejercicio 1: Resuelva la siguiente ecuacin diferencial. Modele el sistema y obtenga la respuesta en el tiempo para una entrada escaln de magnitud 2.
Control Automtico Control Analgico IE. PhD. FRANCISCO E. MORENO GARCIA

Lab. No.1 Introduccin al matlab y simulink.

16

Ejercicio 2: Resolver los siguientes ejemplos de simulaciones: a) En Lazo Abierto para la Funcin de Transferencia

con entrada de un escaln unitario que inicie en un tiempo de dos segundos. b) En Lazo Cerrado con Retroalimentacin unitaria para la Funcin de Transferencia

con entrada de un escaln de valor 2 que empiece en tiempo cero

Control Automtico Control Analgico

IE. PhD. FRANCISCO E. MORENO GARCIA

S-ar putea să vă placă și