Toolbox de Matemática Simbólica

Embed Size (px)

DESCRIPTION

Aplicaciones con el Toolbox de Matemática Simbólica de Matlab

Citation preview

Aplicaciones con Matem tica Simb lica a oM.Sc. Ricardo Rodrguez Bustinza [email protected]

Pr logo o1. Introducci n o 1.1. Comenzando con el Help . . . . . . . . . . . . 1.2. Creando Variables Simb licas y Expresiones . . o 1.3. Conversiones Simb licas y Num ricas . . . . . o e 1.4. Construcci n de variables Reales y Complejas . o 1.5. Creando Matrices Simb licas . . . . . . . . . . o 1.6. Creando Funciones con Matem tica Simb lica a o 2. C lculo a 2.1. Diferenciaci n . o 2.2. Integraci n . . o 2.3. Lmites . . . . 2.4. Series de Taylor 3. Ejercicios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 3 4 5 6 6 7 7 7 9 9 11

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

1

PROLOGO

PROLOGO

Pr logo oMuchas veces nos hemos visto en la necesidad de trabajar problemas relacionados a la teora de control que integren por ejemplo a las variables en forma simb lica. Surge entonces la necesidad de interactuar el Toolbox de Control o con el Toolbox de Matem tica Simb lica. Un ejemplo pr ctico vemos cuando se requiere reemplazar el operador a o a s de Laplace por el operador de transformaci n de un aproximador digital como el bilineal para llevar a cabo o operaciones de control digital. Otras aplicaciones frecuentes est n relacionados con la linealizaci n de sistemas no a o lineales a los que posteriormente se les aplicara t cnicas de control para sistemas lineales invariantes en el tiempo. e An lisis de los circuitos el ctricos y sus fen menos transitorios, etc. Podemos seguir enumerando las aplicaciones a e o m s frecuentes, y veremos que en realidad es muy util manipular convenientemente las herramientas de matem tica a a simb lica del programa MATLAB. Finalmente, espero este articulo le sirva de ayuda amigo lector especialmente a o los estudiantes de pregrado que es a los que va dirigido el documento.

El Autor

M.Sc. Ricardo Rodrguez Bustinza

2

1 INTRODUCCION

1. Introducci n oEl Toolbox de Matem tica Simb lica (TMS) incorpora computaci n simb lica en el ambiente num rico a o o o e de MATLAB, siendo adem s vers til y de f cil adaptaci n. Complementa las soluciones de los entornos a a a o num rico y gr co mediante c mputo num rico, entre ellos tenemos: e a o e 1. C lculo : Derivada, Integral, lmites, sumatorias y series de Taylor a 2. Algebra lineal : Inversas, determinantes, valores propios, descomposici n de valores singulares y o formas can nicas de matrices simb licas o o 3. Simplicaci n : M todos de simplicaci n de expresiones algebraicas o e o 4. Soluci n de ecuaciones : Soluciones simb licas y num ricas de algebra y ecuaciones de diferencia o o e 5. Precisi n aritm tica : Evaluaci n num rica de expresiones matem ticas o e o e a 6. Transformadas : Transformadas de Laplace, Fourier, Z y sus inversas 7. Funciones especiales : Funciones especiales cl sicas aplicadas a matem ticas. a a

1.1. Comenzando con el HelpPara llamar alguna funci n para uso del TMS digitamos: o help sym/function Donde, sym es la versi n simb lica y function es el nombre de la funci n. Por ejemplo si queremos o o o informaci n de la funci n de derivada (diff) digitamos: o o help sym/diff

1.2. Creando Variables Simb licas y Expresiones oEl comando sym indica la construcci n de variables y expresiones simb licas. Por ejemplo. o o x=sym(x) b=sym(beta) Crea las variables simb licas x y beta e imprime asignando a las variables x y b respectivamente. o Ejemplo: Supongamos que tenemos que usar una variable simb lica para representar el resultado de una o area. Ingresamos el c digo. o area=sym((4+sqrt(3))/5) Como ha sido almacenado la variable area, podemos utilizarla para realizar operaciones matem ticas, a por ejemplo podemos llamarla as. f=area+1 f= 3^(1/2)/5 + 9/5 M.Sc. Ricardo Rodrguez Bustinza 3

1.3 Conversiones Simb licas y Num ricas o e

1 INTRODUCCION

Ejemplo: Sea la funci n cuadr tica. o a f = ax2 + bx + c Asignamos a la expresi n cuadr tica a la variable f . En este caso el TMS no crea las variables correspono a dientes en t rminos de la expresi n a, b, c y x. Necesitamos crear las variables explcitamente. e o a=sym(a) b=sym(b) c=sym(c) x=sym(x) O simplemente se recomienda usar esta forma syms a b c x. Esta ultima forma es la que usaremos en adelante. Resolvemos el problema ingresando el siguiente c digo que se lista debajo para a = 1, b = 2 y o c = 1. syms a b c x f=a*x^2+b*x+c; solve(f) % ans = % -(b + (b^2 - 4*a*c)^(1/2))/(2*a) % -(b - (b^2 - 4*a*c)^(1/2))/(2*a) % calcula races s=subs(f,{a,b,c},[1 2 1]); raices=solve(s); % raices = % -1 % -1

1.3. Conversiones Simb licas y Num ricas o eSe utiliza una t cnica de conversi n de un n mero escalar o matriz a la forma simb lica. Por ejemplo sea e o u o la variable S, donde A es una expresi n a evaluar y ag es el tipo de formato. o S=sym(A,flag) La t cnica para convertir n meros es especicado por el segundo argumento flag que puede ser. e u - Racional r n meros del punto otantes obtenidos por la evaluaci n de las expresiones de la forma: p/q, p /q, u o q para los enteros clasicados seg n el tama o, p y q son convertidos a la forma simb lica. p, y 10 u n o - Estimaci n de error e o la forma r (tomada por defecto en MATLAB) se reemplaza por un t rmino que involucra a la e variable eps qu estima la diferencia entre la expresi n racional te rica y el actual punto otante. e o o - Posici n decimal d o el n mero toma una exactitud de 32 dgitos signicativos. u M.Sc. Ricardo Rodrguez Bustinza 4

1.4 Construcci n de variables Reales y Complejas o

1 INTRODUCCION

Ejemplo: Asignemos la variable T=sqrt(2) T=sqrt(2) % T = % 1.4142 Luego digitamos sym(T,f) % ans % =(2^0+1865452045155277*2^-52) sym(T,r) % ans % =sqrt(2) sym(T,e) % ans % =sqrt(2)+64*eps/147 sym(T,d) % ans % =1.4142135623730951454746218587388

1.4. Construcci n de variables Reales y Complejas oEl comando sym especica las propiedades matem ticas de las variables simb licas usando la opci n a o o real, mediante el c digo. o syms x y real z=x+j*y; real(z) % ans % x imag(z) % ans % y Creando las variables simb licas x e y que tienen la propiedad matem tica de adicionar variables reales. o a Especcamente esto signica que la expresi n. o f = x2 + y2 Es estrictamente no negativa. Entonces z es una variable compleja y puede ser manipulada de acuerdo con los comandos. conj(z) % ans= % x-i*y expand(z*conj(z)) % ans= % x^2+y^2

M.Sc. Ricardo Rodrguez Bustinza

5

1.5 Creando Matrices Simb licas o

1 INTRODUCCION

1.5. Creando Matrices Simb licas oUna matriz circulante tiene la propiedad que cada la se obtiene de la anterior permutando las entradas cclicamente hacia adelante. Nosotros creamos la matriz circulante A con elementos a, b y c que usa el c digo. o syms a b c A=[a b c;b c a;c a b] sum(A(1,:)) % ans % a+b+c sum(A(1,:))==sum(A(:,3)) % ans % 1 syms beta delta A(2,3)=beta; A=subs(A,b,delta) % A = % [ a, delta, c] % [ delta, c, beta] % [ c, a, delta]

1.6. Creando Funciones con Matem tica Simb lica a oExisten dos formas de crear funciones: usando expresiones simb licas y creando archivo M. o Usando expresiones simb licas o syms x y z p=sqrt(x^2+y^2+z^2) q=cos(x*y)/(x) genera las expresiones simb licas p y q. Podemos usar diff, int, subs y otras funciones del TMS o de MATLAB para manipular las tales expresiones. Creando un archivo M Los archivos M permiten un uso m s general de funciones. Por ejemplo, suponga que se quiere a crear la funci n evalsin para evaluar sin(x)/x. Para hacer esto, creamos un archivo M en el o directorio sym. function z=evalsin(x) if x==sym(0) z=1; else z=sin(x)/x; end % llamando a evalsin a=evalsin(0) % a = % 1

M.Sc. Ricardo Rodrguez Bustinza

6

2 CALCULO

2. C lculo aEl TMS provee funciones de operaciones b sicas para el c lculo como son: diferenciaci n, Integraci n, a a o o lmites, expansi n de la serie de Taylor. o

2.1. Diferenciaci n oPresenta la siguiente estructura. d n f (x) = diff( f , x, n) dt n Donde n representa el orden de la derivada. Por ejemplo, creamos la expresi n simb lica de f=sin(ax) o o para hallar su primera y segunda derivada. syms a x f=sin(a*x) df=diff(f,x,1) % df= % cos(a*x)*a df=diff(f,x,2) % df = % -sin(a*x)*a^2 Tambi n, df=diff(f)=diff(f,x), que determina la primera derivada con respecto a la variable simb lie o ca (en este caso x). La siguiente tabla muestra la diferenciaci n simb lica con MATLAB. o o Funciones Matem ticas a f = xn f g = nxn1 g = acos(at + b) = acos(at + b) Comando en MATLAB f=x^n diff(f) o diff(f,x) g=a*cos(a*t+b) diff(g) o diff(g,t)

2.2. Integraci n oSi f es la expresi n simb lica, entonces. o o b

f (x)dx = int( f , v, a, b)a

Los esfuerzos por encontrar otra expresi n simb lica, F, para que el diff(F)=int(f) retorna la integral o o o antiderivada de f (proporciona la existencia en la forma cerrada). Similar a la derivaci n. Se usa el o objeto simb lico a v como la variable de integraci n. o o Sea f una funci n, a, b los lmites de integraci n. Escribir la soluci n simb lica int(f,a,b) de las o o o o siguientes funciones: f1 (x) = x7 [0, 1] y f2 (x) = log(x) x [0, 1]

M.Sc. Ricardo Rodrguez Bustinza

7

2.2 Integraci n o

2 CALCULO

syms x f1=x^7; f2=log(x)*sqrt(x); intf1=int(f1,0,1) % 1/8 intf2=int(f2,0,1) % -4/9 La siguiente tabla muestra la integraci n simb lica con MATLAB. o o Funciones Matem ticas a n x dx /20

Comando en MATLAB int(x^n) o int(x^n,x) int(sin(2*x),x,0,pi/2) g=cos(a*t+b) int(g) o int(g,t)

sin(2x)dx = 1

g = cos(at + b)

g(t)

Integraci n con Constantes Reales oUna de las subttulos involucrado en la integraci n simb lica es el valor de varios par metros. Por ejemplo, o o a es evidente que la expresi n o f (x) = e(kx)2

Es positiva, la curva campana tiende a 0 y x tiende a para algunos n meros reales de k. Un ejemplo u o de esta curva es cuando k = 1/ 2. Ingresamos el c digo en MATLAB para plotear la curva en forma de campana que se muestra en la Figura 1. syms x k=sym(1/sqrt(2)); f=exp(-(k*x)^2); ezplot(f)exp(1/2 x2)

1

0.8

0.6

0.4

0.2

0

3

2

1

0 x

1

2

3

Figura 1: Curva acampanada.

M.Sc. Ricardo Rodrguez Bustinza

8

2.3 Lmites

2 CALCULO

2.3. Lmites La idea fundamental en c lculo es hacer que los c lculos en las funciones como una variable se acerque a a a un cierto valor. Llamando a la denici n de la derivada que es dada por un lmite. o f (x + h) f (x) = limit( f , h, 0) h0 h Con tal de que el lmite existe. El TMS computa los lmites de las funciones de manera directa. Ingresamos en c digo. o f (x) = lm syms h x lim=limit((cos(x+h)-cos(x))/h,h,0) % -sin(x) Escribir el c digo MATLAB para los siguientes lmites: lmx0 1 , lmx0 1 , y lmx0+ 1 . o x x x lim1=limit(1/x,x,0) % NaN lim2=limit(1/x,x,0,left) % -inf lim3=limit(1/x,x,0,right)% +inf

Funciones Matem ticas ax0 xa

Comando en MATLAB limit(f) limit(f,x,a) limit(f,x,a,left) limit(f,x,a,right)

lm f (x) lm f (x) lm f (x) lm f (x)

xa xa+

2.4. Series de TaylorLa serie de Taylor es dada por. f (x) = f (a) + f (a)(x a) + f (a)(x a)2 f (n1) (a)(x a)n1 + ... + + Rn 2! (n 1)!

Donde Rn es el resto despu s de los primeros t rminos, se pueden hallar por cualquiera de las siguientes e e f rmulas: o f (n) ( )(x a)n n! f (n) ( )(x )n1 (x a) resto de Cauchy Rn = (n 1)!

resto de Lagrange Rn =

El valor de est comprendido entre a y x, puede ser diferente en las dos f rmulas. Este resultado v lido a o a siempre que f (x) tenga derivadas continuas de orden n como mnimo. Sea:n

lm Rn = 0 9

M.Sc. Ricardo Rodrguez Bustinza

2.4 Series de Taylor

2 CALCULO

Se obtiene una serie innita que es llamada Serie de Taylor de f (x) en torno a x = a. En el caso en que a = 0 se suele llamar Serie de McLaurin. La declaraci n de la serie de Taylor con matem tica simb lica o a o es dada por la funci n. o f (x) = taylor( f , n) Donde f es el polinomio (n 1) orden de la aproximaci n de McLaurin. Si n = a signica una aproxio maci n respecto del punto a. o syms x T=taylor(exp(x),3); % 1+x+1/2*x^2 T cnicamente, T es la serie de McLurin, con punto base a = 0. e syms x g=exp(x*sin(x)) H=taylor(g,2,2); % exp(2*sin(2))+exp(2*sin(2))*(2*cos(2)+sin(2))*(x-2) Genera primero 2 t rminos diferentes de cero en la serie de Taylor alrededor de x = 2. Ahora plotearemos e estas funciones en una misma ventana para ver qu bien aproxima la serie de Taylor respecto de la funci n e o real g(x). (usar taylor(g,12,2)) syms x g=exp(x*sin(x)); T=taylor(g,12,2); % 12 trminos alrededor de x=2 e t=1:0.05:3; yd=double(subs(g,x,t)); ezplot(T,[1 3]), hold, plot(t,yd,m:) title(Aproximacion Taylor vs Funcin Actual) o ylabel(g(x),T) legend(Funcin Real,Aprox Taylor) o En la Figura 2 muestra buena aproximaci n de la funci n g(x) realizada por la expansi n de la serie de o o o Taylor.Aproximacion Taylor vs Funcion Actual Funcion Real Aprox Taylor 6

5

g(x),T

4

3

2

1 1 1.2 1.4 1.6 1.8 2 x 2.2 2.4 2.6 2.8 3

Figura 2: Aproximaci n de g(x) con Series de Taylor. o

M.Sc. Ricardo Rodrguez Bustinza

10

3 EJERCICIOS

3. EjerciciosEjemplo # 1Hallar el voltaje de un inductor, L = 0.1H, cuando la corriente en el mismo es: i = 20te2t A, t > 0 i(0) = 0

Soluci n oEl voltaje para t > 0 es. v = L di dt

d (20te2t ) dt = 2(2te2t + e2t ) V = (0.1) = 2e2t (1 2t) V syms t i=20*t*exp(-2*t); L=0.1; v=L*diff(i,t); % v = 2*exp(-2*t)-4*t*exp(-2*t) i=20*t*exp(-2*t); v=L*diff(i,t); a=factor(v) % a = -2*exp(-2*t)*(-1+2*t) Amplitud=subs(a,{t},{0}); % Amplitud = 2 subplot(211) ezplot(v,[0 4]), grid subplot(212) ezplot(i,[0 4]), grid2 exp(2 t)4 t exp(2 t) 4 3 2 1 0 1

0

0.5

1

1.5

2 t 20 t exp(2 t)

2.5

3

3.5

4

4 3 2 1 0 1

0

0.5

1

1.5

2 t

2.5

3

3.5

4

Figura 3: Curvas de tensi n y corriente por la inductancia. o El voltaje es igual a 2V cuando t = 0, y la onda de corriente alcanza un m ximo y que el voltaje es cero a en t =0.5 segundos (ver Figura 3). M.Sc. Ricardo Rodrguez Bustinza 11

3 EJERCICIOS

Ejemplo # 2Hallar la corriente i en el circuito de la Figura 4 para t > 0 cuando v f = 10e2t u(t)V. Suponga que el circuito est estable en t = 0 . a

Figura 4: Circuito RL.

Soluci n oPuesto que la funci n forzante de la tensi n es exponencial, cabe esperar que la respuesta forzada para la o o corriente i f o , sea tambi n exponencial de la forma: e i f o = Be2t para t > 0. Planteando la LVK alrededor del lazo, se tiene L o di + Ri = v f dt

di + 4i = 10e2t dt

para t > 0. Sustituyendo i f o = Be2t , se tiene 2Be2t + 4Be2t = 10e2t donde B = 5 y i f o = 5e2t La respuesta natural puede obtenerse de la ecuaci n: o L usando el operador s = d/dt, se tiene: (Ls + R)i = 0 de forma que s= y en consecuencia in = AeRt/L La respuesta completa es: M.Sc. Ricardo Rodrguez Bustinza 12 R L di + Ri = 0 dt

3 EJERCICIOS

i = in + i f o = Ae4t + 5e2t La condici n inicial i(0) = i(0 ) se halla a partir de la fuente de 10 voltios conectada antes de t = 0. o Recordar que vi = 0 para t < 0. Entonces i(0 ) = 10/5 = 2Amp. Empleando la condici n inicial en la o ecuaci n anterior se tiene. o 2 = A+5 luego i = (3e4t + 5e2t )Amp t > 0 Primera Soluci n con TMS o H=dsolve(Dx+4*x=10*exp(-2*t),x(0)=2); pretty(H); % 5 3 % -------- - -------% exp(2 t) exp(4 t) ezplot(H,[0 3]) A = 3

5/exp(2 t) 3/exp(4 t) 2 1.5 1 0.5 0 0 1 t 2 3

Figura 5: Curva de corriente de caso 1.

Segunda Soluci n con TMS y Toolbox de Control o syms x t s L h=sym(x(t)); dh=sym(diff(x(t),t)); eq=dh+4*h-10*exp(-2*t); % Transformada de Laplace La=laplace(eq,t,s); La=subs(La,{laplace(x(t), t, s),x(0)},[L 2]); Lb=solve(La,L); Lb=collect(Lb); Lb=factor(Lb); pretty(Lb); M.Sc. Ricardo Rodrguez Bustinza 13

3 EJERCICIOS

% 2 (s + 7) % --------------% (s + 4) (s + 2) Lb=expand(Lb); % Transformada Inversa de Laplace lb=ilaplace(Lb,s,t); pretty(lb); % 5 3 % -------- - -------% exp(2 t) exp(4 t) % Ploteo Simblico o ezplot(lb,[0 3]); % Conversion TMS a Toolbox de Control [N,D]=numden(Lb); N=sym2poly(N); D=sym2poly(D); % FT con Toolbox de Control G=tf(N,D); hold h=0.001; t=0:h:3; u=[1/h zeros(1,length(t)-1)]; ci=2; y=lsim(G,u,t,ci); plot(t,y,-) legend(Toolbox Simbolico,Toolbox Control)

5/exp(2 t) 3/exp(4 t) Toolbox Simbolico Toolbox Control 2

1.5

1

0.5

0

0

0.5

1

1.5 t

2

2.5

3

Figura 6: Curva de corriente de caso 2.

M.Sc. Ricardo Rodrguez Bustinza

14

3 EJERCICIOS

Ejemplo # 3Considere el p ndulo simple que se muestra en a Figura 7, cuya ecuaci n din mica es dado por: e o a T = ml 2 + mglsin

Figura 7: P ndulo simple. e

Se presentan la linealizaci n de se ales peque as que es usado tpicamente en la aproximaci n lineal de o n n o sistemas no lineales. Desde la expansi n de la serie de Taylor obtenemos: o f (T, ) = f (0, 0) +

f

0,0

+

f T

0,0

T + ...t rminos de orden alto e

Con nes pr cticos, hacemos g/l = 1 y 1/ml 2 = 1, entonces la ecuaci n din mica queda representada de a o a la siguiente forma: = T sin Donde es funci n de T y , siendo adem s el punto de equilibrio dado por f (0, 0) = 0. Entonces o a reemplazamos en la expansi n de Taylor. o = 0 + (cos ) Para el p ndulo invertido tenemos. e = 0 + (cos )0, 0,0

+ T = + T

+T = +T

Estos modelos de sistema linealizados deben ser probados en el sistema original para vericar la aceptabilidad de la aproximaci n. Vamos a representar nuestro sistema en el espacio estado. Para ello escogemos o las variables de estado, x1 = y x2 = . De ello se deduce. f1 (x1 , x2 , u) = x1 = x2 g 1 f2 (x1 , x2 , u) = x2 = sin x1 + 2 T l ml La representaci n del sistema linealizado en el espacio estado es. o ][ ] [ ] [ ] [ x1 x1 f1 / x1 f1 / x2 f1 / u + u = f2 / x1 f2 / x2 x2 f2 / u x2

M.Sc. Ricardo Rodrguez Bustinza

15

3 EJERCICIOS

Soluci n oLinealizando el sistema p ndulo invertido usando matem tica simb lica de MATLAB. e a o % Linealizacin Pndulo Simple o e syms x1 x2 T g l m u % Ecuacin de estado del pndulo simple o e f1=x2; f2=-(g/l)*sin(x1)+(1/m*l^2)*T; f=[f1;f2]; % Vector de estados y se~al de entrada n V=[x1 x2]; U=[T]; % Condiciones iniciales en el punto de operacin o x1=0; x2=0; % x2=pi; u=0; % Construimos el Jacobiano A=subs(jacobian(f,V)); B=subs(jacobian(f,U)); %A = %[ 0, 1] %[ -g/l, 0] % B = % [ 0] % [ 1/m*l^2] % Parmetros de sistema a g=9.8; l=1; m=1; A=subs(jacobian(f,V)); B=subs(jacobian(f,U)); Creamos las funciones para el p ndulo simple no linealizado y lineal. Vamos a comprobar en qu medida e e el punto de operaci n compromete la estabilidad del sistema para el caso del sistema linealizado. o function dot=pend_nolinfun(t,x) g=9.8; l=1; m=1; T=0.5; dot(1)=x(2); dot(2)=-(g/l)*sin(x(1))+(1/m*l^2)*T; dot=[dot(1);dot(2)]; Creando la funci n no lineal o function dot=pend_linfun(t,x) g=9.8; l=1; m=1; T=0.5; dot(1)=x(2); dot(2)=-(g/l)*x(1)+(1/m*l^2)*T; dot=[dot(1);dot(2)]; M.Sc. Ricardo Rodrguez Bustinza 16

3 EJERCICIOS

El siguiente programa en MATLAB comprueba que el sistema no lineal, se vuelve m s inestable a medida a que se incrementa el torque T . Es importante mantener el sistema para peque as variaciones en la posici n n o del angulo alrededor de cero cuando se le tenga que controlar al sistema del p ndulo simple. e % Sistema No Lineal % Ploteo de la funcin no lineal debido a un T=0.5 o tn0=0; tnf=5; xn0=[0;0]; [tn,xn]=ode23(pend_nolinfun,[tn0 tnf],xn0); figure plot(tn,xn(:,1),k,tn,xn(:,2),m) grid legend(posicin,velocidad) o % Sistema Linealizado % Ploteo de la funcin lineal debido a un T=0.5 o tl0=0; tlf=5; xl0=[0;0]; [tl,xl]=ode23(pend_linfun,[tl0 tlf],xl0); figure plot(tl,xl(:,1),k,tl,xl(:,2),m) grid legend(posicin,velocidad) o % Comparando posicin no lineal y posicin lineal o o figure plot(tn,xn(:,1),k) hold plot(tl,xl(:,1),k-.), grid title(Posicin para el pndulo si T=0.5) o e legend(Pos. No Lineal,Pos. Lineal) Las Figuras 8 y 9 muestran como el sistema no lineal se hace m s inestable a medida que se aumenta el a torque T .Posicion para el pendulo si T=0.5 0.12 Pos. No Lineal Pos. Lineal

0.1

0.08

0.06

0.04

0.02

0

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Figura 8: Curva de posici n del p ndulo para un torque T = 0.5Nm. o e

M.Sc. Ricardo Rodrguez Bustinza

17

3 EJERCICIOS

Posicion para el pendulo si T=2 0.45 Pos. No Lineal Pos. Lineal 0.4

0.35

0.3

0.25

0.2

0.15

0.1

0.05

0

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

Figura 9: Curva de posici n del p ndulo para un torque T = 2Nm. o e

Ejemplo # 4Se requiere llevar a cabo un redise o de un sistema de control integral con una red de adelanto para obtener n una respuesta del circuito RC (R = 2K y C = 46 F) para las consideraciones de dise o con sobrepaso n Mp 30 % con un tiempo pico t p 0.5 seg. La ecuaci n de la red de compensaci n de adelanto de fase o o con acci n integral presenta el siguiente modelo matem tico. o a Gc (s) = Kc s+z s(s + p)

Donde Kc es la ganancia de la red de compensaci n. A partir de las especicaciones de desempe o deo n seadas se determin la ubicaci n de los polos dominantes deseados las que son detalladas en el c digo o o o MATLAB. Gp = tf(1,[tau 1]); % Calculo del periodo de muestreo %ltiview(step,Gp) T = 0.202/10; Mp = 0.3; tp = 0.5; wd = pi/tp; e = 1/((sqrt((pi/(-log(0.3)))^2 + 1))); wn = wd/(sqrt(1 - e^2)); sigma = e*wn; zero = -1/tau; polo = zero/2; pd = -sigma +1j*wd; % Calculo de la ganancia n2 = [1 -zero]; d2 = conv([tau 1 0], [1 -polo]); k1 = polyval(n2, pd); k2 = polyval(d2, pd); K = abs(k2/k1); % TMS syms s R =(1/(tau*s +1))*((s-zero)/(s-polo))*(1/s); M.Sc. Ricardo Rodrguez Bustinza 18

3 EJERCICIOS

R=simplify(R); pretty(R) K = 1/abs(subs(R,s,pd)); Gc = tf(K*[1 -zero],[1 -polo 0]); Gc=zpk(Gc); F = Gp*Gc/(1 + Gp*Gc); % Estrategia de control digital (Redise~o) n [N,D] = tfdata(Gc,v); N = poly2sym(N,s); D = poly2sym(D,s); syms z Gd = N/D; Gd = subs(Gd,{s},(2*(z-1))/(T*(z+1))); Gd = simplify(Gd); Gd = vpa(Gd,4); pretty(Gd); [ND DD] = numden(Gd); ND = sym2poly(ND); DD = sym2poly(DD); GD = tf(ND, DD,T); sim(adelanto_rc_mdl); El controlador digital se basa en la t cnica de control por redise o por aproximaci n bilineal que viene e n o representado en la siguiente funci n de transferencia: o D(z) = 0.045857(z + 1)(z 0.8022) (z 1)(z 0.8959)

En la Figura 10 se muestra la respuesta de sistema de control debido a una entrada escal n unitario. Esta o respuesta es obtenida desde el programa en Simulink que queda para el lector completar las simulaciones, entre ellas la se al de control. n1.4

1.2

1

0.8 y(t) 0.6 0.4 0.2

y(t) y(tk) u(t) 0 0.5 1 1.5 t(seg) 2 2.5 3

0

Figura 10: Respuesta de sistema de control debido a una entrada escal n unitario. o

M.Sc. Ricardo Rodrguez Bustinza

19

3 EJERCICIOS

Tablas de Comandos Usados en Matem tica Simb lica a oC lculo a diff int jacobian limit symsum taylor Derivada Integral Matriz jacobiana Expresi n de lmite o Sumatoria de serie Expansi n de serie de Taylor o

Algebra Lineal colspace det diag eig expm inv jordan null poly rank tril triu Simplicaci n o collect expand factor horner numden simple simplify subexpr Colecciona t rminos comunes e Expande polinomios y funciones elementales Factor Representaci n de polinomio aninado o Numerador y denominador Busca la forma corta Simplicaci n o Rescribe los t rminos o subexpresiones e Base espacio de columna Determinante Crea o extrae diagonales valores y vectores propios Matriz exponencial Matriz inversa Forma can nica de Jordan o Base para el espacio nulo Polinomio caracterstico Rango de matriz Tri ngulo inferior a Tri ngulo superior a

Soluci n de Ecuaciones o compose dsolve nverse solve Precisi n Aritm tica o e digits vpa Conjunto de variables de precisi n o Variable de precisi n aritm tica o e 20 Composici n de funciones o Soluci n de ecuaciones diferenciales o Inversa de una funci n o Soluci n de una ecuaci n algebraica o o

M.Sc. Ricardo Rodrguez Bustinza

3 EJERCICIOS

Operaciones Aritm ticas e + .* / ./ \ .\ . . Aplicaciones Gr cas a ezplot funtool rsums Operaciones B sicas a ccode conj ndsys imag latex pretty real Expresi n c digo C para expresiones simb licas o o o Complejo conjugado Determina variables simb licas o Parte imaginaria de un n mero complejo u A Representaci n simb lica en LTEX o o Imprime expresiones simb licas o N mero con parte o imaginaria u Funci n de ploteo o Funci n calculadora o Suma de Riemann Adici n o Sustracci n o Multiplicaci n o Arreglo de multiplicaci n o Divisi n por la derecha o Arreglo de divisi n por la derecha o Divisi n por la izquierda o Arreglo de divisi n por la izquierda o Operador potencia Arreglo de operador potencia Transpuesta conjugada compleja Arreglo de transpuesta

Transformadas e Inversas fourier ifourier ilaplace iztrans laplace ztrans Transformada de Fourier Transformada inversa de Fourier Transformada inversa de Laplace Transformada inversa Z Transformada de Laplace Transformada Z

M.Sc. Ricardo Rodrguez Bustinza

21