ZXTape! 0Created with Ramsoft MakeTZX2x Simulador de control de procesosIngenieria quimicaSpanishUtility-TZX by Miguel A. Garcia Prada D.L.: M-2837-69control W0WWcontrol.6 A 85 5:5::11 ,10 ;7;1;"PARE LA CINTA":.25~,2:.25~,2:.5,19:140 3tmp=0:g=0:kpp=1:kp=100d [rv=6000p:sp=80P:ft=255//4:ct=1000:ca=1:tm=0 1500  2000  3000  2000 (T:0;"1-SIMULACION DE PLANTA":0,165:0;255,0 202,0;"Introduccir los parametros:" <"CT constante de tiempo" F!" valor normal:1 a 3000 seg" P!" valores max:1 a 36000 seg" Z$"CA coeficiente de amortiguacion" n" valores max:0 a 4" x "TM tiempo muerto en % de CT" " valor normal:0%" " valor max:20%":"K ganancia":" por comodidad se utiliza ":" la variable 100*K":" valor max (de 100*K):1 a 200":0,44,:0;255,0 "CT en seg=";ct &ct<1ct>36000250 %17,0;"CT=";ct;" seg,"; "CA=";ca "ca<0ca>4250 "CA=";ca; 4"TM en % de CT=";tmp:tm=(2.55#333*tmp/2) %tmp<0tmp>20250 ",TM=";tmp;"%"; ;"100*K=";kp:kp<1kp>200250:",K=";kp kpp=kp/100d:",K=";kpp 19,0;0;"pulse una tecla para obtener la respuesta de la planta a una en trada en escalon":0:270 l20,0;"VALOR FUERA DE RANGO. PULSE UNA TECLA PARA VOLVER A EMPEZAR":.5,9 :0  :40( D:6000p:4500:11 ,4;5;"(escalon)*K" 0,0;5;" ":0,0;5;"CT=";ct;" seg,CA=";ca;",TM=";tmp;",K=";kpp ".0,80P:5;255,0 ,Ve=.01z# =*tmp*255/2:0,0:e,0:k=1255-e 6.uu=(80P-pb*u(2)-pc*u(1))/pa @k+e,uu J&u(1)=u(2):u(2)=uu Tk ^B2;19,6;"pulse una tecla para cont.":0 c 2000 dca<.8L:6,0;"valores tan bajos de CA (";ca;")":"no se dan en la practica del control de procesos,con valores elevados de G o de RPM la respuestapuede ser muy inestable.Utilice valores bajos de G y RPM":0 h5:5:1: rT0;"2-AJUSTE DEL CONTROLADOR":0,165:0;255,0 |02,0;"Introduccir los parametros:" "G ganancia " " rango:0.01 a 100" "RPM accion integral" E" rango:0 a 50 repeticiones":" por minuto (rpm=1/TI en min)" "TD accion derivada" " rango:0 a 600 seg" .0,78N:0;255,0 "G=";g $g<.01z# =g>100d650 15,0;"G=";g;  gg=g*kpp:gg>3019,0;"G demasiado elevada para K=";kpp:"pulse una tecla para volver a empezar":.3,15:0::370r ("100*RPM=";rpmmm:rpmm=rpmmm/100d 'rpmm<0rpmm>502650 &R",RPM=";rpmm;:ti=60</(rpmm+.00001p'ŬF):it=ct/2//ft:tig=gg*it/ti +rpmm>1200/ct18,0;"RPM demasiado elevadas para el valor de CT,reducir RPM o CT,pulse una tecla para volver a empezar":.3,15:0::370r 0""TD en seg=";td:tdd=td/60< :%tdd<0tdd>10 650 ?tdd>ct/40018,0;"TD demasiado elevada para el valor tan bajo de CT (la accion derivada solo se recomienda para valores muy alos de CT),pulse una tecla para volver a empezar":.3,15:0::370r D2",TD=";td;" seg";:td=60<*tdd:tdg=gg*td/it N17,0;2;"pulse una tecla distinta de 1 para continuar":"Pulsan do 1 obtendra informacionsobre otras posibilidades" X 0: b="1"2500 l:5,0;"Pulsando una tecla obtendra larespuesta de la variable controlada (X) a un cambio en escalon del punto de consigna (SP)" v:"En la parte superior se recuerdan los parametros de la planta y del controlador "::"En la parte inferior derecha se indica la posicion de la valvulade control" ?:"Si se saturase la valvula sonaria una alarma":0:  655 y20,0;"VALOR FUERA DE RANGO.PULSE UNA TECLA PARA VOLVER A EMPEZAR":.5,9 :0::370r Kgg<3ft=255//8:tm=(.01z# =*tmp*255/4) Jgg3ft=255//4:tm=(.01z# =*tm*255/2) $7500L:6000p:4000 V0,sp:5;255,0:(175-sp)/8-1,1;"SP"  gg=g*kpp k=1255 e(3)=sp-u(2) ]k<8v(tm+2)=v(tm+1)+gg*(e(3)-e(2))+e(3)*tig:750 vv(tm+2)=v(tm+1)+gg*(e(3)-e(2))+e(3)*tig+tdg*(e(3)-2*e(2)+e(1)) sv=v(2) sv160k,159  Tu(1)=u(2):u(2)=uu:e(1)=e(2):e(2)=e(3) *,i=1tm+1:v(i)=v(i+1):i 4H1;(200+24*sv/rv),16:1;0,7 >;k:2;21,2;"para cont.pulse una tecla" CT(200+24*sv/rv),16:1;0,7:0:2000 H 5000 R 2000 g=0:6,0;"antes de pasar a esta parte del programa debe asignar valores a las acciones del controlador (parte 2-Ajuste del controlador)":21,6;"pulse una tecla":0:2000 6000p:6500d :4,0;"Pulse una tecla y obtendra la respuesta,del ultimo lazo de control simulado,a una perturbacionen rampa truncada como esta" 200,20:-100d,0:0,30:103g,23:7;47/,27:7;502,0:0 $4500:6000p .y0,30:5;255,0:0,30:0;100d,80P:0;155,0 3219,21;"C";:5;" ";:"A" 80,0;5;" ":0,0;5;"CT=";ct;",CA=";ca;",TM=";tmp;",K=";kpp Bw1,0;5;" ":1,0;5;"G=";g;",RPM=";rpmm;",TD=";td G"6,10 ;"Perturbacion" Lk=1255 Ve(3)=-u(2) `vv(tm+2)=v(tm+1)+gg*(e(3)-e(2))+e(3)*tig+tdg*(e(3)-2*e(2)+e(1)) j!kk=k:k100dkk=100d tsv=v(2)+.8L*kk ~sv160nu=160*nu/nu k,nu Tu(1)=u(2):u(2)=uu:e(1)=e(2):e(2)=e(3) ,i=1tm+1:v(i)=v(i+1):i H1;(200+24*sv/rv),16:1;0,7 k ?(200+24*sv/rv),16:1;0,7 C2;21,2;"para cont.pulse una tecla":0:  2000 $7000X:2000:9000(#  10 5:5:7:  a255,0:-255,0:0,175:255,0:0,-175 %0,25:255,0 ;20,2;0;" Revista INGENIERIA QUIMICA" `6,11 ;"SIMULADOR":8,14;"DE":10 ,5;"CONTROL DE PROCESOS" 'i=119:d,t:d=d/16 d,t:i "8,11 ,16,14,8,16,16,18,4,20,4,18,16,16,8,13 ,16,9 ,4,11 ,4,13 ,16,14,8,11 ,16,11 ,4,9 ,4,11 ,16,13 ,8,9 ,8,6 6 5:5:1: "Cuadro Indice":  "CON ESTE CUADRO EN PANTALLA:" 35,0;"PULSANDO EL PROGRAMA SALTA A" ,7;"________ ____________________" ,9 ,0;" 0 introduccion" #" 1 simulacion de planta"  !" 2 ajuste controlador"  " 3 metodos de ajuste"  " 4 perturbaciones" *$" 5 ejerc. recomend. para" / " aclarar conceptos" 4D19,0;2;"para cont. pulse cualquier otra tecla" > 0: H="0"25 R="1"40( \="2"360h f="3"840H p="4"1020 z="5"1260  Ĵ5:5:1::"LA SATURACION DE LA VALVULA DE CONTROL (totalmente abierta o cerrada), o la de otros elementos,introduce ILINEALIDADES que complican la respuesta" :"El rango dado inicialmente en este programa a la valvula de control es muy amplio (+ o - 6000) para evitar las ilinealidades,pero con rangos del orden de + o -300 las ilinealidades aparecen abundantemente" .0,65A:7;255,0 {18,0;"El rango actual es + o - ";rv,"para cambiarlo pulse 1,para contpulse otra tecla":"El valor min es 10" 0 &="1""Nuevo rango (sin signo)=";rv rv<10 rv=10 rv>5000rv=5000  85:5:1::0;"0-INTRODUCCION" 70;"Un lazo de control se compone dedos partes" 24,0;"el controlador la planta" _i=618:i,19;7;" ":i,0;7;" ":i ]10 ,25;5;" ":11 ,25;" ":12 ,25;" " M240,112p:0,-41):-41),0:0,41) \233,72H:0,-41):2,3:-4,0:2,-3 p233,524:5,5:-10 ,0:10 ,-10 :-10 ,0:5,5 c-8,0:0,5:0,-10 ,2:0,5:-190,0 .0,10 :35#,77M,15 "12 ,3;7;"LRC" 735#,92\:0,9 :140,0 &?183,101e,11 :9 ,22;7;"LT" 0o183,90Z:0,-5:16,0:0,32 :-16,0:0,-5 :I128,524:-3,2:0,-4:3,2 DJ125},101e:3,2:0,-4:-3,2 N014,16;"SV":8,16;"X" X]225,125}:0,-20:2,3:-4,0:2,-3 b921,0;2;"para cont. pulse una tecla" l 0: vC"CUALQUIER PLANTA PUEDE SER SIMU LADA utilizando tres elementos:" /0,155:7;255,0 J3,0;"UN ELEMENTO DE SEGUNDO ORDEN,de ecuacion diferencial:" 97;1;"(CT^2)*X''+2*CA*CT*X'+X=0":"donde:" "X variable controlada" "X' dX/dt" "X'' dX'/dt" "CT constante de tiempo" "CA coef.de amortiguacion" "" (amortig.critica con CA=1)" .0,64@:7;255,0 V15,0;"UN TIEMPO MUERTO (TM),retraso puro o retraso de transporte (lag)" .0,33!:7;255,0 T19,0;"UNA GANANCIA (K)":0,10 :7;255,0 921,0;2;"para cont. pulse una tecla"  0: &"LA FUNCION DEL CONTROLADOR es:":"" }"-determinar el error (diferencia entre el valor deseado o punto de consigna (SP) y el real (X) de la variable controlada" S"-generar una senal de salida a la valvula (SV) que trate de co rregir el error" *(14,5;7;" " 4(15,5;7;" " >(16,5;7;" " H(17,5;7;" " RA35#,480:10 ,0:502,480,5: \g557,480:12 ,0:30,14:0,-28:-30,14,0 f[100d,480:30,0:-3,2:0,-4:3,2 pZ502,18:0,25:2,-3:-4,0:2,3 zD16,17;"salida a valvu-":17,17;"la (SV)" -19,7;"variable controlada (X)" (11 ,0;"valor deseado (SP)" "12 ,8;"error (SP-X)" \58:,524:9 ;0,17:35#,524:9 ;0,25 921,2;2;"para cont. pulse una tecla" 40::"EL CONTROLADOR PUEDE SER DE TRESTIPOS" E:"PROPORCIONAL (P)":0,155:7;255,0 ):"de algoritmo: ";:7;"SV=G*e" "SV salida a la valvula" >"G ganancia del controlador":" (ajustable a voluntad)" F" a veces se utiliza el termi":" no:Banda Proporcional=100/G" "e error=SP-x" b0,70F:7;255,0:14,0;"PROPORCIONAL+INTEGRAL (PI)":"" )7;"SV=G*(e+RPM*(integral de e))" \"RPM accion integral":" en repeticiones por minuto":" (1/const. de tiempo en min)" g0,10 :7;255,0:21,2;2;"para cont. pulse una tecla" $ 0: .T"Por ultimo,el controlador puede ser":"PROPORCIONAL+INTEGRAL+DERIVADA (PID)":"" 8R7;"SV=G*(e+RPM*(integral de e)+":7;" +TD*(de/dt)) " B7"TD constante de tiempo":" dela accion derivada" V/0,100d:7;255,0 `12 ,0;"Nota:Si en un controlador PID como el anterior hacemos TD=0 ,se convierte en PI .Si,ademas, hacemos RPM=0 se convierte en un controlador P" jD21,2;2;"para cont. pulse una tecla":0: ~\0;"INSTRUCCIONES PARA LA SIMULACION":0,160:7;255,0 p3,0;"1-SIMULE LA PLANTA introduccien do,cuando el programa se lo pidalos valores de CT,CA,TM y K" <"El programa le dara la respuestaa una entrada en escalon" {"(Para simular una planta existente obtenga su respuesta a una entrada en escalon y reproduzcala jugando con CT,CA y TM)" .0,75K:7;255,0 15,0;"2-AJUSTE EL CONTROLADOR teclean do los valores de G,RPM y TD.El programa le dara la respuesta a un cambio en escalon del valor deseado (SP)" .0,14:7;255,0 921,2;2;"para cont. pulse una tecla"  0:  5:7:0: 0,0;5;" ":0,0;5;1;"CT=";ct;",CA=";ca;",TM=";tmp;",K=";kpp 1,0;5;" ":1,0;5;1;"G=";g;",RPM=";rpmm;",TD=";td m255/2,0:1;0,10 :5;0,149:1;0,-4 7255/4,0:5;0,159 M3*255/4,sp/2:5;0,159-sp/2 00,sp/2:5;255,0 (0,sp:5;255,0 20,1.5@*sp:5;255,0 qgg<321,17;2*ct;" seg":2,17;((ct/.6))/502;"min":4110 ^gg321,17;ct;" seg":2,17;((ct/.6))/100d;"min" 5,1;"X" 219,21;"C";:5;" >< ";:"A" " 5:7:0: 5,1;"X" 5255/2,0:1;0,6 21,17;CT;"seg"  5:5:1: 00;"3-METODOS DE AJUSTE DEL CONTROLADOR" /0,155:7;255,0 3,0;"LOS CRITERIOS DE ESTABILIDAD de Nyquist,Routh,Lyapunov,etc.,tan utiles en otros campos,no se utilizan en control de procesos" O"El problema de la ESTABILIDAD se resuelve en la practica en dos etapas" }"1) Instalando el controlador deltipo (P,PI o PID) mas adecuado para cada caso,para lo cual se sigue la siguiente regla:" +"":"Variable contr. Controlador" +7;"-------------- ----------" "Temperatura PID" "Otras variables PI" 82;21,2;"para cont.pulse una tecla"  0  f:"2)AJUSTANDO los valores de G,RPMy TD de tal forma que la respuesta sea RAPIDA y,a la vez,ESTABLE" :"Como a mayor RAPIDEZ de respues ta menor ESTABILIDAD,se busca uncompromiso entre ambas consistente en que la respuesta a un escalon sea tal que la relacion de alturas de dos picos consecutivos sea de 4 a 1" 8250::"como en":"este ejemplo":fft=ft:cca=ca (ft=5:ca=.22~aG 2<6000p:100d,35#:7;100d,0 <i=1100d:uu=(25-pb*u(2)-pc*u(1))/pa:7;i+100d,uu+10 :u(1)=u(2):u(2)=uu:i Fft=fft:ca=cca P82;21,2;"para cont.pulse una tecla" Z 0 d:"Metodos mas conocidos:"::"METODO DE ZIEGLER & NICHOLS:"::"1)Con RPM=0 y TD=0 ir aumentandoprogresivamente G hasta que la respuesta a un escalon sea criticamente estable, es decir una sinusoide(solo es posible con valores bajos de CA o altos de TM)" n{"2)Anotar el periodo P,en min,de la sinusoide (distancia entre picos) y la ganancia con que se obtuvo la sinusoide (Gcr)" x6"3)Hacer":7;"G=0.6*(Gcr); RPM=2/P; TD=7.5*P" }"Nota:TD en seg y P en min" 0"4)Reajustar ligeramente G si fuese necesario" A2;21,2;"para cont.pulse una tecla":0 :"METODO DE LAS OSCILACIONES AMORTIGUADAS:"::"1)Con RPM=0 y TD=0 aumentar progresivamente G hasta que la relacion de decadencia,es decir dealturas entre dos picos consecutivos,sea de 4 a 1 " ]:"2)Medir el periodo de dicha respuesta (distancia en min. entre dos picos consecutivos)" 3:"3)Hacer ";:7;" RPM=6/P; TD=10*P " "Nota:TD en seg y P en min" b:"4)Reducir suavemente el valor deG hasta que la relacion de decadencia vuelva a ser de 4 a 1" 82;21,2;"para cont.pulse una tecla"  0:  p'e(3):u(2):v(tm+2) z<pa=ft*ft+ca*ft:pb=1-2*ft*ft:pc=1-pa-pb  d:::0,0;0;"4-PERTURBACIONES"::"Ademas de las perturbaciones introducidas por cambios en el punto de consigna pueden existir otras llamadas externas" n:"En el caso del control de nivel citado en la introduccion ,una PERTURBACION EXTERNA podria ser producida por la apertura de un drenaje del tanque,por un aumen to de la presion,y por tanto delcaudal,en la tuberia de entrada,etc" 82;21,2;"para cont.pulse una tecla" ^ 0:: X+ 5:5:1::ejercicios bZ0;"5-EJERCICIOS PARA ACLARAR LOSPRINCIPALES CONCEPTOS DE CONTROLDE PROCESOS": l"P-SIMULACION DE LA PLANTA"::7;"P-1 .AMORTIGUACION CRITICA":"Con CA=1 se obtiene una plantacriticamente amortiguada(por ej.CT=1,CA=1,TM=0 y K=1)" v:7;"P-2 .RESPUESTA SINUSOIDAL":"Sin amortiguacion (CA=0) la planta oscilaria permanentemente (CTTM y K como en el ej. anterior)" ~19,0;2;"Pulsar 1 para SIMULACION DE LA PLANTA, 2 para AJUSTE DEL CONTROLADOR,otra tecla para continuar" 0::="1"40( ="2"360h :::7;"P-3 .PLANTA DE PRIMER ORDEN"::"Con CA=3.3 se simula un sistema de primer orden (en CT seg alcanza el 63.3% del escalon)" ::7;"P-4 .TIEMPO MUERTO"::"Haciendo TM=20% de CT,se comprueba el efecto del tiempo muerto,lag o retraso de transporte" ~19,0;2;"Pulsar 1 para SIMULACION DE LA PLANTA, 2 para AJUSTE DEL CONTROLADOR,otra tecla para continuar" 0::="1"40( ="2"360h  ::"C-AJUSTE DEL CONTROLADOR" E:"Realizar los ej. siguientes con planta: CT=1000,CA=1,TM=0 y K=1" :7;"C-1.DESVIACION PERMANEN.,OFF-SET" :"Con solo accion proporcional (G=3,RPM=0,TD=0)la variable controlada,X,nunca alcanza el valor deseado" :7;"C-2.EFECTO DE G SOBRE EL OFF-SET":"Si en el ejercicio anterior se aumenta G,el off-set se reduce (probar con G=6)"  ~19,0;2;"Pulsar 1 para SIMULACION DE LA PLANTA, 2 para AJUSTE DEL CONTROLADOR,otra tecla para continuar" 0:="1"40( ="2"360h :::7;"C-3.EFECTO DE LA ACCION INTEGRAL":"Con G=3 y RPM=.6 (100*RPM=60) se comprueba que la accion integral elimina el off-set,pero tiende a inestabilizar la respuesta"  7;"C-4.EFECTO DE LA ACCION DERIVADA":"Haciendo en el ej. anterior TD=60 se alcanza el equilibrio en menos tiempo.Ademas, por ser la accion derivada estabilizante sepuede incrementar G ,lo cual tambien contibuye a aumentar la velocidad de respuesta" 4~19,0;2;"Pulsar 1 para SIMULACION DE LA PLANTA, 2 para AJUSTE DEL CONTROLADOR,otra tecla para continuar" >0:="1"40( H="2"360h  L #(5:5:7::10 ,0;"El programa ha llegado a su fin":"pero solo en apariencia":"aun le quedan muchas e interesantes combinaciones por probar" #2 200 #< mgpdpP"Vdt