The NexSens iSIC data logger supports Modbus RTU communications over RS232 or RS485.
Implementation:
- Modbus RTU over RS232 or RS485.
- Baud rates: 19200 or 9600 at No Parity, 8 Data Bits, and 1 Stop Bit
- Modbus address: same as the iSIC address.
- Input registers 0 to n-1 correspond to parameters 0 to n-1 where n = the number of parameters that the iSIC logs.
- Each input register holds the corresponding parameter reading scaled up 100. So for example 74.52 degrees Fahrenheit would be stored as 7452.
Supported Commands:
0x04 – read input register
Perform sensor read and return result in the requested registers. Depending on sensors installed, this could take anywhere between 1 seconds to several minutes.
0x06 – write register
Register 0x1000: set the iSIC startup mode:
LOBYTE = mode
1 = iSICMODE_LOG
2 = iSICMODE_POLL
3 = iSICMODE_POLLNLOG (not supported)
4 = iSICMODE_MODBUS_RTU
8 = iSICMODE_MODBUS_ASCII (not supported)
HIBYTE = 1
If the iSIC is to be reset after successfully set the startup mode. This will soft reset the iSIC and go to the new mode. If the flag is 0, the iSIC will stay in Modbus mode after successfully set the iSIC startup mode. The user will need to cycle the power or wait until the hourly reset to enter the new mode.
Error Codes:
0x01 = MODBUS_ECODE_ILLEGAL_FUNCTION
0x02 = MODBUS_ECODE_ILLEGAL_ADDRESS
0x03 = MODBUS_ECODE_ILLEGAL_DATAVAL
0x04 = MODBUS_ECODE_SLAVEDEV_FAIL
0x05 = MODBUS_ECODE_ACK
0x06 = MODBUS_ECODE_SLAVEDEV_BUSY
To setup the iSIC data logger for Modbus protocol, first setup the iSIC with its specific sensors connected to it.
It is recommended that a 1-minute log interval is selected when setting up a data logger for Modbus telemetry for testing purposes. This allows for making sure good readings are being received from the sensors after a few minutes in the lab. After receiving a few readings, the data logger should be set to a 0-minute log interval and then set as a Modbus device.
After the data logger is setup and a few good readings have been collected, go to the Advanced | iSIC | iSIC menu.
Change the iSIC to communicate via Modbus: http://www.nexsens.com/knowledge-base/submersible-data-loggers/sdl500/setting-an-isic-or-sdl500-as-a-modbus-or-sdi-12-device.htm.
If needed for the network, it’s possible to change the baud rate using Change baud and the parity, data bits, and stop bits using Change frame. If the iSIC will be used on an RS485 Modbus network, be sure to also change the iSIC protocol to 485. When you have finished making changes, hit Apply and reset power to the iSIC. Note: changes to communication settings will not take affect until after power has been reset.
REV: 13J18