Está en la página 1de 8

Universidad Nacional Mayor de San Marcos – Facultad de Ingeniería Electrónica 1

Aguilar Becerra, Alexander y Domínguez Díaz, Luis Enrique Alexis

Matlab
Aguilar Becerra, Alexander y Domínguez Díaz, Luis Enrique Alexis
zofonix@gmail.com; luis.dominguez4@unmsm.pe
Facultad de Ingeniería Electrónica y Eléctrica – UNMSM


>> a = 1
Resumen—El presente informe tiene como MATLAB agrega la variable a al área de trabajo y
finalidad dar a conocer el funcionamiento del muestra el resultado en la ventana de comandos.
software MATLAB, el cual será usado en el cuso de a=
Sistemas de Control 1. El software es ampliamente 1
utilizado en varias áreas de la ingeniería y ciencias Cree algunas variables más.
debido a su potente capacidad de resolver y realizar >>b = 2
cálculos matemáticos, así como poder graficar b=
funciones e incluso crear programas que realicen 2
ciertas especificaciones. Para ello se procedió a >>c = a + b
emplear las funciones básicas del Matlab, luego se c=
procedió a crear funciones y finalmente prendimos 3
a hallar la función de transferencia de un sistema >>d = cos(a)
usando Matlab. Todos los resultados se d=
0.5403
documentaron en el presente informe.
Cuando no se especifica una variable de salida,
I.INTRODUCCIÓN MATLAB utiliza la variable ans, abreviatura de
answer (respuesta), para almacenar los resultados
Se debe presentar la base teórica considerada para del cálculo.
el desarrollo de la experiencia de laboratorio, pero >>sin(a)
de una manera resumida. La redacción debe
realizarse en tiempo presente. El presente trabajo ans =
consiste en aprender a utilizar el software 0.8415
MATLAB, aprendiendo su entorno, forma de Si una instrucción finaliza con punto y coma,
trabajo, los comandos básicos, así mismo aprender a MATLAB realiza el cálculo, pero elimina la
crear scripts y funciones. visualización de la salida en la ventana de
comandos.
II. MATERIALES Y MÉTODOS >>e = a*b;
Para crear un arreglo con cuatro elementos en una
A. Equipos, materiales y herramientas
fila única, separe los elementos con una coma (,) o
utilizados
un espacio.
Durante la práctica de laboratorio utilizamos el >> a = [1 2 3 4]
software Matlab. a=
B. Procedimiento 1234
Este tipo de arreglo es un vector fila.
a. Parte 1: Variables, vectores y matrices Para crear una matriz con varias filas, separe las
0 filas con punto y coma.
Para crear una variable denominada a, debe ingresar >>a = [1 2 3; 4 5 6; 7 8 10]
esta instrucción en la línea de comandos: a=
123

Informe final de laboratorio de Sistema de Control I


Universidad Nacional Mayor de San Marcos – Facultad de Ingeniería Electrónica 2
Aguilar Becerra, Alexander y Domínguez Díaz, Luis Enrique Alexis

456 Se representaría en Matlab de la siguiente manera:


7 8 10 >> P=[1 , 2, -9 , -2 ,8];
Realice las siguientes operaciones y explique el Para extraer las raíces de un polinomio
resultado obtenido: >> r=roots(P);
a + 10; sin(a); a'; p = a*inv(a); a.*a; a.^3; A = [a,a]; Para hallar el polinomio cuyas raíces sean r1=0.5,
B = [a; a] r2=1 y r3=3
>> P2=poly([1 0.5 3]);
b. Parte 2: Comandos útiles Para multiplicar polinomios
a 0 >> P3=conv(P,P2);
Describa en sus propias palabras las siguientes Para dividir:
instrucciones y muestre un ejemplo de su >> [Q,R]=deconv(P3,P);
utilización: Ahora defina el siguiente polinomio:
- Help función 𝑄(𝑠)=2𝑠4−𝑠2+0.5𝑠+6 y obtenga los resultados de
- Clc las siguientes operaciones:
- Clear variable P(s)+Q(s) P(s)xQ(s) P(s)/Q(s)
- Clear all
e. Parte 5: Programación
- Close all
0
c. Parte 3: Guardar y Recuperar datos En Matlab es posible ingresar comandos del
a lenguaje uno por uno en la línea de comandos, o en
Para almacenar todo lo introducido y obtenido en la su lugar, escribir una serie de comandos en un
ventana de comandos, se utiliza la siguiente archivo y luego ejecutarlo como cualquier función
instrucción de MATLAB. Use el editor de MATLAB o
>>diary(‘sesion1.txt’); (almacena todo lo que cualquier otro editor de texto para crear sus propios
aparezca en la ventana de comandos en el archivo archivos de funciones. Llame a estas funciones
sesion1.txt ) como lo haría con cualquier otra función o comando
>>diary on (activa el almacenamiento en el archivo) de MATLAB.
>>diary off (desactiva el almacenamiento en el Existen dos tipos de archivos de programa:
archivo) Scripts, que no aceptan argumentos de entrada ni
devuelven argumentos de salida. Operan sobre
d. Parte 4: Polinomios datos en el área de trabajo.
0 Funciones, que aceptan argumentos de entrada y
Para Guardar variables, que ya estén previamente devuelven argumentos de salida. Las variables
definidas, en un archivo de extensión .mat, se utiliza internas son locales para la función.
las siguientes instrucciones: Clarifiquemos esto con el siguiente ejemplo:
>> save datos1.mat; (guarda todas las variables en En el Editor creamos el siguiente script llamando:
el archivo datos1.mat) triarea.m que calcula el área del triángulo:
>> save datos2.mat x; (sólo guarda la variable x en b = 5;
el archivo datos2.mat ) h = 3;
Para Recuperar variables a = 0.5*(b.*h)
>>load(‘datos.mat’) Después de guardar el script, este puede ser
Para el informe final adjunte el archivo Sesion1.txt ejecutado desde la línea de comandos, de la
y el archivo varPol.mat donde incluye todo lo siguiente manera:
desarrollado y las variables creadas para e >> triarea
desarrollo de la Parte 4.
En Matlab los polinomios son representados por a=
vectores. Por ejemplo el siguiente polinomio: 7.5000
𝑃(𝑠)=𝑠4+2𝑠3−9𝑠2−2𝑠+8

Informe final de laboratorio de Sistema de Control I


Universidad Nacional Mayor de San Marcos – Facultad de Ingeniería Electrónica 3
Aguilar Becerra, Alexander y Domínguez Díaz, Luis Enrique Alexis

Nótese que si queremos calcular el área de otro f. Parte 6: Comandos básicos para sistemas de
triangulo usando el mismo script, se debería control
actualizar los nuevos valores de b y n modificando Para definir una función de transferencia en Matlab,
el código del script. Sin embargo, en lugar de lo hacemos con el comando tf. Definamos la
actualizarlo manualmente cada vez, se puede hacer siguiente función de transferencia:
un programa más flexible convirtiéndolo en una 𝐻(𝑠)=𝑠2+2𝑠+3𝑠3+3𝑠2+3𝑠+1
función. Reemplace las líneas de asignación de >>% Introducir una función de transferencia
valores a b y h con la instrucción de declaración de polinómica
función de la siguiente manera: >>num=[ 1, 2, 3]; % declaramos el numerador
function a = triarea(b,h) como un polinomio
a = 0.5*(b.*h); >>den=[1, 3, 3, 1]; % declaramos el denominador
end como un polinomio
Después de guardar la función, puede ser llamada >>sys=tf(num,den) % declaramos la función de
con diferentes valores de base y altura, desde la transferencia
línea de comandos sin modificar su codificación, de sys =
la siguiente manera: s^2 + 2 s + 3
>>a1 = triarea(1,5) ---------------------
>>a2 = triarea(2,10) s^3 + 3 s^2 + 3 s + 1
>>a3 = triarea(3,6) Continuous-time transfer function.
a1 = Desarrolle los siguientes ejercicios:
2.5000 i. En sus propias palabras defina que es una
a2 = función de transferencia.
10 ii. Defina en Matlab la siguiente función de
a3 = transferencia:
9 𝐺(𝑠)=(𝑠2+64)/(𝑠+1)(𝑠2+6𝑠+8)
Desarrolle los siguientes ejercicios:
iii. Encontrar el equivalente en funciones
parciales de G(s).
i. Cree un script que pida al usuario que ingrese
los coeficiente de una ecuación cuadrática iv. Encuentre los ceros de G(s) y H(s). (cuando
(𝑎𝑥2+𝑏𝑥+𝑐) y que arroje como resultado las el numerador se hace cero).
soluciones siempre y cuando sean reales caso v. Encuentre los polos de G(s) y H(s). (cuando
contrario que muestre un mensaje que las el denominador se hace cero).
soluciones no son reales. Luego convertirla en vi. Obtener la respuesta temporal de G(s) y H(s)
una función. ante una entra escalón unitario (step)
ii. Cree un script que muestre la gráfica de la
función 𝑌(𝑡)=e−3∗tsin(2∗𝑝𝑖∗10∗𝑡) , para un III. RESULTADOS
intervalo de 0 a 1 segundo. a. Parte 1: Variables, vectores y matrices
iii. Cree una función que grafique Y para una
determinada frecuencia e intervalo de tiempo Primero definimos el vector a
que son ingresados como argumentos de entrada
de la función.
iv. Cree una función que calcule el factorial de
un número.
v. Cree una función que sea capaz de multiplicar
dos matrices y obtener la matriz inversa del
resultado.

Informe final de laboratorio de Sistema de Control I


Universidad Nacional Mayor de San Marcos – Facultad de Ingeniería Electrónica 4
Aguilar Becerra, Alexander y Domínguez Díaz, Luis Enrique Alexis

 a+10 Explicación: Como podemos ver el


resultado nos da cada elemento de la función
original elevado al cuadrado, en esta
multiplicación se considera como producto
punto el cual al ser la misma matriz nos dará
una matriz elevada al cuadrado.
 a.^3

Explicación: Como podemos ver al sumar


un número a una matriz esta sumara a cada
unidad dentro de la matriz.
 Sin(a)

Explicación: Como podemos ver el


resultado nos da cada elemento de la función
original elevado a la tres.

 A=[a,a]

Explicación: Como podemos ver la función


seno evaluara a cada número dentro de la
matriz a.

 P=a*inv(a)

Explicación: En este resultado vemos que a


la matriz “a” se le considera como un
elemento, entonces vemos que el signo “,”
creara una matriz de dos columnas.
 B=[a;a]
Explicación: Como podemos ver es una
multiplicación vectorial entre la función
original y su inversa obteniendo como
resultado la matriz identidad.
 a.*a

Informe final de laboratorio de Sistema de Control I


Universidad Nacional Mayor de San Marcos – Facultad de Ingeniería Electrónica 5
Aguilar Becerra, Alexander y Domínguez Díaz, Luis Enrique Alexis

Explicación: La función Clear all, limpia el


Explicación: En este resultado vemos que a registro de todas las variables del área de
la matriz “a” se le considera como un trabajo. Sin embargo, no elimina lo escrito
elemento, entonces vemos que el signo “;” en la ventana de comandos.
que creara una matriz de dos filas.  Close all
Explicación: La función limpia el espacio de
b. Parte 2: Comandos útiles trabajo, cierra todas las figuras y cierra el
espacio de trabajo
 help función

Explicación: La función help como su


traducción al español nos indica, nos ayuda a c. Parte 3: Guardar y Recuperar datos
saber para qué sirve la función. Nos brinda un
texto describiendo que es y que hace la función
que le pongamos a la derecha de la palabra help.
Así mismo nos muestra cómo se debe utilizar la
función y nos brinda algunos ejemplos de cómo
usarlo.

Para el informe, el archivo esta adjunto con


e nombre de Sesion1.txt

d. Parte 4: Polinomios
Ahora defina el siguiente polinomio:
𝑄(𝑠)=2𝑠4−𝑠2+0.5𝑠+6 y obtenga los
resultados de las siguientes operaciones:

 Clc
 P(s)+Q(s)

Explicación: La función clc limpiar la


ventana de comandos, borrando todo lo  P(s)xQ(s)
escrito. Sin embargo, no borra los valores de
las variables previamente asignadas.
 Clear Variable
Explicación: La función Clear Variable,
limpia el registro de todas las variables del
área de trabajos. Sin embargo, no elimina lo
escrito en la ventana de comandos.

 Clear all

Informe final de laboratorio de Sistema de Control I


Universidad Nacional Mayor de San Marcos – Facultad de Ingeniería Electrónica 6
Aguilar Becerra, Alexander y Domínguez Díaz, Luis Enrique Alexis

ii. Cree un script que muestre la gráfica de la


 P(s) /Q(s) función 𝑌(𝑡)=e−3∗tsin(2∗𝑝𝑖∗10∗𝑡) , para un
intervalo de 0 a 1 segundo.

Script:

Grafica:

1 e. Parte 5: Programación

Desarrolle los siguientes ejercicios:

i. Cree un script que pida al usuario que


ingrese los coeficientes de una ecuación
cuadrática (𝑎𝑥2+𝑏𝑥+𝑐) y que arroje
como resultado las soluciones siempre y
cuando sean reales caso contrario que
muestre un mensaje que las soluciones iii. Cree una función que grafique Y para
no son reales. Luego convertirla en una una determinada frecuencia e intervalo
función. de tiempo que son ingresados como
argumentos de entrada de la función.
Script:

iv. Cree una función que calcule el factorial


de un número.

Función: Función:

Informe final de laboratorio de Sistema de Control I


Universidad Nacional Mayor de San Marcos – Facultad de Ingeniería Electrónica 7
Aguilar Becerra, Alexander y Domínguez Díaz, Luis Enrique Alexis

v. Cree una función que sea capaz de multiplicar


dos matrices y obtener la matriz inversa del
resultado.

iv. Encuentre los ceros de G(s) y H(s).


(cuando el numerador se hace cero).

v. Encuentre los polos de G(s) y H(s).


(cuando el denominador se hace cero).
0 f. Parte 6: Comandos bá sicos para
sistemas de control

0 i. En sus propias palabras defina que es


una funció n de transferencia.
1 La funció n de transferencia es un cociente
que relaciona la señ al de salida con la señ al
de entrada, es decir nos da el
comportamiento que va a darnos el sistema
cuando le apliquemos una cierta señ al de
entrada. vi. Obtener la respuesta temporal de G(s) y H(s)
2 ii. Defina en Matlab la siguiente funció n de ante una entra escalón unitario (step)
transferencia:
3
4
1

IV. CONCLUSIONES
iii. Encontrar el equivalente en funciones
parciales de G(s).  Se pudo comprobar que el software MATLAB

Informe final de laboratorio de Sistema de Control I


Universidad Nacional Mayor de San Marcos – Facultad de Ingeniería Electrónica 8
Aguilar Becerra, Alexander y Domínguez Díaz, Luis Enrique Alexis

es un programa muy útil en la solución de


complejos problemas matemáticos
 Es posible crear funciones usando scripts, para
luego emplearlos en la ventana de comandos y
así no tener que volver a escribir de nuevo el
código.
 El software MATLAB posee una infinidad de
funciones predeterminadas que nos permiten
calcular diferentes cosas como la función de
transferencia, raíces de un polinomio, grafica de
una función, etc.

REFERENCIAS
[1] G. O. Young, “Synthetic structure of industrial
plastics (Book style with paper title and editor),”
in Plastics, 2nd ed. vol. 3, J. Peters, Ed.
New York: McGraw-Hill, 1964, pp. 15–64.
[2] W.-K. Chen, Linear Networks and Systems
(Book style). Belmont, CA: Wadsworth,
1993, pp. 123–135.
[3] H. Poor, An Introduction to Signal Detection
and Estimation. New York: Springer-Verlag,
1985, ch. 4.
[4] J. U. Duncombe, “Infrared navigation—Part I:
An assessment of feasibility (Periodical style),”
IEEE Trans. Electron Devices, vol. ED-11, pp.
34–39, Jan. 1959.
[5] S. Chen, B. Mulgrew, and P. M. Grant, “A
clustering technique for digital communications
channel equalization using radial basis function
networks,” IEEE Trans. Neural Networks, vol.
4, pp. 570–578, July 1993.

Se listarán las referencias consideradas para la


realización de la práctica y del cuestionario. El
formato será IEEE. La lista debe ponerse de
acuerdo a su orden de utilización en el documento.
A menos que haya más de cinco autores, no use la
palabra “et al.”. Los artículos que no han sido
publicados, inclusive si ellos fueron sometidos a
revisión deben ser citados como “no publicados”

Informe final de laboratorio de Sistema de Control I

También podría gustarte