IGS-NT Communication Guide
91
7.3.1 Data reading
The function Read Multiple Registers (page 133) has to be used for data reading. The terminal sends a query
and from the controller receives either the normal response containing the requested data or the exceptional
response indicating a read error.
It is possible to use function 3 for reading (see Read Multiple Registers on page 133).
It is not possible to read from the middle. The register number must correspond with the beginning of the
data object. The only exception are the objects of „multipacket values“(registers 46367 – 46491) and „data
part of the history record“(registers 46543 – 46667).
All read registers must be implemented. If an unimplemented register appears among the read registers, the
controller returns an error message.
Even unnamed values can be included among read registers. The read value must be treated as
meaningless.
The length of a block is 127 registers.
7.3.2 Data writing
All data can be written by the function Write Multiple Registers (page 138). Data up to 2 bytes can be written
by the function Write Single Registers (page 137), too. The terminal sends a query containing a written data
and the controller either confirms it (normal response) or refuses it (exceptional response).
For writing it is possible to use function 6 (Write Single Registers (page 137)) or function 16 (Write
Multiple Registers (page 138)).
Using function 16 it is possible to write maximum 16 registers at once.
Data cannot be written from the middle. Register number must correspond with the beginning of the data
object. Written data must be complete to perform writing of all requested data objects.
Writing to EEPROM is executed using a queue. The queue is common for writing from all terminals. The
request for next writing is accepted in case that there is empty space in the queue. Otherwise the controller
returns an error message and the terminal must repeat the request.
All written registers must be implemented. If an unimplemented register appears among the read registers,
the controller returns an error message.
It is possible to include also unnamed registers in the written sequence. The controller confirms this writing
but writing of unnamed registers is not performed.