这个数据结构位于CODESYS SoftMotion library ⇘ SM3_CNC。这个结构体用于通过定义尺寸列表的方式管理 GEOINFO-对象。
运动控制模块 ⇘ SMC_NCDecoder, ⇘ SMC_SmoothPath, ⇘ SMC_RoundPath, ⇘ SMC_AvoidLoop 以及 ⇘ SMC_ToolCorr - 提供了一个用于处理 OUTQUEUE-结构 的指针,并能够立即对这个结构进行初始化。
模块 SMC_SmoothPath, SMC_RoundPath, SMC_ToolCorr, SMC_AvoidLoop 以及 ⇘ SMC_Interpolator必须有一个指针指向 OUTQUEUE 列表。如果这个列表被编程并且“手动”添加。那么相应的初始化也需要手动进行完成。对于这个目的开始的两个变量 (pbyBuffer, size) 必须被设定。
|   | 提示! 必须严格的要求使用以上功能用于处理 SMC_OUTQUEUE 结构体,并且在初始化之后添加其他参数的手动修改。 | 
| 成员 | 类型 | 初始值 | 描述 | 
|---|---|---|---|
| wOUTQUEUEStructID | WORD | 16#9878 | 这个变量的值运动模块检查,如果提供的结构体变量是类型 ⇘ SMC_OutQueue 。 | 
| pbyBuffer | POINTER TO ARRAY[0..0] OF SMC_GEOINFO | 
 | GEOINFO 对象相关的内存区域。变量 pbyBuffer必须通过 IEC 程序变量进行缓冲区数据指定。分配是通过定义部分完成的。例如,通过使用数组 (BUFFER: ARRAY [0..99] OF SMC_GEOINFO 定义一个足够大的内存区域用于包含100个 SMC_GEOINFO 对象)。 | 
| nCapacity | UDINT | 
 | 包含最大限度的 SMC_GEOINFO 对象。函数 SMC_SetCapacity 初始化这个区域。 | 
| nReadPos | UDINT | 
 | 包含列表中 第一个对象SMC_GEOINFO 的位置信息。 | 
| nWritePos | UDINT | 
 | 包含 SMC_GEOINFO 对象的另一个空余位置。 | 
| bFull | BOOL | 
 | 通过模块 APPENDOBJ 这个变量将会被设置为 TRUE 只要列表被从安全缓冲区中填满,例如,对于 GEOINFO 对象只有三个空白区域预留。 从这个列表中移除一些元素之后,DELETEOBJ 将重新将变量 bFull 到FALSE。 | 
| bEndOfList | BOOL | 
 | 为了获得数据估计 ( ⇘ SMC_Interpolator),SoftMotion 模块通过 OUTQUEUE 结构体处理的模块将不会启动在进行队列处理的时候,直到它被完全填充完毕。然而,当在路径的最后一个对象 SMC_GEOINFO 上进行工作时,OUTQUEUE 将不会完成。因此,为了保证处理继续进行,bEndOfList 必须被设置为 TRUE 以保证最后的 GEOINFO 对象被保存。在这种情况下列表为空当时应该被立即填满,bEndOfList 必须被重新复位 FALSE。 | 
| byGenerator | BYTE | 250 | 创建队列。插补器将使用这个信息修正 SMC_CheckVelocities 按照设置方式进行预处理。 可使用的变量值 SMC_NCDecoder: 1 SMC_AvoidLoop: 10 SMC_LimitCircularVelocity: 11 SMC_RoundPath: 12 SMC_SmoothPath: 13 SMC_ToolCorr: 14 SMC_RotateQueue2D: 30 SMC_ScaleQueue3D: 31 SMC_TranslateQueue3D: 32 SMC_CheckVelocities: 254 CNC editor: 255 | 
| bReCheckVelocities | BOOL | 
 | 内部变量 | 
| strProgrammName | STRING | 
 | CNC程序的名称 | 
| xPartofLM | BOOL | 如果输入是由编程系统创建,如果为 TRUE,功能块是由管理者进行维护。 |