RSRC LVINLBVWv m vt  <@5/ D8LOD@0OV{+ُ B~0ُ B~S~+"M)Q jFB/sȱ#LVINpid_control_labview85.viVIPVPID Advanced.viPTH07addonscontrolpidpid.llbPID Advanced.viNILVPID VIVIPID Advanced (DBL).viPTH0=addonscontrolpidpid.llbPID Advanced (DBL).vi@ setpoint@ output high@ output low@P output range@! auto? (T)@ manual control @ output@ process variable@ setpoint high@ setpoint low@P setpoint range@ proportional gain (Kc)@ integral time (Ti, min)@ derivative time (Td, min)@P  PID gains @ dt (s)@!reinitialize? (F) @ beta@ linearity@ dt out (s)L     NILVPID VIVINI_AALPro.lvlibPolynomial Interpolation.viPTH0;Analysis 5stat.llbPolynomial Interpolation.vi @error@ interpolation error@ interpolation value @ x value @@X@@Y$P  c d1` P c(@flg@oRt@eof@Pudf@ Initial filter state@ dfd@ txd@ old@ extP  P c@!Reinitialize controller?@!dfd@!txd@!old@!extP  c @ Filter time-constant Tf [s]P   c4@ Time step Ts [s]P  @ Setpoint y_SP [%]P  @! Auto/Man?P !@ Manual control u_man [%]P #  c@ Output high@ Output low@P&'Output range [%]@Pdfd@Ptxd@Pold@PextP ()*+,@ Setpoint high@ Setpoint low@P./Setpoint range [%]P 0)*+,@ Proportional gain Kc@ Integral time Ti [sec]@ Derivative time Td [sec]@P234 PID gains@Pdfd@Ptxd@Pold@PextP 56789 @!stopP ; @P=== c7"@@Raw_meas_min_max [V]@@dfd@@txd@@old@@extP @ABCD$@@Scaled_meas_min_max [%]P FABCD$@@Raw_control_min_max [V]P HABCD(@@Scaled control_min_max [%]P JABCD c8 @ outputP M @ Kc Scaling@ Ti Scaling@ Td Scaling2@POPQ$Cluster. PID Scaling from Sec to Min c d;@!reinitialize? (F) c @ beta@ setpoint@ process variable@ linearity @error c @ ymfk@ a@ interpolation error@ dt out (s)@ interpolation value @ x value FH!50#(@J! c@millisecond multiple c<c c0 cP c d  c  c c c `>P d d4000 0"$0%-00100%:000<> 0?E> 0G> 0I> 0K0LN0R08LST0UVWXYZVV[\]^_`abcdefg^hijklmnopqr^5sX tuvaw]xMyyz{0|}~(F00000VxxUkA~;"((Z(z 7Eb!)"(`A.G K RXXh2WHqEJI͏L H}3{{QA4ND`D] QgsXL4-XD$Y:ܕ@󸦏7NXWOcKj 4xh>(nvPw~x@+G<ۍn9˅qe݋.ts]r+YrɕЕܫ+/]JB{E/R~(=j7Uw`SYJUOa\ҼUJC>/ll̿d\1=ZFȝWs@n*]o}VIDSpid_control_labview85.viDSDSPID Advanced (DBL).viPTH0 DSDSNI_AALPro.lvlibPolynomial Interpolation.viPTH0  JTxX}l[Wv$ִL,+MH$h3m@ł y UZ Tj7U8t R6cQGB>9'|Ϲ߹{GN %g~=*A6vM3iW<r7@hƓ$rghW-NO4͛Exq~lPat^hhH&1#!>U C{Dz A^t}/Q ש؆ͱ\!6Ek+վhkE[VjRmU(VYu,Z:U.^.T{rUôFe+!Pаz, oգC.cY@3qvLED:Ų"I"BEI=@7z::Dk9+yVq<,8)X0ed\6H$f {̅П^fnErgn[|03TE ^Pw 91C:|ffg+Y0D;9BPB.O_fg(wZj_<}5=z6SхS}Ⱦ~#q퀟zӃA۞,ie#$k2J^3*hUFa< Ʞ~1L}1'56rw=2xcY 3N Y!Gs1$8b( a úYXs9\Ӛ򸖒LA-%dLF(9/I-b&7N#"HMN Y:ch'Qheo̎-nNptqz>*jQ91{6$!(Pbҋ]3tD+8eȸ9ȁ D.p]Dv|(Zd%D\;]oYM'ֈPp#`r qU}L Br6!֋7Ku]go:#nL/Agjw =@^`%#H/ bq`p*7Z]Bw @gk*>N2FVZ@&83(ϗ9=jϽ5e;mk 1#]]0xW.?LheDhoj["GY1:mby7GHbFCW82`HDKO#D8<[bbxvhV6w2$鲠1Ad#r$F[͑h-Ar{Ϡjpd"(K%(BVf[y8/Pkx'8"Op$U|׌#L)OqX1>eV}6FZ噫~VlSeЏH*;m|{7x~AMg^G$[p+xUx7I hMn uvv#@C Oo .|]=rƞhdWvm-\X+D+s U&4"|>Tܽ&\B VKK g&R;-BmeѻIGMOGLnquYhw]b:.ȣYE^T-v͒"FIVI#+Ŭ6\BL~J2fPGiH Mn䎛q,%4~ň=bƝ;0OOo0GM0[<,ܰɵwJlff]%G(3`=&}B"&w V+_U|c]g{qaѰ\5D3sC-81qSomdP8EQ3(50gzp7Ra3~l|(~0 mjLHaǿ&J婙 Ui8ɛf7|=Au> Qt}Pa;!'_ g4 @.Us@ n_0z@C03@,-jʁ =m$ǗMP+̈;n9ƜuU=]A׼N.j}Ұ???x.p*aBO+ˌ {Y|78% P8.5 P @!stop@ Proportional gain Kc@ Integral time Ti [sec]@ Derivative time Td [sec]@P PID gains@ Setpoint high@ Setpoint low@P Setpoint range [%]@ Output high@ Output low@P Output range [%]@ Manual control u_man [%]@! Auto/Man?@ Setpoint y_SP [%]@ Time step Ts [s] @ Filter time-constant Tf [s]@!Reinitialize controller?@ Initial filter state "@@Raw_meas_min_max [V]$@@Scaled_meas_min_max [%]$@@Raw_control_min_max [V](@@Scaled control_min_max [%] @ output&P  P pTTTuu$TT$;a$aI2x!a!!!!!,,,,+,,,,,++,,,++,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,###,,,#,##,,,,,,,,#,,#,,,,,########6B! @!stop@ Initial filter state@ Proportional gain Kc@ Integral time Ti [sec]@ Derivative time Td [sec]@P PID gains@ Time step Ts [s]@ setpoint@ output high@ output low@P output range@! auto? (T)@ manual control @ output@ process variable@ setpoint high@ setpoint low@Psetpoint range@ proportional gain (Kc)@ integral time (Ti, min)@ derivative time (Td, min)@P PID gains @ dt (s)@!reinitialize? (F) @ beta@ linearity@ dt out (s)L     P @ Td Scaling@ Ti Scaling@ Setpoint y_SP [%]@ Setpoint low@ Setpoint high@P%$Setpoint range [%] @error@ interpolation error@ interpolation value @ x value @@+X@@+Y$'()*,-P @millisecond timer value@millisecond multiple @ Filter time-constant Tf [s]@ Output low@ Output high@P32Output range [%]@ Kc Scaling2@P5"!$Cluster. PID Scaling from Sec to Min@!Reinitialize controller?@ Manual control u_man [%]@! Auto/Man? @ ymfk@ a P+++$@@+Scaled_meas_min_max [%]"@@+Raw_meas_min_max [V]$@@+Raw_control_min_max [V](@@+Scaled control_min_max [%]i !"#$%&.-&/0+112344, 56677)88991:;# <6++-,*)(=+>=?+>?.'@>+@A>+A'()*(FPHPpid_control_labview85.viRDoutputHLHfwxScaled control_min_max [%]H_qapLHcwxRaw_control_min_max [V]H_ qapL{{Hcv~vScaled_meas_min_max [%]HfxhwLGTGTH\i\i`B~OBORaw_meas_min_max [V]HWfdxWhWw`D^kj^kjInitial filter stateHq~Jq ~I]D#0s#0s19. November 2007]D r rfinn@techteach.no[DggBy Finnn Haugen\PID Control LoopOD6K7KManPDS5`MS6`MAutodDyyReinitialize controller?gDFilter time-constant Tf [s]H$F$E\D.;e.;e Time step Ts [s]HANHANG]DHU HU  Setpoint y_SP [%]H[h[[UDuRuS Auto/Man?dD#$Manual control u_man [%]H'S)RWDJJ Output highH%@?VD+8F+8F Output lowH>K@>>?PPane\DOutput range [%]YDPP Setpoint highH%@?XD+8L+8L Setpoint lowH>K@>>?PPane^Dn{n{Setpoint range [%]`DppProportional gain KcH%@?bD+8t+8tIntegral time Ti [sec]H>K@>>?dDQ^Q^Derivative time Td [sec]Hdq@dd?PWd.Wd.PaneUDDQ?DQ? PID gainsP9F9FstopP$KXKXSTOPPPanegDIVMIVLMeasurement signal scaling:eD||Control signal unscaling:gD_^Polynomial Interpolation.vigDp.}p0}Polynomial Interpolation.viRD$vxBSensorTD$ 98dActuatorSD$;t=sYProcessL7r{7s7tDQ^R,&&(a=1/((Tf/Ts)+1); ymfk=(1-a)*ymfk1+a*ymk;MD''aPD.;.;ymfkND;0H;;1H;TfNDN0[<N1[<TsOD0#D1#DymkQD(05N(15Nymfk1tD/ 1 (Formula Node: Measurement lowpass filter`DTi and Td in minutes`D*],\Ti and Td in minutesRDDivide[D&y(xPID Advanced.vigDS]`S_`Wait Until Next ms MultipleHD]djz]ejzHDp}p}VD=(J[=*JZ Td ScalingHDM)Z8M+Z7VD((W*(V Ti ScalingHD+)88++87VD(Z*Y Kc ScalingHD )2 +1PDPanepD $Cluster. PID Scaling from Sec to MinHD HDy y HD HDjw;jw;HD HDHI HDS`S` HD+8$+8$HD+*8++8HDHDjw%jw%HD44HD^_HD^_ HD33VD%2%2 While LoopHDZggZhgW.x\{tldl FFDH3< - Z#UERT"Z|Q{C+w읛lvlr}}lJ=pCh@w E/?bO%T龧w3uWUCw{{wCH;0 ES1MhaR',O%vfS޹;rUG|/%Χ**Zoߎ1sgTf9 .Y.֬JBUͪNY+լB"0`}l֦[uSwxfYchA"ף G^߾a6#B!ݷo$0>QqOнM]!/!l{2'J>B:GfGpDɀ3P4 zELpȘ͎H5gc5g^НiB봴\K]&ze`K6j.\D:\D0MQN0E"yItLtp8%a*H*Z!\.RERXތ"~pkTފ",4f9s1]DE]@XH.'S]PCWr@wAq(0D/ta2䕬T7%wȣt, Sh=#Cp'V`A3(A&;@N? ج{t֬ l5KtX轪ZA8TñMW[C>s4֑}1@b9Cv^.uX Au0ok*7-X @޽1u RzZo4QAկ>ޫ}A֚0ډl>УŮdƙ^/tSF=aHe0a?YapD@`ڭ8U:u5zpY.2Ę͙ZLdi;iovLL_}`ȴ`ڇLəvδDi8ɴ$'9`I"z0{˴;aΘvJbL; ^iD47~% B)lG3mMzplz?\#2@3O٘zOC[,l$[r-&q%׊dLOȶZ}`@dVdL9Q%u/-ivD l$[rEdKds0}Ed%+- &F5!%-Y8ْ6loy8O6Uv+iaL;״-ҙM. G631emC*ٓL+e'%J9uLvO֧3 bi?iof|δ_LHdړSڗɴ_%'Ӟ1iO;a9cpL]bL{ F,kAdC8Oz3ȴ*6fZX?E08,1(Ae@RAsLoaA~z66k55ǥGX\0J6W`@.>a7)?ؙAI4"v-sIXZTU:l#N换]R Q6JaJ/XPz.jʸݎ0d6Fs}am7)-0lw= "fFH˭CTmaP~9'ѹ*nhJe%Pڨ#z5BӨGA:ԯ]qm L;I*Ϧ˃<iz.[*êq튧hc_C dw:\uZ#Tr 2340NGǕ,EQu i,doZoKaU?C 7Gšn5G*`0ITg@TQWU@\J& W7t~(8 (+G 2H!M2EH _Gt9ʪ(L$ :\9p7fHQGpWRB<&{;#V>ܯ, 9 ҅!Z]r'Csc̵P'2-a70 dڨj\gYMrɶb:w 3sL;oFM\ 6]BKݹԲvYvV#[v9fn#.MW]4XYlv\k 8v-a5߭LfvUǐ| 9aӂ dPή86spE+Qp(q28228$8<gWW(G@Gs$Ӫ0|9=;K~NSB)g3]P M+x}N/@%r`x8c;s؃Ϗ;;~\;~SC89QQ篥&3O!)<;,ݮ8{/:p#ɉݗ/ v_qWEG; v3f#VX-׎fO.e27Q U~ZLFh6 Rdr| T[L;#qj<*֝F PЬ^o9rq$iYcHe f}f:wIu cs %[S l+aN~sWkGdˈwP IˁIb#&]G7fqquD3gɁb1/#7{$KZ33L,^ SGt?mLGˁ"k43vGqs$W v`wc:bb( 1&$楶`Z,dk6=hB:d#؂:bJG u8trsp;1;qߗg#:ND֝\GSv+G!ALG?>C#ps {-I~ԄKz 9)GD^gZ~򊣈|.}5)#2 %eD& ́_o}G$w&LMTʁ oāݫDZ{vs8]3؍q~0wݷTo!vävA`!r-b8Ō ;y$$'v`v?WnNJr&<}*ቼO*-䀵nGÛ`3p;yZ gc*vZ&Oo%|3tZ)asq(1p>}*al&/V[V[]~">D*) 4!< tӗ6fH5qHbޚPT|"AV~vJM3w,b,ɷ5]ăTȇ*͆qk.F)8И9ӟBǸ~bСCheo[jn lԲ qa&_h\FTe?,V86P6,Pd"v%tcʙPv!2H7Hw5ˏYhLhYteY/dXX ^ &꬜IQWcΣ0$ߎ #paVFZg[W"BDHPpid_control_labview85.viPUPVPID Advanced.viPTH07addonscontrolpidpid.llbPID Advanced.viNILVPID $PTH0IUVIPID Advanced (DBL).viPTH0=addonscontrolpidpid.llbPID Advanced (DBL).viNILVPID $PTH0IUVINI_AALPro.lvlibPolynomial Interpolation.viPTH0;Analysis 5stat.llbPolynomial Interpolation.viPTH0%AnalysisNI_AALPro.lvlib  /xG>4x[ tTE;ݝtGLB BZ 7 ڂ hdFEFbƑWqg]GvaI@dգ\iz{ު۝gwvﯿn~Y&45~ MXrޥ&+Lj@t~O {QHfד'ح̓ K 8$R@b( 6R+/ЪҤ"$bOz6׬ d*Lf{4R|`Vjn틍E5Hz ʄK&?M7 U$y?0 j<*8<5C̡¥rv>.V.mY@L3fK4qyizms<NӯDXz0/DɁ8i4GiA6QVP>FBw6rC"Pp|(rއ*Ehb_M¯V32 a)k4FOb}a4lxw5ȇu:c[$(h >6h ԇb"TPcMlN7[L Nѩ11 A83Dn [>a"!$̛ƌ0a'aA.a.:Sb=IT#a!0[e@QPFy# 4:Y([&Q:n030`(5A5֌_XJb`"kt'<0[kαI'\X{¬Gkǚz2|Y 93&z8jƙZn%AT|v|Kb<")߽88cdo?;8|1x3xVHL¸c*.K͸ 7l`H#]oQZWE QENnC(Qu7cܲ 4X#eDkӆ(/p*)5FD5itP jDZ2r,*؋v8$ͅ4M?62m\RJsy KB !\y0x撒FwBEsA",APl/ԛ yׅOo.\, 8*N)aގ,uYx!DˣіpX갯t=G:$uaR羨+~toaס]!ͲJ 41cH@H~&a#7܊ !RygQG Q~k*GcAGL"@F"0Gc>-vp>W>S>>sP-cWzUŲԬDujjm>5K-\ q5KqBӞeYjОC:A;g8 @5p,5@d57j}j0hBM؂r+wVŖˡ&0 PN$o"+, F0sQME7 5tIgr5FzyrYfoCKeܸ<.Zl}+Krd)d*޺Ԙ9TYn]vx }cYDՓ}˫dVGu0 Gor1kEYw焚']5-K(Ĭty[(s~C?|f'PQs֧fE|~BMSsPl?mΡfGRA;e1LHTsUJ5Recr,V;jVv3,[WU2VL9?'c~FK! ѭ LKx,'4fycߦaHub} Mg8`QA%_Ŀ6JQ; _p1c&fF1*"jc'J HaWl\ Sv8(x^2,2+Ùm yʳ XO8O 0 0(^=Oqa5AUa;~!/~yzo$OzyFE u6sa5~pFUs'w4 A3T*TE-yFh_ia pbR ?0ƀnf1Mqa7LAfFvAqۅ6N^VroV uL.`Q9M[Q vD.DR򽺫gqPYJ졊q;D]=ҩ>쥇:qG#\Xu neWkcj|\m=WSʅUWGvJ7>\3C%HS^A>}+x'0~kj߈2.`&ώm|¹fG4:jA$kp~o%a+yqvsgvb; FvA_tDbD"Ū Ztߢ]3aăVE^s*: ՋΨvnBu'b=FeIt;U4p#,}@ɞ;'}FANM\T-N*wA9/pAW6_sKPՠ2 pX+SQ( +Fi^h.QfĈ#4#/^\f.Vh!.ґCrZ.+_(e7"]Pp KhW,{Py߃X=7j*Q8U:+jX4.:P3I_S-38Zc>1(3X\eED L= '.Xy2^ T^]D.9H7\Wu ti+$Dz+ʏhNr :NujQ}~REt^G}_hHOn\DD\Xj] k]rݶ>Y-| Y Z$v3,A`V@>۠6V}qa)ʻ `\i%`\͊I\^_ra`"JU'Ĝ9I!!ݜ'6 Uw U'c",pfGWQix۟@M,]OSߺ6V{ YMr.?(yDjygfG].~3"X0wy.Γ\X-,W)fy]wLL}{7r:)Oh/ 'r Y)c>=Vkړb8THIL 66p =0'L2CՁ Y7=l8z]({-;UUANbI>*>bI>*>-;?qX  _  f  m oI%TahomaTahomaTahoma00RSRC LVINLBVWv m v 4 TLVSRlBDPWRTSGLIviCONPTM80DFDSLIdsVICD vers DLDR4FPTDHCPMp\ICONpicl8DTHPLIfpTRecjFPHb FPSE 0FPTS DLIbd XPICC lBDHb BDSE BDTS MUID HIST PRT FTAB x0l|8@"))0))*$*p*+( +x + ,, ,x ,--|-..d.//x/0(001L112\23 3t!3"4$#4p$4%54&5'5(6()6*6+7$,7-7.80/80819,29394:@5:6:7;\8;9;:=?>,@>A?B?\C?D@ E@\F@GA(HA|IAJB$KBxLBNCHPCQDRDhSDTE4UEVEWF(XFtYFZG[Gx\G]H^H_H`I$aIpbIcJdJTeJfJgK8hKiKjLkLhlLmMnM\M]]]M_O_`uLuXu`uhuvpid_control_labview85.vi