%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Device definition for IVT REGO 5002, 5003, 5004, 5005 % % Settings module: % Parity: None % Baud: 9600 % % READ Digital input % % Author: Peter Widetun, ABELKO AB Luleå % History: 2010-02-12 inital version % 2011-01-25 Inläsning var förskjuten 1 bit DI0 saknades % DEVICETYPE IvtRego5005DI1 NAMED "IVTREGO Läs DI" TYPEID 21340 IS PARAMETER Id :"Adress"; PUBLIC %GH %DI0 :"Låg temp VVladd"; %10001 Låg temp i laddkrets VV End. 5003 %DI1 :"Låg tryck värme"; %10002 Lågt tryck värme (stoppar allt) %DI2 :"Buffertank" ; %10003 Buffertank: Ja[1], Nej[0] %DI3 :"Laddning tappv."; %10004 Tappvattenladdning: Ja[1], Nej[0] %DI4 :"Låg tryck kyla" ; %10005 B31, lågt tryck kyla %DI5 :"E11 larm tills."; %10006 E11, larmingång (tillskott) DI6 :"E21 driftind." ; %10007 E21, driftindikering (värmepump) DI7 :"G1 larm framl." ; %10008 G1, larmingång (framledning) DI8 :"E11 driftind." ; %10009 E11, driftindikering (tillskott) DI9 :"G1 drift framl."; %10010 G1, driftindikering (framledning) DI10 :"G2 drift värmeb"; %10011 G2, driftindikering (värmebärare) DI11 :"G3 drift köldb."; %10012 G3, driftindikering (köldbärare) DI12 :"G5 drift h.gasp"; %10013 G5, driftindikering (hetgaspump) DI13 :"G7 drift laddn."; %10014 G7, driftindikering (laddning) DI14 :"Tillåt on/off" ; %10015 receiveblock, tillåt start/stopp (kommunikationshandboken) DI15 :"E21 summalarm" ; %10016 E21, summalarm DI16 :"Q21 status 1=VV"; %10017 Q21, status: VV[1], Värme[0] DI17 :"Summalarm A" ; %10018 Summalarm, A-larm DI18 :"Summalarm B" ; %10019 Summalarm, B-larm DI19 :"Summalarm C" ; %10020 Summalarm, C-larm DI20 :"Q41 VVC 1=Hetg."; %10021 Q41, val av VVC-flöde: Slingtank + Hetgas[0], Hetgas[1] End. 5004 DI21 :"G2 VBpump hög" ; %10022 G2, driftindikering hög hastighet (värmebärarpump) End. 5005 PRIVATE BAUDRATE 9600; CHECKSUM MODBUS SWAPPED; TELEGRAM ReadDI1 NAMED "Läs DI1-21" IS QUESTION DATA[0] := BYTE(Id); % Modbus unit address DATA[1] := HEX(02); % Modbus command "02h" read discrete input (bit) DATA[2] := RWORD(0); % Start adress DATA[4] := RWORD(22); % Number of inputs ANSWER SIZE 8 DATA[0] = BYTE(Id); DATA[1] = HEX(02); DATA[2] = BYTE(3); DATA[3] -> BYTE(%IF (DATA & 1) THEN DI0 := 1; ELSE DI0 := 0; ENDIF; %IF (DATA & 2) THEN DI1 := 1; ELSE DI1 := 0; ENDIF; %IF (DATA & 4) THEN DI2 := 1; ELSE DI2 := 0; ENDIF; %IF (DATA & 8) THEN DI3 := 1; ELSE DI3 := 0; ENDIF; %IF (DATA & 16) THEN DI4 := 1; ELSE DI4 := 0; ENDIF; %IF (DATA & 32) THEN DI5 := 1; ELSE DI5 := 0; ENDIF; IF (DATA & 64) THEN DI6 := 1; ELSE DI6 := 0; ENDIF; IF (DATA & 128) THEN DI7 := 1; ELSE DI7 := 0; ENDIF; ); DATA[4] -> BYTE(IF (DATA & 1) THEN DI8 := 1; ELSE DI8 := 0; ENDIF; IF (DATA & 2) THEN DI9 := 1; ELSE DI9 := 0; ENDIF; IF (DATA & 4) THEN DI10:= 1; ELSE DI10:= 0; ENDIF; IF (DATA & 8) THEN DI11:= 1; ELSE DI11:= 0; ENDIF; IF (DATA & 16) THEN DI12:= 1; ELSE DI12:= 0; ENDIF; IF (DATA & 32) THEN DI13:= 1; ELSE DI13:= 0; ENDIF; IF (DATA & 64) THEN DI14:= 1; ELSE DI14:= 0; ENDIF; IF (DATA & 128) THEN DI15:= 1; ELSE DI15:= 0; ENDIF; ); DATA[5] -> BYTE(IF (DATA & 1) THEN DI16:= 1; ELSE DI16:= 0; ENDIF; IF (DATA & 2) THEN DI17:= 1; ELSE DI17:= 0; ENDIF; IF (DATA & 4) THEN DI18:= 1; ELSE DI18:= 0; ENDIF; IF (DATA & 8) THEN DI19:= 1; ELSE DI19:= 0; ENDIF; IF (DATA & 16) THEN DI20:= 1; ELSE DI20:= 0; ENDIF; IF (DATA & 32) THEN DI21:= 1; ELSE DI21:= 0; ENDIF; ); TIMEOUT 1000 END; END; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Device definition for IVT REGO 5002, 5003, 5004, 5005 % % Settings module: % Parity: None % Baud: 9600 % Mode: RTU % % READ/WRITE Digital output % % 9 digitala utgångar kan ställas från devicet. % Ta bort kommentartecken (%) för de utgångar som skall styras. % Uppdatera telegrammen för Läs och Ställ med de valda utgångarna. % % Author: Peter Widetun, ABELKO AB Luleå % History: 2010-02-12 inital version % DEVICETYPE IvtRego5005DOSET NAMED "IVTREGO StällDU" TYPEID 21341 IS PARAMETER Id :"Adress"; %DO1 : "Tidkanal A-Larm"; %00001 Tidkanal A-Larm %DO2 : "Tidkanal B-Larm"; %00002 Tidkanal B-Larm %DO3 : "Tidkanal Dagtid"; %00003 Tidkanal Dagtid %DO4 : "SMS 0=Res 1=Ord"; %00004 SMSsend1: Reserv[0], Ordinarie[1] %DO5 : "SMS Kvittering" ; %00005 SMSsend1, Kvittering %DO6 : "SMS 0=Off, 1=On"; %00006 SMSsend1: Från[0], Till[1+] %DO7 : "E21 Ext.start" ; %00007 E21, externstart %DO8 : "T1 Ange gfel FL"; %00008 Ange, T1, givarfel (framledning) %DO9 : "T3 Ange gfel ST"; %00009 Ange, T3, givarfel (slingtank) %DO10 : "Sendbl. VP klar"; %00010 sendblock, värmepumpen klar (kommunikationshandboken) %DO11 : "G1 Ange drift" ; %00011 Ange, G1, driftindikering %DO12 : "E11 Ange drift" ; %00012 Ange, E11, driftindikering %DO13 : "G3 Ext.start KB"; %00013 G3, externstart (köldbärare) DO14 : "E21 block. VP" ; %00014 E21, blockering (värmepump) %DO15 : "E11 Tillåt t.s."; %00015 E11, tillåt (tillskott) %DO16 : "G5 Extern start"; %00016 G5, externstart (underkylare) (endast G-maskiner) %DO17 : "B21 Lågt tryck" ; %00017 B21, lågt tryck (värme) (stoppar allt) %DO18 : "G1 Ext.start FL"; %00018 G1, externstart (framledning) %DO19 : "E21 Ange larm" ; %00019 Ange, E21, larm %DO20 : "Tillåt On/Off" ; %00020 receiveblock, tillåt start/stopp (kommunikationshandboken) PUBLIC %rDO1 : "Tidkanal A-Larm"; %rDO2 : "Tidkanal B-Larm"; %rDO3 : "Tidkanal Dagtid"; %rDO4 : "SMS 0=Res 1=Ord"; %rDO5 : "SMS Kvittering" ; %rDO6 : "SMS 0=Off, 1=On"; %rDO7 : "E21 Ext.start" ; %rDO8 : "T1 Ange gfel FL"; %rDO9 : "T3 Ange gfel ST"; %rDO10 : "Sendbl. VP klar"; %rDO11 : "G1 Ange drift" ; %rDO12 : "E11 Ange drift" ; %rDO13 : "G3 Ext.start KB"; rDO14 : "E21 block. VP" ; %rDO15 : "E11 Tillåt t.s."; %rDO16 : "G5 Extern start"; %rDO17 : "B21 Lågt tryck" ; %rDO18 : "G1 Ext.start FL"; %rDO19 : "E21 Ange larm" ; %rDO20 : "Tillåt On/Off" ; PRIVATE Cnt; BAUDRATE 9600; CHECKSUM MODBUS SWAPPED; TELEGRAM ReadDISET1 NAMED "Läs DU1-20" IS QUESTION DATA[0] := BYTE(Id); % Modbus unit address DATA[1] := HEX(01); % Modbus command "01h" read discrete input (bit) DATA[2] := RWORD(0); % Start adress DATA[4] := RWORD(20); % Number of inputs ANSWER SIZE 8 DATA[0] = BYTE(Id); DATA[1] = HEX(01); DATA[2] = BYTE(3); %DATA[3] -> BYTE( % IF (DATA & 1) THEN rDO1 := 1; ELSE rDO1 := 0; ENDIF; % IF (DATA & 2) THEN rDO2 := 1; ELSE rDO2 := 0; ENDIF; % IF (DATA & 4) THEN rDO3 := 1; ELSE rDO3 := 0; ENDIF; % IF (DATA & 8) THEN rDO4 := 1; ELSE rDO4 := 0; ENDIF; % IF (DATA & 16) THEN rDO5 := 1; ELSE rDO5 := 0; ENDIF; % IF (DATA & 32) THEN rDO6 := 1; ELSE rDO6 := 0; ENDIF; % IF (DATA & 64) THEN rDO7 := 1; ELSE rDO7 := 0; ENDIF; % IF (DATA & 128) THEN rDO8 := 1; ELSE rDO8 := 0; ENDIF; %); DATA[4] -> BYTE( % IF (DATA & 1) THEN rDO9 := 1; ELSE rDO9 := 0; ENDIF; % IF (DATA & 2) THEN rDO10:= 1; ELSE rDO10:= 0; ENDIF; % IF (DATA & 4) THEN rDO11:= 1; ELSE rDO11:= 0; ENDIF; % IF (DATA & 8) THEN rDO12:= 1; ELSE rDO12:= 0; ENDIF; % IF (DATA & 16) THEN rDO13:= 1; ELSE rDO13:= 0; ENDIF; IF (DATA & 32) THEN rDO14:= 1; ELSE rDO14:= 0; ENDIF; % IF (DATA & 64) THEN rDO15:= 1; ELSE rDO15:= 0; ENDIF; % IF (DATA & 128) THEN rDO16:= 1; ELSE rDO16:= 0; ENDIF; ); %DATA[5] -> BYTE( % IF (DATA & 1) THEN rDO17:= 1; ELSE rDO17:= 0; ENDIF; % IF (DATA & 2) THEN rDO18:= 1; ELSE rDO18:= 0; ENDIF; % IF (DATA & 4) THEN rDO19:= 1; ELSE rDO19:= 0; ENDIF; % IF (DATA & 8) THEN rDO20:= 1; ELSE rDO20:= 0; ENDIF; %); TIMEOUT 1000 END; TELEGRAM WriteDISET1 NAMED "Ställ DU1-20" IS QUESTION DATA[0] := BYTE(Id); % Modbus unit address DATA[1] := HEX(05); % Modbus command "05h" Set coil status (bit) DATA[2] <- RWORD( % IF Cnt>8 THEN Cnt:=0; ENDIF; IF Cnt=0 THEN DATA := 13; %00014 E21, blockering (värmepump) ELSIF Cnt=1 THEN DATA := 13; % " ELSIF Cnt=2 THEN DATA := 13; % " ELSIF Cnt=3 THEN DATA := 13; % " ELSIF Cnt=4 THEN DATA := 13; % " ELSIF Cnt=5 THEN DATA := 13; % " ELSIF Cnt=6 THEN DATA := 13; % " ELSIF Cnt=7 THEN DATA := 13; % " ELSIF Cnt=8 THEN DATA := 13; % " ENDIF; ); DATA[4] <- RWORD( IF Cnt=0 THEN IF DO14 THEN DATA:=65280; ELSE DATA:=0; ENDIF; ELSIF Cnt=1 THEN IF DO14 THEN DATA:=65280; ELSE DATA:=0; ENDIF; ELSIF Cnt=2 THEN IF DO14 THEN DATA:=65280; ELSE DATA:=0; ENDIF; ELSIF Cnt=3 THEN IF DO14 THEN DATA:=65280; ELSE DATA:=0; ENDIF; ELSIF Cnt=4 THEN IF DO14 THEN DATA:=65280; ELSE DATA:=0; ENDIF; ELSIF Cnt=5 THEN IF DO14 THEN DATA:=65280; ELSE DATA:=0; ENDIF; ELSIF Cnt=6 THEN IF DO14 THEN DATA:=65280; ELSE DATA:=0; ENDIF; ELSIF Cnt=7 THEN IF DO14 THEN DATA:=65280; ELSE DATA:=0; ENDIF; ELSIF Cnt=8 THEN IF DO14 THEN DATA:=65280; ELSE DATA:=0; ENDIF; ENDIF; Cnt := Cnt + 1; ); ANSWER SIZE 8 DATA[0] = BYTE(Id); DATA[1] = HEX(05); TIMEOUT 1000 END; END; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Device definition for IVT REGO 5002, 5003, 5004, 5005 % % Settings module: % Parity: None % Baud: 9600 % Mode: RTU % % READ Analog input 1-20 (Alarms) % Larmstatus i REGO % 1: Normal /Ej larm % 2: Blockerad % 3: Kvitterad % 4: reserverad % 5: Återgången % 6: reserverad % 7: Utlöst % % Author: Peter Widetun, ABELKO AB Luleå % History: 2010-02-12 inital version % DEVICETYPE IvtRego5005AI1 NAMED "IVTREGO AI1-20" TYPEID 21342 IS PARAMETER Id :"Adress"; PUBLIC R01 : "Givarfel T1 FrL" ; %30001 Larm01, T1 framledning givarfel R02 : "Givarfel T2 UTE" ; %30002 Larm02, T2 ute givarfel R03 : "Larm T1Reg.avv." ; %30003 Larm03, T1 regleravvikelse R04 : "Larm T3Låg SliT" ; %30004 Larm04, T3 slingtank låg temperatur R05 : "Givarfel T9 Vin" ; %30005 Larm05, T9 värme in givarfel R06 : "Givarf T10 KBin" ; %30006 Larm06, T10 köldbärare in givarfel R07 : "Givarf T11 KBut" ; %30007 Larm07, T11 köldbärare ut givarfel R08 : "Larm elfel KPR" ; %30008 Larm08, Kompressor elfel R09 : "Larm G3Överhet." ; %30009 Larm09, G3 överhettad R10 : "Givarfel T3 ST" ; %30010 Larm10, T3 slingtank givarfel R11 : "Larm KPR överh." ; %30011 Larm11, Kompressor överhettad R12 : "Givarfel T6 Het" ; %30012 Larm12, T6 hetgas givarfel R13 : "Larm T6Hög HetG" ; %30013 Larm13, T6 hetgas hög temperatur R14 : "Givarfel T8 Vut" ; %30014 Larm14, T8 värme ut givarfel R15 : "Larm tryck Förå" ; %30015 Larm15, Förångare lågt tryck R16 : "Larm tryck Kyla" ; %30016 Larm16, B31 lågt tryck kyla R17 : "Larm sum E11 TS" ; %30017 Larm17, E11 tillskott summalarm R18 : "Larm tryck Kond" ; %30018 Larm18, Kondensor högt tryck R19 : "Larm fasfö. KPR" ; %30019 Larm19, Kompressor fasföljdfel R20 : "Larm drift G1FL" ; %30020 Larm20, G1 framledning driftfel PRIVATE BAUDRATE 9600; CHECKSUM MODBUS SWAPPED; TELEGRAM ReadAI1 NAMED "Läs AI1-20larm" IS QUESTION DATA[0] := BYTE(Id); % Modbus unit address DATA[1] := HEX(04); % Modbus command "04h" Read registers DATA[2] := RWORD(0); % Start address register DATA[4] := RWORD(20); % Number of registers ANSWER SIZE 45 DATA[0] = BYTE(Id); % ID DATA[1] = HEX(04); % Modbus command "04h" Read registers DATA[2] = BYTE(40); % Byte count DATA[3] -> RWORD(R01:= DATA;); % Larm01 Larmstatus i REGO DATA[5] -> RWORD(R02:= DATA;); % Larm02 1: Normal /Ej larm DATA[7] -> RWORD(R03:= DATA;); % Larm03 2: Blockerad DATA[9] -> RWORD(R04:= DATA;); % Larm04 3: Kvitterad DATA[11] -> RWORD(R05:= DATA;); % Larm05 4: reserverad DATA[13] -> RWORD(R06:= DATA;); % Larm06 5: Återgången DATA[15] -> RWORD(R07:= DATA;); % Larm07 6: reserverad DATA[17] -> RWORD(R08:= DATA;); % Larm08 7: Utlöst DATA[19] -> RWORD(R09:= DATA;); % Larm09 DATA[21] -> RWORD(R10:= DATA;); % Larm10 DATA[23] -> RWORD(R11:= DATA;); % Larm11 DATA[25] -> RWORD(R12:= DATA;); % Larm12 DATA[27] -> RWORD(R13:= DATA;); % Larm13 DATA[29] -> RWORD(R14:= DATA;); % Larm14 DATA[31] -> RWORD(R15:= DATA;); % Larm15 DATA[33] -> RWORD(R16:= DATA;); % Larm16 DATA[35] -> RWORD(R17:= DATA;); % Larm17 DATA[37] -> RWORD(R18:= DATA;); % Larm18 DATA[39] -> RWORD(R19:= DATA;); % Larm19 DATA[41] -> RWORD(R20:= DATA;); % Larm20 TIMEOUT 1000 END; END; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Device definition for IVT REGO 5002, 5003, 5004, 5005 % % Settings module: % Parity: None % Baud: 9600 % Mode: RTU % % READ Analog input 21-40 (Alarms) % Larmstatus i REGO % 1: Normal /Ej larm % 2: Blockerad % 3: Kvitterad % 4: reserverad % 5: Återgången % 6: reserverad % 7: Utlöst % % Author: Peter Widetun, ABELKO AB Luleå % History: 2010-02-12 inital version % DEVICETYPE IvtRego5005AI2 NAMED "IVTREGO AI21-40" TYPEID 21343 IS PARAMETER Id :"Adress"; PUBLIC R21 : "Larm Minnesbatt"; %30021 Larm21, Minnesbatteri dåligt R22 : "Larm Systemlösn"; %30022 Larm22, Ogiltig systemlösning R23 : "Larm Handl. Utg"; %30023 Larm23, Utgång i handläge R24 : "Larm T8Hög Vut" ; %30024 Larm24, T8 värme ut hög temperatur R25 : "Larm T3Hög ST" ; %30025 Larm25, T3 slingtank hög temperatur R26 : "Larm Konden.sil"; %30026 Larm26, Kondensor igensatt sil R27 : "Larm Kondensflö"; %30027 Larm27, Kondensflöde för stort R28 : "Larm Förång.sil"; %30028 Larm28, Förångare igensatt sil R29 : "Larm E21 Gå.Tid"; %30029 Larm29, E21 för kort gångtid R30 : "Larm E11 Låg te"; %30030 Larm30, E11 tillskott låg temperatur R31 : "Larm T9Hög Vin" ; %30031 Larm31, T9 värme in hög temperatur R32 : "Larm T10LågKBin"; %30032 Larm32, T10 köldbärare in låg temperatur R33 : "Larm T11LågKBut"; %30033 Larm33, T11 köldbärare ut låg temperatur R34 : "Larm G2Överhet."; %30034 Larm34, G2 överhettad R35 : "AI1-mode (0-4)" ; %30035 AI1: Används ej, T3 slingtank, T3 regulator, T18 regulator, T18 VPshunt R36 : "Värmepumpstyp" ; %30036 Värmepumpstyp: 1F[0], 2F[1] R37 : "Tillskottstyp" ; %30037 Tillskottstyp: Ingen[0], El[1], Olja[2], FJV[3] R38 : "Eftervärme VV" ; %30038 Eftervärmning VV: Ingen[0], El[1], FJV[2] R39 : "Värme VV steg2" ; %30039 Värmning VV steg2: Ingen[0], Hetgas[1] R40 : "Värme VV steg1" ; %30040 Värmning VV steg1: Ingen[0], Värmepump[1] PRIVATE BAUDRATE 9600; CHECKSUM MODBUS SWAPPED; TELEGRAM ReadAI1 NAMED "Läs AI21-40" IS QUESTION DATA[0] := BYTE(Id); % Modbus unit address DATA[1] := HEX(04); % Modbus command "04h" Read registers DATA[2] := RWORD(20); % Start address register DATA[4] := RWORD(20); % Number of registers ANSWER SIZE 45 DATA[0] = BYTE(Id); % ID DATA[1] = HEX(04); % Modbus command "04h" Read registers DATA[2] = BYTE(40); % Byte count DATA[3] -> RWORD(R21:= DATA;); %Larm21 Larmstatus i REGO DATA[5] -> RWORD(R22:= DATA;); %Larm22 1: Normal /Ej larm DATA[7] -> RWORD(R23:= DATA;); %Larm23 2: Blockerad DATA[9] -> RWORD(R24:= DATA;); %Larm24 3: Kvitterad DATA[11] -> RWORD(R25:= DATA;); %Larm25 4: reserverad DATA[13] -> RWORD(R26:= DATA;); %Larm26 5: Återgången DATA[15] -> RWORD(R27:= DATA;); %Larm27 6: reserverad DATA[17] -> RWORD(R28:= DATA;); %Larm28 7: Utlöst DATA[19] -> RWORD(R29:= DATA;); %Larm29 DATA[21] -> RWORD(R30:= DATA;); %Larm30 DATA[23] -> RWORD(R31:= DATA;); %Larm31 DATA[25] -> RWORD(R32:= DATA;); %Larm32 DATA[27] -> RWORD(R33:= DATA;); %Larm33 DATA[29] -> RWORD(R34:= DATA;); %Larm34 DATA[31] -> RWORD(R35:= DATA;); %AI1 DATA[33] -> RWORD(R36:= DATA;); %Värmepumpstyp DATA[35] -> RWORD(R37:= DATA;); %Tillskottstyp DATA[37] -> RWORD(R38:= DATA;); %Eftervärmning VV DATA[39] -> RWORD(R39:= DATA;); %Värmning VV steg2 DATA[41] -> RWORD(R40:= DATA;); %Värmning VV steg1 TIMEOUT 1000 END; END; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Device definition for IVT REGO 5002, 5003, 5004, 5005 % % Settings module: % Parity: None % Baud: 9600 % Mode: RTU % % READ Analog input 41-60 % % Author: Peter Widetun, ABELKO AB Luleå % History: 2010-02-12 inital version % DEVICETYPE IvtRego5005AI3 NAMED "IVTREGO AI41-60" TYPEID 21344 IS PARAMETER Id :"Adress"; PUBLIC R41 : "Förvärmning VV" ; %30041 Förvärmning VV: Ingen[0], Värmesystem [1], FJV[2] R42 : "Systemlösning" ; %30042 Systemlösning (4 siffror) R43 : "Ärvärde T1 FL" ["°C"]; %30043 Ärvärde, T1 framledning 10* R44 : "Ärvärde T2 UTE" ["°C"]; %30044 Ärvärde, T2 ute 10* R45 : "Ärvärde T3 ST" ["°C"]; %30045 Ärvärde, T3 slingtank 10* R46 : "Ärvärde T6 HetG" ["°C"]; %30046 Ärvärde, T6 hetgas 10* R47 : "Ärvärde T8 Vut" ["°C"]; %30047 Ärvärde, T8 värme ut 10* R48 : "Ärvärde T9 Vin" ["°C"]; %30048 Ärvärde, T9 värme in 10* R49 : "Ärvärde T10 Kin" ["°C"]; %30049 Ärvärde, T10 kyla in 10* R50 : "Ärvärde T11 Kut" ["°C"]; %30050 Ärvärde, T11 kyla ut 10* R51 : "Börvärde T1 FL" ["°C"]; %30051 Börvärde, T1 framledning 10* R52 : "Graddagar" ; %30052 Graddagar R53 : "Drifttid E11 TS" ; %30053 Drifttid, E11 (Tillskott) R54 : "Starter E11 TS" ; %30054 Starter, E11 (Tillskott) R55 : "Drifttid E21 VP" ; %30055 Drifttid, E21 (Värmepump) R56 : "Starter E21 VP" ; %30056 Starter, E21 (Värmepump) R57 : "Drifttid G1 RaP" ; %30057 Drifttid, G1 (Radiatorpump) R58 : "Starter G1 RaP" ; %30058 Starter, G1 (Radiatorpump) R59 : "Drifttid G5 HGP" ; %30059 Drifttid, G5 (Hetgaspump) R60 : "Starter G5 HGP" ; %30060 Starter, G5 (Hetgaspump) PRIVATE BAUDRATE 9600; CHECKSUM MODBUS SWAPPED; TELEGRAM ReadAI1 NAMED "Läs AI41-60" IS QUESTION DATA[0] := BYTE(Id); % Modbus unit address DATA[1] := HEX(04); % Modbus command "04h" Read registers DATA[2] := RWORD(40); % Start address register DATA[4] := RWORD(20); % Number of registers ANSWER SIZE 45 DATA[0] = BYTE(Id); % ID DATA[1] = HEX(04); % Modbus command "04h" Read registers DATA[2] = BYTE(40); % Byte count DATA[3] -> RWORD(R41:= DATA;); % Förvärmning VV: Ingen[0], Värmesystem [1], FJV[2] DATA[5] -> RWORD(R42:= DATA;); % Systemlösning (4 siffror) DATA[7] -> RWORD(IF (DATA>=32768) THEN R43:=(DATA-65536)/10; ELSE R43:=DATA/10; ENDIF;); % Ärvärde T1 framledning 10* DATA[9] -> RWORD(IF (DATA>=32768) THEN R44:=(DATA-65536)/10; ELSE R44:=DATA/10; ENDIF;); % Ärvärde T2 ute 10* DATA[11] -> RWORD(IF (DATA>=32768) THEN R45:=(DATA-65536)/10; ELSE R45:=DATA/10; ENDIF;); % Ärvärde T3 slingtank 10* DATA[13] -> RWORD(IF (DATA>=32768) THEN R46:=(DATA-65536)/10; ELSE R46:=DATA/10; ENDIF;); % Ärvärde T6 hetgas 10* DATA[15] -> RWORD(IF (DATA>=32768) THEN R47:=(DATA-65536)/10; ELSE R47:=DATA/10; ENDIF;); % Ärvärde T8 värme ut 10* DATA[17] -> RWORD(IF (DATA>=32768) THEN R48:=(DATA-65536)/10; ELSE R48:=DATA/10; ENDIF;); % Ärvärde T9 värme in 10* DATA[19] -> RWORD(IF (DATA>=32768) THEN R49:=(DATA-65536)/10; ELSE R49:=DATA/10; ENDIF;); % Ärvärde T10 kyla in 10* DATA[21] -> RWORD(IF (DATA>=32768) THEN R50:=(DATA-65536)/10; ELSE R50:=DATA/10; ENDIF;); % Ärvärde T11 kyla ut 10* DATA[23] -> RWORD(IF (DATA>=32768) THEN R51:=(DATA-65536)/10; ELSE R51:=DATA/10; ENDIF;); % Börvärde T1 framledning 10* DATA[25] -> RWORD(R52:= DATA;); % Graddagar DATA[27] -> RWORD(R53:= DATA;); % Drifttid E11 (Tillskott) DATA[29] -> RWORD(R54:= DATA;); % Starter E11 (Tillskott) DATA[31] -> RWORD(R55:= DATA;); % Drifttid E21 (Värmepump) DATA[33] -> RWORD(R56:= DATA;); % Starter E21 (Värmepump) DATA[35] -> RWORD(R57:= DATA;); % Drifttid G1 (Radiatorpump) DATA[37] -> RWORD(R58:= DATA;); % Starter G1 (Radiatorpump) DATA[39] -> RWORD(R59:= DATA;); % Drifttid G5 (Hetgaspump) DATA[41] -> RWORD(R60:= DATA;); % Starter G5 (Hetgaspump) TIMEOUT 1000 END; END; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Device definition for IVT REGO 5002, 5003, 5004, 5005 % % Settings module: % Parity: None % Baud: 9600 % Mode: RTU % % READ Analog input 61-80 (Alarms) % Larmstatus i REGO % 1: Normal /Ej larm % 2: Blockerad % 3: Kvitterad % 4: reserverad % 5: Återgången % 6: reserverad % 7: Utlöst % % Author: Peter Widetun, ABELKO AB Luleå % History: 2010-02-12 inital version % 2012-12-21 chnged T3/4,18 to T3/4.18 % DEVICETYPE IvtRego5005AI4 NAMED "IVTREGO AI61-80" TYPEID 21345 IS PARAMETER Id :"Adress"; PUBLIC R61 : "Driftt. G7LaddP"; %30061 Drifttid, G7 (Laddpump) R62 : "Starter G7LaddP"; %30062 Starter, G7 (Laddpump) R63 : "Driftt. Q21Vent"; %30063 Drifttid, Q21 (Växelventil) R64 : "Starter Q21Vent"; %30064 Starter, Q21 (Växelventil) R65 : "Status Q10Shunt"; %30065 Status, Q10 (Shunt) R66 : "Status Q21VXV" ; %30066 Status, Q21 (VXV) R67 : "Status Q40Shunt"; %30067 Status, Q40 (Shunt) R68 : "Larm B31FlödeKy"; %30068 Larmstatus no.35, B31 lågt flöde kyla R69 : "Larm S.spänning"; %30069 Larmstatus no.36, Tillfällig låg systemspänning R70 : "Givarfel T4VV" ; %30070 Larmstatus no.37, T4 varmvatten givarfel R71 : "Givarfel T7VVac"; %30071 Larmstatus no.38, T7 VV-ackumulator givarfel R72 : "Larm B21Tryck V"; %30072 Larmstatus no.39, B21 lågt tryck värme R73 : "Larm T4VV Reg.a"; %30073 Larmstatus no.40, T4 varmvatten regleravvikelse R74 : "Larm Kom.fel" ; %30074 Larmstatus no.41, Kommunikationsfel R75 : "Status KPR" ; %30075 Status kompressor: 0=Från, 1=Pumpstart, 2=Kontroll, 3=Kompressorstart, 4=Drift, 5=Stannar, 6=Larm R76 : "Börvär. T3/4.18"; %30076 T3/T4 (E21), T18 (E22) – Börvärde 5004 R77 : "T4 Temp VV" ; %30077 T4 Varmvatten (E22) 10* 5004 R78 : "T7 Temp AckTank"; %30078 T7 AckTank (E22) 10* 5004 R79 : "T18 Fjärrvärme" ; %30079 T18 Fjärrvärme (E22) samma börvärde som T1 10* 5004 R80 : "Drifttid G2VBp" ; %30080 Drifttid, G2 låg hastighet (värmebärarpump) 10* 5004 PRIVATE BAUDRATE 9600; CHECKSUM MODBUS SWAPPED; TELEGRAM ReadAI4 NAMED "Läs AI61-80" IS QUESTION DATA[0] := BYTE(Id); % Modbus unit address DATA[1] := HEX(04); % Modbus command "04h" Read registers DATA[2] := RWORD(60); % Start address register DATA[4] := RWORD(20); % Number of registers ANSWER SIZE 45 DATA[0] = BYTE(Id); % ID DATA[1] = HEX(04); % Modbus command "04h" Read registers DATA[2] = BYTE(40); % Byte count DATA[3] -> RWORD(R61:= DATA;); DATA[5] -> RWORD(R62:= DATA;); DATA[7] -> RWORD(R63:= DATA;); DATA[9] -> RWORD(R64:= DATA;); DATA[11] -> RWORD(R65:= DATA;); DATA[13] -> RWORD(R66:= DATA;); DATA[15] -> RWORD(R67:= DATA;); DATA[17] -> RWORD(R68:= DATA;); DATA[19] -> RWORD(R69:= DATA;); DATA[21] -> RWORD(R70:= DATA;); DATA[23] -> RWORD(R71:= DATA;); DATA[25] -> RWORD(R72:= DATA;); DATA[27] -> RWORD(R73:= DATA;); DATA[29] -> RWORD(R74:= DATA;); DATA[31] -> RWORD(R75:= DATA;); DATA[33] -> RWORD(R76:= DATA;); %Börvärde 5004 DATA[35] -> RWORD(IF (DATA>=32768) THEN R77:=(DATA-65536)/10; ELSE R77:=DATA/10; ENDIF;); %10* 5004 DATA[37] -> RWORD(IF (DATA>=32768) THEN R78:=(DATA-65536)/10; ELSE R78:=DATA/10; ENDIF;); %10* 5004 DATA[39] -> RWORD(IF (DATA>=32768) THEN R79:=(DATA-65536)/10; ELSE R79:=DATA/10; ENDIF;); %10* 5004 DATA[41] -> RWORD(IF (DATA>=32768) THEN R80:=(DATA-65536)/10; ELSE R80:=DATA/10; ENDIF;); %10* 5004 TIMEOUT 1000 END; END; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Device definition for IVT REGO 5002, 5003, 5004, 5005 % % Settings module: % Parity: None % Baud: 9600 % Mode: RTU % % READ Analog input 81-100 % % Author: Peter Widetun, ABELKO AB Luleå % History: 2010-02-12 inital version % DEVICETYPE IvtRego5005AI5 NAMED "IVTREGO AI-100" TYPEID 21346 IS PARAMETER Id :"Adress"; PUBLIC R81 : "Starter G2 VBp"; %30081 Starter, G2 låg hastighet (värmebärarpump) 10* 5002, 5004 %R82 : ""; %30082 %R83 : ""; %30083 %R84 : ""; %30084 %R85 : ""; %30085 %R86 : ""; %30086 %R87 : ""; %30087 %R88 : ""; %30088 %R89 : ""; %30089 %R90 : ""; %30090 R91 : "Larm KPR strömb"; %30091 Larmstatus no.46, Kompressor strömbrytare 5004 %R92 : ""; %30092 %R93 : ""; %30093 %R94 : ""; %30094 %R95 : ""; %30095 %R96 : ""; %30096 %R97 : ""; %30097 %R98 : ""; %30098 %R99 : ""; %30099 R100: "Rego Version" ; %30100 Rego500X Versionsnummer (X = Värmepumpstyp) PRIVATE BAUDRATE 9600; CHECKSUM MODBUS SWAPPED; TELEGRAM ReadAI4 NAMED "Läs AI61-80" IS QUESTION DATA[0] := BYTE(Id); % Modbus unit address DATA[1] := HEX(04); % Modbus command "04h" Read registers DATA[2] := RWORD(80); % Start address register DATA[4] := RWORD(20); % Number of registers ANSWER SIZE 45 DATA[0] = BYTE(Id); % ID DATA[1] = HEX(04); % Modbus command "04h" Read registers DATA[2] = BYTE(40); % Byte count DATA[3] -> RWORD(R81 := DATA/10;); %10* 5004 %DATA[5] -> RWORD(R82 := DATA;); %DATA[7] -> RWORD(R83 := DATA;); %DATA[9] -> RWORD(R84 := DATA;); %DATA[11] -> RWORD(R85 := DATA;); %DATA[13] -> RWORD(R86 := DATA;); %DATA[15] -> RWORD(R87 := DATA;); %DATA[17] -> RWORD(R88 := DATA;); %DATA[19] -> RWORD(R89 := DATA;); %DATA[21] -> RWORD(R90 := DATA;); DATA[23] -> RWORD(R91 := DATA;); %KPR strömbrytare 5004 %DATA[25] -> RWORD(R92 := DATA;); %DATA[27] -> RWORD(R93 := DATA;); %DATA[29] -> RWORD(R94 := DATA;); %DATA[31] -> RWORD(R95 := DATA;); %DATA[33] -> RWORD(R96 := DATA;); %DATA[35] -> RWORD(R97 := DATA;); %DATA[37] -> RWORD(R98 := DATA;); %DATA[39] -> RWORD(R99 := DATA;); DATA[41] -> RWORD(R100:= DATA;); %Rego500X Versionsnummer TIMEOUT 1000 END; END; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Device definition for IVT REGO 5002, 5003, 5004, 5005 % % Settings module: % Parity: None % Baud: 9600 % Mode: RTU % % Telegram for setting Analog status % Select registers for setting. % Maximum 9 registers can be selected in a device. % % Author: Peter Widetun, ABELKO AB Luleå % History: 2010-02-12 inital version % DEVICETYPE IvtRego5005AO1 NAMED "IVTREGO StällAU" TYPEID 21347 IS PARAMETER Id : "Adress"; %S01 : "X1 Kurva FramL" ["°C"]; %40001 X1, framledningskurva (T1/T2) %S02 : "X2 Kurva FramL" ["°C"]; %40002 X2, framledningskurva (T1/T2) %S03 : "X3 Kurva FramL" ["°C"]; %40003 X3, framledningskurva (T1/T2) %S04 : "X4 Kurva FramL" ["°C"]; %40004 X4, framledningskurva (T1/T2) %S05 : "X5 Kurva FramL" ["°C"]; %40005 X5, framledningskurva (T1/T2) %S06 : "X6 Kurva FramL" ["°C"]; %40006 X6, framledningskurva (T1/T2) %S07 : "X7 Kurva FramL" ["°C"]; %40007 X7, framledningskurva (T1/T2) %S08 : "Y1 Kurva FramL" ["°C"]; %40008 Y1, framledningskurva (T1/T2) %S09 : "Y2 Kurva FramL" ["°C"]; %40009 Y2, framledningskurva (T1/T2) %S10 : "Y3 Kurva FramL" ["°C"]; %40010 Y3, framledningskurva (T1/T2) %S11 : "Y4 Kurva FramL" ["°C"]; %40011 Y4, framledningskurva (T1/T2) %S12 : "Y5 Kurva FramL" ["°C"]; %40012 Y5, framledningskurva (T1/T2) %S13 : "Y6 Kurva FramL" ["°C"]; %40013 Y6, framledningskurva (T1/T2) %S14 : "Y7 Kurva FramL" ["°C"]; %40014 Y7, framledningskurva (T1/T2) %S15 : "Min temp FramL" ["°C"]; %40015 Minbegränsning, framledningskurva (T1/T2) %S16 : "Max temp FramL" ["°C"]; %40016 Maxbegränsning, framledningskurva (T1/T2) %S17 : "BV-förskjFramL" ["°C"]; %40017 Parallelförskjutning, framledningskurva (T1/T2) 10* %S18 : "RegFrL P-värde" [""]; %40018 Regulator P, framledning (T1) 10* %S19 : "RegFrL I-värde" [""]; %40019 Regulator I, framledning (T1) %S20 : "RegFrL D-värde" [""]; %40020 Regulator D, framledning (T1) 10* %S21 : "RegFrL D-max" [""]; %40021 Regulator Dmax, framledning (T1) %S22 : "RegFjV P-värde" [""]; %40022 Regulator P, fjärrvärme (T18) 10* %S23 : "RegFjV I-värde" [""]; %40023 Regulator I, fjärrvärme (T18) %S24 : "RegFjV D-värde" [""]; %40024 Regulator D, fjärrvärme (T18) 10* %S25 : "RegFjV D-max" [""]; %40025 Regulator Dmax, fjärrvärme (T18) %S26 : "Larmg.T3 hög" ["°C"]; %40026 Larmgräns, hög temperatur (T3) %S27 : "Larmg.T3 låg" ["°C"]; %40027 Larmgräns, låg temperatur (T3) %S28 : "Startg.T2" ["°C"]; %40028 Startgräns, G1 (T2) 10* %S29 : "Startg.T2direk" ["°C"]; %40029 Direktstartsgräns, G1 (T2) 10* %S30 : "Stoppg.T2" ["°C"]; %40030 Stoppgräns, G1 (T2) 10* %S31 : "Startg.T1 hyst" ["°C"]; %40031 Starthysteres, tillskottsvärme (T1) 10* %S32 : "Stoppg.T1 hyst" ["°C"]; %40032 Stopphysteres, varmvattenladdning (T1) 10* %S33 : "Fördröj status" ["min"]; %40033 Fördröjning Statusförändring kompressor (minuter) %S34 : "Motionskör G1" ["t"]; %40034 Motionskörning, G1 (kalendertimme) %S35 : "Startg.T3 ladd" ["°C"]; %40035 Startgräns, slingtanksladdning (T3) %S36 : "Stoppg.T3 ladd" ["°C"]; %40036 Stoppgräns, slingtanksladdning (T3) %S37 : "Ming.T1 ladd" ["°C"]; %40037 Minbegränsning, T1 vid slingtanksladdning (grader under T1 börvärde) %S38 : "Fråntid ladd" [""]; %40038 Tidskonstant, frånkoppling slingtanksladdning om under minbegränsning %S39 : "Startt.A Vard" [""]; %40039 Tidkanal A-Larm Vardag Fr.o.m. Kl. %S40 : "Stoppt.A Vard" [""]; %40040 Tidkanal A-Larm Vardag T.o.m. Kl. %S41 : "Startt.A Lörd" [""]; %40041 Tidkanal A-Larm Lördag Fr.o.m. Kl. %S42 : "Stoppt.A Lörd" [""]; %40042 Tidkanal A-Larm Lördag T.o.m. Kl. %S43 : "Startt.A Sönd" [""]; %40043 Tidkanal A-Larm Söndag Fr.o.m. Kl. %S44 : "Stoppt.A Sönd" [""]; %40044 Tidkanal A-Larm Söndag T.o.m. Kl. %S45 : "Startt.B Vard" [""]; %40045 Tidkanal B-Larm Vardag Fr.o.m. Kl. %S46 : "Stoppt.B Vard" [""]; %40046 Tidkanal B-Larm Vardag T.o.m. Kl. %S47 : "Startt.B Lörd" [""]; %40047 Tidkanal B-Larm Lördag Fr.o.m. Kl. %S48 : "Stoppt.B Lörd" [""]; %40048 Tidkanal B-Larm Lördag T.o.m. Kl. %S49 : "Startt.B Sönd" [""]; %40049 Tidkanal B-Larm Söndag Fr.o.m. Kl. %S50 : "Stoppt.B Sönd" [""]; %40050 Tidkanal B-Larm Söndag T.o.m. Kl. %S51 : "Fördröj Res.A" [""]; %40051 Fördröjning Reserv A-Larm %S52 : "Fördröj Res.B" [""]; %40052 Fördröjning Reserv B-Larm %S53 : "Larmsänd (0-2)" [""]; %40053 Larmsändning: Från[0], Till[1], Auto[2] %S54 : "Startt.Dag Var" [""]; %40054 Tidkanal Dagtid Vardag Fr.o.m. Kl. %S55 : "Stoppt.Dag Var" [""]; %40055 Tidkanal Dagtid Vardag T.o.m. Kl. %S56 : "Startt.Dag Lör" [""]; %40056 Tidkanal Dagtid Lördag Fr.o.m. Kl. %S57 : "Stoppt.Dag Lör" [""]; %40057 Tidkanal Dagtid Lördag T.o.m. Kl. %S58 : "Startt.Dag Sön" [""]; %40058 Tidkanal Dagtid Söndag Fr.o.m. Kl. %S59 : "Stoppt.Dag Sön" [""]; %40059 Tidkanal Dagtid Söndag T.o.m. Kl. %S60 : "Status Dag" [""]; %40060 Status, dagtidskanal (SMS) %S61 : "Max koppl.diff" ["°C"]; %40061 Maximal kopplingsdifferens (T1) %S62 : "Min koppl.diff" ["°C"]; %40062 Minimal kopplingsdifferens (T1) %S63 : "Tid koppl.diff" [""]; %40063 Tidskonstant för kopplingsdifferens (T1) %S64 : "Larm kvittering" [""]; %40064 Larmkvittering (ange no.xx, se larmstatus) %S65 : "Larm blockering" [""]; %40065 Larmblockering (ange no.xx, se larmstatus) %S66 : "Larm block. av" [""]; %40066 Larmavblockering (ange no.xx, se larmstatus) %S67 : "Larmg.T1reg.avv" ["°C"]; %40067 Larmgräns, regleravvikelse framledning (T1) %S68 : "Startfördr.G1FL" [""]; %40068 Startfördröjning, G1 (Framledning) %S69 : "Stoppfördr.G1FL" [""]; %40069 Stoppfördröjning, G1 (Framledning) %S70 : "Startfördr.E11T" [""]; %40070 Startfördröjning, E11 (Tillskott) %S71 : "Stoppfördr.E11T" [""]; %40071 Stoppfördröjning, E11 (Tillskott) %S72 : "Larmfördr.T3låg" [""]; %40072 Larmfördröjning, låg temperatur slingtank (T3) %S73 : "Larmfördr.T3hög" [""]; %40073 Larmfördröjning, hög temperatur slingtank (T3) %S74 : "BV-funk (0-1)" [""]; %40074 Börvärdesfunktion T1: Kurva[0], Fast[1] %S75 : "T7-funk (0-2)" [""]; %40075 Funktion T7: Från[0], Ute(T2)[1], VV-ackumulator(T7)[2] %S76 : "Status Rego5055" [""]; %40076 Status Rego5055 (används ej) %S77 : "Stoppg.T3STladd" ["°C"]; %40077 Stoppgräns, slingtanksladdning (T3) 10* %S78 : "Ärvärde T5 rum" ["°C"]; %40078 Ärvärde, T5 rumsgivare 10* %S79 : "Börvärdesförskj" ["°C"]; %40079 Börvärdesförskjutning, T5 rumsgivare 10* S80 : "Börvärde T1 FL" ["°C"]; %40080 Fast börvärde, T1 framledning 10* %S81 : "Ärvärde T1 FL" ["°C"]; %40081 Ärvärde, T1 framledning 10* %S82 : "Ärvärde T2 UTE" ["°C"]; %40082 Ärvärde, T2 ute 10* %S83 : "Ärvärde T3 ST" ["°C"]; %40083 Ärvärde, T3 slingtank 10* %S84 : "Klocka minuter" [""]; %40084 Klocka, minuter [0-59] %S85 : "Klocka timmar" [""]; %40085 Klocka, timmar [0-23] %S86 : "Klocka datum" [""]; %40086 Klocka, datum [1-31] %S87 : "Klocka veckodag" [""]; %40087 Klocka, veckodag [1-7, 1=måndag] %S88 : "Klocka vecka" [""]; %40088 Klocka, vecka [1-53] %S89 : "Klocka år" [""]; %40089 Klocka, år [0-99] %S90 : "Klocka månad" [""]; %40090 Klocka, månad [1-12] %S91 : "Börv. E21/E22" ["°C"]; %40091 T3/T4 (E21), T18 (E22) – Börvärde %S92 : "Startg.T3SLladd" ["°C"]; %40092 T3 Slingtanksladdning, starthysteres 10* PUBLIC PRIVATE Cnt; BAUDRATE 9600; CHECKSUM MODBUS SWAPPED; TELEGRAM WriteSet NAMED "Ställ register" IS QUESTION DATA[0] := BYTE(Id); % Modbus unit address DATA[1] := HEX(06); % Modbus command "0x06" write singel register DATA[2] <- RWORD( % Register address IF Cnt>8 THEN Cnt:=0; ENDIF; IF Cnt=0 THEN DATA:=79; %40080 Fast börvärde, T1 framledning 10* ELSIF Cnt=1 THEN DATA:=79; ELSIF Cnt=2 THEN DATA:=79; ELSIF Cnt=3 THEN DATA:=79; ELSIF Cnt=4 THEN DATA:=79; ELSIF Cnt=5 THEN DATA:=79; ELSIF Cnt=6 THEN DATA:=79; ELSIF Cnt=7 THEN DATA:=79; ELSIF Cnt=8 THEN DATA:=79; ENDIF; ); DATA[4] <- RWORD( % Register value IF Cnt=0 THEN DATA:=(S80*10); %40080 Fast börvärde, T1 framledning 10* ELSIF Cnt=1 THEN DATA:=(S80*10); ELSIF Cnt=2 THEN DATA:=(S80*10); ELSIF Cnt=3 THEN DATA:=(S80*10); ELSIF Cnt=4 THEN DATA:=(S80*10); ELSIF Cnt=5 THEN DATA:=(S80*10); ELSIF Cnt=6 THEN DATA:=(S80*10); ELSIF Cnt=7 THEN DATA:=(S80*10); ELSIF Cnt=8 THEN DATA:=(S80*10); ENDIF; Cnt:=Cnt+1; ); ANSWER SIZE 8 DATA[0] = BYTE(Id); DATA[1] = HEX(06); TIMEOUT 1000 END; END;