IV AHU Läs Ärvärden
Detaljer
- Typ
- Drivrutin
- Upplaggd av
- Ove Jansson, Abelko Innovation
- Version
- 3
- Uppdaterad
- 2015-04-22
- Skapad
- 2015-04-22
- Kategori
- Ventilation
- Visningar
- 1983
Beskrivning
Observera att detta är för kommunikation med den enklare standardstyrningen på IV aggregaten. Du kan också beställa aggregat från IV för styrning direkt från IMSE WMPro eller IMSE Ultra.
Bruksanvisning
.
Juridisk information
Alla skript tillhandahålls i befintligt skick och all användning sker på eget ansvar. Felaktig använding kan leda till skadad eller förstörd utrustning.
Skript kod
% Skapad med Modbus Creator
% - OBS! Användaren ansvarar själv för att samma TYPID inte används flera gånger i samma apparat.
% TYPID 10000-19999 är för användardefinierade enheter
DEVICETYPE AHUInput NAMED "AHUInput" TYPEID 16463 IS
PARAMETER
Id : "Adress";
PUBLIC
V1 : "OperatingMode" [""]; % 0=Off, 1=On/Comfort, 2=Economy, 3=Na, 4=Osstp, 5=Nightcooling, 6=Unoccupied (Temperature start), 7=Nightkick (Test temperature), 8=Firedamper test, 9=Fire, 10=Stop, 11=Overrun, 12=Startup
V2 : "FanStep" [""]; % 0=Off, 1=Stage1, 2=Stage2, 3=Stage3
V3 : "SupFanOutput" ["%"];
V4 : "ExhFanCmd" [""]; % 0=Off, 1=Stage1, 2=Stage2, 3=Stage3
V5 : "ExhFanOutput" ["%"];
V6 : "CoolingfOutput" ["%"];
V7 : "HeatRecOutput" ["%"];
V8 : "HeatOutput" ["%"];
V9 : "HeatPumpCmd" [""]; % 0=Off, 1=On
V10 : "GT41 Outside" ["°C"]DEC1;
V11 : "GT11 Supply" ["°C"]DEC1;
V12 : "GT81 HeatFrost" ["°C"]DEC1;
V13 : "GT12 Exhaust" ["°C"]DEC1;
V14 : "SupplyFlow" ["l/s"];
V15 : "ExhaustFlow" ["l/s"];
V16 : "SupplyPressure" ["Pa"];
V17 : "ExhaustPressure" ["Pa"];
V18 : "CoolRecActive" ["Pa"]; % 0=Passive, 1=Active
PRIVATE
count4;
tmp;
BAUDRATE 9600;
CHECKSUM MODBUS SWAPPED;
TELEGRAM Read4 NAMED "Read 4" IS
QUESTION
DATA[0] := BYTE(Id); % Enhetens Modbus adress
DATA[1] := HEX(04); % Modbus kommando för att läsa register
DATA[2] <- RWORD(
IF(count4>17) THEN count4 := 0; ENDIF;
IF (count4=0) THEN tmp := 16;
ELSIF (count4=1) THEN tmp := 17;
ELSIF (count4=2) THEN tmp := 28;
ELSIF (count4=3) THEN tmp := 29;
ELSIF (count4=4) THEN tmp := 30;
ELSIF (count4=5) THEN tmp := 32;
ELSIF (count4=6) THEN tmp := 35;
ELSIF (count4=7) THEN tmp := 39;
ELSIF (count4=8) THEN tmp := 40;
ELSIF (count4=9) THEN tmp := 71;
ELSIF (count4=10) THEN tmp := 72;
ELSIF (count4=11) THEN tmp := 73;
ELSIF (count4=12) THEN tmp := 75;
ELSIF (count4=13) THEN tmp := 94;
ELSIF (count4=14) THEN tmp := 95;
ELSIF (count4=15) THEN tmp := 96;
ELSIF (count4=16) THEN tmp := 97;
ELSIF (count4=17) THEN tmp := 117;
ENDIF;
DATA:= tmp;
);
DATA[4] := RWORD(01);
ANSWER SIZE 7
DATA[0] = BYTE(Id);
DATA[1] = BYTE(04);
DATA[3] -> RWORD(
IF (count4=0) THEN V1 := DATA;
ELSIF (count4=1) THEN V2 := DATA;
ELSIF (count4=2) THEN V3 := DATA;
ELSIF (count4=3) THEN V4 := DATA;
ELSIF (count4=4) THEN V5 := DATA;
ELSIF (count4=5) THEN V6 := DATA;
ELSIF (count4=6) THEN V7 := DATA;
ELSIF (count4=7) THEN V8 := DATA;
ELSIF (count4=8) THEN V9 := DATA;
ELSIF (count4=9) THEN IF (DATA>=32768) THEN V10:=(DATA-65536)/10; ELSE V10:=DATA/10; ENDIF;
ELSIF (count4=10) THEN IF (DATA>=32768) THEN V11:=(DATA-65536)/10; ELSE V11:=DATA/10; ENDIF;
ELSIF (count4=11) THEN IF (DATA>=32768) THEN V12:=(DATA-65536)/10; ELSE V12:=DATA/10; ENDIF;
ELSIF (count4=12) THEN IF (DATA>=32768) THEN V13:=(DATA-65536)/10; ELSE V13:=DATA/10; ENDIF;
ELSIF (count4=13) THEN V14 := DATA;
ELSIF (count4=14) THEN V15 := DATA;
ELSIF (count4=15) THEN V16 := DATA;
ELSIF (count4=16) THEN V17 := DATA;
ELSIF (count4=17) THEN V18 := DATA;
ENDIF;
count4 := count4+1;
);
TIMEOUT 300
END;
END;
% - OBS! Användaren ansvarar själv för att samma TYPID inte används flera gånger i samma apparat.
% TYPID 10000-19999 är för användardefinierade enheter
DEVICETYPE AHUInput NAMED "AHUInput" TYPEID 16463 IS
PARAMETER
Id : "Adress";
PUBLIC
V1 : "OperatingMode" [""]; % 0=Off, 1=On/Comfort, 2=Economy, 3=Na, 4=Osstp, 5=Nightcooling, 6=Unoccupied (Temperature start), 7=Nightkick (Test temperature), 8=Firedamper test, 9=Fire, 10=Stop, 11=Overrun, 12=Startup
V2 : "FanStep" [""]; % 0=Off, 1=Stage1, 2=Stage2, 3=Stage3
V3 : "SupFanOutput" ["%"];
V4 : "ExhFanCmd" [""]; % 0=Off, 1=Stage1, 2=Stage2, 3=Stage3
V5 : "ExhFanOutput" ["%"];
V6 : "CoolingfOutput" ["%"];
V7 : "HeatRecOutput" ["%"];
V8 : "HeatOutput" ["%"];
V9 : "HeatPumpCmd" [""]; % 0=Off, 1=On
V10 : "GT41 Outside" ["°C"]DEC1;
V11 : "GT11 Supply" ["°C"]DEC1;
V12 : "GT81 HeatFrost" ["°C"]DEC1;
V13 : "GT12 Exhaust" ["°C"]DEC1;
V14 : "SupplyFlow" ["l/s"];
V15 : "ExhaustFlow" ["l/s"];
V16 : "SupplyPressure" ["Pa"];
V17 : "ExhaustPressure" ["Pa"];
V18 : "CoolRecActive" ["Pa"]; % 0=Passive, 1=Active
PRIVATE
count4;
tmp;
BAUDRATE 9600;
CHECKSUM MODBUS SWAPPED;
TELEGRAM Read4 NAMED "Read 4" IS
QUESTION
DATA[0] := BYTE(Id); % Enhetens Modbus adress
DATA[1] := HEX(04); % Modbus kommando för att läsa register
DATA[2] <- RWORD(
IF(count4>17) THEN count4 := 0; ENDIF;
IF (count4=0) THEN tmp := 16;
ELSIF (count4=1) THEN tmp := 17;
ELSIF (count4=2) THEN tmp := 28;
ELSIF (count4=3) THEN tmp := 29;
ELSIF (count4=4) THEN tmp := 30;
ELSIF (count4=5) THEN tmp := 32;
ELSIF (count4=6) THEN tmp := 35;
ELSIF (count4=7) THEN tmp := 39;
ELSIF (count4=8) THEN tmp := 40;
ELSIF (count4=9) THEN tmp := 71;
ELSIF (count4=10) THEN tmp := 72;
ELSIF (count4=11) THEN tmp := 73;
ELSIF (count4=12) THEN tmp := 75;
ELSIF (count4=13) THEN tmp := 94;
ELSIF (count4=14) THEN tmp := 95;
ELSIF (count4=15) THEN tmp := 96;
ELSIF (count4=16) THEN tmp := 97;
ELSIF (count4=17) THEN tmp := 117;
ENDIF;
DATA:= tmp;
);
DATA[4] := RWORD(01);
ANSWER SIZE 7
DATA[0] = BYTE(Id);
DATA[1] = BYTE(04);
DATA[3] -> RWORD(
IF (count4=0) THEN V1 := DATA;
ELSIF (count4=1) THEN V2 := DATA;
ELSIF (count4=2) THEN V3 := DATA;
ELSIF (count4=3) THEN V4 := DATA;
ELSIF (count4=4) THEN V5 := DATA;
ELSIF (count4=5) THEN V6 := DATA;
ELSIF (count4=6) THEN V7 := DATA;
ELSIF (count4=7) THEN V8 := DATA;
ELSIF (count4=8) THEN V9 := DATA;
ELSIF (count4=9) THEN IF (DATA>=32768) THEN V10:=(DATA-65536)/10; ELSE V10:=DATA/10; ENDIF;
ELSIF (count4=10) THEN IF (DATA>=32768) THEN V11:=(DATA-65536)/10; ELSE V11:=DATA/10; ENDIF;
ELSIF (count4=11) THEN IF (DATA>=32768) THEN V12:=(DATA-65536)/10; ELSE V12:=DATA/10; ENDIF;
ELSIF (count4=12) THEN IF (DATA>=32768) THEN V13:=(DATA-65536)/10; ELSE V13:=DATA/10; ENDIF;
ELSIF (count4=13) THEN V14 := DATA;
ELSIF (count4=14) THEN V15 := DATA;
ELSIF (count4=15) THEN V16 := DATA;
ELSIF (count4=16) THEN V17 := DATA;
ELSIF (count4=17) THEN V18 := DATA;
ENDIF;
count4 := count4+1;
);
TIMEOUT 300
END;
END;
Användarnas noteringar
Du måste vara inloggad för att göra en notering. Bli medlem eller logga in. Vi använder en moderator som godkänner noteringarna innan de visas.