0
点赞
收藏
分享

微信扫一扫

python通过snap7通讯西门子PLC仿真配置


 一、资料

链接:https://pan1.baidu.com/s/1-Dt7yc8e4zEVC5ySqXMLXQ?pwd=1010 
提取码:1010  --来自百度网盘超级会员V6的分享,俺的网盘到24年11月,过期自己网上搜吧

二,准备工作

1、安装python

我用的是32位的,因为期间报了个这个错误,调试了好几次解释器才解决

python通过snap7通讯西门子PLC仿真配置_自动生成

正常安装python就行,很简单,注意事项其他的文章都有

2、安装pycharm

此处忽略。。

3、安装snap7

win+R,打开cmd终端

python通过snap7通讯西门子PLC仿真配置_网盘_03

python通过snap7通讯西门子PLC仿真配置_网盘_04编辑

输入  pip install python_snap7联网自动安装

python通过snap7通讯西门子PLC仿真配置_python_05

python通过snap7通讯西门子PLC仿真配置_python_06编辑

4、解压NettoplcsimS7o

这个玩意折磨了我很久后面会提,压缩包解压出来就行

python通过snap7通讯西门子PLC仿真配置_自动生成_07

三、调试及问题(纯干货)

1、打开pycharm,新建项目

注意红框内,一定不要选择虚拟解释器,且要选择现有的解释器,否则写程序时会无法插入snap7的模块

python通过snap7通讯西门子PLC仿真配置_网盘_09

python通过snap7通讯西门子PLC仿真配置_python_11

出现错误如下,no module named 'snap7'

python通过snap7通讯西门子PLC仿真配置_网盘_13

正常如下

python通过snap7通讯西门子PLC仿真配置_网盘_15

python通过snap7通讯西门子PLC仿真配置_网盘_16编辑

2、编写测试程序

import snap7 #插入模块
from snap7 import util
plc = snap7.client.Client() #命名客户端对象plc
plc.connect('192.168.0.1',0,1) #连接网址,机架,槽
print(f'connect:{plc.get_connected()}') #反馈连接状态

其中通讯地址需要打开TIA组态,这是使用真实的PLC,但是如果使用仿真则不是,这个地方困扰了我很久,后面会提

python通过snap7通讯西门子PLC仿真配置_自动生成_17

python通过snap7通讯西门子PLC仿真配置_python_19

点击运行会报错,RuntimeError: can't find snap7 library. If installed, try running ldconfig,缺少库

打开网盘下载的snap7-full-1.4.2,根据python位数选择文件,复制到解释器路径下

python通过snap7通讯西门子PLC仿真配置_python_21

python通过snap7通讯西门子PLC仿真配置_python_22编辑

python通过snap7通讯西门子PLC仿真配置_自动生成_23

python通过snap7通讯西门子PLC仿真配置_python_24编辑

注意我选择的时32位因为我的解释器时32位,如果我复制了64位会报如下错误

OSError: [WinError 193] %1 不是有效的 Win32 应用程序。

python通过snap7通讯西门子PLC仿真配置_自动生成_25

python通过snap7通讯西门子PLC仿真配置_网盘_26编辑

3、终极恶心错误

当如上配置都正常后,如果用的仿真点击运行会报

RuntimeError: b' TCP : Unreachable peer',超时

python通过snap7通讯西门子PLC仿真配置_网盘_27

python通过snap7通讯西门子PLC仿真配置_python_28编辑

这个时候就用的这个模拟通讯软件,配置好点击开始服务

python通过snap7通讯西门子PLC仿真配置_python_29

python通过snap7通讯西门子PLC仿真配置_python_31

python通过snap7通讯西门子PLC仿真配置_网盘_32编辑

python通过snap7通讯西门子PLC仿真配置_网盘_33

软件会自动生成电脑和TIA的地址,而我们在pycharm需要输入的网址是第一个,我这里是192.168.43.23,机架0,槽1

注意TIA中CPU的连接机制和访问级别要如图选择

python通过snap7通讯西门子PLC仿真配置_python_35

python通过snap7通讯西门子PLC仿真配置_自动生成_36编辑

python通过snap7通讯西门子PLC仿真配置_python_37

python通过snap7通讯西门子PLC仿真配置_网盘_38编辑

打开TIA仿真,这里就不赘述了,在运行程序就会惊喜发现成功了

python通过snap7通讯西门子PLC仿真配置_网盘_39

python通过snap7通讯西门子PLC仿真配置_网盘_40编辑

举报

相关推荐

0 条评论