OPCDA客户端
OPCDA驱动配置操作视频:
https://appxow65u356815.pc.xiaoe-tech.com/detail/v_623307d6e4b04d7e2fd78ac2/3
驱动配置
决定驱动如何连接 OPCDA 服务器,数据点
配置决定驱动从 OPCDA 服务器上读取哪些数据。
如何测试
- 安装驱动,安装完成后在选择设备驱动时可以看到 opcda。没有驱动授权时也可以添加少量数据点做测试。
- 创建一个模型,设备驱动选择 opcda。创建一个属于该模型的资产。
- 参考驱动配置一节,配置模型中的驱动配置。
- 参考数据点配置一节,在模型中添加一个状态正常的数据点。
- 保存配置,点击重启驱动。
- 在模型的数据点的下拉框中选择第 2 步创建的资产,查看是否有数据。
一、驱动配置
1、前提:DCOM 配置
opc 经典协议基于 windows 的 COM/DCOM 技术,所以需要对此进行配置。可以参考:
2、打开设备表,切换到设备配置,选择OPCDA驱动程序。
参数说明
IP
: OPCDA 服务器所在计算机的 IP 地址计算机名(Domain)
: OPCDA 服务器所在计算机的计算机名progId
: opc 程序名clsid
:组件id,不填时自动获取(非必填)用户名
: 拥有 DCOM 权限的 windows 用户的用户名(DCOM 配置时需要给一个用户 DCOM 权限)密码
: 上述用户的密码
采集周期
参数决定了驱动将数据上传到平台的频率,默认为5s。
OPCDA 驱动使用 IOPCSyncIO 接口读取数据,每个资产下的数据点属于同一个 Group
获取计算机名
- 方法一:控制面板 -> 系统和安全 -> 系统 -> 设备名称
- 方法二:命令行 ->
hostname
命令 - 方法三:文件管理器 -> 此电脑 -> 属性 -> 设备名称
获取 progId
progId 一般是由几段字符串(有字母或数字)通过“.”拼接而成, 一般可以在 OPCDA 服务器界面看到。如果没法找到则需要通过第三方客户端找。
第三方客户端都需要通过 OPCEnum 服务获取当前计算机上运行的 opc 服务器,需要确保 OPCEnum 服务运行。 任务管理器 -> 服务 -> OPCEnum
获取 clsid
clsid 至于 progId 有关(同一款 opcda 服务器装在不同的电脑上,clsid 应该是一样的)。不配置 clsid 时,驱动会使用 windows 的服务根据 progId 获取 clsid,配置时使用配置 clsid。
通过注册表获取
在运行 OPCDA 服务器的机器上打开注册表,在 HKEY_CLASSES_ROOT
子目录下找到 progId 对应的条目(与 progId 完全一致)。点击 CLSID
目录,双击属性即可复制,注意不要复制两侧的括号。
Matrikon.OPC.Simulation.1 -> F8582CF2-88FB-11D0-B850-00C0F0104305 Kepware.KEPServerEX.V6 -> 7BC0CC8E-482C-47CA-ABDC-0FE7F9C6E729
通过第三方客户端获取
部分第三方 OPC 客户端(比如 Matrikon explorer)在连接后可以在服务器属性中看到 clsid。
示例
二、数据点配置
OPCDA的itemId
在OPC server中是唯一不重复的。
通过驱动扫点方式快速添加OPCDA数据点。
指令配置
配置指令时必填 ItemId,注意此时必须填写全部 ItemId(Item 前缀无效)。
每个资产有一个公共 group 用来写入(且与读数时的 group 不同),因此不用配置 group。
常见问题
启动问题需要通过容器日志查看,由于 opcda 造成的问题一般会有一个错误码
opcda 错误码: 0x80010111
windows 版本过新造成的问题。
windows + R
winver
- 查看版本号,大于等于2004(个人电脑2020-05-27发布,服务器2020-06-26发布)则属于版本过新
配置文件
配置文件尽量不要让客户自行修改。修改后必须重启容器或者进程才能生效。
驱动是多个 OPCDA 客户端的集合。驱动的配置文件作用于驱动连接的所有服务器,不限制于某个模型或资产。
- client.checkInterval: 检查重连的间隔(以秒记),默认 60