1. 项目概述
在工业自动化控制系统中,不同品牌PLC之间的通讯一直是现场工程师面临的常见挑战。最近我在一个设备改造项目中,需要实现三菱FX5U与西门子S7-1200之间的数据交换。这种跨品牌PLC通讯在实际应用中非常普遍,比如当生产线需要整合不同供应商的设备时。
通过实践,我发现采用以太网通讯是最直接可靠的方案。相比传统的RS485通讯,以太网连接配置更简单,通讯速率更高(可达100Mbps),而且不需要额外的通讯模块。下面我将详细介绍整个实施过程,包括硬件连接、参数配置和实际调试中的经验技巧。
2. 硬件准备与连接
2.1 设备选型说明
本次项目使用的硬件设备包括:
- 西门子S7-1214C PLC(6ES7 214-1AG40-0XB0)
- 三菱FX5U-32MT/ES PLC
选择这两个型号是因为它们都内置了以太网接口,无需额外购买通讯模块。西门子1214C自带一个PROFINET接口,而三菱FX5U则配备了一个标准的RJ45以太网口。从成本角度考虑,这种方案比加装通讯模块节省了约2000元。
2.2 网络连接方案
两个PLC之间直接通过网线连接是最简单的方案,具体接线方式如下:
- 使用标准CAT5e或更高规格的直连网线(非交叉线)
- 将网线一端插入FX5U的以太网口
- 另一端接入S7-1200的PROFINET接口
注意:现代网络设备大多支持自动翻转(Auto-MDIX),所以直连线和交叉线通常都能工作。但为保险起见,建议使用直连线。
在实际布线时,我建议:
- 网线长度不要超过90米(标准以太网限制)
- 避免与动力电缆平行走线,防止干扰
- 使用带屏蔽层的网线(STP)在工业环境中更可靠
3. 三菱FX5U参数配置
3.1 基本网络设置
通过GX Works3软件配置FX5U参数:
- 新建工程,选择正确的PLC型号(FX5U)
- 导航至"参数"→"FX5UCPU"→"模块参数"→"以太网端口"
- 将"不使用"改为"使用"(这是很多人容易忽略的第一步)
- IP地址设置为192.168.1.10(示例)
- 子网掩码255.255.255.0

3.2 通讯参数详细配置
进入"以太网端口"的详细设置:
- 通讯协议选择"MC协议"
- 通讯间隔设置为100ms(可根据实际需求调整)
- 间隔越小响应越快,但会增加PLC负荷
- 对于一般数据交换,100-500ms足够
- 设置端口号:默认4999(可自定义)

3.3 数据映射设置
这是关键步骤,决定数据如何交换:
- 在"以太网端口"设置中找到"MC设备配置"
- 添加新设备,选择"西门子S7-1200"
- 设置起始地址为D1000(根据实际需求调整)
- 设置数据长度(如20个字)
- 通讯方式选择"TCP"

4. 西门子S7-1200参数配置
4.1 基本网络设置
使用TIA Portal配置S7-1200:
- 新建项目,添加S7-1214C设备
- 进入"设备视图",选择CPU模块
- 以太网接口属性中:
- IP地址:192.168.1.20(与FX5U同网段)
- 子网掩码:255.255.255.0
- 启用"允许来自远程对象的PUT/GET通信访问"

4.2 DB块配置技巧
数据交换需要通过DB块实现,这里有几个关键点:
- 新建全局DB块(如DB1)
- 取消"优化的块访问"(否则无法通过地址访问)
- 添加需要交换的变量:
- 例如:创建"DataExchange"区域
- 类型可以是Bool、Int、Real等
- 必须重新编译DB块才能生效

警告:如果忘记取消"优化的块访问",通讯将无法建立。这是西门子PLC常见的配置错误。
4.3 数据映射关系
建立与三菱PLC的地址对应关系:
- 三菱D1000对应西门子DB1.DBW0
- D1001对应DB1.DBW2
- 对于布尔量:
- 可以通过字转换(如DB1.DBX0.0对应D1000的第0位)
- 或单独设置通讯区域

5. 调试与问题排查
5.1 通讯测试步骤
按照以下流程验证通讯:
- 先确保物理连接正常:
- 检查网线是否插好
- 确认两个PLC的LINK灯都亮起
- 使用ping命令测试网络连通性
- 在三菱侧ping 192.168.1.20
- 在西门子侧ping 192.168.1.10
- 在GX Works3中监控D寄存器
- 在TIA Portal中监控DB块数据
- 尝试修改一侧数据,观察另一侧是否同步变化
5.2 常见问题解决方案
在实际调试中我遇到过以下问题:
问题1:通讯超时无响应
- 检查IP地址设置是否正确
- 确认防火墙是否关闭
- 验证端口号是否一致
问题2:数据不同步
- 检查地址映射是否正确
- 确认DB块是否重新编译
- 查看通讯间隔是否设置过小
问题3:布尔量传输异常
- 建议使用字传输再转换
- 或检查位序是否正确(三菱和西门子的位序可能不同)
问题4:通讯不稳定
- 尝试更换更高质量的网线
- 增加通讯间隔时间
- 检查PLC负载是否过高
5.3 性能优化建议
根据项目经验,提供几个优化技巧:
-
数据分组传输:
-
合理设置通讯间隔:
- 普通信号:100-500ms
- 关键信号:50-100ms
- 非关键信号:1000ms
-
错误处理:
- 添加通讯超时检测
- 实现自动重连机制
- 记录通讯错误次数
6. 进阶应用扩展
6.1 多PLC组网方案
如果需要连接更多设备,可以考虑:
-
使用交换机扩展:
-
IP地址规划:
- 192.168.1.10~192.168.1.20保留给PLC
- 其他地址给HMI等设备
-
VLAN划分:
6.2 安全防护措施
工业网络也需要安全防护:
-
设置访问密码:
-
网络隔离:
-
定期备份:
6.3 其他通讯协议选择
除了MC协议,还可以考虑:
-
Modbus TCP:
-
OPC UA:
-
PROFINET:
在实际项目中,MC协议已经能满足大多数需求,且配置最简单。我在多个项目中使用这种方案,通讯稳定可靠,最长连续运行时间已超过2年无故障。