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
1979

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;

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.