这个功能块是CODESYS SoftMotion 函数库中 ⇘ “SM3_CNC”的一部分。它类似于 ⇘ “SMC_ControlAxisByPos” 但是此功能块是通过一个附加速度的方式进行的控制。主要应用在 CNC 和 SMC_Interpolator过程中。为了直接通过设定值控制电机,以SMC_Follow* 开始的功能块应该添加到程序中。
| Type | Initialization | Description | |
|---|---|---|---|
| VAR_IN_OUT | |||
| Axis | AXIS_REF | 输入控制轴,参看 ⇘ “AXIS_REF_SM3” | |
| VAR_INPUT | |||
| iStatus | SMC_INT_STATUS | SMC_Interpolator功能块的输出状态 | |
| bEnable | BOOL | FALSE | 必须设定为 TRUE 值才能使能功能块 | 
| bAvoidGaps | BOOL | 
 | 如果为TRUE,该模块可以进行位置和速度的显示。如果速度超出了限定值,此速度值存储在轴参数中( AXIS_REF_SM3. fSWMaxVelocity 和驱动器对话框中的“最大速度值”),模块会将输出 bStopIpo 置位,并按照参数 fGapVelocity的值进行运动,按照参数 fGapAcceleration 和 fGapDeceleration 设定的加减速度运行至停止。停止后会清除bStopIpo参数输出。 | 
| fSetPosition | LREAL | 
 | 设置轴的位置。通常最为一个变换模块的输出值。 | 
| fSetVelocity | LREAL | 
 | 以米每秒为单位的形式设置速度值。 | 
| fGapVelocity | LREAL | 
 | 追补速度 | 
| fGapAcceleration | LREAL | 
 | 追补加速度 | 
| fGapDeceleration | LREAL | 
 | 追补减速度 | 
| VAR_OUTPUT | 
 | 
 | 
 | 
| bBusy | BOOL | FALSE | 为TRUE,表明当前功能块没有结束 | 
| bCommandAborted | BOOL | 
 | 为TRUE,表明当前命令被另一个命令打断 | 
| bError | BOOL | 
 | 当前功能块产生错误信号 | 
| iErrorID | SMC_ERROR | 
 | 错误ID,参阅 ⇘ “SMC_ERROR” | 
| bStopIpo | BOOL | FALSE | 如果为 TRUE,表明功能块在速度或者位移上有一个跳跃并且被定义到新的位置。对于这种情况,输出应该被连接到 the SMC_Interpolator功能块的EmergencyStop-input输入端,这样, 终端才会等待直到轴获得正确的位置信息。 |