基于python的opc-da协议数据采集

  • 一、前言
  • 二、环境
  • 三、openopc安装
  • 四、安装pip包
  • 五、使用教程
  • 六、总结

一、前言

公司项目涉及到德国产的卡尔迈耶系列的机器数据采集,因此研究了一下基于opc-da的数据采集协议和方法。市面上的opc采集几乎有很多已经成型框架,最后选定python的OpenOPC框架(虽然python代码实现简单,但安装环境真的很费劲,请一定跟着笔者的环境来使用openopc框架)。

二、环境

1、python版本:python2.7 32位(64位、python3几乎都不能成功安装和使用OpenOPC,笔者亲测
2、opc服务端:KEPServerEX 6 软件
4、opc客服端:OPC Quick Client (KEPServerEX 6自带的opc客服端)
3、OpenOPC包
百度网盘:
链接:https://pan.baidu.com/s/1tQQ8wORLXBSnPJukswHPvQ
提取码:cia1

三、openopc安装

1、下载 OpenOPC-1.3.1.win32-py2.7.exe 并安装
2、将 OpenOPC 安装目录下 src 文件夹下的 OpenOPC.py (其他3个py文件随意)复制到 python2.7 安装目录下的 Lib\site-packages 目录下,或者你的项目目录下(能import 就行)。(最好用anaconda创建一个独立的python2.7_32位项目环境)
3、修改电脑环境变量
OPC_MODE = open

四、安装pip包

pip install Pywin32
pip install Pyro

五、使用教程

1、用KEPServerEX6 模拟一个服务端机器通道和item

2、opc客服端软件实现
用OPCClient去读取该Opc服务端的一个通道(自己在服务端创建的通道)的item
先连上本地开的opc服务端

然后点击Tools-Sever-auto creat Tags并找到自己创建的通道

就可以看到自己在服务端创建的item了,值是随机变化的
3、python代码实现


import OpenOPC
opc = OpenOPC.client()
print opc.servers() #打印本地读到的OPC服务端,即Kepware.KEPServerEX.V6
opc.connect('Kepware.KEPServerEX.V6') #连接print opc['test.PLC1.T']   #直接输出你的item值
taglist = ['test.PLC1.T', 'test.PLC1.V'] #整体输出所有
opc_datas = opc.read(taglist)
print opc_datas
opc.close()

六、总结

虽然python代码很简单,但是环境真的很费解,在加上网上的博客漏洞百出,几乎都没有完成正确能成功的。笔者几乎安了2天左右才把环境搭好了,至此,基于python的Opc-da数据采集就完成了。希望读者可以少走弯路!

opc-da协议机器数据采集-python相关推荐

  1. opc-ua协议机器数据采集-python

    opc-ua协议机器数据采集-python 前言 一.环境 二.opc-ua服务端配置 三.opc-ua客服端 1.uaexpert软件实现 2.python代码实现 总结 前言 公司项目涉及到opc ...

  2. C# OPC DA 协议同步及异步读取数据,支持局域网访问其 他OPC server

    C# OPC DA 协议同步及异步读取数据,支持局域网访问其 他OPC server

  3. Unity/UE读取OPC UA和OPC DA数据(UE4)

    Unity/UE4通过OPC UA和OPC DA协议读取PLC数据,通过采集服务将数据采集到数据库中,Unity3d和UE4再从数据库中读取数据进行展示,用于三维数字孪生系统接入自动化系统的硬件数据. ...

  4. OPC 、OPC DA、OPC UA介绍

    目录 一.OPC介绍 1.OPC是什么? 2.OPC的本质 3.OPC诞生背景 二.OPC DA介绍 1.OPC DA是什么? 2.OPC DA的本质 3.OPC DA的远程通讯 三.OPC UA介绍 ...

  5. OPC DA调研报告

    OPC DA调研报告 一.基础背景知识 1.OLE 1.1.OLE(Object Linking and Embedding):对象连接与嵌入 1.2**名词解释**: 1.3.起源说明: 2.COM ...

  6. OPC-S7Modbus实现从OPC DA到PLC的数据逆向交换

    KepOPC工业互联最新推出的OPC-S7&Modbus这款软件是工业互联过程中,为了实现PLC和上位机数据共享而开发的"逆向数据交换"中间件,它主要实现西门子S7及其他支 ...

  7. dlt645协议电表数据采集接入PLC或scada等组态软件系统(转modbus)实现内网监控技术方案

    需求描述: 将工厂的国网计费铅封电表通过红外或者485方式采集之后,通过内网接入工厂本地的PLC或者SCADA监控系统. 需求难点分析: 现有的PLC或者scada监控系统往往不支持电表DLT645协 ...

  8. OPC DA 与 OPC UA区别

    OPC首字母缩写词代表什么? 问一个OPC老手,他们或许会笑,因为他们知道有很多含义!在经典的且程序化的说法是:O LE for P rocess C ontrol(用于过程控制的OLE).OLE 或 ...

  9. java读取OPC DA数据---Utgard

    java读取OPC DA数据-Utgard Utgard库已经过时,原作者早已删除库,建议使用OPC UA,兼容OPC DA. 下面讲解Utgard使用 C#和C++都不用配置DCOM,直接调用函数 ...

最新文章

  1. Proxool 连接池销毁问题
  2. 谷歌将采取自动化系统审核,预计被误删视频数量或将大增
  3. hdu-1251(基本字典树)
  4. Linux串口编程_termios
  5. 解决Failed to connect session for conifg 故障
  6. 人脸识别案例:【实战】opencv人脸检测+Haar特征分类器
  7. IIC 差异电平传输 和 IIC 地址
  8. python编程(数据库操作)
  9. 递归实例以及应用包含形参辨析
  10. comsenzexp mysql密码_ComsenzEXP X3
  11. 中国1,4-苯醌市场趋势报告、技术动态创新及市场预测
  12. mysql基础之视图、事务、索引、外键
  13. 新手必备!11个强大的 Visual Studio 调试技巧
  14. 小米华为鸿蒙,华为鸿蒙比小米MIUI快,老外上手出结果
  15. jQuery将json对象转为字符串,将json字符串转为对象
  16. 用C语言写的爬虫项目
  17. linux ftp命令下载目录,linux命令行下的ftp 多文件下载和目录下载
  18. Java—企业微信网页版登陆认证详解
  19. 2022软件测试行业现状分析及未来发展方向
  20. 答大三犹豫考研的同学兼向大一学生叨叨几句

热门文章

  1. 跌落ETC风口/业绩受挫,激光雷达是万集科技自救“灵药”?
  2. 苹果的AR真那么高科技?带你见识这些神奇AR应用
  3. linux服务器安装zip解压缩工具
  4. 电脑排行,十大笔记本电脑排名(笔记本电脑排行前十)
  5. 使用Chef部署OpenStack (by quqi99)
  6. 车载以太网100base-T1
  7. 如何显示隐藏的文件夹
  8. python创建学生类姓名学号_设计一个学生类班级类
  9. 【ArcGIS Pro微课1000例】0020:ArcGIS Pro中河流(曲线)、湖泊(水体色)图例制作案例教程
  10. php防止灌水,如何防止网站论坛有效灌水