Omron Device Plugin

The Omron Device Plugin enables reading and writing data in Omron devices.

All Omron devices that can be addressed via the FINS protocol (serial/TCP) or via Host-Link/C-Mode Commands:
  • CS
  • CJ
  • CP
  • NSJ
  • CVM1
  • CV

The entire configuration of the Omron Device Plugin is located under the node path System/Devices/Omron Device.

Node path of the Omron Device Plugin

Channel

A Omron Device Channel represents a connection to an Omron device.

Settings

Allgemein

Transport type

The transport type that is used for the connection

  • Serial (Host-Link): Serial communication. Supports the FINS protocol on top of a Host-Link transport layer as well as Host-Link/C-Mode Commands.
  • TCP: Communication via TCP/IP. Only supports the FINS protocol.
Destination Network Address

The Destination Network Address of the device.

Destination Node Address

The Destination Node Address of the device.

Destination Unit Address

The Destination Unit Address of the device.

Source Network Address

The Source Network Address used by the driver.

Source Node Address

The Source Node Address used by the driver.

Source Unit Address

The Source Unit Address used by the driver.

Connect Timeout

The timeout used for connection establishment.

Read Timeout

The timeout used for read operations.

Write Timeout

The timeout used for write operations.

Serial

Settings used for the transport type Serial (Host-Link).
Protocol type

The protocol type used by the driver.

  • Host-Link: Host-Link/C-Mode Commands protocol
  • FINS: FINS protocol
Port

The serial port used for the communication with the device.

Baudrate

The baudrate used by the driver.

Data bits

The number of bits used by the driver.

Parity bit setting

The parity bit setting used by the driver.

Stop bits

The number of stop bits used by the driver.

Handshake

The type of handshake used by the driver.

The Host-Link Unit number of the device.

TCP

Settings used for the transport type TCP.
IP Address

The IP address of the device.

Port

The port of the device. The default port for FINS connections is9600.

Adding a channel

Adding a new Omron channel

To add new Omron channel follow these steps:

  1. Add a new folder node under the node Omron Device/Channels or right-click on the node Omron Device/Channels and select Add Channel.
  2. Input the settings for the Omron connection in the dialog Add channel.
  3. After clicking on “OK” the channel node is created.
  4. You can now start the channel by selecting the channel node in the node tree and clicking the start button.

Variables

You can create datapoint nodes unter the node Variables representing variables on the device that can be read and written.
The property Value Type has to be set to the corresponing variable type (Boolean, Byte, Int16, UInt16, Int32, UInt32 and the respective array types).

Path

The Path property defines the PLC address of the variable in the device and optionally its length if an array is accessed:

<Area><StartAddress>.<BitNumber>,<Length>
Placeholder Description Possible Values (Description) Optional (default value)
<Area> Memory area in the device CIO - Core Input Output
D,DM - Data Memory
E,EM - Extended Memoy
W,WR - Work
 H,HR - Holding Relay
A,AR - Auxiliary Relay
T,TPV,T.PV - Time Present Value
TCF,T.CF - Timer Completion Flag
C,CPV,C.PV - Counter Present Value
CCF,C.CF - Counter Completion Flag
TK,TK.Status - Task Flag Status
TK.Bit - Task Flag Bit
Yes (CIO)
<StartAddress> Start address of the variable depends on the memory area and the device type - see tables below No
<BitNumber> Number of the bit on bit access 0 - 15 Yes (0)
<Length> Lenght of the array depends on the start address, memory area and the device type - see tables below Yes (1)
CS / CJ / CP / NSJ-series
Area Data type Path Memory area address (dec) READ WRITE
CIO Bit CIOXXXX.XX CIO000000 - CIO614315 X X
UInt16 / Int16 CIOXXXX CIO0000 - CIO6143 X X
Work Bit WXXXXX.XX W00000 - W51115 X X
UInt16 / Int16 WXXX W000 - W511 X X
Auxillary Bit Bit AXXX.XX A00000 - A44715 X
A44800 - A95915 X X
UInt16 / Int16 AXXX A000 - A447 X -
A448 - A959 X X
Timer Completion Flag (Bit) TCFXXXX oder T.CFXXXX T0000 - T4095 X -
Present Value (Int16) TXXXX oder T.PVXXXX T0000 - T4095 X X
Counter Completion Flag (Bit) CCFXXXX oder C.CFXXX C0000 - C4095 X -
Present Value (Int16) CXXXX oder C.PVXXXX C0000 - C4095 X X
CVM1 / CV-series
Area Data type Path Memory area address (dec) READ WRITE
CIO Bit CIOXXXX.XX CIO000000 - CIO255515 X X
UInt16 / Int16 CIOXXXX CIO0000 - CIO2555 X X
Auxillary Bit Bit AXXX.XX A00000 - A44715 X -
A44800 - A95915 X X
UInt16 / Int16 AXXX A000 - A447 X -
A448 - A959 X X
Timer Completion Flag (Bit) TCFXXXX oder T.CFXXXX T0000 - T1023/12047 X -
Present Value (Int 16) TXXXX oder T.PVXXXX T0000 - T2047 /
T0000 - T1023
X X
Counter Completion Flag (Bit) CCFXXXX T0000 - C2047 /
C0000 - C1023
X -
Present Value (Int 16) CXXXX oder C.PVXXXX C0000 - C1023/C2047 X X
The Omron Device Plugin provides different status information, depending on the layer to inspect. In general the channel based diagnostic information is produced by the connection status of the channel to the Omron PLC. The variable based diagnostic information is produced during the read/write access of the different variables.

Channel

To monitor and diagnose the status of a Omron Channel, take a look at the following image:

The image above depicts the Omron Channel's Control Panel which displays all status relevant information. The control panel will automatically update its status information when a new status is available.

Status Circle

Color Meaning
The channel is stopped. Click the button to start it.
The channel is currently in the progress of starting or stopping or is waiting to establish a connection.
The channel is running and a connection has successfully been established. You can stop it by clicking the button.
The channel is running, but the connection is currently in an error state. Please check the status text for more information.

Variables

To monitor and diagnose the status of the different Omron variables take a look at the variable's Status Code property displayed in Codabix®.
In case the Status Code column displays the value Bad in most cases the addressed data area is not accessible.

Codabix® - Variable Status

Log File

All device channel related status information is also logged into the channel-specific log file stored in the [LoggingFolder]. Each log file is named in the naming scheme Omron Device.<ChannelName>.log. The content of such a log file can look as follows:

...
[15:31:46 05.09.2016] - Error (Severity=High): Code=[-6], Text=[The operation has timed-out.]
...

<callout title=“” type=“success” icon=“fa fa-cube”>

As each device plugin the Omron device plugin extends the basic Codabix Device Model.

As each device plugin the Omron device plugin extends the basic Codabix Device Model.

Device

The plugin's device type OmronDevice also defines the OmronDeviceChannel and therefore extends the basic CodabixDevice and CodabixDeviceChannel entities. While the OmronDevice just represents a concretization of the CodabixDevice, the OmronDeviceChannel extends the CodabixDeviceChannel with the Omron Variable Entities.

Channel

Each channel is handled by a Channel Worker which establishes a physical connection to the Omron device. For diagnostic purposes, the worker automatically reads the PLC address “MB 0” every 10 seconds to update the status code of the Channel and description to detect connection failures.

By default, the worker does not read any values. When a client or plugin requests a synchronous read of the Channel variables in Codabix (e.g. using the Codabix Web Configuration's function “Read actual value”), the channel worker reads them from the underlying Omron device and then writes them into the corresponding Codabix Nodes.

Similarly, when a Client or plugin writes values into the channel's variables, the channel worker will write those values to the underlying Omron device.

To have an Omron variable being read steadily, you can edit the Node in the Codabix Web Configuration and set “History Options” to Yes (which will create an internal subscription), or you can use e.g. a OPC UA Client connected to the OPC UA Server plugin and create a subscription for the Omron variable Nodes. In these cases, the channel worker reads the variables from the Omron at a regular interval and, if the value of one of the variables has changed, writes the new value into the corresponding Codabix Node.

Variable

Each Omron variable can access the same PLC memory using the same PLC address operand. Supported variable formats are scalar and array variables.

Ordner

Inhalt Pfad Zweck / Verwendung
AssemblyFolder <CodabixInstallDir>/plugins/OmronDevicePlugin/ Contains the plugin's assembly file.
LoggingFolder <CodabixDataDir>/log/ Contains the plugin's log files.

Dateien

Typ Pfad Zweck / Verwendung
Assembly [AssemblyFolder]/CoDaBix.OmronDevicePlugin.dll The plugin's assembly file..
Logging [LoggingFolder]/Omron Device.<ChannelName>.log The log file for the channel <ChannelName>.

This Document

Datum 2021-10-27
Version 1.0.1

Plugin

Name Omron Device Plugin
Node /System/Device/Omron Device
Version 1.10.0

Assembly

Name CoDaBix.OmronDevicePlugin.dll
Datum 2021-01-18
Version 1.10.0.0