OPC
# 常用调试工具
OPC 协议调试
# 视频教程
# 1 OPC UA 使用说明
# 1.1 工具使用
1. 使用 HSLSharp 工具将压缩包解压之后,以管理员身份运行"HSLSharp.exe"程序。
2. 打开软件的主界面,点击测试客户端。
3. 输入 OPC UA 服务的 IP、端口跟 OPC UA 的 server name,然后点击 Connect。
4. 如果 OPC UA server 需要进行身份验证,则输入 IP 端口和 server name->点击 menu->选择 UserIdentity->输入账号跟密码->再点击 Connect链接。
# 1.2 数据库配置
Equip 表
OpcUA 登陆有三种方式:
- 匿名登陆(anonymity)
- 用户名和密码(account)
- 证书和密钥(Certificate and secret key)
设置登陆方式:在 Equip 表的 communication_param 字段设置,例如使用匿名模式,则在 communication_param 字段 设置 1。同时,要在相应的字段设置参数,使用 Reserve1 记录需要认证的信息 ,具体如下格式 账号|密码,使用 “|”分隔。
Equip表配置规范:
数据库字段 填入内容 说明 equip_no 1 设备编号不能与其他设备重复 equip_nm OPC-UA设备 设备名称 acc_cyc 1 数据刷新优先级1为最优 communication_drv GWOpcUa.STD.Client.dll 协议解析驱动文件 equip_addr 192.168.1.16:12686/milo OPCUa通讯IP地址+端口/server name communication_param 1 1 匿名登陆(anonymity) 2 用户名和密码(account) 3证书和密钥(Certificate and secret key) communication_time_param 2000/16/2000 数据采集周期 Reserve1 admin|123456 1 匿名登陆(anonymity) 无需填写2 用户名和密码(account) 用户名|密码3证书和密钥(Certificate and secret key) 证书文件地址|密钥 注意的是,服务器可以设置允许哪几种登陆方式,匿名登陆可能没有写入权限。
Ycp 表
节点的地址有两种形式,在 遥测表(Ycp) 操作命令(main_instruction)字段设置节点的地址,操作参数(minor_instruction)字段设置节点数据类型。
Ycp 表需要设置的字段
字段: 站点号 设备号 遥测号 Opc节点名称 节点地址 节点数据类型 示例: 1 1 1 temperature ns=2; Int32 提示
节点地址也可以为:
ns=2;s=Devices/Test/temperature
程序会向此节点自动获取数据并且设置相应类型的值。
Yxp 表
Yxp 与 Ycp 表的内容一致,ycp 用来获取数据,例如 int、float 等类型,yxp 用来获取表示某个状态的数据。
操作命令(main_instruction)字段设置节点的地址,操作参数(minor_instruction)字段设置节点数据类型
Yxp 表需要设置的字段
字段: 站点号 设备号 遥信号 Opc节点名称 节点地址 节点数据类型 示例: 1 1 1 temperature ns=2; Boolean 提示
节点地址也可以为:
ns=2;s=Devices/Test/is_run
SetParm 表
可以设置 opc ua 中某个节点的数据,以便控制某些操作。
操作命令(main_instruction)填入节点地址;操作参数(minor_instruction)填入数据类型。
SetParm 表需要设置的字段
字段: 站点号 设备号 设置号 操作名称 节点地址 数据类型 值 示例: 1 1 1 空调温度 ns=2; Int32 26 提示
节点地址也可以为:
ns=2;s=Devices/Test/gree_temperature
- 数据类型必须准确,要跟opc ua 的节点数据类型一致,否则可能出错。
# 2 OPC DA使用说明
# 2.1 调试工具使用方法
将 OPC 调试工具复制到 OPC 服务所在的电脑上。打开 OPC Client 工具。
点击 Edit->New Server Connection,新建 OPC 连接;
点击新建的连接服务,右键增加 Group;
选中新增的 Group,右键增加 Item,选择需要添加查看的点位;
选中新增的 Group,右键选择导出点表,将点表导出。
# 2.2 OPC 中转(GWOPCService)服务部署
OPC DA需要在 OPC 服务所在的电脑上运行中转服务程序,敢为软件平台服务端通过读取中转服务获取数据。
将 GWOPCForwardingServer.exe 运行在装有 OPCServer 的电脑上,设置 IP 为本机 IP,填写端口,启动服务。
注意:运行程序前请在 OPC 服务电脑上安装环境补丁(OPC+Core+Components+2.00+Redistributable+2.30为基础程序包)。
# 2.3 数据库配置
equip表配置
数据库字段 | 填入内容 | 说明 |
---|---|---|
equip_no | 1 | 设备编号不能与其他设备重复 |
equip_nm | OPC-DA设备 | 设备名称 |
acc_cyc | 1 | 数据刷新优先级1为最优 |
communication_drv | GWOPC.NET.dll | 协议解析驱动文件 |
local_addr | 192.168.2.122:9001 | GWOPCService电脑的IP和端口 |
equip_addr | AKE_OPC_SERVER | OPCServer服务名称 |
communication_param | 为空 | 未使用 |
communication_time_param | 2000/16/2000 | 数据采集周期(控制数据刷新间隔,以毫秒为单位) |
YCP表配置
数据库字段 | 填入内容 | 说明 |
---|---|---|
equip_no | 1 | 设备号(必须与Equip表该设备编号相同) |
yc_no | 1 | 遥测点编号 |
yc_nm | 电表1电流 | 遥测点名称 |
main_instruction | 为空 | 未使用 |
minor_instruction | DEGB.041411604222.CurValue | 通过调试工具导出的点表中,item的名称(Item ID列) |
lvl_level | 3 | 报警事件级别(0表示屏蔽报警、1表示显示报警、2以上表示显示并记录报警、最大级别8) |
YXP表配置
数据库字段 | 填入内容 | 说明 |
---|---|---|
equip_no | 1 | 设备编号(必须与Equip表该设备编号相同) |
yx_no | 1 | 遥信点编号 |
yx_nm | 电表1状态 | 遥信点名称 |
main_instruction | 1 | 当取到的值等于该字段填写值时视为报警状态 |
minor_instruction | DEGB.041411604222.Status | 通过调试工具导出的点表中,item的名称(Item ID列) |
level_r | 3 | evt_01事件报警级别(0表示屏蔽报警、1表示显示报警、2以上表示显示并记录报警、最大级别8) |
level_d | 1 | evt_10事件报警级别(0表示屏蔽报警、1表示显示报警、2以上表示显示并记录报警、最大级别8) |
SetParm表配置
数据库字段 | 填入内容 | 说明 |
---|---|---|
main_instruction | options.sinfreq | 通过调试工具导出的点表中,item的名称(Item ID列) |