RIO-9F Registers
Coils (0XXXX)
Discrete Inputs (1XXXX)
DI1 |
|
1 |
DI2 |
|
2 |
DI3 |
|
3 |
AI1 |
|
4 |
AI2 |
|
5 |
AI3 |
|
6 |
AI4 |
|
7 |
Input Registers (3XXXX)
Channel 1 |
0=0mA, 4095=20mA |
1 |
Channel 2 |
0=0mA, 4095=20mA |
2 |
Channel 3 |
0=0mA, 4095=20mA |
3 |
Channel 4 |
0=0mA, 4095=20mA |
4 |
Supply |
4095=FS |
5 |
|
Channel 1 |
0=4mA, 32767=20mA |
11 |
Channel 2 |
0=4mA, 32767=20mA |
12 |
Channel 3 |
0=4mA, 32767=20mA |
13 |
Channel 4 |
0=4mA, 32767=20mA |
14 |
|
Channel 1 |
0=0mA, 32767=20mA |
21 |
Channel 2 |
0=0mA, 32767=20mA |
22 |
Channel 3 |
0=0mA, 32767=20mA |
23 |
Channel 4 |
0=0mA, 32767=20mA |
24 |
Supply |
32767=FS |
25 |
|
Channel 1 |
0=4mA, 4095=20mA |
31 |
Channel 2 |
0=4mA, 4095=20mA |
32 |
Channel 3 |
0=4mA, 4095=20mA |
33 |
Channel 4 |
0=4mA, 4095=20mA |
34 |
|
Channel 1 |
raw, for cal. only |
41 |
Channel 2 |
raw, for cal. only |
42 |
Channel 3 |
raw, for cal. only |
43 |
Channel 4 |
raw, for cal. only |
44 |
Supply |
raw, for cal. only |
45 |
Holding Registers (4XXXX)
DI1Count |
|
1 |
DI2Count |
|
2 |
DI3Count |
|
3 |
AI1Count |
|
4 |
AI2Count |
|
5 |
AI3Count |
|
6 |
AI4Count |
|
7 |
|
Debounce |
in ms |
11 |
|
BaudDiv |
baud rate divisor |
21 |
SerialMode |
parity & stop bits |
22 |
SerialTimeout |
default=5 |
23 |
RespDelay |
in ms |
24 |
|
LEDControl |
0=off, 1=on |
31 |
|
ADCOffset1 |
signed |
41 |
ADCOffset2 |
signed |
42 |
ADCOffset3 |
signed |
43 |
ADCOffset4 |
signed |
44 |
|
ADCScale1 |
4095=unscaled |
51 |
ADCScale2 |
4095=unscaled |
52 |
ADCScale3 |
4095=unscaled |
53 |
ADCScale4 |
4095=unscaled |
54 |
ADCScale5 |
4095=unscaled |
55 |
|
Pulse1 |
in ms |
61 |
Pulse2 |
in ms |
62 |
Pulse3 |
in ms |
63 |
|
BCastReset |
see below |
71-73 |
Address |
|
74 |
|
DI1LongCount |
deprecated |
81-82 |
DI2LongCount |
deprecated |
83-84 |
DI3LongCount |
deprecated |
85-86 |
|
SerialNum |
|
91-92 |
RadioSNum |
radio serial number |
93-94 |
|
LastCalTimestamp |
Unix format |
101-102 |
CalInitials |
|
103-104 |
LastUpdateTimestamp |
Unix format |
105-106 |
|
DI1LongCount |
|
111-112 |
DI2LongCount |
|
113-114 |
DI3LongCount |
|
115-116 |
AI1LongCount |
|
117-118 |
AI2LongCount |
|
119-120 |
AI3LongCount |
|
121-122 |
AI4LongCount |
|
123-124 |
Broadcast Reset
The Modbus address of a RIO-9F device can be changed by broadcasting (i.e. sending to Modbus address 0) a write to holding registers 71-73.
The write should be done with a single, Write Multiple Registers command. In the first two registers (most signifigant word followed by least signifigant word), you should write the device's serial number. In the last register, you should write the new Modbus address.
As per the Modbus standard, the RIO device will not respond to this broadcast. Immediately after receipt, the RIO device will begin responding to requests made of the new address, however, this change will only be permanent if the DIP switches have all been set the same direction.