解析HART协议的含义与命令注解
[发布日期:2019-11-07 00:00]HART通信采用的是半双工的通信方式,其特点是在现有模拟信号传输线上实现数字信号通信,属于模拟系统向数字系统转变过程中过渡性产品,因而在当前的过渡时期具有较强的市场竞争能力,得到了较快发展。HART规定了一系列命令,按命令方式工作。它有三类命令,类称为通用命令,这是所有设备都理解、都执行的命令;第二类称为一般行为命令,所提供的功能可以在许多现场设备(尽管不是全部)中实现,这类命令包括常用的的现场设备的功能库;第三类称为特殊设备命令,以便于工作在某些设备中实现特殊功能,这类命令既可以在基金会中开放使用,又可以为开发此命令的公司所独有。在一个现场设备中通常可发现同时存在这三类命令。
HART不是真正的现场总线,而是从模拟控制系统向现场总线过渡的一块踏脚石。HART是结合模拟与数据信号的混合协议来表现控制系统的信息。通过使用HART,传统的4-20 mA(模拟)信号被用来代表过程变量或控制输出信号。次要的变量,设备状态和设备配置数据都在该4-20 mA信号上通过使用HART数据协议得以传输。
HART设备直接连接HART采用统一的设备描述语言DDL。现场设备开发商采用这种标准语言来描述设备特性,由HART基金会负责登记管理这些设备描述并把它们编为设备描述字典,主设备运用DDL技术来理解这些设备的特性参数而不必为这些设备开发专用接口。但由于这种模拟数字混合信号制,导致难以开发出一种能满足各公司要求的通信接口芯片。HART能利用总线供电,可满足本质安全防爆要求,并可组成由手持编程器与管理系统主机作为主设备的双主设备系统。
举个实际应用的例子:
HART/RS232转换器(松茂电子的SM100-A)与压力变送器通讯的指令解析
步骤1:HART/RS232转换器与压力变送器之间的连接按说明书上两线制连接示意图进行连接,并确认连接准确无误。
步骤2:打开HART/RS232转换器测试软件,打开串行口并连接,进行串行口测试,HART/RS232转换器与PC机是能正常通讯。
步骤3:按下开始检测,这个测试软件开始自动对测试仪表进行检测,测试软件上显示仪表的ID及其他参数显示出来,
指令分析:
命令格式说明如下:
起始位序文定界符地址命令数据长度校验位结束符
由于要确保待发的命令完整的发送,我们特意在标准命令格式序文前加了一个起始位"23"和在校验位后加了一个结束符"40"。
1)例如:发送读取设备序号命令23 FF FF FF FF FF 02 80 00 00 82 40
命令注解如下表所示:
起始位23序文FF FF FF FF FF定界符02地址80命令00数据长度00校验位82结束符40
返回的命令格式如下表所示:
序文定界符地址命令数据长度数据校验位
返回的数据为:FF FF FF FF FF 06 80 00 0E 00 00 FE 11 0E 05 05 01 0C 08 00 5E EE 09 D5
返回数据命令注解如下表所示:
序文ff ff ff ff ff定界符06地址80命令00数据长度0E数据00 00 FE 11 0E 05 05 01 0C 08 00 5E EE 09 D5
这里按说明书上6.1序号命查询进行协议解析。
5E EE 09这台设备的序号
2)例如发这读设备的动态变量命令
23 FF 82 91 0E 5E EE 09 03 00 A7 40
返回信息为:
FF 86 91 0E 5E EE 09 03 0B 00 00 41 8C CC 2B 0C 44 54 7E C3 23 41 8C CC 2B为当前输出电流(IEEE 754浮点格式)
0C对应的单位
44 54 7E C3当前的压力(IEEE 754浮点格式)
【通信模式】
HART通讯协议有三种不同的通信模式。
(1)点对点模式。同时一根电缆线上传输4~20mA DC的模拟信号和数字信号。
(2)多点模式。一根电缆线上连接多个现场设备,即全数字通信模式。
(3)阵发模式。允许总线上单一的从站自动、连续地发送一个标准的HART的响应信息。