Opto22 CONT Protocol
Review the following information for setting up and configuring the Opto22 CONT Protocol driver.
Litmus Edge Compatible Series
Compatibility parameter | Compatible items |
|---|---|
Driver type | Ethernet |
Validated devices/series | Opto22 SNAP PAC Controllers, groov EPIC Controllers |
Replaces Gen 1 driver(s) | N/A |
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
- Ensure your Opto22 device is powered on and connected to your network.
- Find the device's network parameters (IP address and port number).
- Verify that the CONT protocol is enabled on the device (typically uses port 22001).
- Record the IP address for use in Step 2.
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 | Opto Devices |
Driver | Opto22 CONT Protocol Ethernet |
Network Address | The device IP address you recorded in Step 1. |
Port | 22001 |
Transport | TCP |
Enable TLS | No (default) |
Read Timeout | 2000 (ms) |
Retry Count | 0 |
Pause Between Retries | 0 (ms) |
Keep Alive | 60 (TCP Keep-Alive) |
Step 3: Configure the List of Registers
When you Add a Tag to the connected device, refer to the following register table and tag parameters. Refer to the following additional resources:
Register Table
Name | Value Types | Access Type | Description |
|---|---|---|---|
R | int32, int64, float32, []int32, []int64, []float32, string | R/W | Tag |
Note:
- For UpTimer and DownTimer tags configured in your program, use datatype float32 to read and write successfully.
- String arrays are not supported, but a single element can be read from a String table.
- Pointer register names must be prepended with PTR_.
- Pointer tables are not supported.
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. Supported types include:
- int32: 32-bit signed integer
- int64: 64-bit signed integer
- float32: 32-bit floating point
- string: String value
- []int32: Array of 32-bit signed integers
- []int64: Array of 64-bit signed integers
- []float32: Array of 32-bit floating point values
- Polling Interval: Enter a value in milliseconds. This determines how often the tag should poll the register for data.
- Tag Name: Enter a name for the tag. The tag name should correspond to the variable name configured in your Opto22 strategy or program.
- Description (Optional): Enter a description for the tag.
- 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.
- 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 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).