设备定位方法、装置、计算机设备和存储介质与流程

文档序号:23854198发布日期:2021-02-05 14:56阅读:88来源:国知局
设备定位方法、装置、计算机设备和存储介质与流程

[0001]
本申请涉及无线通信技术领域,特别是涉及一种设备定位方法、装置、计算机设备和存储介质。


背景技术:

[0002]
随着信息技术与无线通信技术的发展,定位技术在人员定位、线上出行、消防救援、物联网等方面有着重要的应用。
[0003]
目前,一般采用tdoa(time difference of arrival,到达时间差)定位技术实现设备定位。tdoa是一种利用时间差进行定位的方法,tdoa算法通过检测设备发出的信号到达各个基站的时间差来确定设备的位置。
[0004]
然而,上述通过tdoa算法对设备定位的方式,设备定位精度较低。


技术实现要素:

[0005]
基于此,有必要针对上述技术问题,提供一种能够提升设备定位精度的设备定位方法、装置、计算机设备和存储介质。
[0006]
第一方面,本申请实施例提供一种设备定位方法,所述方法包括:
[0007]
获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差,所述定位基站系统包括所述主定位基站和至少两个从定位基站;
[0008]
基于所述第一时间差和历史时间差,确定所述第一时间差相较于所述历史时间差的数值波动幅度,所述历史时间差为历史时间段内所述主定位基站和所述第一从定位基站接收到所述目标设备发送的历史定位数据包的时间差;
[0009]
若所述数值波动幅度大于异常波动门限值,则指示所述主定位基站以及所述第一从定位基站测量并上报与所述目标设备之间的距离;
[0010]
基于上报的测量结果对所述目标设备进行定位。
[0011]
在其中一个实施例中,所述历史时间差的数量为多个,所述基于所述第一时间差和历史时间差,确定所述第一时间差相较于所述历史时间差的数值波动幅度,包括:
[0012]
计算所述历史时间差的均值的平方;
[0013]
采用所述第一时间差减去所述均值的平方,得到所述数值波动幅度。
[0014]
在其中一个实施例中,所述历史时间差的数量为多个,所述方法还包括:
[0015]
计算所述第一时间差以及所述历史时间差组成的时间差集合的方差;
[0016]
将所述方差乘以预设系数,得到所述异常波动门限值,其中,所述预设系数为大于1的常数。
[0017]
在其中一个实施例中,所述基于上报的测量结果对所述目标设备进行定位,包括:
[0018]
基于所述主定位基站上报的与所述目标设备之间的第一距离、所述第一从定位基站上报的与所述目标设备之间的第二距离、所述主定位基站的位置和所述第一从定位基站
的位置,确定所述目标设备的多个候选定位位置;
[0019]
获取所述主定位基站和所述定位基站系统中的第二从定位基站接收到所述定位数据包的第二时间差;
[0020]
根据所述第二时间差以及所述第二从定位基站的位置,从所述多个候选定位位置中确定出所述目标设备的定位位置。
[0021]
在其中一个实施例中,所述根据所述第二时间差以及所述第二从定位基站的位置,从所述多个候选定位位置中确定出所述目标设备的定位位置,包括:
[0022]
根据所述多个候选定位位置和所述第二从定位基站的位置,计算各所述候选定位位置与所述第二从定位基站之间的目标距离;
[0023]
将各所述目标距离分别与所述第一距离相减,得到各所述候选定位位置对应的目标距离差值;
[0024]
根据所述第二时间差获取所述第二从定位基站与所述主定位基站之间的参考距离差值,并将各所述目标距离差值中与所述参考距离差值之间的差值最小的目标距离差值作为所述目标设备的定位位置。
[0025]
在其中一个实施例中,所述基于上报的测量结果对所述目标设备进行定位之后,所述方法还包括:
[0026]
根据所述目标设备的定位位置、所述主定位基站的位置和所述第一从定位基站的位置,获取所述主定位基站和所述第一从定位基站接收到所述定位数据包的校准时间差;
[0027]
在将来时刻对所述目标设备进行定位的过程中,将所述校准时间差作为将来时刻对应的历史时间差。
[0028]
在其中一个实施例中,所述方法还包括:
[0029]
若所述数值波动幅度小于或者等于所述异常波动门限值,则获取所述主定位基站和所述定位基站系统中的第二从定位基站接收到所述定位数据包的第三时间差,并获取所述第一从定位基站和所述第二从定位基站接收到所述定位数据包的第四时间差;
[0030]
根据所述第一时间差、所述第三时间差、所述第四时间差、所述主定位基站的位置、所述第一从定位基站的位置以及所述第二从定位基站的位置,测量所述目标设备的定位位置。
[0031]
第二方面,本申请实施例提供一种设备定位装置,所述装置包括:
[0032]
第一获取模块,用于获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差,所述定位基站系统包括所述主定位基站和至少两个从定位基站;
[0033]
确定模块,用于基于所述第一时间差和历史时间差,确定所述第一时间差相较于所述历史时间差的数值波动幅度,所述历史时间差为历史时间段内所述主定位基站和所述第一从定位基站接收到所述目标设备发送的历史定位数据包的时间差;
[0034]
指示模块,用于若所述数值波动幅度大于异常波动门限值,则指示所述主定位基站以及所述第一从定位基站测量并上报与所述目标设备之间的距离;
[0035]
第一定位模块,用于基于上报的测量结果对所述目标设备进行定位。
[0036]
第三方面,本申请实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面的方法的步
骤。
[0037]
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。
[0038]
本申请实施例提供的技术方案带来的有益效果至少包括:
[0039]
上述设备定位方法、装置、计算机设备和存储介质,通过获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差,而后,基于该第一时间差和历史时间差,确定该第一时间差相较于历史时间差的数值波动幅度,其中,该历史时间差为历史时间段内主定位基站和第一从定位基站接收到目标设备发送的历史定位数据包的时间差;若该数值波动幅度大于异常波动门限值,则表征第一时间差相较于历史时间差出现了较大幅度的异常波动,即第一时间差存在异常,而由于tdoa算法正是基于时间差进行设备定位的,因此,在第一时间差存在异常的情况下,本申请实施例并不采用tdoa算法对目标设备定位,而是指示主定位基站以及第一从定位基站测量并上报与目标设备之间的距离,并基于上报的测量结果对目标设备进行定位,这就避免了在第一时间差存在异常的情况下,采用tdoa算法基于异常的第一时间差进行定位导致的目标设备的定位精度低的问题,本申请实施例提升了目标设备的定位精度。
附图说明
[0040]
图1为一个实施例中设备定位方法的应用环境图;
[0041]
图2为一个实施例中设备定位方法的流程示意图;
[0042]
图3为一个实施例中步骤202的流程示意图;
[0043]
图4为一个实施例中服务器基于上报的测量结果对目标设备进行定位的流程示意图;
[0044]
图5为一种示例性地目标设备的多个候选定位位置的示意图;
[0045]
图6为一个实施例中步骤403的流程示意图;
[0046]
图7为一个实施例中设备定位方法的流程示意图;
[0047]
图8为一个实施例中设备定位方法的流程示意图;
[0048]
图9为一种示例性地tdoa定位基站系统的示意图;
[0049]
图10为一个实施例中设备定位装置的结构框图;
[0050]
图11为一个实施例中计算机设备的内部结构图。
具体实施方式
[0051]
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0052]
tdoa是一种利用时间差进行定位的方法。通过比较待定位的设备发出的数据包到达各个定位基站的绝对时间差,就能作出以各定位基站为焦点,距离差为长轴的双曲线,双曲线的交点就是该设备的位置。
[0053]
在理想空旷的环境中,tdoa算法能获得较高的精度。然而,有遮挡的环境中,tdoa的定位精度并不能有效保证。一方面是由于电磁波多径传输的特性,会导致待定位的设备
发出的数据包(blink包)到达主从定位基站的时间差出现偏差,从而导致tdoa对该设备的定位结果不准确,定位精度低。另一方面,当定位基站接收到数据包时,在接收场强较弱时,定位基站的uwb芯片会延迟识别甚至无法识别出接收到的数据包,因此,定位基站上报的数据包的接收时间不准确,导致时间差出现偏差,进而影响tdoa的定位精度。
[0054]
鉴于此,本申请实施例提出了一种设备定位方法,在该方法中,通过获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差,而后,基于该第一时间差和历史时间差,确定该第一时间差相较于历史时间差的数值波动幅度,其中,该历史时间差为历史时间段内主定位基站和第一从定位基站接收到目标设备发送的历史定位数据包的时间差;若该数值波动幅度大于异常波动门限值,则表征第一时间差相较于历史时间差出现了较大幅度的异常波动,即第一时间差存在异常,而由于tdoa算法正是基于时间差进行设备定位的,因此,在第一时间差存在异常的情况下,本申请实施例并不采用tdoa算法对目标设备定位,而是指示主定位基站以及第一从定位基站测量并上报与目标设备之间的距离,并基于上报的测量结果对目标设备进行定位,这就避免了在第一时间差存在异常的情况下,采用tdoa算法基于异常的第一时间差进行定位导致的目标设备的定位精度低的问题,本申请实施例提升了目标设备的定位精度。
[0055]
下面,将对本申请实施例提供的设备定位方法所涉及到的实施环境进行简要说明。
[0056]
如图1所示,该实施环境可以包括主定位基站101、至少两个从定位基站(图1仅示例性地示出了两个从定位基站:第一从定位基站102和第二从定位基站103)、服务器104以及目标设备105。其中,服务器104可以通过有线或者无线网络与主定位基站101、第一从定位基站102以及第二从定位基站103通信,目标设备105可以通过有线或者无线网络与主定位基站101、第一从定位基站102以及第二从定位基站103通信。
[0057]
其中,服务器104可以是一台服务器,也可以是由多台服务器组成的服务器集群,服务器104可以是塔式服务器、机架服务器、刀片式服务器、高密度服务器、单路服务器、双路服务器或者多路服务器等,本申请实施例对服务器104的类型不作具体限定。目标设备105可以是智能手机、笔记本电脑、平板电脑、便携式可穿戴设备、智能眼镜、智能机器人、车载设备,等等,本申请实施例对目标设备105的类型也不作具体限定。
[0058]
在一个实施例中,如图2所示,提供了一种设备定位方法,以该方法应用于图1中的服务器为例进行说明,该方法包括步骤201、步骤202、步骤203和步骤204:
[0059]
步骤201,服务器获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差。
[0060]
本申请实施例中,定位基站系统包括主定位基站和至少两个从定位基站,第一从定位基站可以是该定位基站系统中的任意一个从定位基站。目标设备处于定位基站系统的覆盖范围内,服务器则可以基于定位基站系统对该目标设备进行位置定位。
[0061]
作为一种实施方式,目标设备可以定期向定位基站系统中的各个定位基站发送定位数据包,目标设备每发送一次定位数据包,则触发一次服务器对该目标设备的定位过程,该定位数据包括可以是blink包。
[0062]
主定位基站接收到该定位数据包后,则将该定位数据包的标识以及其接收到该定位数据包的接收时间戳发送至服务器。第一从定位基站接收到该定位数据包后,也将该定
位数据包的标识以及其接收到该定位数据包的接收时间戳发送至服务器。其中,定位数据包的标识可以是定位数据包的包序号,和/或,定位数据包的唯一标识字符串。
[0063]
服务器接收到主定位基站发送的定位数据包的标识、接收时间戳以及第一从定位基站发送的定位数据包的标识、接收时间戳后,服务器将该第一从定位基站发送的接收时间戳校正为主定位基站的时间后,则可以得到主定位基站和第一从定位基站接收到该定位数据包的第一时间差,第一时间差为该定位数据包到达主定位基站与到达第一从定位基站的到达时间差。
[0064]
在一种可能的实施方式中,服务器可以基于主定位基站和第一从定位基站之间的时钟差动态变化过程,通过卡尔曼滤波拟合出主定位基站和第一从定位基站之间的时钟差变化趋势曲线。服务器接收到主定位基站发送的定位数据包的标识、接收时间戳以及第一从定位基站发送的定位数据包的标识、接收时间戳后,服务器则可以通过该时钟差变化趋势曲线确定第一从定位基站和主定位基站之间的时钟差,进而根据该时钟差将该第一从定位基站发送的接收时间戳校正为主定位基站的时间,以使第二从定位基站和主定位基站之间的时间同步。
[0065]
作为一种实施方式,主定位基站可以通过空口定期发送ccp广播包,主定位基站发送ccp广播包的同时,主定位基站也将该ccp广播包的序号及当前主定位基站的时间戳发送至服务器。第一从定位基站接收到主定位基站发送的该ccp广播包后,则将该ccp广播包的序号及当前第一从定位基站的时间戳发送至服务器。服务器根据二者的时间戳则可以得到二者之间的上报时间戳差值。进一步地,服务器根据主定位基站的位置以及第一从定位基站的位置则得到主定位基站和第一从定位基站之间的直线距离,采用该直线距离除以光速则得到二者之间的参考时间戳差值,服务器将该上报时间戳差值和参考时间戳差值进行对比,则可以得出当前主定位基站和第一从定位基站之间的时钟差。这样,服务器根据各个ccp广播包对应的时钟差则可以拟合出主定位基站和第一从定位基站之间的时钟差变化趋势曲线。
[0066]
步骤202,服务器基于第一时间差和历史时间差,确定第一时间差相较于历史时间差的数值波动幅度。
[0067]
本申请实施例中,对于每个定位数据包,服务器都会得到主定位基站和第一从定位基站接收到当前定位数据包的时间差。历史时间差即为历史时间段内主定位基站和第一从定位基站接收到目标设备发送的历史定位数据包的时间差。
[0068]
在一种可能的实施方式中,服务器可以采用表1所示的形式,记录历史时间段内主定位基站和第一从定位基站接收到目标设备发送的历史定位数据包的时间差。
[0069]
表1
[0070]
包序号时间差1历史时间差12历史时间差23历史时间差3
…………
[0071]
服务器获取到第一时间差后,则从表1中读取最近记录的历史时间差,该历史时间差的数量可以为多个,例如读取最近记录的100个历史时间差。服务器通过分析第一时间差
和历史时间差之间的差异,则可确定该第一时间差是否存在异常波动。
[0072]
在步骤202一种可能的实施方式中,参见图3,服务器可以通过执行如图3所示的步骤2021和步骤2022实现步骤202的过程:
[0073]
步骤2021,服务器计算历史时间差的均值的平方。
[0074]
步骤2022,服务器采用第一时间差减去均值的平方,得到数值波动幅度。
[0075]
以历史时间差是100个为例,服务器读取到100个历史时间差之后,计算这100个历史时间差的均值,然后再计算该均值的平方。服务器采用第一时间差减去均值的平方,则得到数值波动幅度。
[0076]
在步骤202另一种可能的实施方式中,服务器还可以根据第一时间差和历史时间差的方差确定第一时间差相较于历史时间差的数值波动幅度,在此不做具体限制。
[0077]
可以理解的是,正常情况下,一段时间内主定位基站和第一从定位基站接收到目标设备发送的定位数据包的时间差是相对稳定的,即第一时间差相较于历史时间差不会出现较大的波动。而若定位数据包在传输过程中存在多径传输等其它特殊情况,那么第一时间差相较于历史时间差则会出现跳动,本申请实施例通过确定第一时间差相较于历史时间差的数值波动幅度,然后,将该数值波动幅度与异常波动门限值进行对比,则可以检测出第一时间差是否存在“跳动”的情况,即检测出第一时间差是否存在异常。
[0078]
步骤203,若数值波动幅度大于异常波动门限值,服务器则指示主定位基站以及第一从定位基站测量并上报与目标设备之间的距离。
[0079]
服务器基于第一时间差和历史时间差,确定第一时间差相较于历史时间差的数值波动幅度后,检测该数值波动幅度是否大于异常波动门限值。
[0080]
在一种可能的实施方式中,服务器可以通过执行如下步骤a1和步骤a2来获取异常波动门限值:
[0081]
步骤a1,服务器计算第一时间差以及历史时间差组成的时间差集合的方差。
[0082]
继续以历史时间差是100个为例,服务器可以通过如下公式1计算第一时间差以及历史时间差组成的时间差集合的方差s2:
[0083][0084]
其中,x1、x2、...、x
100
为100个历史时间差,为100个历史时间差的均值,服务器则得到第一时间差以及历史时间差组成的时间差集合的方差。
[0085]
步骤a2,服务器将方差乘以预设系数,得到异常波动门限值。
[0086]
其中,预设系数为大于1的常数,例如,服务器可以将方差乘以1.5,则得到异常波动门限值。
[0087]
可以理解的是,服务器每获取到一个主定位基站和第一从定位基站接收到定位数据包的时间差,都会得到一个新的异常波动门限值,异常波动门限值动态调整,可以自动适配不同的定位场景。
[0088]
若数值波动幅度大于异常波动门限值,则表征第一时间差相较于历史时间差出现了较大幅度的异常波动,即第一时间差存在异常,而由于tdoa算法正是基于时间差进行设备定位的,因此,在第一时间差存在异常的情况下,本申请实施例并不采用tdoa算法对目标设备定位,而是指示主定位基站以及第一从定位基站测量并上报与目标设备之间的距离,
并基于上报的测量结果对目标设备进行定位。
[0089]
作为一种实施方式,服务器若检测到数值波动幅度大于异常波动门限值,可以向主定位基站和第一从定位基站分别发送测距指令,测距指令用于指示主定位基站以及第一从定位基站测量并上报与目标设备之间的距离。
[0090]
主定位基站接收到测距指令后,可以通过tof(time of flight,飞行时间)测距的方式,测量主定位基站和目标设备之间的距离。tof是通过给目标物连续发送光脉冲,然后用传感器接收从目标物返回的光,通过探测光脉冲的飞行(往返)时间来得到与目标物之间的距离。同样地,第一从定位基站接收到测距指令后,也可以通过tof(time of flight,飞行时间)测距的方式,测量第一从定位基站和目标设备之间的距离。
[0091]
步骤204,服务器基于上报的测量结果对目标设备进行定位。
[0092]
服务器基于上报的测量结果,测量结果即主定位基站上报的主定位基站和目标设备之间的距离以及第一从定位基站上报的第一从定位基站和目标设备之间的距离,对目标设备进行定位。
[0093]
服务器中存储有定位基站系统中的各个定位基站的位置坐标。在一种可能的实施方式中,服务器可以将目标设备的定位位置作为未知量,根据主定位基站的位置坐标、第一从定位基站的位置坐标、目标设备的定位位置(未知量)以及上述测量结果建立方程组,然后对方程组进行求解;一般情况两个定位基站会得到两个坐标解,服务器可以根据定位基站系统中第二从定位基站的位置坐标以及主定位基站和该第二从定位基站接收到目标设备发送的定位数据包的时间差,从两个坐标解中确定出目标设备的唯一坐标解,即得到目标设备的定位位置。
[0094]
在另一种可能的实施方式中,服务器指示主定位基站以及第一从定位基站测量并上报与目标设备之间的距离的同时,还可以指示第二从定位基站测量并上报与目标设备之间的距离,这样,服务器根据上报的三个距离、主定位基站的位置坐标、第一从定位基站的位置坐标以及第二从定位基站的位置坐标,则可以建立三个方程,对方程组进行求解,则直接得到目标设备的定位位置。
[0095]
本申请实施例通过获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差,而后,基于该第一时间差和历史时间差,确定该第一时间差相较于历史时间差的数值波动幅度,其中,该历史时间差为历史时间段内主定位基站和第一从定位基站接收到目标设备发送的历史定位数据包的时间差;若该数值波动幅度大于异常波动门限值,则表征第一时间差相较于历史时间差出现了较大幅度的异常波动,即第一时间差存在异常,而由于tdoa算法正是基于时间差进行设备定位的,因此,在第一时间差存在异常的情况下,本申请实施例并不采用tdoa算法对目标设备定位,而是指示主定位基站以及第一从定位基站测量并上报与目标设备之间的距离,并基于上报的测量结果对目标设备进行定位,这就避免了在第一时间差存在异常的情况下,采用tdoa算法基于异常的第一时间差进行定位导致的目标设备的定位精度低的问题,本申请实施例提升了目标设备的定位精度。
[0096]
在一个实施例中,基于上述图2所示的实施例,本实施例涉及的是服务器如何基于上报的测量结果对目标设备进行定位的过程。参见图4,服务器可以通过执行如图4所示的步骤401、步骤402和步骤403,实现基于上报的测量结果对目标设备进行定位的过程。
[0097]
步骤401,服务器基于主定位基站上报的与目标设备之间的第一距离、第一从定位基站上报的与目标设备之间的第二距离、主定位基站的位置和第一从定位基站的位置,确定目标设备的多个候选定位位置。
[0098]
服务器基于第一距离、第二距离、主定位基站的位置和第一从定位基站的位置,建立方程组,并对建立的方程组进行求解,得到目标设备的多个候选定位位置。
[0099]
本申请实施例中,服务器中存储有定位基站系统中各个定位基站的实际位置。假设采用(x1,y1)表示主定位基站的位置坐标,采用(x2,y2)表示第一从定位基站的位置坐标,采用(x
i
,y
i
)表示目标设备的位置坐标,第一距离采用d1表示,第二距离采用d2表示,由此,服务器可以建立如下方程组:
[0100][0101][0102]
服务器求解该方程组,则得到(x
i
,y
i
)的两个解:(x

i
,y

i
)和(x

i
,y

i
)。
[0103]
参见图5,图5为一种示例性地目标设备的多个候选定位位置的示意图。如图5所示,服务器基于第一距离d1、第二距离d2、主定位基站的位置(x1,y1)和第一从定位基站的位置(x2,y2),确定目标设备的候选定位位置(x

i
,y

i
)(如图5中“解1”)以及候选定位位置(x

i
,y

i
)(如图5中“解2”)。
[0104]
步骤402,服务器获取主定位基站和定位基站系统中的第二从定位基站接收到定位数据包的第二时间差。
[0105]
目标设备可以定期向定位基站系统中的各个定位基站发送定位数据包,服务器获取主定位基站和定位基站系统中的第二从定位基站接收到定位数据包的第二时间差的方式可以参见步骤201的实施过程,在此不再赘述。
[0106]
步骤403,服务器根据第二时间差以及第二从定位基站的位置,从多个候选定位位置中确定出目标设备的定位位置。
[0107]
可以理解的是,步骤401中得到的多个候选定位位置中仅有一个候选定位位置为目标设备的定位位置。服务器根据第二时间差以及第二从定位基站的位置,从多个候选定位位置中确定出目标设备的定位位置。
[0108]
在步骤403一种可能的实施方式中,参见图6,步骤403可以包括如图6所示的步骤4031、步骤4032和步骤4033:
[0109]
步骤4031,服务器根据多个候选定位位置和第二从定位基站的位置,计算各候选定位位置与第二从定位基站之间的目标距离。
[0110]
假设采用(x3,y3)表示第二从定位基站的位置坐标,候选定位位置(x

i
,y

i
)与第二从定位基站之间的目标距离d
′3可以通过如下公式2计算得到:
[0111][0112]
候选定位位置(x

i
,y

i
)与第二从定位基站之间的目标距离d
″3可以通过如下公式3计算得到:
[0113][0114]
步骤4032,服务器将各目标距离分别与第一距离相减,得到各候选定位位置对应
的目标距离差值。
[0115]
服务器将d
′3与第一距离相减,得到候选定位位置(x

i
,y

i
)对应的目标距离差值,将d
″3与第一距离相减,得到候选定位位置(x

i
,y

i
)对应的目标距离差值。
[0116]
步骤4033,服务器根据第二时间差获取第二从定位基站与主定位基站之间的参考距离差值,并将各目标距离差值中与参考距离差值之间的差值最小的目标距离差值作为目标设备的定位位置。
[0117]
服务器采用第二时间差乘以光速得到第二从定位基站与主定位基站之间的参考距离差值,服务器计算d
′3和参考距离差值的差值、计算d
″3和参考距离差值的差值,并将d
′3和d
″3中与参考距离差值之间的差值最小的目标距离差值作为目标设备的定位位置,从而实现对目标设备的定位。
[0118]
这样,在数值波动幅度大于异常波动门限值的情况下,服务器则不采用tdoa算法对目标设备定位,而是指示主定位基站以及第一从定位基站基于tof测量并上报与目标设备之间的距离,服务器根据上报的测量结果对目标设备进行定位,从而能够有效减小tdoa偶发性的到达时间差数据波动对定位精度的影响,系统r95的定位精度得到有效提升。
[0119]
在一个实施例中,基于上述如2所示的实施例,参见图7,本实施例涉及的是在数值波动幅度大于异常波动门限值的情况下,服务器对第一时间差进行校正的过程。如图7所示,本实施例设备定位方法还包括步骤205和步骤206:
[0120]
步骤205,服务器根据目标设备的定位位置、主定位基站的位置和第一从定位基站的位置,获取主定位基站和第一从定位基站接收到定位数据包的校准时间差。
[0121]
服务器基于上报的测量结果对目标设备进行定位,得到目标设备的定位位置后,服务器根据目标设备的定位位置、主定位基站的位置和第一从定位基站的位置,获取主定位基站和第一从定位基站接收到定位数据包的校准时间差。
[0122]
在一种可能的实施方式中,服务器根据目标设备的定位位置和主定位基站的位置,则可以得到目标设备和主定位基站之间的计算距离,服务器根据目标设备的定位位置和第一从定位基站的位置,则可以得到目标设备和第一从定位基站之间的计算距离。服务器将该两个计算距离相减,并采用相减结果除以光速,则得到校准时间差。
[0123]
步骤206,服务器在将来时刻对目标设备进行定位的过程中,将校准时间差作为将来时刻对应的历史时间差。
[0124]
由于数值波动幅度大于异常波动门限值,即第一时间差存在异常,因此,服务器将校准时间差作为该定位数据包对应的时间差。服务器在将来时刻对目标设备进行定位的过程中,则可以采用校准时间差代替第一时间差作为将来时刻对应的历史时间差,这样,提升了将来时刻对目标设备进行定位的过程中历史时间差的准确性,从而进一步提升了定位精度。
[0125]
在一个实施例中,基于上述图2所示的实施例,参见图8,本实施例涉及的是在数值波动幅度小于或者等于异常波动门限值的情况下,服务器如何对目标设备进行定位的过程。如图8所示,本实施例设备定位方法还包括步骤207和步骤208:
[0126]
步骤207,服务器若数值波动幅度小于或者等于异常波动门限值,则获取主定位基站和定位基站系统中的第二从定位基站接收到定位数据包的第三时间差,并获取第一从定位基站和第二从定位基站接收到定位数据包的第四时间差。
[0127]
本申请实施例中,服务器获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差,基于第一时间差和历史时间差,确定第一时间差相较于历史时间差的数值波动幅度,检测该数值波动幅度是否大于异常波动门限值。
[0128]
若数值波动幅度小于或者等于异常波动门限值,则表征第一时间差相较于历史时间差比较平稳,未出现跳动的情况,即第一时间差比较准确,未存在明显异常,这种情况下服务器采用tdoa算法对目标设备进行定位。
[0129]
服务器获取主定位基站和定位基站系统中的第二从定位基站接收到定位数据包的第三时间差,并获取第一从定位基站和第二从定位基站接收到定位数据包的第四时间差,服务器获取第三时间差和第四时间差的方式可以参见上述步骤201的实施过程,在此不再赘述。
[0130]
步骤208,服务器根据第一时间差、第三时间差、第四时间差、主定位基站的位置、第一从定位基站的位置以及第二从定位基站的位置,测量目标设备的定位位置。
[0131]
服务器根据第一时间差、第三时间差、第四时间差、主定位基站的位置、第一从定位基站的位置以及第二从定位基站的位置,建立包括三个方程式的方程组,对建立的方程组求解,得到目标设备的定位位置。
[0132]
参见图9,图9为一种示例性地tdoa定位基站系统的示意图。该定位基站系统包括主定位基站和至少两个从定位基站,图9所示的第一从定位基站和第二从定位基站为定位基站系统中任意的从定位基站。
[0133]
假设第一时间差为t
1-t2,第三时间差为t
1-t3,第四时间差为t
2-t3,采用(x1,y1)表示主定位基站的位置坐标,采用(x2,y2)表示第一从定位基站的位置坐标,采用(x3,y3)表示第二从定位基站的位置坐标,采用(x
i
,y
i
)表示目标设备的位置坐标,那么,服务器可以建立如下的方程组:
[0134][0135][0136][0137]
服务器对该方程求解,则得到(x
i
,y
i
),即目标设备的位置坐标,实现对目标设备的定位。
[0138]
tof测距方法属于双向测距技术,主要利用信号在两个异步收发机(或被反射面)之间往返的飞行时间来测量节点间的距离。主定位基站和从定位基站测距时需要目标设备与主从定位基站之间双向交互,对设备性能及空口中的负载都会造成较大压力。
[0139]
本申请实施例中,若数值波动幅度大于异常波动门限值,则不采用tdoa算法对目标设备定位,而是指示主定位基站以及第一从定位基站基于tof测量并上报与目标设备之间的距离,服务器根据上报的测量结果对目标设备进行定位。而在数值波动幅度小于或者等于异常波动门限值的情况下,服务器则采用tdoa算法对目标设备定位,这样,在时间差没有异常跳动的情况下,采用tdoa算法不会对设备性能及空口中的负载造成较大压力,而只有在时间差存在异常跳动的情况下,才采用基于tof测距的方式对目标设备定位,从而能有
效减小tdoa偶发性的到达时间差数据波动对定位精度的影响。另外,只有在时间差存在异常跳动的情况下,才采用基于tof测距的方式对目标设备定位,在提升定位精度的同时确保系统的稳定性。
[0140]
应该理解的是,虽然图2-9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-9中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0141]
在一个实施例中,如图10所示,提供了一种设备定位装置,包括:
[0142]
第一获取模块10,用于获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差,所述定位基站系统包括所述主定位基站和至少两个从定位基站;
[0143]
确定模块20,用于基于所述第一时间差和历史时间差,确定所述第一时间差相较于所述历史时间差的数值波动幅度,所述历史时间差为历史时间段内所述主定位基站和所述第一从定位基站接收到所述目标设备发送的历史定位数据包的时间差;
[0144]
指示模块30,用于若所述数值波动幅度大于异常波动门限值,则指示所述主定位基站以及所述第一从定位基站测量并上报与所述目标设备之间的距离;
[0145]
第一定位模块40,用于基于上报的测量结果对所述目标设备进行定位。
[0146]
在一个实施例中,所述历史时间差的数量为多个,所述确定模块20具体用于计算所述历史时间差的均值的平方;采用所述第一时间差减去所述均值的平方,得到所述数值波动幅度。
[0147]
在一个实施例中,所述历史时间差的数量为多个,所述装置还包括:
[0148]
方差计算模块,用于计算所述第一时间差以及所述历史时间差组成的时间差集合的方差;
[0149]
设置模块,用于将所述方差乘以预设系数,得到所述异常波动门限值,其中,所述预设系数为大于1的常数。
[0150]
在一个实施例中,第一定位模块40,包括:
[0151]
第一确定单元,用于基于所述主定位基站上报的与所述目标设备之间的第一距离、所述第一从定位基站上报的与所述目标设备之间的第二距离、所述主定位基站的位置和所述第一从定位基站的位置,确定所述目标设备的多个候选定位位置;
[0152]
获取单元,用于获取所述主定位基站和所述定位基站系统中的第二从定位基站接收到所述定位数据包的第二时间差;
[0153]
第二确定单元,用于根据所述第二时间差以及所述第二从定位基站的位置,从所述多个候选定位位置中确定出所述目标设备的定位位置。
[0154]
在一个实施例中,所述第二确定单元具体用于根据所述多个候选定位位置和所述第二从定位基站的位置,计算各所述候选定位位置与所述第二从定位基站之间的目标距离;将各所述目标距离分别与所述第一距离相减,得到各所述候选定位位置对应的目标距离差值;根据所述第二时间差获取所述第二从定位基站与所述主定位基站之间的参考距离
差值,并将各所述目标距离差值中与所述参考距离差值之间的差值最小的目标距离差值作为所述目标设备的定位位置。
[0155]
在一个实施例中,所述装置还包括:
[0156]
第二获取模块,用于根据所述目标设备的定位位置、所述主定位基站的位置和所述第一从定位基站的位置,获取所述主定位基站和所述第一从定位基站接收到所述定位数据包的校准时间差;
[0157]
校准模块,用于在将来时刻对所述目标设备进行定位的过程中,将所述校准时间差作为将来时刻对应的历史时间差。
[0158]
在一个实施例中,所述装置还包括:
[0159]
第三获取模块,用于若所述数值波动幅度小于或者等于所述异常波动门限值,则获取所述主定位基站和所述定位基站系统中的第二从定位基站接收到所述定位数据包的第三时间差,并获取所述第一从定位基站和所述第二从定位基站接收到所述定位数据包的第四时间差;
[0160]
第二定位模块,用于根据所述第一时间差、所述第三时间差、所述第四时间差、所述主定位基站的位置、所述第一从定位基站的位置以及所述第二从定位基站的位置,测量所述目标设备的定位位置。
[0161]
关于设备定位装置的具体限定可以参见上文中对于设备定位方法的限定,在此不再赘述。上述设备定位装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0162]
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图11所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储设备定位数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种设备定位方法。
[0163]
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0164]
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
[0165]
获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差,所述定位基站系统包括所述主定位基站和至少两个从定位基站;
[0166]
基于所述第一时间差和历史时间差,确定所述第一时间差相较于所述历史时间差的数值波动幅度,所述历史时间差为历史时间段内所述主定位基站和所述第一从定位基站接收到所述目标设备发送的历史定位数据包的时间差;
[0167]
若所述数值波动幅度大于异常波动门限值,则指示所述主定位基站以及所述第一
从定位基站测量并上报与所述目标设备之间的距离;
[0168]
基于上报的测量结果对所述目标设备进行定位。
[0169]
在一个实施例中,所述历史时间差的数量为多个,该处理器执行计算机程序时还实现以下步骤:
[0170]
计算所述历史时间差的均值的平方;
[0171]
采用所述第一时间差减去所述均值的平方,得到所述数值波动幅度。
[0172]
在一个实施例中,所述历史时间差的数量为多个,该处理器执行计算机程序时还实现以下步骤:
[0173]
计算所述第一时间差以及所述历史时间差组成的时间差集合的方差;
[0174]
将所述方差乘以预设系数,得到所述异常波动门限值,其中,所述预设系数为大于1的常数。
[0175]
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:
[0176]
基于所述主定位基站上报的与所述目标设备之间的第一距离、所述第一从定位基站上报的与所述目标设备之间的第二距离、所述主定位基站的位置和所述第一从定位基站的位置,确定所述目标设备的多个候选定位位置;
[0177]
获取所述主定位基站和所述定位基站系统中的第二从定位基站接收到所述定位数据包的第二时间差;
[0178]
根据所述第二时间差以及所述第二从定位基站的位置,从所述多个候选定位位置中确定出所述目标设备的定位位置。
[0179]
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:
[0180]
根据所述多个候选定位位置和所述第二从定位基站的位置,计算各所述候选定位位置与所述第二从定位基站之间的目标距离;
[0181]
将各所述目标距离分别与所述第一距离相减,得到各所述候选定位位置对应的目标距离差值;
[0182]
根据所述第二时间差获取所述第二从定位基站与所述主定位基站之间的参考距离差值,并将各所述目标距离差值中与所述参考距离差值之间的差值最小的目标距离差值作为所述目标设备的定位位置。
[0183]
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:
[0184]
根据所述目标设备的定位位置、所述主定位基站的位置和所述第一从定位基站的位置,获取所述主定位基站和所述第一从定位基站接收到所述定位数据包的校准时间差;
[0185]
在将来时刻对所述目标设备进行定位的过程中,将所述校准时间差作为将来时刻对应的历史时间差。
[0186]
在一个实施例中,该处理器执行计算机程序时还实现以下步骤:
[0187]
若所述数值波动幅度小于或者等于所述异常波动门限值,则获取所述主定位基站和所述定位基站系统中的第二从定位基站接收到所述定位数据包的第三时间差,并获取所述第一从定位基站和所述第二从定位基站接收到所述定位数据包的第四时间差;
[0188]
根据所述第一时间差、所述第三时间差、所述第四时间差、所述主定位基站的位置、所述第一从定位基站的位置以及所述第二从定位基站的位置,测量所述目标设备的定位位置。
[0189]
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
[0190]
获取定位基站系统中的主定位基站和第一从定位基站接收到待定位的目标设备发送的定位数据包的第一时间差,所述定位基站系统包括所述主定位基站和至少两个从定位基站;
[0191]
基于所述第一时间差和历史时间差,确定所述第一时间差相较于所述历史时间差的数值波动幅度,所述历史时间差为历史时间段内所述主定位基站和所述第一从定位基站接收到所述目标设备发送的历史定位数据包的时间差;
[0192]
若所述数值波动幅度大于异常波动门限值,则指示所述主定位基站以及所述第一从定位基站测量并上报与所述目标设备之间的距离;
[0193]
基于上报的测量结果对所述目标设备进行定位。
[0194]
在一个实施例中,所述历史时间差的数量为多个,计算机程序被处理器执行时还实现以下步骤:
[0195]
计算所述历史时间差的均值的平方;
[0196]
采用所述第一时间差减去所述均值的平方,得到所述数值波动幅度。
[0197]
在一个实施例中,所述历史时间差的数量为多个,计算机程序被处理器执行时还实现以下步骤:
[0198]
计算所述第一时间差以及所述历史时间差组成的时间差集合的方差;
[0199]
将所述方差乘以预设系数,得到所述异常波动门限值,其中,所述预设系数为大于1的常数。
[0200]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0201]
基于所述主定位基站上报的与所述目标设备之间的第一距离、所述第一从定位基站上报的与所述目标设备之间的第二距离、所述主定位基站的位置和所述第一从定位基站的位置,确定所述目标设备的多个候选定位位置;
[0202]
获取所述主定位基站和所述定位基站系统中的第二从定位基站接收到所述定位数据包的第二时间差;
[0203]
根据所述第二时间差以及所述第二从定位基站的位置,从所述多个候选定位位置中确定出所述目标设备的定位位置。
[0204]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0205]
根据所述多个候选定位位置和所述第二从定位基站的位置,计算各所述候选定位位置与所述第二从定位基站之间的目标距离;
[0206]
将各所述目标距离分别与所述第一距离相减,得到各所述候选定位位置对应的目标距离差值;
[0207]
根据所述第二时间差获取所述第二从定位基站与所述主定位基站之间的参考距离差值,并将各所述目标距离差值中与所述参考距离差值之间的差值最小的目标距离差值作为所述目标设备的定位位置。
[0208]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0209]
根据所述目标设备的定位位置、所述主定位基站的位置和所述第一从定位基站的位置,获取所述主定位基站和所述第一从定位基站接收到所述定位数据包的校准时间差;
[0210]
在将来时刻对所述目标设备进行定位的过程中,将所述校准时间差作为将来时刻对应的历史时间差。
[0211]
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
[0212]
若所述数值波动幅度小于或者等于所述异常波动门限值,则获取所述主定位基站和所述定位基站系统中的第二从定位基站接收到所述定位数据包的第三时间差,并获取所述第一从定位基站和所述第二从定位基站接收到所述定位数据包的第四时间差;
[0213]
根据所述第一时间差、所述第三时间差、所述第四时间差、所述主定位基站的位置、所述第一从定位基站的位置以及所述第二从定位基站的位置,测量所述目标设备的定位位置。
[0214]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
[0215]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0216]
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1