PLCopen function blocks
PLCopen specification Part1 subdivides the FBs defined there according to their usage into:
- administrative and
- motion-related FBs.
Within these two areas a further distinction is made depending on the application, i.e.:
- a single axis or
- multiple axes
The table below is organised accordingly and lists the function blocks according to the PLCopen specification Part1.
Notice

The FBs in italics and marked by an asterisk * are not implemented in the motion library Part1. However, the libraries may contain FBs which have a similar functionality but are specified by the controller manufacturer.
Subdivision of PLCopen FB Part1 into administrative and motion-related FBs
| Administrative | Motion | ||
| Single Axis | Multiple Axis | Single Axis | Multiple Axis | 
| MC_Power | MC_CamTableSelect | MC_MoveAbsolute | MC_CamIn | 
| MC_ReadStatus | 
 | MC_MoveRelative | MC_CamOut | 
| MC_ReadAxisError | 
 | MC_MoveAdditive | MC_GearIn | 
| MC_ReadParameter | 
 | MC_MoveSuperimposed | MC_GearOut | 
| MC_ReadBoolParameter* | 
 | MC_MoveVelocity | MC_Phasing | 
| MC_WriteParameter | 
 | MC_Home | MC_GearInPos* | 
| MC_WriteBoolParameter* | 
 | MC_Stop | 
 | 
| MC_ReadActualPosition | 
 | MC_PositionProfile* | 
 | 
| MC_Reset | 
 | MC_VelocityProfile* | 
 | 
| MC_TouchProbe | 
 | MC_AccelerationProfile* | 
 | 
| MC_AbortTrigger | 
 | MC_TorqueControl* | 
 | 
| MC_ReadDigitalInput* | 
 | MC_MoveContinuous* | 
 | 
| MC_ReadDigitalOutput* | 
 | MC_Halt | 
 | 
| MC_WriteDigitalOutput* | 
 | 
 | 
 | 
| MC_SetPosition | 
 | 
 | 
 | 
| MC_SetOverride | 
 | 
 | 
 | 
| MC_ReadActualVelocity* | 
 | 
 | 
 | 
| MC_ReadActualTorque* | 
 | 
 | 
 | 
| MC_DigitalCamSwitch* | 
 | 
 | 
 |