lab control

Upload: jhon-alexander-nino

Post on 09-Jan-2016

227 views

Category:

Documents


0 download

DESCRIPTION

Laboratorio control digital

TRANSCRIPT

Universidad piloto de Colombia3er laboratorio control digitalPlanta masa-resorte-amortiguadorDiscretizacion de un PIDControlador con software LabviewFidel David Tejeiro Rojas

IntroduccinEste trabajo se realizara con el fin de hacer la comunicacin de una planta en fsico con un sistema de embebido y que sea mostrado con un controlador en labview. Por consiguiente se realizaran clculos del modelo matemtico , del PID en discreto y respectivos clculos para la planta en fsico.Introduccin al problemaEl problema para realizar este laboratorio para la planta sobre amortiguado en fsico , ser sacar los respectivos clculos para la planta,la comunicacin del sistema embebido con la planta y el software de labview mostrando su respectiva grafica del PID.Procedimiento

Primero que todo se realiza el Modelo matemtico del sistema masa-resorte-amortiguador.El modelo matemtico se realiza por medio del diagrama de cuerpo libre.Modelo del sistema:

Con una condicin inicial en ceroSe obtiene la funcin de transferencia con la transformada de Laplace

Para la planta en la funcin de transferencia inicial se supone una masa m=0.25 kg, un amortiguador c=1.25 Ns/m y un resorte k= 1 N/m Condicin inicial de cero.f (t)=0

Se factoriza y se obtiene

Discretizando la planta de x(s), se obtiene la Grafica 1 aplicando un step

Grafica 1

Por consiguiente el siguiente paso a realizar es el controlador del PID con los tres mtodos mencionados.Para los clculos del PID se obtiene:

La ecuacin general de b(s)

Por medio de despejes en la ecuacin de B(s) y la ecuacin de f(s), se logra obtener las ecuaciones de kp, ki, kd, en donde luego van hacer utilizadas en un programa de Matlab para que los valores sean muchos ms exactos.Las ecuaciones de kp, ki, kd son:

Para poder hallar correctamente el zita de nuestra ecuacin obtenemos:

Con estas ecuaciones obtenemos los valores de kp, ki, kd para seguir con el anlisis.

El siguiente paso es hallar las constantes para discretizar el PID, con las ecuaciones de Euler adelanto, Euler atraso y Tustin

Sabemos que

Sabiendo que ts es igual al tiempo de estabilizacin de la planta sin aplicar el PID

Euler atraso:

Euler Adelanto:

Tustin:

Despus de obtener estas ecuaciones son transcritas a Matlab para que la discretizacion se pueda realizar por medio de bloques en Simulink.

Discretizando la planta con el retenedor de orden cero, se aplica el mtodo de fracciones parciales

Por medio de tablas de la transformada z se obtiene:

Se toma primero que toda la planta inicial o la funcin de transferencia:

Calculando

La funcin queda de la manera

Aplicando la transformada Z por tablas

Reemplazando t en 0.05

Ya obteniendo las ecuaciones del controlador se coloca en Matlab y hallamos el tiempo de estabilizacin de la planta, y con este tiempo se coloca un tiempo estimado y menor para que se estabilice en menor tiempo

Grafica 2

En la grfica 2 se puede observar la planta con su tiempo de estabilizacin que es 4.2 segundos.

Es decir que con los valores que se dan inicialmente de la masa del amortiguador y el resorte se obtiene una oscilacin en donde llega a su punto de estabilizacin den 4.6s

El siguiente paso que se realiza es el controlador con el PID tomando un tiempo de 3s, es decir que se quiere que la planta se estabilice en menor tiempo.

Para eso se coloca en diagrama de bloques y queda un grafica de este estilo.

Grafica 3

Cdigo discretizacion planta utilizando mtodo Tustin

clc;clear all;close all;m=0.25;k=1;b=1.25;num=[1/m]den=[1 b/m k/m] sys=tf(num,den);sysd=c2d(sys,0.31,'tustin')step(sys);hold onstep(sysd);hold off

Cdigo utilizado discretizacion PID

m=0.25;c=1.25;k=1; num=[1/m];den=[1 c/m k/m];sys=tf(num,den)step(sys) ps=0.2;te=3; zita=(log(100/ps))/(sqrt((pi*pi)+((log(100/ps))*(log(100/ps))))) omega=4.6/te;w=((-omega*pi)/(log(ps)));wn=sqrt( (omega^2)+(w^2) );zita=omega/wn; kp=((wn^2+20*zita^2*wn^2)-15)/(1/0.3)ki=(10*zita*wn^3)/((1/0.3)*kp)kd=(12*zita*wn-8)/(kp*(1/0.3)) t=te/60;td=kdti=1/ki % adelantoq0d=kp*(1+(td/t))q1d=kp*(-1-(2*(td/t))+(t/ti))q2d=kp*(td/t)% atrasq0a=kp*(1+(t/ti)+(td/t))q1a=kp*(-1-(2*(td/t)))q2a=kp*(td/t)%tustinq0=kp*(1+(t/(2*ti))+(td/t))q1=kp*((t/(2*ti))-1-((2*td)/t))q2=kp*(td/tm) pdz=c2d(sys,t,'zoh')planta=c2d(sys,t,'tustin')

solucion de la ecuacion

4-------------s^2 + 5 s + 4 zita = 0.8924kp = 12.9995ki = 4.0019kd = 0.2400td =0.2400ti =0.2499q0d =75.3995q1d =-135.1983q2d =62.4000q0a = 78.0006q1a = -137.7995q2a =62.4000q0 =76.7001q1 = -136.4989q2 = 12.4800 Transfer function:0.004604 z + 0.004236---------------------z^2 - 1.77 z + 0.7788

Sampling time: 0.05

Diagrama de bloques total utilizado en Simulink

Diagrama de bloques individual(blanco)

En este diagrama vemos solo en controlador del PID con sus respectivas ganancias

(amarillo)

En este modelo aplicamos la funcin discreta con los resultados de qo, q1, q2 obtenido en el cdigo de matlab

(azul)

En los bloques azules se aplica con los resultados de q0a. q0b, q0c (rojo)

En los rojos se obtienen los resultados de Euler adelanto (amarillo 1)

En los amarillos 1 se utiliza los resultados de Tustin y tambin se coloca los resultados de la funcin de transferencia discretizada con Z, obtenida en MatlabFuncin de transferencia (Matlab):0.004604 z + 0.004236---------------------z^2 - 1.77 z + 0.7788

Despus de sacar la funcin de transferencia sacamos el controlador en PID en discreto con la siguiente ecuacin de:

El paso siguiente es hallar las constantes de kp, ki , kd y pepito.Pepito es una ecuacin para poder hallar en la ecuacin con el retenedor de orden cero.

El siguiente paso es hacer la multiplicacin de las tres ecuaciones para que den como resultado 4 ecuaciones y 4 incgnitas

Se multiplican las ecuaciones de la funcin de transferencia en Z, el PIDz y la ecuacin de pepito.

La multiplicacin de PIDz*pepito*Pz

Solucionando podemos hallar las constantes del PID en discreto que son kp,ki,kd y pepito.El siguiente paso a seguir es hacer el procedimiento y los clculos tericos de la planta.Haciendo la analoga de amplificadores operacionales como el de la planta utilizada de la masa resorte amortiguador.Primero que todo se hizo el plano de los amplificadores en el software de Proteus, el segundo paso es hacer los clculos de las resistencias segn los amplificadores utilizados. El montaje queda como se ve en la imagen 8

Imagen 8Utilizando amplificadores de referencia LM324 y con resistencias de valores 15k,10mf,6.8k.Segn Proteus las seales del circuito realizado como se muestra en la imagen 9, clara mente se pueden ver las dos seales, una seal es de la planta y la otra seal es el escaln aplicado al circuito.

Imagen 9Ms sin embargo se puede ver que en la seal de la imagen 9, que la planta de color azul y el escaln de color amarillo es estable.

Imagen 10En la imagen numero 10 hacemos el respectivo montaje de la planta donde ya despus de haberla revisado en proteus.El siguiente paso a realizar fue la embebida del sistema a la planta, primero se empez a programar con la tarjeta Texas para hacer la conexin , pero por razones de programacin se decidi ltimamente utilizar la comunicacin con el pic16f877a donde se programo con la ayuda de c++ por medio de bluetooth para enlazar la comunicacin con labview .

Cdigo para la comunicacin del PIC

float sa[20];float e[20];int ciclo;int i;void main( void ){UART1_Init(9600);sa[0]=0; sa[1]=0; e[0]=0; e[1]=0;for(i=2; i