开关
一个写入布尔点位的开关,状态跟随现场:点击负责写入,现场负责确认。
开关架在一个可写的布尔点位之上。它遵守 SCADA 关于状态归属的那条规矩:画面跟着点位走,由实时地址空间刷新,而点击只写入点位当前所说状态的反面,开关是在现场确认之后才翻过去的。屏幕上绝不会出现一个点位没有报出来的状态。它属于控制类;新放置的一个占 4 × 1 个单元格。
内容
| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 标签 | 画在开关旁边的可选说明文字。 | 自由文本 | 空 |
数据
| 字段 | 作用 | 取值 | 默认 |
|---|---|---|---|
| 地址 | 被开关的那个点位的带根 Logic 地址:一个内部存储值变量,或者一个可写的点位。建议列表把布尔点位排在前面。 | 自由文本;建议来自实时点位清单 | 空 |
字段下面,编辑器显示所选点位此刻读到什么。
什么时候这个开关可以操作
只有下面这几条同时成立时,开关才是可用的:
- 点位解析得到一个合法的写入目标:一个内部存储值变量(不能是表达式变量,它的值是算出来的),或者一个非只读的点位;
- 点位读到的质量良好:点击写入的是当前状态的反面,没有可信的读数,也就没有什么可以取反;
- 这个开关发出的写入没有一个还在途中;
- 登录的角色可以操作仪表画面(见仪表画面页面上的权限模型)。无权的角色看到的是那个安静的锁标记,理由写在组件的提示里。
写入的含义
一次点击写入 true 或 false,永远是点位最后一次良好读数的反面,经由工作站唯一的逻辑写入出口,并且和其他每一次写入一样记入日志。开关下面那一行临时答复报出结果(“已写入‘开’”“已写入‘关’”,或者错误),几秒之后自行清除。格子里放不下答复行、开关上面也没有角上标题时,答复在显示期间写在开关旁边标签的位置上,拒绝用错误的颜色,完整的答复在提示里;开关不会移动,答复清除后标签回来,没有标签的开关也为答复留出同一个位置。授权在点击的那一刻重新核对,所以画面开着的时候换了角色或者退出登录,都不会派发出一次过期的按下。
等现场设备的是这个开关,不是 Logic,所以“已写入‘开’”意味着现场设备已经收下了它。别的情形都把拒绝摆在那一行上,用的是拒绝者自己的说法:工作站在发送之前就断定的事,用它自己的话(“未写入‘Cmd’:设备未连接。”),线路上发生的事则用设备或者它的驱动的话。一个在发出之前就被同一点位上更新的写入赶超掉的状态不算拒绝,照样报为已写入,因为更新的那个状态才是现场拿到的。
绑定的点位读不到时(地址解析不到,或者质量不可用),组件戴上共用的读数异常标记,开关一直不可用,直到读数回来。
共用的外观、标识、位置与图层、动作这几个分区,写在组件页面。