63
As a policy of continual improvement, RMF reserves the right to alter the specification without prior notice.
201.028 REV 1
Date of Issue: 18 June 2018
11.1.1.4.2 Fault Flags Bitmap
This is read-only register 28 (firmware 0.43 or higher required). It represents detected device or installation faults
in a bitmap format. The faults are also available as result codes in the status register; however those are transient
and may only appear briefly before a new test is started.
The fault bits here remain until the end of the next test (where they may be cleared if the fault has gone).
Bit
Function
Comment
0
OPTICAL FAULT
See table 7A
1
LOW FLOW
See table 7A
2
HIGH FLOW
See table 7A
3
DATA LOGGING
See table 7A
4
WATER SENSOR
See table 7A
Table 11E Fault Flags
11.1.2 Implementing Modbus
This section is for advanced users who wish to do their own programming to implement the Modbus controller. It
is not needed if the users control system already has direct support for being a Modbus master. The following
describes a minimal system capable of periodically reading data from the CMS; it is not intended as a general
purpose Modbus implementation.
For a background to this section the implementer can review the Modbus source documents:
http://www.modbus.org/docs/Modbus_over_serial_line_V1.pdf
http://www.modbus.org/docs/Modbus_Application_Protocol_V1_1b.pdf
In order to collect data from the CMS, the users control system needs to be able to send a Modbus command
frame and receive a response frame via the RS485 signals.
A frame consists of a sequence of bytes, transmitted back-to-back over the RS485 interface.
A command fr
ame can be generated corresponding to a Modbus ``read registers’’ command. Using hexadecimal
notation, the sequence required to return all registers would be a sequence of 8 bytes:
<0xCC> <0x04> <0x00> <0x00> <0x00> <0x7D> <0x20> <0x36>
This sequence is decoded by the CMS as:
<0xCC> = <slave address>
<0x04> = <function code: read registers>
<0x00> <0x00> = <start register high> <start register low> (2 bytes)
<0x00> <0x7D> = <number of registers high> <number of registers low> (2 bytes)
<0x20> <0x36> = <checksum high> <checksum low> (2 bytes)
The CMS will then return a 255 byte long response frame containing the requested register contents.
This 255 byte response frame looks like:
<0xCC> <0x04> <0xfa> <250 bytes of data> <2 bytes of checksum>
The <250 bytes of data> contains the contents of the 125 registers requested. Each 16 bit register is encoded in
two sequential bytes, in high-low (``big-
endian’’) order.
Содержание CMS 2
Страница 1: ...User Manual CMS2...