Notification list
After the object names and object types have been declared in the first block of the simulation file (see Periphery list), values can be assigned to them and a time interval can be specified for delaying processing of the next line when the file is executed - this is done in the second block of the simulation file, the notification list.
The notification list consists of 6 mandatory columns and 2 optional columns. It contains a notification per line, which should be send to WinCC OA by the simulator.
The mandatory columns specify the subindex (column 1) and the object name (column 2), the type (column 3) and value (column 4) to be sent as well as a time interval in seconds (column 5) and milliseconds (column 6) to be waited.
The optional columns specify the status bits (user bits) and the timestamp. The order in which the source times and status bits appear is irrelevant. Both arguments are optional and can be omitted; the simulator then behaves as before.
Example
#subindex name type value sec msec status bits time stamp
1 a1 i 5 0 25 G
2 a2 f3 4.1 7.0 8.5 0 25 GI
1 a3 b8 1 0 0 1 1 1 0 0 1 0 +1
0 a4 t "Hello world" 2 0 "2010.04.27;17:55:00,000"
-1
The notification list must be terminated with -1, -2 or -3:
-
-1 = Simulator is closed,
-
-2 = endless loop of the lines in the notification list or
-
-3 = simulation is ended (no further notifications, but Simulator is still running). Peripheral addresses, filter functions and conversions can still be configured. A new simulation run using the same file can be performed as described in the section "Starting simulation".
In the following the possible entries in the columns are described.
Subindex (first column)
Subindex for each object. Subindexes are used for identifying the elements of an array. The smallest subindex for array elements is 1. If it is not an array variable then the subindex 0 must be specified.
Object name (second column)
Object name which was already specified in the periphery list and will be also entered in the Panel for configuring the simulator in the "Reference" field.
Object data type (third column)
Indicator of the object data type which was already specified in the periphery list + number of data to be sent directly behind the data type. The number of data in the fourth column must then match the number specified here.
The following indicators are used:
-
i for integer values
-
b for bit values
-
f for float values
-
t for string values
Value (fourth column)
Value to be assigned to the object. The number of values must match the number specified in column 3 behind the indicator. If there is no number behind the indicator, one value must be specified.
You must use the correct decimal point character give in the local settings on your computer for floating point numbers.
Time interval in seconds (fifth column)
Number of complete seconds, which when added to the number of milliseconds in the sixth column, give the wait time before processing the next line of the file.
Time interval in milliseconds (sixth column)
Number of milliseconds, which when added to the number of seconds in the fifth column, give the wait time before processing the next line of the file.
Status bits (seventh or eighth column)
Status bits:
-
"I" is set for Invalid
-
"G" for General query
-
"1" to "8" for the user bits coded 1 - 8.
Each bit can be cleared by a preceding "-" and set by a "+" or without a sign. If nothing is specified then the bit is set. Bits that are not listed are not sent to the Event Manager (remain untouched).
Example
-IG1
This line clears the invalid bit and sets a general query and user bit 1.
Time stamp (seventh or eighth column)
Time stamps:
Times are encoded as a string enclosed in quotation marks, in the form "YYYY.MM.DD;HH:MM:SS.mmm". Any separators can be used, but there must be no spaces.
Example
quot;2000.4.16;15:30:0,000"
The values contain the source time 16 April 2000, 15:30 precisely.