首页 > 其他分享 >[转]MissionPlanner使用说明

[转]MissionPlanner使用说明

时间:2024-01-11 16:23:26浏览次数:25  
标签:说明 地图 MissionPlanner 文件夹 飞行 使用 日志 飞控

转自:怒飞垂云

一、清除飞行轨迹

    有时在测试时我们希望清除地图中的飞行轨迹,在“飞行数据”页面左下方的“动作”页面,点击“清除轨迹”按钮即可。

 

二、打开和关闭语音

  “配置调试”->Planner->“语音合成”,勾选“启动语音”,然后后面会出现可选择的语音播报项目,按需勾选即可

 

三、自定义姿态窗口下面的标签页

  姿态窗口下面的标签页有的基本用不到,可以自定义关闭。将鼠标放到任一标签页上,右键单击,选择“Customize”,在弹出的窗口中取消勾选相应标签页即可。

 

 

四、烧写自定义固件

  我们可以使用MissionPlanner向飞控中烧写自己编译的固件,步骤如下: 

  “初始设置” -> “安装固件” -> “加载自定义固件”,然后在弹出的窗口选择自己编译的固件即可。

 

五、实时查看各个电机的输出

在姿态窗口的下方,切换到“状态”标签页,其中ch1out对应的是1号电机的输出,ch2out对应二号电机,以此类推……

 

六、查看飞控固件版本号

 使用USB或者数传电台连接飞控后,如下图所示,在MissionPlanner顶部标题栏中,会显示MissionPlanner和飞控固件各自的版本号。

 

七、下载并分析日志

 如下图所示,在MissionPlanner姿态窗口下方的“数据闪存日志”标签页,点击“通过Mavlink下载闪存日志”按钮可以下载飞控中的日志。

 

 飞控的日志都是以xxxx.bin的格式存储在飞控的SD卡中的,这种“.bin”文件是一种二进制文件,内部信息是以特殊的帧格式存储的,我们无法直接阅读。当我们使用MissionPlanner将日志从飞控中下载下来之后,MissionPlanner在后台默认将下载下来的“.bin”文件转换为了我们可以直接阅读的“.log”文件,因此我们会发现日志文件夹下既有“.bin”文件又有同名的“.log”文件,二者包含的信息是一样的,但是“.log”文件会比“.bin”大得多。对于日志有如下知识点:

  • 日志在电脑上的存储文件夹为:此电脑\文档\Mission Planner\logs,此文件夹下又有多个子文件夹,其中“HEXAROTOR”文件夹中存储的是六旋翼的日志,“QUADROTOR”文件夹中存储的是四旋翼的日志,“SITL”存储的是软件仿真日志;这些子文件夹下又有名为“1”的文件夹,这个“1”文件夹内就是日志了;
  • 日志文件夹内的日志会有同名的“.bin”文件和“.log”文件,二者包含了完全相同的信息,但是“.log”文件比“.bin”文件大得多,因此,当你通过网络向别人发送日志时,只需要发送“.bin”文件(注意,1、不要将两个文件都发送过去,2、更不要直接将整个文件夹都发过去,这是非常不礼貌的);
  • 日志文件夹下还有“.gpx”文件,这是MissionPlanner自动将日志文件中的飞行航迹提取出来单独存储起来的,可以使用GoogleEarth等软件打开并查看三维航迹;
  • 关于日志的更多知识点,请参考我的另一篇文章: http://www.nufeichuiyun.com/?p=389
  • 分析日志的视频教程我已经发布到B站上了,链接:https://www.bilibili.com/video/BV1Bg4y1B7cU/

八、批量删除多个连续航点

 如果要批量删除多个连续航点,方法与在windows下删除多个连续文件一样,步骤如下:

  1. 选中第一个要删除的航点序号;
  2. 按住键盘上的“shift”键不放,选中最后一个要删除的航点的序号;
  3. 按一下键盘上的“Delete”键。

 

九、切换地图

 MissionPlanner支持多种地图,比如“必应卫星地图”、“谷歌中国卫星地图”、“高德卫星地图”等等,但是“谷歌卫星地图”和“谷歌中国卫星地图”在国内已经没法用了,因此建议切换为“必应卫星地图”或者“高德卫星地图”。切换地图的方法如下:

  1. 打开“飞行计划”页面;
  2. 在右侧下拉列表中选择打算选用的地图;
  3. 缩放一下左边的地图,或者重启一下MissionPlanner,地图就更新了,这时“飞行数据”页面的地图也会变为刚才修改的地图。

 

如今“谷歌卫星地图”和“谷歌中国卫星地图”都已经被封了,建议改为“必应卫星地图”或者“高德卫星地图”。

十、打开MissionPlanner的隐藏功能

 MissionPlanner有很多处于测试中的、未对普通用户公开的隐藏功能,比如:集群飞行、移动RTK基站、Mavlink解析、Mavlink注入、FFT等,其打开方式非常简单:在MissionPlanner主页面,按快捷键组合“Ctrl+F”即可,弹出如下页面即为隐藏功能的合集:

 

十一、MissionPlanner中的禁飞区显示

 如下图所示,有时候MissionPlanner的地图中会显示一些淡红色的圈,这种圈是禁飞区,一般是以机场为中心的圆,但是注意:

  1. MissionPlanner和APM飞控固件并不会限制你在禁飞区里的飞行,这个圆圈只有提示作用,请大家起飞前一定要确保自己是否在禁飞区附近;
  2. MissionPlanner中的这些禁飞区不一定是最全的,事实上在任何地方飞行前,都最好确认一下这里是否允许飞行;
  3. MissionPlanner的这种圈状的提示是一种很粗略的画法,有可能即使你在圈里,但是并不在实际的禁飞区中;
  4. 再次强调,做任何事前先考虑一下后果,掂量一下自己是否能承受得起最差的情况,然后再做决定。在禁飞区飞行,如果真出现了干扰客机飞行甚至机毁人亡的惨剧,我相信不是任何人能承受的起的,合法合理飞行,坚决不做无人机圈里的“老鼠屎”,从你我做起!

 

十二、最新版MissionPlanner的官方下载链接

 很多时候大家在使用MissionPlanner时出现各种奇怪的问题,是由于使用了比较老的MissionPlanner版本导致的,但是各个论坛、帖子中的MissionPlanner版本比较混乱,很难找到一个最新的官方稳定版MissionPlanner安装包,我将官方最新稳定版的MissionPlanner下载链接放在这里,方便大家下载:

 http://firmware.ardupilot.org/Tools/MissionPlanner/MissionPlanner-latest.msi

 这个链接直接连通官方下载通道,永远都是最新的稳定版本。根据我的测试,使用迅雷下载会比浏览器直接下载快一点。

十三、常用参数说明

APM常用参数设置方法:http://www.nufeichuiyun.com/?p=47

APM固件参数使用技巧:http://www.nufeichuiyun.com/?p=936

十四、修改MissionPlanner主题

 之前有朋友问MissionPlanner日志分析界面能否把背景调整为白色,这样方便截图打印,这个可以通过修改MissionPlanner主题来实现,方法如下图所示:

 

 修改主题后,重启MissionPlanner,效果如下:

 

十五、设置遥测速率

 你想不想体验一下姿态窗口更加丝滑的显示效果?你想不想体验一下飞机在地图中更加流畅地移动?那么请到如下界面进行设置:

 

 其中每个项目后面的下拉菜单用来设置飞控下发该项目的频率,8指的就是8Hz。一般情况下,使用USB连接飞控时,由于通信速率很高,这里的各个频率都可以设置的很高(超过10Hz,甚至50Hz都行);但是如果是使用数传电台连接的飞控,受限于通信速率和电台缓存的大小,如果设置的过高,就会无法有效传输的情况,建议尝试各种数字以探索自己的数传电台的极限(不同数传电台配置不同,这里没有统一的标准)。

 每个项目的作用如下:

  1. 高度:很不幸 ,这里是翻译错误,在英文界面下,这里的单词是“Attitude”,是“姿态”的意思,但是翻译者看成了“Altitude”,于是翻译成了“高度”。实际上,这里就是姿态,如果你想让地面站首页的姿态窗口刷新更加丝滑,就增大这里的值(比如10);
  2. 位置:飞机的位置信息下发速率,如果你想让飞机在地图里的运动不是一蹦一蹦的,就增大这个值;
  3. 模式/状态:飞行模式和飞机状态数据;
  4. 遥控:遥控器各个通道输入值和飞控各个PWM通道输出值;
  5. 传感器:各个传感器的输出值。

 对于多旋翼固件,这一部分的代码在“ardupilot/ArduCopter/GCS_Mavlink.cpp”中,搜索“STREAM”关键词可以找到。

十六、规划循环运行的航线(设置航点自动跳转)

 有时候我们想让飞机按照一个航线循环飞行,这个可以通过在最后一个航点的结尾添加一个“DO_JUMP”航点来实现,如下图所示,该点的命令名为“DO_JUMP”,第一个参数是要跳转到的航点的编号(从1开始的),第二个参数是循环次数,意思是总共循环跳转多少次(比如如果此值为10,则在第10此跳转完成后,不再跳转),注意,如果此值设置为0,则从不跳转,等效于没有添加这个跳转航点。

 

 注意:

  1、不存在无限循环的跳转逻辑,如果想无限循环,可以将“Repeat#”设置为一个较大的数来代替;

  2、“DO_JUMP”点后面的经纬度是无效的,不管设置为任何值,对飞行逻辑没有任何影响,因为飞控实际上只使用了前两个参数。

十七、实时显示本架次的“飞行时间”

 本架次的实时飞行时间对于我们估算剩余电量意义很大,MissionPlanner通过简单设置即可显示这一关键信息:

 在MissionPlanner姿态窗口下方的“快速”标签页中,“双击”一个打算替换为显示飞行时间的项目,会弹出可选信息勾选列表,选择下图红色方框中的一个项目即可:

 

 

 

 

 上述四个项目各自的含义如下:

  • timeInAir:本次上电后飞机在空中的累计时间,单位:秒。如果此次上电后飞机多次起降,中间没有拔插电池,则这里是各个起降在空中的时间之和;
  • timeInAirMinSec:意义跟“timeInAir”一样,只不过以“分钟·秒”的格式显示,更加方便;
  • timeSinceArmInAir:本次解锁后在空中的时间,单位:秒。这个跟之前的起降无关;
  • timesincelastshot:这个我没有用过,大家可以自己试试,看看到底是什么意思,不过一般情况下“timeInAirMinSec”就够用了。

十八、打开MissionPlanner高级模式

 有时候,MissionPlanner连接飞控后发现没有“全部参数表”等关键的页面,这是由于MissionPlanner的布局被修改为“Basic”导致的,具体为什么会变成这样,我暂时没有找到规律,不过解决方法很简单,按照下图步骤操作即可:

 

 

十九、修改地图中飞机飞行轨迹的长度

 如下图所示,有时我们我们想让地图中飞机的飞行轨迹多保留一段时间,从而看出飞机飞行轨迹的全貌。

  按照下图所示方法调整轨迹的长度即可,里面数值的单位MissionPlanner官方并没有给出说明,大家可以根据当前轨迹的长度与你期望的长度等比例缩放即可:

  

二十、将日志导出为Matlab格式

 做科研的朋友可能需要将飞控日志导出为Matlab可以识别的格式,这个功能已经被集成到了MissionPlanner中了。如下图所示,点击“创建Matlab文件”按钮,然后在弹出的窗口中选择要分析的日志,等待几秒钟之后,在此日志所在文件夹下会出现一个与日志同名的“.mat”格式的文件,这就是你要的东西。注意,导出过程很快并且没有进度条以及导出完成的弹窗提示,当你看到这个文件出现后,就可以认为导出已经完成。

 

二十一、将飞控恢复为默认参数

 如果不小心将飞控参数调乱了,或者飞控出现莫名其妙的问题,可以尝试恢复默认参数,操作步骤如下图所示:

 

二十二、MissionPlanner无法显示飞行模式

 如下图所示,有的时候我们会遇到MissionPlanner无法显示飞行模式的情况,所有的模式都显示为“Unknown”,这是由于MissionPlanner的配置文件损坏导致的(与飞控无关),我们可以删除此配置文件,MissionPlanner会在下次打开时自动新建此配置文件,从而可以解决问题。

 

 解决步骤如下:

 1、关闭MissionPlanner;

 2、删除“此电脑” -> “文档” -> “Mission Planner”文件夹(如果你没有将MissionPlanner安装在C盘默认路径下面,这个文件夹可能不在这个位置,具体在哪里请自行查找)。注意,我们平常下载的飞控日志就在此文件夹下的“logs”文件夹下,如果这些日志有用,请先备份“logs”文件夹;

 3、打开MissionPlanner,你会发现MissionPlanner就会按照首次安装时那样弹出一些设置窗口,按照默认设置即可。

二十三、使用“游戏手柄”代替遥控器来控制飞机

 APM官网给出了设置方法,链接如下:https://ardupilot.org/copter/docs/common-joystick.html?highlight=joystick

二十四、MissionPlanner连接飞控时自动从飞控中读取航点数据并显示出来

 MissionPlanner可以在连接飞控时自动从飞控中读取航点数据并显示出来,大家可以在下图所示页面启用或者关闭此功能(注意,对于大部分飞控硬件来说,航点数据是存储在飞控的FRAM中,是掉电非易失的):

 

二十五、缓存地图,以方便没网时使用

 MissionPlanner支持手动缓存一个区域的地图的功能,以方便电脑没网时使用,具体方法如下:

 1、切换到“飞行计划”页面;

 2、将地图缩放到合适的大小,以便框选需要缓存的区域。然后按着键盘的“CTRL”键不放,并使用鼠标左键在地图上拖出一个矩形框,之后松开“CTRL”键;

 3、在地图上的任意位置点击鼠标右键,在菜单中选择“地图工具 -> 读取”,之后会弹出窗口让选择要缓存的最大缩放级数,默认20即可(最大是多大请自行摸索,我也不清楚 -_-|| )。之后电脑联网下载该区域不同缩放级数的地图图片,缓存结束后即可离线使用。

 

二十六、将缓存的地图复制给另外一台无法上网的电脑

 第二十五条讲述的是如何在可联网的电脑上缓存地图以方便没网时使用,但是有时候我们会遇到一台电脑根本不允许上网但是还是要使用地图的情况,这时我们可以将其他电脑缓存的地图复制给这台无法上网的电脑,方法如下:

 缓存的地图数据是放在“C:\ProgramData\Mission Planner”文件夹中的(注意是“ ProgramData ”,不是“Program Files”),将此文件夹整体复制到无法上网的电脑的同名文件夹中即可。另外,默认情况下“ C:\ProgramData ”文件夹是处于隐藏状态的,直接打开C盘是看不到的,需要按下图所示勾选“隐藏的项目”来显示它。

 

标签:说明,地图,MissionPlanner,文件夹,飞行,使用,日志,飞控
From: https://www.cnblogs.com/lyggqm/p/17958819

相关文章

  • Vue.nextTick在动态更新iframe的src中的使用
    Vue.nextTick在动态更新iframe的src中的使用:https://codeleading.com/article/63673310260/ 当iframe中的地址src需要动态改变时,需要使用Vue.nextTick来切换地址src,否则DOM的地址不会实现更新,而是保持上一次的src。在数据变化后要执行的某个操作,而这个操作需要使用随数据改变......
  • java使用 template模板ftl 含有图片的生成数据
    点击查看代码/***Base64编码.*/publicstaticStringbase64Encode(byte[]input){BASE64Encoderencoder=newBASE64Encoder();returnencoder.encode(input);}@OverridepublicvoidprintStudentRxdjb(StudentRxdj......
  • windows使用SSH隧道socks5代理自动运行尝试
    场景在《windows机器SSH隧道访问内网服务》随笔中通过XShell工具,建立SSH隧道提供Sock5代理服务,在使用过程中出现了一些问题,每次都需要手动打开代理,或者因为锁屏或网络问题会频繁断开,每天都要手动操作好多次。很是繁琐,于是想寻求一种自动运行的方式。经过多次尝试,终于使用putty软......
  • arthas命令实现原理-MBean的使用
    MBean,MXBean简介MBean是一个托管的javabean对象,MBean是一个托管Java对象,类似于JavaBeans组件,遵循JMX(JavaManagementExtensions,即Java管理扩展)规范中规定的设计模式。MBean可以表示任何需要管理的资源。MBeans公开了一个管理接口,该接口由以下部分组成:一组可读或可写属性,或两......
  • 如何不花一毛钱使用chatGPT-4?
    Merlin:一款Chrome扩展程序,可在任何网站上提供即时帮助-从电子邮件编写到文本摘要。Poe:获得多样化的人工智能见解。这是Quora的应用程序,具有Claude和GPT-4等人工智能模型。BingAI:抛弃谷歌。Bing的搜索现在因GPT-4而变得更加强大。GoogleBard:问任何问题。这是一个......
  • [Android] EventLogTags.logtags简单使用
    转载来源:https://blog.csdn.net/yfbdxz/article/details/114702144用EventLog.writeEvent打的日志(或EventLogTags.java方法打的日志),可以用logcat-bevents查看frameworks/base/core/java/android/util/EventLog.java//tag:Theeventtypetagcode.value:va......
  • TP6使用邮件类发送邮件
    一、开启SMTP服务(使用php发送邮件需要用到SMTP服务,这里以QQ邮箱的SMTP服务为例)1.登录qq邮箱,在首页上找到“设置”。2.选择开启的服务,一般都全选,POP3/SMTP/IMAP,开启SMTP服务就得先开通客户授权码。3.点击开通客户授权码,选择开启4.需要手机验证码,需要绑定手机号。5.SMTP服务需......
  • Rust 使用包、Crate 和模块管理不断增长的项目
    目录包和Crate定义模块来控制作用域与私有性在模块中对相关代码进行分组引用模块项目的路径使用pub关键字暴露路径二进制和库crate包的最佳实践super开始的相对路径创建公有的结构体和枚举使用use关键字将路径引入作用域创建惯用的use路径.使用use引入函数使用use引......
  • CodeQL基本使用
    0x01安装codeql去github下载一个对应版本的codeql捆绑包。https://github.com/github/codeql-action/releases然后解压,这里我是解压到桌面然后用添加到环境变量中然后在任意位置输入codeql命令,如果能有以下提示就表示安装成功然后下载vscode,并且给vscode安装codeql扩展0x02创......
  • 使用CentOS搭建高性能静态HTTP服务器
    在互联网应用中,静态内容是广泛存在的,例如HTML页面、图片、视频等。为了提供高效、稳定和安全的静态内容服务,我们可以使用CentOS来搭建高性能的静态HTTP服务器。1.选择合适的软件Nginx和Apache是两个流行的HTTP服务器软件。Nginx以其高效、轻量级和快速的性能而著称,特别适合于提供......