Mathematics">
Lab 01 TCA1 - IntroMatlab
Lab 01 TCA1 - IntroMatlab
Lab 01 TCA1 - IntroMatlab
CURSO:
LABORATORIO DE TEORIA DE CONTROL AUTOMATICO I
TURNO:
G5 Viernes 7 am A 8:40 am
LABORATORIO 1
a=1
b= [1 2]
a=2+i
b=-5-3*i
x= 1+sqrt(2)*i
%ó
x= 1+sqrt(2)*j
x = 1.0000 + 1.4142i
0
Si i y j se utilizan como variables, habría que renombrar la variable compleja como
ii=sqrt(-1) ó jj=sqrt(-1) y entonces el número 2+3*j se debería introducir como:
jj=sqrt(-1)
x=2+3*jj
jj = 0 + 1.0000i
x = 2.0000 + 3.0000i
1
donde la sentencia z=r*exp(j*teta) vuelve a obtener el número complejo en su forma
normal.
z=3+i*2
r=abs(z)
r =3.6056
theta=angle(z)
Expresión booleana:
A==1
Vector constante:
v= [1 2 3 4 5]
o
v=1:5
2
Matriz constante:
A= [2 2 3
0 0 7
5 9 -1]
o
A= [2 2 3;0 0 7;5 9 -1]
a=1; b=2;
A= [a+b pi 3
b^2 0 atan(a)
5 sin(b) -1]
B= zeros()
B= zeros(2,3)
3
Matriz de zeros con las dimensiones de la matriz A:
A= [2 2 3; 0 0 7; 5 9 -1];
B= zeros(size(A))
Matrices diagonales:
D= diag(1:5)
4
Extrayendo los elementos de la diagonal principal:
A=[1 2 3
4 5 6
7 8 9]
B= diag(A)
Formando una matriz diagonal con los elementos de la diagonal principal de una matriz:
C= diag(diag(A))
Operaciones:
Matriz identidad:
5
Suma de matrices (recuerde las matrices deben tener la misma dimensión):
B=A+A
C=B+1
Multiplicación de matrices:
A= [1 2 3;4 5 6;7 8 9]
C= [1 2 0;0 0 1;0 2 3]
D=A.*C
A= [1 0 0;0 2 3;5 0 4]
B= [2 0 0;0 2 2;0 0 3]
C=A.*B
6
% la multiplicación de matrices se realiza con el producto punto.
Extracción de la fila 2:
a=C(2,:)
Extracción de columna 3:
b=C(:,3)
r=rank(A)
7
Matriz transpuesta:
B=A’
d=det(A)
Polinomios:
v=[0 -1]
8
p1= poly(v)
Cálculo de raíces:
P= roots(p1)
Para dibujar una gráfica a partir de dos vectores x e y de la misma longitud se procede de la
siguiente manera:
9
Representación de varias sub-figuras en una única figura. Para ello, se emplea el comando
subplot(m,n,p) donde el primer parámetro corresponde al número de filas, el segundo
parámetro al número de columnas y el tercer parámetro a la posición relativa en la matriz de
sub-figuras.
Representación tres señales en una misma fila, se ejecutarían las siguientes líneas de comandos:
x=[1 2 3 4 5 6 ]
y=[2 4 9 16 25 36 ]
z=[3 6 9 12 15 18]
subplot(1,3,1)
plot(x,y) %proponer una señal 1
subplot(1,3,2)
plot(x,z) %proponer una señal 2
subplot(1,3,3)
plot(y,z) %proponer una señal 3
10
AUTOVALORES E AUTOVECTORES:
Autovalores:
A=[0 1;-2 -3]
r=eig(A) %r vector de autovalores
ó
[V,D]=eig(A) % produce una matriz diagonal D de autovalores
% y una matriz completa V cuyas columnas son
% sus correspondientes autovectores. Así (A*V=V*D)
FUNCIONES:
11
Una vez definida la función podemos evaluarla en el punto x=30 (grados)
12
Transformada De Laplace De Una Función
Sea, f (t)= sen(t)-2��−2��, en primer lugar, se necesita declarar una variable de tipo
simbólica con el uso de la instrucción syms y después se ejecuta el comando de la transformada
que se desea
calcular pasando como parámetro la función de la cual se quiere calcular su transformada. Por
ejemplo, para este caso:
syms t
TL= laplace(sin(t)-2*exp(-2*t)) %El resultado que se obtiene es:
syms s
f=ilaplace(1/(s^2+1)-2/(s+2))
13
VI.-Ejercicios:
6.1.- Implemente en matlab la siguiente función, luego plotee:
1
� = �(�) =
�2 −1
Solución
Otra forma:
14
6.2.- Implemente en matlab la siguiente función, luego plotee:
�1 + �2 𝑖� �1 > 0, �2 > 0
� = �(�1 , �2 ) = {
√�1 + �
2
2 �� ��𝑠 ���á𝑠 �𝑎𝑠�𝑠
2
Solución
Otra forma:
15
16
6.3.- Haga un .m file que ayude a encontrar el mínimo de f(x) = x^3-2x^2- 5, dentro del intervalo (0,2)
Solución:
minimo =
-5
6.4.- Construya una señal escalón unitario, de 0 a 50 segundos, con step inicial en 25 s. El paso
debería ser de 0.5s. Plotee el resultado
t=0:0.5:50;
>> T=25; % nos valemos del comando stepfun para crear una funcion escalón
unitario
17
>> x=stepfun(t,T);
>> plot(t,x); title('Escalon Unitario');
>> axis([0 50 0 2]), xlabel('Tiempo(t)'), ylabel('u(t-2)') %nombramos los ejes y el título de la gráfica
Solución
r=-5:1:5
p=zeros(size(r))
p(r>=-30)=1;
stem(r,p);
%axis([-5 5 -1 2]);
18
6.6.- Realizar un script de Matlab llamado senoidal.m que represente una señal
senoidal en función de los siguientes parámetros de entrada: tiempo (T), frecuencia
(F), amplitud (A) y fase (Ø). Los parámetros de entrada deberán especificarse al
principio del script. Este es el resultado que debe mostrar la ejecución del script:
//senoidal.m
% Señal senoidal
t = (0:dt:Tiempo-dt)'; % Eje X
y = Amplitud* sin(2*pi*Frecuencia*t + Fase); % Eje Y
figure(1);
plot(t,y); % Grafica x contra y
xlabel ('Tiempo (en segundos)');
ylabel ('Amplitud');
title ('Señal Senoidal');
grid on;
6.7.- Realizar un script de Matlab senyales.m que represente una señal senoidal y
una señal cosenoidal en una misma figura. Los parámetros de ambas señales se
definirán al principio del script: tiempo (T), frecuencia (F), amplitud (A) y fase (Ø).
El aspecto de la ejecución debe ser el siguiente:
19
//senyales.m
Tiempo = 0.5; % (T) tiempo
Puntos = 500; % número de puntos
dt = 1/Puntos; % tiempo a cada punto
% Señal senoidal
t = (0:dt:Tiempo-dt)'; % Eje X
y = Amplitud* sin(2*pi*Frecuencia*t + Fase); % Eje Y
% Señal cosenoidal
t2= (0:dt:Tiempo-dt)'; % Eje X
y2= Amplitud* cos(2*pi*Frecuencia*t + Fase); % Eje Y
20
6.8.- Determinar las transformadas de Laplace de estas funciones de t.
syms t
TL1= laplace(2+3*t+4*t^2)
TL2= laplace(2-2*(exp(4*t))+3*b*(exp(4*t)))
TL3= laplace(4*sin(2*t)+5*cos(2*t))
t=heaviside(t-2)
TL4 = laplace(2*t)
Transformadas:
21
VII.- CUESTIONARIO:
Los Autovalores también son conocidos como valores propios, valores característicos o
eigenvalores. Análogamente los Autovectores también se conocen con los nombres de
vectores propios, vectores característicos y eigenvectores.
Sea A una matriz cuadrada de orden m. Diremos que un escalar λ ∈ C es un autovalor de
A si existe un vector v ∈ C m, v 6= 0 tal que Av = λv, en cuyo caso se dice que v es un
autovector de A asociado al autovalor λ. Obviamente, si tenemos un autovector v de A
asociado a un autovalor λ, cualquier multiplo no nulo de v tambien es un autovector de A
asociado al mismo autovalor λ. Por otra parte, si tenemos dos autovectores v1 y v2
asociados a un mismo autovalor λ, cualquier combinaci´on lineal no nula de dichos
autovectores también es un autovector de A asociado al mismo autovalor λ.
Se realizó la práctica de cómo utilizar los comandos básicos de Matlab como las matrices,
suma, multiplicación, expresiones booleanas, selección de filas determinadas etc.
Matlab es una herramienta muy útil, representando funciones gráficamente, de una forma
algo sencilla, pero debido a que en la red se encentran varios tutoriales e información
extra, estas graficas se pueden desarrollar con normalidad.
22