使用这个功能块至于运动开始之前被中断的路径,可能是由于错误原因。例如这个错误可能是由于铣头断裂导致错误。在重新换一个之后,用户不想重新进行插补,但是想将此位置至于刀具断裂点。
功能块必须根据路径预处理进行运行并且按照数据流的方式在功能块 ⇘ 之前插入。首先位置由 SMC_BlockSearchSavePos 保存,然后新的起始位置将会在 SMC_BlockSearch 附近启动并且存储达到的位置。从这一点开始,路径将会一个点一个点的被保存。
提示! 使用 SMC_BlockSearch 需要配合使用 ⇘ 。 |
数据类型 |
初始值 |
描述 |
|
---|---|---|---|
VAR_IN_OUT |
|||
ePos |
SMC_BlockSearchPos |
||
VAR_INPUT |
|||
bExecute |
BOOL |
FALSE |
TRUE:功能块被激活。 |
bAbort |
BOOL |
FALSE |
TRUE: 路径的处理被中断。 |
bAppend |
BOOL |
FALSE |
FALSE: 每次复位 poqDataOut 将会被删除。 TRUE: 新的数据将会被写入到 poqDataOut 的结尾。 |
poqDataIn |
POINTER TO SMC_OUTQUEUE |
指向结构体对象 SMC_OUTQUEUE 包含改变路径的 ⇘ 对象,指向之前功能块的 poqDataOut 输出 (例如 ⇘ )。 |
|
bStartFromSavedPos |
BOOL |
FALSE |
可能的值:
|
nSizeOutQueue |
UDINT |
包含数据缓冲的大小,结构体 GEOINFO 对象列表将会被写入。这个缓冲区必须至少为 GEOINFO 结构体的五倍。否则 ⇘ 将不会被处理。尺寸可以预先定义,但是可以在之后复位的时候被修改。建议按照下述示例创建缓冲区: ExampleBuf: Array[ 1..50] of SMC_GeoInfo; 正确的缓冲区尺寸将会被操作sizeof(ExampleBuf)获取。 |
|
pbyBufferOutQueue |
POINTER TO ARRAY[0..0] OF SMC_GEOINFO |
指向内存区域中 OUTQUEUE-结构体分配的第一个字节。这个区域至少与 nSizeOutQueue 一样大。通常情况下内存区域的分配是在IEC程序的定义部分通过定义数组 ⇘ 实现的。例如BUF: ARRAY[1..50] OF SMC_GEOINFO;。示例中,缓冲区可以包含50个元素: buf: ARRAY[1..50] OF SMC_GEOINFO_STRUCT; 值可以是预定义的,但是可以在之后的复位中修改。 |
|
VAR_OUTPUT |
|||
bDone |
BOOL |
FALSE |
TRUE: 输入数据 poqDataIn 已经被完整处理。在此功能块之后的块将不会做任何处理,直到复位。 FALSE: 如果 bExecute 为 FALSE, bDone 被设置为 FALSE。 |
bBusy |
BOOL |
FALSE |
TRUE: 功能块处理没有完成。 |
bError |
BOOL |
TRUE: 功能块内部发生错误信号。 |
|
wErrorID |
SMC_ERROR |
错误定义 ID 。 ⇘ 可能值:
|
|
poqDataOut |
POINTER TO SMC_OUTQUEUE |
指向结构体 ⇘ 用于管理 SMC_GEOINFO 对象改变的路径。 |