1. S7-1200 Modbus RTU主站通信基础架构
1.1 硬件选型与拓扑设计
西门子S7-1200 PLC实现Modbus RTU主站功能时,核心硬件包括CPU模块和通信模块两部分。根据实际项目需求,通信模块可选用以下三种型号:
-
CM1241 RS232:6ES7241-1AH32-0XB0(新版),最大支持1个从站设备,适用于简单的一对一通信场景。其接线方式采用标准的DB9接口,引脚定义符合EIA/TIA-232规范。
-
CM1241 RS485:6ES7241-1CH32-0XB0(新版),支持多达32个从站设备组网。采用RS485接口时需注意:
- 终端电阻配置:在总线两端需接入120Ω终端电阻
- 极性要求:A+(D+)与B-(D-)必须严格对应
- 布线规范:建议使用双绞屏蔽线,屏蔽层单端接地
-
CB1241通信板:6ES7241-1CH30-1XB0,直接插装在CPU本体上,节省安装空间。需注意固件版本要求:
- CPU固件≥V2.0
- TIA Portal软件≥V11
关键提示:当通信距离超过50米时,RS485的传输质量会显著下降,此时应考虑增加RS485中继器或采用光纤转换方案。
1.2 软件环境配置要点
在TIA Portal中的配置流程包含以下关键步骤:
-
硬件组态:
- 在设备视图中添加CM1241模块
- 设置接口参数(波特率默认9600,可调范围1200-115200)
- 勾选"启用Modbus RTU协议"选项
-
指令集版本选择:
- V1版指令(MODBUS):仅支持本地机架通信
- V2版指令(MODBUS(RTU)):新增功能包括:
- 支持分布式IO(ET200SP/MP)
- 扩展从站地址范围(UInt类型)
- 增加REQ/DONE状态管脚
-
通信参数初始化:
pascal复制// MB_COMM_LOAD典型调用示例
"MB_COMM_LOAD_DB"(
REQ := M0.0, // 上升沿触发
PORT := 1, // 模块硬件标识符
BAUD := 19200, // 波
