NR10_service manual_Modbus Guide
NR10_service manual_Modbus Guide
NR10
SERVICE MANUAL
MODBUS PROTOCOL
Protocol
RS485 is a bidirectional, full or half-duplex communication bus structure consisting of a single Master and at least one Slave. The maximum number of slaves can vary widely from system to
system however; most manufacturers cap the max number of slaves between 16 and 32. Most RS485 signals operate ideally on a DC bias of 5 volts. The signals are driven alternately from
each other. That is, each line operates inversely from the other and each is also referenced to the other from an electrical standpoint. The receiver looks at the difference, not the absolute
voltage value, of the two signals. This is referred to as the “Line Bias” and it is critical in RS-485 applications. A bias difference of higher than 0.3v is generally accepted as valid but can be
as high as 0.7v, depending on the system. Absolute values below this are considered “undefined” or “grey” and may result in either a high or low reading by the receiver. In many non-
isolated applications, a “signal ground” or “shield” connection is provided in addition to the 2 data lines however, this is not necessary as the signals are referenced to each other and not
to absolute ground. It is only provided as a ground point for the communication cable shielding. It is important to note that the shield ground should only be connected at a single trunk end
in non-isolated applications. If grounds are tied together in non-isolated systems, even a slight voltage difference, between the absolute ground points, will create a “ground loop” condition
which can cause serious damage to the equipment. Note that in isolated equipment, the above does not apply as there is no direct connection between the ground points however, in all
applications, proper cable shield grounding should be practiced to eliminate and/or reduce electrical interference.
Our NR10 offers the option of an RS485 communication facility for direct connection to SCADA or other communications systems using the Modbus Protocol RTU salve protocol. The Modbus Protocol
establishes the format for the master’s query by placing into it the device address, a function code defining the requested action, any data to be sent, and an error checking field. The slave’s response
message is also constructed using Modbus Protocol. It contains fields confirming the action taken, any data to be returned, and an error-checking field. If an error occurs in receipt of the message, the NR10
will make no response. If the NR10 is unable to perform the requested action, it will construct an error message and send it as the response.
The electrical interface is 2-wire RS485, via 2 screw terminals. Connection should be made using twisted pair screened cable (Typically 22 gauge Belden 8761 or equivalent). All “A” and “B” connections
are daisy chained together. Line topology may or may not require terminating loads depending on the type and length of cable used. Loop (ring) topology does not require any termination load. The
impedance of the termination load should match the impedance of the cable and be at both ends of the line. The cable should be terminated at each end with a 120 ohm (0.25 Watt min.) resistor. A total
maximum length of 3900 feet (1200 meters) is allowed for the RS485 network. A maximum of 32 electrical nodes can be connected, including the controller. The address of each the NR10 can be set to any
value between 1 and 247. Broadcast mode (address 0) is not supported.
Most significant register first (Default). The default may be changed if required -See Holding Register “Register Order” parameter.
Data Coding
All data values in the NR10 meter are transferred as 32 bit IEEE754 floating point numbers, (input and output) therefore each NR10 meter value is transferred using two Modbus Protocol registers. All register
read requests and data write requests must specify an even number of registers. Attempts to read/write an odd number of registers prompt the NR10 to return a Modbus Protocol exception message.
However, for compatibility with some SCADA systems, the NR10 will respond to any single input or holding register read with an instrument type specific value.
The NR10 can transfer a maximum of 40 values in a single transaction; therefore the maximum number of registers requestable is 80. Exceeding this limit prompts the NR10 to generate an exception
response.
Data transmission speed is selectable between 2400, 4800, 9600, 19200, 38400 baud.
Each request for data must be restricted to 40 parameters or less. Exceeding the 40 parameter limit will cause a Modbus Protocol exception code to be returned.
1.2.1 NR10 Input Registers
30071 Frequency Hz 00 46
1.3 Modbus Protocol Holding Registers and Digital meter set up:
Holding registers are used to store and display instrument configuration settings. All holding registers not listed in the table below should be considered as reserved for manufacturer use and
no attempt should be made to modify their values.
The holding register parameters may be viewed or changed using the Modbus Protocol. Each parameter is held in two consecutive 4X registers. Modbus Protocol Function Code 03 is used
to read the parameter and Function Code 16 is used to write. Write to only one parameter per message.
40013 Relay Pulse Width 00 OA Write relay on period in milliseconds: 60, 100 or 200, default 200. r/w
40019 Network Parity Stop 00 12 Write the network port parity/stop bits for MODBUS Protocol, where: r/w
0 = One stop bit and no parity, default. 1 = One stop bit and even
parity. 2 = One stop bit and odd parity.3 = Two stop bits and no parity.
Requires a restart to become effective.
40021 Network Node 00 14 Write the network port node address: 1 to 247 for MODBUS Protocol, r/w
default 1. Requires a restart to become effective. Note, both the
MODBUS Protocol and Johnson Controls node addresses can be
changed via the display setup menus.
40029 Network Baud Rate 00 1C Write the network port baud rate for MODBUS Protocol, where: r/w
0 = 2400 baud. 1 = 4800 baud.
2 = 9600 baud, default.
3 = 19200 baud. 4 = 38400 baud. Requires a restart to become
effective
363792 Pulse Output & LED Indicator Mode F9 30 Data Format: Hex ro
0000: Import & Export Energy, LED flashes for Import & Export Energy
0001: Import Energy, LED flashes for Import Energy only
0002: Export Energy, LED flashes for Export Energy only
PARAMETER
Further information relating to RS485 may be obtained from either the EIA or the various RS485 device manufacturers, for example Texas Instruments or Maxim Semiconductors. This list is
not exhaustive.
In a 485 network the “master” will start the “conversation” with a “query” addressed to a specific “slave”, the “master” will then listen for the “slave’s” response. If the “slave” does not
respond within a pre-defined period, (set by control software in the “master”), the “master” will abandon the “conversation”.
Screened twisted pair cable should be used. For longer cable runs or noisier environments, use of a cable specifically designed for RS485 may be necessary to achieve optimum
performance. All “A” terminals should be connected together using one conductor of the twisted pair cable, all “B” terminals should be connected together using the other conductor in the
pair.
A Belden 9841 (Single pair) or 9842 (Two pair) or similar cable with a characteristic impedance of 120 ohms is recommended. The cable should be terminated at each end with a 120 ohm, quarter watt (or
greater) resistor. Note: Diagram shows wiring topology only. Always follow terminal identification as per the wiring diagram lasered on the side of the NR10.
A Belden 9841 (Single pair) or 9842 (Two pair) or similar cable with a characteristic impedance of 120 ohms is recommended. The cable should be
terminated at each end with a 120 ohm, quarter watt (or greater) resistor. Note: Diagram shows wiring topology only. Always follow terminal
identification as per the wiring diagram lasered on the side of the NR10.
There must be no more than two wires connected to each terminal, this ensures that a “Daisy Chain or “straight line” configuration is used. A “Star” or a network with “Stubs (Tees)” is not
recommended as reflections within the cable may result in data corruption.
oting
oubleshooting
ple a simple2.4
withnetwork, one Troubleshooting
master
network, oneand one slave.
master With
and one theWith
slave. NR10 theDigital
NR10meter
Digitalthis is easily
meter this is achieved as theas
easily achieved network can be
the network leftbe left
can
dividual
ct instruments
whilst individual are disconnected
instruments by removing
are disconnected the RS485
by removing the connection from the
RS485 connection rearthe
from ofrear
the instrument.
of the instrument.
• Start with a simple network, one master and one slave. With the NR10 Digital meter this is easily achieved as the network can be left intact whilst individual instruments are disconnected by removing
network
ck that theisnetwork
connected together
is connected
the RS485
correctly.
connectiontogether
That is all
correctly.
from the rear
of the
That
of the instrument. is all“A’s”
of theare“A’s”
connected together,
are connected and alland
together, of the “B’s”
all of the are
“B’s”connected together.
are connected together.
e data
firm that“transmitted”
the data
• Check onto
that thethe
“transmitted” RS485
onto
network theisRS485
nottogether
is connected echoed
is not back
echoed
correctly. to back
Thatthe
is allPC
ofto
theon
the the
PC
“A’s” are RS232 lines.
on the RS232
connected (This
lines.
together, facility
and all(This is are
sometimes
facility
of the “B’s” a linkaConfirm
is sometimes
connected together. option within
link option
that thewithin
data “transmitted” onto
Many PC Many
converter). basedPC packages seem to not
based packages seemperform well when
to not perform they
well when receive an echoanofecho
they receive the message
of the message they are theytransmitting. SpecView
are transmitting. and and
SpecView
oftware)
iew (PC with a RS232
software) with atoRS232
RS485toconverter are believed
RS485 converter to include
are believed this feature.
to include this feature.
e Address
firm that theofAddress
the instrument is the same
of the instrument assame
is the the “master” is expecting.
as the “master” is expecting.
e operates
“network” with
operates with one instrument
one instrument but not
but not more more
than onethan onethat
check check that
each each instrument
instrument has a unique
has a unique address.
address.
horrequest for data
data must must be restricted
be restricted to 40 parameters
to 40 parameters or less. Violating
or less. Violating this requirement
this requirement will impact
will impact the performance
the performance of theofinstrument
the instrument and may
and may
ltonse
in a time
response time in
in excess ofexcess of the specification.
the specification.
the RS485 is not echoed back to the PC on the RS232 lines. (This facility is sometimes a link option within the converter). Many PC based packages seem to not perform well when they
receive an echo of the message they are transmitting. SpecView and PCView (PC software) with a RS232 to RS485 converter are believed to include this feature.
• Confirm that the Address of the instrument is the same as the “master” is expecting.
• If the “network” operates with one instrument but not more than one check that each instrument has a unique address.
• Each request for data must be restricted to 40 parameters or less. Violating this requirement will impact the performance of the instrument and may result in a response time in excess of
the specification.
• Check that the MODBUS Protocol mode (RTU or ASCII) and serial parameters (baud rate, number of data bits, number of stop bits and parity) are the same for all devices on the network.
• Check that the “master” is requesting floating-point variables (pairs of registers placed on floating point boundaries) and is not “splitting” floating point variables.
• Check that the floating-point byte order expected by the “master” is the same as that used by the NR10. (PCView and Citect packages can use a number of formats including that supported by this
meter).
• If possible obtain a second RS232 to RS485 converter and connect it between the RS485 bus and an additional PC equipped with a software package, which can display the data on the
bus. Check for the existence of valid requests.
In the MODBUS Protocol the master can address individual slaves, or, using a special “Broadcast” address, can initiate a broadcast message to all slaves.
The
In theNR10 Digital
MODBUS meter
Protocol do not
the master support
can address the broadcast
individual address.
slaves, or, using a special “Broadcast” address, can initiate a broadcast message to all slaves. The NR10 Digital meter do not support the broadcast
address.
The example illustrates the normal response to a request for a single floating point parameter i.e. two 16-bit Modbus Protocol Registers.
Slave Function Byte First Register First Register Second Register Second Register Error Check Error Check
Address Code Count Hi) (Lo) (Hi) (Lo) (Lo) (HI)
Slave Address: 8-bit value representing the address of slave that is responding.
Function Code: 8-bit value which, when a copy of the function code in the query, indicates that the slave recognized the query and has responded. (See also Exception Response).
Byte Count: 8-bit value indicating the number of data bytes contained within this response
First Register (Hi)*: The top (most significant) eight bits of a 16-bit number representing the first register requested in the query.
First Register (Lo)*: The bottom (least significant) eight bits of a 16-bit number representing the first register requested in the query.
Second Register (Hi)*: The top (most significant) eight bits of a 16-bit number representing the
second register requested in the query.
Second Register (Lo)*: The bottom (least significant) eight bits of a 16-bit number representing the second register requested in the query.
Error Check (Lo): The bottom (least significant) eight bits of a 16-bit number representing the
error check value.
Error Check (Hi): The top (most significant) eight bits of a 16-bit number representing the error
check value.
*These four bytes together give the value of the floating point parameter requested.
Exception Response
If an error is detected in the content of the query (excluding parity errors and Error Check mismatch), then an error response (called an exception response), will be sent to the master. The
exception response is identified by the function code being a copy of the query function code but with the most-significant bit set. The data contained in an exception response is a single
byte error code.
Slave Address: 8-bit value representing the address of slave that is responding.
Function Code: 8 bit value which is the function code in the query OR’ed with 80 hex, indicating that the slave either does not recognize the query or could not carry out the action
Requested.
Error Code: 8-bit value indicating the nature of the exception detected. (See “Table Of
Exception Codes“ later).
Error Check (Lo): The bottom (least significant) eight bits of a 16-bit number representing the error check value.
Error Check (Hi): The top (most significant) eight bits of a 16-bit number representing the error
check value.
In RTU (Remote Terminal Unit) mode, each 8-bit byte is used in the full binary range and is not limited to ASCII characters as in ASCII Mode. The greater data density allows better data
throughput for the same baud rate, however each message must be transmitted in a continuous stream. This is very unlikely to be a problem for modern communications equipment.
Coding System: Full 8-bit binary per byte. In this document, the value of each byte will be shown as two hexadecimal characters each in the range 0-9 or A-F.
Line Protocol: 1 start bit, followed by the 8 data bits. The 8 data bits are sent with least significant bit first.
User Option Of Parity No Parity and 2 Stop Bits
And Stop Bits: No Parity and 1 Stop Bit
Even Parity and 1 Stop Bit
Odd Parity and 1 Stop Bit.
User Option of Baud 4800 ; 9600 ; 19200 ; 38400
Rate: Digital meters do not support 38400 but do offer 2400 instead)
The baud rate, parity and stop bits must be selected to match the master’s settings.
In RTU mode, messages starts with a silent interval of at least 3.5 character times.
Master and slave devices monitor the network continuously, including during the ‘silent’ intervals. When the first byte (the address byte) is received, each device checks it to find out if it is the
addressed device. If the device determines that it is the one being addressed it records the whole message and acts accordingly, if it is not being addressed it continues monitoring for the
next message.
Following the last transmitted byte, a silent interval of at least 3.5 character times marks the end of the message. A new message can begin after this interval.
In the NR10 1000 and 2000, a silent interval of 60msec minimum is required in order to guarantee successful reception of the next request.
The entire message must be transmitted as a continuous stream. If a silent interval of more than 1.5 character times occurs before completion of the message, the receiving device flushes the
incomplete message and assumes that the next byte will be the address byte of a new message.
Similarly, if a new message begins earlier than 3.5 character times following a previous message, the receiving device may consider it a continuation of the previous message. This will result
in an error, as the value in the final CRC field will not be valid for the combined messages.
3.4 How Characters are Transmitted Serially
When messages are transmitted on standard MODBUS Protocol serial networks each byte is sent in this order (left to right):
NMID30-2
Transmit _ Modbus
Character = Start Bit + Data Byte + Parity Bit + 1 Stop Bit (11 bits total):
Least Significant Bit (LSB) Most Significant Bit (MSB)
Transmit Character = Start Bit + Data Byte + 2 Stop Bits (11 bits total):
Start 1 2 3 4 5 6 7 8 Party Stop
Start 1 2 3 4 5 6 7 8 Party Stop
Transmit Character = Start Bit + Data Byte + 2 Stop Bits (11 bits total):
The NR10 Digital meter additionally support No parity, One stop bit.
Start 1 2 3 4 5 6 7 8 Party Stop
Transmit Character = Start Bit + Data Byte + 1 Stop Bit (10 bits total):
The AP25-3CO Digital meter additionally support No parity, One stop bit.
Transmit Character = Start
Start 1 Bit + Data Byte
2 + 1 Stop Bit (10
3 bits total): 4 5 6 7 8 Party Stop
3.5
3.5Error CheckingMethods
Error Checking Methods
Standard MODBUS
Standard MODBUS Protocol
Protocol serialuse
serial networks networks use twoprocesses,
two error checking error checking processes,
the error check the error
bytes mentioned check
above bytes mentioned
check message above
integrity whilst check message
Parity checking (even or odd)integrity
can be
whilst
appliedParity
to eachchecking (even or odd) can be applied to each byte in the message.
byte in the message.
3.5.2 CRC
If No Parity Checking
checking is specified, no parity bit is transmitted and no parity check can be made. Also, if No Parity checking is specified and one stop bit is selected the transmit character is
effectively shortened by one bit.
The error check bytes of the MODBUS Protocol messages contain a Cyclical Redundancy Check (CRC) value that is used to check the content of
the entire message. The error check bytes must always be present to comply with the MODBUS Protocol, there is no option to disable it.
The error check bytes represent a 16-bit binary value, calculated by the transmitting device. The receiving device must recalculate the CRC during
3.5.2 of
receipt CRC the Checking
message and compare the calculated value to the value received in the error check bytes. If the two values are not equal, the message
should
The errorbe discarded.
check bytes of the MODBUS Protocol messages contain a Cyclical Redundancy Check (CRC) value that is used to check the content of the entire message. The error check bytes
must always be present to comply with the MODBUS Protocol, there is no option to disable it.
The error check calculation is started by first pre-loading a 16-bit register to all 1’s (i.e. Hex (FFFF)) each successive 8-bit byte of the message is
applied
The errorto thebytes
check current contents
represent a 16-bitof thevalue,
binary register. Note:
calculated by only the eightdevice.
the transmitting bits of
Thedata in each
receiving devicetransmit character
must recalculate the CRCare used
during for of
receipt generating
the messagethe
and CRC,
comparestart
the bits,
stop bits and
calculated value the parity
to the bit, if one
value received iserror
in the used, are
check notIfincluded
bytes. in the
the two values error
are not check
equal, bytes.should be discarded.
the message
During generation of the error check bytes, each 8-bit message byte is exclusive OR’ed with the lower half of the 16 bit register. The register is then
The erroreight
shifted check times
calculation is started
in the by firstof
direction pre-loading
the leasta 16-bit register to
significant bitall(LSB),
1’s (i.e. Hex (FFFF))
with eachfilled
a zero successive
into8-bit
thebyte of the
most message isbit
significant applied to the
(MSB) current contents
position. of the register.
After each shift the
Note: only the eight bits of data in each transmit character are used for generating the CRC, start bits, stop bits and the parity bit, if one is used, are not included in the error check bytes.
LSB prior to the shift is extracted and examined. If the LSB was a 1, the register is then exclusive OR’ed with a pre-set, fixed value. If the LSB was a
0,During
no exclusive OR takes place.
generation of the error check bytes, each 8-bit message byte is exclusive OR’ed with the lower half of the 16 bit register. The register is then shifted eight times in the direction of the
This
least process is (LSB),
significant bit repeated
with a until all eight
zero filled into theshifts have been
most significant performed.
bit (MSB) After
position. After the
each last
shift theshift, thetonext
LSB prior 8-bit
the shift message
is extracted and byte is exclusive
examined. OR’ed
If the LSB was a 1, thewith theis lower
register
half
thenof the 16OR’ed
exclusive bit register, andfixed
with a pre-set, thevalue.
process repeated.
If the LSB was a 0, noThe finalOR
exclusive contents of the register, after all the bytes of the message have been applied, is the
takes place.
error check value. In the following pseudo code “Error Word” is a 16-bit value representing the error check values.
This process is repeated until all eight shifts have been performed. After the last shift, the next 8-bit message byte is exclusive OR’ed with the lower half of the 16 bit register, and the
BEGIN
process repeated. The final contents of the register, after all the bytes of the message have been applied, is the error check value. In the following pseudo code “Error Word” is a 16-bit value
Error Word =the
representing Hex (FFFF)
error check values.
FOR Each byte in message
Error
BEGINWord = Error Word XOR byte in message
FORError
Each
Word bit=inHex
byte
(FFFF)
LSBFOR
= Error WordinAND
Each byte Hex (0001)
message
IF LSBError
= 1Word
THEN Error
= Error Word
Word XOR= byte
Errorin Word –1
message
Error Word
FOR Each= Error
bit in Word
byte / 2
IF LSB =LSB1 THEN
= ErrorError WordHex
Word AND = Error
(0001)Word XOR Hex (A001)
NEXT bitIFinLSBbyte
= 1 THEN Error Word = Error Word – 1
NEXT Byte inWord
Error message
= Error Word / 2
END IF LSB = 1 THEN Error Word = Error Word XOR Hex (A001)
NEXT bit in byte
NEXT Byte in message
END
ModBus Protocol Implementation 10
3.6 Function Codes
The function code part of a MODBUS Protocol message defines the action to be taken by the slave. The NR10 Digital meter support the following function codes:
03 Read Holding Registers Read the contents of read/write location (4X references)
04 Read Input Registers Read the contents of read only location (3X references)
08 Diagnostics Only sub-function zero is supported. This returns the data element of the
query unchanged.
15 Pre-set Multiple Registers Set the contents of read/write location (4X references)
However, there are a number of approaches that have been adopted to overcome this restriction. The NR10 Digital meters use two consecutive registers to represent a floating-point number, effectively
expanding the range to +/- 1x1037.
The values produced by The NR10 Digital meters can be used directly without any requirement to “scale” the values, for example, the units for the voltage parameters are volts, the units for the power
parameters are watts etc.
An IEEE 754 floating point number is the binary equivalent of the decimal floating-point number shown above. The major difference being that the most significant bit of the mantissa is always
arranged to be 1 and is thus not needed in the representation of the number. The process by which the most significant bit is arranged to be 1 is called normalization, the mantissa is thus
referred to as a “normal mantissa”. During normalization the bits in the mantissa are shifted to the left whilst the exponent is decremented until the most significant bit of the mantissa is one.
In the special case where the number is zero both mantissa and exponent are zero.
Where:
S represents the sign bit where 1 is negative and 0 is positive
E is the 8-bit exponent with an offset of 127 i.e. an exponent of zero is represented by 127, an
exponent of 1 by 128 etc.
M is the 23-bit normal mantissa. The 24th bit is always 1 and, therefore, is not stored.
Using the above format the floating point number 240.5 is represented as 43708000 hex:
43 70 80 00
The following example demonstrates how to convert IEEE 754 floating-point numbers from their hexadecimal form to decimal form. For this example, we will use the value for 240.5 shown
above
Note that the floating-point storage representation is not an intuitive format. To convert this value to decimal, the bits should be separated as specified in the floating-point number storage
format table shown above.
For example:
There is an implied binary point at the left of the mantissa that is always preceded by a 1. This bit is not stored in the hexadecimal representation of the floating-point number. Adding 1 and
the binary point to the beginning of the mantissa gives the following:
1.11100001000000000000000
Now, we adjust the mantissa for the exponent. A negative exponent moves the binary point to the left. A positive exponent moves the binary point to the right. Because the exponent is 7, the
mantissa is adjusted as follows:
11110000.1000000000000000
Finally, we have a binary floating-point number. Binary bits that are to the left of the binary point represent
the power of two corresponding to their position. For example, 11110000 represents (1 x 27) + (1 x 26) + (1x 25) + (1 x 24) + (0 x 23)+ (0 x 22) + (0 x 21)+ (0 x 20) = 240.
Binary bits that are to the right of the binary point also represent a power of 2 corresponding to their position. As the digits are to the right of the binary point the powers are negative. For
example: .100 represents (1 x 2-1) + (0 x 2-2)+ (0 x 2-3) + … which equals 0.5.
Adding these two numbers together and making reference to the sign bit produces the number +240.5.
For each floating point value requested two MODBUS Protocol registers (four bytes) must be requested. The received order and significance of these four bytes for the NR10 is shown below:
Slave Address 01
Function 04
Note: Data must be requested in register pairs i.e. the “Starting Address“ and the “Number of Points” must be even numbers to request a floating point variable. If the “Starting Address” or
the “Number of points” is odd then the query will fall in the middle of a floating point variable the product will return an error message.
The following response returns the contents of Volts 1 as 230.2. But see also “Exception Response” later.
Slave Address 01
Function 04
Byte Count 04
Slave Address 01
Function 03
Note: Data must be requested in register pairs i.e. the “Starting Address“ and the “Number of Points” must be even numbers to request a floating point variable. If the “Starting Address” or
the “Number of points” is odd then the query will fall in the middle of a floating point variable the product will return an error message.
The following response returns the contents of Demand Time as 1, But see also “Exception Response” later.
Slave Address 01
Function 03
Byte Count 04
Slave Address 01
Function 10
Byte Count 04
Note: Data must be written in register pairs i.e. the “Starting Address“ and the “Number of Points” must be even numbers to write a floating point variable. If the “Starting Address” or
the “Number of points” is odd then the query will fall in the middle of a floating point variable the product will return an error message. In general only one floating point value can be
written per query
The following response indicates that the write has been successful. But see also “Exception Response later.
Example (Hex)
Slave Address 01
Function 10
Slave Address 01
Function 10 OR 80 = 90
Exception Code 01
02 Illegal Data Address Attempt to access an invalid address or an attempt to read or write part of a
floating point value
03 Illegal Data Value Attempt to set a floating point variable to an invalid value
05 Slave Device Failure An error occurred when the instrument attempted to store an update to it’s
configuration
3.12 Diagnostics
MODBUS Protocol code 08 provides a number of diagnostic sub-functions. Only the “Return Query Data” sub-function (sub-function 0) is supported on the NR10 Digital meters.
Example
The following query will send a diagnostic “return query data” query with the data elements set to Hex(AA) and Hex(55) and will expect these to be returned in the response:
Slave Address 01
Function 08
Sub-Function High 00
Sub-Function Low 00
Data Byte 1 AA
Data Byte 2 55
Note: Exactly one register of data (two bytes) must be sent with this function.
The following response indicates the correct reply to the query, i.e. the same bytes as the query.
Slave Address 01
Function 08
Sub-Function High 00
Sub-Function Low 00
Data Byte 1 AA
Data Byte 2 55
Technical support:
tel.: (+48 68) 45 75 143, 45 75 141, 45 75 144, 45 75 140
e-mail: export@lumel.com.pl
Export department:
tel.: (+48 68) 45 75 130, 45 75 131, 45 75 132
e-mail: export@lumel.com.pl
Calibration & Attestation:
e-mail: laboratorium@lumel.com.pl