前面我们讲了如何用串口调试工具通讯变频器,也学习了Modbus的报文格式。今天老冯教你们怎么用PLC写通讯程序。
首先看我们要准备的硬件:
1.三菱FX3U
2.三菱FX3U-485BD板
3.台达VFD-M变频器
4.台达变频器通讯水晶头(RJ11)
首先是接线,RDA和SDA接到485+,RDB和SDB接到485-,也就是半双工模式。这里解释一下什么是半双工,什么是全双工。
半双工:同一时间只能发送或者接收数据,接收和发送不能同时进行。
全双工:接收发送可以同时进行,互不影响。
接完线我们需要定义两边的通讯参数一致。我们以Modbus RTU为例。设置变频器站号为01,波特率为9600,8个数据位,1个停止位,偶校验。那PLC这边如何定义呢?看下图的实例程序。
![2a06c51d0167a585e67b3e390dc084ae.png](https://i-blog.csdnimg.cn/blog_migrate/b514d23f30c17b052ad0e460f72f0074.jpeg)
图1
首先我们要置位特殊继电器M8161,M8161=ON时,这样是为了把所有数据都存放到数据寄存器的低八位。然后D8120为通讯格式寄存器,具体如何设置可以参考图2。最后利用RS指令配置发送区和接收区,发送区为D0开始的8个数据寄存器,此例只讲解如何发送报文,不需要接收数据,所以后面是K0。