REGIN EXO Compact Alarm
Detaljer
- Typ
- Drivrutin
- Upplaggd av
- Ove Jansson, Abelko Innovation
- Version
- 1
- Uppdaterad
- 2013-04-18
- Skapad
- 2013-04-18
- Kategori
- Modbus, Ventilation
- Visningar
- 1942
Beskrivning
Skript för att hämta larm från ventilationsaggregat med regin styr
Bruksanvisning
Parity: None
Baud: 9600
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
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Device definition for REGIN EXO Compact Alarm
%
% Settings module:
% Parity: None
% Baud: 9600
% Mode: RTU
%
% Author: Ove Jansson, ABELKO AB Luleå
% History: 2011-05-16 initial version
% 2012-05-24 updated for kurortsparken
%
DEVICETYPE ReginAlarm NAMED "ReginAlarm" TYPEID 21423 IS
PARAMETER
Id : "Adress";
PUBLIC
V1 :"LA1_TF1_Larm_Ind" ; % 0
V2 :"LA1_FF1_ind" ; % 1
V3 :"LA1_P1_ind" ; % 2
V4 :"ST2_4_Öppen" ; % 3
V5 :"ST2_4_Stängd" ; % 4
V6 :"TestOmk_OK1_Ind" ; % 5
V7 :"LA1_S01_Service" ; % 6
V8 :"LA1_RD1_Röklarm" ; % 7
V9 :"BGF1_Man" ; % 8
V10 :"LA1_P1_Man" ; % 9
V11 :"LA1_ST1_Man" ; % 10
V12 :"LA1_ST2_4_Man" ; % 11
V13 :"LA1SA_LarmAMan" ; % 12
V14 :"LA1SA_LarmBMan" ; % 13
V15 :"LA1SA_LarmCMan" ; % 14
PRIVATE
Updated;
BAUDRATE 9600;
CHECKSUM MODBUS SWAPPED;
TELEGRAM ReadAlarm NAMED "ReadAlarmStatus" 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(15); % Number of inputs
ANSWER SIZE 7
DATA[0] = BYTE(Id);
DATA[1] = HEX(02);
DATA[2] = BYTE(2);
DATA[3] -> BYTE(IF (DATA & 1) THEN V1 := 1; ELSE V1 := 0; ENDIF;
IF (DATA & 2) THEN V2 := 1; ELSE V2 := 0; ENDIF;
IF (DATA & 4) THEN V3 := 1; ELSE V3 := 0; ENDIF;
IF (DATA & 8) THEN V4 := 1; ELSE V4 := 0; ENDIF;
IF (DATA & 16) THEN V5 := 1; ELSE V5 := 0; ENDIF;
IF (DATA & 32) THEN V6 := 1; ELSE V6 := 0; ENDIF;
IF (DATA & 64) THEN V7 := 1; ELSE V7 := 0; ENDIF;
IF (DATA & 128) THEN V8 := 1; ELSE V8 := 0; ENDIF;
);
DATA[4] -> BYTE(IF (DATA & 1) THEN V9 := 1; ELSE V9 := 0; ENDIF;
IF (DATA & 2) THEN V10 := 1; ELSE V10 := 0; ENDIF;
IF (DATA & 4) THEN V11 := 1; ELSE V11 := 0; ENDIF;
IF (DATA & 8) THEN V12 := 1; ELSE V12 := 0; ENDIF;
IF (DATA & 16) THEN V13 := 1; ELSE V13 := 0; ENDIF;
IF (DATA & 32) THEN V14 := 1; ELSE V14 := 0; ENDIF;
IF (DATA & 64) THEN V15 := 1; ELSE V15 := 0; ENDIF;
Updated:=1; );
TIMEOUT 2000
END;
END;
% Device definition for REGIN EXO Compact Alarm
%
% Settings module:
% Parity: None
% Baud: 9600
% Mode: RTU
%
% Author: Ove Jansson, ABELKO AB Luleå
% History: 2011-05-16 initial version
% 2012-05-24 updated for kurortsparken
%
DEVICETYPE ReginAlarm NAMED "ReginAlarm" TYPEID 21423 IS
PARAMETER
Id : "Adress";
PUBLIC
V1 :"LA1_TF1_Larm_Ind" ; % 0
V2 :"LA1_FF1_ind" ; % 1
V3 :"LA1_P1_ind" ; % 2
V4 :"ST2_4_Öppen" ; % 3
V5 :"ST2_4_Stängd" ; % 4
V6 :"TestOmk_OK1_Ind" ; % 5
V7 :"LA1_S01_Service" ; % 6
V8 :"LA1_RD1_Röklarm" ; % 7
V9 :"BGF1_Man" ; % 8
V10 :"LA1_P1_Man" ; % 9
V11 :"LA1_ST1_Man" ; % 10
V12 :"LA1_ST2_4_Man" ; % 11
V13 :"LA1SA_LarmAMan" ; % 12
V14 :"LA1SA_LarmBMan" ; % 13
V15 :"LA1SA_LarmCMan" ; % 14
PRIVATE
Updated;
BAUDRATE 9600;
CHECKSUM MODBUS SWAPPED;
TELEGRAM ReadAlarm NAMED "ReadAlarmStatus" 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(15); % Number of inputs
ANSWER SIZE 7
DATA[0] = BYTE(Id);
DATA[1] = HEX(02);
DATA[2] = BYTE(2);
DATA[3] -> BYTE(IF (DATA & 1) THEN V1 := 1; ELSE V1 := 0; ENDIF;
IF (DATA & 2) THEN V2 := 1; ELSE V2 := 0; ENDIF;
IF (DATA & 4) THEN V3 := 1; ELSE V3 := 0; ENDIF;
IF (DATA & 8) THEN V4 := 1; ELSE V4 := 0; ENDIF;
IF (DATA & 16) THEN V5 := 1; ELSE V5 := 0; ENDIF;
IF (DATA & 32) THEN V6 := 1; ELSE V6 := 0; ENDIF;
IF (DATA & 64) THEN V7 := 1; ELSE V7 := 0; ENDIF;
IF (DATA & 128) THEN V8 := 1; ELSE V8 := 0; ENDIF;
);
DATA[4] -> BYTE(IF (DATA & 1) THEN V9 := 1; ELSE V9 := 0; ENDIF;
IF (DATA & 2) THEN V10 := 1; ELSE V10 := 0; ENDIF;
IF (DATA & 4) THEN V11 := 1; ELSE V11 := 0; ENDIF;
IF (DATA & 8) THEN V12 := 1; ELSE V12 := 0; ENDIF;
IF (DATA & 16) THEN V13 := 1; ELSE V13 := 0; ENDIF;
IF (DATA & 32) THEN V14 := 1; ELSE V14 := 0; ENDIF;
IF (DATA & 64) THEN V15 := 1; ELSE V15 := 0; ENDIF;
Updated:=1; );
TIMEOUT 2000
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.