首页 上一页 1 2 下一页 尾页

pythonsnap7读写s7-1200PLC的数据(PLC的I、Q、M区) 点击:7656 | 回复:21



zhouzhoufa

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 1回
  • 年度积分:0
  • 历史总积分:69
  • 注册:2018年1月10日
发表于:2018-03-15 11:18:11
楼主

最近项目上要开发基于TCP/IP协议的PC上位机和西门子S7系列PLC的通讯和数据采集,网上搜罗了一圈发现有python snap7这个工具,鉴于此次开发时间有限,就自己研究上手了,期间也碰到很多安装和连接、读取数据的问题,网上解决方案有限,现提供一个测试版本,该版本有如下功能:

2018-03-14 更新python s7-1200测试版程序技术特性:   

1、PC直接通过TCP网口连接S7-1200系列PLC;

2、按照PLC导出的点表地址获取I、Q、M区的地址和类型进行读取;

3、读出的值下一步可以通过MYSQL或socket的方式记录和推送;

4、目前是按照每个点逐个读取,因此效率较低,后续考虑按块读取,那样效率就很高了,基本上读一次时间控制在ms级别;

5、摆脱了OPC的束缚,之前都需要从OPC中转一下,这下PC可以直接通过网络连接PLC。

(python s7-1200测试版本打包程序)下载地址:https://pan.baidu.com/s/1cRK9vIxW4T1_sVFieUESjA

(西门子SiemensTCP/IP调试助手软件)下载地址:https://pan.baidu.com/s/1p1PaC2ndRqFDYoOY1gVT4g

感谢(蔽月八云):https://www.jianshu.com/p/5284de40a139 的总结和分析,因为我也是个PLC小白,python snap7的优势就在于,一个PLC小白也能很快地利用python和PLC建立通讯,并获取寄存器的值,这些值为我们的数据分析提供了数据基础,基于TCP/IP方式的通讯,是它最大的优势,期间也用过modbus TCP的方式读取,但是40001和M区的对应地址关系把我搞的头晕,相比而言modbus简单更易操作,python snap7更加专业。

另附 python snap7安装常见问题和步骤:https://stackoverflow.com/questions/33697263/python-snap7-windows-cant-find-snap7-library


另外,通过OPC的方式获得PLC的寄存器值的方法和程序详见:基于python的opc读写和导入MSSQL/MYSQL

正在下载,请等待……
下载附件需0积分!




diaonima

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 617回
  • 年度积分:0
  • 历史总积分:866
  • 注册:2008年5月30日
发表于:2020-05-16 19:20:08
21楼

多谢楼主,真的很需要这些资料


热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页