% Skapad med Modbus Creator DEVICETYPE BARIXX8DO NAMED "Barix X8 DO" TYPEID 21460 IS PARAMETER Id : "Adress"; V1 : "DO1" [""]; V2 : "DO2" [""]; V3 : "DO3" [""]; V4 : "DO4" [""]; V5 : "DO5" [""]; V6 : "DO6" [""]; V7 : "DO7" [""]; V8 : "DO8" [""]; PUBLIC PRIVATE count5; BAUDRATE 19200; PARITY EVEN; CHECKSUM MODBUS SWAPPED; TELEGRAM WriteCoil NAMED "Write Coil" IS QUESTION DATA[0] := BYTE(Id); % Enhetens Modbus adress DATA[1] := HEX(05); % Modbus kommando för att skriva en Coil DATA[2] <- RWORD( IF(count5>7) THEN count5 := 0; ENDIF; IF (count5=0) THEN DATA := 0; ELSIF (count5=1) THEN DATA := 1; ELSIF (count5=2) THEN DATA := 2; ELSIF (count5=3) THEN DATA := 3; ELSIF (count5=4) THEN DATA := 4; ELSIF (count5=5) THEN DATA := 5; ELSIF (count5=6) THEN DATA := 6; ELSIF (count5=7) THEN DATA := 7; ENDIF; ); % Register adress DATA[4] <- RWORD( IF (count5=0) THEN IF (V1 >0) THEN DATA := 65536; ELSE DATA := 0; ENDIF; ELSIF (count5=1) THEN IF (V2 >0) THEN DATA := 65536; ELSE DATA := 0; ENDIF; ELSIF (count5=2) THEN IF (V3 >0) THEN DATA := 65536; ELSE DATA := 0; ENDIF; ELSIF (count5=3) THEN IF (V4 >0) THEN DATA := 65536; ELSE DATA := 0; ENDIF; ELSIF (count5=4) THEN IF (V5 >0) THEN DATA := 65536; ELSE DATA := 0; ENDIF; ELSIF (count5=5) THEN IF (V6 >0) THEN DATA := 65536; ELSE DATA := 0; ENDIF; ELSIF (count5=6) THEN IF (V7 >0) THEN DATA := 65536; ELSE DATA := 0; ENDIF; ELSIF (count5=7) THEN IF (V8 >0) THEN DATA := 65536; ELSE DATA := 0; ENDIF; ENDIF; count5 := count5+1; ); ANSWER SIZE 8 DATA[0] = BYTE(Id); DATA[1] = BYTE(05); TIMEOUT 300 END; END;