Interpreter online window

Interpreter online window 1:

Axes

As on the 'Online' properties page in the interpolation channel, this window lists all axes currently included in the interpolation group. The values are shown for:

SEC program display

The SEC program display shows the current NC block to be processed in the set execution. The last row in the window is the current block.

As for nearly all the parameters, the program display can be read off via ADS. This can be used, for example, to indicate the current NC blocks within a Visual Basic application (see ADS device documentation - ADS Interface NC.

Program name

Displays the name of the currently loaded program. This does not necessarily have to be the program displayed in Editor.

Interpreter state

The interpreter state reflects the current state of the Interpreter State Machine. The complete list is given below. As PLC evaluation does not require all state information, only the most important parameters are explained.

State

Description

ITP_STATE_IDLE

The interpreter is in idle state if no NC program is loaded yet or if a group reset is executed. The interpreter also goes into idle state when a current program is stopped. In the case a group reset must be executed in order to prevent error 0x42C5. It is therefore recommended to execute a group reset after stopping via the PLC.

ITP_STATE_READY

After successful loading of an NC program, the interpreter is in ready state. After a program has been successfully processed and exited, the interpreter goes into ready state. In the meantime, however, other states are accepted.

ITP_STATE_ABORTED

If a runtime error occurs during the processing of an NC program, the interpreter goes into aborted state. The actual error code is given in Channel State.

ITP_STATE_SINGLESTOP

This state is only accepted in Single Block Mode. As soon as the entry has been sent from the interpreter to the NC core, the interpreter goes into this mode.

Interpreter online window 2:

Querying the interpreter state during program execution

Since the interpreter state may change between different states during program execution, we recommend querying it with a negative logic. During program execution the interpreter state is not necessarily ITP_STATE_RUNNING. If the program was executed successfully, the interpreter is subsequently always in Ready state. See Samples.

Interpreter state return values

0 ITP_STATE_INITFAILED
1 ITP_STATE_IDLE
2 ITP_STATE_READY
3 ITP_STATE_STARTED
4 ITP_STATE_SCANNING
5 ITP_STATE_RUNNING
6 ITP_STATE_STAY_RUNNING
7 ITP_STATE_WRITETABLE
8 ITP_STATE_SEARCHLINE
9 ITP_STATE_END
10 ITP_STATE_SINGLESTOP
11 ITP_STATE_ABORTING
12 ITP_STATE_ABORTED
13 ITP_STATE_FAULT
14 ITP_STATE_RESET
15 ITP_STATE_STOP
16 ITP_STATE_WAITFUNC
17 ITP_STATE_FLUSHBUFFERS

Channel state

The channel state indicates the current error state of the channel. If an error occurs during NC program loading or runtime, the corresponding error code is displayed here. If, for example, an axis lag error occurs during processing, the NC program is stopped and the channel state will have a value unequal 0. The channel state should therefore always be checked in the PLC, in order to be able to respond to errors. The channel state is always 0 in error-free operation.

Loading buffer

The current size of the loading buffer for the interpreter is displayed here. Select the 'Interpreter' tab to change the value.