一、RS-485总线

RS-485总线技术只是规定了接口的电气标准,并没有规定RS-485接口的电缆,插件以及通信协议,只是OSI规范中物理层的一个标准,RS-485总线采用差分平衡传输方式。由于RS-485总线并没有规定通信协议,有很多厂家自己推出基于RS-485总线的通信协议。RS-485总线支持点对多点通信模式,而其没有数据冲突检测解决机制,所以数据冲突的问题都是依靠主机来解决,通过主机对整个系统进行全方位的控制,避免数据冲突的产生,一般而言,由于必须通过主机进行控制以避免数据冲突,所以由于RS485总线组网,在通信协议中是使用一主多从的通信方式。
1、RS-485通信距离:
RS-485最大的通信距离约为1219m,最大传输速率为10Mbps,传输速率与传输距离成反比,在100KbpS的传输速率下,才可以达到最大的通信距离,如果需传输更长的距离,需要加485中继器。
2、RS-485支持结点:
RS-485通讯中一个串口可以控制多少个设备的问题是与该485网络中的电气特性和协议特性所决定的。 所谓电气特性就是指的是要保证485网络中的特征阻抗在允许的范围内,应该是120欧姆左右,连接的设备越多,特征阻抗越小,所以一般在485网络中一般都要加120欧姆的终端电阻。

二、Modbus通信协议

Modbus通信协议是由modicon公司推出的,定义了一种数据传输的规范。协议采用的是主从通信模式(Master/Slave通信模式)。协议的应用主要有三种:Modbus RTU,Modbus ASCII 和Modbus TCP三种,其中Modbus RTU与Modbus ASCII均为支持RS-485总线的通信协议,Modbus TCP是支持以太网的通信协议,在工业现场一般都是采用Modbus RTU协议,一般而言,大家说的基于串口通信的Modbus通信协议都是指Modbus RTU通信协议。
1、Modbus RTU通信协议格式:
RTU协议中的指令由地址码(一个字节),功能码(一个字节),起始地址(两个字节),数据(N个字节),校验码(两个字节)五个部分组成,其中数据又由数据长度(两个字节,表示的是寄存器个数,假定内容为M)和数据正文(M乘以2个字节)组成,而RTU协议是采用3.5个字节的空闲时间作为指令的起始和结束。

由于协议中地址码是一个字节,则理论上modbus最大可支持的结点为1~255个,但协议官网文档中说明最大只支持247个结点。

三、RS-485与Modbus的关系

RS-485总线只是规定了接口的电气标准,并没有规定应用层的通信协议,所以很多公司都是自定义基于RS-485总线的应用层通讯协议。而modbus通信协议则是基于RS-485总线上的标准应用层的协议。

四、参考文档

http://blog.csdn.net/derryzhang/article/details/5004761
http://www.modbustools.com/modbus.html
http://www.cnblogs.com/dengxiaojun/p/4399232.html
https://github.com/aguegu/stm32-modbus //在github上边有基于STM32的源代码,还没有时间去研究。

by 羊羊得亿
2017-11-04 ShenZhen

转载于:https://www.cnblogs.com/yangxuli/p/7782682.html

RS-485总线和Modbus通信协议的关系相关推荐

  1. Step7-Mricro/win S7-200 485轮询 西门子485 modbus RTU 200 ModbusRTU通信S7-200与最大32个从站RS 485主站程序

    Step7-Mricro/win S7-200 485轮询 西门子485 modbus RTU 200 ModbusRTU通信S7-200与最大32个从站RS 485主站程序,程序块自动轮询,无需编写 ...

  2. 编写一个字节数的rtu C语言校验程序,Modbus通信协议中CRC校验的快速C语言算法

    Modbus通信协议中CRC校验的快速C语言算法 2004年第11期 福 建 电 脑 63 Modbus通信协议中CRC校验的快速C语言算法 孟开元 (西安石油大学计算机学院陕西西安710065) [ ...

  3. 详解Modbus通信协议---清晰易懂

    本文旨在让您对Modbus有一个很直观的了解,总结关于Modbus相关的知识,非常适合初学的同学,同时如有错误,欢迎修改意见和建议,将在第一时间修改 什么是协议 什么是RS-485 RS-232 Mo ...

  4. STM32:RS485通信和Modbus通信协议汇总

    RS485通信和Modbus通信协议汇总 1. 主从模式 RS-485上的软件层协议ModBus主要依赖于主从模式.主从模式是指在半双工通讯方式上,2个或者2个以上的设备组成的通讯系统中: (1) 至 ...

  5. 大神带你秒懂Modbus通信协议

    摘要:昨天有小伙伴在群里问关于Modbus通信协议的,大家都比较积极地解答,所以今天果子哥总结一下关于Modbus相关的知识,适合正在入门的小伙伴"食用".同样还是理论+实战的方式 ...

  6. MODBUS 通信协议概述

    Modbus 通信协议 概述 图片以及英文描述摘自: MODBUS APPLICATION PROTOCOL SPECIFICATION V1.1b3 .pdf 侵删 用户数据单元(Applicati ...

  7. 基于485总线的评分系统双机实验报告

    本来还想着做多机的,但老师已经打分了就算了.为了压缩到6页删减了很多内容,将就看吧 基于485总线的评分系统实验报告 实验目标: 通过本案例加深理解RS485通信方式,实现上位机的主控制器与所有的下位 ...

  8. Modbus通信协议+Modbus串口调试工具+Java版协议解析源码

    网络与串口二合一调试助手TCPCOM: https://download.csdn.net/download/liuyuan_java/87454762 Modbus调试工具,模拟串口调试工具 htt ...

  9. Modbus通信协议应用——风速传感器HS-FS01(串口显示)

    风速传感器HS-FS01 485型采用Modbus-Rtu通信协议,本代码部分基于正点原子f1战舰V3. 首先,了解一下什么是Modbus协议. Modbus是一种串行通信协议,是Modicon公司( ...

最新文章

  1. html class 位置,HTML class 属性 | 菜鸟教程
  2. 不重启JVM,替换掉已经加载的类,偷天换日?
  3. python画圣诞树代码-python圣诞树代码
  4. 统一指令集架构的思考
  5. CF924D. Contact ATC
  6. python DB.fetchall()--获取数据库所有记录列表
  7. android如何不卡顿,公认不卡的安卓手机 轻松做到3年不卡顿_TOM科技
  8. Spring事务的隔离级别
  9. 对MBProgressHUD进行二次封装并精简使用
  10. 使用cmake和vs2019进行编译libtorch过程
  11. VB中PictureBox控件使用教程
  12. access统计班级人数_Excel中怎么快速统计成绩表中分数段人数 - 卡饭网
  13. D - Petya and Array(树状数组,二分)
  14. 企业如何实现在线客服功能?
  15. 推荐几个电脑超级实用的电脑软件 方便实用
  16. 医院信息科招聘计算机专业试题,医院信息科招收计算机科学与技术专业的笔试试题...
  17. 应用内更新提示“解析软件包失败”的解决方法
  18. buck降压电路解析
  19. 超强反爬虫方案!Requests 什么的通通爬不了
  20. 百度地图之修改起点和终点的icon

热门文章

  1. python网络编程基础知识_python网络编程基础
  2. python 仪表盘实现_Python实现数据可视化看如何监控你的爬虫状态【推荐】
  3. 由一维数组创建小根堆
  4. 入侵检测技术目的-发现黑客
  5. Unity3D基础16:网格过滤器和渲染器
  6. opencv 霍夫变换检测直线和圆
  7. 杨辉三角形(简明易懂)
  8. ---M文件-函数式M文件/脚本式、m文件基本构成
  9. 银行招聘考试面试心得
  10. zynq创建ramip核