使用函数模块状态输出判断函数模块执行的顺序,这并不是标准的LabVIEW编程方法。举例而言,不要将函数模块放在条件分支中。
您必须在应用循环外初始化所有的矩阵输出,以便让函数模块不进行内存分配。这可以减少系统的漂移和抖动。
为了确定函数模块执行的顺序,运动控制函数模块提供了状态参数。下表提供了函数模块状态参数行为的简介。
执行、错误输出、完成、中止、忙碌和活动参数根据以下内容执行:
输出状态 完成和中止输出在执行的下降沿重置。但是,执行的下降沿并不停止或影响实际函数模块的执行。必须确保在每个循环中对对应的输出进行配置,如果这些状态中的一个会发生——即便执行在函数模块完成之前被重置。如果函数模块实例在完成之前收到新的执行(作为同一实例下的一系列指令),函数模块不会为函数模块的前一执行,返回例如完成或中止等任何状态输出。
输入参数 函数模块的输入参数与执行输入的上升沿一起使用。要修改任何参数,必须修改输入参数并且重新执行函数模块。
未连接的输入参数 如果函数模块有未连接的输入,将使用这个函数模块上一次执行时的参数值。在函数模块的首次执行时,使用默认值。
符号规则 加速、减速、加加速度、减加速度输入总是正值。目标位置和距离可以为正数也可以为负数。除了使用速度方法完成直线运动之外,速度在所有情况下为正数。
错误处理行为 所有函数模块都包含错误输出簇,对执行函数模块中可能发生的错误进行处理。这些输出描述如下:
在函数模块执行中发生错误时,状态变为真。在错误发生之后,状态输出仅在第一个循环执行中保持真。如果您希望将错误状态保持为真,必须使用移位寄存器将错误信息传递到之后的循环执行中。