|
一, 准备工作
安装台达梯形图软件 “WPLSoft”
http://downloadcenter.delta-chin ... e&sort_dir=DESC
2.硬件连接
2.1 电脑网卡 连接PLC以太网, IP设为192.168.1.x网段,PLC默认IP为192.168.1.5.
2.2 PLC 供电24V, S/S输入公共端接GND,UP0/ZP0输出驱动电源的端口接GND / 24V
2.3 在 PLC X0输入触点, 对地接一个测试按钮,用于逻辑测试。
二, 编写梯形图
确保PLC上电,网线插上,电脑IP正确,能ping通PLC:192.168.1.5,打开WPLSoft,按下图操作,连接。
扫描后会出现PLC,点击下载通信按钮,进入梯形图
写一个简单测程序,测试 X , Y , M , C 等功能,下一步进行Modbus TCP测试,获取这些数据。
三,使用 Modbus Poll 软件直接读取
打开 Modbus Poll 设置IP,端口是默认就行
台达DVP26SE 规格书内 通信地址如下:
设置后可以获取到 X , Y , M , C
四,使用 使用Python 的 pyModbusTCP 库读取
- # 需要安装 pip3 install pyModbusTCP
- from pyModbusTCP.client import ModbusClient
- # PLC 默认IP是192.168.1.5,端口502
- client = ModbusClient(host="192.168.1.5", port=502, auto_open=True,timeout = 2)
- #读取物理输入触点X,地址400;输出触点Y,地址500
- x = client.read_discrete_inputs(0x400,10)
- y = client.read_coils(0x500,10)
- #测试读写逻辑触点M,地址800
- m_write = client.write_single_coil(0x800,0)
- m_read = client.read_coils(0x800,bit_nb=1)
- #测试读C数据寄存器
- c = client.read_holding_registers(0xE00,10)
- if x:
- print("X0~X9:",x)
- else:
- print("x read error")
- if y:
- print("Y0~Y9:",x)
- else:
- print("Y read error")
- if m_write:
- print("M0 Write Success")
- else:
- print("M0 Write error")
- if m_read:
- print("M0 Read:",m_read)
- else:
- print("M0 Read error")
- if c:
- print("C0~C9:",c)
- else:
- print("C0~C9 read error")
复制代码
运行, 打印输出 ,对比和软件实时监控一致。
完
完整图片内容: https://blog.csdn.net/cqy1028/article/details/129828634
|
阿莫论坛20周年了!感谢大家的支持与爱护!!
阿莫论坛才是最爱国的,关心国家的经济、社会的发展、担心国家被别国牵连卷入战争、知道珍惜来之不易的和平发展,知道师夷之长,关注世界的先进文化与技术,也探讨中国文化的博大精深,也懂得警惕民粹主义的祸国殃民等等等等,无不是爱国忧民的表现。(坛友:tianxian)
|