introduccion matlab para ingenieria de control

41

Upload: andres-lizcano

Post on 02-Jul-2015

636 views

Category:

Documents


4 download

DESCRIPTION

Control

TRANSCRIPT

Page 1: Introduccion Matlab para Ingenieria de Control

Introducción a Matlab

Escuela de Ingeniería Mecánica

Universidad Industrial de Santander

11 de abril de 2011

Page 2: Introduccion Matlab para Ingenieria de Control

Índice

MatlabIntroducciónOperaciones básicasSimulink

Sistemas dinámicosSolución de ecuaciones diferenciales mediante coe�cientesconstantes.Transformada de Laplace.

Page 3: Introduccion Matlab para Ingenieria de Control

Introducción I

I Matlab es un programa de gran aceptacion en ingenieradestinado a realizar cálculos técnicos cientí�cos y de propositogeneral. En el se integran operaciones de cálculo, visualizacióny programación, donde la interacción con el usuario empleauna notación matemática clásica.

I Los usos y aplicaciones típicos de Matlab son:

I Matemáticas y cálculo.I Desarrollo de algoritmos.I Adquisición de datos.I Modelado, simulación y prototipado.I Análisis y procesado de datos.I Grá�cos cientí�cos y de ingeniería.I Desarrollo de aplicaciones.

Page 4: Introduccion Matlab para Ingenieria de Control

I El tipo básico de variable con el que trabaja Matlab es unamatriz que no requiere ser dimensionada previamente en ladeclaración. Una de las características mas interesantesconsiste en que el algebra vectorial y matricial se expresa conla misma sintaxis que las operaciones aritmeticas escalares.

I Matlab, a parte del cálculo matricial y álgebra lineal, tambiénpuede manejar polinomios, funciones, ecuaciones diferencialesordinarias, grá�cos entre otros.

Page 5: Introduccion Matlab para Ingenieria de Control

Operaciones básicas I

I De�nición de matrices

I M=[1 2 3;4 5 6;7 8 9]I M=[1,2,3;4,5,6;7,8,9]

I De�nición de vectores

I V�la=[1 2 3]I V�la=[1,2,3]I Vcol=[1,2,3]'I Vcol=[1,2;3]

Page 6: Introduccion Matlab para Ingenieria de Control

I det(M): Obtiene le determinante de una matriz.

I rank(M): Obtiene el rango de una matriz.

I rref(M): Soluciona el sistema de ecuaciones aumentado.

I inv(M): Calcula la inversa de una matriz cuadrada.

I M(:,1): Extrae la columna 1 de la matriz M.

I M(1,:): Extrae la �la 1 de la matriz.

I M(:,[1 4])

A=

2 −1 11 1 00 1 −3

x =

x1x2x3

b =

33−7

I MA=[A b].

I rref(MA).

I x=inv(M)*b.

Page 7: Introduccion Matlab para Ingenieria de Control

Otra forma de encontra la solución de un sistema de ecuacionesconsiste en la factorización LU.

I [L,U,P]=lu(MA);

I B=P*b

I y=L/B;

I x=U/y

A=

1 1 0 32 1 −1 13 −1 −1 21 2 3 −1

x1x2x3x4

=

41−34

Page 8: Introduccion Matlab para Ingenieria de Control

Polinomios

I s3−6s2−27

I p=[1 -6 0 -27]. se escribe los coe�cientesI ra=roots(p). saca las raices.I poli=poly(ra). obtiene de nuevo el polinomio.

I a=[1 2 3]

I b=[4 5 6]

I c=conv(a,b) producto de los polinomios.

I [q,r]=deconv(c,a) división de los polinomios.

Page 9: Introduccion Matlab para Ingenieria de Control

Representación grá�ca de la función seno

I t=[0:1:100] vector tiempo.

I x=t

I y=sin(0.1*t)

I plot(x,y)

I z=cos(0.2*t)

I plot3(x,y,z)

Representación de dos funciones

I t=[0:1:100] vector tiempo.

I x=t

I y=[sin(0.1*t);cos(0.1*t)]

I plot(x,y)

Page 10: Introduccion Matlab para Ingenieria de Control

Función de transferencia.

I num=[1 2]

I dem=[1 3 5]

I g=tf(num,dem) obtiene la función de transferencia

I pzmap(num,dem)

Respuesta en el tiempo

I impulse(g) entrada impulso

I step(g) escalon unitario

I [mag,fase,w]=bode(g) magnitud fase y pulsación

I nichols(g).

Page 11: Introduccion Matlab para Ingenieria de Control

Lugar de las raíces

I rlocus(g) lugar de las raices del sistema

I polos=rlocus(num,den,3) polos del sistema en buble cerradok=3.

I rltool herramienta para el diseño de reguladores L.R poradelanto o por atrazo.

Page 12: Introduccion Matlab para Ingenieria de Control

Simulink I

Simulink proporciona un entorno grá�co al usuario que facilitaenormemente el análisis, diseño y simulación de sistemas de control,electricos entre otros, al incluir una serie de rutinas que resuelvenlos cálculos matemáticos de fondo, junto con una sencilla interfazpara su uso.

Page 13: Introduccion Matlab para Ingenieria de Control

Simulink II

Figura: Ventana

Page 14: Introduccion Matlab para Ingenieria de Control

Figura: Modelo

Page 15: Introduccion Matlab para Ingenieria de Control

Figura: Parametros

Page 16: Introduccion Matlab para Ingenieria de Control

Figura: Plot

Page 17: Introduccion Matlab para Ingenieria de Control

Figura: Función

Page 18: Introduccion Matlab para Ingenieria de Control

Introducción I

Sea una ecuación diferencial homogenea.

ay ′′+by ′+ cy = 0 (1)

La solucón general dada es.

y = C1y1+C2y2 (2)

Si probamos una solución de la forma como emx y sustituyento enla ecuación 1, esta se transforma en.

am2emx +bmemx + cemx = 0

emx(am2+bm+ c

)= 0 (3)

Como emx nunca es cero cuando se tiene un valor real para x , laúnica solución para que la ecuación 3 se satisfaga es que m seaelegida como una raíz cuadráda.

Page 19: Introduccion Matlab para Ingenieria de Control

Introducción II

am2+bm+ c = 0 (4)

Por tanto existen dos raíces de la ecuación 4 las cuales son.

m1 =−b+

√b2−4ac

2a

m2 =−b−

√b2−4ac

2a(5)

Existen tres casos o formas de solución para encontrar la solucióngeneral.

I m1 y m2 reales y distintos(b2−4ac > 0

).

I m1 y m2 reales e iguales(b2−4ac = 0

).

I m1 y m2 reales e iguales(b2−4ac < 0

).

Page 20: Introduccion Matlab para Ingenieria de Control

Introducción III

1. Raíces reales distintasSi la ecuación tiene dos raíces reales distintas m1 y m2 se llegaa dos soluciones.

y1 = em1x

y2 = em2x (6)

Estas funciones son linealmente independientes y enconsecuencia forman un conjunto fundamental, por tanto lasolución general será.

y = C1em1x +C2e

m2x (7)

Page 21: Introduccion Matlab para Ingenieria de Control

Introducción IV

2. Raíces reales repetidasCuando m1 =m2 llegamos a una solución de tipo exponencial.

y1 = em1x (8)

Se hace necesario encontrar una segunda solución

y2 = xem1x (9)

La solución general es.

y = C1em1x +C2xe

m1x (10)

Page 22: Introduccion Matlab para Ingenieria de Control

Introducción V

3. Raices complejasSi m1 y m2 son complejos, podemos escribir m1 = α + iβ ym2 = α− iβ donde α y β son > 0 son reales, mediante laformulación de euler las expresiones complejas puedenreducirce de la siguiente manera.

y = C1e(α+iβ)+C2e

(α−iβ)

e iθ = cosθ + i ∗ senθ

Donde la solución general esta dada por.

y = eαx (C1cosβx+ c2senβx)

Donde la parte real corresponde α corresponde a la parte realy β corresponde a la parte compleja.

Page 23: Introduccion Matlab para Ingenieria de Control

Comandos Matlab

Sea la ecuación diferencial.

y ′′+6y +12y = 0

Matlab posee el comando dsolve.

I S=dsolve('D2y+6*Dy+12*y=0')

Encontrar la ecuación característica

I syms x

I S=solve('x^2+6*x+12=0','x')

Para evaluar condiciones iniciales

y ′′+8y +32y = 1, y(0) = 1,y ′(0) = 4

I S=dsolve('D2y+8*Dy+32*y=1','y(0)=1,Dy(0)=4')

Page 24: Introduccion Matlab para Ingenieria de Control

E.D Comúnes

Encontrar las soluciones a las ecuaciónes diferenciales y al sistemamasa resorte

y ′′+k2y = 0

y ′′−k2y = 0

Page 25: Introduccion Matlab para Ingenieria de Control

Transformada Laplace. I

Estas transformadas están de�nidas por medio de una integralimpropia y cambian una función en una variable de entrada en otrafunción en otra variable. La transformada de Laplace puede serusada para resolver Ecuaciones Diferenciales Lineales y Ecuaciones

Integrales.Aunque se pueden resolver algún tipo de ED con coe�cientesvariables, en general se aplica a problemas con coe�cientesconstantes.Un requisito adicional es el conocimiento de las condiciones inicialesa la misma ED. Su mayor ventaja sale a relucir cuando la funciónen la variable independiente que aparece en la ED es una funciónseccionada.Cuando se resuelven ED usando la técnica de la transformada, secambia una ecuación diferencial en un problema algebraico. Lametodología consiste en aplicar la transformada a la ED yposteriormente usar las propiedades de la transformada.

Page 26: Introduccion Matlab para Ingenieria de Control

Transformada Laplace. II

El problema de ahora consiste en encontrar una función en lavariable independiente tenga una cierta expresión comotransformada.

Page 27: Introduccion Matlab para Ingenieria de Control

Formulación

F (s) = L {f (t)}=∫

0e−st f (t)dt.

Ejemplo

L {1}(s) =∫

0e−st1dt =

e−st

−s|∞0=

1

s

I syms t s

I laplace(1,t,s)

Page 28: Introduccion Matlab para Ingenieria de Control

Evaluar L {t} función rampa

L {t}(s) =∫

0e−stt dt =

1

s2

General

L {tn}(s) =∫

0e−sttn dt =

n!

s(n+1)

I syms t;

I laplace(t);

Page 29: Introduccion Matlab para Ingenieria de Control

Ejemplo

Evaluar e−3t .

L{e−3t

}(s) =

∫∞

0e−3te−st dt

=∫

0e−(3+s)t dt

=−e−(3+s)t

s+3|∞0

=1

s+3

I syms a;

I laplace (exp(-a*t),t,s);

Page 30: Introduccion Matlab para Ingenieria de Control

Tablas

Figura: Tabla de las funciones principales de Laplace

Page 31: Introduccion Matlab para Ingenieria de Control

Transformada inversa de Laplace. I

De la misma manera que existe una anti tranformada otransformada inversa de Laplace denotada como L −1 la cualconduce a la solución como resultado de la ecuación diferencialsolucionada por coe�cientes constantes.

Page 32: Introduccion Matlab para Ingenieria de Control

Fracciones Parciales.

I El método de las fracciones parciales consiste en reducir uncociente de polinómios en fracciones más simples, quepermitan obtener de manera inmediata una integral o unatransformada de Laplace Inversa. El requisito más importantees que el grado del polinómio del denominador seaestrictamente mayor que el grado del numerador.

I De�nimos fracciones parciales a la función F(x) en la cualdicha función depende de un numerador y un denominador.Para que sea una fracción parcial el grado del denominadortiene que ser mayor al grado del numerador.

I Las �fracciones parciales� se utilizan para ayudar adescomponer expresiones racionales y obtener sumas deexpresiones más simples.

Page 33: Introduccion Matlab para Ingenieria de Control

Factores lineales distintos

I En este caso tenemos que los factores del denominador sontodos factores lineales distintos.

I Q(x) = (a1x+b1)(a2x+b2)(a3x+b3)...(anx+bn) a y b sonconstantes.

P(x)

Q(x)=

A1

a1x+b1+

A2

a2x+b2+ · · ·+ An

anx+bn

Encontrar A1,A2,An.

I Ejemplo

f (x) =s−1

s2+ s−6=

s−1

(s+3)(s−2)=

A

s+3+

B

s−2

Page 34: Introduccion Matlab para Ingenieria de Control

Para determinar los coe�cientes se tiene que las raíces son s=2 ys=-3.

1. s=2: Implica

2−1= A1(2−2)+A2(2+3) = 5A2 A2 =1

5

2. s=-3: Implica

−3−1= A1(−3−2)+A2(−3+3) =−5A1 A1 =4

5

Page 35: Introduccion Matlab para Ingenieria de Control

Factores lineales repetidos.

I Suponga que el primer factor lineal (a1x+b1) se repite r

veces; es decir, (a1x+b1)r aparece en la factorización de

Q(x). Por lo tanto en lugar del término simple.

P(x)

Q(x)=

A1

(a1x+b1)+

A2

(a1x+b1)+ · · ·+ An

(a1x+b1)n

I Ejemplo

2s+3

(s−2)2=

A

(s−2)+

B

(s−2)2

1. s=2: Implica

2(2)+3= A(s−2)+B

7= B

Page 36: Introduccion Matlab para Ingenieria de Control

I Para hallar el valor del coe�ciente de A se hace necesarioseparar los terminos por orden de coe�ciente, e igualar losterminos de coe�cientes iguales.

2s+3= As−2A+B

I Terminos con x

2= s

I Terminos sin x

3=−2A+B

3=−2A+7

A= 2

Page 37: Introduccion Matlab para Ingenieria de Control

Factores cuadráticos irreducibles.

I Si Q(x) tiene un factor de la forma ax2+bx+ c , dondeb2−4ac < 0 (esto nos dice que no se puede expresarax2+bx+ c como la multimplicacion de dos fatores linealespues la solución de la cuadratica es compleja) además de las

fracciones parciales de 1 y 2 entonces la expresión para P(x)Q(x)

tendrá un término de la forma.

Ax+B

ax2+bx+ c

I Ejemplo

7s2+5s+13

(s2+2)(s+1)=

As+B

s2+2+

C

s+1

I Igualando numeradores

7s2+5s+13= (As+B)(s+1)+C (s2+2)

Page 38: Introduccion Matlab para Ingenieria de Control

I Si s=-1

7(−1)2+5(−1)+13= C (3)

C =15

3= 5

I Para hallar los terminos B y C se debe hacer comparación.

7s2+5s+13= As2+As+Bs+B+Cs2+2C

I Terminos con s2

7= A+C

7= A+5

A= 2

I Terminos con s

5= A+B

5= 2+B

B = 3

Page 39: Introduccion Matlab para Ingenieria de Control

Factor cuadrático irreducible repetido.

I Si Q(x) tiene factor de la forma (ax2+bx+ c)r , dondeb2−4ac < 0 luego en lugar de la única fracción parcial

Ax+B

ax2+bx+c.

A1x+B1

ax2+bx+ c+

A1x+B2

(ax2+bx+ c)2+ · · ·+ Anx+Bn

(ax2+bx+ c)n

I Resolver

15s3+4s2+ x−2

(s+12)(s−5)(s2+ s+1)2

Page 40: Introduccion Matlab para Ingenieria de Control

Descomponer la siguiente expresión

2s3+5s2+3s+6

s3+6s2+11s+6

I num=[2 5 3 6]

I den=[1 6 11 6]I [r,p,k]=residue(num,den)

2s3+5s2+3s+6

s3+6s2+11s+6=−62+3

+−4s+2

+3

s+1+2

Page 41: Introduccion Matlab para Ingenieria de Control

Solución de E.D.O con transformada de Laplace.

Se debe tener en cuenta que la tranformada de una derivada estade�nida como.

L

[d”f (t)

dtn

]= snL [f (t)]+ s

n−1.f (0)+ ...+

dn−1f (0)

dtn

Resolver

y”+ y = t y(0) = 1,y ′(0) =−2

s2Y (s)− sy(0)− y ′(0)+Y (s) =1

s2

Y (s)∗ [s2+1] =1

s2+(s−2)