S7- 400H可以用作 Modbus (RTU)主站或 Modbus (RTU)从站。
使用S7-400 H 通过 MODBUS RTU 协议与第三方设备建立通信连接,需要如下的软硬件组件:
串行通信模块
ET 200M 的 CP341 模块 (推荐)
用于 S7-400 的 CP441-2 模块
相应的MODBUS主站或从站可装载驱动(硬件狗、硬件驱动程序与软件库)
硬件和软件 组件 | 说明 |
CP341 | 可装载的 Modbus (RTU) 主站和 Modbus (RTU) 从站驱动可以用在 CP341 上使用,CP341 订货号如下: · 6ES7341-1AH02-0AE0 · 6ES7341-1BH02-0AE0 · 6ES7341-1CH02-0AE0 |
CP441-2 | 可装载的 Modbus (RTU) 主站和 Modbus(RTU) 从站驱动可以在 CP441-2 上使用,CP441-2 订货号:6ES7441-2AA05-0AE0 · 6ES7963-1AA10-0AA0 带有 RS232 接口 · 6ES7963-2AA10-0AA0 带有 TTY 接口 · 6ES7963-3AA10-0AA0 带有 RS422/RS485 接口 |
可装载 Modbus(RTU) 主站驱动 | 可装载 Modbus (RTU) 主站驱动授权可通过如下的订货号采购: · 6ES7870-1AA01-0YA0:此授权包包括软件、文档以及硬件狗 · 6ES7870-1AA01-0YA1:此授权包只包括硬件狗 |
可装载 Modbus(RTU) 从站驱动 | 可装载 Modbus (RTU) 从站驱动授权可通过如下的订货号采购: · 6ES7870-1AB01-0YA0:此授权包包括软件、文档以及硬件狗 · 6ES7870-1AB01-0YA1:此授权包只包括硬件狗 |
Modbus RTU编程步骤
Modbus RTU驱动下载
为了能够使用 CP PtP Modbus RTU 软件,需要满足下列要求:
· 已安装的 STEP 7 Basic V5.3 版本或更高版本。
· 已安装的选件包 Point-to-Point Connection Parameter Assignment ( CP PtP Param ) V5.1 或更高版本。
PTP协议软件包:SIMATIC S7-CP PtP Param
可装载的驱动程序“Modbus Master (RTU)”
可装载驱动程序 Modbus Slave (RTU)
如何给在S7-400H系统中的CP341装载MODBUS驱动程序
S7-400H中加载CP341 MODBUS驱动程序,请遵守如下步骤:
1 | 切断从站 CPU 的电源。接口模块(IM)随后切换到主 CPU 上。 |
2 | 切换主 CPU 的运行状态到“STOP”。 |
3 | 通过主 CPU 的 MPI 接口,直接从 PG 装载驱动程序到 CP341 模块的 EPROM 中。如果没有 PG,模块替代是不可能的。 |
详细操作参考:
如何加载驱动程序到CP341模块中,例如“Modbus Master(RTU)”。使它通过一个 ET 200M 模块连接一套 S7-400 H 系列的 PLC?
PCS 7系统中如何实现Modbus RTU通讯
PCS 7系统推荐使用CP341用于MODBUS 通讯,放置于ET200M机架,实现冗余。
CP341作为 MODBUS从站时,需调用 CP341 库中的P_SND_RK、P_RCV_RK 功能块或 PCS7 库 SND_341、RCV_341 功能块。
CP341作为MODBUS主站时,需要调用FB80功能块。
具体组态方法,请参见文档:
CP340/CP341/CP440/CP441通讯及编程
RS485/R422通讯传输的Zui大距离
串行通讯模板 CP341 有 RS232C 或 TTY 或 RS485/422 三种电气接口类型。一般来讲,RS232 的通讯Zui大距离为 15m,20mA TTY 的通讯Zui大距离为 100m(主动模式)、1000m(被动模式),RS422/485 的通讯Zui大距离位 1200m。每种接口方式下的具体接线方法可参考 CP341 手册。
以下示例为 RS485 接口定义:
在使用RS422/485接口时,如果电缆长度超过50m,则必须在接收方焊接一个约330欧姆的终端电阻,以保证正常的数据传输。
CP341-RS485作MODBUS主站时,可以连接多少个从站设备?
当CP341-RS485作MODBUS主站时,可以直接创建一个多点连接的网络,在一个RS485网络中Zui多可以连接32个从站设备。CP341的MODBUS驱动程序将会使接收的二 线制线路在发送和接收之间切换。
CP341/CP441-2作MODBUS通信时的功能码与地址对应关系
功能码 | 功能 | CPU地址 | Modbus地址 | 长度范围 |
01 | 读取线圈状态 | M、Q、T、C | 00001-09999 | 1~2024bits |
02 | 读取输入状态 | M、I | 10001-19999 | 1~2024bits |
03 | 读取保持寄存器 | DB | 40001-49999 | 1~127words |
04 | 读取输入寄存器 | DB | 30001-39999 | 1~127words |
05 | 写单个线圈 | M、Q | 00001-09999 | 1bit |
06 | 预设单个寄存器 | DB | 40001-49999 | 1word |
15 | 写多个线圈 | M、Q | 00001-09999 | 1~2024bits |
16 | 预设多个保持 寄存器 | DB | 40001-49999 | 1~127words |
实现多个站轮询通信
在实际的应用中,可以将多个节点连接到一个RS422/485网络中,这时就需要通过程序控制的方式实现站点间的数据交换,这里称之为站点间的轮询通信。多站点轮询通信主要以站地址标识(站地址)为基础,系统主站发送带有站地址标识的数据来寻址不同的从站,同时不同的从站通过响应带有站地址标识的数据给主站,以完成整个通信过程。这就要求整个RS422/485网络中站点的地址不能相同,且必须唯一。
对于轮询通信,可以根据不同的网络规模、不同的通信对象及通信需求等,采用有针对性的轮询方法,在程序的实现上也不尽相同,这里仅给出两种主要的编程思路,供应用时参考。
· 思路一:以固定的时间间隔进行轮询,即以固定的时间发送指令给不同的从站并处理每个从站的响应。例如每1秒钟轮询一个从站,需要更改的只是发送的数据,在大多数情况下只需修改数据中的从站地址。对于接收到数据的处理,可以根据具体的用户要求进行。
· 思路二:根据发送和接收完成的标志来完成,即发送完成后启动接收,接收完成后再启动下一次发送。同样需要更改的只是发送的数据,在大多数情况下只需修改数据中的从站地址。对于接收到数据的处理,可以根据具体的用户要求进行。
CP341 Modbus RTU多站点轮询
CP340/CP341通信功能块使用时需要注意哪些
通信功能块用于建立CPU由于CP之间数据交换,使用时需要注意以下几个方面:
· 对同一个CP340/CP341模块在程序中不能多次调用发送或接收功能块;
· 发送块由沿触发使能,接收块由高电平使能;
· 发送数据长度由参数LEN决定,接收数据长度由发送方决定,可以通过LEN读出;
· 发送块故障状态取决于DONE、ERROR、STATUS,只在一个扫描周期内有效;
· 接收块故障状态取决于NDR、ERROR、STATUS,只在一个扫描周期内有效;
CP341/CP441-2的加载驱动程序存储在哪里?
当使用 CP 341 时,将可加载驱动程序直接装载到 CP 341中,应注意,在没有编程设备的情况下将不能更换模块。使用 CP 441-2 时,将可加载驱动程序装载到 CPU 的装载存储器中,并在 CPU 启动时传送到 CP 的存储器中,因此,CPU 必须有足够的装载存储器空间。
怎么构建一个RS422/485的多点网络
多点网络接线图如下:
- S7-400H的OPC通信 2024-10-03
- 精智屏和S7-400H通信 2024-10-03
- SIEMENS精智(Comfort)报警指示器的作用 2024-10-03
- 精智面板(Comfort Panels)支持系统诊断功能 2024-10-03
- 精智(Comfort)屏能保存多长时间历史数据 2024-10-03
- SIEMENS精智(Comfort)报警组态不能选布尔量 2024-10-03
- PROFINET 2024-10-03
- TS Adapter IE Basic 简要介绍 2024-10-03
- CANopen 通信 2024-10-03
- RF120C 与 RFID 通信 2024-10-03
- AS-i 通信协议 2024-10-03
- IO-Link 概述 2024-10-03
- Web 服务器 2024-10-03
- OPC通信简介 2024-10-03
- S7-1200 PROFIBUS DP 通信 2024-10-03