1. 三菱FX5U RS485 ASCII通信实战指南
最近在工业自动化项目中遇到了三菱FX5U PLC与多台设备通过RS485通信的需求。本以为是个简单的配置过程,结果在实际调试中遇到了各种意想不到的问题。经过三天的不懈努力,终于成功实现了稳定的ASCII通信。本文将详细记录整个配置过程、遇到的问题及解决方案,希望能帮助遇到类似需求的工程师少走弯路。
1.1 硬件准备与接线要点
FX5U PLC本体并不自带RS485接口,必须额外安装FX5-485ADP通信模块。这个模块的接线方式与常见的RS485设备有所不同,需要特别注意:
-
模块端子说明:
- SDA:发送数据A线
- SDB:发送数据B线
- RDA:接收数据A线(实际不使用)
- RDB:接收数据B线(实际不使用)
- SG:信号地
-
正确接线方法:
- SDA接外部设备的A线(或D+)
- SDB接外部设备的B线(或D-)
- SG接外部设备的GND
注意:我第一次调试时就栽在了接线问题上。按照常规思维将RDA/RDB接设备,结果完全无法通信。后来查阅手册才发现FX5-485ADP模块的发送和接收端子是分开设计的,实际只需要使用发送端子。
- 终端电阻配置:
- 通信线路两端需要加装120Ω终端电阻
- FX5-485ADP模块自带终端电阻开关(位于模块侧面)
- 只有当模块位于总线末端时才需要启用
1.2 通信参数配置详解
在GX Works3中配置RS485通信参数时,需要使用结构化文本编写配置程序。以下是完整的配置示例:
st复制// RS485通信配置结构体
RS485Config := _RS485_CONFIG(
CHANNEL := 1, // 使用通道1
BAUDRATE := 9600, // 波特率
DATABIT := 7, // 数据位(ASCII模式必须设为7)
PARITY := 'EVEN', // 校验位(EVEN-偶校验/ODD-奇校验)
STOPBIT := 1, // 停
