威纶通触摸屏与西门子S7-200PLC建立Modbus通讯

freefree技术Resources

这篇内容可直接阅读,适合用于基础学习和Search引流。

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯缩略图
🌐 This page is not yet available in English. Showing the Chinese version. Back to Chinese page.

在使用西门子 S7-200 时, 在不增加其它通讯接口模块时, 威纶通触摸屏可以通讯 PPI 协议与 S7-200 直 接通讯。但这种通讯方式由于受通讯协议本身限制, 在通讯data较多时, 通讯速度相对较慢, 使用 Modbus 协议则通讯速度可以提高约一倍。 下面就介绍一下怎么使用 Modbus protocol建立 S7-200 与威纶通触摸屏之 间的通讯:

硬件connect

在使用 Modbus 协议时,计算机与 S7-200 之间通讯直接使用 PPI 通讯电缆即可。

选配一触摸屏通讯端口

我们这里以 MT6070IH2 和 s7-200 进行通讯

S7-200 的通讯端口是一个 9 孔(famel) D 型插头,针脚分布如下所示:

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯插图

S7-200 通讯端口(端口 0)与威纶通触摸屏的通讯connect,如下图所示:

S7-200 编程及设置

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯插图1

在缺省情况下 S7-200 的通讯端口是不支持 Modbus protocol的,要想实现 Modbus 通讯必需在 PLC 的主程 序模块中调用 Modbus 通讯子程序。 Modbus 通讯子程序可以从“STEP 7-Micro/WIN Add-On: Instruction Library (STEP 7-Micro/WIN 附件:指令库)”中获得。在安装了“STEP 7-Micro/WIN 附件:指令库”后,在 导航树“指令/库”下面我们可以找到“Modbus Protocol”。在其下面包含了 MBUS_INIT 和MBUS_SLAVE

两个子程序, MBUS_INIT 用于对 Modbus 通讯进行初始化, MBUS_SLAVE 用于在指定端口上提供 Modbus 从站通讯服务。下在介绍如何在主程序中调Related子程序及环境参数设置:

调用 Modbus 通讯初始化命令

首先为 MBUS_INIT 命令建立一个触发条件(只触发一次),如: SM0.1;从导航树“指令/库/ Modbus    Protocol”下面, 将 MBUS_INIT 指令拖拽到主程序块中。再就是正确设置 MBUS_INIT 各项调用参数和执 行结果输出address,我们可以建立一下如下图所示初始化调用过程:

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯插图2

Mode:协议Type, 1-Modbus protocol; 0-PPI 协议。

Addr: PLC address, 1~247 ,。

Baud: 通讯Baud rate, 1200 、2400 、4800 、9600 、19200 、38400 、57600 或 11520。

Parity: 校验方式, 0-无校验; 1-奇数校验; 2-偶数校验。

Delay:信息End超时time, 0~32767,有线connect设置为 0 即可。

MaxIQ:0~128,映射在离散输入register或离散输出register中的 I 或 Q 数。建议为: 128。

MaxAI:0~32;映射在模拟输入register中 AIW 数;CPU 221 为 0,CPU 222 为 16,CPU 224、226 和 226XM 为 32。

MaxHold:V 内存映射在保持register中的register数。

HoldStart:V 内存的映射时的starting address。

Done:初始化指Complete时,输出为开状态;switch量(Bit)。

Error:初始化Error代码,请参阅 Modbus 从机协议执行Error代码;输出为byte。                      调用 Modbus 从机通讯命令                                                                   初始化Complete后, 就可以调用 Modbus 从机通讯命令(MBUS_SLAVE)了。通常 Modbus 从机通讯命令在 主程序块的每个执行周期都要初执行(始终保持通讯状态) ,因为可以用一个常开量作为命令的触发条件,

如: SM0.0。从导航树“指令/库/ Modbus Protocol”下面,将 MBUS_SLAVE 指令拖拽到主程序块中。调 用过程如下图所示:

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯插图3

Done:  当 MBUS_SLAVE 指令Response对 Modbus Request时, “Done”为开状态。 没通讯Request时”Done”为关状态。

Error:指令执行结果。只有”Done”为开状态时,此状态effective。请参阅 Modbus 从机协议执行Error代码; 输 出为byte。

触摸屏 EB8000 软件的system设置

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯插图4

system参数设置中选择 MODBUS RTU

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯插图5

通讯参数的设置

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯插图6

设置的一个位状态switch

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯插图7

MODBUS RTU 和 s7-200 的address对应关系

威纶通触摸屏与西门子S7-200PLC建立Modbus通讯插图8

注:  STEP 7-Micro/WIN 附件:指令库哪里有Download:sp5 以上版本自带指令库。不过如果是第一次安装 STEP 7-Micro/WIN,指令库并不会出现。

可以去Download Toolbox_V32-STEP 7-Micro WIN 32 Instruction Library  。安装这个小软件,在 STEP 7-Micro/WIN 的指令树就有了指令库

技术术语(共 5 个)—— 点击展开
Modbus RTU基于串行链路的Modbus协议,使用binaryCoding和CRC check
registerModbus register存储data单元,分线圈/离散输入/保持/输入register四类
PLC可编程逻辑控制器,Automation控制的核心设备
Baud rate串行通信每秒传输符号数,Modbus RTU常用9600/19200
保持registerModbus 16位可读写data,address从40001开始
来源/Tools信息 —— 点击展开
来源 Modbus Chinese Network(modbus.cn) —— China leadingModbus通信协议技术社区 Category 工业物联网 / debug软件与ToolsTutorial 字数 2508 字 · 阅读约 7 分钟 更新 2026-07-01 永久链接 https://www.modbus.cn/11455.html
Recommended Tool: Modbus Debug Assistant WeChat Mini Program
Modbus Chinese Network官方推出的Modbus DebuggingTools,支持 Modbus RTU/TCP 实时通信debug、register读写、线圈控制、data监控和message分析。 无需安装,微信Search「Modbus DebuggingAssistant」即可使用。 电脑端入口:https://www.modbus.cn/modbustool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 modbus.cn
把这篇Resources用于真实项目?

进入Tools中心进行messageParse、CRC verification和设备debug,或Submit requirements获取选型与接入建议。

工程师member

把这篇文章变成可执行的debugResources

开通后可使用高级messageParse、Resources包Download、Code Example、工程案例和优先Technical Support,适合真实项目交付。

高级Tools不限次
Resources包与代码包
Complete Engineering Case Library
优先Technical Support入口

发表回复

您的邮箱address不会被公开。 必填项已用 * 标注