这个功能块位于 CODESYS SoftMotion 函数库 ⇘ SM3_CNC
用于对附加轴进行路径圆滑,并将附加路径分割为多个对象。这将会导致附加轴 P, Q, U, V, W 具有相同的圆滑并且产生轴 A, B 和 C 的一个最优动态编译文件。
类型 |
初始值 |
描述 |
|
---|---|---|---|
VAR_IN |
|||
bExecute |
BOOL |
FALSE |
当 TRUE 时,功能块被激活 |
bAbort |
BOOL |
FALSE |
如果为 TRUE ,功能块当前的处理将会被中断 |
bAppend |
BOOL |
FALSE |
只要输入一直为 FALSE, DataOutQueue 将会在每次复位时都被清除。一旦保持为 TRUE,新增加的数据将会被写入到 DataOutQueue 的结尾 |
poqDataIn |
POINTER TO SMC_OUTQUEUE |
NULL |
这个变量指向 ⇘ SMC_OUTQUEUE 结构体对象,其中包含路径的 SMC_GEOINFO-对象;通常情况下他指向预处理模块(例如:SMC_NCDecoder)的 DataOut 输出。 ⇘ SMC_OUTQUEUE应该定义一个适当的尺寸大小(见上文)! |
dSmoothingPart |
LREAL |
0.5 |
与轴A,B,C中用户可以直接定义不同,路径的部分被提供给附加轴用于加速度/加速度以及常量速度操作。 0: 没有加速度 /减速度周期被设置。 1: 没有常量运动被创建 0.5: 加速周期与减速周期与常量运动有相同的时间 |
dAngleTol |
LREAL |
0.001 |
对于附加轴 A, B, C 需要制定一个正确的参数,是否一个对象导致停止。输入 dAngleTol也会在功能块 SMC_CheckVelocities中进行使用并且在所有功能块处理过程中,应该保持相同的变量。 |
nSizeOutQueue |
UDINT |
0 |
变量pbyBufferOutQueue安位定义的尺寸 |
pbyBufferOutQueue |
POINTER TO ARRAY[0..0] OF SMC_GEOINFO |
NULL |
这个输入必须指向 OUTQUEUE-结构体定义的内存区域的第一个字节地址。定义的这个区域至少与 nSizeOutQueue 定义的一样大。通常情况下IEC中存储区域的定义是通过定义一个 SMC_GEOINFO 数组实现的 (例如:BUF: BUF: ARRAY[1..50] OF SMC_GEOINFO这个缓冲区可以存储50个路径元素)。变量值可以预定义,但是在下次复位前不能被修改。 |
VAR_OUT |
|||
bDone |
BOOL |
FALSE |
如果输入数据...DataIn 被完全处理,那么这个变量将=会被设置为 TRUE 。因此在复位之前此模块不会执行其他动作。如果输入 bExecute 为 FALSE, bDone 将会被复位为 FALSE。 |
bBusy |
BOOL |
FALSE |
TRUE,功能块的处理没有完成 |
bError |
BOOL |
FALSE |
功能块内部发生错误信号 |
wErrorID |
SMC_ERROR |
SMC_NOERROR |
错误 ID |
poqDataOut |
POINTER TO SMC_OUTQUEUE |
NULL |
这个变量指向 SMC_OUTQUEUE-结构体,用于管理循环路径中的 SMC_GEOINFO-对象 ⇘ “SMC_OUTQUEUE ” |
需要进行路径圆滑处的标记在G 代码中必须使用关键字 G71 和 G70。 G71 启动圆滑, G70 结束圆滑。但是需要进行附加轴的圆滑必须通过参数 L<附加轴序号>进行定义。
Parameter |
Additional Axis |
L4 |
A |
L5 |
B |
L6 |
C |
L7 |
P |
L8 |
Q |
L9 |
U |
L10 |
V |
L11 |
W |