设备设置#
Equipment Setup任务用于配置驱动程序,并在重要事件(驱动程序事件,而不是设备事件)发生时收到通知。此任务仅由在创建期间定义的驱动程序使用(首次创建工作流时会自动添加它)。
尽管当前可以添加这些任务中的多个任务,但您不应该这样做。根据经验,每个控制器的每个驱动程序各有一个Equipment Setup和一个Equipment Setup Result任务。
输入#
| 名称 | 数据类型 | 是否是触发器 | 描述 |
|---|---|---|---|
| 连接 | any | 是 | 指示驱动程序将配置并连接到设备 |
| 重新连接 | any | 是 | 指示驱动程序将断开连接并重新连接到设备 |
| 断开连接 | any | 是 | 指示驱动程序将与设备断开连接 |
<communication parameter> | any | 否 | 每个协议都有自己的通信参数 |
输出#
| 名称 | 数据类型 | 描述 |
|---|---|---|
| onInitialize | Boolean | 在控制器和驱动程序之间建立连接时触发 |
| onSetup | Boolean | 在驱动程序能够与设备(套接字、端口、目录等)建立通信并准备好启动配置流时触发 |
| onHeartbeat | Boolean | 在处于communicating状态期间每n秒发生一次,以便验证通信完整性 |
| onCommunicationChange | String | 通信状态更改时触发 |
设置#
| 名称 | 数据类型 | 默认 | 描述 |
|---|---|---|---|
| 重新连接间隔 | Integer | 10000 | 尝试建立通信之前等待的毫秒数 |
| 重新连接最大尝试次数 | Integer | 0 | 建立通信的最大尝试次数(0表示无限期) |
| 需要缓冲 | Boolean | true | 用于确定在通信中断时驱动程序是否应该缓存从设备接收到的消息的标志 |
| 连接超时 | Integer | 30000 | 尝试与设备接口建立通信时等待的毫秒数 |
| 设置超时 | Integer | 10000 | 执行设置时等待的毫秒数。 设置阶段介于 Equipment Setup的onSetup和success阶段之间 Equipment Setup Result |
| 重新连接间隔 | Integer | 5000 | 失败的连接尝试之间等待的毫秒数 |
| 检测信号时间间隔 | Integer | 60000 | 要触发的onHeartbeat输出之间间隔的毫秒数。使用此选项验证与设备之间的连接是否仍然有效。某些协议可能无法实时检测到连接中断。 |
每个协议驱动程序都有其自己的通信设置。它们将在列表的Inputs选项卡中列出。如果没有使用链接来覆盖这些值,这些值将被发送给驱动程序。
行为#
当控制器进程成功连接到驱动程序进程时,它将通过触发onInitialize输出中的一个值来激活此任务。接下来将由工作流开发人员来决定下一步要做什么。有多种可能的方案,每个方案都可能需要额外的任务才能完成。下面介绍一些示例。
-
控制器只用于一个设备,不用于其他设备
-
在“设置”页面中配置具体的通信参数
-
将
onInitialize输出直接链接到connect输入
-
-
控制器将用于多个设备
-
在“设置”页面中配置共享通信参数
-
在实体中创建(或重用)属性,这些属性将表示设备的非共享通信参数。
-
示例:
Resource\IpAddress -
示例:
Resource\IpPort
-
-
放置
Entity Instance任务-
选择代表设备(控制器、驱动程序)的正确实例
-
选择将包含非共享通信属性的属性
-
-
将
onInitialize输出链接到Entity Instance任务的Activate -
将
Entity Instance的每个属性链接到代表通信参数的Equipment Setup输入 -
将
Entity Instance的其中一个值链接到以下项的connectEquipment Setup
-
Note
您可以链接不同的设备设置任务来级联建立驱动程序通信,以便仅在上一个任务成功时激活。
当connect输入被激活时,通信参数将被发送到驱动程序,通信状态将更改为Connecting。
当驱动程序设法与设备进行连接时,其状态将更改为Setup,并会触发onSetup输出。
现在便可以在设备端进行任何设置(发送命令、设置某些属性以进行身份验证等)以确保所有设置都处于所需状态。
如果reconnect或disconnect输入被触发,驱动程序将首先断开连接并进入下一个状态(如果是disconnect输入,则进入ready状态;如果是reconnect输入,则进入connecting状态)。
备注#
此任务在很大程度上依赖于Equipment Setup Result来确定设置流程的结果。
每个控制器的每个驱动程序只能有一个此任务。
只有在第一次打开设置后,才会显示通信参数输入。这一问题现已得到解决,并将在以后的版本中进行修复。
此任务使用基于上下文的数据的特定结构,称为zone。有关此主题的更多信息,请参阅区域页面。






