Exhausto del 2

Detaljer

Typ
Drivrutin
Upplaggd av
Ove Jansson, Abelko Innovation
Version
1
Uppdaterad
2016-11-15
Skapad
2016-11-15
Kategori
Modbus, Ventilation
Visningar
2176

Beskrivning

OBS Skript för UltraBase30 och motsvarande

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 Exhausto2 NAMED "Exhausto2" TYPEID 18442 IS

 PARAMETER
  Id       : "Adress";

 PUBLIC
  V1 : "Fläkthastighet frånluft" ["%"]DEC1;
  V2 : "Fläkthastighet tilluft" ["%"]DEC1;
  V3 : "Tilluftspjäll status" [""]; % 0=stängd 1=öppen
  V4 : "Frånluftspjäll" [""];
  V5 : "Inställning luftreglering" [""]; % Detta register visar status för luftflödesregleringen. Värde 0 = OFF Värde 1 = Startar Värde 2 = Spjället öppnas Värde 3 = Frånluftsfläkten startar Värde 4 = Tilluftsfläkten startar Värde 5 = VEX i drift Värde 6 = VEX har stoppats men går i förlängd drift Värde 7 = Spjället stängs
  V6 : "Tryck frånluftsfläkt" ["Pa"];
  V7 : "Flöde frånluft" ["l/s"];
  V8 : "Tryck tilluftfläkt" ["Pa"];
  V9 : "Flöde tilluft" ["l/s"];
  V10 : "Kanaltryck frånluft" ["Pa"];
  V11 : "Kanaltryck tilluft" ["Pa"];
  V12 : "Börvärde konstant frånlufttryck" ["Pa"];
  V13 : "Återkoppling konstant frånlufttryck" ["Pa"];
  V14 : "Börvärde konstant tillufttryck" ["Pa"];
  V15 : "Återkoppling konstant frånlufttryck" ["Pa"];
  V16 : "Larm 1" [""];
  V17 : "Larm 2" [""];
  V18 : "Larm 3" [""];
  V19 : "Larm 4" [""];
  V20 : "Larm 5" [""];
  V21 : "Larm 6" [""];
  V22 : "Larm 7" [""];
  V23 : "Larm 8" [""];
  V24 : "Larm 9" [""];
  V25 : "Larm 10" [""];
  V26 : "Larm 11" [""];
  V27 : "Larm 12" [""];
  V28 : "Larm 13" [""];
  V29 : "Larm 14" [""];
  V30 : "Larm 15" [""];
  V31 : "Larm 16" [""];
  V32 : "Värmebatteri 1" ["%"]DEC1;
  V33 : "Värmeåtervinningsenhet" ["%"]DEC1;
  V34 : "Börvärde konstant tillufttemp" ["°C"]DEC1;
  V35 : "Återkoppling konstant tillufttemperatur" ["°C"]DEC1;
  V36 : "Börvärde värmebatteri 1" ["°C"]DEC1;
  V37 : "Börvärde Återvinningsenhet" ["°C"]DEC1;
  V38 : "Temperatur tilluft" ["°C"]DEC1;
  V39 : "Temperatur tilluft intern" ["°C"]DEC1;
  V40 : "Temperatur tilluft batteri 1" ["°C"]DEC1;
  V41 : "Temperaturgivare för uteluft" ["°C"]DEC1;
  V42 : "Temperaturgivare för uteluft intern" ["°C"]DEC1;
  V43 : " Temperaturgivare för avluft" ["°C"]DEC1;
  V44 : "Temperaturgivare för returvatten från värmebatteri 1" ["°C"]DEC1;
  V45 : "Temperaturgivare för returvatten från värmebatteri 1" ["°C"]DEC1;
  V46 : " Temperaturgivare för tilloppsvatten till värmebatteri 1" ["°C"]DEC1;

 PRIVATE

 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 kod 04
   DATA[2] := RWORD(104); % Start address
   DATA[4] := RWORD(97); % Antal register att läsa
  ANSWER SIZE 199 % (Antal register * 2) + 5
   DATA[0] = BYTE(Id);
   DATA[1] = BYTE(04);
   DATA[2] = BYTE(194); % Antal Bytes
   DATA[3] -> RWORD(V1 := DATA/10;);
   DATA[9] -> RWORD(V2 := DATA/10;);
   DATA[15] -> RWORD(V3 := DATA;);
   DATA[17] -> RWORD(V4 := DATA;);
   DATA[27] -> RWORD(V5 := DATA;);
   DATA[29] -> RWORD(V6 := DATA;);
   DATA[31] -> RWORD(V7 := DATA;);
   DATA[33] -> RWORD(V8 := DATA;);
   DATA[35] -> RWORD(V9 := DATA;);
   DATA[41] -> RWORD(V10 := DATA;);
   DATA[43] -> RWORD(V11 := DATA;);
   DATA[57] -> RWORD(V12 := DATA;);
   DATA[59] -> RWORD(V13 := DATA;);
   DATA[61] -> RWORD(V14 := DATA;);
   DATA[63] -> RWORD(V15 := DATA;);
   DATA[65] -> RWORD(V16 := DATA;);
   DATA[67] -> RWORD(V17 := DATA;);
   DATA[69] -> RWORD(V18 := DATA;);
   DATA[71] -> RWORD(V19 := DATA;);
   DATA[73] -> RWORD(V20 := DATA;);
   DATA[75] -> RWORD(V21 := DATA;);
   DATA[77] -> RWORD(V22 := DATA;);
   DATA[79] -> RWORD(V23 := DATA;);
   DATA[81] -> RWORD(V24 := DATA;);
   DATA[83] -> RWORD(V25 := DATA;);
   DATA[85] -> RWORD(V26 := DATA;);
   DATA[87] -> RWORD(V27 := DATA;);
   DATA[89] -> RWORD(V28 := DATA;);
   DATA[91] -> RWORD(V29 := DATA;);
   DATA[93] -> RWORD(V30 := DATA;);
   DATA[95] -> RWORD(V31 := DATA;);
   DATA[143] -> RWORD(IF (DATA>=32768) THEN V32:=(DATA-65536)/10; ELSE V32:=DATA/10; ENDIF;);
   DATA[145] -> RWORD(IF (DATA>=32768) THEN V33:=(DATA-65536)/10; ELSE V33:=DATA/10; ENDIF;);
   DATA[153] -> RWORD(IF (DATA>=32768) THEN V34:=(DATA-65536)/10; ELSE V34:=DATA/10; ENDIF;);
   DATA[155] -> RWORD(IF (DATA>=32768) THEN V35:=(DATA-65536)/10; ELSE V35:=DATA/10; ENDIF;);
   DATA[157] -> RWORD(IF (DATA>=32768) THEN V36:=(DATA-65536)/10; ELSE V36:=DATA/10; ENDIF;);
   DATA[159] -> RWORD(IF (DATA>=32768) THEN V37:=(DATA-65536)/10; ELSE V37:=DATA/10; ENDIF;);
   DATA[169] -> RWORD(IF (DATA>=32768) THEN V38:=(DATA-65536)/10; ELSE V38:=DATA/10; ENDIF;);
   DATA[171] -> RWORD(IF (DATA>=32768) THEN V39:=(DATA-65536)/10; ELSE V39:=DATA/10; ENDIF;);
   DATA[173] -> RWORD(IF (DATA>=32768) THEN V40:=(DATA-65536)/10; ELSE V40:=DATA/10; ENDIF;);
   DATA[177] -> RWORD(IF (DATA>=32768) THEN V41:=(DATA-65536)/10; ELSE V41:=DATA/10; ENDIF;);
   DATA[179] -> RWORD(IF (DATA>=32768) THEN V42:=(DATA-65536)/10; ELSE V42:=DATA/10; ENDIF;);
   DATA[183] -> RWORD(IF (DATA>=32768) THEN V43:=(DATA-65536)/10; ELSE V43:=DATA/10; ENDIF;);
   DATA[191] -> RWORD(IF (DATA>=32768) THEN V44:=(DATA-65536)/10; ELSE V44:=DATA/10; ENDIF;);
   DATA[193] -> RWORD(IF (DATA>=32768) THEN V45:=(DATA-65536)/10; ELSE V45:=DATA/10; ENDIF;);
   DATA[195] -> RWORD(IF (DATA>=32768) THEN V46:=(DATA-65536)/10; ELSE V46:=DATA/10; ENDIF;);
  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.