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 兼容串行接口,它定义了连接口的 ...
随机推荐
- C# dotnetcore2.0结合Selenium搜索网页
using System; using OpenQA.Selenium; using OpenQA.Selenium.Chrome; namespace ConsoleApp_Selenium { c ...
- TIFF图片简介
每个TIFF文件都是从指示字节顺序的两个字节开始的.“II”表示小字节在先.“MM”表示大字节在先字节顺序.后面的两个字节表示数字42.数字42是“为了其深刻的哲学意义"而选择的. 42的读 ...
- 基于svg.js实现可编辑的图像
svg.js的git地址https://github.com/svgdotjs/svg.js 实现可以拖动,可双击编辑,可拖动改变长短,线条可旋转以及一个可点击改变大小,可更改内容的二维码. 首先引入 ...
- Linux简单文本处理
tr命令:tr [option] set1 [set2] 删除或者替换set1中的字符在文本表示这个问题中,windows系统下,\r\n为换行:而linux系统下,\n为换行.win->lin ...
- 文件夹管理工具(MVC+zTree+layer)
文件夹管理工具(MVC+zTree+layer)(附源码) 写在前 之前写了一篇关于 文件夹与文件的操作的文章 操作文件方法简单总结(File,Directory,StreamReader,St ...
- 基于python实现的三方组件----Celery
一.基于python实现的三方组件----Celery 1.作用 用于异步周期任务的处理 2.Celery的组成 (1)任务 app (2)记录任务的缓存(通常用redis或rabbitMQ) 任务记 ...
- 在.NET Core 3.0中的WPF中使用IOC图文教程
我们都知道.NET Core 3.0已经发布了第六个预览版,我们也知道.NET Core 3.0现在已经支持创建WPF项目了,刚好今天在写一个代码生成器的客户端的时候用到了WPF,所以就把WPF创建以 ...
- NSCache缓存怎么来的
什么是NSCache NSCache主要用来存储临时数据(键值对),当内存资源不够时,系统会自动释放部分数据.它有三个特点: • NSCache为了保持不占用过多的系统内存,它有多种自动回收内存策略: ...
- 高并发 Nginx+Lua OpenResty系列(1)——环境搭建
OpenResty是一款基于Nginx的高性能负载均衡服务器容器,简单来说是Nginx+Lua.结合了Lua语言来对Nginx进行扩展,使得在Nginx上具有web容器功能. OpenResty运行环 ...
- 面试还不知道BeanFactory和ApplicationContext的区别?
接口 BeanFactory 和 ApplicationContext 都是用来从容器中获取 Spring beans 的,但是,他们二者有很大不同 我看到过很多问 BeanFactory 和 App ...