具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本申请的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。
首先,在对本申请实施例进行描述的过程中出现的部分名词或者术语适用于如下解释:
UWB,就是Ultra Wideband,超宽带技术,是一种使用1GHz以上频率带宽的无线载波通信技术。它不采用正弦载波,而是利用纳秒级的非正弦波窄脉冲传输数据。UWB定位系统由应用层、服务层、传输层和感知层(定位基站和定位标签)构成,传输层主干网通信方式采用有线或无线的通信方式。
感知层主要包括定位基站和定位标签。基站和标签是定位系统的核心设备,标签会按时隙广播携带有标签ID号的无线电信号,定位基站接收到标签发送的信号后,将接收到信号的时间戳和标签ID卡号通过主干网传输给服务层,完成对标签卡的定位,基站也可以接收到应用层下发的指令,完成相关的设置。室内定位基站、定位标签是UWB定位系统的硬件组成部分。定位基站分布于场景区域的几何边缘,并对该区域进行信号覆盖。室内定位基站主要功能就是探测标签的数据信息并上传至服务器进行汇总分析。定位标签附着于定位对象的表面,当标签进入基站的信号覆盖范围内,即自动与基站建立联系。定位标签可根据应用得需求制定不同的附着方案,如悬挂、粘贴等形式,大小和外形也会根据定位对象的不同而有所不同。
传输层也称主干通信网(简称“主干网”),是基站与服务层、应用层之间的数据传输通道,向下将应用层相关指令传输给基站,向上将定位原始数据(标签与基站之间距离)传输给服务层,采用有线光纤方式进行数据传输。
服务层通过标签与覆盖该区域的定位基站进行测距,顶层通过各基站的位置和标签距离,通过TDOA算法或者TOA算法解算出标签坐标。除此之外,服务层还提供了灵活的设备管理和网络管理功能,以及各项前端功能和应用接口。
应用层通过服务层获取定位标签的具体位置,以一维、二维或三维地图的形式实时显示标签的位置,并提供轨迹回放,人员信息管理和呼叫求救等功能。
相关技术中,有采用对测量对象添加惯性测量元件,从而使用滤波算法对惯性测量元件采集的数据解算得到定位标签的位置信息的方法。相关技术虽然能够减少信号收到的干扰,较高精度的解算到定位标签的坐标值,但是在数据传输的过程中,仍然存在数据流顺序混乱、数据易丢失、实时性差、解算系统扩展性能差的问题。
为了解决背景技术中提及的问题,根据本申请实施例的一方面,提供了一种定位基站数据流处理方法的实施例。
可选地,在本申请实施例中,上述定位基站数据流处理方法可以应用于如图1所示的由终端101和服务器103所构成的硬件环境中。如图1所示,服务器103通过网络与终端101进行连接,可用于为终端或终端上安装的客户端提供服务,可在服务器上或独立于服务器设置数据库105,用于为服务器103提供数据存储服务,上述网络包括但不限于:广域网、城域网或局域网,终端101包括但不限于PC、手机、平板电脑等。
本申请实施例中的一种定位基站数据流处理方法可以由服务器103来执行,还可以是由服务器103和终端101共同执行,如图2所示,该方法可以包括以下步骤:
步骤S202,在接收到待处理数据包的情况下,提取所述待处理数据包中携带的第一标识,待处理数据包为定位基站发送的,第一标识用于指示待处理数据包的类型。
本申请实施例中,上述定位基站可以是超宽带定位基站,定位标签与超宽带定位基站通过TOF测距法实时计算出两者的相对距离,超宽带定位基站实时将计算的包含相对距离值的数据包发送给基站数据流接收处理系统,此外,超宽带定位基站同时也会生成仅包含基站状态信息的数据包,并将此数据包也发送给基站数据流接收处理系统。
因此,上述待处理数据包包括两种类型的数据包,一种是包含定位标签与超宽带定位基站相对距离的数据包,另一种是只包含定位基站状态信息的数据包。待处理数据包中携带上述第一标识,上述第一标识为类型标识,可以用于区分两种类型的数据包。
每个超宽带定位基站会定时产生包含数据包类型标识命令字、基站ID、运行状态等信息的数据包,每个数据包中的命令字字段可以作为数据包类型标识,该数据包以十六进制的字符串格式发送给基站数据流处理系统。
每个超宽带定位基站与定位标签通讯时,会定时产生包含数据包类型标识命令字、基站ID、标签ID、基站与标签的相对距离值、批次计数值等信息的数据包,每个数据包中的命令字字段为数据包类型标识,该数据包以十六进制的字符串格式发送给基站数据流处理系统。
可选地,包含定位标签与超宽带定位基站相对距离的数据包的格式可以如表1所示,只包含定位基站状态信息的数据包的格式可以如表2所示:
表1
表2
定位标签是UWB定位系统的硬件组成部分,可以附着于定位对象的表面,当标签进入基站的信号覆盖范围内,即自动与基站建立联系。定位标签可根据应用得需求制定不同的附着方案,如悬挂、粘贴等形式,大小和外形也会根据定位对象的不同而有所不同。常用的定位标签可以是工牌型标签、安全帽型标签、防拆型手环、物资定位标签等。
步骤S204,利用第一标识筛选出第一数据包,第一数据包为包含定位基站至目标位置的距离信息的待处理数据包。
本申请实施例中,上述第一数据包为包含超宽带定位基站至目标位置的距离信息的待处理数据包,即包含定位标签与定位基站相对距离的数据包。该第一数据包可以是超宽带定位基站在各个时间点采集的包含定位标签与定位基站相对距离的数据包。第一数据包可以是不同的超宽带定位基站发送的,同一次接收到的第一数据包可以是不同时间发送的,同一座超宽带定位基站发送的不同第一数据包其采集距离信息的时间不同,而由于传输延时,不同采集时间的第一数据包可能在同一个时间点被接收。
步骤S206,提取第一数据包中携带的第二标识,第二标识用于指示第一数据包的时间信息,同一个定位基站发送的不同待处理数据包中携带的第二标识不同。
本申请实施例中,上述第二标识可以是采集距离信息的时间标识,还可以是指示发送该第一数据包的批次标识,用于将接收到的第一数据包分别划分到不同的批次中,同一个批次中的第一数据包其采集距离信息的时间相同或基本一致。
在数据包传输的过程中,每个超宽带定位基站按照数据包生成的先后顺序将各个时间点的数据包发送给基站数据流接收处理系统,在理想情况下,基站数据流接收处理系统在每个时间点上能够连续接收到该时间点上针对特定定位标签的每个基站发送的包含相对距离值的数据包,但由于在每个时间点上,每个基站对于该时间点包含相对距离的数据包的生成时间和发送时的发送时间不可能做到完全同步,在该时间点上每个基站数据包的时间戳值并不相等,存在细微差别,并且网络传输存在传输延时现象,因此本申请实施例中,可以设置第二标识将各个时间点的数据包进行有序归并。
步骤S208,在第二标识指示的时间信息为目标时间的情况下将第一数据包确定为目标数据包,目标时间为定位基站采集与目标位置之间的距离信息的时间。
本申请实施例中,为了解算定位标签在特定时间下的坐标值,需要获得多个在该特定时间进行距离信息采集的数据包,因此可以在众多获取到的多个上述第一数据包之后根据第二标识挑选出在目标时间采集距离信息的目标数据包。
本申请实施例中,上述接收待处理数据包可以采用Apache Flume数据收集框架。Apache Flume是一个高可用、高可靠、分布式的海量日志采集、聚合和传输系统,ApacheFlume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Apache Flume提供对数据进行简单处理,并写到各种数据接受方的能力。
可选地,接收待处理数据包还可以采用Facebook的Scribe、LogStash、ApacheNiFi、Splunk等工具。
采用本申请的技术方案,通过设置类型标识和批次标识有序地筛选出在特定时间点采集距离信息的全部数据包,解决了数据流顺序混乱、数据易丢失的问题。
本申请实施例提供一种解算定位标签坐标值的方法。可选地,在第二标识指示的时间信息为目标时间的情况下将第一数据包确定为目标数据包之后,该方法还包括按照如下方式解算定位标签的坐标值:
步骤1,将目标数据包转换为待处理对象,待处理对象采用预设流式处理框架所支持的数据格式进行编码。
本申请实施例中,目标数据包为采集距离信息的时间为目标时间的包含超宽带定位基站至目标位置的距离信息的数据包。
本申请实施例中,上述预设流式处理框架可以是Apache Flink,Flink程序在执行后被映射到流数据流,每个Flink数据流以一个或多个源(数据输入,例如消息队列或文件系统)开始,并以一个或多个接收器(数据输出,如消息队列、文件系统或数据库等)结束。Flink可以对流执行任意数量的变换,这些流可以被编排为有向无环数据流图,允许应用程序分支和合并数据流。
按照Flink数据流格式要求,将目标数据包转为POJO(Plain Ordinary JavaObject)简单的JAVA对象,可以是JavaBean。
可选地,上述预设流式处理框架还可以是Apache Spark、Gearpump等。
步骤2,利用预设流式处理框架对至少目标数量个待处理对象进行处理,得到目标定位标签在目标时间时的坐标值,目标定位标签所在的位置为目标位置,目标数量为要得到坐标值所需的待处理对象的最小数量,坐标值为预设坐标系下的坐标。
本申请实施例中,定位标签在每个时间点的二维坐标值的解算过程需要获取到当前时间点定位标签与分布在不同位置的三个超宽带定位基站的直线距离;而对于定位标签在每个时间点的三维坐标值的解算,基站数据接收处理系统在每个时间点需要获取到四个超宽带基站的距离数据。
可选地,上述利用预设流式处理框架对至少目标数量个待处理对象进行处理,得到目标定位标签在目标时间时的坐标值可以包括以下步骤:
步骤1,获取各个超宽带定位基站至目标位置的距离信息和各个超宽带定位基站的位置坐标,超宽带定位基站的位置坐标为预设坐标系下的坐标,超宽带定位基站的数量至少为目标数量。
本申请实施例中,通过目标数据包获取到超宽带定位基站至目标位置的距离信息,还需要获取各个超宽带定位基站所在的位置坐标。若要解算定位标签的二维坐标,需要获取至少三个不同位置的超宽带定位基站的位置坐标,若要解算定位标签的三维坐标,需要获取至少四个不同位置的超宽带定位基站的位置坐标,上述位置坐标分别对应二维坐标系、三维坐标系的坐标。
步骤2,利用预设处理方式对距离信息和位置坐标进行处理,得到目标定位标签在目标时间时的坐标值。
上述预设处理方式可以是TOA算法、TDOA算法等。
本申请实施例提供一种提取采集距离信息的时间为目标时间的目标数据包的方法,结合图2所示的步骤,对本申请技术方案作进一步说明。
可选地,步骤S208在第二标识指示的时间信息为目标时间的情况下将第一数据包确定为目标数据包可以包括以下步骤:
步骤1,提取第二标识中的批次计数值,批次计数值用于表示待处理数据包的发送批次,批次计数值相同的待处理数据包的时间信息相同。
本申请实施例中,由于每个基站对于目标时间采集的包含相对距离的数据包的生成时间和发送时的发送时间不可能做到完全同步,即在该目标时间上每个基站数据包的时间戳值并不相等,存在细微差别,且网络传输存在传输延时的现象,因此可以设置批次计数值,用于指示数据包的发送批次,相同批次的数据包表示采集距离信息的时间相同或基本一致。按照数据包中携带的批次计数值确定该数据包的发送批次,即可以确定该数据包采集距离信息的时间,如此一来即可以将同一个批次的数据包筛选出来。
步骤2,将批次计数值为目标计数值的第一数据包确定为目标数据包,批次计数值为目标计数值表示第一数据包的时间信息为目标时间。
本申请实施例中,所要解算坐标值的时间为目标时间,指示采集距离信息的时间为该目标时间的批次计数值即为目标计数值,具有该目标计数值的数据包即为目标数据包。
本申请实施例还提供一种筛选基站状态信息数据包并对两种数据包分流的方法。
可选地,在接收到待处理数据包的情况下提取待处理数据包中携带的第一标识之后,该方法还包括以下步骤:
步骤1,利用第一标识筛选出第二数据包,第二数据包为只包含定位基站的状态信息的待处理数据包。
步骤2,将第一数据包导入第一分区,将第二数据包导入第二分区,第一分区、第二分区为消息中间件中的存储区域。
本申请实施例中,上述消息中间件可以是Apache Kafka。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。Kafka可以将包含超宽带定位基站至目标位置的距离信息的数据包(即第一数据包)导入beacon-info主题分区(即第一分区),将只包含超宽带定位基站的状态信息的数据包(即第二数据包)导入station-info主题分区(即第二分区),上述beacon-info主题分区、station-info主题分区都是Kafka中的存储区域。
可选地,上述消息中间件还可以是LShift的RabbitMQ、Apache的ActiveMQ、阿里的RocketMQ等。
步骤3,在得到目标定位标签的坐标值之后,将目标数据包导入第三分区,第三分区为消息中间件中的存储区域,第三分区用于为消息中间件与下游应用相连接。
本申请实施例中,解算得到定位标签的坐标值之后,为了下游应用能够使用定位标签的坐标值和数据包,可以将包含有解算后标签坐标值的数据包导入Apache Kafka消息中间件的beacon-location-info主题分区中。
可选地,在接收到待处理数据包的情况下提取待处理数据包中携带的第一标识之前,该方法还包括按照如下方式从超宽带定位基站接收待处理数据包:
步骤1,接收定位基站发送的数据传输请求。
步骤2,响应数据传输请求,向定位基站发送确认接收信息。
步骤3,在接收到定位基站发送的响应确认接收信息的二次确认信息的情况下,建立与超宽带定位基站之间的通信连接,开始接收待处理数据包。
本申请实施例中,可以以TCP协议进行通讯,从而接收待处理数据包。
可选地,上述基站数据流接收处理系统可以包括上述数据收集框架、消息中间件及流式处理框架。数据收集框架作为日志采集子系统,用于收集定位基站发送的实时数据流,对接收的数据流进行数据预处理转换并分流操作,并将最终接收处理结果发往下游数据流接收端。消息中间件用于缓存数据收集框架采集的数据流。流式处理框架作为流式处理子系统,用于通过订阅Apache Kafka消息中间件主题,以数据流的方式提取、转换并计算Apache Kafka中缓存的包含定位标签和超宽带定位基站相对距离值的数据序列。
本申请通过数据包中的类型标识和批次标识能够提取到目标时间点包含定位标签与超宽带定位基站相对距离的数据包,使得数据不会混乱且按照相应的时间点(批次)进行数据包归并,解决了数据乱序和数据易丢失的问题,进而能够使得对定位标签坐标值解算时获得更准确的实时坐标。
根据本申请实施例的又一方面,如图3所示,提供了一种定位基站数据流处理装置,包括:第一标识提取模块301,用于在接收到待处理数据包的情况下,提取待处理数据包中携带的第一标识,待处理数据包为定位基站发送的,第一标识用于指示待处理数据包的类型;数据包类型识别模块303,用于利用第一标识筛选出第一数据包,第一数据包为包含定位基站至目标位置的距离信息的待处理数据包;第二标识提取模块305,用于提取第一数据包中携带的第二标识,第二标识用于指示第一数据包的时间信息,同一个定位基站发送的不同待处理数据包中携带的第二标识不同;数据包划分模块307,用于在第二标识指示的时间信息为目标时间的情况下将第一数据包确定为目标数据包,目标时间为定位基站采集与目标位置之间的距离信息的时间。
需要说明的是,该实施例中的第一标识提取模块301可以用于执行本申请实施例中的步骤S202,该实施例中的数据包类型识别模块303可以用于执行本申请实施例中的步骤S204,该实施例中的第二标识提取模块305可以用于执行本申请实施例中的步骤S206,该实施例中的数据包划分模块307可以用于执行本申请实施例中的步骤S208。
此处需要说明的是,上述模块与对应的步骤所实现的示例和应用场景相同,但不限于上述实施例所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在如图1所示的硬件环境中,可以通过软件实现,也可以通过硬件实现。
可选地,该定位基站数据流处理装置,还包括:格式转换模块,用于将目标数据包转换为待处理对象,待处理对象采用预设流式处理框架所支持的数据格式进行编码;坐标值解算模块,用于利用预设流式处理框架对至少目标数量个待处理对象进行处理,得到目标定位标签在目标时间时的坐标值,目标定位标签所在的位置为目标位置,目标数量为要得到坐标值所需的待处理对象的最小数量,坐标值为预设坐标系下的坐标。
可选地,定位基站包括超宽带定位基站,该坐标值解算模块,还用于:获取各个超宽带定位基站至目标位置的距离信息和各个超宽带定位基站的位置坐标,超宽带定位基站的位置坐标为预设坐标系下的坐标,超宽带定位基站的数量至少为目标数量;利用预设处理方式对距离信息和位置坐标进行处理,得到目标定位标签在目标时间时的坐标值。
可选地,该定位基站数据流处理装置,还包括:批次计数值提取模块,用于提取第二标识中的批次计数值,批次计数值用于表示待处理数据包的发送批次,批次计数值相同的待处理数据包的时间信息相同;数据包归并模块,用于将批次计数值为目标计数值的第一数据包确定为目标数据包,批次计数值为目标计数值表示第一数据包的时间信息为目标时间。
可选地,该定位基站数据流处理装置,还包括:第二数据包提取模块,用于利用第一标识筛选出第二数据包,第二数据包为只包含定位基站的状态信息的待处理数据包;数据包分离模块,用于将第一数据包导入第一分区,将第二数据包导入第二分区,第一分区、第二分区为消息中间件中的存储区域;上下游对接模块,用于在得到目标定位标签的坐标值之后,将目标数据包导入第三分区,第三分区为消息中间件中的存储区域,第三分区用于为消息中间件与下游应用相连接。
可选地,该定位基站数据流处理装置,还包括:接收请求模块,用于接收定位基站发送的数据传输请求;响应请求模块,用于响应数据传输请求,向定位基站发送确认接收信息;连接建立模块,用于在接收到定位基站发送的响应确认接收信息的二次确认信息的情况下,建立与定位基站之间的通信连接,开始接收待处理数据包。
根据本申请实施例的又一方面还提供了一种计算机设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述步骤。
上述计算机设备中的存储器、处理器通过通信总线和通信接口进行通信。所述通信总线可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。
存储器可以包括随机存取存储器(Random Access Memory,简称RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processing,简称DSP)、专用集成电路(Application SpecificIntegrated Circuit,简称ASIC)、现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
根据本申请实施例的又一方面还提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质。
可选地,在本申请实施例中,计算机可读介质被设置为存储用于所述处理器执行以下步骤的程序代码:
步骤S202,在接收到待处理数据包的情况下,提取所述待处理数据包中携带的第一标识,待处理数据包为定位基站发送的,第一标识用于指示待处理数据包的类型。
步骤S204,利用第一标识筛选出第一数据包,第一数据包为包含定位基站至目标位置的距离信息的待处理数据包。
步骤S206,提取第一数据包中携带的第二标识,第二标识用于指示第一数据包的时间信息,同一个定位基站发送的不同待处理数据包中携带的第二标识不同。
步骤S208,在第二标识指示的时间信息为目标时间的情况下将第一数据包确定为目标数据包,目标时间为定位基站采集与目标位置之间的距离信息的时间。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
本申请实施例在具体实现时,可以参阅上述各个实施例,具有相应的技术效果。
可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(ApplicationSpecific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable LogicDevice,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。