基于PDR算法实现行人惯性导航附matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信       无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机 

⛄ 内容介绍

室内定位与导航在军事单兵系统,消防定位和大型场馆引导领域都拥有非常大的需求.由于GNSS导航在复杂的室内环境下会出现衰减,多径等问题,因此针对行人的基于低成本MEMS惯性传感器的行人航位推算(Personal Deadreckoning,PDR)导航系统成为该领域的研究热点。

⛄ 部分代码

function [yaw_] = map_aid(ori0,gyr0)

    %%基于地图匹配的方向滤波

    % ori0 = load('ori.txt');

    % gyr0 = load('gyr.txt');

    yaw = ori0(:,1);

    gyr_z = gyr0(:,3);

    th = 1;                 %%设置转角的阈值

    %%解航向角的缠绕

    for i = 1:size(yaw)-1

        if(yaw(i+1) - yaw(i)<-180)

            yaw(i+1) = yaw(i+1) + 360;

        else if(yaw(i+1) - yaw(i)>180)

                yaw(i+1) = yaw(i+1) - 360;  

            end

        end

    end

    % figure

    % plot(yaw)

    %%根据陀螺仪定转角位置

    [ L L0] = corner_detect(gyr_z,th);

    %%利用地图匹配的角度对yaw进行滤波

    yaw_kal = yaw_kal1(yaw,gyr_z,L0);

    yaw_ = yaw_kal;

end

⛄ 运行结果

⛄ 参考文献

[1] 何梦园, 刘小瑜, 刘正熙,等. 基于PDR和蓝牙加权定位的卡尔曼滤波算法.

[2] 贾浩男, 贾瑞才, 王博远. 基于惯性传感器的行人室内定位算法研究[J]. 无线电工程, 2018, v.48;No.351(08):5-9.

[3] 张小红, 罗科干, 陶贤露,等. 一种基于穿戴式MEMS传感器状态识别的多部位PDR算法[J]. 武汉大学学报:信息科学版, 2021, 46(12):12.

[4] 何梦园, 刘小瑜, 刘正熙,等. 基于PDR和蓝牙加权定位的卡尔曼滤波算法[J]. 现代计算机, 2019(10):6.

[5] 鲁  航, 巴  斌, 王朋飞. 一种基于改进PDR与外部位置信息的融合定位算法[J]. Journal of Terahertz Science and Electronic Information Technology, 15(3).

[6] 钱久超. 基于无约束自包含传感器的行人室内定位技术研究[D]. 上海交通大学, 2016.

[7] 张博, 贾浩男, 赵皎. 室内行人自主定位算法的研究[J]. 无线电工程, 2017, 47(8):5.

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除

❤️ 关注我领取海量matlab电子书和数学建模资料

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
PDR算法(Pedestrian Dead Reckoning)是一种室内定位算法,它是通过识别步态数据以及加速度计和陀螺仪等传感器数据,来计算步长和方向从而推算人体在室内的位置信息。PDR算法在没有定位信号的环境下,如建筑物内部或地下停车场等,具有较高的定位精度。 Matlab是一款功能强大的数学软件,它可以用于PDR算法的模拟、计算和实验。主要通过Matlab中的Sensor Fusion and Tracking Toolbox进行实现。 在进行PDR算法模拟前,需要先准备好传感器数据。采集步态数据时可以使用手机的加速度计和陀螺仪,或者专门的行走传感器。将数据导入到Matlab中,对其进行预处理,包括滑动窗口、去噪和陀螺仪漂移校正等。 在模拟中,需要利用Matlab中的Sensor Fusion and Tracking Toolbox对传感器数据进行处理,包括运动模型、观测模型和状态估计器等。通过这些模块,可以实现对步长和方向的精确计算,从而推算出人体在室内的位置信息。 此外,Matlab还可以用于PDR算法的实验。通过搭建实验环境,如在建筑物内放置固定位置的信标,可以验证PDR算法的定位精度。实验结果可以通过Matlab的数据分析和可视化工具进行展示和分析。 综上所述,Matlab是一个非常重要的工具,可以用于PDR算法的模拟、计算和实验。利用Matlab进行PDR算法研究,不仅可以提高算法的精度和性能,还可以推动Indoor Navigation和Location Based Services等应用的发展。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

matlab科研助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值