Modbus TCP 单站例程

1.Modbus TCP 客户端例程

为了更好地理解 Modbus TCP 客户端的编程,可参考下面的例程。

注意:

1. 该例程使用 STEP 7-Micro/WIN SMART V2.4 编写,使用硬件是SR60:6ES7288-1SR60-0AA0 固件:V2.4 版本,IP地址:192.168.0.60
2. 该例程仅访问一个服务器,读取服务器寄存器类型地址,40001-40006共6个字,读取数据存储在本地的VB20-VB31区域中。

Modbus TCP 客户端指令库应用例程

以上例程的详细描述可以参考:S7-200 SMART Modbus TCP 客户端

2.Modbus TCP 服务器例程

为了更好地理解 Modbus TCP 服务器的编程,可参考下面的例程。

注意:

1. 该例程使用 STEP 7-Micro/WIN SMART V2.4 编写,使用硬件是ST20:6ES7288-1ST20-0AA0 固件:V2.4 版本,IP地址:192.168.0.20
2. 该例程 Modbus TCP 服务器,响应客户端请求,将数据存储在VB0-VB11的区域中,等待客户端读取。

Modbus TCP 服务器指令库应用例程

以上例程的详细描述可以参考:S7-200 SMART Modbus TCP 服务器

Modbus TCP 多请求处理

为了更好地理解 Modbus TCP 服务器的编程,可参考下面的例程。

以下例程的详细描述可以参考:S7-200 SMART 多请求处理

1.S7-200 SMART作为服务器由多个客户端访问


H注意:

  1. 对应的库存储器地址需要使用建议地址不能重复使用。
  2. S7-200 SMART的开放式以太网通讯资源是8个主动资源8个被动资源。
  3. 端口号必须在 1 到 49151 的范围内。建议端口号在 2000 到 5000。
  4. 该例程使用 STEP 7-Micro/WIN SMART V2.4 编写,使用硬件是ST60:6ES7288-1ST60-0AA0 固件:V2.4 版本
  5. 该例程 Modbus TCP 服务器,响应2个客户端请求,访问不同的V存储区

Modbus TCP多服务器例程

2.S7-200 SMART作为客户端轮询

本例程中使用done位做轮询,相比于用定时器做轮询,不会因为定时触发时间设置的过小导致两个指令冲突,或者定时触发时间设置过大增加通信时间的问题。

注意:

1. 该例程使用 STEP 7-Micro/WIN SMART V2.4 编写,使用硬件是ST60:6ES7288-1ST60-0AA0 固件:V2.4 版本,IP地址:192.168.0.121
2. 该例程仅访问一个服务器,两个MBUS_CLIENT指令轮询执行写和读,写入和读取服务器寄存器类型地址:40001-40002共2个字,将需要写入服务器的数据放在VB700-VB703区域中,从服务器中读取的数据存储在本地的VB704-VB707区域中。

Modbus TCP 客户端轮询例程

为配合上方的客户端轮询程序,服务器的程序可参考下面的例程。

注意:

1. 该例程使用 STEP 7-Micro/WIN SMART V2.4 编写,使用硬件是SR60:6ES7288-1SR60-0AA0 固件:V2.4 版本,IP地址:192.168.0.113
2. 该例程 Modbus TCP 服务器,响应客户端请求,将数据存储在VB0-VB3的区域中,等待客户端写入和读取。

Modbus TCP 服务器例程

免责声明

本例程仅供参考,程序中的CPU版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。