This document has only the specific information about the device connection settings and its address syntax.
Refer to the User Guide for more information on the Device Module.
On this page:
The IEC870504S protocol implements communication with client stations compatible with this protocol, acting as a slave station (server).
Communication Driver Information | |
---|---|
Driver name | IEC8705104S |
Assembly Name | T.ProtocolDriver.IEC8705104S |
Assembly Version | 9.1.3.0 |
Available for Linux | False |
Devices supported | Any IED compatible with IEC-60870-5-104. |
Manufacturer | |
Protocol | Proprietary over TCP/IP |
Protocol options | Counters for sending protocol control messages |
Multi-threading | User defined. Five threads per node by default |
Max number of nodes | User defined |
PC Requirements | Ethernet port |
The protocol uses the same ASDUs defined for IEC-60870-5-101, as well as the same object data types. The major difference is that it is only targeted towards network orientation, using TCP/IP as the transport layer.
Plus all the variant of the ASDUs above with a 56-bit timestamp. The codes above are used when registering points, but the variant with date and timestamp obtained from the tags contained in the memory at the moment is used when sending unsolicited changes.
This communication module implements the IEC-60870-5-104 protocol in Slave mode communicating with IEDs that use the same protocol in Master mode. Several parameterizations are available to accommodate different profiles of protocol implementations.
Slave mode has the following operating sequence:
This module answers to variable reading — analog and digital —, event transmission and command execution requests. The implementation has the following characteristics:
Logging Level | |
---|---|
Debug | All messages are registered in the LOG. |
Info | Only Info, Warning and Error messages are registered in the LOG. |
Warning | Only Warning and Error messages are registered in the LOG. |
Error | Only Error messages are registered in the LOG. |
The time interval between each of the two checks will be as defined in the above parameter, Max time to send analog changes (ms).
Each node is a server station (IED). User may set a single station per channel.
Points can be input or output points. Input points, i.e. points that are acquired by the protocol, have basically two main parameters: point type and address. Output points used for remote controls have an additional address field parameter to specify an output operation. In a given IED or Node all addresses are unique no matter the kind of point.
Scada in Slave mode implements:
The implemented point types are defined by the data objects set out in the IEC standard, presented below:
M_SP_NA: 1 - Single-point information
Simple binary input point, value 0 or 1. The variant sent by the server has the timetag M_SP_TB (= 30) when sent spontaneously, or M_SP_NA_1 itself in the answers to General Interrogations. In registration, only this type is used.
M_DP_NA: 3 - Double-point information
Dual input point, which can assume states 0 to 3. Normally used in the signaling of states of switches and circuit breakers. The variant sent by the server has the timetag M_DP_TB (=31) when sent spontaneously, or M_DP_NA itself in the answers to General Interrogations. In registration, only this type is used.
M_ST_NA: 5 - Step position
Step or step value, in the range from -64 to +63, mainly used for transformer tap position or other position information. The variant sent by the server has a “timetag” when sent spontaneously, or the M_ST_NA itself in the answers to General Interrogations. In registration, only this type is used.
M_BO_NA: 7 - Bitstring with 32 bits
Binary state information as a 32-bit string. No manipulation is done by the driver. The setting is treated as a long number. The variant sent by the server has the “timetag” M_BO_TB (= 33) when sending spontaneously, or M_BO_NA itself in the answers to General Interrogations. In registration, only this type is used.
M_ME_NA: 9 - Measured value, normalized
Standard analog 16-bit signal measurement. Value between -32768 and +32767. It is calculated as a real number between 0 and 1 before being assigned to a tag in real time. Scaling must be used to reproduce the value in the engineering unit. The variant sent by the server is the same without the timetag M_ME_NA for both the changes and the replies to the General Interrogations. In registration, only this type is used.
M_ME_NB: 11 - Measured value, scaled value
Scalar analog measurement used for transmitting analog quantities. Also 16-bit, value between -32768 and 32767. The variant sent by the server is the same without the timetag M_ME_NB for both changes and replies to General Interrogations. In registration, only this type is used.
M_ME_NC: 13 - Measured value short floating point
Analog measurement in a fractional real number format, used for transmission of analog quantities. The measurements are 32-bit fields in the IEEE STD 754 format, which implements floating-point numbers. The variant sent by the server is the same without the timetag M_ME_NC for both changes and replies to General Interrogations. In registration, only this type is used.
M_IT_NA: 15 - Integrated totals
Full analog measurement with signal. Measures with 32 bits integer. The variant sent by the server is the same without the timetag M_IT_NA for both changes and replies to General Interrogations. In registration, only this type is used.
C_SC_NA: 45 - Single command
Command for a single point (1 bit). Command details can be chosen by clicking the button to the right of the field. It’s also possible to enter the number which is the command code resulting from the choice of details directly. Each point will be statically parameterized in the POINTS table, so that one point must be set for opening and one for closing one-bit switches.
C_DC_NA: 46 - Double command
Command for a double point (2 bits). Command details can be chosen by clicking the button to the right of the field. It’s also possible to enter the number which is the command code resulting from the choice of details directly. Each point will be parameterized statically in the POINTS table, so that one point must be configured for opening and another for closing two-bit switches.
C_RC_NA: 47 - Regulating step command
Command for setting step, usually used to send pulses to step switching transformers up and down. Command details can be chosen by clicking the button to the right of the field. It’s also possible to enter the number which is the command code resulting from the choice of details directly. Each point will be parameterized statically in the POINTS table, so that one point must be configured to step the position up and another to step it down.
C_SE_NA: 48 - Set point command, normalized value
For sending 16-bit set points, normalized to IEDS that support this type of command.
The value to be sent is the one indicated by the tag whose address was sent in the command.
C?_SE_NC: 50 - Set point command, short floating point value
For sending 32-bit set points, in a IEEE STD 764 floating point format, to IEDs that support this type of command. The value to be sent is the one indicated by the tag whose address was sent in the command.
C_BO_NA: 51- 32-bit Write Bitstring
For writing on the IED server binary state information as a 32-bit string. No manipulation is made by the driver. The setting is treated as a long unsigned number. The value to be sent is the one indicated by the tag whose address was sent in the command. The type of the tag must be “long” or AnalogInt, which is a 32-bit integer.
The completion of point addresses is performed in the engineering environment, on Edit → Devices → Points.
The Address field to be filled in during point registration is what the standard calls Information Object Address. This is a number of 3 bytes. For a given IED (node), it must be unique.
As shown in the figure below, clicking once on the row of the address column will open a window to select the type and address of the point. Clicking on the type will open a window with all types of points supported:
To select Type:
The command parameter applies only to commands types and is a one-byte code which details what and how the IED should execute the command. In this implementation, as the user registers a point typed as command output, this field shows up to the user. If the user already knows the code, then he or she can just type it in the field. Otherwise, they must click the button to the right of the window to display a dialog to choose the actions and details of commands.
The codes generated by choosing the items in the window parameter setting command are formed by calculating the sum of two parts (A and B), with the first part indicating the action, and the second indicating the details of the transaction, as defined below:
For Single Command C_SC_NA:
0 | Turn off | (A) |
1 | Turn on | (A) |
0 | No detail | (B) |
4 | Short Pulse | (B) |
8 | Long Pulse | (B) |
12 | Persistent Signal | (B) |
For Double Command C_DC_NA:
0 | Turn off | (A) |
1 | Turn on | (A) |
0 | No detail | (B) |
4 | Short Pulse | (B) |
8 | Long Pulse | (B) |
12 | Persistent Signal | (B) |
For Voltage Regulation C_RC_NA:
1 | Down | (A) |
2 | Up | (A) |
0 | No detail | (B) |
4 | Short Pulse | (B) |
8 | Long Pulse | (B) |
12 | Persistent Signal | (B) |
The remaining options are the Select command - just select the device to be controlled, or the Execute command – which means sending the action command itself. For the Select, 128 must be added to the code obtained from the sum of the parts A and B.
Example: code = 9 in a simple command means Long Pulse to Turn on the remote device.
When receiving a master (client) command, the server runs according to the parameter coming from the message. The parameter defined on the data base of the server is not used and can be set in any way desired by the user.
The behavior of the server when executing a command is as follows:
Select / Execute
Detail Options – Option B
In order to set up the Scada with output parameters, follow the procedure below:
1. Click the right border of the address once to show three command parameters in the command tab:
And the command options:
2. Select the desired options and by clicking on the left green arrow, the binary value corresponding to the selection will be loaded in the command parameter:
If detailing the type of signal to be sent is necessary, before clicking the left green arrow, click Details and, as in the figure below, select the type of the output signal:
Since this is a slave (server) communication module, it requires a few specific characteristics of its own in order to parameterize the Access Type field in the Points table:
For reading-type points: (using WriteEvents enabled, receiving changes as events)
The Access Type must be defined with:
For reading-type points, used as analog measures (Using Get analog changes by sampling mode)
AccessType must be defined as shown in the SlaveAna figure below.
For output commands-type points:
AccessType must be defined as: (WriteSlave)
IEC8705104S Revision History | |
---|---|
Version | Notes |
9.1.3.0 | Initial release on new documentation standards. |