Skip to main content

IOMOD 16DI User Manual IEC 60870-5-103

Introduction

IOMOD 16DI is small sized stand-alone Modbus (RTU) or IEC 60870-5-103 digital input controller. IOMOD is used for industrial applications, where digital signaling is used and robust communication is needed. IOMOD is an ideal solution for applications such as data acquisition, observation, control, process monitoring, testing and measurement at remote places.  It is controlled over Modbus or IEC 60870-5-103 protocol, and can be used with any SCADA system.

Features

  • 16 digital inputs;
  • Configurable active input signal polarity or input inversion;
  • Galvanically isolated inputs;
  • Configuration over USB console;
  • Drag and Drop firmware upgrade over USB mass storage;
  • Modbus, IEC-60870-5-103 communication over RS485;
  • Values with data and time information;
  • Time synchronization over IEC-60870-5-103;
  • Software selectable termination resistor on RS485;
  • LED indication for input and data transmission;
  • Easy integration with WCC Lite gateway and CloudIndustries.eu platform

Operational information

IOMOD 16DI uses Modbus (RTU) or IEC 60870-5-103 protocol over RS485 interface. Protocol used by device can be changed by uploading a corresponding firmware. Default communication settings are: 9600 baud rate, 8N1, Slave address - 1.

Status LED

Status LED can be in 2 colors :

Blue - Device connected to USB.

Green - Normal operation.

Rx/Tx LED

The RX/TX LED on the IOMod flashes when data is either being transmitted or received via the RS485 port.

IEC 60870-5-103 description

Initialization:

IOMOD uses a standard IEC-60870-5-103 communication scheme. Initiation, control messages and queries are initiated by the master (controlling station), while IOMOD device (controlled station) only answers these requests. Therefore, the first message should be sent by master to start/restart communication (RESET CU or LINK RESET FCB). This message is answered by IOMOD with an acknowledgement (ACK) to enable master to proceed with sending other messages defined by IEC-60870-5-103 protocol. Other messages are ignored until a successful initialization has taken place.

IOMOD 8DI8DO configuration can be changed over USB interface with terminal console like PuTTY or similar.

Data polling:

When initialization is complete, master may poll IOMOD device with both Class 1 and Class 2 requests. Class 2 is used when master polls for a cyclic data. Controlled device answers with a message containing Access Demand flag when spontaneous data exists and master then sends request for Class 1. IOMOD would then respond with time-tagged message.

On first Class 1 request IOMOD device always asks for the Access Demand to send an identification string. However, if there are spontaneous messages to be sent, they will be sent before the identification string.

Input messages:

When input status changes, IOMOD device filters input glitches through filters with a user configurable filter time. When the filter is passed device sends “Spontaneous” message with “Function type” as input address (default function type of inputs – 160), and “Info number” as input pin number. Please note that spontaneous messages are answered with a four-byte time structure not containing date info. Controlling station should therefore be able to handle the signals sent before the start of a new day.

Time synchronization:

To initiate the time synchronization between devices master must send variable frame, with function code “User data with ACK”, ASDU type “6” and Cause of Transmission “8”. Info elements must contain the 7-byte time structure.

As per IEC-60870-5-103 protocol specification time synchronization can be completed for multiple devices using broadcasting messages. It is included in IEC-60870-5-103 firmware since version 1.7.3. To broadcast time synchronization message, link address should be equal to 255.

General interrogation:

General Interrogation (GI) is initiated by the master with variable frame, including function code “3” (User data with ACK), ASDU type “7” and Cause of Transmission “9”. Slave device then responds with an acknowledgement (ACK). Master gets GI data by polling with Class 2 request till slave transmits “End of GI” (Cause of Transmission – “10”). IOMOD device responds with a time-tagged message, including DPI states of inputs and outputs (Outputs are sent first). Output and input numbers are represented by “Info number” in protocol.

Device configuration

Input inversion and polarity selection:

Input polarity selection (active signal selection) is done by connecting appropriate supply to COM pin. Further explained in section 5: Mounting and installation guide.

Input inversion does logical inversion of signals.

Input grouping:

Sometimes two inputs must be captured as one DPI input. Inputs can be grouped into pairs of two. Only two neighbour pins can be grouped into pair, while first pin in pair must be an odd number pin. When grouped, second pin in the pair is not used anymore – all request to this pin generate an error. For example – IN1 and IN2 can be grouped, after that IN2 is not used; IN2 and IN3 cannot be grouped; IN3 and IN4 can be grouped, but IN4 is not used, etc.

Fig. 3.1 shows inputs ungrouped and controlled independently. In this mode, General Interrogation will be composed of 16 input states. Notice +VIO and –VIO connection: when COM is connected to negative power supply voltage, inputs are controlled by positive voltage.

image-1651665540066.png

In addition to this, Fig. 3.2 shows 1st + 2nd and 11th + 12th inputs are grouped into pair. Now, General Interrogation will be composed of 14 input states (with IN2 and IN12 missing). Input numbers is represented by “Info number” in protocol. Here, COM is connected to positive voltage of power supply and inputs are controlled by negative voltage.

image-1651665549993.png

Input filter:

Input filter is a simple input glitch filter with a time input. This filter time corresponds to time that input must achieve without changing state before sending status change.

Addressing configuration:

Devices Input address is configurable. This addresses in IEC 60870-5-103 protocol is considered as “Function Type”. Input address is 160 by default.

Device is addressed in the line as “Link address”, which is 1 by default.

Testing With “THE VINCI” software


To test IOMOD with default settings, user connects device through RS485 to IEC 60870-5-103 master. Example using “The Vinci Expert” as serial interface converter and adapter to PC with “The Vinci” software. When opening “The Vinci” software, choose IEC 60870-5-103 – Master mode. Initial settings – 9600 baud rate; 8 data, no parity, 1 stop bit. Press Start, send Time synchronization, General interrogation and go to the “Statistic” tab:


As seen in Fig. 3.3, Inputs are shown with info numbers 1-16, function type - 160.


General Interrogation, Time Synchronization options can be found at right side of the program, in the “System” tab.

image-1638372371127.png

Fig. 3.4 shows 1st + 2nd, 5th + 6th and 11th + 12th inputs grouped (notice order of info numbers). These pairs are shown INTERM (00) because both inputs of pair are off (giving binary representation of 00b).

image-1638372367941.png

Technical information

System

Dimensions

101 x 119 x 17.5, mm

Case

IP20, blend PC/ABS self-extinguishing, black

Working environment

Indoors

Operating temperature

-40 ¸ +85°C

Humidity

5-95% RH (non-condensing)

Configuration

USB – serial console

Firmware upgrade

USB – mass storage device

Electrical specifications

Inputs

16 X 3kV isolated 12-24VDC;
Selectable inversion.

Power 

Power Supply

9V to 33V

Current consumption

130 mA

Mounting and installation guide

IOMOD 16DI RS485 interface


IOMOD 16DI has an integrated 120Ω termination resistor which can be enabled or disabled over USB configuration. It is recommended to use termination at each end of the RS485 cable. See typical connection diagram on Fig. 5.1.

image-1638372358166.png

IOMOD 16DI has 1/8 Unit load receiver which allows to have up to 256 units on line (compared to standard 32 units). To reduce reflections, keep the stubs (cable distance from main RS485 bus line) as short as possible when connecting device.


IOMOD 16DI inputs


Typical application of IOMOD 16DI inputs is shown on Fig. 5.2. When default configuration for inputs is applied, user will see inputs connected to +12-24V as “high” or state “1” and input status LED will glow.

image-1651666344898.png

User also can configure to enable pull-up resistors (function is applied for all inputs) and software input inversion. With this configuration, user will see inputs connected to 0V (see Fig. 5.3) as “high” or state “1”, input status LED will NOT glow


Configuration over USB


Driver installation

Device requires USB drivers to work as a Virtual COM port. First-time connection between device and computer could result in “Device driver software was not successfully installed” error.

image-1638372342431.png

User then manually installs drivers by selecting downloaded driver folder:
Go to Control Panel -> Device Manager;
Select failed device;
Press “Update driver software”; following screen should appear:

image-1638372337090.png

Select “x86” driver for 32bit machine, or x64 for 64bit machine. If not sure, select root folder (folder in which x64 and x86 lays inside).

image-1638372333607.png


IOMOD configuration with PuTTY terminal

Configuration of IOMOD device is done through CLI (Command Line Interface) on virtual COM port. Drivers needed for MS Windows to install VCOM will be provided. To open up CLI simply connect to specific V-COM port with terminal software (advised to use PuTTY terminal software. If other software is being used, user might need to send <return> symbol after each command). When connected user should immediately see main screen as in Fig. 6.4.

image-1638369873983.png

Navigation is performed by sending number to terminal. User then proceeds by following further on-screen instructions. For example, to set baud rate, press [2] to enter Baudrate screen; press [1] to edit; enter new configuration; press [RETURN] to save, or [ESC] to cancel changes. When done, press [0] (exit) before disconnecting device. Default values is set by pressing [6] on main screen, and confirming changes [1].

If accidentally closed the terminal window, user can connect terminal program again, and press any key on keyboard to show up main menu.

Main menu contains various possibilities of device configuration. A user can configure Link Address (Fig. 6.5), set communication settings (Fig. 6.6), change the input type (address) for input values (Fig. 6.7), change which input values are inverted (Fig. 6.8).

image-1638369844931.png

image-1638369836116.png

image-1638369826344.png

image-1638369811113.png

image-1638369798095.png

Main Menu


 

Menu Name

Function

Values

Default Values

1.

Link Address

Setts Link address

1-255

1

2.

Baudrate, Parity and stop bits

Enters configuring screen for communication settings

8+1 or 8+2 (Data+Stop),

None, Odd, Even, Mark, Space (Parity)

9600,

8+1, Parity -None

3.

Data addressing config

Enters configuring screen for Input address (function type)

1 – 255

160

4.

RS485 Terminating Resistor

RS485 120 Ohms Terminating Resistor

0 - 1 (off/on)

1

5.

Input state inversion

Input inversion (Inverts input states in protocol logic)

0 - 1 (off/on)

0 (not inverted)

6.

Input configure

Enters screen for configuring (see 6.1 – 6.5 rows below)

-

-

6.1

Input grouping;

Groups or ungroups inputs

16 inputs ungrouped / 8 pairs grouped

All inputs ungrouped by default

6.2

Input filter time;

Input glitch filter – minimum stable time to detect input

1 – 60000 milliseconds

100

7.

Set Default Settings

Sets Default Settings

(1 to confirm, 0 to cancel)

-

8.

Firmware Upgrade

Mass Storage Device Firmware Upgrade

(1 to confirm, 0 to cancel)

-

9.

Diagnostics

Input states

-

-

0.

Exit

Exit and disconnect

-

-


Protocol simulator

When entered diagnostics screen, user can turn on protocol simulator by pressing [9]. When protocol simulator is turned on, device will communicate through USB port rather than RS-485 line. Communication on RS-485 line is closed and all IEC-103 commands will be accepted only from USB. To exit this mode user must restart device.


Firmware upgrade over USB

To update device firmware user must enter main configuration menu.
Enter Firmware update screen by pressing [4];
Confirm update by pressing [1];
Device now enters Firmware Upgrade mode.

image-1638369763954.png

Device reconnects as mass storage device:

image-1638369740771.png

User then must delete existing file “firmware.bin”, and simply drag and drop new firmware file.

image-1638369674953.png

Reconnect device, set default settings and check firmware version in Diagnostics screen.