PLCOPEN State Machine

 Products: ACR9600, ACR9630, ACR9640

The PLCopen State Machine describes the condition or state of an axis and what function blocks are allowed to be called when in various states.

statemachine_5156-20240521-001105.jpg

 

Note 1: From any state, an error has occurred on the axis and MC_Power.Status=TRUE
Note 2: From any state. MC_Power.Enable = FALSE
Note 3: MC_Power.Enable=TRUE and there is an Error in the axis
Note 4: MC_Reset AND MC_Power.Status = TRUE AND MC_Power.Enable = TRUE
Note 5: MC_Power.Enable = TRUE AND MC_Power.Status = TRUE and no errors on the axis
Note 6: MC_Stop.Done = TRUE AND MC_Stop.Execute = FALSE

 

Disabled

The state Disabled describes the initial state of the axis. In this state the movement of the axis is not influenced by the FBs  
 If MC_Power is called with Enable=True while the axis is in state Disabled, this either leads to Standstill if there is no error inside the axis (Note 5), or to ErrorStop if an error exists (Note 3). 
 Calling MC_Power with Enable=FALSE in any state transfers the axis to the state Disabled. Any on-going motion commands on the axis are aborted (CommandAborted).

ErrorStop    

 

The intention of the ErrorStop state is that the axis goes to a stop, if possible. No further function blocks are accepted until MC_Reset is called while in the ErrorStop state. MC_Reset will only clear the ErrorStop condition while MC_Power.Enable=TRUE.
 The transition to ErrorStop refers to errors from the axis and axis control, and not from the Function Block instances. These axis errors may also be reflected in the output of the Function Blocks' FBinstances errors

 

Standstill

 

Power is on, there is no error in the axis, and there are no motion commands active on the axis.

 

Homing

 

Issuing MC_Home or ACR_Home in a state other than StandStill will send the axis to ErrorStop, even if Home is issued from the state Homing itself.

Stopping

 

Axis is either in the process of stopping or has stopped due to the FB MC_Stop.  The state Stopping is kept as long as the input MC_Stop.Execute = true. The Done output is set when the stop ramp is finished.
 Calling the function block MC_Stop in state StandStill changes the state to Stopping, and back to StandStill when Execute=FALSE (Note 4).

 

 

 

Mar 2013-jw