首页 > 编程知识 正文

HART协议

时间:2023-05-06 00:53:15 阅读:226553 作者:4617

         HART,可寻址远程传感器高速通道的开放通信协议。用于现场智能仪表和控制室设备之间的通信协议。HART装置提供具有相对低的带宽,适度响应时间的通信,经过10多年的发展,HART技术在国外已经十分成熟,并已成为全球智能仪表的工业标准。

 

      HART协议采用基于Bell202标准的FSK频移键控信号,在低频的4-20mA模拟信号上叠加幅度为0.5mA的音频数字信号进行双向数字通讯,数据传输率为1.2kbps。由于FSK信号的平均值为0,不影响传送给控制系统模拟信号的大小,保证了与现有模拟系统的兼容性。在HART协议通信中主要的变量和控制信息由4-20mA传送,在需要的情况下,另外的测量、过程参数、设备组态、校准、诊断信息通过HART协议访问。

HART规范

HART协议实现了开放系统互连(OSI)7层协议模型的第1、 2、 3、 4和7层:

协议物理层

        以贝尔202标准为基础,采用频移键控(FSK),以1200bps的速率通信。代表0和1位值的信号频率分别为2200和1200HZ。该低电平信号叠加在4~20mA的模拟测量信号之上,而不会对模拟信号造成任何干扰。

数据链路层

       定义了一项主从协议 - 在正常使用下,现场设备只在收到信号时才做回答。可以有两个主设备,例如,控制系统作为第一主设备,而手持HART通信器作为第二主设备。时序规则定义每个主设备可以开始通信事务的时间。单个多点线缆对可以连接多达15个或更多的从设备。

网络层

       提供路由、端到端安全及传输服务。它管理与通信设备之间端到ggdbd的“会话”。

传输层

       数据链路层确保通信成功地从一个设备到另一个设备传播。传输层可以被用来确保端到ggdbd的成功。

应用层

       定义了协议所支持的命令、响应、数据类型和状态报告。在应用层,协议的公共命令分为四大类:

      1、通用命令 - 提供在所有现场设备都必须实现的功能

      2、常用命令 - 提供很多设备所共有的功能,但并不是所有的现场设备都具有的功能

      3、设备特定命令 - 提供某特定现场设备所特有的功能,由设备制造商所指定

      4、设备系列命令 - 为特定测量类型的仪器提供一套标准化的功能,允许无需使用设备特定指令便能进行完全的通用性访问。

通用命令

HART命令0:读标识码                   

返回扩展的设备类型代码,版本和设备标识码。

请求:无

字节0: 254

字节1: 制造商ID(Enum)

字节2: 制造商设备类型(Enum)

字节3: 请求的最小前导符数(主->从)

字节4: 通用命令文档版本号

字节5: 设备规范版本号

字节6: 设备软件版本号

字节7: 设备硬件版本号 (前五个bit为硬件后三个bit物理信号类型)(Enum)

字节8: 设备标志

字节9-11: 设备ID号

HART命令1:读主变量(PV)

以浮点类型返回主变量的值。

请求:无

响应:

字节0: 主变量单位代码

字节1-4: 主变量

HART命令2:读主变量电流值和百分比

读主变量电流和百分比,主变量电流总是匹配设备的AO输出电流。百分比没有限制在0-100%之间,如果超过了主变量的范围,会跟踪到传感器的上下限。

请求:无

响应:

字节0-3: 主变量电流,单位毫安

字节4-7: 主变量量程百分比

HART命令3:读动态变量和主变量电流

读主变量电流和4个(最多)预先定义的动态变量,主变量电流总是匹配设备的AO输出电流。每种设备类型都定义的第二、第三和第四变量,如第二变量是传感器温度等。

请求:无

响应:

字节0-3: 主变量电流,单位毫安

字节4: 主变量单位代码

字节5-8: 主变量

字节9: 第二变量单位代码

字节10-13:第二变量

字节14: 第三变量单位代码

字节15-18:第三变量

字节19: 第四变量单位代码

字节20-23:第四变量

HART命令4:保留

HART命令5:保留

HART命令6:写POLLING地址

这是数据链路层管理命令。这个命令写Polling地址到设备,该地址用于控制主变量AO输出和提供设备标识。

只有当设备的Polling地址被设成0时,设备的主变量AO才能输出,如果地址是1~15则AO处于不活动状态也不响应应用过程,此时AO被设成最小;并设置传输状态第三位——主变量模拟输出固定;上限/下限报警无效。如果Polling地址被改回0,则主变量AO重新处于活动状态,也能够响应应用过程。

请求:

字节0: 设备的Polling地址

响应:

字节0: 设备的Polling地址

HART命令7:

HART命令8:

HART命令9:

HART命令10:

HART命令11:用设备的Tag读设备的标识

这是一个数据链路层管理命令。这个命令返回符合该Tag的设备的扩展类型代码、版本和设备标识码。当收到设备的扩展地址或广播地址时执行该命令。响应消息中的扩展地址和请求的相同。

请求:

字节0-5: 设备的Tag,ASCII码

响应:

字节0: 254

字节1: 制造商ID代码

字节2: 制造商设备类型代码

字节3: 请求的前导符数

字节4: 通用命令文档版本号

字节5: 变送器版本号

字节6: 本设备的软件版本号

字节7: 本设备的硬件版本号

字节8: 设备的Flags

字节9-11: 设备的标识号

HART命令12:读消息(Message)

读设备含有的消息。

请求:无

响应:

字节0-23: 设备消息,ASCII

HART命名13:读标签Tag,描述符Description和日期Date

读设备的Tag,Description and Date。

请求:无

响应:

字节0-5: 标签Tag,ASCII

字节6-17: 描述符,ASCII

字节18-20:日期,分别是日、月、年-1900

HART命令14:读主变量传感器信息

读主变量传感器序列号、传感器极限/最小精度(Span)单位代码、主变量传感器上限、主变量传感器下限和传感器最小精度。传感器极限/最小精度(Span)单位和主变量的单位相同。

请求:无

响应:

字节0-2: 主变量传感器序列号

字节3: 主变量传感器上下限和最小精度单位代码

字节4-7: 主变量传感器上限

字节8-11: 主变量传感器下限

字节12-15:主变量最小精度

HART命令15:读主变量输出信息

读主变量报警选择代码、主变量传递(Transfer)功能代码、主变量量程单位代码、主变量上限值、主变量下限值、主变量阻尼值、写保护代码和主发行商代码。

请求:无

响应:

字节0: 主变量报警选择代码

字节1: 主变量传递Transfer功能代码

字节2: 主变量上下量程值单位代码

字节3-6: 主变量上限值

字节7-10: 主变量下限值

字节11-14:主变量阻尼值,单位秒

字节15: 写保护代码

字节16: 商标发行商代码Private Label Distributor Code

HART命令16:读最终装配号

读设备的最终装配号。

请求:无

响应:

字节0-2: 最终装配号

HART命令17:写消息

写消息到设备。

请求:

字节0-23: 设备消息,ASCII

响应:

字节0-23: 设备消息,ASCII

HART命令18:写标签、描述符和日期

写标签、描述符和日期到设备。

请求:

字节0-5: 标签Tag,ASCII

字节6-17: 描述符Descriptor,ASCII

字节18-20:日期

响应:

字节0-5: 标签Tag,ASCII

字节6-17: 描述符Descriptor,ASCII

字节18-20:日期

HART命令19:写最后装配号

写最后装配号到设备。

请求:

字节0-2: 最终装配号

响应:

字节0-2: 最终装配号

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。