Produal HDH / HDH-M / HDH 10K / HDH 10K-M

Detaljer

Typ
Drivrutin
Upplaggd av
Ove Jansson, Abelko Innovation
Version
1
Uppdaterad
2016-09-29
Skapad
2016-09-29
Kategori
Mätare, Modbus
Visningar
1681

Beskrivning

.

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

% Produal HDH / HDH-M / HDH 10K / HDH 10K-M
% 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 HDHx NAMED "Produal HDHx" TYPEID 18115 IS

 PARAMETER
  Id       : "Adress" [""]INT;

 PUBLIC
  V1 : "CO2" ["ppm"]INT;
  V2 : "Temp" ["°C"]DEC1;
  V3 : "Humidity" ["%"]INT;

 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(0); % Start address
   DATA[4] := RWORD(3); % Antal register att läsa
  ANSWER SIZE 11 % (Antal register * 2) + 5
   DATA[0] = BYTE(Id);
   DATA[1] = BYTE(04);
   DATA[2] = BYTE(6); % Antal Bytes
   DATA[3] -> RWORD(IF (DATA>=32768) THEN V1:=(DATA-65536); ELSE V1:=DATA; ENDIF;);
   DATA[5] -> RWORD(IF (DATA>=32768) THEN V2:=(DATA-65536)/10; ELSE V2:=DATA/10; ENDIF;);
   DATA[7] -> RWORD(IF (DATA>=32768) THEN V3:=(DATA-65536); ELSE V3:=DATA; 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.