You are on page 1of 13

AREA DESARROLLO TECNOLOGICO PRODUCTIVO

CARRERA INGENIERA ELECTRICA


FORMATO REFERENCIAL DE GUIA LABORATORIO

SISTEMAS DE CONTROL II Y
LABORATORIO
ELT 600

ASIGNATURA:
CDIGO:

MATLAB

TEMA:
TITULO DEL LABORATORIO:

Primer
autor,
Universidad
Primer.autor@ucatolica.edu.co,

segundo

INTRODUCCION AL MATLAB
autor,

tercer

autor,.

Segundo.autor@ucatolica.edu.co,.

RESUMEN.
MATLAB es una herramienta poderossima para clculo cientfico y tiene diversas
aplicaciones en el campo de las ingenieras. El presente laboratorio, pretende
introducir a los estudiantes en la lgica, los procedimientos y los medios que
emplea MATLAB para realizar clculo cientfico. Para los estudiantes que conozcan
el programa, les servir para fortalecer conocimientos.
I. INTRODUCCIN
MATLAB es el acrnimo de MATrix LABoratory (Laboratorio Matricial) y es un
potente entorno de trabajo, diseado para el desarrollo de aplicaciones cientficotcnicas. Matlab es un entorno abierto, que integra computacin numrica y
visualizacin cientfica; tambin integra computacin matricial, anlisis numrico,
proceso y anlisis de seal, adems de grficos con una sencilla interface visual
de usuario.
MATLAB posee gran cantidad de libreras ms especficas para temas concretos,
denominados Toolbox como por ejemplo: Control, Procesamiento de seales,
Procesamiento de imgenes, etctera.
La herramienta ms interesante y de gran versatilidad, simplicidad y ampliamente
utilizada
es
el
Simulink.
II. MARCO TEORICO.
La figura1muestra la ventana del MATLAB en versin 7.6 (R2008a), la cual
muestra diferentes herramientas y ventanas. De stas ltimas la ms importante
es la ventana de comandos (Command Window) en la cual se anotan y ejecutan
instrucciones del MATLAB.
La ventana Workspace es un rea de trabajo en el que se muestran las variables
que uno crea o almacena en memoria durante una sesin de MATLAB.
La ventana Command History muestra una serie de sentencias que usted ha
ejecutado en las sesiones actuales y previas de MATLAB.
1

La ventana Current Directory muestra el directorio actual en el que trabaja


MATLAB. Esta ventana es frecuentemente minimizada o bien cerrada por el
usuario.

II.I MATLAB EN FORMA PRCTICA.


MATLAB es muy sencillo de entender, posee caractersticas muy accesibles en
todo nivel y capacidades de clculo poderosas. Para ello lo ms aconsejable es
practicar.
II.I.I EJECUCIN DE CLCULOS DESDE LA VENTANA DE COMANDOS.
Cuando se realizan clculos en esta ventana, simplemente se deben escribir las
instrucciones a continuacin del prompt (>>) y luego presionar la tecla ENTER
para obtener un resultado.
Para trabajar en el entorno de la ventana de comandos, se debe tener en cuenta
los operadores y funciones elementales que dispone MATLAB. Un listado resumido
de los mismos es:
Los operadores matemticos:
+

Suma

Resta

Multiplicacin
2

Divisin

Divisin inversa

Potencias

.*

Multiplicacin elemento a elemento

./

Divisin elemento a elemento

.\

Divisin inversa elemento a elemento

.^

Potencia elemento a elemento

Operadores relacionales:
<

Menor que

<=

Menor igual que

>

Mayor que

>=

Mayor igual que

==

Igual

~=

Distinto

Operadores Lgicos:
&

AND

OR

NOT

Otros smbolos empleados:


:

genera rangos.

()
define elementos de matrices, indica la precedencia de operadores,
empleado para indicar los argumentos de una funcin.
[]

Definir matrices.

Punto decimal.

...

Continuacin.

Separa subelementos de matrices, separa argumentos en las funciones.

Comentario

Ejecucin de rdenes externas, comandos del S.O.

'

Transpuesta de una matriz

;
Empleado dentro de los [] para indicar fin de fila, empleado para separar
rdenes, dentro de una misma lnea.
=

Asignacin.

Funciones trigonomtricas:
sin

Seno
3

cos

Coseno

tan

Tangente

asin

Arcoseno

acos

Arcocoseno

atan

Arcotangente

sinh

Seno hiperblico

cosh

Coseno hiperblico

tanh

Tangente hiperblica

asinh

Arcoseno hiperblico

acosh

Arcocoseno hiperblico

atanh

Arcotangente hiperblica

Funciones elementales:
abs

Valor absoluto de un valor o magnitud compleja

angle

ngulo de fase

sqrt

Raz cuadrada

real

Parte real

imag

Parte imaginaria

conj

Conjugado

exp

Exponencial base e

log

Logaritmo natural

log10

Logaritmo base 10

Funciones Polinomicas:
roots

Determina las races de un polinomio

poly

Determina el polinomio definidas las races del mismo

conv
Multiplicacion de polinomios. Dados los polinomios "a(s)=s+10"
y "b(s)=s^2+2"
deconv

Divisin polinmica

residue

Expansin en fracciones parciales

rlocus

Obtiene el lugar de las races de la ecuacin caracterstica

rlocfind

Busca la ganancia (K) del lugar de las races dado para una raz dada

sgrid

Genera en el plano 's', lneas de grid para un lugar de las races

Funciones para el manejo de grficos:


plot

Grficos lineales
4

loglog

Grfico logartmico en x

semilogx

Grfico semilogartmico en x

semilogy

Grfico semilogartmico en y

polar

Grfico polar

title

Ttulo de grfico

xlabel

Etiqueta eje x

ylabel

Etiqueta eje y

text

Posicionado arbitrario de texot

grid

Lneas en los ejes (grid)

Funciones Generales:
help

Ayuda del sistema.

clc
Borra la pantalla y posiciona el cursor en la primera fila, primera
columna de la ventana.
What

Muestra ficheros .M del disco.

size

Determina la dimensin (tamao) de las variables.

clear

Borra el rea de trabajo.

quit

Termina el programa.

exit

Termina el programa.

Valores Especiales:
ans

Variable en la que retorna una expresin cuando no es asignada.

eps

Precisin, tolerancia por defecto.

Nmero imaginario.

Nmero imaginario.

pi

Nmero pi.

Inf

Infinito.

NaN

No es un nmero. Indefinido.

Funciones para Conversin de Modelos en Sistemas de Control:


[num, den]=ss2tf(a,b,c,d,iu)
transferencia.

De variables de estado a funcin de

[z,p,k]=sstzp(a,b,c,d,iu)

De variable de estado a polos-ceros.

[a,b,c,d]=tf2ss(num,den)

Funcin de transferencia a variables de estado.

[z,p,k]=tf2zp(num,den)

Funcin de transferencia a polos-ceros.

[a,b,c,d]=zp2ss(z,p,k)
[num,den]=zp2tf(z,p,k)
5

Polos-ceros a variables de estado.


Polos-ceros a funcin de transferencia.

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

Funcin de trasferencia a residuos.

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

Residuos a funcin de transferencia.

II.I.II ELABORANDO SCRIPTS CON MATLAB.


Un SCRIPT no es otra cosa que un conjunto de instrucciones (de cualquier
lenguaje) guardadas en un fichero (usualmente de texto) que son ejecutadas
normalmente mediante un intrprete. Son tiles para automatizar pequeas
tareas. Tambin puede hacer las veces de un "programa principal" para ejecutar
una aplicacin. MATLAB posee adems un lenguaje de programacin propio, muy
prximo a los habituales en clculo numrico (Fortran, C,...) que permite al
usuario escribir sus propios scripts para resolver un problema concreto y tambin
escribir nuevas funciones con, por ejemplo, sus propios algoritmos. MATLAB
dispone, adems, de numerosas Toolboxes, que le aaden funcionalidades
especializadas. La forma como MATLAB almacena estos archivos es como archivo
tipo m o m-file Matlab lee los comandos y los ejecuta secuencialmente
exactamente como si se los estuviera typeando en ese momento en el prompt.
Todo archivo-m debe tener extensin '.m' (ej. plot.m). Si crea un nuevo archivo-m
con el nombre de uno que ya existe, Matlab elegir aquel que aparezca primero
en el listado de paths (help path para ms informacin). Para facilitarse la vida,
siempre deber crear sus archivos-m con nombre distinto que los existentes.
Los instrumentos bsicos de programacin son:
% Este smbolo deber ser empleado para anotar un comentario
; Con este smbolo no se muestran los resultados de una lnea de codigo en
pantalla
Sentencia IF
En su forma ms simple se escribe en la forma siguiente:
if condicin
sentencias
end
Sentencia SWITCH
Es anloga a un conjunto de if ... elseif concatenados. Su forma general es:
switch expresion
case caso-1
sentencias-1
case caso-2
sentencias-2
case {caso-3, caso-4,caso-5,...}
6

sentencias-3
otherwise
sentencias-4
end
Sentencia FOR Repite un conjunto de sentencias un nmero predeterminado de
veces. Su forma general es la siguiente:
for variable=vector-fila
sentencias
end
Sentencia WHILE Repite la ejecucin de un conjunto de sentencias mientras que
una determinada condicin se verifique. Su forma general es:
while condicion
sentencias
end
Sentencia CONTINUE
Detiene la ejecucin de la iteracin actual en un bucle for o while y pasa el control
a la siguiente iteracin.
Sentencia BREAK Detiene completamente la ejecucin de un bucle for o while. Si
hay bucles anidados, se detiene la ejecucin del ms interno
Operadores de relacin o comparacin
== Igual a
~= No igual a
< Menor que
> Mayor que
<= Menor o igual que
>= Mayor o igual que
Operadores lgicos
Son operadores que actan entre valores lgicos:
7

& Y lgico
A&B produce los resultados que se reflejan en la tabla
A&B es equivalente a and(A,B)
| O lgico
A|B produce los resultados que se reflejan en la tabla
A|B es equivalente a or(A,B)
~ Negacin lgica
~A produce los resultados que se reflejan en la tabla
~A es equivalente a not(A)
Funcin INPUT
Permite imprimir un mensaje en la linea de comandos y leer datos desde el
teclado. La instruccin
>> resp=input(Mensaje que se imprime)
imprime Mensaje que se imprime en una linea de la ventana de comandos y se
queda esperando a que el usuario teclee un valor o una expresin
Funcin DISP
Permite imprimir en la pantalla un mensaje de texto:
>> disp(Mensaje que se imprime)
III. MONTAJE EXPERIMENTAL
Ejercicios a medio resolver:
Todos siguientes cdigos debern ser escritos en la ventana de comandos. El
docente har
-

Generar vectores fila y columna de nmeros consecutivos.

>> x=1:10
-

Genera vectores con un paso definido.

>> x=1:.5:4
-

Realizar las cuatro operaciones bsicas entre dos cantidades cualquiera.

Expresar en forma vectorial el siguiente polinomio:

Lo expresamos en Matlab como:


>> p=[1 2 12 10]
-

Determine las races del anterior polinomio.

>> r=roots(p)
-

Determine el polinomio a partir de las races

>> a=poly(r)
-

Dados los polinomios a(s)=s+10 y b(s)=s^2+2, realizar el producto de


ambos.

>> a=[1 10];


>> b=[1 0 2];
>> c=conv(a,b)
-

Para los mismos polinomios del anterior ejercicio, realizar la divisin.

>> u=deconv(a,b);
-

Dado los polinomios en forma vectorial A=[2 4 5 7] y B=[1 2 3], realizar la


expansin en fracciones:

>> B=[1 2 3];


>> A=[2 4 5 7];
>> [r,p,k]=residue(B,A)
-

Graficar en el intervalo de 0 a 5*pi con un paso de 0.1 segundos, la funcin


sin(t)

>> t=0:.01:5*pi;
>> y=sin(t);
>> plot(t,y,'-r');title('Grfico funcin seno`);xlabel('Tiempo(t)');ylabel('Salida');grid

>>
>>
>>
>>
>>
-

Dadas las siguientes funciones, hallar el producto de estas funciones y los


polos y ceros del producto de estas funciones.

g1n=[1 0]; g1d=[1 2];


g2n=[4 4]; g2d=[1 4 5];
gn=conv(g1n, g2n);
polos=roots(gn);
ceros=roots(gn);
Describa cual es la function de cada una de las siguientes instrucciones:

>> t=0:0.05:10;
>> y=sin(t);
>> z=cos(t);
>> plot(t,y,'o',t,z,'x')
>> grid
>> title('Curvas de las funciones Seno y Coseno')
>> xlabel('segundos')
>> ylabel('y=Seno t; z=Cos t')
>> text('3,0.45, 'seno t')
>> text(0.8,-0.3, 'coseno t'
- Representar la funcin :

Teclear en Matlab
>> t = 0:.05:10;
>> x2=exp(-2.5*t).*(151000*sin(1.32*t)+30200+sin(1.32*t+41.30*pi/180));
>> plot(t,x2);grid;xlabel('Tiempo');ylabel('Amplitud');
>>
>>
>>
>>

Comentar que realiza cada lnea de las siguientes sentencias:


t=(0:500)/500;
e1=1.245*exp(-7.21*t).*sin(9.72*t+2.21);
e2=1.1*exp(-7.22*t).*sin(15.5*t+2.01);
e3=1.8*exp(-7.22*t).*sin(4.59*t+2.58);
10

>>
>>
>>
>>
>>
>>
>>

plot(t,e1,'-r',t,e2,'-g',t,e3,'-b');grid;
xlabel('t');ylabel('e(t)');
hold on;
plot([.7 .8],.9*[1 1]+.02,'-r'); text(.8,.9,'E1');
plot([.7 .8],.7*[1 1]+.02,'-g'); text(.8,.7,'E2');
plot([.7 .8],.5*[1 1]+.02,'-b'); text(.8,.5,'E3');
hold off;

- Describa cual es la function de cada una de las siguientes lneas


>>syms x y z a;
>>f = x^2 + sin(y);
>>subs(f,{x,y},{1,pi/2});
>>int(f,x);
>>int(f,x,1,a);
>>diff(f,x,2);
>>limit(f,x,0);
>>f1 = x + y;
>>f2 = x + 2*y + 1;
>>xy_solution = solve(f1,f2,x,y);
>>x_solution = xy_solution.x;
>>y_solution = xy_solution.y;
>>simple(f);
-

Abra el editor de ficheros m y escriba el siguiente cdigo, guarde como


prueba.m y ejectelo. Seale que hace el programa.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Ejemplo de Script: prueba.m %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Operaciones con Matrices
%
%
A=[1 2 3; 4 5 6] B=[1 2; 3 4 ; 5 6]
C=A*B
T=inv(C)^2
Tt=T
-

Coloque comentarios en cada lnea del anterior script indicando que hace
cada lnea.

11

Abra el editor de ficheros m y escriba el siguiente cdigo, guarde como


prueba.m y ejectelo. Seale que hace el programa.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %
%% Funcion que genera un grafico de 2D %
%% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
x = linspace(-8*pi,8*pi,100);
y = sin(x)./x;
% a elemento de dos vectores
figure; plot(x,y,b,x,sin(x/4),r:), title(sin(x)/x & sin(x)),
xlabel(eje x),ylabel(eje y), grid;
-

De igual manera coloque comentarios en cada lnea e indique que hace


dicha linea

Escriba el siguiente cdigo e indique que realiza. Coloque comentarios a


cada lnea.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%
%% %
%% Funcion que genera una curva de 3D %
%% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%
t = 0:pi/50:10*pi;
figure; plot3(sin(t),cos(t),t,b,10*sin(t),cos(t)/2,t,r);
title(Helice), xlabel(eje x),
ylabel(eje y), zlabel(ejez),grid;
-

Escriba el siguiente cdigo e indique que realiza. Coloque comentarios a


cada lnea.

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% %
%% Funcion que genera una superficie de 3D %
%% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
12

x=linspace(-pi,pi,50);
y=linspace(-pi,pi,50);
[X,Y]=meshgrid(x,y);
z=sin(1.1*(X.^2+Y.^2))./(X.^2+Y.^2);
figure; surf(x,y,z);
title(GORRO), xlabel(eje x), ylabel(eje y), zlabel(eje z),
grid;
-

Ejecute los trabajos que le indique el docente en clase.

IV. RESULTADOS
En esta parte el estudiante debe colocar todos los resultados obtenidos.
V. ANALISIS DE RESULTADOS
Esta seccin es en donde se desarrolla el anlisis de los resultados obtenidos en el
numeral 4, haciendo referencia a cada una de las tablas y grficos.
VI. CONCLUSIONES:
El propsito de esta seccin es resumir los principales resultados obtenidos en la
prctica de laboratorio. Hay que recordar que las conclusiones son enunciados
cortos fundamentados en la teora y
Altamente
relacionados
con
el
objetivo
de
la
REFERENCIAS
El estudiante debe colocar las referencias bibliogrficas empleadas.

13

prctica.

You might also like