|
4.2.1 Protocol : IEC 60870-5-101 |
Telegram structure |
|
IEC 60870-5-101 protocol standard admits
only frame format FT 1.2 defined in IEC 60870-5-1 ( Transmission
frame formats ). Formats with fixed and variable block length are admitted. Also the single control characters E5H and A2H
are admissible. |
|
Information about the structure of the telegram see |
![]() |
|
Each character has one start bit ( binary = 0 ), 8 information bits and normally one even parity bit and one stop bit ( binary = 1 ). |
| Interface |
For each channel any COM port ( COM 1 till COM 16 ) can be selected. |
|||||
| Modem |
An individual modem can be installed and connected for each channel. LIAN 98 is able to process up to four modems in the range of COM 1 till COM 16 simultaneously. Select here the modem assigned to the selected channel. Normally this assignment will be recognized by LIAN 98 and the corresponding modem will be set. |
|||||
| Setup Modem |
The settings of the modem must be executed via the windows control panel "telephone and modem options". With this button you can check the modem settings and see if they correspond to the LIAN 98 configuration. |
|||||
| Connection type |
|
|||||
| RTS Leading delay |
0 ... 1000 msec |
|||||
| RTS Trailing delay |
0 ... 1000 msec |
| Baud rate |
Transmission speed : 25 - 115200 baud ( variable ) |
| Data byte |
8 bit ( fixed ) |
| Stop bit |
1 bit ( variable ) |
| Parity |
even ( variable ) |
| Time out |
1 - 9999 msec ( variable ) |
| Transmission procedure |
|
Settings in the channel window |
![]() |
| Link address fields |
0... 2, structured or unstructured can be selected. |
| . Output format |
dec / hex |
| . Bit structure |
The 16 bit LINK address can be divided in maximum 4 bit-fields. In the default division the address is byte by byte structured ( 8 + 8 ). But also any other values can be set ( e. g. 2 + 6 + 8 ). The entry begins always from the higher bit and the sum of all bits must be of course 16. |
| ASDU address fields |
1... 2, structured or unstructured can be selected. |
| . Output format |
dec / hex |
| . Bit structure |
The 16 bit ASDU address can be divided in maximum 4 bit-fields. In the default division the address is byte by byte structured ( 8 + 8 ). But also any other values can be set ( e. g. 2 + 6 + 8 ). The entry begins always from the higher bit and the sum of all bits must be of course 16. |
| Object address fields |
1... 3, structured or unstructured can be selected. |
| . Output format |
dec / hex |
| . Bit structure |
The 24 bit object address can be divided in maximum 6 bit-fields. In the default division the address is byte by byte structured ( 8 + 8 + 8 ). But also any other values can be set ( e. g. 2 + 6 + 4 + 4 + 8 ). The entry begins always from the higher bit and the sum of all bits must be of course 24. |
| Originator address |
yes / no |
|
In the following PDF file a typical master simulation with LIAN 98 is shown : |
|
LIAN 98 simulates a MASTER and can communicate in the polling mode ( unbalanced ) with up to 32 connected substations simultaneously. |
![]() |
| Link address ( address of the target station ) |
All telegrams to be sent are provided with the link address of the SIM list during master
simulation. |
| Address of ASDU ( address of the target station ) |
All telegrams to be sent are provided with the ASDU address of the SIM list during master simulation. |
| Originator address ( Address of the senderr ) |
All telegrams to be sent during RTI simulation will be provided with the origin address of the SIM list.. |
| Response timeout |
1 - 30 000 msec |
| Number of frame retries |
0 - 255 |
| Enable station initialization |
yes / no |
| Request link status |
TDB buffer number where the message "Request link status" ( PRM = 1, function 9 ) is stored. |
| Reset of remote link |
TDB buffer number where the message "Request link status" ( PRM = 1, function 0 ) is stored. |
| Enable clock synchronization |
yes / no |
| Use system date/ time |
yes / no |
| Clock SYNC cycle time |
1 - 1440 minutes |
| Clock SYNC command |
TDB buffer number where the command "C_CS_NA_1" ( ID 103, COT 6 ) is stored. |
| Enable general interrogation |
yes / no |
| GI cycle time |
1 - 1440 minutes |
| GI command |
TDB buffer number where the command "C_IC_NA_1" ( ID 100, COT 6 ) is stored. |
| Insert scan addresses Number of addresses delete insert |
Unbalanced : ( party line ) |
| Disable automatic station scan |
Unbalanced : yes / no |
| Request user data class 1 |
Unbalanced : |
| Request user data class 2 |
Unbalanced : |
| Scan delay |
Unbalanced : 0 - 30 000 msec |
| Generate execute command |
yes / no |
| ACTCON response timeout ( activation confirmation ) |
This parameter defines the time in seconds that the program LIAN 98 as primary station at most has to wait for an "ACTCON Respond" ( COT 7 ) or "DEACTCON Respond" ( COT 9 ) before the message "*E: ACTCON missing !" is displayed. |
| ACTTERM response timeout ( termination activation ) |
This parameter defines the time in seconds that the program LIAN 98 as primary station at most has to wait for an "ACTTERM Respond" ( COT 10 ) before the message "*E: ACTTERM missing !" is displayed. |
| Enable test procedure |
yes / no |
| Test cycle time |
0 - 255 seconds |
| Test command |
TDB buffer number where the test command "C_TS_NB_1" ( ID 104, COT 6 ) is stored. |
|
In the following PDF file a typical slave simulation with LIAN 98 is shown : |
![]() |
| Link address |
All telegrams to be sent will be provided with the link address out of the SIM list during slave simulation. |
| Address of ASDU |
All telegrams to be sent will be provided with the ASDU address out of the SIM list during slave simulation. |
| Originator address |
All telegrams to be sent during slave simulation will be provided with the origin address out of the SIM list ( = address of the master ). |
| Response timeout |
Balanced : 1 - 30 000 msec |
| Number of frame retries |
Balanced : 0 - 255 |
| Station initialization |
Balanced : yes / no |
| Request link status |
Balanced : |
| Reset of remote link |
Balanced : |
| End of initialization |
yes / no |
| Enable clock synchronization |
yes / no |
| Set new system date/ time |
yes / no |
| Time correction ( for system time of the PC ) |
0 - 9 999 msec |
| Clock SYNC command ( spontaneous ) |
TDB buffer number where the time message "C_CS_NA_1" ( ID 103, COT 3 ) is stored. |
| Use system date/ time |
yes / no
The system time of the PC will be inserted in the time synchronization command ( ID 103 COT 6 ) before transmission. Otherwise the telegram remains unchanged as before edited by the user. |
| Use E5H for respond on Request data class 2 |
Unbalanced : yes / no |
| Use only data class 2 messages |
Unbalanced : yes / no |
|
|
|
| Generate ACTCON respond |
yes / no |
| Generate ACTTERM respond |
yes / no |
| ACTTERM delay time |
This parameter defines the time in seconds that the program LIAN 98 delays the transmission of the "Activation Termination" respond ( COT 10 ). |
|
Another highlight of LIAN 98 is the use of the software as protocol router between the
protocols IEC 101 and IEC 104. When using all eight channels the IEC101 substations can be connected via the channels 1...7
and can communicate with an IEC104 client via channel 8 ( TCP/IP network ). The stations can work point-to-point
as well as in a party line mode. |
![]() |
IEC 60870-5-101 : Confirm as respond on primary functions |
![]() |
|
LIAN 98 receives a message with one of the following function codes from a primary ( PRM = 1 ) station
and will send the message in the TDB buffer you have specified. |
Function codes of the control field in messages sent from the primary station ( PRM = 1 ) |
| Function | Frame type | Service function | FCV |
| 0 | Send/ CONFIRM expected | Reset remote link | 0 |
| 1 | Send/ CONFIRM expected | Reset user process | 0 |
| 2 | Balanced : Send/ CONFIRM expected | Test function for link | 1 |
| 3 | Send/ CONFIRM expected | User data | 1 |
| 4 | Send/ NO REPLY expected | User data | 0 |
| 5 | reserved | ||
| 6 | Reserved for special use by agreement. | ||
| 7 | Reserved for special use by agreement. | ||
| 8 | Unbalanced : Request for access demand/ RESPOND expected | Expected response specifies access demand | 0 |
| 9 | Request/ RESPOND expected | Request status of link | 0 |
| 10 | Unbalanced : Request/ RESPOND expected | Request user data class 1 | 1 |
| 11 | Unbalanced : Request/ RESPOND expected | Request user data class 2 | 1 |
| 12 | reserved | ||
| 13 | reserved | ||
| 14 | Reserved for special use by agreement. | ||
| 15 | Reserved for special use by agreement. |
Function codes numbers in the control field used from the secondary station ( PRM = 0 ) |
| Function | Frame type | Service function |
| 0 | CONFIRM | ACK : Positive acknowledgement |
| 1 | CONFIRM | NACK : Message not accepted, link busy |
| 2 | reserved | |
| 3 | reserved | |
| 4 | reserved | |
| 5 | reserved | |
| 6 | Reserved for special use by agreement. | |
| 7 | Reserved for special use by agreement. | |
| 8 | Unbalanced : RESPOND | User data |
| 9 | Unbalanced : RESPOND | NACK : Requested data not available |
| 10 | reserved | |
| 11 | RESPOND | Status of link or access demand |
| 12 | reserved | |
| 13 | Reserved for special use by agreement. | |
| 14 | Link service not functioning | |
| 15 | Link service not implemented |
IEC 60870-5-101 : Simulation procedures |
Simulation of the communication services : |
|
LIAN 98 orientates to the function code and the PRM bit in the control field of the link layer : |
| Station initialization |
The primary station synchronizes its link with the secondary station by transmitting
"Request status of link" ( FKT = 9 ) and "Reset of remote link" ( FKT = 0 ). The secondary station responds with
"Status of link" ( FKT = 11 ) and "ACK" ( FKT = 0 ) and when the "ACK" is received of the primary station the
connection is established. |
| Data acquisition by polling ( unbalanced ) |
Data acquisition is used in unbalanced data transmission procedures to update the controlling station with
actual states of process variables in the controlled stations. The controlling station performs polling by interrogating ( function code
10 and 11 ) the controlled stations sequentially. Controlled stations may only transmit when they are polled. |
![]() |
| Station initialization in balanced mode. |
Simulation of the application functions : |
| Cyclic data transmission |
Cyclic data transmission is used to provide a continuous updating function of current values of process
variables in balanced and unbalanced transmission procedures. |
| Acquisition of events ( unbalanced ) |
There are two classes of data specified, class 1 data contains spontaneous data and class 2 data contains
cyclic data. Also defined is the link service "Request user data class 2" ( FCT 11 ) used for polling controlled
stations. Two consequences are possible in each controlled station when the polling telegram is received: |
| General interrogation |
The general interrogation application function is used to update the controlling station after the station
initialization procedure or when the controlling station detects a loss of information. |
| Clock synchronization |
Date and time of controlled stations are initially synchronized by the controlling station after initialization
and afterwards re-synchronized periodically. |
| Command transmission |
The controlling station sends a "SELECT command" ( ID 45... 50, COT 6 ) to the controlled station,
which responds by a "SELECT confirmation" ( COT 7 ) message if it is ready to receive the announced command. The time from the
"SELECT command" to the "SELECT confirmation" is controlled by a configurable timeout interval ( Response timeout ). |
| Transmission of integrated totals |
Integrated totals are values that are integrated over a defined period of time. |
| Parameter loading |
Parameter loading is used to change predefined parameters, e.g. dead band values that define when analogue
measurements are to be transmitted. Parameters can only be transmitted from the controlling station as a result of an operator command. |
| Test procedure |
The test procedure is used to check the complete loop from the controlling station to the controlled station
and back. |
| File transfer |
File transfers from controlled stations are mainly used to inform the controlling station of events that
had occurred. It concerns the registration of extensive data records. |
|
All process dependent data are available in a data base system in the control center computer.
LIAN 98 offers the possibility to import these process data and use it for the simulation. |
![]() |
| Use data points ( PAR list ) |
yes / no |
|
|
|
| Simulation range |
The parameter list is organized line by line and can accommodate up to 2500 data points,
each line is one data point. |
| Line from |
1 ... number of data points |
| Line till |
> line from ; maximum number of data points |
|
|
|
| Gap time |
0 ... 255 [sec] |
| Number of passes |
1 ... 255 |
| Send change of state on process command |
yes / no |
| Send interrogated information on GI command |
yes / no |
| Number of messages per GI block |
1 ... 128 |
| Gap between GI blocks |
1 ... 36000 [x 100 msec] |
|
It is absolutely necessary to set the start byte ( 10H or 68H ) for the filter- and trigger settings. With the start byte is determined whether the filter definition is valid for a telegram with fíxed length or a telegram with variable length. |
![]() |
| Filter released |
yes / no |
||||||||||
| protocol specific filter mask |
Here monitoring can be filtered for telegram specific values in which several OR-linked filter masks can be defined for the channel.
|
||||||||||
| add | Adds the next OR-element. | ||||||||||
| remove | Removes the current OR-element. |
![]() |
| Action filter released |
yes / no |
||||||||||
| protocol specific filter mask |
The action filter is described over telegram specific features corresponding to a filter setting. Additionally each action filter requires an allocation to a send buffer or alternatively to a send sequence.
|
||||||||||
| Sendbuffer number ( from, from/ till ) |
In correspondence with the action filter the message buffer "from" or the message buffers "from/ till" are to be sent. |
||||||||||
| Sequence line number ( from, from/ till ) |
In correspondence with the action filter the send sequence is to be started at line number "from" or to be started at line number "from" and to be ended at line number "till". |
||||||||||
| add | Adds the next OR-element. | ||||||||||
| remove | Removes the current OR-element. |
![]() |
| Start trigger released |
yes / no |
||||||||||
| protocol specific trigger mask |
Here you can define telegram specific start triggers for monitoring in which several OR-linked triggers can be defined for the channel.
|
||||||||||
| add | Adds the next OR-element. | ||||||||||
| remove | Removes the current OR-element. |
![]() |
| Stop trigger released |
yes / no |
||||||||||
| protocol specific trigger mask |
Here you can define telegram specific stop triggers for monitoring in which several OR-linked triggers can be defined for the channel.
|
||||||||||
| add | Adds the next OR-element. | ||||||||||
| remove | Removes the current OR-element. |
|
Each alteration in the settings is displayed by an asterisk * in the caption title and will be only effective after saving. |
|
The display format is set separately for each channel. In order to optimize the output you can choose between different plaintext settings. ( see also "FMT file : Display format" ) |
![]() |
| Plain text format 1 |
Everything is displayed : |
![]() |
| Plain text format 2 |
No link layer is displayed : |
![]() |
| Plain text format 3 |
Only information objects/ elements are displayed. |
![]() |
| Plain text format 4 |
Only link layer is displayed. |
![]() |
| Plain text format 5 |
No information objects/ elements are displayed : |
![]() |
|
Additional to the plain text output the transmission data can also be displayed in hexadecimal, decimal, ASCII, binary ( LSB first ) or binary ( MSB first ). Of course the plain text output can also be deactivated in order to display the transmission data only e.g. hexadecimal. |
![]() |
Error checks during receive |
| per character |
the start bit, the stop bit and the parity. |
| per frame |
the start character, the frame checksum and the end character, the |
| *** TimeOut ! |
Within a telegram, there may be no pause between characters. In case of timeout
occurs it is assumed that it is the end of the telegram and the telegram check is started. The sensitivity can be parameterized in the
configuration ( timeout ). |
| *E: COM-PORT ! |
Error during writing on the COM port. May be it is already occupied by another program. |
| *E: Length ! |
The length of the telegram is wrong. |
| *E: Format ! |
The repetition of the length or the start characters ( 68H ) in the message header are faulty, or the stop byte ( 16H ) is missing or set wrongly. For a fixed frame telegram, may be the parameter "Number of link address fields" is not set correct. |
| *E: Checksum ! |
The message checksum in the checksum byte is incorrect. |
| *E: SYNC ! |
The receive routine initially searches for 68H, 10H, E5H ( or A2H ). Each other character is noted as synchronization error and inserted in the PRO file. |
| *E: Overflow ! |
Error message from the UART. This error is noted only in the PRO file. |
| *E: Parity ! |
Error message from the UART. This error is noted only in the PRO file. |
| *E: Start/ Stop ! |
Error message from the UART. This error is noted only in the PRO file. |
| *E: VSQ ! |
The information stored in the field "variable structure qualifier" is senseless, it is probably caused by wrong field length in the parameterization. |
| *E: INFOBJ length ! |
The length of the information ( object ) range is not plausible. |
Error checks during simulation |
| *E: DIR bit ! |
Balanced : Direction bit is set wrong. |
| *E: PRM bit ! |
Primary message bit is set wrong. |
| *E: FCB bit ! |
Frame count bit is set wrong. |
| *E: FCV bit ! |
Frame count bit valid is not correct set. |
| *E: Link state ! |
No station initialization is done, but in the message the FCV bit is already set to valid. |
| *E: unexpected ! |
The respond at this time was not expected. |
| *E: Link address ! |
The received link address is incorrect or the entry in the SIM list is wrong. |
| *E: ASDU address ! |
The received ASDU address is incorrect or the entry in the SIM list is wrong. |
| *E: COT ! |
The TypeID set in the ASDU is not provided ( see Protocol specific parameter - PAR file ) or is not expected as feedback. |
| *E: TypeID ! |
The TypeID set in the ASDU is not provided. ( see Protocol specific parameter - PAR file ) |
| *E: ACTCON missing ! |
An expected "Activation Confirm" ( COT 7 ) respond was not received within the parameterized "Response timeout". |
| *E: ACTTERM missing ! |
An expected "Activation Termination" ( COT 10 ) respond was not received within the parameterized response timeout.. |
IEC 60870-5-101 : ASDU parameter |
|
The ASDU list is used for the plausibility of the received telegrams, both for recording as well as for the simulation. Telegram types, used in the project, have to be marked in the list and the respective permissible causes ( COT ) for this TypeID entered. Otherwise an error message is displayed when receiving the telegram ( E:TypeID, E:COT ). Additionally the length of an information object without the length of the object address is defined for each TypeID. |
![]() |
IEC 60870-5-101 : Process data |
|
LIAN 98 offers the possibility to import process data available on the control
center computer and use it for the simulation. This causes for testing a significant reduction in expenditure of time, because
you must not edit the particular telegrams. The telegrams are automatically generated by LIAN 98 on the basis of
the data point list. |
|
Load and use of process data for the simulation is detailed described
for protocol IEC 104 in an article in the LIAN 98 forum.
( see : <IEC 60870-5-104 : Load and use process data for simulation> ) |
![]() |
|
The process data description is organized line by line and can accommodate up to 2500 data points, whereby each data point is one line. |
| Address of ASDU ( station number ) high, low |
The "common Address of ASDU" is normally the station number
and the same for all objects in an ASDU. According to standard it contains of 1 or 2 octets ( high, low ). In LIAN 98
the process data always refer to one station. For the simulation this address must also be entered into the
RTI- or RTU list. |
| Station name |
maximum 15 ASCII characters |
|
|
|
| Information object address ( IOA ) high ... low |
Address of the data point |
| type ASDU name |
Type identification ( TypeID ) |
| value |
Object state ( OFF, ON, ... ) |
| step |
changing state |
| S/ E |
qualifier of command ( QOC ) : select / execute |
| time |
qualifier of command ( QOC ) :
Command pulse duration |
| data point |
maximum 69 ASCII characters |
|
Wuerzburger Ring 39, D 91056 Erlangen |
LIAN 98 Protocol Router, Simulator and Analyzer © Copyright 2001, 2006 by MAYOR GmbH. All Rights reserved. |