SMC_ControlAxisByPosVel

这个功能块是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输入端,这样, 终端才会等待直到轴获得正确的位置信息。