在工业自动化控制系统中,三菱FX3U和FX3G系列PLC因其高性价比和强大的功能被广泛应用。它们与基于RS-485接口的通讯设备(如变频器、仪表、其他PLC或上位机)进行数据交换,是实现系统集成和远程监控的关键。本文将详细介绍其通讯实现的硬件连接、参数设置及编程方法。
一、硬件准备与连接
- 所需硬件模块:
- FX3U/FX3G PLC本体。
- 通讯扩展板或适配器:这是实现485通讯的核心。
- FX3U-485-BD 或 FX3G-485-BD:这是最常用的RS-485通讯板,直接安装在PLC本体上。
- FX3U-485-ADP 或 FX3G-485-ADP:功能类似的适配器模块。
- 通讯线缆:使用屏蔽双绞线,根据设备接口制作或购买标准线缆。
- 物理接线:
- RS-485采用差分信号传输,通常包含两根数据线(DA/DB或A/B)和一根信号地(SG)。
- 接线端子:以FX3U-485-BD为例,其端子定义为:
- SDA (RDA):接收数据线A。
- SDB (RDB):接收数据线B。
- RDA (SDA):发送数据线A(注意:在某些模式下,发送与接收端子是复用的)。
- RDB (SDB):发送数据线B。
- SG:信号地。
- 连接方法:将PLC的SDA与通讯设备的A(或正极+)端子连接,SDB与设备的B(或负极-)端子连接,并将双方的SG端子连接在一起,以减少共模干扰。若网络中有多个设备,需在总线两端连接终端电阻(通常为110Ω)。
二、通讯协议与参数设置
FX3U/FX3G支持多种基于RS-485的通讯协议,需根据通讯设备支持的协议进行选择。
- 无协议通讯(RS指令):
- 这是最灵活的方式,PLC通过串行指令直接发送和接收自定义格式的数据帧,常用于与不支持标准协议的设备通讯。
- 参数设置:使用GX Works2编程软件,在PLC参数中设置“PLC系统(2)” -> “串行通讯设置”。
- 通讯模式:选择“RS-485”。
- 数据长度、奇偶校验、停止位、波特率:必须与通讯设备的设置完全一致(如:8, N, 1, 9600bps)。
- 协议:选择“无协议通讯”。
- 控制模式:通常选择“RS-485”。
- 专用协议通讯(变频器协议等):
- 三菱为自家的变频器(如FR-A800)等设备设计了专用指令(如IVCK、IVDR等),简化了通讯程序。
- 参数设置:在串行通讯设置中,协议选择“专用协议通讯”,并设置相应的站号和超时时间。
- Modbus RTU通讯:
- FX3U/FX3G可以作为Modbus RTU主站或从站。作为主站时,需要使用ADPRW指令;作为从站时,需在参数中启用Modbus RTU从站功能并设置站号。
- 参数设置:协议选择“Modbus RTU通讯”,并详细设置站号、波特率等。
三、编程实现示例(以无协议通讯为例)
以下是一个简单的发送接收程序框架:
1. 发送数据:使用RS指令和MOV指令。
`
M8002 // 初始化脉冲
|---[MOV H0C96 D8120] // 设置通讯格式:9600bps,8,N,1 (具体值查手册)
|---[SET M8161] // 设置8位数据处理模式(常用于ASCII通讯)
X0 // 启动发送按钮
|---[RS D200 K10 D500 K10] // 指定发送数据首地址D200,长度10字节;接收缓冲区首地址D500,长度10字节。
|---[MOV H41 D200] // 将字符'A'的ASCII码送入发送缓冲区
|---[MOV H42 D201] // 将字符'B'送入...
// ... 填充要发送的数据
|---[SET M8122] // 置位发送请求标志,PLC自动开始发送
`
2. 接收处理:
- 当PLC接收到数据后,系统会自动将数据存入指定的接收缓冲区(如D500开始),并置位接收完成标志M8123。
`
M8123 // 接收完成标志
|---[MOV D500 D0] // 将接收到的第一个字节数据传送到D0
|---[RST M8123] // 必须手动复位接收完成标志,以便下次接收
`
四、关键注意事项
- 参数一致性:波特率、数据格式等所有通讯参数必须在PLC和通讯设备两端设置一致。
- 终端电阻:长距离或多设备通讯时,总线两端务必接入终端电阻,以确保信号完整性。
- 接地与屏蔽:信号地(SG)应可靠连接,屏蔽线单端接地,以增强抗干扰能力。
- 程序处理:发送和接收标志位(如M8122, M8123)的置位与复位必须严格按手册说明编程,避免通讯堵塞。
- 调试:建议先用电脑串口调试助手连接485转换器与设备测试,确认设备本身的收发正常,再接入PLC进行联调,可极大提高效率。
通过以上步骤,可以稳健地实现三菱FX3U或FX3G PLC与各类RS-485通讯设备的数据交互,从而构建稳定可靠的自动化控制系统。