说明
在一次数采项目中,对现场PLC300进行取数。本人小白,在网上搜罗了大量信息,终于找到解决方法。
准备事项
1. 操作系统
2.Python环境(本次使用Python3.6.6)
3.Snap7
connect
connect('192.168.0.1', rack=0,slot=1)
三个参数分别为:IP 地址,机架,插槽
read_area及write_area
函数
read_area(self,area,dbnumber,start,size)#读取数值
write_area(self,area,dbnumber,start,data) #写入数值(未测试)
参数area:
两个函数的核心都是对area进行读写操作,area用于区分I、Q、M、DB区域(西门子PLC中存储区有I、Q、M、DB、V区等等,本人为小白,此处不做具体了解),针对各个分区都有指定的值。具体如下:
'PE': 0x81, #input 输入区
'PA': 0x82, #output 输出区
'MK': 0x83, #bit memory 中间存储区(M区&