23
INSTITUTO POLITÉCNICO NACIONAL Escuela Superior de Ingeniería Mecánica y Eléctrica Unidad Culhuacan Espacio de Estados Práctica No.2 “Matlab aplicado a Matrices” Alumnos: o Mora Valencia Itzel Amparo o Marck Peláez Martín Enrique o Aguilar Salazar Isaías Fernando o Morales Rosales Víctor Manuel

Practica 2 Maya

  • Upload
    netbom

  • View
    5

  • Download
    0

Embed Size (px)

DESCRIPTION

espacios de estado

Citation preview

INSTITUTO POLITCNICO NACIONAL

Escuela Superior de Ingeniera Mecnica y Elctrica Unidad Culhuacan

Espacio de Estados

Prctica No.2 Matlab aplicado a Matrices

Alumnos: Mora Valencia Itzel Amparo Marck Pelez Martn Enrique Aguilar Salazar Isaas Fernando Morales Rosales Vctor Manuel

Grupo: 7EV1

Profesor: Ing. Maya Prez Edgar

Mxico D.F. a 21 de Enero del 2015INTRODUCCINSe aplicara conocimientos bsico de Matlab pero enfocado a Matrices, basado en teoras de espacio de estados. Se realizara algunas operaciones de matrices utilizando las herramientas de Matlab como son los archivos m y Simulink, para obtener su grafica de respuesta.

MARCO TERICOPara seguir avanzando hacia el lgebra Lineal es necesario definir el concepto de Matriz en Matlab. Tcnicamente no hay ninguna diferencia entre vectores, matrices o tensores. De hecho todos los tipos numricos en Matlab son arrays sin distincin, cada dimensin que no exista no es ms que un ndice que se mantiene en 1.Desde este punto de vista, todos los vectores son en realidad matrices que tienen slo una fila o una columna. La concatenacin de vectores fila o vectores columna generar una matriz. El inconveniente es que hasta ahora slo conocemos vectores fila.Al igual que con los vectores, Matlab dispone de una ingente coleccin de funciones que, combinadas adecuadamente, nos serviran para generar prcticamente cualquier matriz.Los operadores de suma, resta, multiplicacin, divisin y potencia tambin funcionan con matrices siempre que sean del mismo tamao. Tambin podemos aplicar las funciones elementales a matrices, lo que nos dar el mismo resultado que si hubiramos aplicado la funcin a cada uno de los elementos.En el caso de las matrices existen operaciones propias como la multiplicacin matricial o la inversa. Estas operaciones tambin tienen limitaciones: la multiplicacin matricial exige que los tamaos de los operandos sean compatibles y slo las matrices cuadradas no singulares tienen inversa. Caso aparte son las divisiones matriciales puesto que tenemos dos.Si el sistema posee mltiples entradas, para un conjunto especificado de polos en lazo cerrado la matriz de ganancias de realimentacin del estado K no es nica y se dispone de un grado de libertad adicional (o de varios grados de libertad) para determinar K. Un uso comn es maximizar el margen de estabilidad. La asignacin de polos basada en este mtodo se llama asignacin de polos robusta. La orden de MATLAB para la asignacin de polos robusta es place.Aunque la orden place se puede utilizar tanto para sistemas de una nica entrada como de mltiples entradas, requiere que la multiplicidad de los polos en los polos en lazo cerrado deseados no sea mayor que el rango de B. Esto es, si la matriz B es una matriz n # 1, la orden place necesita que no haya polos mltiples en el conjunto de polos en lazo cerrado deseado.Para sistemas de una nica entrada, acker y place dan la misma K. (Pero para sistemas con mltiples entradas, se debe emplear la orden place en lugar de acker.)Se observa que cuando el sistema de entrada nica es poco controlable, pueden surgir algunos problemas de clculo si se utiliza la orden acker. En tal caso es preferible utilizar la orden place siempre que no existan polos mltiples en el conjunto deseado de polos en lazo cerrado.Para utilizar la orden acker o place, se introducen en primer lugar las siguientes matrices en el programa:matriz A, matriz B, matriz J

donde J es la matriz consistente de los polos en lazo cerrado deseados, tal que:A continuacin se introduce

K = acker(A, B, J)O bien:K = place(A,B,J)Se observa que la orden eig (AB*K) se puede utilizar para verificar que la matriz K as obtenida da los valores propios deseados.OBJETIVOAplicar Matlab en el manejo y operaciones de matrices. Simulacin de la respuesta de un sistema de 1er y 2do orden con el bloque de variables de estado de Simulink.DESARROLLO1. Investigar la funcin y la forma de aplicar las siguientes comandos. Inv Input Eig Poly Det Ones Zeros Rank Disp. Size Eye Rand Switch Case Inv-----------Matriz inversaY=inv(x)Input-------------Dato de entrada del usuarioevalResponse=input (prompt)strResponse=input (prompt, s)eig--------------eigen-valores y eigen-vectoresd=eig(A)d=eig(A,B)[V,D]=eig(A)[V,D]=eig{A,nobalance}

Poly----------------polinomio de datos especificos

p= poly (A)p= poly(r)

det--------------determinante de matriz

d=det (x)

ones-----------------crea un arreglo de todos los unos

zeros-----------------crea un arreglo de todos los ceros

Rank----------------- rango de matriz

K=Rank(A)K=Rank(A,tol)

Size------------------- arreglo de dimension

d=size(x)[m,n]=size (x)m=size(x,dim)[d1,d2,d3,.dn]=size (x)

Eye----------Matriz de identidad

Y=eye (n)Y=eye(m,n)Y=eye([m,n])Y=eye (size(A))Y=eye (m,n,classname)

Rand----------------uniformalidad distribuida de numerous.

Disp.------------despliega texto o arreglo

Disp(x)

Case------------ejecuta un bloque de cdigos si la condicin es cierta

2. Realizar un programa en archivo m, que ejecute las siguientes operaciones sobre la matriz BAdems ejemplificar el uso de cada comando del punto 1

B=[1 2 3 4;5 6 7 8;9 10 11 12]C=BD=B*CE=B*DF=B^3InvEntrega el inverso de una matriz cuadrada

InputPermite al usuario introducir el valor a la variable declarada

EigEntrega los eigenvalores y eigenvectores de una matriz, en este caso B1

PolyConvierte races a polinomios. Cuando trata a una matriz de NxN, es un vector de nmero de elementos N+1 los cuales son los coeficientes del polinomio caracterstico.

DetEntrega el determinante de la matriz cuadrada B1.

OnesEntrega un arreglo de 1s de tamao NxN NxM.

ZerosEntrega un arreglo de 0s de tamao NxN NxM.

RankProporciona el rango de la matriz, un estimado del numero de renglones independientes de una matriz.

DispDespliega el arreglo sin imprimir el nombre del arreglo. Funciona igual que declarar una variable sin punto y coma.

SizeDespliega el tamao del arreglo de una matriz de NxM, en este caso de una matriz cuadrada, B1

EyeDespliega una matriz identidad del tamao que se identifique

RandDistribuye uniformemente nmeros pseudoaleatorios en una matriz de NxM

Switch y CaseFuncionan como un if/else, de manera que despliega el valor de una variable declarada si el caso establecido se cumple.

Realizar un programa en archivo .m que ejecute las siguiente operaciones sobre la matriz B.

C = BD = B*CE = B.*DF=B^3Cdigo en Matlab:B=[1 2 3 4; 5 6 7 8; 9 10 11 12]

C=B'

D=B*C

B1=[1 2 3 ; 5 6 7 ; 9 10 11]%Se tuvo que crear una nueva matriz diferente a B porque no coincidan los tamaosE= B1 * D

F=B.^3

3.- Empleando simulink obtener la respuesta de los sistemas de 1er y 2do orden.1er orden.

Sustituyendo los siguientes valores en la F.T. Con R=0.25; C=4 y =1

Y la grfica queda como:

Con R=0.1; C=4 y =0.4

Y la grfica queda de la siguiente forma:

Con R=0.1; C=4 y =0.4

Y la grfica queda como:

2do orden.

Sustituyendo los siguientes valores en la F.T. Con R=0; C=4; L=3 ;=0 y n=0.28

Y la Grfica es:

En este caso logramos ver que es un sistema sin amortiguamiento ya que =0

Con R=5; C=0.4; L=5 ;=0.707 y n=0.707

Y la grfica queda de la siguiente forma:

Con R=10; C=3; L=5 ;=3.81 y n=0.2581

La grafica es:

Con R=10; C=3; L=50 ;=1.23 y n=0.081

La grafica es:

CONCLUSIONES

Victor Manuel Morales Rosales

Aplicar en software de MatLab para realizar las frmulas matemticas para las matrices, fue un poco difcil porque algunas sentencias utilizadas para el archivo m son utilizadas en programacin de c y recordar cmo se realizan y aplican fue el investigar para realizar el programa.Las grficas obtenidas en esta prctica reflejan los conocimientos obtenidos en clase con respecto a las funciones de primer y segn orden de un sistema de ellas. Viendo as los distintos casos de salida de una seal.

Itzel Amparo Mora Valencia

En la prctica pudimos repasar temas como simulink, que es una funcin que MatLab proporciona para hacer ms sencillo el estudio de una funcin de transferencia, as tambin conocimos nuevas funciones tanto para qu sirven como la forma correcta de aplicarlas. Lo que me cost un poco de trabajo fue el programa en archivo m ya que no soy muy buena programando pero en general fue una prctica muy productiva.

Martn Enrique Marck Plaez.

En la elaboracin de la prctica aprend a usar simulink, la cual me ayuda mucho ya que este programa es muy fundamental para un ingeniero. En la prctica no. 1 trabajamos con funciones de transferencia pero no se us simulink. Entonces ahora al usar simulink me doy cuenta que es ms sencillo y ms fcil con el usuario. Tambin se us MATLAB para poder resolver las matrices y se aprendieron las funciones de los comandos.

saas Fernando Aguilar Salazar.Al empezar investigar sobre las instrucciones para aplicar Matlab a las matrices se poda determinar rpidamente las variables de estado, ya que obtenindolas manualmente se puede tardar mucho ms y con errores y con Matlab pas lo contrario. El problema es como generalmente sucede es aprender como aplicarlo en Matlab ya que al ser nuevas funciones causa cierta confusin y como consecuencia tener errores.