Modbus RTU 通信应用案例
如何打开项目归档文件
例程中的TIA博途项目文件与STEP 7项目文件均为归档文件,需要按如下方式打开:
TIA博途项目文件
1. 打开TIA博途软件,通过软件左下方“项目视图”按钮切换至项目视图:

2. 在打开的项目视图中,点击“项目>恢复”

3. 浏览到下载的TIA项目归档文件

4. 打开并恢复,在OB1的块标题有程序的整体说明,每一程序段均有该段的说明

STEP 7项目文件:
1. 打开STEP 7软件,点击“文件>恢复”

2. 浏览到下载的STEP 7项目归档文件

3. 打开并恢复,在OB1的块标题有程序的整体说明,每一程序段均有该段的说明

S7-1200 与S7-1200 Modbus RTU 通信例程
1.使用环境
① S7-1217C V4.2、S7-1215C V4.2、CM1241 RS422/RS485 V2.2
② TIA 博途 STEP 7 V14SP1
2.实现功能
CPU 1217 作为 Modbus RTU 主站, CPU 1215 作为 Modbus RTU 从站,实现 S7-1200 PLC 两个串口通信模块 CM1241 RS422/485 之间的 Modbus RTU 通信,主站轮询读写从站数据。
① CPU 1217 Modbus RTU 主站读取 CPU1215 Modbus RTU 从站保持寄存器 40001 地址开始的两个字长的数据并存储到 DB3.DBW0 和 DB3.DBW2。
② CPU 1217 Modbus RTU 主站将 DB3.DBW20~DB3.DBW26 四个字长的数据写入到 CPU1215 Modbus RTU 从站 40003 开始的保持寄存器。
③ CPU 1217 Modbus RTU 主站将 DB3.DBX40.0~DB3.DBX40.7 八个位的数据写入到 CPU1215 Modbus RTU 从站 Q0.0~Q0.7。
S7-1200 PLC 的 Modbus RTU 有两类指令"MODBUS (RTU) "和"MODBUS",如图1所示。指令区别和适用范围参考以下的各指令编程例程介绍。

图1.S7-1200 PLC 的 Modbus RTU 通信指令
1. MODBUS (RTU) 指令编程例程
“MODBUS (RTU) ”指令集指令适用于S7-1200 中央机架的 CM1241 V2.1 或 CB1241 且 S7-1200 CPU V4.1以上和分布式 IO PROFINET 或 PROFIBUS 的 ET200MP、ET200SP 串口通信模块。
2. MODBUS 指令编程例程
“MODBUS” 指令集指令只适用于 S7-1200 中央机架的 CM1241 或 CB1241。
本例程仅供参考,程序中的CPU版本、类型可能与用户实际使用不同,用户可能需要先对例子程序做修改和调整,才能将其用于测试。本例程的作者和拥有者对于该例程的功能性和兼容性不负任何责任,使用该例程的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。
Modbus RTU 通信应用案例的更多相关文章
- Modbus RTU 通信工具设计(转)
Modbus RTU 通信工具设计 Modbus 是一个工业上常用的通讯协议.一种通讯约定. ModBus 协议是应用层报文传输协议(OSI 模型第7层),它定义了一个与通信层无关的协议数据单元(PD ...
- FreeModbus 移植于STM32 实现Modbus RTU通信
http://ntn314.blog.163.com/blog/static/161743584201233084434579/ 毕业设计自己要做个基于STM32的PLC能直接跑语句表的,现在看来好像 ...
- Modbus RTU新版本指令介绍
Modbus RTU新版本指令介绍 TIA V13 SP1版本软件中提供了2个版本的Modbus RTU指令: 图1. 两个版本Modbus RTU指令 早期版本的Modbus RTU指令(图1. 中 ...
- Modbus RTU 介绍
S7-1200 Modbus RTU 通信概述 Modbus具有两种串行传输模式:分别为ASCII和RTU.Modbus是一种单主站的主从通信模式,Modbus网络上只能有一个主站存在,主站在Modb ...
- C# NModbus RTU通信实现
Modbus协议时应用于电子控制器上的一种通用语言.通过此协议,控制器相互之间.控制器经由网络/串口和其它设备之间可以进行通信.它已经成为了一种工业标准.有了这个通信协议,不同的厂商生成的控制设备就可 ...
- C# 开发Modbus Rtu客户端 modbus测试Demo,Modbus 串口通信 , 虚拟MODBUS-RTU测试
前言 本文将使用一个NuGet公开的组件技术来实现一个ModBus RTU的客户端,方便的对Modbus rtu的服务器进行读写,这个服务器可以是电脑端C#设计的,也可以是PLC实现的,也可以是其他任 ...
- 0-20ma 0-5V,0-10V ,0-15V ,0-20V,0-30V模拟量(范围可以定制)多功能采集模块,支持1路继电器输出,2路Di输入,8路Ai输入,可电脑控制,支持485 modbus rtu协议。端口参数可以配置保存,支持定制修改。
多功能模拟量采集模块MRD-5017具有8 通道模拟量采集(支持0-20mA,0-5V,0-10V混合测量),2路DI,1路继电器输出,1路485接口(支持MODBUS RTU),能实现8路AI(12 ...
- ModBus通信协议的【Modbus RTU 协议使用汇总】
1.RTU模式 当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符.这种方式的主要优点是:在同样的波特率下,可比ASCII方式传 ...
- Modbus RTU 协议使用汇总
原创地址:https://blog.csdn.net/u012166958/article/details/64920144 标准的Modbus 口是使用RS-232C 兼容串行接口,它定义了连接口的 ...
随机推荐
- Genymotion常见问题解决方案
最近更新了Genymotion之后, 出了一大堆问题, 花了差不多两天的时间, 把一系列问题基本遇到遍了, 终于修成正果, 分享出来希望可以让大家少走一点弯路. 无法启动Genymotion;关键字: ...
- 『开发技巧』Python音频操作工具PyAudio上手教程
『开发技巧』Python音频操作工具PyAudio上手教程 0.引子 当需要使用Python处理音频数据时,使用python读取与播放声音必不可少,下面介绍一个好用的处理音频PyAudio工具包. ...
- LIBCMTD.lib(exe_winmain.obj) : error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 "int __cdecl invoke_main(void)" (?invoke_main@@YAHXZ) 中被引用
这个问题是没找到程序入口 在网上查这个问题,一般都是说两条: (若是win32程序) 一是在项目属性\CC++\预处理器\预处理器定义\里添加 _WINDOWS 一是在项目属性\链接\系统 里选择 窗 ...
- Substring详解
class Program { static void Main(string[] args) { string str = "Hello World!"; ; //Substri ...
- Resolve conflict using "MERGE_HEAD (origin/HEAD)"
Git进行同步的时候,经常会出现冲突,有时候冲突的选项会有图示中的三种选项: 1.Resolved:直接把文件标识为冲突已经解决,一般是自己手动查看并解决完冲突以后使用. 2.Resolve conf ...
- WPF TextBlock 文字超长截断并显示省略符号
<TextBlock x:Name=" FontSize="9pt" Margin="0 2 0 0 " VerticalAlignment=& ...
- UWP中弹出框屏幕适配问题
上次在UWP中的消息提示框(二)中谈到弹出框在虚拟导航栏的手机上被遮挡问题,今天接就着扯. 上次给用户控件指定的宽高都是Window.Current.Bounds的宽高,而这个获取到的是包含应用程序窗 ...
- 利用docker在window7下安装TensorFlow
安装过程下碰了不少坑,记录一下安装过程,方便以后有需要时复用. 1.安装docker 下载最新版本的docker并且默认安装即可,安装后打开Docker Quickstart Terminal,初次进 ...
- HTTPS上线过程说明(阿里云提供免费证书)
一.上马HTTPS的原因: ①.苹果App Store强制其平台上的app均要使用HTTPS ②.网站经常被劫持,用户和领导希望使用HTTPS ③.跟随HTTPS的大趋势 二.应用上马HTTPS之部门 ...
- InfoPath分别定义New/Edit 表单
InforPath自定义表单时,默认是New/Edit是相同的,有时不能满足特殊情况,例如,某些字段在新建时不需填,编辑才改.或者编辑时不能编辑特定字段.这时最方便的方法是分别定义表单,按不同情况使用 ...
