基于BLEGATT的个人健康设备通用传感器数据结构及表示方法

文档序号:37238970发布日期:2024-03-06 17:03阅读:15来源:国知局
基于BLE GATT的个人健康设备通用传感器数据结构及表示方法

本发明涉及数据结构表示,特别是一种基于ble gatt的个人健康设备通用传感器数据结构及表示方法。


背景技术:

1、蓝牙技术联盟在蓝牙技术规范中专门定义了针对健康设备的标准协议。世界健康设备联盟cha也选择低功耗蓝牙作为人体周边网络的传输标准。这说明蓝牙不仅是物联网生态系统之一,也表明了未来几年在医疗领域的发展趋势,但是现有的蓝牙技术联盟健康设备规范存在诸多问题,比如现有ble个人健康设备规范各自独立定义、缺乏通用性以及需要大量特定gatt知识等问题,

2、asn.1(abstract syntax notation one),即抽象语法标记,是定义抽象数据类型形式的标准,描绘了与任何表示数据的编码技术无关的通用数据结构。在ieee 1107320601标准中,所有属性都采用asn.1中属性值断言(attribute value assertion)结构,即ava结构来表示,通常将其称为通用传感器数据结构,该结构是自描述的,由“属性类型id-长度-值”组成。其中“属性类型id”字段是四个字节的定义属性内容的mdc代码,“长度”字段为两个字节,给出该值的长度,“值”字段可以是一个简单的标量或本身是一个结构。解码通用传感器数据结构需要了解asn.1针对该属性的结构体,解码器通过查看“属性类型”字段来理解该属性,如果解码器不理解该属性,可以通过“长度”字段跳过到下一个通用传感器数据结构。

3、对于最常见的用例,只会用到在20601中定义的所有属性中的一小部分子集。例如,市场产品中大部分测量数据使用以下属性进行描述(如方括号[]所示):简单数据:[type][time-stamp][unit-code][simple-nu-observed-value];复合数据:[type][time-stamp][unit-code][metric-id-list][compound-simple-nu-observed-value];编码枚举数据:[type][time-stamp][enum-observed-value-simple-oid];状态枚举数据:[type][time-stamp][enum-observed-value-simple-bit-str][capability-mask-simple][state-flag-simple];波形数据类型:[type][time-stamp][sample-period][scale-and-range-specification][sa-specification][unit-code][simple-sa-observed-value];在所有测量模板中,偶尔会使用三个另外的属性:[supplemental-types],[observation-reference-list]和[measure-active-period]。方括号中的所有属性均来自20601标准中定义的属性,以上所有的属性基本涵盖了当前市场上存在的大部分phd所传输的数据类型。由于这些属性是自描述的,因此这些属性可以以任何顺序发送,而phg仍然可以解码得到测量数据。

4、但asn.1标准和通用传感器数据结构对标准实现者来说并不是常识,需要花大量时间去理解和掌握,而且大多数数据结构只包含少数几个属性,并且这些属性在不同数据结构中可能会被重复使用,此外,来自通用传感器数据结构的“属性类型id”和“长度”字段的开销使某些消息包的大小增加一倍,因此可以通过去除“属性类型”和“长度”字段,保留每个属性的“值”字段来简化通用传感器数据结构,这些属性的“值”字段按照一定的固定顺序排列,来形成各类数据信息包的模板。例如简单数据类型的模板:[type][time-stamp][unit-code][simple-nu-observed-value];[类型][时间戳][单位代码][简单数据的观测值];其中每一个“[]”代表一个属性,phd可以将此数据结构的序列字节发送给phg。


技术实现思路

1、有鉴于此,本发明的目的在于提供一种基于ble gatt的个人健康设备通用传感器数据结构及表示方法,该方法利用固定顺序组织数据结构进行数据传输。

2、为达到上述目的,本发明提供如下技术方案:

3、本发明提供的基于ble gatt的个人健康设备通用传感器数据结构及表示方法,包括以下步骤:

4、按照传感器数据的属性类型设置存储传感器数据的存储顺序;

5、按照存储顺序将对应属性类型的值依次存储于数组中,并在数组前端设置开始字段,所述开始字段用于存储获取传感器数据的命令字段;所述数组末尾设置有表示传感器数据发送完毕的结束标志。

6、进一步,所述结束标志是由从设备发送的一种预设特征发送的消息;所述预设特征发送的消息用于表示存储传感器数据结束。

7、进一步,所述数组中存储的传感器数据是在从设备phd中按照存储顺序进行编排,其随后被发送至主设备phd。

8、进一步,所述命令字段由主设备phg发送到从设备,所述从设备根据命令字段提取传感器数据。

9、进一步,对所述属性进行分组,并设置多个结构体,采用结构体嵌套的形式,将各属性按组填充到相应的结构体中,得到不同的数据模板。

10、进一步,所述属性被划分为动态属性和静态属性;在结构体中,静态属性将直接被填充,而动态属性则根据其属性类型进行判断,并分配相应的空间大小;在传感器数据到达时,将动态属性数据动态地传递到为结构体分配的空间中;按照数据模板的顺序,将结构体中的数据顺序存储在一个数组中。

11、进一步,所述传感器数据包括系统信息数据结构、当前时间信息数据结构、测量数据信息数据结构中的任意一种或多种组合。

12、本发明提供的利用上述基于ble gatt的个人健康设备通用传感器数据结构表述方法构建的数据结构,包括开始字段、数组和结束标志;

13、所述开始字段设置于数组前端,用于存储获取传感器数据的命令字段;

14、所述结束标志设置于数组末尾,用于接收表示传感器数据发送完毕的信息;

15、所述数组用于按照预设顺序将属性类型的值依次存储于数组中。

16、进一步,所述结束标志是由从设备发送的一种预设特征发送的消息;所述预设特征发送的消息用于表示存储传感器数据结束;

17、所述数组中存储的传感器数据是在从设备phd中按照存储顺序进行编排,其随后被发送至主设备phd;

18、所述命令字段由主设备phg发送到从设备,所述从设备根据命令字段提取传感器数据。

19、进一步,所述属性按照类型进行分组,并设置多个结构体,采用结构体嵌套的形式,将各属性按组填充到相应的结构体中,得到不同的数据模板;

20、所述属性被划分为动态属性和静态属性;在结构体中,静态属性将直接被填充,而动态属性则根据其属性类型进行判断,并分配相应的空间大小;在传感器数据到达时,将动态属性数据动态地传递到为结构体分配的空间中;按照数据模板的顺序,将结构体中的数据顺序存储在一个数组中。

21、本发明的有益效果在于:

22、本发明提供的一种基于ble gatt的个人健康设备通用传感器数据结构及表示方法,所述方法是按照传感器数据的属性类型设置存储传感器数据的存储顺序;并按照存储顺序将对应属性类型的值依次存储于数组中,并在数组前端设置开始字段,所述开始字段用于存储获取传感器数据的命令字段;所述数组末尾设置有表示传感器数据发送完毕的结束标志;所述结束标志是由从设备发送的一种预设特征发送的消息;该预设特征发送的消息用于表示存储传感器数据结束;采用该数据结构在解码过程中以命令字段作为数据包的开始字段,以通过另一特征发送的消息作为数据包的结束标志,通过观察标志位中的置位值来检测后续属性的存在,利用已知每个属性的长度,能够准确定位属性在数据中的位置,从而成功实现对数据的解码。引入了这种通信规范,为非自描述数据的解码提供了一种可靠而一致的方法,确保在通信过程中数据能够被正确解释。

23、本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1