- 22 Oct 2024
- 12 Minutes to read
- Print
- PDF
Configuration
- Updated on 22 Oct 2024
- 12 Minutes to read
- Print
- PDF
Note:
Before starting the configuration, a new module instance must be created. Click here for more information about creating Module instances. Each module has an API and Logger section that must be configured separately. The default settings will be sufficient for this, but users will need to actively open the API and Logger configuration settings and save the default values to fully apply the settings. Click here for more information about API and Logger Configuration.
Note:
Please note that starting from N3uron version 1.21.5, the API section has been completely removed from the configuration options.
Note:
This module is available from N3uron version 1.21.7.
Module Configuration
As shown in the previous screenshot, multiple connections can be created in the Model panel by clicking on the burger menu icon. Each connection is named Channel. See below for an explanation of the different configuration options.
Channel Configuration
A channel represents the physical medium that will be used for communication between N3uron and remote IEC 104 devices. Each channel has the following parameters:
Enable data collection: When Disabled, the connection will remain inactive and all associated tags will remain as Bad-Uninitialized. The default value is set to Enabled.
Connection:
Host: Hostname/IP address of the target device.
TCP Port: TCP port number for the connection.
Reconnect delay: Delay before attempting to reopen the connection after a failed attempt, in milliseconds.
Protocol settings:
Common address size: Determines the number of bytes (or octets) used for the common address. The default setting is 2.
If set to 1, the valid range for the Common Address is 0 to 254.
If set to 2, the valid range for the Common Address is 0 to 65534.
Cause of transmission size: This parameter specifies the number of bytes in the Cause of Transmission (COT) field of an IEC 60870-5-104 data packet. It can be 1 or 2 bytes. The second byte represents the originator's address. In this way, when the COT size is 2 it includes the originator address (the address of the IEC 60870 client) in the messages, while the originator address is not included in the messages when the size is set to 1. The default setting is 2 bytes.
Originator address: This parameter specifies the second byte of the Cause of Transmission (COT) field in an IEC 60870-5-104 data packet. The Originator Address is used to identify the source of the data packet. This is useful in systems with multiple controlling stations, or when there are dual-mode stations that can act as both a master and a slave. The valid range for the Originator Address parameter is 0 to 254. The default setting is 0.
K: The K parameter, also known as the maximum unacknowledged transmitted APDUs, defines the maximum number of unconfirmed APDUs transmitted to the other station without waiting for an acknowledgment (ACK) for each APDU. The default setting is 12.
Example: With a K value of 12, the client can transmit up to 12 APDUs simultaneously without requiring an immediate acknowledgment from the server.
W: The W parameter, also known as the maximum unacknowledged received APDUs, defines the maximum number of APDUs received from the remote station before it is required to send an acknowledgment (ACK) indicating that it has successfully received all the APDUs. This setting works in conjunction with T2 to limit how often the client acknowledges APDUs. The default setting is 8.
Example: With a W value of 8, the client will wait to send an ACK to the server until it has received either 8 unacknowledged APDUs or the T2 timeout period has elapsed. At that point, the client will transmit a supervisory APDU to acknowledge all the received APDUs.
Timing:
T1: Maximum time to receive the acknowledge message (ACK) to a transmitted APDU (Application Protocol Data Unit). If the ACK is not received within the specified T1 timeout period, the sender assumes that the APDU has either been lost or corrupted. As a result, the client closes the current connection and initiates a reconnection. The default setting is 15000ms.
Example: When the timeout is set to 15000 milliseconds, the server has a maximum window of 15000 ms to acknowledge an interrogation command received from the client, regardless of the command's execution time. Failure to receive an ACK within this timeframe triggers retransmission procedures initiated by the sender.
T2: The T2 parameter, also known as the APDU acknowledgment timeout, defines the time to wait before sending a supervisory APDU ACK response indicating that it has successfully received the APDU. The default setting is 10000 ms.
Example: With a timeout set to 10000 ms, the client will defer acknowledging received APDUs from the server until either the T2 timeout has elapsed or the K value has been reached. At that point, the client will send a supervisory APDU to acknowledge the received APDUs.
T3: The T3 parameter, also known as the idle timeout, defines the maximum amount of time that a communication link can remain idle before a TEST APDU frame is transmitted to verify the connection's integrity. The default setting is 20000 ms.
Example: With a timeout set to 20000 ms, a test frame will be sent to the server if no APDUs are received within this timeframe. The receipt of any APDUs will reset this timer, ensuring that communication remains active.
T3 timeout: The T3 timeout defines de time to wait for the device to respond to a test frame. If the device does not respond in time, the connection will be terminated. The default setting is 20000 ms.
Device Configuration
Once a Channel has been configured, a remote IEC 104 device can be added.
To create a new Device, you can click on the Devices button under Channel and select New Device.
When selecting New Device, begin by assigning a name, as illustrated in the image below.
Note:
Even though it's uncommon, the specification allows for a gateway that enables multiple devices with a single connection.
Once the device is created, you can configure the following parameters:
Enable data collection: Enable or disable data collection on this device. When disabled, no data will be sent to the device and associated tags will remain as Bad - Uninitialized.
Common address of ASDU: The Common Address of ASDU parameter, also known as the COA, specifies a unique identifier for the outstation or remote device from which APDUs are received. The valid range is 0 to 254 or 65534, depending on whether the Common address size setting is set to one or two octets. The default setting is 3.
Interrogation:
Note:
Interrogation settings must be set up to regularly request data from the server. If there's no interrogation, and the server isn't set to send updates regularly, the client won't get any data. As a result, the tags in the client app will remain in a "bad quality" state showing that the data is unavailable.
Interrogation group: The Interrogation Group (IG) parameter in the IEC 104 protocol defines a logical grouping of data objects within an outstation or remote device. This grouping enables efficient data retrieval by allowing a client or master station to request data from multiple data objects with a single interrogation command.
General interrogation.
Interrogation group 1-16.
Rate: Sets the rate at which interrogation APDUs are sent to the outstation. The default value is 60000ms.
Tag Configuration
Note:
For additional details on Supported ASDUs, please refer to the Appendix.
The channel and device configuration parameters define the settings for establishing connections to slave devices. Once these elements are configured, users can proceed to create and configure tags associated with the data received from IEC 104 devices, as illustrated in the example below:
Source:
Enabled: When Disabled, tags won't be updated with the values received from the server, but instead, will essentially act as memory tags. When set to Enabled, the tag value will be continuously updated with the values received. The default value is set to Disabled.
Module type: The type of the module used to retrieve the tag's value, quality and timestamp.
Module name: Name of the module instance used to obtain the tag's value, quality and timestamp.
Config:
Note:
To send commands from the client to the server, N3uron uses Direct Execute. Therefore, the server must be configured accordingly. In order to write values, ensure that the tag is configured with Read/Write. For more information on tag configuration, please refer to the documentation available at creating tags.
Note:
Please note that many RTUs or Outstations, do not automatically provide feedback through the same IOA used to send commands; instead, they often utilize a different IOA for feedback. Starting with N3uron version 1.21.11, you can configure separate IOA addresses for sending commands and receiving feedback within the tag configuration.
Device: Devices are specified using the format <channel>/<device_name>. Ensure the device is created and configured within the IEC104 Client module connections. For example, to connect to an IEC104 field device with channel name Channel01 and device name Device01, use Channel01/Device01.
Read IOA: Specifies the Information Object Address (IOA) used to retrieve data for this tag. The IOA uniquely identifies a specific data object within an outstation or remote device. By assigning a separate Read IOA, the system can independently receive feedback, enabling more efficient data management and clearer monitoring of data retrieval processes.
Note:
This feature is available starting from N3uron version 1.21.11.
Data type: Selects the type of data received from the outstation.
Single point:
Represents binary information, indicating a simple on/off or true/false state.
Includes quality descriptor and Cause of Transmission (COT).
Single command:
A command type that allows the client to write a binary value, representing a simple on/off or true/false state.
The tag property for Client access must have read/write RW permissions.
Note:
This data type is available starting with N3uron version 1.21.11. In earlier versions, this data type was included within the Single Point data type.
Double point:
Represents binary information with two bits, known as Double Point Information (DPI). The states are defined as follows:
00 (0) Indeterminate state or intermediate state.
01 (1) Determined state OFF.
10 (2) Determined state ON.
11 (3) Indeterminate state.
This encoding allows for a more nuanced representation of states beyond simple on/off.
Includes quality descriptor and Cause of Transmission (COT).
Double command:
A command type that allows the client to write binary information using two bits, known as Double Point Information (DPI). The states are defined as follows:
00 (0) Indeterminate state or intermediate state.
01 (1) Determined state OFF.
10 (2) Determined state ON.
11 (3) Indeterminate state.
The tag property for Client access must have read/write RW permissions.
Note:
This data type is available starting with N3uron version 1.21.11. In earlier versions, this data type was included within the Double Point data type.
Step position:
Represents discrete positions within a defined range.
Includes quality descriptor, Cause of Transmission (COT) and In-transit flag.
Note:
Write operations for this data type are not supported.
Bit String:
It is a sequence of bits (up to 32 bits) used for transmitting multiple binary signals simultaneously.
Includes quality descriptor and Cause of Transmission (COT).
Bit String command:
A command that allows the client to write a sequence of up to 32 bits, enabling the simultaneous transmission of multiple binary signals.
The tag property for Client access must have read/write RW permissions.
Note:
This data type is available starting with N3uron version 1.21.11. In earlier versions, this data type was included within the Bit String data type.
Normalized value:
It is used for representing measured values in a normalized format, ranging from -1 to +1.
Includes quality descriptor and Cause of Transmission (COT).
Normalized value command:
A command that allows the client to write measured values in a normalized format ranging from -1 to +1.
The tag property for Client access must have read/write RW permissions.
Note:
This data type is available starting with N3uron version 1.21.11. In earlier versions, this data type was included within the Normalize value data type.
Scaled value:
Represents measured values that are scaled to a specific range. It is a 16-bit integer with values ranging from -32768 to +32767.
Includes quality descriptor and Cause of Transmission (COT).
Scaled value command:
A command that allows the client to write measured values as 16-bit integers scaled to a specific range -32768 to +32767.
The tag property for Client access must have read/write RW permissions.
Note:
This data type is available starting with N3uron version 1.21.11. In earlier versions, this data type was included within the Scaled value data type.
Floating point:
Represents measured values using IEEE 754 standard floating-point representation.
Includes quality descriptor and Cause of Transmission (COT).
Floating point command:
A command that allows the client to write measured values using the IEEE 754 standard floating-point representation.
The tag property for Client access must have read/write RW permissions.
Note:
This data type is available starting with N3uron version 1.21.11. In earlier versions, this data type was included within the Floating point data type.
Variable: This parameter defines the specific information to be extracted from the data received and assigned to the tag value. Available options for all data types include:
Common variables:
Value: Reads the current value of the data point.
Cause of transmission (COT): Reads the reason for the transmission of this APDU.
Qualifier (Invalid): Reads the invalid bit of the qualifier, indicating whether the value is valid (0) or invalid (1) due to abnormal conditions.
Qualifier (Not topical): Reads the not topical bit of the qualifier, indicating whether the value is current (0) or outdated (1) .
Qualifier (Substituted): Reads the substituted bit of the qualifier, indicating whether the value is from the original source (0) or substituted (1).
Qualifier (Blocked): Reads the blocked bit of the qualifier, indicating whether the value is available (0) or blocked (1).
Step Position Specific variables:
In transit flag: Reads the value of the In transit flag of the data point, which is the 8th bit of the step position value. It indicates whether the position is changing (1) or stable (0).
Value (Raw): Reads the raw value received from the server. This includes the whole byte, which consists of the first seven bits representing the value and the 8th bit representing the In-transit flag.
Qualifier (Overflow): Reads the overflow bit of the qualifier, indicating if an overflow has occurred.
Normalized Value Specific variables:
Value (Normalized): Reads the value of the data point after calculating the normalized value.
Value (Raw): Reads the raw value received from the server before calculating the normalized value.
Qualifier (Overflow): Reads the overflow bit of the qualifier, indicating if an overflow has occurred.
Scaled Value Specific variables:
Qualifier (Overflow): Reads the overflow bit of the qualifier, indicating if an overflow has occurred.
Bit string Specific variables:
Value: This allows you to access and read the value of a specific bit within the 32-bit string. You need to specify the bit position (0-31) to read its current value.
Value (Raw): Accesses the entire 32-bit string, allowing for both reading of the complete set of bits in one operation.
Qualifier (Overflow): Reads the overflow bit of the qualifier, indicating if an overflow has occurred.
Write: Below this section are the settings that apply when Command data types are selected.
Note:
Starting with N3uron version 1.21.11, this settings section allows for the separation of IOA addresses for Read and Write operations.
Write mode: Only Direct Operate is currently supported.
Write IOA: Specifies the Information Object Address (IOA) designated for writing commands. By assigning a separate IOA for write commands, you can send data to this Write IOA while receiving feedback through a different Read IOA, as previously explained. This separation enables more efficient data management and clearer monitoring of command execution.
Note:
The tag property for Client access must have read/write RW permissions.
Pulse type: Specifies the pulse type applied during the writing of Single Point and Double Point commands.
Unspecified: No additional definition is included in the control ASDU, allowing the device to use its default settings.
Note:
This option may not be supported by all field devices.
Short pulse: The control ASDU includes a Short Pulse Quality of Control (QoC).
Long pulse: The control ASDU includes a Long Pulse Quality of Control (QoC).
Persistent: The control ASDU includes Persistent QoC. The output remains in the specified state until a new command is received.
Note:
The specific pulse durations for Short and Long Pulse are defined by the outstation’s configuration.
Refer to this link for more detailed information on creating tags.
IEC 104 Client Full Product Details