串行通信协议---HART协议

这篇具有很好参考价值的文章主要介绍了串行通信协议---HART协议。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

实际应用中,HART协议是仅次于Modbus协议的最接近统一现场总线的标准,主要是在4~20mA电流信号上面叠加数字信号,物理层采用Bell 202标准的FSK技术成功实现模拟信号和数字信号双向同时通信而互不干扰。HART协议规定了传输的物理形式、消息结构、数据结构和一系列操作指令,是一种主从协议,允许系统中存在两个主机(一个用于系统控制,另一个用于HART通信的手持设备),一对电缆线上最多可以连接15个从设备。


HART协议,即==Highway Addressable Remote Transducer Protocol ==,可寻址远程传感器高速公路协议,在4~20mA的模拟信号上叠加FSK数字信号,可以传输模拟信号和数字信号。

HART 将 1200 b/s的 FSK (Frequency Shiift Keying, 频移键控)信号加载在 4~20 mA 的模拟信号上进行通信,它的均值为 0,并且这个 FSK 信号对模拟信号毫无影响。在纯数字通信中,HART 最多可以允许加载 15 个现场设备。HART 协议为了在信号衰减的情况下继续通信而对接收器和发送器的灵敏性做了特别的规定,这样也减少了干扰和码间串扰的可能性。

HART 协议的显著特性之一就是它可以同时进行模拟和数字通信。多年以来,设备使用的现场通信标准是 4-20 mA 的模拟电流信号。在大多数应用中,它们用 4~20 mA 之间的值来表示被测量的参数,如温度和压力。而 HART 协议不仅在传输过程测量参数,还利用模拟信号上叠加的数字信号来传输控制信息。这样,HART 协议就可以支持大多数智能设备和大量存在的模拟设备。

FSK移频键控技术中逻辑1用1200HZ频率表示,逻辑0 用2200HZ频率表示,消息传输速率为1200b/s。


HART通信结构模型
以ISO的开放性互连模型为参照,分为三层,对应于OSI的应用层、数据链路层和物理层。

串行通信协议---HART协议
HART通信结构模型

OSI层次 HART层次
应用层 HART命令
数据链路层 协议规范
物理层 BELL 202

HART协议物理层

Bell 202 通信标准本来是在电话线上进行数字通信的标准,是利用电话线来传输数字信号的,也就是传真机用的通信协议。虽然 HART 信号的调制/解调也采用了与传真机相同的Bell 202 标准,但是HART 对阻抗和信号水平的规定与传真机不同,特别是HART 的4 mA低功耗要求。HART 信号的调制/解调需要使用专门的调制/解调器芯片来满足这些特别的性能要求。

HART 协议规定主设备(单主设备控制系统或手操机通信系统)传输的是电压信号,而从设备传输的是电流信号。通常的二线传输用于控制环路的电流,通过一些控制系统来抽样,进行模拟/数字信号的转换,这个转换要求不能影响现存的 HART 信号。


HART协议数据链路层
数据链路层协议规范的目的是建立一种与现场仪表等从设备间的可靠的双向数据通信通道。

数据链路层规定 HART 协议赖的格式,可寻址范围为 0-15。当地址为 0时,处于20mA及数字信号点对点模式。现场仪表与两个数字通信主设备(也称为通信设备或主设备)之间采用特定的串行通信,主设备包括 PC 或控制系统和手持通信器。在单点模式中,主变量(过程变量)可以以模拟形式输出,也可以以数字通信方式读出,当以数字方式读出时轮询地址始终为0。也就是说,单点模式时数字信号和 4~20 mA 的模信号同时有效。

HART 协议帧还可以在一根双绞线上以全数字的方式通信。当地址为 1-15 时,处于全数字通信状态,工作在一点对多点模式。一个链路上可支持 15 个短地址从设备,若使用长地址,设备数可不受限制,它只取决于所要求的通信链路上的查询速率。通信模式有问答方式、突发方式(点对点、自动连续地发送信息)。按问答方式工作时的数据更新速率为 2-3次按突发方式工作时的数据更新速率为 3~4 次/s。

采用全数字方式或多点模式时,4~20 mA 的模拟输出信号不再有效(输出设备在4 m时功耗最小,主要是为变送器供电,各个现场装置并联连接),系统以数字通信方式依次读并联在一对传输线上的多台现场仪表的测量值(或其他数据)。如果以这种方式构成控制系统,可以显著地降低现场布线的费用和减少主设备输入接口电路,这对于控制系统有重要价值,HART 协议根据冗余检错码信息,采用自动重复请求发送机制,消除了由于线路噪声或其“干扰引起的数据误码,可实现数据的无差错传输。

HART 协议把所有的设备分为3 类:从设备、突发模式设备和主设备。从设备是最普遍与最基本的设备类型,它接收和提供带有测量值或其他数据的数字信号,现场智能仪表一般为从设备。突发模式设备在固定的时间间隔发出带有测量值或其他数据的数字信号响应,而不包含被特别请求的数据,该设备通常作为一个独立广播的设备。主设备负责初始化、控制和终止与从设备或突发模式设备的交互。主设备又可分为第一主设备和第二主设备,第一主设备通常指控制系统,第二主设备指 HART 协议的手持设备。


HART协议应用层
HART 协议的应用层以命令的格式提供编程接口,所有的读写操作都以命令的形式完成。另外,链路管理等协议本身一些功能也由命令来实现。

在通信时,一条命令按命令格式组装成一个完整的 HART 协议帧,然后一次发送出去数据链路层规定了 HART 的格式,但是数据链路层并不解释 HART 中的数据段的含义这个工作由 HART 协议的应用层来完成。应用层规定了 HART 消息包中的3 类命令:第一是通用命令,适用于符合 HART 协议的所有产品,为符合 HART 协议的设备提供功能描述,第二类是普通命令,适用于符合 HART 协议的大部分产品,当设备具有某些功能时,该命令用于对这些功能的描述;第三类是特殊命令,适用于符合 HART 协议的特殊产品,提供一些特殊的功能描述命令。对于厂家生产的具有特殊功能的产品,HART 还提供了设备描述语言(Device Description Language,DDL),以确保互操作性。


各层间的功能关系
物理层的基本任务是为数据传输提供合格的物理信号波形,且直接与传输介质连接。物理层作为电气接口,一方面接收来自数据链路层的信息,把它转换为物理信号并传输到现场总线的传输介质上,起到发送驱动器的作用;另一方面,把来自总线传输介质的物理信号转按为信息并送往数据链路层,起到接收器的作用,当它收到来自数据链路层的数据信息时,需按照 HART 协议规范对数据加上前导码与定界符等,并对其进行数据编码,再经过发送驱动器,把所产生的物理信号传输到总线的传输介质上。另一方面,它又从总线上接收来自其他设备的物理信号,对其去除前导码、定界符后并进行解码,把数据信息送往数据链路层。而数据链路层规定了物理层和应用层之间的接口,该层还控制对传输介质的访问,决定是否可以访问以及何时访问。


HART的消息帧结构

RS-232 串行通信协议是传输一个字节 (Byte) 的协议,而Modbus 是用串口一次连续传输多个字节的协议。HART 是另外一种用串口一次连续传输多个字节的协议。一个 HART 包括多个字节,一个字节包含多个位 (Bit)。串行通信的一个字节一般包含了 11 位:1 个起始位、8个数据位、1 个奇/偶校验位及 1位停止位。HART 协议借用了串行通信的字节定义,即1个字节用了11位,波特率为 1200 b/s(较慢)。

串行通信协议---HART协议
一般的 HART 结构,包括导言(前导) 字节、起始字节、地址字节、命令字节、字节计数、状态字节、数据字节和校验字节等。每一部分均由多个字节组成,每个字节都有11位。


通信形式
通常 HART 协议按主-从模式通信,通信由主设备发起,从设备先“听”后“答”,第一主设备和第二主设备以相同的优先权轮流访问通信链路,但设定了不同的定时时间常数以防止“死锁”,避免两个主设备同时访问链路。当某一主设备通信结束后,需要首先侦听载波,等待一段时间以确保另一主设备能够访问通信链路,若通信链路上有载波存在,该主设备放弃使用通信链路;若定时时间溢出,该主设备可以继续访问通信链路。当通信链路上存在突发模式设备时,主设备只有突发模式设备与另一主设备的突发通信结束之后,方可访问通信链路。HART协议把突发功能作为现场仪表的一种可选功能。


HART的操作指令
HART协议操作命令可分为三类:通用命令、普通命令和特殊命令。其中,通用命令与普通命令统称为标准命令。
通用命令

  • 读出制造厂及产品型号:
  • 读出主变量及单位;
  • 读出输出电流及其百分比:
  • 读出最多 4 个预先定义的动态变量名;
  • 读出或写入 8 个字符的标牌号,16 个字符的描述内容以及日期等;
  • 读出或写入 32 个字符的信息;
  • 读出变送器的量程、单位以及阻尼时间常数;
  • 读出传感器串联数目及其限制;
  • 读出或写入最后组装数目;
  • 写入轮询地址等。

普通命令

  • 读出最多 4 个动态变量;
  • 写入阻尼时间常数;
  • 写入变送器量程;
  • 标定(设置零点和量程);
  • 完成自检;
  • 完成主设备复位;
  • 微 D/A 转换器主变量零点;
  • 写入主变量单位;
  • 微 D/A 转换器的零点和增益;
  • 写入变送类型 (开方/线性);
  • 写入传感器串联数目;
  • 读出或写入动态变量赋值等

特殊命令

  • 线性标定;
  • 温度标定;
  • 读出或写入开方小信号截断值;
  • 启动、停止或清除累积器;
  • 选择主变量(质量、流量或密度);
  • 读/写组态信息资料;
  • 微调传感器的标定等

下回学RS-485文章来源地址https://www.toymoban.com/news/detail-467168.html

到了这里,关于串行通信协议---HART协议的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 串行通信协议(I2C、SPI、UART、SCCB、CAN)

    推荐一部书,在这本书里面介绍了I2C、SPI、UART和CAN等通信协议,写的蛮不错的。 串行通信 :设备与设备之间,传输数据按顺序依次1bit位接1bit位进行传输。 并行通信 :设备与设备之间,通过多条传输线,可以同时传输多个bit位的信号。 1.简单的双向两线制总线协议标准、半

    2024年02月14日
    浏览(65)
  • 【正点原子STM32】RS485串行通信标准(串口基础协议 和 MODBUS协议、总线连接、通信电路、通信波形图、RS485相关HAL库驱动、RS485配置步骤、)

    一、RS485介绍 二、RS485相关HAL库驱动介绍 三、RS485配置步骤 四、编程实战 五、总结 串口、UART、TTL、RS232、RS422和RS485之间的关系可以如此理解: 串口 :是一个广义术语,通常指的是采用串行通信协议的接口,它可以包括多种具体的物理接口标准和逻辑电平标准。 UART (通用

    2024年04月13日
    浏览(69)
  • STM32F103单片机通过SPI全双工通信协议与W25Q64(FLASH)进行通信【串行同步通信(数据线与时钟线配合),(一主多从模式)】附相关驱动代码详解

    1.W25Qxx系列是一种低成本、小型化、使用简单的 非易失性存储器 ,常应用于数据存储、字库存储、固件程序存储等场景 2.存储介质: Nor Flash(闪存) 3.时钟频率:80MHz / 160MHz (Dual SPI) / 320MHz (Quad SPI) 4.存储容量(24位地址): W25Q40: 4Mbit / 512KByte W25Q80: 8Mbit / 1MByte W25Q16: 16

    2024年04月13日
    浏览(61)
  • spi协议时序图和四种模式实际应用详解

    大家好,我是无际。 上个章节我们讲解了spi接口定义,今天我们更加深入讲解下spi协议时序图和spi四种模式的用法。 刚开始接触单片机开发时,最怕就是看时序图,对于我来说就是奇怪的知识。 特别是SPI和IIC的,以前写程序都直接复制别人程序,功能实现就行了也没去研究

    2024年02月03日
    浏览(28)
  • 如何在C/C++中测量一个函数或者功能的运行时间(串行和并行,以及三种方法的实际情况对比)

    本文算是一个比较完整的关于在 C/C++ 中测量一个函数或者功能的总结,最后会演示三种方法的对比。 最常用的测量方法是使用 clock() 来记录两个 CPU 时间点 clock_t ,然后做差。这个方法的好处在于非常简单易写,如下(第一行是为说明需要导入哪个库): 需要注意 3 点:

    2024年04月23日
    浏览(40)
  • 串行协议--RS-485协议

    RS-485多机通信的组网方式 典型的总线式通信方式 菊花链式多机通信方式 每个节点智能接收上个节点发送的数据,只能向下一个节点发送数据。 星形RS-485多机通信方式 要实现星形组网方式,必须使用RS-485的集线器(HUB),可以保证某一路或者多路RS-485总线损坏后不影响其他总线

    2024年01月16日
    浏览(39)
  • 串行&并行 同步&异步通信

    终端与其他设备(例如其他终端、计算机和外部设备)通过数据传输进行通信。数据传输可以通过两种方式进行: 并行通信和串行通信。 是指使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。其只需要少数几条线就可以在系统间交换信息

    2023年04月20日
    浏览(53)
  • 51单片机——串行口通信

    目录 1、51单片机串口通信介绍 2、串行口相关寄存器  2.1 、串行口控制寄存器SCON和PCON 2.1.1 SCON:串行控制寄存器 (可位寻址) 2.1.2 PCON:电源控制寄存器(不可位寻址) 2.2、串行口数据缓冲寄存器SBUF 2.3、从机地址控制寄存器SADEN和SADDR 2.4、与串行口中断相关的寄存器IE和IPH、

    2024年02月14日
    浏览(36)
  • 并发调度的可串行性:可串行化调度、冲突可串行化调度、两段锁协议

            DBMS对并发事务不固的调度可能会产生不同的结果,有正确的,有不正确的。显然 串行调度 是正确的。         执行结果 等价于 串行调度 的调度也是正确的,这样的调度叫做 可串行化调度 。         定义:         多个事务的并发执行是正确的,当且

    2024年02月16日
    浏览(35)
  • 介绍串行和并行两种通信方式

    参考文章: 串行和并行- CSDN搜索 并行传输和串行传输的区别_金陵大掌柜的博客-CSDN博客 (1)串行和并行是计算机领域中两个重要的概念。串行是指在计算机中,任务按照顺序一个一个执行,每个任务执行完后才能执行下一个任务。而并行是指多个任务同时进行,即多个任务

    2024年02月09日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包