当前位置:文档之家› HART通信协议V1.7(C9,C33,C132)

HART通信协议V1.7(C9,C33,C132)

HART通信协议

VER 1.6

一.概述

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

在应用层,HART 规定了一系列命令,按命令方式工作。它有三类命令,第一类称为通用命令,这是所有设备都理解、执行的命令;第二类称为普通应用命令,所提供的功能可以在许多现场设备(尽管不是全部)中实现;第三类称为设备专用命令,以便于工作在某些设备中实现特殊功能,这类命令既可以在基金会中开放使用,又可以为开发此命令的公司所独有。

二.含义

1、主机(Master):分为第一主机和第二主机,它能连接在HART网络上,发出命令与从

机通讯;

2、从机(Field Device):连接在过程控制现场中,具有测量、计算多种变量功能,并能与

主机进行HART通讯的设备;

3、长帧(Long Frame):地址Address由5字节组成的HART数据帧,所有的HART命令

都支持长帧数据帧。长帧地址各字节含义如下图所示:

制造商ID 号(Manufacturer ID )由HART 基金会分配;

在生产中,同类型设备序列号唯一,并且永不重复。广播地址使用长帧结构,低38 BIT 全为0。

厂商指定的设备类型(Decive Type )与制造商ID 满足下表要求;

设备类型代码指定原则

4、 短帧(Short Frame ):地址Address 由1字节组成的HART 数据帧,短帧只有通用命令

Command 0能够使用,短帧字节含义如下:所有的HART 从机都支持长、短帧。

低6位短帧地址:轮询从机地址

主机地址0:第二主机1:第一主机

1:从机在突发模式0:正常模式短帧Address 字节含义

5、 请求帧(STX ):由主机(如手抄器)向从机(现场设备)发出请求数据命令;

6、 应答帧(ACK ):从机回复给主机的数据;

7、 前导符(Preamble ):发起命令(数据)传输的设备在传输数据帧前发送的0xFF 字符,

发送该字符的数量一般为5—20个,该数量可以通过命令来改变;前导符的使用是为了使数据接收端在硬件电路上产生CD 载波检测信号,以实现数据通讯的同步。 8、 定界符(Delimiter ):表示数据帧传输的开始,指明数据的传输方向、物理层类型,同

时它也指定了数据帧的帧类型(长、短帧),其含义内容如下:

:突发模式

:主机向从机请求数据(STX ):从机向主机回复数据(ACK ):异步(FSK ):同步(ACK )00

:短帧1字节(轮询)

1:长帧5字节(唯一地址)

定界符Delimiter 字节含义

9、 地址(Address ):由定界符Delimiter 指定为短帧(1字节)或长帧(5字节)两种类型,长、短帧释义如前述; 10、 扩展字节(Expansion Bytes ):本公司目前的HART 协议版本保留,为0; 11、

命令(Command ):功能码,指明一个数据帧的具体实现功能,命令有通用命令、

普通应用命令、设备专用命令三大类; 12、 数据字节数(Bytes Count ):指实际的数据Data 的数量;

13、 数据(Data ):设置或读取指定从机的参数数据(通信的最终结果);

14、

校验字节(Check Byte ):从定界符(Delimiter )到数据(Data )的所有字节的‘异

或’值,即纵向校验。

三.HART 通讯规范

1、 通信帧格式:由前导符和数据帧构成,各数据域释义如上

数 据 帧

前导符

通信帧格式

2、通讯速率:1200Bps;

3、通讯信号:Bell202标准的FSK频移键控信号,‘1200Hz’代表数字1,‘2200Hz’代表

数字0;

4、数据格式(11位):1位起始位、8位数据位、1位停止位、1位校验位,字节奇(Odd)

校验;

5、应答数据帧的数据个数(Bytes Count)至少为2字节,这两个字节分别为响应码(Response

Code)和设备状态码(Field Device Status);

6、响应码格式:从机回复给主机的命令执行情况代码,当通讯出错时,响应吗最高位bit7=1,

这时设备状态码无实际意义;当bit7=0时,表示通讯正常,余下6 bits表示命令执行情况的响应。

7、通讯正常时响应码(bit7=0,低6 bits):

* 具体含义因不同命令而定,可查看相关的HART命令资料。

8、通讯出错时响应代码(bit7=1)含义如下:

9、 设备状态码:含义如下

响应代码 设备状态含义 0x80 设备故障 0x40 配置参数改变 0x20 设备冷启动 0x08 环路电流固定模式 0x04 环路电流饱和

0x02 设备变量(没有映射到主变量)超限

0x01

主变量超出极限

10、

数据类型:HART 通讯协议支持以下类型的数据:字符串Str 、日期Date 、单或双

精度浮点数Float 、无符号整型数Unsigned 、有符号整型数Signed 、联合体Enum 或位Bit 。数据传输顺序:MSB 至LSB 。

1)字符串:字符串支持标准的拉丁字母Latin 和封装格式Packed 的ASCII 码,拉丁字符每个字母占1个字节;封装格式的ASCII 码每字母占1个字节的6位,因此,每4个字母封装在3个字节中,在使用过程中需要打包和解包操作。

2)浮点数:满足IEEE754标准要求,单精度浮点数用4个字节表示,双精度浮点数用8个字节表示。

23—bit 小数

8—bit 指数

1—bit 符号位

单精度浮点数格式

不可识别的浮点数用0x7f 、0xa0、0x00、0x00表示。 11、

设备变量状态(Device Variable Status ):所有需要周期处理的数据(如设备变量

和动态变量)都包含一个设备变量状态字节,其内容定义如下:默认0xc0

设备变量状态字节含义

相关主题