网关监控
一、网关监控概述
网关监控是 ThingsGateway 系统的核心管理界面,提供了通道、设备、变量的配置管理功能,以及实时状态监控和日志查看功能。通过网关监控页面,用户可以完成系统的所有配置和监控工作。
1.1 监控功能
- 配置管理:添加、修改、删除、导出、导入通道、设备和变量配置
- 状态监控:查看每个设备的运行情况、连接状态、交互日志等监控信息
- 实时数据:查看变量的实时值和状态变化
- 日志查看:查看通道、设备和变量的运行日志
- 批量操作:支持批量编辑、导出、导入等操作,提高配置效率
1.2 界面布局
网关监控页面采用树形结构展示通道、设备和变量的层次关系,右侧显示详细信息或日志内容。
主要区域:
- 左侧树形结构:显示通道、设备和变量的层次关系
- 右侧内容区域:显示配置表单、变量列表或日志内容
- 顶部工具栏:提供常用的操作按钮,如添加、删除、导出、导入等
二、配置管理
2.1 配置页面概览
点击显示类型切换 变量页面 和 日志页面
右键点击树节点,弹出操作菜单,提供以下操作:
- 添加:添加新的通道、设备或变量
- 修改:编辑选中的通道、设备或变量
- 删除:删除选中的通道、设备或变量
- 复制:复制选中的配置项
- 导出:导出选中的配置项或整个配置
- 导入:导入之前导出的配置
2.2 通道配置
建立通道需绑定唯一的插件,通道是设备与外部系统通信的基础。
添加通道
通道配置
通道配置项
| 属性 | 说明 | 默认值 |
|---|---|---|
| 名称 | 通道名称(全局唯一) | - |
| 插件名称 | 选择对应的交互插件 | - |
| 启用 | 是否启用通道 | true |
| 启用调试日志 | 是否启用调试日志 | false |
| 日志等级 | 调试日志等级 | Information |
| 通道类型 | 选择 TcpClient/TcpService/SerialPortClient/UdpSession/Other | TcpClient |
| 远程地址 | 对于TcpClient/UdpSession作为客户端有效,填入服务端的Url信息,比如192.168.0.1:502 | - |
| 本地地址 | 对于TcpClient/TcpService/UdpSession有效,作为本机的绑定地址,可选择填 入,为空时是随机绑定端口 | - |
| COM口 | 对于SerialPortClient有效,串口名称 | - |
| 波特率 | 对于SerialPortClient有效,串口波特率 | 9600 |
| 数据位 | 对于SerialPortClient有效,串口数据位 | 8 |
| 校验位 | 对于SerialPortClient有效,串口校验位 | None |
| 停止位 | 对于SerialPortClient有效,串口停止位 | One |
| 启用Dtr | 对于SerialPortClient有效,串口DtrEnable | false |
| 启用Rts | 对于SerialPortClient有效,串口RtsEnable | false |
| 接收缓存超时 | 流式数据拼包的最大间隔时间(毫秒) | 100 |
| 连接超时 | Tcp连接超时(毫秒) | 5000 |
| 最大并发数 | 并发数量,大部分插件都支持1,默认值为1 | 1 |
| 最大连接数 | 对于TcpService有效,最大连接数 | 10 |
| 客户端连接滑动过期时间 | 对于TcpService有效,客户端连接滑动过期时间(秒) | 60 |
| 心跳内容 | 对于TcpService,检测到心跳内容时,会自动返回相同内容到客户端。对于TcpClient,相隔心跳时间后,会自动发送心跳内容到服务端 | - |
| 心跳时间 | 对于TcpClient有效,相隔心跳时间(秒)后,会自动发送心跳内容到服务端 | 60 |
| 默认Dtu注册包 | 对于TcpClient有效,初始连接时,发送一次注册包 | - |
通道类型说明
| 通道类型 | 说明 | 适用场景 |
|---|---|---|
| TcpClient | TCP客户端,主动连接到服务器 | 连接Modbus TCP服务器等 |
| TcpService | TCP服务器,被动接受客户端连接 | 作为Modbus TCP服务器等 |
| SerialPortClient | 串口客户端 | 连接串口设备,如PLC、传感器等 |
| UdpSession | UDP会话 | UDP通信场景 |
| Other | 其他类型 | 非Foundation驱动的其他方式,比如opc,kafka,mqtt等等 |
其他通道操作功能
除了基本的添加/修改/删除操作外,网关监控页面还包含以下通道配置操作:
- 批量编辑通道:批量修改通道的属性
- 导出/导入:导出通道配置为JSON文件,或从JSON文件导入通道配置
- 复制:复制现有通道,快速创建相似的通道
2.3 设备配置
设备是通道下的逻辑单元,用于组织和管理变量。
设备配置
设备配置项
| 属性 | 说明 | 默认值 |
|---|---|---|
| 名称 | 设备名称(全局唯一) | - |
| 描述 | 当前设备描述 | - |
| 设备使能 | 启动/停用采集设备 | true |
| 启用调试日志 | 是否启用调试日志 | false |
| 日志等级 | 调试日志等级 | Information |
| 通道 | 选择对应的通道 | - |
| 默认执行间隔 | 执行间隔,对于采集设备,这个属性是默认的采集间隔,对于业务设备,这个属性是执行业务的间隔时间(毫秒) | 1000 |
| 启用冗余 | 启动/停用设备冗余 | false |
| 冗余设备 | 备用设备选择 | - |
| 冗余操作模式 | Offline/Script,默认为Offline:设备离线后切换冗余,Script模式为检测脚本返回值 | Offline |
| 冗余检测脚本 | 返回true时,切换设备,传入参数raw为DeviceRuntime类型 | - |
| 备用字段 | 存储自定义信息 | - |
设备冗余配置
设备冗余可以提高系统的可靠性,当主设备离线时,自动切换到备用设备。
冗余模式:
- Offline模式:设备离线后自动切换到备用设备
- Script模式:根据检测脚本的返回值决定是否切换设备
冗余检测脚本示例:
// 当设备通讯失败并且 某个变量等于true 时,切换到备用设备
var dev=(DeviceRuntime)raw;
if (dev.DeviceStatus == DeviceStatus.Offline&& GlobalData.GetVariable("dev1","var1").Value.ToBoolean()==true )
{
return true;
}
return false;
其他设备操作功能
除了基本的添加/修改/删除操作外,网关监控页面还包含以下设备配置操作:
- 批量编辑设备:批量修改设备的属性
- 导出/导入:导出设备配置为JSON文件,或从JSON文件导入设备配置
- 复制:复制现有设备,快速创建相似的设备
2.4 变量配置
变量是设备的基本数据单元,用于采集或发送数据。
变量基础属性配置
| 属性名称 | 属性描述 | 备注 |
|---|---|---|
| 名称 | 当前变量名称,当前设备唯一(变量) | - |
| 描述 | 当前变量描述 | - |
| 分组名称 | 一些插件的分组依据 | - |
| 单位 | 变量值单位 | - |
| 采集组 | 采集组唯一的作用就是额外设置报文分包,例如当采集400001和400060时,不想改动最大打包数,又想单独采集400001和400060,那可以把这两个变量的采集组设置成不一样的值 | 默认空 |
| 业务组 | 上传分组值,插件启用分组上传时的筛选值,具体可查看插件说明 | 默认空 |
| 读写权限 | 读写/只写/只读 | 读写 |
| 变量使能 | 启用/停用变量 | true |
| 远程写入 | 对于变量的写入使能配置 | false |
| 初始值 | 初始值 | - |
| 保存初始值 | 当运行系统退出时会将退出时刻的值保存到变量定义的初始值中,作为下次运行时的初始值 | false |
| 采集设备 | 当前采集设备选择的设备,通过级联选择器选择对应设备名称设置 | - |
| 数据类型 | 对应的数据类型 | 注意除了特殊驱动,一般不应该选择object |
| 执行间隔 | 读取时间间隔/执行特殊方法读取的间隔(毫秒) | - |
| 特殊方法 | 某些插件特有的方法 | 对于不同的插件,特殊方法配置不相同,查看对应的插件说明 |
| 变量地址 | PLC寄存器等 |