介绍过HART协议物理层和HART数据链路层之后,我们还对HART的服务进行了阐述。通过这些一系列的讲解,相信大家已经对软件平台中的HART协议应用有了一定的了解了。这里我们介绍***一部分内容,是HART应用层规范和相关语言和命令的介绍。
HART协议的应用层规范
1 HART命令
通用命令:所有设备都实现这些命令。命令号范围是:0 ~ 30;
一般行为命令:多数设备支持这些命令的实现。命令号范围:32 ~ 127;
变送器专用命令:只有一个或几个设备支持这些命令。通过执行专用命令来完成一些独有的特殊功能,和数据处理;命令号范围:128 ~ 255;
2 数据格式
①. 无符号整数:用来表示原始数字(raw numbers),如“***安装号”。
②. IEEE 754浮点格式:
通过协议传递的浮点值是基于IEEE 754单精度浮点标准的。
数据字节
#0 #1 #2 #3
S EEEEEEE E MMMMMMM MMMMMMMM MMMMMMMM
S-尾数的符号;1=负
E-指数;与十进制数127的差值以二进制补码形式表示。
M-尾数;低23位,小数部分。
上述浮点数的值通过把2的无偏移指数次方与24位尾数相乘得到。24 位尾数由一个假设的***位1,后跟一个小数点,和尾数的23位组成。S1.M X
③.ASCII数据格式:
此格式可以参照任何一个ASCII代码表。
④.压缩ASCII(6位ASCII)数据格式:
这种数据格式是HART协议的一个独特之处。压缩的ASCII是ASCII的子集,它通过去掉每个ASCII字符的高2位而产生。这就允许4个压缩的ASCII字符占用3个ASCII字符的空间。具体的格式安排情况如下:
压缩的ASCII数据字节 #0 #1 #2 …
ASCII数据字节 #0 #1 #1 #2 #2 #3 …
ASCII数据位543210 54 3210 5432 10 543210 …
由HART字符集可以看出,HART协议不允许有小写英文字母出现。
⑤.变量描述:
变送器提供了四个可以访问的变量输出通道。每个变送器变量都对应一个代码,上位机通过给变送器的每个通道设定不同的变量代码来得到相应的变量值。变量代码表由变送器的生产厂商提供。
设备描述语言
随着HART协议的发展,对主设备和现场设备开发者来说,又产生了新的障碍。主设备开发者必须为不断涌现的新现场设备提供支持,同时,现场设备开发者必须为数量正迅速增加的主设备开发相应的接口。
设备描述语言(DDL)是用以描述HART现场设备的一种简单结构化英语语言。DDL将主设备与现场设备操作所需的所有信息都集中到了一起,而目前这些信息却是以不同的形式存在于不同的地方。HART文档描述了其中一些信息(如普通命令、通用命令、通用表等)。变送器特有文档说明了特殊设备信息(如来自于通用命令的偏差,同时又支持通用命令和特殊变送器命令)。CAD图提供了手持终端的外观和流程,甚至有些信息是由手持终端的应用来说明的。例如,整定D/A转换器的过程就是按手持终端处理方法定义的。DDL语言组合了所有这些信息,为对现场设备提供了一种清晰的、不含糊的、一致的描述。
一种正在开发的手持终端将只基于设备描述与现场设备进行操作,而不能与没有设备描述的现场设备进行操作。这具有十分诱人的优点。
新的现场设备可以不依赖于手持终端的版本而发布。一旦现场设备的设备描述存在,这种描述就能被载入手持终端,然后现场设备就能与之操作了。现场设备开发者将不再需要确认手持终端的操作,只需要检验设备描述语言。因此,当前存在于现场设备和手持终端版本间的互相依赖的紧密联系将不复存在。
现场设备开发者在怎样将其产品引入现场及怎样为其用户升级方面具有很大的灵活性。设备描述能驻留在现场设备中,所以合适的设备描述总是有效的。升级的设备描述能以模块的形式提供,并且可以引入到手持终端。可以用软盘来进行升级,也可以用PC软件将其下装到手持终端中。软盘升级可以由用户自己或服务中心来完成。
DDL语言将会代替特殊变送器文档和CAD线图,所以,这会消除以前存在的许多文档问题。
由于目前DDL及其编译器价格较贵,各厂家也没有提供支持DDL的相应的设备,不建议采用和实现支持DDL的功能,而是采用将各类设备的专有属性与通用属性分开,专有属性以不同的动态链接库实现。