rs485通信协议

发布者:seanxnie最新更新时间:2015-12-22 来源: eefocus关键字:rs485  通信协议 手机看文章 扫描二维码
随时随地手机看文章
RS485主从式多机通讯协议

一、数据传输协议

此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。

此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。如果需要回应,控制器将生成反馈信息按本协议发出。

1、数据在网络上转输

控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询)。其它设备(从设备)根据主设备查询提供的数据作出相应反应。

主设备可单独和从设备通信,也能以广播方式和所有从设备通信。如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则从设备不作任何回应。协议建立了主设备查询的格式:设备(或广播)地址、功能代码、所有要发送的数据、一错误检测域。

从设备回应消息也由协议构成,包括确认要行动的域、任何要返回的数据、和一错误检测域。如果在消息接收过程中发生一错误(无相应的功能码),或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出去。

2、在对等类型网络上转输

在对等网络上,控制器使用对等技术通信,故任何控制都能初始和其它控制器的通信。这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。

在消息位,本协议仍提供了主—从原则,尽管网络通信方法是“对等”。如果一控制器发送一消息,它只是作为主设备,并期望从设备得到回应。同样,当控制器接收到一消息,它将建立一从设备回应格式并返回给发送的控制器。

3、查询—回应周期

 

(1)查询

查询消息中的功能代码告之被选中的从设备要执行何种功能。数据段包含了从设备要执行功能的任何附加信息。错误检测域为从设备提供了一种验证消息内容是否正确的方法。

(2)回应

如果从设备产生一正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应。数据段包括了从设备收集的数据。如果有错误发生,功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码。错误检测域允许主设备确认消息内容是否可用。

二、传输方式

控制器能设置传输模式为RS485串行传输,通信参数为9600,n,8,1。在配置每个控制器的时候,在一个网络上的所有设备都必须选择相同的串口参数。

地址 功能代码 数据数量 数据1 ……. 数据n CRC字节

每个字节的位

· 1个起始位

· 8个数据位,最小的有效位先发送

· 1个停止位

错误检测域

· CRC(循环冗余码校验)

三、消息帧

1.帧格式

传输设备将消息转为有起点和终点的帧,这就允许接收的设备在消息起始处开始工作,读地址分配信息,判断哪一个设备被选中(广播方式则传给所有设备),判知何时信息已完成。错误消息也能侦测到并能返回结果。

消息发送至少要以10ms 时间的停顿间隔开始。传输的第一个域是设备地址。网络设备不断侦测网络总线,包括停顿间隔时间内。当第一个域(地址域)接收到,每个设备都进行解码以判断是否发往自己的。在最后一个传输字符之后,一个至少10ms 时间的停顿标定了消息的结束。一个新的消息可在此停顿后开始。

整个消息帧必须作为一连续的流转输。如果在帧完成之前有超过5ms时间的停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。同样地,如果一个新消息在小于5ms的时间内接着前个消息开始,接收的设备将认为它是前一消息的延续。这将导致一个错误,因为在最后的CRC域的值不可能是正确的。一典型的消息帧如下所示:

起始间隔 设备地址 功能代码 数据数量及数据 CRC校验 结束

2、地址域

消息帧的地址域包含一个字符8Bit。可能的从设备地址是0…247 (十进制)。单个设备的地址范围是1…247。主设备通过将要联络的从设备的地址放入消息中的地址域来选通从设备。当从设备发送回应消息时,也把自己的地址放入回应的地址域中,以便主设备知道是哪一个设备作出回应。

地址0是用作广播地址,以使所有的从设备都能认识。

3、如何处理功能域

消息帧中的功能代码域包含了一个字符8Bits。可能的代码范围是十进制的1…255。当然,有些代码是适用于所有控制器,有此是应用于某种控制器,还有些保留以备后用。

当消息从主设备发往从设备时,功能代码域将告之从设备需要执行哪些行为。例如去读取当前检测参量的值或开关状态,读从设备的诊断状态,允许调入、记录、校验在从设备中的程序等。

当从设备回应时,它使用功能代码域来指示是正常回应(无误)还是有某种错误发生(称作异议回应)。对正常回应,从设备仅回应相应的功能代码。对异议回应,从设备返回一等同于正常代码的代码,但功能代码的最高位为逻辑1。

例如:一从主设备发往从设备的消息要求读一组保持寄存器,将产生如下功能代码:

0 0 0 0 0 0 1 1 (十六进制03H)

对正常回应,从设备仅回应同样的功能代码。对异议回应,它返回:

1 0 0 0 0 0 1 1 (十六进制83H)

除功能代码因异议错误作了修改外,从设备将一独特的代码放到回应消息的数据域中,这能告诉主设备发生了什么错误。

主设备应对程序得到异议的回应后,典型的处理过程是重发消息,或者诊断发给从设备的消息并报告给操作员。

4、数据域

从主设备发给从设备消息的数据域包含附加的信息:从设备用于进行执行由功能代码所定义的行为所必须的数据。

如果没有错误发生,从设备返回的数据域包含请求的数据。如果有错误发生,此域包含一异议代码,主设备应用程序可以用来判断采取下一步行动。

在某种消息中数据域可以是0长度。例如,主设备要求从设备回应通信事件记录,从设备回应不需任何附加的信息。

数据域最长为70字节。

5、错误检测域

错误检测域包含一字节8Bits。错误检测域的内容是通过对消息内容进行循环冗长检测方法得出的。CRC域附加在消息的最后,故CRC字节是发送消息的最后一个字节。

四、错误检测方法

1、超时检测

用户要给主设备配置一预先定义的超时时间间隔,这个时间间隔要足够长,以使任何从设备都能作为正常反应。如果从设备检测到一传输错误,消息将不会接收,也不会向主设备作出回应。这样超时事件将触发主设备来处理错误。发往不存在的从设备的地址也会产生超时。

2、CRC检测

CRC域是一个字节,检测了整个消息的内容。它由传输设备计算后加入到消息中。接收设备重新计算收到消息的CRC,并与接收到的CRC域中的值比较,如果两值不同,则有误,从设备对本消息不作回应。

通讯网络只设有一个主机,所有通信都由他发起。网络可支持254个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。

关键字:rs485  通信协议 引用地址:rs485通信协议

上一篇:rs232、rs422和rs485通讯接口的区别
下一篇:RS485通讯三相功率表

推荐阅读最新更新时间:2024-05-03 00:07

基于RS485总线的自动化检测系统的研制
  1 引 言   近年,我国安防市场发展迅猛,以每年20%~30%的速度增长。安防型GPS定位装置是定位安防高端智能化创新技术与应用的产品,是GPS定位系统、 GPRS通讯系统、防盗报警系统结合为一体的定位装置。他能提供目标的具体位置信息对目标实时跟踪,能进行无线数据传输、防盗报警、信息查询、数据调度等。   安防型GPS定位装置的结构框图如图1所示。      由于安防型GPS定位装置的运行环境比较恶劣,而且该产品直接影响车辆的运行状况和安全,因此对该产品的可靠性要求极高。   为了保证产品较高的可靠性,除了对产品设计要求高以外,还需要对生产进行严格的监管和测试。然而手工检测的效率无法满足批量生产的要求,因
[嵌入式]
RS485多机通信程序
单片机:AVR ATMEGA8 通信:RS485 芯片:MAX485/MAX487 要求:一个主机从机三个以上。(本例使用3个从机) 工作原理: 三个从机: 采集电压(1-5V),并把数据发给主机 模数采样引脚PC0/ADC0 MAX487的RE和DE连在一起,并接到PD3 主机: MAX487的RE和DE连在一起,并接到PD3 PC0-PC3接1602液晶的D4-D7 (只用4条数据线) PD7接LCD E PC4接LCD RW PC5接LCD RS 工作过程: 从机等间隔进行进行AD采样 1. 主机发送地址(adr):01 寻找01从机 ,01号从机收到后,把AD采回来的数据发给主机,主机把数 据显示在LCD上。 2. 从机改
[单片机]
宝莱车的CAN总线特点分析
    CAN总线是一种串行数据通信协议,由于在数据通讯上具有突出的可靠性、实时性和灵活性,并可以非常有效地构成分布式控制/实时检测系统而得到了广泛应用。     随着人们对汽车动力性、操纵稳定性、安全性和舒适性的不断追求,现代汽车上安装了很多电子控制设备、电子部件、专用传感器和功能各异的执行装置。为了解决汽车电子系统控制中,许多动态信息资源共享、信息处理的实时性等问题,大多数中、高档汽车上都采用了CAN总线技术作为控制器联网手段。宝莱车的CAN总线具有高可靠性全面提高了宝莱车的动力性、经济性和安全性。     一、宝莱车CAN总线的组成与结构     宝莱车采用两条CAN总线,即驱动系统CAN总线和车身系统CAN总线
[嵌入式]
一种提高RS485总线实时性的设计方案
0 引言 RS 485 总线具有结构简单、成本低廉、通信速率高、传输距离远等诸多优点,因而被广泛应用于工厂自动化、工业控制、安全监控等领域。RS 485一般采用半双工的通信方式,即在整个网络中任一时刻只能有一个节点处于发送状态并向总线发送数据,如果有两个或两个以上节点同时向总线发送数据,将会导致所有发送的数据发送失败,即所谓的总线冲突。 为了避免总线冲突,整个RS 485 通信系统一般由一个主节点、多个从节点组成。数据通信一般采用主节点轮询各个从节点的方式。各个从节点有自己的通信地址,只有主节点轮询帧中的地址信息与自己的地址相同时,此从节点才会进行应答,其他从节点则忽略此帧,不做任何处理。这种传统的主从调度方式虽然不会引起
[嵌入式]
现场总线CAN 在监控系统网络中通信协议设计
  1 前言   船舶电站监控系统主要用于监控船舶发电机组的运行状态,调节改善船舶供电的电力品质。本系统取代传统的点对点连线的控制方法,采用CAN 现场总线技术,实现发电机组的远程控制。基于CAN 总线具有结构简单、通信方式灵活的特点及其非破坏总线仲裁技术,为该监控系统提高数据传输可靠性、增强系统运行稳定性提供了新的解决方案。   2 网络通信平台设计   船舶电站监控系统采用 CAN 现场总线连接各设备,通信网络由监测网络与控制网络组成,采用双冗余总线结构,系统网络结构图如图1 所示。 图1 电站监控系统网络结构示意图   监测网络由若干个数据采集模块与1 个网关组成,主要负责采集传输现场用于测量柴油发
[嵌入式]
基于μC/OS-II嵌入式系统的EPA通信协议的实现方案
  1. 引言   《用于工业测量与控制系统的EPA系统结构与通信规范》(以下简称EPA)是基于工业以太网的实时通信规范,它有效地解决了以太网通信的确定性通信问题,进而可以应用于多种工业领域,构成各种工业测量与控制系统。该规范将收录在制定中的实时以太网国际标准IEC61784-2中,成为我国首例具有自主知识产权的现场总线标准;开发和实现EPA通信协议是应用EPA系统的基础和前提。   μC/OS-II是一种占先机制的实时多任务嵌入式操作系统,具有源码公开、可移植、可固化、可裁剪等特点,已经得到广泛的应用。相对于同为源码公开的μClinux,它具有内核小、实时性高等特点,更适合于控制应用。μC/OS-II作为EPA通信协议的实现平台
[单片机]
基于μC/OS-II嵌入式系统的EPA<font color='red'>通信协议</font>的实现方案
RS232/RS422/RS485接口通讯特点及比较
一、什么是RS-232 接口? (1) RS-232 的历史和作用 在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。RS-232-C接口(又称EIA RS-232-C)是目前最常用的一种串行通讯接口。(“RS-232-C”中的“-C”只不过表示RS-232的版本,所以与“RS-232”简称是一样的)它是在1970 年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是"数据终端设备(DTE)和数据通讯设备(DCE)之间串行二进制数据交换接口技术标准"该标准规定采用一个25 个脚的DB-25  连接器 ,对连接器的每个引脚的信号内容
[嵌入式]
STM32CubeMX | 37 - 使用RS485总线进行双板通信(SP3485)
本篇详细的记录了如何使用STM32CubeMX配置 STM32F407ZGT6 使用 RS485 总线与另一个开发板之间通信。 0. RS485总线协议简述 RS485总线的特点及应用场合 RS-485 通讯协议由 RS-232 协议改进而来,将物理层改为了差分信号进行传输,所以具备抗干扰能力强、传输距离远的特点,广泛应用于噪声干扰较大的工业控制环境中。 RS485总线的物理层 RS485总线网络拓扑结构如图: 其中RS485收发器的作用是将普通TTL电平信号转换为差分信号,即总线每个时刻表达的逻辑由485-A和485-B的电平共同决定,属于半双工通信,判断逻辑为:当 AB 两线间的电压差为 -6V~-2V 时表示逻辑
[单片机]
STM32CubeMX | 37 - 使用<font color='red'>RS485</font>总线进行双板通信(SP3485)
热门资源推荐
热门放大器推荐
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved