<

../pvss.htm menu.gif basics.gif

Possible IEC driver config entries

General

Entry

Type

Default

Range

Description

autoAnswerReadComm

string

"No"

"Yes"|"No"

This config entry defines whether the driver should answer read telegrams (Type 102) automatically.

This makes only sense, if the driver is operated in 'Controlled Station' mode and not as usual in 'Controlling Station' mode.

autoGQ

int

1

0 - 3

General query after connection establishment (autoGQ <mode>)

<mode>:

0 ... no automatic GQ

1 ... automatic GQ after connection establishment (Default)

2 ... automatic GQ at redundancy change-over

3 ... as well as

For a GQ no wildcard ('*') may occur in the Common Address (first 2 bytes from left) in the Local/Global list! The automatic GQ requires that the locale/global list are correctly  filled out for all connections.

autoNegativeConf

string

"No"

"Yes"|"No"

Automatic negative confirmation of commands.

Command confirmation in IEC 60870 is done by a mirror of the command telegram.

In controlled station mode, this must be done in WinCC OA using a CTRL script, which presumes that corresponding addresses are configured. This means if a positive confirmation should be sent, a script has to be created.

Using the config entry

autoNegativeConf = "Yes"  you can specify that the IEC driver automatically sends a negative response to a command, if it cannot be mapped to an input address. The default value of the config entry is "No". This only applies to command telegram types in the range of C_SC_NA_1..C_BO_TA_1.

discardBlocked

string

"No"

"Yes"|"No"

If the config entry discardBlocked = "Yes" is set, all data of "Blocked" Information Objects are discarded in the driver. For further information to the quality information "Blocked" see Quality identification.

extendedCOT

string

"Yes"

"Yes"|"No"

The config entry extendedCOT = "Yes"  specifies that the connection index is entered into the 16-31 bits (this means into the upper 16 bit) when the IEC "Cause of Transmission" is mapped on the data point. This index is only meaningful in case of redundant connections. On the input side then index can be used to detect the connection that was used to receive the telegram. On the output side the index can be used to send a telegram via a specific connection. The config entry also means that  upper 16 bits have to be masked out if you only want to use the IEC COT.

ftTimeout

uint

10

1 - 1000

Defines the time limit in seconds for a response to a file transfer telegram.

ftRootDir

string

"data"

-

Default: "data" directory of the current project.

Root directory for the incoming and outgoing files.

ftInSubDir

string

"iecIn"

-

Subdirectory for incoming files. This subdirectory will not be created automatically in the "data" directory of the current project. You have to create the directory manually.

ftOutSubDir

string

"iecOut"

-

Subdirectory for outgoing files. This subdirectory will not be created automatically in the "data" directory of the current project. You have to create the directory manually.

ftMaxSectionGap

int

0

0|1

The config entry specifies that a file transfer is not interrupted although certain sections (queried sections) do not exist. The default 0 means that the driver does not interrupt when a section is missing. The value 1 specifies that the driver skips the missing sections.

ftSegmentsPerLoop

uint

1

1 - 10

Defines the number of segments send in one main loop pass (Default: 10ms).

ftMaxQueuedReq

uint

4

1 - 100

With this option it could be selected up to what level file requests are put into the output queue. So it is possible to restrict bandwidth usage by file transfer. If the selected value is a high one, the file is transferred faster, but maybe other telegrams must wait for a longer time in the output queue, what normally is not wanted for commands.

GQResponseWithoutTimestamp

string

"No"

"Yes"|"No"

To answer a general query in controlled station mode a CTRL script  must set the corresponding output data points. In order to force the sending of the telegrams without timestamp, the [iec] section config file entry GQResponseWithoutTimestamp = "Yes" must be set. Default value is "No". This means that a dpSet on an output address with a type including a timestamp (e.g. type 30) will send a telegram without timestamp (e.g. type 1), if the COT is in the GQ range of 20  -  36.
 

This is only applicable for the timestamp version of the telegram types M_SP_NA_1, M_DP_NA_1, M_ST_NA_1, M_BO_NA_1, M_ME_NA_1, M_ME_NB_1, M_ME_NC_1, M_IT_NA_1.

negativeBitToInvalid

string

"No"

"Yes"|"No"

"Yes" activates the mapping of the negative bit from the COT address on the invalid bit.

priorityClass

int

0

Linux: -20 - 19; Windows: -1 - 2

Controls the priority of the IEC driver manager under Windows and Linux (see entries for different sections).

sizeof_COT

int

2

1|2

Number of bytes for the Cause of Transmission field.

sizeof_COA

int

2

1|2

Defines the number of bytes the 'Common Object Address' in the IEC telegram consists of. For IEC 104 connections this value must be 2.

sizeof_IOA

int

3

1 - 3

Defines the number of bytes the 'Information Object Address' in the IEC telegram consists of. For IEC 104 connections this value must be 3.

iecDpName

string

"_Iec_<num>"

-

Obsolete since version 3.9.

Default: "_Iec_<num>"

Name of the internal data point of type "_Iec". For redundant drivers the name of both replicas must differ as follows, e.g. "_Iec_1" and "_Iec_2".

UserBitXX

int

0

0 - 32

Range <1 - 32>; Maps the quality bits on the WinCC OA user bits (see also chapter Quality information). This mapping only applies in alert direction.

The both least characters (here "XX") of the entry define the type of the quality information:

IV: Invalid Bit

NT: Not topical

SB: Substituted

CA: Counter adjusted

CY: Carry

BL: Blocked

OV: Overflow

EI: Elapsed time invalid

IVT: Invalid time stamp

DST: daylight saving time bit set
 

Default 0 in each case (= no mapping).

userByteQ

int

0

0 -4

Input-sided mapping of the command mirror of the QU bits.

This config entry provides input-sided mapping of the quality / Command Qualifier on an user byte.

Thereby the userBitXX config entries are not required anymore, but they are still valid. An exception of the rule are the configs userbitDST and userbitIVT, because these bits are mapping information from the timestamp. Note that the usage of this config entry does not allow overwriting/overlapping with other config entries, e.g. with userbitDST or userbitIVT.

swapModuleValue

string

"No"

"Yes|No"

Defines whether the byte order of "Module" and "Value" (the first bytes of the Information Object Address) should be swapped. This is necessary for AK1703, for example, when the HB and MB values have to be swapped before being sent.

defaultImpulseTime

int

8

0 - 255

A time period can be set for pulse commands sent from the driver to the SAT devices (see Quality identification). A default value can be specified with this entry, so that the time period does not need to be set for every command data point. This time must be specified as a byte as required by the SAT format (see below). If this entry does not appear in the configuration file, then 8 (=00001000) is assumed as the default setting, corresponding to a switching time of 100 ms (= 2x50 ms - see below). The following data is contained in this byte:

Time (bits 0 and 1) 0 for 50 ms, 1 for 500 ms, 10 for 1 sec, 11 for 10 sec.

Factor (bits 2-6) 1..31: switching time = time - factor

OW (Bit 7) 1... overwrites command already running 0... no overwrite allowed

Example

Sets the default value for the pulse commands switching period to 50 ms.

defaultImpulseTime = 4

Sets the default value for the pulse commands switching period to one second with overwrite bit set.

defaultImpulseTime = 134

timeSync

string

"N"

"Y|N"

Activates the use of a time synchronization message (type 103,C_CS_NA_1). In this case the PLC always sends a synchronization message with the absolute time CP56Time2a. The hourly value of this message is used as a basis for the following CP24Time2a time stamp (this time stamp contains only the time within an hour with millisecond resolution). If the hour changes a new synchronization message is sent. The driver notes internally per Common Object Address the time of the last time synchronization message and uses this as basis for the following CP24Time2a time stamp.

UserBitDST

int

0

0 - 32

Maps the summer time bit from the time stamps, if the config entry timeSync is set.

UserBitEI

int

0

0 - 32

Maps the Elapsed Time Invalid Bit of the types 17, 18 and 19.

UserBitIVT

int

0

0 - 32

When messages arrive and no time synchronization took place before, a time stamp of an input value is composed  of the CP24Time2a time stamp and the WinCC OA time. The time stamp is marked as invalid. The invalidity of the time stamp can be mapped on a WinCC OA userbit via this entry. The defined user bit is set in the following messages until the next time synchronization command (with a valid time stamp).

The invalidity of the time stamp of a message (CP24Time2a) is also mapped on the defined userbit.

useCOTGQ

string

"No"

"Yes"|"No"

Defines whether COT 20 resp. 37 should be used with frames due to a IGQ. For more details on the cause of transmission see chapter IEC driver details.

useIECFlatAddress

string

"No"

"Yes"|"No"

Defines the Endianity of address fields on the transmission line.

  • "Yes" = Big Endian (high byte transmitted first)

  • "No" = Little Endian (high byte transmitted last) that is also in the standard.

Is useIECFlatAddress = "No" the address bytes become swapped (opposite the panel) and the transmission is as followed:

  • Common Address (LB = low byte)

  • Common Address (HB = high byte)

  • Information Object Address (LB)

  • Information Object Address (MB)

  • Information Object Address (HB)

Is useIECFlatAddress = "Yes" the address bytes are not swapped and the transmission is like the configuration in the panel:

  • Common Address (HB = high byte)

  • Common Address (LB = low byte)

  • Information Object Address (HB)

  • Information Object Address (MB)

  • Information Object Address (LB)

IEC 104

Entry

Type

Default

Range

Description

connection

string string int int

""

-

As of WinCC OA version 3.10 this entry has been replaced by the internal DPE Config.ConnInfo. Thus, a new connection can be created via the Configuration panel for connections. The entry from the internal DPE (if available) has a higher weight than this from the config file (if available).

Defines what connection to be supported by the driver.

<name> <host> <port> <timeout>

  •  name: (Logical) name of this connection. For each connection there must be one data point "_<name>" of the "_IecConnection" type. These DPs are automatically created on the panel for connections.
    For redundant drivers the second connection name is created automatically ("*_2"), whereby the connection name on both servers is the same and has not to be specified for each host separately (since WinCC OA release 3.9).

  • host: Name (or IP address) of the host the driver is supposed to connect to and from which it accepts a connection.

  • port: Port number if the driver is a TCP client and attempts to connect on its own, or 0 if the driver is a TCP server. In the latter case, the "tcpServerPort" entry must exist.

  • timeout:  Interval at which the driver attempts to connect on the TCP level if it is a TCP client.

You can optionally also specify the local host name/IP address and local port number e.g. connection = "IEC_Server" "host1$localip:9999" 2404 10. This means that the local socket uses the host localip and the local port 9999. If only "host1" is specified, the socket parameters are specified by the operating system.

tcpServerPort

int

0 > 0

indicates the port on which the driver should wait for incoming connections. The driver can be either TCP client, in this case the entry must not exist, or TCP server, then the entry must exist. A TCP server is automatically also an IEC slave, i.e. the other side must also initialize the connection.

The default value 0 indicates, that no server port is open.

max_k

int

12 1 - 32767

Defines how many outstanding telegrams without acknowledgement the driver is allowed to have. If this number is reached, the driver sends no further telegrams to the partner until the outstanding acknowledgements are sent by the driver.

max_w

int

8 1 - 32767

Defines how many telegrams have to be sent before the driver has to sent acknowledgements to the partner. To set this value to 2/3 of max_k is recommended.

timeout_t1

int

15 1 - 255

Timeout of send or test APDUs (In seconds).

timeout_t2

int

10 1 - 255

Timeout for acknowledgement in case of no data messages (In seconds).

timeout_t3

int

20 1 - 255

Timeout for sending test frames in case of a long idle state (In seconds).

timeoutAfterIsolation

uint

0

>= 0

Time in seconds the driver waits before reestablishing his connections after he changed back from isolated state to connected to the network.

tgFilterTimeout

uint

0 >= 0

Timeout in milliseconds for filtering telegrams in case of redundant connections. If this entry is set to > 0, telegrams received via redundant connections are compared and filtered out if they are identical. The timeout defines how long a telegram will be stored in the driver for comparison. This entry only functions for IEC 104 (use the option "-dbg filter" for debugging purposes).

reduStartDTimeout

uint

0

>= 0

Waiting time in seconds before the driver starts a new connection after a redundancy switch. Requires sendStartDTwhenPassive = 0

sendStartDTwhenPassive

int

1

0|1

If 1 then the driver sends a StartDT signal after establishing the connection even if it is connected to the passive system.

If 0 then a StartDT is not send after establishing the connection if the driver is connected to the passive system.

userByteCOT

int

0

0 - 4

Input-sided mapping of cause of transmission to a user byte. The value specifies the number of the user byte, which shall be used for the COT. If the value 0 is set, no user byte mapping is done.

userByteOrigin

int

0

0 - 4

Input-sided mapping of origin address to a user byte. The value specifies the number of the user byte, which shall be used for the origin address. If the value 0 is set, no user byte mapping is done.

connUserByteQ

int

0

0 - 4

This entry allows to specify quality information, which is sent by the driver, in a user byte. The value specifies the number of the user byte. If the value 0 is set, no user byte mapping is done.

connUserByteCOT

int

0

0 - 4

This entry allows to specify the cause of transmission, which is sent by the driver, in a user byte. The value specifies the number of the user byte. If the value 0 is set, no user byte mapping is done.

connUserByteOrigin

int

0

0 - 4

This entry allows to specify the origin address, which is sent by the driver, in a user byte. The value specifies the number of the user byte. If the value 0 is set, no user byte mapping is done.

IEC 101

The following entries only apply to IEC 101. The master_101 and timeout_t2 entries only apply to unbalanced mode (white background); station_101 only applies to balanced mode. All other config entries apply to both modes.

 

Entry

Type

Default

Range

Description

asymmInit_101

uint

0

0|1

When the entry is set to 1, the link is always built after the peer.

device_101

string

string

string

""

-

Defines which devices to use for an IEC101 protocol.

<devname> <type> <specific device data>

<devname> ... Symbolic name of the device to get a connection to a Connection_101.

<type> ... Fixed "V24" for a serial connection

<device data> ... Used for device-specific data depending on type.
Device data is a string with this format: "port;baud,parity,databits,stopbits". For "V24", for example, "com;9600,e,8,1".

Example of a device entry:

"Device" "V24" "com1;9600,e,8,1"

In order to trigger the line with RTS when sending, you have to specify the RTS mode in the "device_101". Possible modes are:

0 = RTS Disabled

1 = RTS Enabled

2 = RTS Handshake

3 = RTS Toggle

Example of a device entry with RTS Toggle mode:

"Device" "V24" "com1;9600,e,8,1:3"

Delay times (Pre and Post delay times) in the RTS mode, can be set with the config entries "preDelayRTS" and "postDelayRTS" (a description of these entries you can also find in this table)

connection_101

string

string

string

""

-

As of WinCC OA version 3.10 this entry has been replaced by the internal DPE Config.ConnInfo. Thus, a new connection can be created via the Configuration panel for connections. The entry from the internal DPE (if available) has a higher weight than this from the config file (if available).

Defines an IEC 101 connection on a device defined above.

<name> <devname> <101 link address>

<name> ... (logical) name of this connection analogous to an Iec104 connection (data point name from connection panel)

<devname> ... Name of a device_101

<101 link address> ... Logical address of the IEC101 partner in unbalanced mode

checkDSR_101

string

"No"

"Yes"|"No"

Specifies whether the DSR line should be checked before sending a telegram. If the line is active, the telegram is sent, otherwise an error message is shown and the telegram discarded.

defaultLinkAddress_101

int

0

-

This is an address field in 101 frames.

maxOutputQueue_101

uint

128

>= 0

This entry specifies the maximum size of the output queue (max. number of telegrams). If the output queue is full, the telegrams are discarded and an error message displayed.

maxOSI7Len_101

uint

247

> 64

This entry specifies the maximum size in bytes of sent IEC telegrams. The config entry determines the maximum length of the OSI7 data area. It is possible to make the telegram length small than it is designed in the norm.

station_101

int

0

1|0

Number of the station in balanced mode 0 or 1.

master_101

string

"Yes"

"Yes"|"No"

Master or slave in unbalanced mode, not used in balanced mode:

"Yes" Master, "No" Slave.

balanced_101

string

"No"

"Yes"|"No"

Driver mode: "Yes" Balanced, "No" Unbalanced.

singleAck_101

string

"No"

"Yes"|"No"

Specifies whether the driver should send acknowledgements as single byte telegrams in the 101 mode. Mode for sending ack: "Yes" use single ack, "No" use complete ack.

preDelayRTS

uint

0

0 - 1000

Defines, how many milliseconds before sending a telegram the RTS line should be opened. Only supported for Windows and only if the mode of the serial interface is not RTS_TOGGLE, i.e. no ":3" is set in the configuration string for the serial interface (see also "device_101" entry above).

postDelayRTS

uint

0

0 - 1000

Defines, how many milliseconds after sending a telegram the RTS line should remain active. Only supported for Windows and only if the mode of the serial interface is not RTS_TOGGLE, i.e. no ":3" is set in the configuration string for the serial interface (see also "device_101" entry above).

reqInactTime_101

uint

0

0 - 300

This config entry guarantees a minimum time (in milliseconds) between the sending of two IEC telegrams.

sizeof_LA_101

int

0

0 - 2

Number of bytes for the Link Address 0,1,2; Default: 0. In Unbalanced Mode this config entry must exist and must have a value unequal 0!

retry_101

int

0

-

Number of attempts to send a frame. Default: 0, i.e. by default the driver makes no repetition of sending the frame, if the destination station does not respond to a query (within timeout_t1). If the frame cannot be sent after the defined number of retries, the driver begins with the establishment of the connection after expiry of timeout t3 (timeout_t3), i.e. if the driver looses a station, it tries the next connection establishment after 20s.

timeout_t1

int

1

>= 0

The entry timeout_t1 defines the time within which the destination station has to respond to a request. If the station does not respond within this time the request is repeated (retry_101). Default: 1 second.

timeout_t2

int

1500

>= 0

In MILLISECONDS.

The entry timeout_t2 is only relevant for the unbalanced mode and defines the polling interval within which the data is queried. If the time is e.g. 1 second the driver queries each substation in 1 second interval. Default: 1500 milliseconds.

timeout_t3

int

20

>= 0

The entry specifies the interval within which the link status should be checked. If a station falls out, the driver tries to reconnect after the end of this timeout (before the driver makes "retry_101" attempts to reconnect). Default: 20 seconds.

userByteCOT

int

0

0 - 4

Input-sided mapping of cause of transmission to a user byte. The value specifies the number of the user byte, which shall be used for the COT. If the value 0 is set, no user byte mapping is done.

userByteOrigin

int

0

0 - 4

Input-sided mapping of origin address to a user byte. The value specifies the number of the user byte, which shall be used for the origin address. If the value 0 is set, no user byte mapping is done.

connUserByteQ

int

0

0 - 4

This entry allows to specify quality information, which is sent by the driver, in a user byte. The value specifies the number of the user byte. If the value 0 is set, no user byte mapping is done.

connUserByteCOT

int

0

0 - 4

This entry allows to specify the cause of transmission, which is sent by the driver, in a user byte. The value specifies the number of the user byte. If the value 0 is set, no user byte mapping is done.

connUserByteOrigin

int

0

0 - 4

This entry allows to specify the origin address, which is sent by the driver, in a user byte. The value specifies the number of the user byte. If the value 0 is set, no user byte mapping is done.

 

Top Of Page

 

V 3.11 SP1

Copyright ETM professional control GmbH 2013 All Rights Reserved