MLMotionStatus
Description
Returns the status of the motion engine. Based on the Internal Defines, the status will be one of the following.
#define MLSTATUS_NOT_INITIALISED 0 (*Motion not initialised*) #define MLSTATUS_RUNNING 1 (*Motion is running*) #define MLSTATUS_STOPPED 2 (*Motion is stopped*) #define MLSTATUS_ERROR 3 (*Motion is in error*)
-
-
This function or function block returns cached data. See Programming a Dual Core Controller for more information.
Parameter
Status : DINT (output)
Return Type
None
Example
ST
//Initialization code to start EtherCAT***EtherCAT is an open, high-performance Ethernet-based fieldbus system. The development goal of EtherCAT was to apply Ethernet to automation applications which require short data update times (also called cycle times) with low communication jitter (for synchronization purposes) and low hardware costs network.
//First initialize network with MLMotionInit command
//Then wait for command to finish by monitoring MLMotionStatus output
//Once initialized, create any cam profiles and PLCopenA vendor -and product- independent worldwide association active in Industrial Control and aiming at standardizing PLC file formats based on XML or Pipenetwork devices
//Then call MLMotionStart and monitor MLMotionStatus again before beginning rest of program
FirstCycle := TRUE;
On FirstCycle DO //Initialize the motion engine
MLMotionInit( 1000);
END_DO;
MotionEngineStatus := MLMotionStatus();//Check the current status of the motion engine
//Once motion engine is initialized, create CAM profiles and defined Axis, then start the motion engine
ON MotionEngineStatus = MLSTATUS_INITIALISED DO
Profiles( MLPR_CREATE_PROFILES );
PLCopen( 0 );
MLMotionStart();
END_DO;
IF MotionEngineStatus = MLSTATUS_RUNNING THEN
bMotionEngineStarted := TRUE;
ELSE
bMotionEngineStarted := FALSE;
END_IF;
FBD
FFLD