Modbus RTU
Note: If multiple stations are connected to the RS-485 bus, then use the Modbus RTU Advanced driver instead of this one.
Review the following information for setting up and configuring the Modbus RTU driver.
Litmus Edge Compatible Series
Compatibility parameter | Compatible items |
|---|---|
Driver type | Serial (RS-485) |
When to use | Serial connection to a device using Modbus RTU |
Replaces Gen 1 driver(s) | Learn more about Gen1 and Gen2 Driver Differences |
To set up and configure this device in Litmus Edge, you will need to do the following:
- Step 1: Set up and Configure the PLC Device
- Step 2: Set up the PLC Device in Litmus Edge DeviceHub
- Step 3: Configure the List of Registers
Step 1: Set up and Configure the PLC Device
Record the serial communication parameters for the device. Otherwise, use PLC software on your machine to look up these parameters. You use these parameters for setting up the driver in the next step.
Step 2: Set up the PLC Device in Litmus Edge DeviceHub
Configure the following parameters when you Connect a Device with this driver. Update default values to the specific setup of your device.
Parameter | Value |
|---|---|
Type | Modbus |
Driver | Modbus ASCII |
Device File | The file of the serial port you are using |
Baud Rate | 19200 |
Data Bits | 8 |
Parity | Select even, none, or odd |
Station ID | 0 |
Stop Bits | 1 |
Zero-Based Addressing | Select Enable or Disable |
Step 3: Configure the List of Registers
When you Add a TagAdd a Tag to the connected device, refer to the following register table and tag parameters.
Refer to the following additional resources:
- Device and Tag Metadata Use CaseDevice and Tag Metadata Use Case
- Tag Formula VariablesTag Formula Variables
Register Table
Note: The address format in this Gen 2 driver is different from the Gen 1 driver (Modbus RTU (Gen1)) for the same device. Learn more about Gen1 and Gen2 Driver Differences.
Name | Value Types | Address Format | Min Address | Max Address | Description |
|---|---|---|---|---|---|
D | bit | DDDDD | 0 | 65535 | Discrete Input Contacts |
C | bit | DDDDD | 0 | 65535 | Discrete Output Coils |
H | word, int16, int32, uint32, float32, float64 | DDDDD | 0 | 65535 | Analog Output Holding Registers |
I | word, int16, int32, uint32, float32, float64 | DDDDD | 0 | 65535 | Analog Input Registers |
H_bit | bit | DDDDDdd | 0 | 6553515 | Analog Output Holding Registers |
I_bit | bit | DDDDDdd | 0 | 6553515 | Analog Input Registers |
Tag Parameters
- Name: Select a register name from the drop-down list. The available options depend on the names in the register table.
- Value Type: Select a data type from the drop-down list. The available options depend on the register name selected.
- Polling Interval: Enter a value in seconds. This determines how often the tag should poll the register for data.
- Tag Name: Enter a name for the tag.
- Description (Optional): Enter a description for the tag.
- Address: Enter a tag address. The value must in the decimal format, within the allowed min/max range. Omit the leading zeros. The device might use the decimal (D), hexadecimal (H), or octal (O) address format. See the Register Table at the bottom of the dialog box. For Bit tags, append the bit address without the bit separator. The lowercase letters in the address format indicate how many digits you should enter in the Bit address.
- Count: Enter the number of register values to read. A count higher than 1 will generate an array of values from the address value configured and respective subsequent address values.
- Endianness (not available for all names): This option configures how the tag data will be formatted and whether bytes and/or words will be counted from the start (big-endian style) or end (little-endian style) of strings of data. Select one of the following options.
- No Swap: Data will be formatted in big-endian style (bytes and words counted from the start). For example: AB CD.
- Swap Bytes: Only bytes will be formatted in little-endian style (counted from the end). For example: BA DC.
- Swap Words: Only words will be formatted in little-endian style (counted from the end). For example: CD AB.
- Swap Words & Bytes: Both words and bytes will be formatted in little-endian style (counted from the end). For example: DC BA.
- Tag Formula: Enter a formula for the tag to process the generated data. Two variables are permitted: value (current tag value) and timestamp (current tag UNIX time in milliseconds). The following math functions are available:
- sin
- cos
- sqrt
- tan
- power: power(x) performs the operation 10^x.
- log: log(x) is the natural logarithm (the logarithm is in base e).
- exp: exp(x) performs the operation e^x.
- Only Publish on Change of Value: Select the checkbox to customize NATS messages to be published only when the value parameter changes from a previous value to a new one. Change of Value only applies to boolean, numeric (such as int or float), and simple string data types. It does not apply to complex types, such as JSON or array. Poll-once topics will not be affected by Change of Value settings. These topics will still only see a single message.
- Meta Data: Metadata summarizes basic information about data. This feature allows you to define key-value pair data for the device output payload later on. It can then be used to find, use, and reuse particular instances of data.
Note: If you use special characters in meta data key names, the special characters are replaced with underscore characters in the payload. This can cause two key names to be combined into one. For example, configuring the key names a**b and a&&b will cause only one key name to be created (a__b).