启用与健康状态
树的每一层里什么参与采集、那些圆点和状态文字是什么意思、全部/正常/有问题/已禁用几个筛选项、状态栏、最近错误,以及重新连接、刷新和全部刷新这几条命令。
有两个问题贯穿整个通信栏,而且每一层的回答方式都一样:什么在参与采集,以及此刻什么在应答。第一个是你用“启用”和“禁用”做出的选择;第二个是一个常开的监视器每秒观察一次、并推送到页面上每个圆点、推送到状态栏、也推送到 Logic 和仪表画面所读的那些 Connector 数值上的东西。
什么在参与
启用是按层决定的,上一层的开关从不去改写下一层的开关:
| 层级 | 命令 | 关掉之后的效果 |
|---|---|---|
| 驱动 | “驱动”行那张表上的“启用”/“禁用” | 这个驱动的分组离开树。只要驱动下面还有设备或线路就拒绝,所以已经配置好的东西不会从这条路上被关掉。 |
| 串行线路 | 线路命令栏上的“启用”/“禁用” | 总线对线上每台设备关闭;每台设备保留自己的“已启用”选择,线路重新启用时它们原样回来。线路的参数组无效时,“启用”被拒绝。 |
| 设备 | 设备命令栏或它那一行上的“启用”/“禁用” | 与这台设备的全部通信停下,它的点位离开实时地址空间;点位保留它们自己的开关。默认是开的。 |
| 点位 | 点位命令栏或它那一行上的“启用”/“禁用” | 就这一个点位离开采集和实时地址空间。默认是开的。只写的点位不管启不启用都从不被轮询。 |
每一次“启用”和“禁用”都需要“配置 Connector”,并在有运行占住工作站或运行时已停止时置灰;同一个驱动上的一次扫描也会把线路和设备的这两条命令置灰。一台设备在运行上算已启用,是指它自己已启用,而且对 Modbus RTU 来说它的线路也已启用:轮询、“已禁用”筛选项和健康状态监视器看的就是这个。
一台设备的健康状态
监视器从一台设备已启用、可读的那些点位推出它的健康状态:
| 健康状态 | 圆点 | 含义 |
|---|---|---|
| 在线 | 绿 | 每一个已启用的可读点位上次读取都答了。 |
| 部分在线 | 琥珀 | 有的答了,有的没答。 |
| 离线 | 红 | 一个都没答。 |
| 已禁用 | 灰 | 设备被禁用了,或者它的串行线路被禁用了。 |
| 尚未可知 | 灰 | 没有可判的东西:一个已启用的点位都没有。 |
一台设备如果已启用的点位全是只写的,就没有读数可判,于是改取传输层的连接状态:连着时是在线,没连上时是离线,服务器还没试过之前是尚未可知。一个带越限故障的越限值是一种过程状况,不是连接问题:它把点位的圆点变成琥珀色,但绝不会把设备算成离线。一个替代值同样让点位保持可读,而设备照旧被报告为离线。内置服务器自己也有健康状态:它停着的时候每个点位都读作空档,状态栏写“服务器:已停止”。
点位的圆点
在树里,点位有数值时它的圆点是绿色的,否则是灰色的。在点位页面上,同一个圆点在数值是替代值、或者限值环节报了故障时是琥珀色的,因为一个读得出来的数字和一次测量不是一回事。上次读取失败时,点位行上还带一个红色的错误标记,消息就是它的提示文字。
串行线路的状态
一条 Modbus RTU 线路把物理端口和它的设备分开报告,报告的地方有树里那一行、驱动的线路表,以及线路页面的标题栏:
| 状态 | 圆点 | 含义 |
|---|---|---|
| 已关闭 | 灰 | 线路被禁用了。 |
| 空闲 | 灰 | 已启用,但没有已启用的设备:端口没有打开。 |
| 正在连接… | 琥珀 | 有一台设备已启用,端口正在打开,或者在一次失败之后正在重开。 |
| 在线 | 绿 | 端口开着并在服务。 |
| 端口故障 | 红 | 端口打不开或者出了故障;诊断文字打在标题栏下面,也作为这一行错误标记的提示文字,而诊断日志把这次故障记一次、把恢复也记一次。 |
线路的概括文字还会加上它的设备在做什么:“在线 · 2/2 台设备在线”“在线 · 1 台在线 · 1 台有问题”“空闲 · 没有已启用的设备”。一条线路可以是在线的,而它上面仍有一台谁也不替它应答的设备。
圆点怎么往上汇总
文件夹、串行线路、驱动和“驱动”行对它们的子节点都用同一条规则:只有在线、部分在线和离线的子节点参与计数;已禁用和尚未可知是中性的,永远不会把上一级拉成琥珀色或红色。在参与计数的子节点里,全是在线就是在线,混在里面只要有在线或部分在线就是部分在线,全是离线就是离线,一个参与计数的子节点都没有就是尚未可知。文件夹汇总它里面每一台设备,含子文件夹里的;Modbus RTU 驱动汇总它的线路;“驱动”行汇总每一个已启用的驱动。十六个已启用的驱动里有一个分组在线、另外十五个是空的,读出来是在线,而不是琥珀色。
全部 / 正常 / 有问题 / 已禁用 几个筛选项
树上方那几个筛选项按同样这些状态把每一行归桶:正常是在运行上算已启用、并且在线的设备或线路,以及有数值的已启用点位;有问题是已启用但离线或部分在线的设备或线路,以及没有数值的已启用点位;已禁用是被禁用的设备、线路或点位,挂在一条已禁用线路下面的设备也算在内。只要下面有东西通过,驱动那一行就显示出来;选中的那一行永远保持可见。这些筛选项连同这一栏的其余部分在 Connector 里讲。
状态栏
窗口状态栏最左边那个圆点和那段文字,就是同一个监视器折成一行:服务器起来了、并且没有设备离线或部分在线时是“在线”;服务器不在线时是“服务器:正在启动…”或“服务器:已停止”,这句压过其他一切;否则就是处境最差的那台设备,点名写出来,离线时是“Connector:Furnace 未通信”,部分在线时是“Connector:Furnace 不稳定”。点这个指示器会打开 Connector 页面。状态栏其余部分在窗口里讲。
最近错误
诊断日志为一台设备记下的每一条警告或错误,都挂在那台设备上:它在树里那一行显示为一个红色标记,消息就是提示文字;在驱动的设备表上显示为最近错误那一列;在设备页面标题栏下面显示为红色文字;条目点名了某个点位时,那个点位的行和页面也带着它。设备恢复在线时,这条带子自己清掉。本安装包没带其驱动的设备,在那个位置改为显示“本安装包不包含该驱动。”,因为那里没有故障要查;一台等着证书的 OPC UA 设备显示“正在等待证书批准”。完整的诊断日志在事件页面上。
重新连接、刷新和全部刷新
| 命令 | 在哪里 | 作用 |
|---|---|---|
| 重新连接 | 设备的命令栏和右键菜单 | 关掉那台设备的连接再重开一次,不碰别的设备,也什么都不重新加载。消息会等驱动回话:“已重新连接‘Furnace’。”,或者“无法重新连接‘Furnace’:”加上原因。 |
| 刷新 | 驱动的命令栏和右键菜单 | 从数据库把配置读回来,并把整棵树重建一遍。正在跑的服务器保持原样。展开状态和选中项都重置,这一栏回来时是收起的。“设备已刷新。” |
| 全部刷新 | “驱动”页面的命令栏 | 和“刷新”一样。 |
“刷新”和“全部刷新”只读不写,所以对每个角色都画出来;“重新连接”会关掉再打开一条连接,所以没有“配置 Connector”权限的角色根本看不到它。有运行占住工作站或运行时已停止时,这三个都置灰;有扫描或配对跑着时,“重新连接”和“刷新”也置灰。一次编辑之后不需要刷新:每一次保存都会自己把改动过的设备调和进正在跑的服务器,而一台够不着的设备会在后台一直重试到它应答为止,在那之前它的点位读作空档。“重新连接”缩短的就是这个等待:它现在就去问,而不是把设备留给下一次自动尝试,并且会报告设备答没答。引起越限故障的那些限值属于数值转换链。