Data type ST_AxisStatus

The data type ST_AxisStatus contains comprehensive status information for an axis. The data structure must be updated during each PLC cycle by calling MC_ReadStatus or by calling the action Axis.ReadStatus (AXIS_REF).


TYPE ST_AxisStatus :
STRUCT
UpdateTaskIndex : BYTE; (* Task-Index of the task that updated this data set *)
UpdateCycleTime : LREAL; (* task cycle time of the task which calls the status function *)
CycleCounter          : UDINT; (* PLC cycle counter when this data set updated *)
NcCycleCounter        : UDINT; (* NC cycle counter incremented after NC task updated NcToPlc data structures *)

MotionState           : MC_AxisStates; (* motion state in the PLCopen state diagram *)

Error                 : BOOL;  (* axis error state *)
ErrorId               : UDINT; (* axis error code *)

(* PLCopen motion control statemachine states: *)
ErrorStop             : BOOL;
Disabled              : BOOL;
Stopping              : BOOL;
StandStill            : BOOL;
DiscreteMotion        : BOOL;
ContinuousMotion      : BOOL;
SynchronizedMotion    : BOOL;
Homing                : BOOL;

(* additional status - (PLCopen definition)*)
ConstantVelocity      : BOOL;
Accelerating          : BOOL;
Decelerating          : BOOL;

(* Axis.NcToPlc.StateDWord *)
Operational           : BOOL;
ControlLoopClosed     : BOOL; (* operational and position control active *)
HasJob                : BOOL;
HasBeenStopped        : BOOL;
NewTargetPosition     : BOOL; (* new target position commanded during move *)
InPositionArea        : BOOL;
InTargetPosition      : BOOL;
Protected             : BOOL;
Homed                 : BOOL;
HomingBusy            : BOOL;
MotionCommandsLocked  : BOOL; (* stop 'n hold *)
SoftLimitMinExceeded  : BOOL; (* reverse soft travel limit exceeded *)
SoftLimitMaxExceeded  : BOOL; (* forward soft travel limit exceeded *)

Moving                : BOOL;
PositiveDirection     : BOOL;
NegativeDirection     : BOOL;
NotMoving             : BOOL;
Compensating          : BOOL; (* superposition - overlayed motion *)

ExtSetPointGenEnabled : BOOL;
ExternalLatchValid    : BOOL;
CamDataQueued         : BOOL;
CamTableQueued        : BOOL;
CamScalingPending     : BOOL;
CmdBuffered           : BOOL;
PTPmode               : BOOL;
DriveDeviceError      : BOOL;
IoDataInvalid         : BOOL;

(* Axis.NcToPlc.CoupleState *)
Coupled               : BOOL;

(* axis operation mode feedback from NcToPlc *)
OpMode                : ST_AxisOpModes;
END_STRUCT
END_TYPE

ST_AxisOpModes MC_AxisStates