返回主站|会员中心|保存桌面

西门子PLC服务商    

PLC、变频器、电机,触摸屏,低压

联系方式
  • 联系人:黄经理
  • 电话:18124228889
新闻分类
  • 暂无分类
站内搜索
 
首页 > 新闻中心 > 西门子S7-1200官网标准Modbus TCP案列!
新闻中心
西门子S7-1200官网标准Modbus TCP案列!
发布时间:2026-01-18        浏览次数:5        返回列表

西门子 S7-1200 Modbus TCP 官网标准案例包含服务器(MB_SERVER)与客户端(MB_CLIENT)两种角色,以下是基于西门子工业支持中心官方文档的详细实现步骤,涵盖 TIA Portal 配置、程序编写与通讯测试西门子工业支持中心


一、案例核心信息

项目服务器(Server)客户端(Client)
CPU 型号CPU 1215C(6ES7 215-1AG40-0XB0 V4.1)CPU 1212C(6ES7 212-1AE40-0XB0 V4.1)
IP 地址192.168.0.4192.168.0.6
端口号502(默认)0(自动分配)
硬件标识符6464
指令MB_SERVERMB_CLIENT
软件版本STEP 7 Professional V13 SP1 Update 5STEP 7 Professional V13 SP1 Update 5

二、服务器(MB_SERVER)配置步骤

  1. 硬件与网络设置

    1. 打开 TIA Portal,添加 S7-1200 CPU,配置 PN 接口 IP 地址(如 192.168.0.4),记录硬件标识符(默认 64)。

    2. 启用 “PROFINET 接口”,确保网络参数正确。

  2. 创建连接参数 DB 块

    1. 新建 DB 块(如 DB_Conn_Server),添加 “TCON_IP_V4” 类型变量,自动生成连接结构,参数如下:

      参数说明
      Connection Type16#0BTCP 连接
      ActiveEstablishedTRUE主动建立连接
      RemotePort502服务器端口
      RemoteAddr192.168.0.4服务器 IP
      LocalPort0自动分配本地端口
  3. 创建保持寄存器 DB 块

    1. 新建 DB 块(如 DB_HoldReg),添加 “Array [0..9] of Word” 类型变量,用于映射 Modbus 保持寄存器(地址 40001-40010)。

  4. 调用 MB_SERVER 指令

    • CONNECT:P#DB_Conn_Server.DBX0.0(指向 TCON_IP_V4 结构)

    • MB_HOLD_REG:P#DB_HoldReg.DBX0.0(指向保持寄存器区域)

    • MB_SLAVE_ID:1(从站地址,默认 1)

    • EN:TRUE(使能指令)

    1. 在 OB1 中拖拽 MB_SERVER 指令,背景 DB 自动生成(如 DB_MB_Server)。

    2. 连接参数:

  5. 编译下载,CPU 切换至 RUN 模式。


三、客户端(MB_CLIENT)配置步骤

  1. 硬件与网络设置

    1. 同服务器,配置客户端 IP 为 192.168.0.6,硬件标识符 64。

  2. 创建连接参数 DB 块

    1. 新建 DB 块(如 DB_Conn_Client),添加 “TCON_IP_V4” 类型变量,参数如下:

      参数说明
      Connection Type16#0BTCP 连接
      ActiveEstablishedTRUE主动建立连接
      RemotePort502服务器端口
      RemoteAddr192.168.0.4服务器 IP
      LocalPort0自动分配本地端口
  3. 创建数据缓冲区 DB 块

    1. 新建 DB 块(如 DB_DataBuffer),添加 “Array [0..1] of Word” 类型变量,用于存储读写数据。

  4. 调用 MB_CLIENT 指令

    • CONNECT:P#DB_Conn_Client.DBX0.0

    • MB_MODE:0(读保持寄存器,FC03)

    • MB_ADR:0(起始地址 40001)

    • MB_LEN:2(读取 2 个寄存器)

    • MB_DATA:P#DB_DataBuffer.DBX0.0(数据缓冲区指针)

    • MB_SLAVE_ID:1(服务器从站地址)

    • EN:M0.0(触发信号,上升沿有效)

    1. 在 OB1 中拖拽 MB_CLIENT 指令,背景 DB 自动生成(如 DB_MB_Client)。

    2. 连接参数:

  5. 编译下载,CPU 切换至 RUN 模式。


四、通讯测试

  1. 服务器数据写入:在 DB_HoldReg 中手动修改数值,客户端通过 FC03 读取。

  2. 客户端数据写入:通过 MB_CLIENT 的 MB_MODE=1(写保持寄存器,FC10),修改服务器 DB_HoldReg 数据。

  3. 工具测试:使用 Modbus Poll(客户端)或 Modbus Slave(服务器)软件,设置 IP、端口、功能码,验证数据交互。


五、关键注意事项

  1. 连接结构:TCON_IP_V4 必须自动生成,不可手动编辑,否则会导致通信失败。

  2. 保持寄存器映射:MB_HOLD_REG 需指向连续的 Word 数组,地址对应关系为:数组索引 0 对应 40001,索引 1 对应 40002,以此类推。

  3. 功能码支持:MB_SERVER 支持 FC01(读线圈)、FC02(读离散输入)、FC03(读保持寄存器)、FC04(读输入寄存器)、FC05(写单线圈)、FC06(写单寄存器)、FC10(写多个寄存器)、FC15(写多个线圈)。

  4. 错误诊断:通过 MB_SERVER/MB_CLIENT 的 “STATUS” 引脚查看通信状态,常见错误码:

    • 8081:连接未建立

    • 8090:超时

    • 80A0:无效功能码


六、官方资源链接

  1. S7-1200 Modbus TCP Server 官方指南https://www.ad.siemens.com.cn/productportal/prods/s7-1200_plc_easy_plus/11-Comm/01-Ethernet/04-Modbus_TCP/01-Modbus_TCP_V4/02-Server.html西门子工业支持中心

  2. S7-1200 Modbus TCP Client 官方指南https://www.ad.siemens.com.cn/productportal/prods/s7-1200_plc_easy_plus/11-Comm/01-Ethernet/04-Modbus_TCP/01-Modbus_TCP_V4/03-Client.html西门子工业支持中心

  3. TIA Portal Modbus TCP 快速入门https://support.industry.siemens.com/cs/cn/en/view/73600209西门子工业支持中心


七、常见问题排查

  1. 连接失败:检查 IP 地址、端口号、子网掩码是否正确,确保网络可达(ping 测试)。

  2. 数据读写异常:确认保持寄存器 DB 块地址映射正确,功能码与 MB_MODE 匹配。

  3. 指令报错:查看 STATUS 引脚值,参考西门子错误码手册排查。

收缩
  • QQ咨询

  • 电话咨询

  • 18124228889
  • 添加微信客服