You are on page 1of 7

PRACTICA 1

LABORATORIO DE INGENIERA DE SISTEMAS

INTRODUCCIN A MATLAB

Introduccin a Matlab

1. Introduccin
El objetivo de esta prctica es adquirir los conocimientos bsicos para familiarizarse con el manejo de la herramienta informtica Matlab. Matlab (junto con las toolboxes Control y Simulink) se va a utilizar en las prcticas de laboratorio de esta asignatura como entorno matemtico y de simulacin para realizar los anlisis de sistemas y diseos de controladores estudiados en las clases tericas. Concretamente, con esta prctica debers aprender a: Definir en Matlab una funcin de transferencia H (s) Manipular una funcin de transferencia (numerador, denominador, ceros, polos, ganancia) Obtener la respuesta de una funcin de transferencia a diferentes tipos de seales de entrada (impulso, escaln) Analizar las caractersticas de la respuesta obtenida (amplitud en estado estacionario, sobreimpulso, tiempo de subida, pico y estacionamiento) Buscar textos de ayuda en el entorno

2. Creacin de Modelos
Arrancar Matlab En el escritorio de Windows buscar un icono como el de la figura y pulsar dos veces sobre l con el ratn.

Lnea de comandos Al arrancar Matlab pueden aparecer varias ventanas (se gestionan desde el men desplegable View): command window, workspace, current directory, command history y launch pad. La ms importante es la ventana de comandos y desde ella ejecutaremos las funciones Matlab.

Dpto. de Ingeniera de Sistemas y Automtica

E.T.S. de Ingeniera de Bilbao (UPV/EHU)

Introduccin a Matlab La sintaxis general de un comando es:


[Salida_1, Salida_2, ...] = Nombre_comando (entrada_1, entrada_2, ...)

Tras el nombre del comando se especifican entre parntesis los valores de los parmetros de entrada. La variable donde se desea almacenar la salida, o resultado de la ejecucin del comando, se pone a la izquierda del signo igual. Si el resultado se va a almacenar en ms de una variable se encierran stas entre corchetes y se separan entre s mediante comas (tambin a la izquierda del signo igual). No todos los comandos producen un resultado de salida que deba ser recogido en variables y, a veces, aunque s se produzca no nos interesar almacenarlo en una variable. Para crear una variable Matlab se sigue la misma sintaxis. Prueba lo siguiente para crear una variable simple y un vector:
>> >> numero = 2 vector = [ 1 2 3 ]

El espacio de trabajo (Workspace) agrupa el conjunto de variables actualmente disponibles para realizar cualquier operacin dentro del entorno Matlab. Observa en la ventana Workspace las dimensiones de las variables creadas y el nmero de bytes que ocupan en memoria. Pinchando dos veces sobre una variable se puede editar su contenido. Modificar el contenido de la variable vector para que tenga los valores 4, 5 y 6 Basta con teclear el nombre de una variable en la lnea de comandos para ver su contenido actual. Comprobar desde la lnea de comandos cul es el valor actual de vector. Se utiliza el comando help, seguido del nombre de una funcin, para obtener la descripcin de cualquier funcin de Matlab con sus parmetros de entrada y salida. Aprender y practicar el uso de: cd, dir, roots, poly, conv Todas las lneas de comandos, a medida que se van ejecutando, se almacenan en un buffer. El contenido de este buffer se puede recuperar utilizando las teclas de flecha hacia arriba () y flecha hacia abajo (); esto permite repetir o corregir una lnea de comando sin necesidad de volverla a escribir completamente. Se pueden recuperar los comandos previamente ejecutados pulsando simplemente la tecla , o se puede recuperar una lnea de comando anterior que comienza con unos determinados caracteres escribiendo dichos caracteres y pulsando repetidamente la tecla . Recuperar la lnea de comando en que se defina la variable vector y modifcarla para que tenga los valores 6, 7 y 8. Creacin modelos LTI Para ver el listado completo de funciones de la toolbox de Control:
>> help control

Dpto. de Ingeniera de Sistemas y Automtica

E.T.S. de Ingeniera de Bilbao (UPV/EHU)

Introduccin a Matlab

El conjunto de las funciones de control pueden trabajar con cuatro tipos de modelos LTI (LTI: Lineal Time-Invariant) invariantes en el tiempo: modelos de funcin de transferencia (TF) modelos cero-polo-ganancia (ZPK) modelos espacio-estado (SS) modelos de respuesta frecuencial (FRD) A lo largo de este curso trabajaremos con las dos primeras representaciones: TF representacin en forma de funcin de transferencia. El modelo se expresa a travs de un polinomio numerador y otro denominador. La funcin tf sirve para crear un modelo de este tipo ZPK representacin en forma de cero-polo-ganancia. El modelo se expresa a travs de una ganancia, un conjunto de ceros (races del numerador) y un conjunto de polos (races del denominador). La funcin zpk sirve para crear un modelo de este tipo. Las funciones tf y zpk toman como entradas los datos del modelo (en forma de vectores) y devuelven una variable Matlab de tipo objeto con toda la informacin del modelo. A continuacin, se muestra como crear los modelos H(s) y G(s):

H ( s) =

s s + 2s + 10
2

G( s) =

2 ( s 2)( s 2 2s + 2)

Leer el texto de ayuda de las funciones tf y zpk (help tf; help zpk)
>> num = [ 1 0 ] >> den = [ 1 2 10 ] >> H = tf (num, den) >> >> >> >> z p k G = = = = [ ] [ 2 1+i 1-i ] [ -2 ] zpk (z, p, k) % vector con los coeficientes del numerador % vector con los coeficientes del denominador % creacin modelo H desde representacin TF % % % % vector de ceros vaco, G(s) no tiene ceros vector de polos ganancia creacin modelo G desde representacin ZPK

Una vez creado el sistema, se pueden leer en cualquier momento los parmetros del modelo y almacenarlos en vectores. A continuacin, se muestra cmo hacerlo para H(s): Leer el texto de ayuda de las funciones tfdata, zpkdata (help tfdata; help zpkdata)
>> [n1, d1] = tfdata (H,v) % extraccin numerador y denominador >> [z1, p1, k1] = zpkdata (H,v) % extraccin de ceros, polos y ganancia

Extraer en los vectores n2 y d2 el numerador y el denominador de G(s) y en los vectores z2, p2 y k2 sus ceros, polos y ganancia. Tambin se pueden usar las propias funciones zpk y tf para obtener otra representacin del modelo:
>> tf(G) % muestra G(s) en forma de numerador y denominador

3. Conexin de Modelos

Dpto. de Ingeniera de Sistemas y Automtica

E.T.S. de Ingeniera de Bilbao (UPV/EHU)

Introduccin a Matlab

Normalmente se van a construir sistemas de complejidad creciente a base de conectar sistemas sencillos. A travs de las funciones series, parallel, feedback se lograr la funcin de transferencia equivalente del sistema resultante de conectar en serie, paralelo en buble cerrado un par de sistemas. Leer el texto de ayuda de las funciones series, parallel y feedback Prueba lo siguiente para conectar en paralelo los sistemas H(s) y G(s):
>> parallel (H,G) % Funcin de transferencia equivalente >> tf (parallel (H,G)) % Directamente en forma de numerador y denominador

Calcular, en formato de numerador y denominador, las funciones de transferencia equivalentes (M1(s) y M2(s)) para los siguientes diagramas de bloques:
H(s)
H(s) G(s)

H(s) G(s)

H(s)

Ms adelante, tal y como se ver en la prxima prctica, para trabajar con diagramas de bloques complejos se utilizar Simulink.

4. Anlisis temporal de los modelos


Definir en las variables matlab A y B las siguientes funciones de transferencia:

A( s ) =

10( s + 3) s 2 + 2s + 10

B( s ) =

2 ( s + 2)

La funcin step se utiliza para dibujar la respuesta de un sistema a un escaln unitario. La funcin impulse se utiliza para dibujar la respuesta de un sistema a un impulso unitario. La funcin pzmap se utiliza para dibujar la ubicacin de los polos y ceros de un sistema. Leer el texto de ayuda de las funciones: step, impulse y pzmap Obtener la respuesta a escaln unitario del sistema A(s) Sobre esta respuesta: Pinchar sobre cualquier punto de la respuesta para obtener, de forma numrica, la amplitud en ese instante de tiempo. Pinchar en el grfico con el botn derecho del ratn y selecciona secuencialmente Characteristics Peak response, setting time, rise time y steady state para obtener el valor de pico, el tiempo de establecimiento, el tiempo de subida y el valor en estado estacionario, respectivamente. Pinchando con el ratn en los puntos azules que aparecen se pueden apreciar los valores numricos de estos parmetros caractersticos de la respuesta temporal. Activar el grid rejilla con el botn derecho del ratn. Obtener la respuesta a impulso unitario del sistema A(s) y deducir sus caractersticas temporales (respuesta de pico y tiempo de establecimiento) con el botn derecho del ratn.

Dpto. de Ingeniera de Sistemas y Automtica

E.T.S. de Ingeniera de Bilbao (UPV/EHU)

Introduccin a Matlab

Obtener la respuesta a impulso unitario y a escaln unitario del sistema B(s) y deducir las caractersticas temporales de cada una de ellas. Obtener la ubicacin de los polos y ceros de los sistemas A(s) y B(s). Los valores numricos de los polos y ceros, el coeficiente de amortiguamiento (damping) y la frecuencia natural aparecen al situar el ratn sobre ellos. Todas estas funciones (y otras muchas) para el anlisis de sistemas lineales e invariantes en el tiempo se agrupan dentro del entorno ltiview. Leer el texto de ayuda de la funcin ltiview. Al teclear ltiview en la lnea de comandos aparece una nueva ventana. En primer lugar, hay que importar los modelos de sistemas que se vayan a analizar:
Seleccionar File Import De los sistemas que aparecen seleccionar A y B (pincha en presionada, pincha en B).

en el espacio de trabajo A y luego, manteniendo la

(workspace) tecla CTRL

Inmediatamente aparecer en pantalla la respuesta a entrada escaln unitario de los sistemas A(s) y B(s). Sobre estas grficas se pueden calcular todos los valores obtenidos antes a travs de la funcin step (valor de pico, el tiempo de establecimiento, el tiempo de subida y el valor en estado estacionario), tambin usando el botn derecho del ratn. Adems, tambin se puede activar la rejilla seleccionar la visualizacin de una de las respuestas de ambas a la vez (systems). Con el botn derecho del ratn (plot types) se puede modificar directamente el grfico y obtener la respuesta a impulso el diagrama de polos ceros (adems de stos aparecen otro tipo de representaciones que veremos ms adelante). Por ltimo, en el men desplegable Edit, aparece la opcin Plot configurations. A travs de ella se puede partir la ventana en varios paneles para visualizar varios tipos de grficos a la vez. Visualizar en la misma ventana (utilizando tres paneles) las respuestas a escaln, impulso y diagramas polo-cero de los sistemas A(s) y B(s). Si a lo largo del anlisis de los sistemas se decidiera realizar un cambio en alguno de ellos, no habra ms que realizar las modificaciones en la lnea de comandos y seleccionar Edit Refresh systems para que los cambios tengan efecto en las representaciones.

5. Ejemplo de anlisis de sistema fsico


Obtener la ayuda de la funcin rlcdemo. Teclear rlcdemo Esta funcin permite estudiar un sistema fsico del cual se ha hallado su modelo matemtico, que ha sido expresado en la forma de la funcin de transferencia G(s) dependiente de los parmetros elctricos R, L y C. Si se modifican alguno de esos parmetros, la respuesta del sistema cambia y se pueden apreciar los cambios en la respuesta escaln y en la ubicacin de polos y ceros. La demo permite analizar todos los

Dpto. de Ingeniera de Sistemas y Automtica

E.T.S. de Ingeniera de Bilbao (UPV/EHU)

Introduccin a Matlab

sistemas posibles mediante la combinacin de cuatro tipos de filtros y dos topologas distintas.

6. Otros Comandos
Damp (frecuencias naturales y coeficientes de amortiguamiento de un sistema) Residue (residuos de los polos de un sistema)

Dpto. de Ingeniera de Sistemas y Automtica

E.T.S. de Ingeniera de Bilbao (UPV/EHU)

You might also like