CN111044050B - 一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法 - Google Patents

一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法 Download PDF

Info

Publication number
CN111044050B
CN111044050B CN201911400758.3A CN201911400758A CN111044050B CN 111044050 B CN111044050 B CN 111044050B CN 201911400758 A CN201911400758 A CN 201911400758A CN 111044050 B CN111044050 B CN 111044050B
Authority
CN
China
Prior art keywords
particle
beacon
tag
information
current
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911400758.3A
Other languages
English (en)
Other versions
CN111044050A (zh
Inventor
吴春
冯帆
陈军慧
王士朋
范飞军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
CETHIK Group Ltd
Original Assignee
CETHIK Group Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by CETHIK Group Ltd filed Critical CETHIK Group Ltd
Priority to CN201911400758.3A priority Critical patent/CN111044050B/zh
Publication of CN111044050A publication Critical patent/CN111044050A/zh
Application granted granted Critical
Publication of CN111044050B publication Critical patent/CN111044050B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/20Instruments for performing navigational calculations
    • G01C21/206Instruments for performing navigational calculations specially adapted for indoor navigation
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/10Position of receiver fixed by co-ordinating a plurality of position lines defined by path-difference measurements, e.g. omega or decca systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)
  • Navigation (AREA)

Abstract

本发明公开了一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法,包括:接收采集的信标的信息数据;判断信息数据中RSSI值最强信标M是否处于楼层切换位置,若是则输出信标M的坐标作为标签当前的位置信息;否则筛选RSSI值大于信号强度阈值的信标信息形成定位数据集;若定位数据集为空则输出上一次的标签位置信息作为标签当前的位置信息;否则根据定位数据集采用粒子滤波算法预估标签的位置,并采用卡尔曼滤波算法修正粒子滤波算法预估的位置,再利用限幅滤波算法修正卡尔曼滤波算法修正后的标签的位置,输出限幅滤波算法修正后的位置作为标签当前的位置信息。本发明规避信号不稳定造成的测距不准,显著提高蓝牙定位的精度。

Description

一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法
技术领域
本申请属于无线电定位领域,具体涉及一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法。
背景技术
物联网(IOT)技术的发展,使得室内定位技术获得广泛关注,而在室内环境中,全球导航卫星系统(GNSS)的定位信号微弱,不能用于室内定位,由此衍生出GNSS之外的室内定位技术。
目前蓝牙室内定位现有的方法有很多种,例如三边定位法和滤波结合的方式。三边定位算法就是通过标签与三个信标的距离,运用三边几何原理确定目标的位置。滤波算法常规有均值滤波、高斯滤波、粒子滤波、卡尔曼滤波等,通过滤波算法对目标的位置进行修正,以达到提高定位精度的效果。目前市面上蓝牙定位精度的效果是3~5米。
在实际应用中,三边定位算法结合滤波算法的方式存在缺陷,即三边定位法定位误差大,即使后期采用滤波算法进行修正,最终得出的定位效果也不理想。这是由于三边定位算法依赖于蓝牙RSSI数值得出标签与信标的距离,而RSSI非常容易受到环境因素和非环境因素的影响。事实上,即使固定标签于同一位置,其接收的RSSI也会出现非常大的浮动。因此,采用三边定位算法很容易出现定位误差超出5米的结果,也会出现多个解的情况,即以信标为原点,距离为半径的三个圆会出现多个交点,甚至还会出现无解的情况,即三个圆没有任何交点。
滤波算法修正的基础是三边定位法的定位结果较准确或偏差小,若三边定位结果偏差大,滤波算法也无法将该结果修正到定位精度范围内。
发明内容
本申请的目的在于提供一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法,规避信号不稳定造成的测距不准,显著提高蓝牙定位的精度。
为实现上述目的,本申请所采取的技术方案为:
一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法,用于根据预设在定位空间范围内的多个信标判断标签当前的位置信息,所述基于粒子滤波和卡尔曼滤波的蓝牙定位方法,包括:
接收预设时间内采集的信标的信息数据,所述信息数据中包含多条信标信息,各所述信标信息包括信号强度RSSI值、信标属性、信标编号和信标的坐标;
查找所接收的信息数据中RSSI值最强的信标信息,并将该信标信息对应的信标记为信标M;
根据所述信标属性判断信标M是否处于楼层切换位置,若是则输出信标M的坐标作为标签当前的位置信息,并结束本次执行;否则继续执行;
筛选信息数据中RSSI值大于信号强度阈值的信标信息形成定位数据集;
判断所述定位数据集是否为空,若为空则输出上一次的标签位置信息作为标签当前的位置信息,并结束本次执行;否则继续执行;
根据所述定位数据集采用粒子滤波算法预估标签的位置,并采用卡尔曼滤波算法修正粒子滤波算法预估的位置,再利用限幅滤波算法修正卡尔曼滤波算法修正后的标签的位置,输出限幅滤波算法修正后的位置作为标签当前的位置信息。
作为优选,所述基于粒子滤波和卡尔曼滤波的蓝牙定位方法还包括:
在查找到信息数据中的信标M后,判断本次接收的信息数据是否为第一条信息数据,若是则先执行参数初始化后再继续执行;否则直接继续执行;
所述参数初始化包括:
初始化粒子滤波算法中粒子的位置:对信标M的坐标添加随机高斯噪声,将增加噪声后的坐标作为各粒子的初始位置partical0
初始化卡尔曼滤波算法中的参数X0:所述参数X0包括标签的初始位置和初始速度,将信标M的坐标的横纵坐标分别赋值给标签初始位置的x0和y0,并取初始速度
Figure BDA0002347411090000021
Figure BDA0002347411090000022
为服从高斯分布的介于0~1之间的随机数。
作为优选,所述根据定位数据集采用粒子滤波算法预估标签的位置,包括:
以各粒子的位置为状态值,以所述定位数据集中的RSSI值为观测值,预估标签的位置的具体过程如下:
1)预测粒子当前的位置:根据标签移动规则以及粒子前一位置,预测粒子当前的位置:
particalk=particalk-1+vk-1×t
其中,particalk为粒子当前的预测位置,particalk-1为粒子前一位置,即第k-1条信息数据对应的粒子位置,vk-1为第k-1条信息数据对应的标签速度,也为卡尔曼滤波算法的状态值Xk-1中的
Figure BDA0002347411090000031
Figure BDA0002347411090000032
的矢量和的大小,t为时间,也是位置更新时间;
2)计算粒子对应的RSSI值:根据定位数据集中各信标的坐标以及各粒子当前的预测位置particalk,计算各粒子与信标的距离d,并根据距离d计算各粒子在当前的预测位置与信标对应的RSSI值;
3)评估粒子赋权重:计算各粒子当前的预测位置particalk所对应的RSSI值与当前实际的观测值中RSSI值的欧氏距离,若该欧氏距离越小,则粒子赋予的权重w越大;
4)对粒子重采样,更新粒子位置:根据粒子权重w对粒子进行重要性采样,保留权值大的粒子,删除权值小的粒子,权值大的粒子会被多次复制以保证粒子个数的不变,将重采样后的粒子位置作为新的粒子位置
Figure BDA0002347411090000033
5)均值滤波更新粒子位置得标签预估位置:取更新后的粒子位置
Figure BDA0002347411090000034
的均值作为标签当前预估的位置
Figure BDA0002347411090000035
作为优选,所述根据距离d计算各粒子在当前的预测位置与信标对应的RSSI值,包括:
根据无线信号传播衰减模型进行计算:
Figure BDA0002347411090000036
其中,RSSI(d)为距离d对应的RSSI值,d0为初始距离,RSSI(d0)为初始距离d0对应的RSSI值,α为信号传播过程中的损耗因子,ζσ为服从均值为0、标准差为σ的正态分布的随机量。
作为优选,所述采用卡尔曼滤波算法修正粒子滤波预估的位置,包括:
以标签的位置和速度为状态值,以粒子滤波算法输出的标签当前预估的位置
Figure BDA0002347411090000037
为观测值,建立卡尔曼滤波算法的迭代方程为:
Xk=Fk·Xk-1
Figure BDA0002347411090000038
Figure BDA0002347411090000039
Figure BDA00023474110900000310
Figure BDA00023474110900000311
其中,
Figure BDA0002347411090000041
为第k条信息数据的状态值,即表示第k条信息数据标签的预测位置和预测速度,Xk-1表示第k-1条信息数据标签的位置和速度;
Figure BDA0002347411090000042
表示系统参数,Fk中的t表示时间间隔,即位置更新时间;
Figure BDA0002347411090000043
表示第k条信息数据的状态量Xk的误差协方差阵,其初始值为
Figure BDA0002347411090000044
表示过程噪声;
Figure BDA0002347411090000045
表示测量参数;
Figure BDA0002347411090000046
表示测量噪声;
Figure BDA0002347411090000047
表示卡尔曼增益;
Figure BDA0002347411090000048
表示第k条信息数据的观测值,即粒子滤波算法输出的标签当前预估的位置
Figure BDA0002347411090000049
表示卡尔曼滤波算法本次修正后标签的位置和速度;
Figure BDA00023474110900000410
表示
Figure BDA00023474110900000411
对应的协方差阵。
作为优选,所述利用限幅滤波算法修正卡尔曼滤波算法修正后的标签位置,包括:
根据卡尔曼滤波算法中参数Xk中的vx和vy以及时间t,计算出时间t内标签实际移动距离作为理论距离,即vx和vy的矢量和大小与时间t的乘积;
计算当前卡尔曼滤波算法输出的修正后标签的位置和标签上一次的标签位置的距离作为实际距离;
若所述实际距离超过理论距离,则取当前卡尔曼滤波算法输出的修正后的位置和上一次的标签位置的均值作为标签本次定位最终的位置信息;否则保持卡尔曼滤波算法输出的修正后的位置的值不变。
本申请提供的基于粒子滤波和卡尔曼滤波的蓝牙定位方法,将楼层切换处的位置情况作为特殊情况,排除楼层切换处干扰多的影响,并且可直接根据楼层切换处信标的坐标得到准确位置信息;其次对所采集的信标信息进行筛选,去除信号强度较弱的以提高数据的可靠性;并且本申请直接利用粒子滤波算法预估标签的位置,并且利用卡尔曼滤波算法修正粒子滤波算法预估的位置,并且利用限幅滤波算法修正卡尔曼滤波算法修正后的位置,以防止前后两次计算得到的标签位置波动过大,从而降低定位对RSSI值的依赖,规避信号不稳定造成的测距不准,并且参考历史位置,避免出现预估轨迹突变的情况,显著提高定位的精度。
附图说明
图1为本申请的基于粒子滤波和卡尔曼滤波的蓝牙定位方法的流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是在于限制本申请。
如图1所示,其中一个实施例中,提供了一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法,用于根据预设在定位空间范围内的多个信标判断标签当前的位置信息,可将定位精度由现有的3~5米缩短至1~3米。
具体的,所述基于粒子滤波和卡尔曼滤波的蓝牙定位方法,包括:
步骤S1、接收预设时间内采集的信标的信息数据,所述信息数据中包含多条信标信息,各所述信标信息包括信号强度RSSI值、信标属性、信标编号和信标的坐标。
其中,信标的特征为在物理位置上固定,并定时广播数据包;标签的特征为定时扫描广播的数据包,得出对应信标的RSSI值;RSSI值表示接受信号强度值。
为了保证数据的完整性,一般设置预设时间大于标签定时扫描广播的时间。例如标签2s扫描一次,而标签6s上传一次数据,即本次所接收的信息数据中包含标签3次扫描得到的数据,并且标签扫描一次可得到1个或多个响应信标的广播,一次扫描得到的每一个信标的广播均形成一条独立的信标信息。
步骤S2、查找所接收的信息数据中RSSI值最强的信标信息,并将该信标信息对应的信标记为信标M。
步骤S3、在查找到信息数据中的信标M后,判断本次接收的信息数据是否为第一条信息数据,若是则先执行参数初始化后再继续执行;否则直接继续执行。
参数初始化主要针对粒子滤波算法和卡尔曼滤波算法进行,具体如下:
初始化粒子滤波算法中粒子的位置:对信标M的坐标添加随机高斯噪声,将增加噪声后的坐标作为各粒子的初始位置partical0
初始化卡尔曼滤波算法中的参数X0:所述参数X0包括标签的初始位置和初始速度,将信标M的坐标的横纵坐标分别赋值给标签初始位置的x0和y0,并取初始速度
Figure BDA0002347411090000061
Figure BDA0002347411090000062
为服从高斯分布的介于0~1之间的随机数。
步骤S4、根据所述信标属性判断信标M是否处于楼层切换位置,若是则输出信标M的坐标作为标签当前的位置信息,并结束本次执行;否则继续执行。
信标信息中的信标属性包含信标的位置属性,例如“楼层”、“一楼客厅”、“二楼卧室”等等,并且该属性为布置信标时预配置。
若判断到信标M的信标属性为“楼层”,则表示信标M处于楼层切换位置,否则不处于楼层切换位置。
步骤S5、筛选信息数据中RSSI值大于信号强度阈值的信标信息形成定位数据集。由于接收的信号强度越弱,信号受干扰的可能性越大,故本实施例中根据RSSI值对信标信息进行筛选,以保证数据的可靠性。
步骤S6、判断所述定位数据集是否为空,若为空则输出上一次的标签位置信息作为标签当前的位置信息,并结束本次执行;否则继续执行。
步骤S7、根据所述定位数据集采用粒子滤波算法预估标签的位置,并采用卡尔曼滤波算法修正粒子滤波算法预估的位置,再利用限幅滤波算法修正卡尔曼滤波算法修正后的标签的位置,输出限幅滤波算法修正后的位置作为标签当前的位置信息。
本实施例直接采用粒子滤波算法计算标签的预估位置,可简化计算过程并且提高预估位置的准确性。在一实施例中,根据定位数据集采用粒子滤波算法预估标签的位置,包括:
以各粒子的位置为状态值,以所述定位数据集中的RSSI值为观测值,预估标签的位置的具体过程如下:
1)预测粒子当前的位置:根据标签移动规则以及粒子前一位置,预测粒子当前的位置:
particalk=particalk-1+vk-1×t
其中,particalk为粒子当前的预测位置,particalk-1为粒子前一位置,即第k-1条信息数据对应的粒子位置,vk-1为第k-1条信息数据对应的标签速度,也为卡尔曼滤波算法的状态值Xk-1中的
Figure BDA0002347411090000071
Figure BDA0002347411090000072
的矢量和的大小,t为时间,也是位置更新时间,即为两条信息数据之间的时间间隔。若当前为第一条信息数据的处理,即k=1时,则采用初始化的值进行计算。
2)计算粒子对应的RSSI值:根据定位数据集中各信标的坐标以及各粒子当前的预测位置particalk,计算各粒子与信标的距离d,并根据距离d计算各粒子在当前的预测位置与信标对应的RSSI值。需要说明的是,每个粒子都需要计算与当前数据中响应信标的对应的RSSI,都对应着多个RSSI数据。
3)评估粒子赋权重:计算各粒子当前的预测位置particalk所对应的RSSI值与当前实际的观测值中RSSI值的欧氏距离,若该欧氏距离越小,则粒子赋予的权重w越大。上一步计算的多个RSSI数据需要与当前实际观测数据中的多个RSSI进行欧式距离的计算,欧氏距离越小,权值越大。
4)对粒子重采样,更新粒子位置:根据粒子权重w对粒子进行重要性采样,保留权值大的粒子,删除权值小的粒子,权值大的粒子会被多次复制以保证粒子个数的不变,将重采样后的粒子位置作为新的粒子位置
Figure BDA0002347411090000073
5)均值滤波更新粒子位置得标签预估位置:取更新后的粒子位置
Figure BDA0002347411090000074
的均值作为标签当前预估的位置
Figure BDA0002347411090000075
为了避免基于RSSI值的测距不准确而导致定位误差大的问题,本实施例在粒子滤波算法中对所采集的RSSI值进行筛选,去除波动大的数据,提高定位精度。并且根据距离计算粒子位置对应的RSSI值,进一步对实际观测的RSSI数据进行修正。
在一实施例中,根据距离d计算各粒子在当前的预测位置与信标对应的RSSI值,包括:
根据无线信号传播衰减模型进行计算:
Figure BDA0002347411090000076
其中,RSSI(d)为距离d对应的RSSI值,d0为初始距离,RSSI(d0)为初始距离d0对应的RSSI值,α为信号传播过程中的损耗因子,ζσ为服从均值为0、标准差为σ的正态分布的随机量。
在确定RSSI值与距离的关系时,分别采集了测试人员在面对和背对信标的两种情况下接收到的RSSI值。由于RSSI值浮动较大,在每种情况下的每个位置均采集了2分钟(甚至更久时间)数据。对于采集的2分钟数据,采用高斯滤波处理方式得到当前位置所对应的RSSI值,最后将面对和背对情况下处理后的RSSI值取均值作为确定关系的源数据,以提高模型的可靠性。
通过粒子滤波算法得到的标签的预估位置可能存在微小误差,为了进一步降低误差,采用卡尔曼滤波进行修正,在一个实施例中,所述采用卡尔曼滤波算法修正粒子滤波预估的位置,包括:
以标签的位置和速度为状态值,以粒子滤波算法输出的标签当前预估的位置
Figure BDA0002347411090000081
为观测值,建立卡尔曼滤波算法的迭代方程为:
Xk=Fk·Xk-1
Figure BDA0002347411090000082
Figure BDA0002347411090000083
Figure BDA0002347411090000084
Figure BDA0002347411090000085
其中,
Figure BDA0002347411090000086
为第k条信息数据的状态值,即表示第k条信息数据标签的预测位置和预测速度,Xk-1表示第k-1条信息数据标签的位置和速度,若当前为第一条信息数据的处理,即k=1时,则采用初始化的值进行计算;
Figure BDA0002347411090000087
表示系统参数,Fk中的t表示时间间隔,即位置更新时间;
Figure BDA0002347411090000088
表示第k条信息数据的状态量Xk的误差协方差阵,其初始值为
Figure BDA0002347411090000089
表示过程噪声;
Figure BDA00023474110900000810
表示测量参数;
Figure BDA00023474110900000811
表示测量噪声;
Figure BDA00023474110900000812
表示卡尔曼增益;
Figure BDA00023474110900000813
表示第k条信息数据的观测值,即粒子滤波算法输出的标签当前预估的位置
Figure BDA00023474110900000814
表示卡尔曼滤波算法本次修正后标签的位置和速度;
Figure BDA00023474110900000815
表示
Figure BDA00023474110900000816
对应的协方差阵。
需要说明的是,针对粒子滤波算法和卡尔曼滤波算法的参数初始化可以在步骤S3中进行,以保证每次执行算法仅需在步骤S3中判断一次是否需要初始化即可;参数初始化也可以在粒子滤波算法和卡尔曼滤波算法内部完成,即在执行前判断本次接收的信息数据是否为第一条信息数据,若是即各自执行参数初始化,即省略步骤S3。
对于粒子滤波算法和卡尔曼滤波算法而言,一条信息数据迭代一次,只有对于整个定位过程来说,两个滤波算法才会迭代多次,定位引擎关闭才是两个滤波算法结束停止迭代的条件。
并且为了避免预估的轨迹数据产生突变,本申请建立相邻两次算法执行的关联性,即在步骤S1中还接收针对前一条信息数据进行位置估计后的滤波算法参数(除第一条信息数据执行以外),例如粒子滤波算法中粒子最终的位置、卡尔曼滤波算法中的参数X和参数P,并且在本次输出标签的位置信息的同时输出滤波算法的参数,以供下一条信息数据使用。
粒子滤波算法和卡尔曼滤波算法的结合可得到标签较为精确的位置信息,在一实施例中,为了进一步降低误差,防止标签前后两次预估的位置跳变过大,在卡尔曼滤波算法修正标签的预估位置后,利用限幅滤波算法修正卡尔曼滤波算法修正后的标签位置,包括:
根据卡尔曼滤波算法中参数Xk中的vx和vy以及时间t,计算出时间t内标签实际移动距离作为理论距离,即vx和vy的矢量和大小与时间t的乘积;
计算当前卡尔曼滤波算法输出的修正后标签的位置和标签上一次的标签位置的距离作为实际距离;
若所述实际距离超过理论距离,则取当前卡尔曼滤波算法输出的修正后的位置和上一次的标签位置的均值作为标签本次定位最终的位置信息;否则保持卡尔曼滤波算法输出的修正后的位置的值不变。
本实施例的蓝牙定位方法避免基于RSSI值的测距不准确而导致定位误差大的问题,对距离准确度的依赖性不强。规避信号不稳造成的测距不准,导致位置解算出现无解或者解误差大或者解相对历史位置突变性大等一系列问题;参考了历史位置信息预估当前位置,使整个运动轨迹突变性不会太强。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (3)

1.一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法,用于根据预设在定位空间范围内的多个信标判断标签当前的位置信息,其特征在于,所述基于粒子滤波和卡尔曼滤波的蓝牙定位方法,包括:
接收预设时间内采集的信标的信息数据,所述信息数据中包含多条信标信息,各所述信标信息包括信号强度RSSI值、信标属性、信标编号和信标的坐标;
查找所接收的信息数据中RSSI值最强的信标信息,并将该信标信息对应的信标记为信标M;
在查找到信息数据中的信标M后,判断本次接收的信息数据是否为第一条信息数据,若是则先执行参数初始化后再继续执行;否则直接继续执行;
根据所述信标属性判断信标M是否处于楼层切换位置,若是则输出信标M的坐标作为标签当前的位置信息,并结束本次执行;否则继续执行;
筛选信息数据中RSSI值大于信号强度阈值的信标信息形成定位数据集;
判断所述定位数据集是否为空,若为空则输出上一次的标签位置信息作为标签当前的位置信息,并结束本次执行;否则继续执行;
根据所述定位数据集采用粒子滤波算法预估标签的位置,并采用卡尔曼滤波算法修正粒子滤波算法预估的位置,再利用限幅滤波算法修正卡尔曼滤波算法修正后的标签的位置,输出限幅滤波算法修正后的位置作为标签当前的位置信息;
其中,所述参数初始化包括:
初始化粒子滤波算法中粒子的位置:对信标M的坐标添加随机高斯噪声,将增加噪声后的坐标作为各粒子的初始位置partical0
初始化卡尔曼滤波算法中的参数X0:所述参数X0包括标签的初始位置和初始速度,将信标M的坐标的横纵坐标分别赋值给标签初始位置的x0和y0,并取初始速度
Figure FDA0003544209890000011
Figure FDA0003544209890000012
为服从高斯分布的介于0~1之间的随机数;
其中,所述根据定位数据集采用粒子滤波算法预估标签的位置,包括:
以各粒子的位置为状态值,以所述定位数据集中的RSSI值为观测值,预估标签的位置的具体过程如下:
1)预测粒子当前的位置:根据标签移动规则以及粒子前一位置,预测粒子当前的位置:
particalk=particalk-1+vk-1×t
其中,particalk为粒子当前的预测位置,particalk-1为粒子前一位置,即第k-1条信息数据对应的粒子位置,vk-1为第k-1条信息数据对应的标签速度,也为卡尔曼滤波算法的状态值Xk-1中的
Figure FDA0003544209890000021
Figure FDA0003544209890000022
的矢量和的大小,t为时间,也是位置更新时间;
2)计算粒子对应的RSSI值:根据定位数据集中各信标的坐标以及各粒子当前的预测位置particalk,计算各粒子与信标的距离d,并根据距离d计算各粒子在当前的预测位置与信标对应的RSSI值;
3)评估粒子赋权重:计算各粒子当前的预测位置particalk所对应的RSSI值与当前实际的观测值中RSSI值的欧氏距离,若该欧氏距离越小,则粒子赋予的权重w越大;
4)对粒子重采样,更新粒子位置:根据粒子权重w对粒子进行重要性采样,保留权值大的粒子,删除权值小的粒子,权值大的粒子会被多次复制以保证粒子个数的不变,将重采样后的粒子位置作为新的粒子位置
Figure FDA0003544209890000023
5)均值滤波更新粒子位置得标签预估位置:取更新后的粒子位置
Figure FDA0003544209890000024
的均值作为标签当前预估的位置
Figure FDA0003544209890000025
其中,所述采用卡尔曼滤波算法修正粒子滤波预估的位置,包括:
以标签的位置和速度为状态值,以粒子滤波算法输出的标签当前预估的位置
Figure FDA0003544209890000026
为观测值,建立卡尔曼滤波算法的迭代方程为:
Xk=Fk·Xk-1
Figure FDA0003544209890000027
Figure FDA0003544209890000028
Figure FDA0003544209890000029
Figure FDA00035442098900000210
其中,
Figure FDA00035442098900000211
为第k条信息数据的状态值,即表示第k条信息数据标签的预测位置和预测速度,Xk-1表示第k-1条信息数据标签的位置和速度;
Figure FDA00035442098900000212
表示系统参数,Fk中的t表示时间间隔,即位置更新时间;
Figure FDA00035442098900000213
表示第k条信息数据的状态量Xk的误差协方差阵,其初始值为
Figure FDA0003544209890000031
表示过程噪声;
Figure FDA0003544209890000032
表示测量参数;
Figure FDA0003544209890000033
表示测量噪声;
Figure FDA0003544209890000034
表示卡尔曼增益;
Figure FDA0003544209890000035
表示第k条信息数据的观测值,即粒子滤波算法输出的标签当前预估的位置
Figure FDA0003544209890000036
Figure FDA0003544209890000037
表示卡尔曼滤波算法本次修正后标签的位置和速度;
Figure FDA0003544209890000038
表示
Figure FDA0003544209890000039
对应的协方差阵。
2.如权利要求1所述的基于粒子滤波和卡尔曼滤波的蓝牙定位方法,其特征在于,所述根据距离d计算各粒子在当前的预测位置与信标对应的RSSI值,包括:
根据无线信号传播衰减模型进行计算:
Figure FDA00035442098900000310
其中,RSSI(d)为距离d对应的RSSI值,d0为初始距离,RSSI(d0)为初始距离d0对应的RSSI值,α为信号传播过程中的损耗因子,ζσ为服从均值为0、标准差为σ的正态分布的随机量。
3.如权利要求1所述的基于粒子滤波和卡尔曼滤波的蓝牙定位方法,其特征在于,所述利用限幅滤波算法修正卡尔曼滤波算法修正后的标签位置,包括:
根据卡尔曼滤波算法中参数Xk中的vx和vy以及时间t,计算出时间t内标签实际移动距离作为理论距离,即vx和vy的矢量和大小与时间t的乘积;
计算当前卡尔曼滤波算法输出的修正后标签的位置和标签上一次的标签位置的距离作为实际距离;
若所述实际距离超过理论距离,则取当前卡尔曼滤波算法输出的修正后的位置和上一次的标签位置的均值作为标签本次定位最终的位置信息;否则保持卡尔曼滤波算法输出的修正后的位置的值不变。
CN201911400758.3A 2019-12-30 2019-12-30 一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法 Active CN111044050B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911400758.3A CN111044050B (zh) 2019-12-30 2019-12-30 一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911400758.3A CN111044050B (zh) 2019-12-30 2019-12-30 一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法

Publications (2)

Publication Number Publication Date
CN111044050A CN111044050A (zh) 2020-04-21
CN111044050B true CN111044050B (zh) 2022-06-21

Family

ID=70242049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911400758.3A Active CN111044050B (zh) 2019-12-30 2019-12-30 一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法

Country Status (1)

Country Link
CN (1) CN111044050B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111629432B (zh) * 2020-05-18 2022-04-12 上海图聚智能科技股份有限公司 基于多阶滤波算法的蓝牙指纹定位方法、装置和设备
CN112033427A (zh) * 2020-08-27 2020-12-04 日立楼宇技术(广州)有限公司 导航方法、装置、电子设备及存储介质
CN113256866B (zh) * 2021-06-15 2021-09-24 南京高美吉交通科技有限公司 城市轨道交通无障碍通行系统及其实施方法
CN117308925B (zh) * 2023-11-29 2024-02-09 中国人民解放军国防科技大学 一种频谱地图惯导组合的导航方法、装置、设备和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516887A (zh) * 2014-09-25 2016-04-20 阿里巴巴集团控股有限公司 基于蓝牙的定位方法及其装置
CN106814345A (zh) * 2017-03-24 2017-06-09 西北工业大学 易于数据采集和高精度的室内定位方法
CN106932802A (zh) * 2017-03-17 2017-07-07 安科智慧城市技术(中国)有限公司 一种基于扩展卡尔曼粒子滤波的导航方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3955661A1 (en) * 2015-03-27 2022-02-16 PCMS Holdings, Inc. System and method for updating location data for localization of beacons
CN107132504B (zh) * 2016-02-29 2020-12-22 富士通株式会社 基于粒子滤波的定位追踪装置、方法及电子设备
CN109462816B (zh) * 2018-11-20 2020-07-31 安阳师范学院 一种基于蓝牙信标进行室内定位的方法
CN109951830B (zh) * 2019-02-01 2023-05-02 湖南云箭格纳微信息科技有限公司 一种多信息融合的室内外无缝定位方法
CN110602647B (zh) * 2019-09-11 2020-11-24 江南大学 基于扩展卡尔曼滤波和粒子滤波的室内融合定位方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105516887A (zh) * 2014-09-25 2016-04-20 阿里巴巴集团控股有限公司 基于蓝牙的定位方法及其装置
CN106932802A (zh) * 2017-03-17 2017-07-07 安科智慧城市技术(中国)有限公司 一种基于扩展卡尔曼粒子滤波的导航方法及系统
CN106814345A (zh) * 2017-03-24 2017-06-09 西北工业大学 易于数据采集和高精度的室内定位方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"Kalman Filter-Based Hybrid Indoor Position Estimation Technique in Bluetooth Networks";Fazli Subhan 等;《International Journal of Navigation and Observation》;20131231;正文第1-10页 *
基于蓝牙技术的城市轨道交通室内定位导航及应用;张立东等;《城市轨道交通研究》;20190510(第05期);正文第176-180页 *
改进的粒子滤波算法在RFID室内目标跟踪中的应用;李金杰等;《微电子学与计算机》;20190605(第06期);正文第94-98页 *

Also Published As

Publication number Publication date
CN111044050A (zh) 2020-04-21

Similar Documents

Publication Publication Date Title
CN111044050B (zh) 一种基于粒子滤波和卡尔曼滤波的蓝牙定位方法
US9594150B2 (en) Determining device locations using movement, signal strength
JP7344389B2 (ja) 協調測位方法、装置、機器及び記憶媒体
CN108534779B (zh) 一种基于轨迹纠正和指纹改进的室内定位地图构建方法
AU2009289008B2 (en) Estimating a state of at least one target
JP2003506690A (ja) 複数センサ式レーダのための登録方法
CN106896363B (zh) 一种水下目标主动跟踪航迹起始方法
KR20120115895A (ko) 수신신호강도의 거리추정방식에 의거하여 4개 이상의 앵커노드를 이용한 실내 무선 측위 방법 및 이 방법을 실시하기 위한 프로그램이 기록된 기록매체
CN108279007B (zh) 一种基于随机信号的定位方法及装置
CN112767545A (zh) 一种点云地图构建方法、装置、设备及计算机存储介质
JP5664059B2 (ja) 車両用軌跡推定装置
US8797899B2 (en) System and method for probabilistic WLAN positioning
CN114440880A (zh) 基于自适应迭代ekf的施工现场控制点定位方法及系统
CN114325577A (zh) 一种非视距定位误差修正方法与装置
US10820152B2 (en) Device diversity correction method for RSS-based precise location tracking
CN110996248B (zh) 一种基于rss的凸优化无线传感器网络定位方法
CN104407366A (zh) 一种对伪距进行平滑处理的方法
CN111238480B (zh) 基于距离残差的nlos识别方法及在室内定位中的应用
CN109769206B (zh) 一种室内定位融合方法、装置、存储介质及终端设备
CN112333634A (zh) 一种基于uav的混合节点定位方法
US20200033439A1 (en) Multi-algorithm trilateration system
CN115166785B (zh) 一种基于三接收机钟差单差的导航欺骗式干扰检测方法
CN110716219A (zh) 一种提高定位解算精度的方法
CN114548159B (zh) 信号干扰下的超宽带精确定位方法
CN115494450A (zh) 一种高精度的超宽带室内定位跟踪与控制方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant