本文介绍利用CommGate X2ACCESS实现从OPC Server读取数据并转储至ACCESS数据库。CommGate X2ACCESS是宁波科安网信开发的网关软件,软件可以登录到网信智汇(http://wangxinzhihui.com)下载。
【案例】如下图所示,实现从OPC Server读取数据并转储至ACCESS数据库。
【解决方案】在Access宿主机上安装CommGate X2ACCESS软件,与OPC Server采用以太网通讯。
- ACCESS数据表结构要求,如下:
- 至少要求具备Id、name、value三个字段。
- name:标签名称,字符类型
- value:数值,可以是字符类型或浮点类型
- state:1表示好值 0表示坏值
- time:不是必须,可以是datetime或bigint
- 以上字段名称如不是Id、name、value、state、time,需要在以下配置文件进行字段名称的配置
2. 配置DCOM:在网关机和OPC Server上配置DCOM,重启网关机、OPC Server。
3. 在网关机上运行OPC Client软件,与OPC Server进行OPC 通讯调试。
4. 配置X2ACCESS 出口端参数:在X2ACCESS安装目录下编辑X2ACCESS.ini,修改出口端参数。
[OUT]
;输入源类型:ACCESS,不做修改
Type=ACCESS
;数据库密码
Pwd=123456
;数据库路径
DB=F:\Program_KA3\CommGate\bin\RealTime.mdb
;连接串,定义连接串,以连接串信息为准,以上用户密码等信息配置忽略
ConnectStr=Provider=Microsoft.Jet.OLEDB.4.0;Jet OLEDB:Database password=123456;Data Source=F:
\Program_KA3\CommGate\bin\RealTime.mdb
;读取数据的SQL语句,如果不设置的话,将由以下字段名自动构造
;表中至少包含name,value字段
;state字段不是必须的,没有state字段时,必须构造1个虚拟state字段,如select name, value, 1 as state from snapshot
;State值 = 1 好值 =0 坏值
ReadSQL=select name1, value1, state1, time1 from snapshot
;定义Name字段名,默认为name
NameField = name1
;定义Value字段名,默认为value
ValueField = value1
;定义State字段名,默认为state
StateField = state1
;定义Time字段名,可以不定义,默认为空,表示没有Time字段
TimeField = time1
[IN]
;输入端配置文件名,不含后缀
INI = OpcDa
; 通讯类型
Type=
5. 配置X2ACCESS 入口端参数:在X2ACCESS安装目录Ini下编辑OpcDa.ini,按照刚才记下的通讯参数修改入口端参数。
[IN]
;OPC通讯,不做修改
Type=OPC_CLIENT
;输入OPC Server的名称
OpcName=OPCSim32 2.0
;输入OPC Server的IP
OpcNode=127.0.0.1
;1次装载标签个数,取值范围 1-2000
LoadMode = 1000
6. 标签配置:在X2ACCESS安装目录下编辑X2ACCESS.xls,配置标签。
7. 运行X2ACCESS.exe,启动网关。
8. ACCESS数据查看:用ACCESS调试工具查看写入的数据是否正确。
9. 详细配置说明见《X2ACCESS V4使用手册》。
更多通信资源请登录网信智汇(http://wangxinzhihui.com)。