PX4飞控导出GPS数据拟合飞行轨迹(转载)

2023-05-16

转载自:https://blog.csdn.net/weixin_41106948/article/details/104273453

PX4飞控导出GPS数据拟合飞行轨迹

置顶 jones5 2020-02-12 13:40:11

收藏 17

分类专栏: PX4飞控GPS数据分析 文章标签: PX4飞控 GPS飞行轨迹拟合

版权

PX4飞控GPS数据分析 专栏收录该内容

0 篇文章 2 订阅

订阅专栏

前言:想要拟合飞行轨迹,百度了一下,高人介绍的都是什么百度地图API,无忧地图,PYTHON;不是不好,是尝试了一下,注册非常麻烦,结果没拟合出想要的轨迹;接着我们分享一下5行代码的MATLAB;

一.先看结果,再看过程

有些帖子看半天,结果发现不是自己想找的答案,给大家节约宝贵时间,点个赞!!!嘻嘻

二维——经纬拟合

三维——经纬高拟合

 二.实现过程

1.下载飞行ulog文件;

2.将ulog文件转成csv:

       将ulog文件单独放在一个文件夹中,在当前路径下执行指令:ulog2csv log_××××.ulg

3.找到需要的log_×××_gps_position_0.csv文件用于matlat分析

4.二维——经纬拟合Matlab代码如下

clear all
% close all
clc

[FileName PathName]=uigetfile({'log_48_2019-11-14-11-19-26_vehicle_gps_position_0.csv'},'');
file=fullfile(PathName,FileName);
fidID = fopen(file);
M=csvread(file,1,0);

 x=M(:,3);%lon
 y=M(:,1);%alt
 z=M(:,4);%lat
 
%%%-----二维拟合--------%%%
 plot(x,z);

5.三维——经和高度先拟合,纬度和高度拟合,再双双拟合,Matlab代码如下

clear all
% close all
clc

[FileName PathName]=uigetfile({'log_48_2019-11-14-11-19-26_vehicle_gps_position_0.csv'},'');
file=fullfile(PathName,FileName);
fidID = fopen(file);
M=csvread(file,1,0);

 x=M(:,3);%lon
 y=M(:,1);%alt
 z=M(:,4);%lat
 
%%%-----二维拟合--------%%%
 %plot(x,z);

  
%%%-----三维拟合--------%%%
 p_yx = polyfit(y,x,4);
 x_out = polyval(p_yx, y);
 p_yz = polyfit(y,z,4);
 z_out = polyval(p_yz, y);
 plot3(x_out ,y, z_out, 'r*'); hold on;
  
 % µÃ³öÇúÏߺ¯Êý x_out = f(z_out)   z_out = f(y)
 p_zx_out = polyfit(z_out,x_out,4);   
 x_out_f = polyval(p_zx_out,z_out);
 plot3(x_out_f,y,z_out,'b*'); hold on;

大图:

gps数据:

本人原创不多,拿来分享,共同提高,不对请大神们批评指正,不胜感激!(完)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PX4飞控导出GPS数据拟合飞行轨迹(转载) 的相关文章

  • 如何在android中离线获取纬度和经度?

    我想在 WiFi 和 Gps 关闭时获取当前位置 纬度和经度 可以从移动 SIM 网络获取纬度和经度 我在谷歌上搜索了更多 但没有得到满意的答案 从我昨天的经验来看question https stackoverflow com q 220
  • GPS/GIS 计算:根据运动/每小时预测未来位置的算法?

    寻找资源或算法来在导航应用程序中计算以下内容 如果我当前的 GPS 位置为 0 0 并且我以 15 英里 小时的速度前进 32 度 我如何计算 10 秒后我的位置 i e GPSCoordinate predictedCoord GPSCo
  • 信号好的情况下GPS更新间隔越快?

    我试图限制我的程序每 10 秒更新一次位置 而不是不断更新 以减少电池消耗 当我在室内调试且信号较弱 即 GPS 图标闪烁 时 此方法工作正常 但如果手机得到正确修复 即 GPS 图标静态 更新间隔会增加到大约一秒 我知道代码mLocati
  • 设置模拟位置时 GPS 提供商未知错误?

    我正在尝试设置我的模拟位置 但是 我收到以下错误 提供商 gps 未知 并且不确定出了什么问题 我已经获得了在manifest xml 中声明的所有权限以及所有参数 模拟定位法 Initiates the method to set the
  • 如何通过 GPRS 向 GPS 追踪器(TK103、GT02、GT06、TK102 等)发送命令

    这已经被问过这里https stackoverflow com questions 25460743 gps tracker tk103 how to send message through server https stackoverf
  • 如何使用卡尔曼滤波器预测测量之间的 GPS 位置

    我研究了OpenCV卡尔曼滤波器的实现 并做了一些基本的鼠标指针模拟并了解了基础 我似乎错过了在我的应用程序中使用它的一些关键点 并希望这里有人可以提供一个小例子 使用具有速度和位置的简单模型 KF statePre at
  • Google 地图 (Android) 中的位置更新率

    我正在编写一个简单的基于 GPS 的应用程序 用于位置感知 每当启用 GPS 时 应用程序都会请求位置更新并以格式打印纬度和经度 TextView 如果 GPS 被禁用 位置提供商会回退到LocationManager NETWORK PR
  • C# - LINQ - GPS 纬度和经度的最短距离

    我有数据库 其中有带有 GPS 坐标的一流酒店 我想获得距离我选择的坐标最近的地方 我认为它应该看起来像这样 我在这里找到了很多示例代码 就像这样 var coord new GeoCoordinate latitude longitude
  • 帮助使用 GPS 坐标,Android

    我正在使用此代码来获取我的位置并在屏幕上打印坐标 package com example alpha import android app Activity import android content Context import and
  • 使用纬度/经度计算从 A 点到线段的距离

    我正在开发一个使用 GPS 的 Android 应用程序 我想知道如果 新位置 C 点 距离线段 AB 太远 是否有办法可以丢弃 GPS 位置数据 我正在使用发现的点到线段公式在维基百科上 http en wikipedia org wik
  • 如何将 GPS 数据从 Android 发送到网站?

    我是 Android 和 Web 服务开发新手 目前我正在开发Android程序 该程序将发送经度和纬度信息到asp net网站 以显示位置更改网站地图 问题是 如何将此数据发送到网站 最佳实践 对合适框架的任何建议 从Android应用程
  • Android:计算两个位置之间距离的最佳方法

    我在这个主题上做了一些研究 但有很多观点并没有给出一个清晰的图像 我的问题是这样的 我正在为 Android 开发一个基于 GPS 的应用程序 在其中我想实时了解 Android LocationManager 指定的当前位置与其他位置之间
  • 关闭应用程序后如何调试

    我正在尝试重现问题 这需要在特定位置关闭并重新打开我的应用程序 这是我的问题 1 如何查看我的日志 使用NSLog命令 当我的 iPhone 未连接到 XCode 时 2 是否可以将iPhone模拟器的特定位置 例如市中心 设置为默认位置
  • 使用 WGS84 椭球的距离

    考虑点 P1 60 N 20 E 0 和 P2 60 N 22 E 0 地球表面 当形状为 P1 和 P2 时 点 P1 和 P2 之间的最短距离是多少 地球是使用 WGS 84 椭球体建模的吗 不幸的是 文森蒂算法对于某些输入无法收敛 地
  • Ruby on Rails:如何使用 TCP 套接字连接 GPS 设备

    ruby 2 3 0p0 2015 12 25 修订版 53290 x86 64 linux 轨道 4 2 4 我正在使用 cloud9 IDE 和 webrick 服务器 我的项目是实时跟踪GPS 我想使用TCP连接与GPS跟踪设备进行通
  • 在 iOS 上从 GPS 获取时间

    我正在开发一个跟踪器应用程序 该应用程序需要高精度地了解设备位置 即它使用位置服务并忽略水平精度低于 20 米的位置 CLLocation没有明确声明是否通过 GPS 确定 但是 如果水平精度为 20 米或更好 则可以认为它是来自 GPS
  • 定位精度定义 - iOS

    iOS 上返回的 准确性 或 不确定性 的统计意图是什么 即使是近似值 例如 Android 文档对其返回的精度数字进行了解释 从这个意义上讲 它大约是一个标准差 我们将准确度定义为 68 置信度的半径 换句话说 如果 您以该位置的纬度和经
  • 是否可以自定义区域形状?核心位置

    例如 至少我想要一个正方形 矩形 道路的形状作为我的区域 不它不是 根据文档 目前唯一的区域类是 CLCircularRegion 显然是圆形 和 CLBeaconRegion 基于与 iBeacon 的接近度 未来苹果可能会添加对自定义形
  • 在android API 23中获取用户的位置

    我可以编写获取用户位置的代码 并且在 API 更多细节 我手动启用设备的 GPS 第一次运行应用程序请求权限并且没有日志返回 在下次运行应用程序时 返回我准备好的 Toast 检查您的提供商 这是我写的代码 public class Mai
  • Android - 有没有办法监听 GPS 是否启用或禁用

    我编写此代码是为了接收位置更新 PendingIntent launchIntent PendingIntent getBroadcast context 5000 intent 0 manager requestLocationUpdat

随机推荐