Python读取PLC值-0基础入门教程
1,下载Python并安装
https://www.python.org/ftp/python/3.14.2/python-3.14.2-amd64.exe
2, 下载PyCharm并安装
https://download-cdn.clf.jetbrains.com.cn/python/pycharm-2025.3.1.exe?Expires=1766971477&Signature=d8OLreNn8me1xud3L-ksNcjvN2bC0Ov~KGmeErm9IMeYeBiWmavupRHJxHjqUGQU-E4GRlWihOtMg-omgV4Ya5MzEBwo0p-YSwyPru2i-T1Z5kncvW-44Us~BtzOKb2zv1--51lJ2k-IJJN9V-xzitrxYPknhgmu9GG0ZCFIocVDASoAjmgEeyLjyUVzgAdXIxXxPURGpDzqDAktaRt2dWWean~x8c9tc8Yh~PMlTRMu73HBb8UyblIW80rJgmTYJV-wLNHX6zgSJHuqzqaKATKtb7SRXLsjNT0BlwznX2swAfRiv7xhRY-s4Fw5-ReZS4xY1ggCYNrU5772Kj7XRw__&Key-Pair-Id=



3,打开PyCharm左下角点击终端

输入 pip install python-snap7 并回车

4,新建一个test_PLC的Python文件并输入以下代码
import snap7
from snap7.util import get_int
# 创建客户端
plc = snap7.client.Client()
try:
# 连接到PLC (IP, rack, slot)
plc.connect("192.168.2.2", 0, 1)
print("PLC Connected:", plc.get_connected())
# 读取DB120偏移0的INT值
data = plc.read_area(snap7.type.Areas.DB, 120, 0, 2)
value = get_int(data, 0)
print("DB120.DBW0 (INT) =", value)
except snap7.exceptions.Snap7Exception as e:
print("PLC Error:", e)
finally:
# 断开连接
if plc.get_connected():
plc.disconnect()

运行代码即可显示读取DB120偏移0的INT值;
若手动输入,请注意大小写!