IEC 870-5-101 communication protocol
Supported device types and versions
Communication line configuration
Communication station configuration
Line protocol parameters
I/O tag configuration
Literature
Changes and modifications
Document revisions
Supported device types and versions
Protocol supports:
- standard IEC 60870-5-101:2003 in modes "unbalanced" (master and slave) and "balanced",
- redundancy of communication lines according to so-called Norwegian convention (Norwegian IEC 870-5-101 User Conventions).
Communication line configuration
- Line categories: Serial, Serial Line Redundant, SerialOverUDP Device Redundant, SerialOverUDP Line Redundant or SerialOverUDP System&Line Redundant.
Implementation is, according to the IEC870-5-101 standard, as follows:
- Originator ASDU address is not present.
- ASDU address is 1 byte, it is defined as the station address. ASDU addresses of all stations on one line must be different.
- Cause of transmission is 1 byte (does not contain Originator ASDU address).
- Information object address is 2 bytes, it is defined as an I/O tag address.
If a redundant communication on two lines is required (Norwegian conventions) use the line categories Serial Line Redundant or SerialOverUDP Device Redundant.
If you require the system-redundant communication, use the line category SerialOverUDP System&Line Redundant. Providing that, this communication should be also network redundant, enter "Secondary line" for both "A System" and "B System". This configuration then works in such a way that it concurrently sends and receives data from two systems and each is network-redundantly connected in compliance with so-called Norwegian convention (Norwegian IEC 870-5-101 User Conventions).
Communication station configuration
- Communication protocol "IEC 870-5-101 balanced", "IEC 870-5-101 unbalanced primary (Master)" or "IEC 870-5-101 unbalanced secondary (Slave)".
- Station address is a decimal number in range 0 - 255 and is used in protocol as the ASDU address.
- The synchronization of the station real-time may be enabled also for the protocols "master" and "balanced - station A (controlling)". Set the synchronization period to nonzero value. The synchronization is executed by ASDU 103 "Clock synchronization command" in the local time according to settings of D2000 System.
Line protocol parameters
Configuration dialog box - tab Protocol parameters.
They influence some optional parameters of protocol. Following station protocol parameters can be set:
Table 1
Parameter | Meaning | Unit | Default value |
---|---|---|---|
Link Address | Common link address. | - | 1 |
Length of ASDU Address | Length of ASDU address. | 1/2 byte(s) | 1 |
Length of Link Address | Length of common link address. | 1/2 byte(s) | 1 |
Length of Info Object Address | Length of info object address. | 1/2/3 byte(s) | 2 |
Length of Cause Of Transmission | Length of "Cause Of Transmission". | 1/2 byte(s) | 1 |
Retry Count | Delay between request retry in case of a communication failure. | - | 2 |
Retry Timeout | Delay between retry of call in case of communication error. | ms | 100 millisecond |
Wait First Timeout | Delay after sending the request before reading the response. | ms | 100 millisecond |
Wait Timeout | Delay between response readings till its completing. | ms | 500 millisecond |
Max. Wait Retry | Retry count of response reading till its completing. | - | 6 |
No Data Timeout | Delay of next call "Request user data class 1/2" if no data have been received (only master). | ms | 300 millisecond |
Inactivity Timeout | Interval of connection monitoring. If no valid data have not been received, station status will pass to communication error. Switching of redundant devices in case of SerialOverUDP Device Redundant line (only slave). | ms | 5 sec. |
Moxa Timeout | Interval of switching of the redundant devices MOXA NPort in case of communication error (only master, balanced). | sec. | 10 |
Source Flags | Set flags FI..FL according to source of line. If SerialOverUDP System+Line Redundant is used, the values will have these flags:
Note: Flag was used in communication with redundant systems to distinguish the wrong values that were sent by a partner system, which was supposed to be passive and not to send nothing. | - | NO |
No Output Flags | Activation of parameter results in ignoring of flags FA..FH for output I/O tags. If this parameter is turned off, flags FA..FH are mapped to individual bits of quality byte. | - | NO |
Link Test Timeout | Interval of request sending "Test function for link" if timeout elapsed and no data telegrams was transferred (only balanced). | sec. | 10 |
Single Value In Spontaneous Answer | When sending spontaneous changes, these will be sent one-per-ASDU and they will not be cumulated into longer packets. Parameter was implemented to handle a bug in a particular TM1703mic. | - | NO |
Send Confirmation Command | Type of sent confirmation to write value (only slave, balanced). | - 7(CONF) 10(TERM) 7(CONF) and 10(TERM) | 7(CONF) |
Accept Confirmation Command | Type of record confirmation to be accepted successfully (only master, balanced). | - 7(CONF) 10(TERM) 7(CONF) or 10(TERM) | 7(CONF) or 10(TERM) |
Max. MTU | Limitation of data packet size (only slave, balanced). | bytes | 220 |
Phys. Trans. Direction | Setting a bit DIR in balance mode (only balanced). | Station A(Controlling) Station B(Controlled) | Station A(Controlling) |
Single Byte Ack | Send single-byte ACK preferentially (0xE5). | YES/NO | NO |
Interrog. Covers Counters | Send the call 100 and counter values on general interrogation (only slave, balanced). | YES/NO | YES |
Send EOI | Send "end of interrogation command" to all ASDU (only slave). | YES/NO | YES |
Send Interrog. in Sec. Direct. | Send general interrogation command in case of slave or balanced controlled station B (only slave, balanced). | YES/NO | NO |
Sinaut Mode | Communication for system Sinaut Spectrum, which requires non-standard behavior on redundant lines (different from the Norwegian convention). | YES/NO | NO |
Full Debug | High level of communication tracking, the loaded values of I/O tags and other debug information are shown. | YES/NO | NO |
I/O tag configuration
Possible value types of I/O tags: Ai, Ao, Di, Dout, Ci, Co, Qi
I/O tag address is numerical address of data object IOA (in range 0 - 65535).
In case of command direction in master or balanced mode is necessary to configure je proper ASDU type:
ASDU type | I/O Tag type |
---|---|
45 - Single command | Dout |
46 - Double command | Dout, Co |
47 - Regulating step command | Dout |
48 - Set point command, normalised value | Ao |
49 - Set point command, scaled value | Co |
50 - Set point command, short floating point value | Ao |
51 - Bitstring of 32 bit | Co |
58 - Single command with time tag CP56Time2a | Dout |
59 - Double command with time tag CP56Time2a | Dout, Co |
60 - Regulating step command with time tag CP56Time2a | Dout |
61 - Set point command, normalised value with time tag CP56Time2a | Ao |
62 - Set point command, scaled value with time tag CP56Time2a | Co |
63 - Set point command, short floating point value with time tag CP56Time2a | Ao |
64 - Bitstring of 32 bit with time tag CP56Time2a | Co |
In case of slave or balanced mode je is necessary to configure je proper ASDU type in v data direction:
ASDU type | I/O Tag type |
---|---|
1 - Single-point information | Di, Qi (On/Off), Ai, Ci |
2 - Single-point information with time tag | Di, Qi (On/Off), Ai, Ci |
3 - Double-point information | Qi, Ai, Ci |
4 - Double-point information with time tag | Qi, Ai, Ci |
5 - Step position information | Ci, Ai * |
6 - Step position information with time tag | Ci, Ai * |
7 - Bitstring of 32 bits | Ci, Ai |
8 - Bitstring of 32 bits with time tag | Ci, Ai |
9 - Measured value, normalized value | Ai |
10 - Measured value, normalized value with time tag | Ai |
11 - Measured value, scaled value | Ci, Ai |
12 - Measured value, scaled value with time tag | Ci, Ai |
13 - Measured value, short floating point value | Ai |
14 - Measured value, short floating point value with time tag | Ai |
15 - Integrated totals | Ci, Ai |
16 - Integrated totals with time tag | Ci, Ai |
17 - Event of protection equipment with time tag | Ci, Ai, TiR ** |
18 - Packed start events of protection equipment with time tag | Ci, Ai, TiR *** |
20 - Packed single-point information with status change detection | Ci, Ai |
21 - Measured value, normalized value without quality descriptor | Ai |
30 - Single-point information with time tag CP56Time2a | Di, Qi (On/Off), Ai, Ci |
31 - Double-point information with CP56Time2a tag | Qi, Ai, Ci |
32 - Step position information with CP56Time2a tag | Ci, Ai * |
33 - Bitstring of 32 bits with CP56Time2a tag | Ci, Ai |
34 - Measured value, normalized value with CP56Time2a tag | Ai |
35 - Measured value, scaled value with CP56Time2a tag | Ci, Ai |
36 - Measured value, short floating point value with time tag CP56Time2a | Ai |
37 - Integrated totals with time tag CP56Time2a | Ci, Ai |
38 - Event of protection equipment with time tag CP56Time2a | Ci, Ai, TiR ** |
39 - Packed start events of protection equipment with time tag CP56Time2a | Ci, Ai, TiR *** |
40 - Packed output circuit information of protection equipment with time tag CP56Time2a | Ci, Ai, TiR *** |
Note 1: Individual bits of bytes which determines a quality (SIQ for ASDU 1,2,30; DIQ for ASDU 3,4,31; QDS for 5-14,20,32-36) set the attributes FLA (0.bit), FLB (1.bit) ..FLH (7.bit).
Example:
for ASDU 4 : FLA=DPI bit 0, FLB=DPI bit 1, FLC=0, FLD=0, FLE=BL bit, FLF=SB bit, FLG=NT bit, FLH=IV bit.
for ASDU 16 : FLA..FLE Sequence number bity 0..4, FLF=CY bit, FLG=CA bit, FLH=IV bit
And:
- if bit IV (Invalid) is set, status of value will be Invalid
- if one of bits NT (Not topical), SB (Substituted), BL (Blocked), OV (Overflow), CA(Counter adjusted), CY(Counter overflow) is set for proper ASDU types, status of value will be Weak.
* - T-bit from value of ASDU sets the attribute FI into value of I/O tag which has value type Ci/Ai and they are interpreted as figures -64 up-to +63.
** - ASDU 17 and 38: value of byte SEP sets the attributes FLA (0.bit), FLB (1.bit) up-to FLH (7.bit), following 2 bytes (CP16Time2a) are interpreted as positive number (0-60 000) into value of I/O tag with value type Ci/Ai or as relative time (0-60 seconds) into value of I/O tag with value type TiR.
*** - ASDU 18, 39 and 40: value of byte SPE(ASDU 18,39) or OCI (ASDU 40) sets the attributes FLI (0.bit), FLJ (1.bit) up-to FLP (7.bit). Value of byte QDP sets the attributes FLA (0.bit), FLB (1.bit) up-to FLH (7.bit), following 2 bytes (CP16Time2a) are interpreted as positive number (0-60 000) into value of I/O tag with value type Ci/Ai or as relative time (0-60 seconds) into value of I/O tag with value type TiR.
Note 2: When using the system and line redundant categories of lines, the status of line and station is formed by a logical sum of all used elements. It means, that if the redundant system consists of four lines and just one line is working, status of station and line is all right. The status of lines is presented with the help of special output I/O tag (of integer and real type). Name of this I/O tag has this format: [name of line]_SystemStatus (e.g. for line L.Test it is M.Test_SystemStatus). The value of I/O tag represents binary format of status of N-tuple lines. If the first three lines are okay but the last one does not work [FALSE,TRUE,TRUE,TRUE], I/O tag has the value 0b0111, i.e. 7.
Literature
- Telecontrol equipment and systems Part 5-101: Transmission protocols – Companion standard for basic telecontrol tasks (IEC 60870-5-101:2003), http:\\www.iec.ch.
- Telecontrol equipment and systems Part 5-2: Link transmissions procedures (IEC 60870-5-2:1992), http:\\www.iec.ch.
- Norwegian IEC 870-5-101 User Conventions, Approved version Revision no. 2.0, http:\\www.statnett.no.
Changes and modifications
- June, 2015 - implemented Source Flags parameter
Document revisions
- Ver. 1.0 - November 22nd, 2007 - document creating
- Ver. 1.1 - April 22nd, 2009 - document updating
- Ver. 1.2 - June 8th, 2015 - new parameter implemented
Related pages: