Pixhawk无人机教程-8.1 在Mission Planner中下载与分析日志(转载)

2023-05-16

摘自:https://www.ncnynl.com/archives/201608/491.html

 

Pixhawk无人机教程-8.1 在Mission Planner中下载与分析日志 *

闪存日志

目录

  1. 闪存日志
  2. 日志类型(闪存 VS 数传日志)
  3. 设置你想要记录的数据
  4. 用Mission Planner下载日志
  5. 查看内容
  6. 详细信息(针对APM:Copter)
  7. 查看KMZ文件
  8. 视频教程

日志类型(闪存 VS 数传日志)

有两种方法可以记录你飞行时的数据。尽管两种记录方法十分类似,但也有些区别:

  • 闪存日志(本页的主题)飞行完成后,可以从APM或PX4的板载闪存上下载。飞机和地面车辆,只要一开机就会自动创建闪存日志。四轴上则是解锁后才创建闪存日志。

  • 数传日志(也称为“tlogs”)用3DR或XBee数传模块连接APM到电脑上,会被Mission Planner(或其他地面站)记录下来。你可以 在这里找到详细信息。

设置你想要记录的数据

  • LOG_BITMASK参数控制闪存内记录什么类型的数据。
  • 如果你想指定某个消息类型附加到默认的方法上,在Mission Planner标准参数列表页面,可以在Log Bitmask的下拉列表设置。

MissionPlanner_LogBitmask

使用终端控制会更加方便(命令行界面),如下所示:

  • 进入Mission Planner的终端界面
  • 单击“连接APM”或“连接PX”
  • 键入logs
  • 启用或禁用某个消息类型,在enable或disable后输入信息的类型即可。
  • 如: enable IMU

MissionPlanner_CLI_logs

用于Arducopter的所有可能的闪存信息:

  • ATT:roll,pitch和yaw(启用ATTITUDE_FAST记录频率是50Hz,启用ATTITUDE_MED记录频率是10HZ)。
  • ATUN:自动调参概览(从开头记录每一次“晃动”测试)
  • ATDE:自动调参详情(以100HZ记录飞行器的晃动情况)
  • CAMERA(相机):快门按下后,记录当时的GPS时间、roll、pitch、yaw、纬度、精度、高度。
  • CMD(命令):从地面站接收命令,或者作为执行任务之一。
  • COMPASS(罗盘):罗盘原始数据和compassmot补偿值。
  • CURRENT(电流):以10HZ的频率,记录电流和主板电压信息。
  • CUTN:油门和高度信息,包括油门输入大小、超声波测得的高度(sonar alt)、气压测得的高度(baroalt),以10HZ频率记录。
  • D32:id = 9,简单模式最初的航向,单位是百分之一度(例: 18000=南)。
  • DU32:id = 7,内部状态的位掩码。个别位的含义可以在 ArduCopter.pde中定义的结构体ap找到。
  • ERR:子系统错误和错误编号。这些列表上可以在 “使用日志文件诊断问题”Wiki页面找到。
  • EV:一个事件的编号。事件的完整列表可以在 defines.h 找到,最常见的是:
    • 10 = Armed(解锁)。
    • 11 = Disarmed(锁定)。
    • 15 = Auto Armed(自动解锁)(飞手已经拉高油门大于0 了、自动驾驶仪不用再控制油门)
    • 16 = TakeOff(起飞)
    • 18 = Land Complete(降落完成)
    • 25 = 设定“家”(家的位置坐标已经获取)
  • GPS:GPS的位置、高度、卫星数量,hdop,在GPS更新时会记录(通常是5Hz)。
  • IMU:加速计原始数据和陀螺仪信息,记录频率50HZ。
  • INAV:惯性导航高度和位置。
  • MOTORS:单个电机信息,记录频率50Hz。
  • NTUN:导航数据,包括所需和实际速度、所需加速度、所需roll和pitch角度,在自动驾驶仪控制水平位置(悬停,返航,自动模式)时,以频率10Hz记录。
  • OPTFLOW:光流传感器速度和所需roll和pitch角度(使能OF_LOITER时有效)。
  • PID:如果被CH6旋钮调节,PID控制器输出的P、I、D结果,记录频率50Hz。
  • PM:性能信息,包括多个循环缓慢运行,最长循环时间,单位:毫秒(每10秒记录一次)。

注意:

  • 如果使能太多的日志项,会严重影响性能发挥。所以一般来说默认即可。
  • 或作为分析数据需要时,只使能有用的日志项,如:INAV,MOTORS和IMU。

欲知在其他平台有哪些日志可用,执行以下步骤:

  • 做之前,把所要启用的日志项记下——写下来。
  • 在终端输入Enable All。将会启用全部日志项,当然也包括你不想要的。
  • 所有被记录的日志项会显示出来。
  • 若想禁用某日志项–如:某个日志项返回初始设置,在“disable”后跟着名字即可。
  • 或者进入-软件–高级参数,查看日志位掩码(LOG_BITMASK)参数,给模型配置参数。

用Mission Planner下载日志

  • 打开Mission Planner的终端界面。
  • 单击“连接APM”或“连接PX”。
  • 当出现提示时,单击“日志下载”
  • 当“日志”屏出现,在多选框先选择,然后下载(一般选择数字最大)
  • 选择你的模型类型(APM:Copter, APM:Plane, APM:Rover)。
  • 这一步,保证了下载的参数比率正确。
  • 单击“下载这些日志”
  • 对于非常大的日志,可能要花几分钟才能下载完,注意看着“清除记录”按键下的传输进度。
  • 当文件下载完成,会显示“已完成”。

MissionPlanner_CLI_downloadlogs

  • 出现的文件夹会显示日志文件,位置在软件安装目录,logs文件夹或在手动配置的文件夹。
  • 在软件的配置/调试 > log path可以设置。
  • 文件的格式:YYYY-MM-DD HH-MM##.log,其中日期是当前日期,##是日志编号。
  • .kmz文件和log文件是一起的,用Google打开kmz文件后,可以看到飞行路径3D效果图。
  • 同时也生成了 .gpx文件 ,不过很少用。

清除日志:

  • 按下“清除日志”按钮,会清除所有的日志。
  • 这个功能很有用,可以把前些天没用的日志删除,保留有用的日志。
  • 闪存写满了,会覆盖最旧的日志。

查看内容

打开闪存文件分析,按照以下步骤:

  • 打开Mission Planner的终端界面。
  • 按下日志浏览按钮,接着打开.log闪存文件

MissionPlanner_CLI_openDataflash

日志和顶部的图形在一个界面。

在图形上,按下鼠标左键不放,移动到绿色按钮上面范围以内都行,绘图大小就可以改变。

基本格式:

  • 行号出现在最左侧
  • 软件版本和主板型号显示在顶部
  • 其次,FMT信息告诉Mission Planner每个信息类型的列标题
  • PARM对应的行,显示每个参数(按EEPROM存储排列的顺序)以及刚开始飞行时的值
  • 飞行数据信息,包括GPS、IMU(惯性测量单元)等等。

MissionPlanner_Dataflash_format

  • 想绘制哪个飞行数据,只要相应行单击它。
  • 你就会看到相应的列标题会更新。
  • 接着点击那个列,然后按下“绘制这个数据”键。
  • 上面的例子,ATT的Roll-In和Roll数据已经绘制成图了。
  • 鼠标的滚轮可用于放大或缩小。
  • 你也可以选择图表的某个区域进行放大。
  • 缩小,鼠标右键单击并选择“设置比例为默认值"。
  • 你还可以用过滤的方式,在第一行单击,在下拉菜单选择信息类型(飞行数据类型)。
  • 这非常有用,特别是查看飞行任务期间,不同飞行模式时(称为“模式”信息) 。
  • 再次单击第一列,按“取消”可以清除过滤器。

MissionPlanner_CLI_openDataflashFilter

详细信息(针对APM:Copter)

  • ATT(姿态信息):
  • Roll-In:你想要的roll角度,单位:厘米-度(roll往左为负,右是正)
  • Roll:模型实际的roll,单位:厘米-角度(roll往左为负,右是正)
  • Pitch-In:你想要的pitch角度,单位:厘米-角度(pitch往前为负,后是正)
  • Roll:模型实际roll,单位:厘米-角度(roll往左为负,右是正)
  • Yaw-In:你想要的偏航率,范围 – 4500 ~ + 4500(不是“度/秒”,顺时针方向为正)
  • Yaw:模型实际航向,单位“厘米-度”,且 0 = 北。
  • NavYaw:想要的航向,单位:厘米-度

ATUN(自动调试概览):

  • Axis(轴):0 = Roll,1 = Pitch
  • 调试步骤:0 = 恢复值(测试前或测试后),1 = 测试(如:用晃动测试响应),2 = 更新数据(晃动完成,增益调整完成)
  • RateMin:测试期间最小记录速率
  • RateMax:测试期间最大记录速率
  • RPGain:测试得到的P比率增益值
  • RDGain:测试得到的D比率增益值
  • SPGain:测试得到的自稳P增益值

ATDE (自动调试详细步骤):

  • 角度(Angle):飞行器经测试轴的角度,单位厘米-度。
  • 比率(Rate):飞行器经测试轴,旋转的比率,单位厘米-度。

CAM(相机快门按下时的时间和所处位置):

  • GPSTime:按下快门后,GPS记录当时的时间(以毫秒为单位)
  • Lat:加速度计 + GPS纬度估计值
  • Lat:加速度计 + GPS经度估计值
  • Alt:加速度计 + 气压计测得离地面高度估计值(单位:cm)
  • Roll:模型roll角度(单位:厘米-度)
  • Pitch:模型pitch角度(单位:厘米-度)
  • Yaw:模型的航向(单位:厘米-度)
  • CMD:(从地面站接收命令或作为任务的一部分执行)。
  • CTot:命令总数
  • CNUM:任务的命令编号(0代表不没飞,1代表第一个任务)
  • Cld: MavLink 消息ID
  • Copt:选项参数(用于许多不同的目的)
  • Prm1:命令参数(用于许多不同的目的)
  • Alt:某命令执行时的高度,单位为米
  • Lat:某命令执行时的纬度
  • Lng:某命令执行时的经度

罗盘(COMPASS):(罗盘原始数据和compassmot补偿值):

  • MagX,MagY。MagZ:x、y和z轴,原始磁场值。
  • OfsX,OfsY,OfsZ:原始磁场偏移量(只有参数COMPASS_LEARN = 1时才有用)
  • MOfsX,MOfsY,MOfsZ:油门或电流的compassmot补偿

CURRENT(电流):(以10HZ频率记录电流和主板电压信息):

  • Thr:油门输入范围从 0 ~ 1000
  • ThrInt:综合油门(即,此次飞行全部油门输出之和)
  • 电压(Volt):电池电压; 记录格式:实际电压*100
  • Curr:电池电流输出,记录格式:安培*100
  • VCC:主板电压
  • CurrTot:电池总放电电流

CUTN(油门和高度信息):

  • ThrIn:飞手的油门大小,表示为从0到1000的数值
  • SonAlt(声纳高度):声纳测得离地面的高度
  • BarAlt:气压计测得离地面的高度
  • WPAlt:定高、悬停、返航或自动飞行模式的目标高度
  • NavThr:未使用
  • AngBst:飞行器倾斜飞行时会增加的油门大小,范围0 ~ 1000(自动给所有电机同时加油门,以补偿自动驾驶仪在倾斜飞行时减少的高度)
  • CRate:加速计 + 气压计估计的上升速率,单位cm/s
  • throut:最终油门输出大小,传送到电机(从0 ~ 1000)。在自稳模式下,通常相当于ThrIn + AngBst。
  • DCRate – 飞手想要的上升速率,单位:cm/s

D32,DU32(数据类型:有符号32位整数或无符号32位整数):

  • id:变量标识号。仅有两个可能的值
  • 7 = 内部状态的位掩码。个别位含义在 ArduCopter.pde文件结构体ap中。
  • 9 = 简单模式的初始航向,单位:厘米-度

ERR(错误信息):

  • 下面列出:子系统及错误代码
  • 1:Main(从未使用)
  • 2:无线电(Radio)
    • ECode 1:“Late Frame”意思是APM的板载ppm编码器,至少2秒钟了没有更新数据。
    • ECode 0:意思是ppm编码器恢复数据更新,错误已解决。
  • 3:Compass(罗盘)
    • ECode 1:罗盘初始化失败(很可能是硬件问题)
    • ECode 2:从罗盘读取数据失败(可能是硬件问题)
    • ECode:上述错误已解决
  • 4:Optical flow(光流)
    • ECode 1:初始化失败(很可能是硬件问题)
  • 5:油门安全故障
    • ECode 1:油门下降到参数FS_THR_VALUE以下,可能RX/TX失去连接
    • ECode 0:上述问题解决,意思是RX/TX恢复连接
  • 6:电池安全故障
    • ECode 1:电池电压低于参数LOW_VOLT,或电池过度放电能力超过参数BATT_CAPACITY
  • 7:GPS安全故障
    • ECode 1:GPS断开锁定至少5秒钟
    • ECode 0:GPS恢复锁定
  • 8:GCS(地面站)安全故障
    • ECode 1:地面站的操纵杆,至少5秒钟未变化。
    • ECode 0:恢复地面站的更新
  • 9:围栏
    • ECode 1:超过限定围栏高度
    • ECode 2:超过限定围栏范围
    • ECode 3:超过限定海拔高度和围栏范围
    • ECode 1:模型回到限定范围内
  • 10:飞行模式
    • ECode 0 – 10:模型不能进入想要的飞行模式
      (0 = 自稳,1 = 特技,2 = 定高,3 = 自动,4 = 导航,5 = 悬停,6 = 返航,7 = 盘旋,8 = 定位,9 = 着陆,10 = 光流—悬停)
  • 11:GPS
    • ECode 2:GPS故障
    • ECode 0:GPS已故障清除
  • 12:撞击检查
    • ECode 1:检测到撞击

EV:(事件的编号)。可能事件的完整列表可以在 defines.h 找到,最常见的是:

  • 10 = 解锁(Armed)。
  • 11 = Disarmed(上锁)。
  • 15 = 自动解除锁定(飞行员已经拉高油门大于0了、自动驾驶仪不用再控制油门)
  • 16 = 起飞(TakeOff)
  • 18 = 降落完成(Land Complete)
  • 25 = 设定“家”(家的位置坐标已经获取)

GPS:

  • 状态–0 = 没搜到GPS; 1 = 有GPS,但没定位; 2 = 2D 定位,3 = 3D定位
  • GPSTime:按下快门后,GPS记录当时的时间(以毫秒为单位)
  • NSats:目前正在使用卫星的数量
  • HDop:GPS测量精度(1.5代表好,大于2代表不太好)
  • Lat:由GPS得到的横向高度
  • Lng:由GPS得到的纵向高度
  • RelAlt:加速计 + 气压高度,单位为米
  • Alt:由GPS得到的高度(不是由飞控)
  • SPD:水平的地面速度(单位:米/秒)
  • GCrs:地面方向,以度为单位(0 = 北)
  • IMU (加速度计和气压信息):
  • GyrX,GyrY,GyrZ:陀螺仪原始旋转率(单位:度/秒)
  • AccX,AccY,AccZ:加速度计原始值(单位:m/s/s)
  • INAV(惯性导航位置和估计速度):
  • BAlt:气压高度(单位:cm)
  • IAlt:惯性导航高度估计值(单位:cm)
  • IClb:惯性导航上升速率估计值(单位cm/s)
  • ACorrX。ACorrY,ACorrZ: x,y 和 z轴 加速度计矫正(单位:cm/s/s)
  • GLat,GLon:“家”的GPS纬度和经度
  • ILat, ILng:“家”的惯性导航经度和纬度

模式(飞行模式):

  • 模式:飞行模式显示为一个字符串(即:自稳、悬停等)
  • ThrCrs:巡航油门大小(0–1000),自动驾驶仪自动判断选择最佳大小的油门,用于保持飞行器悬停稳定。

电机(PWM输出到各个电机):

  • Mot1,Mot2等:从飞控发送pwm命令到电调/电机

NTUN(导航信息):

  • WPDst:离下一个航点(或悬停目标)的距离(单位:cm)。只有在悬停,返航,自动模式才更新。
  • WPBrg:bearing to the next waypoint in degrees
  • PErX:纬度方向,飞行器和下一航点之间的距离。
  • PErY:经度方向,飞行器和下一航点之间距离。
  • DVelX:纬度方向,所需速度(单位为cm/s)
  • DVelY:经度方向,所需速度(单位为cm/s)
  • VelX:纬度方向,实际加速 + GPS估计速度
  • VelY:经度方向,实际加速 + GPS估计速度
  • DAcX:纬度方向,所需加速度(单位为cm/s/s)
  • DAcY:经度方向,所需加速度(单位为cm/s/s)
  • DRol:想要的roll角度(单位:百分之一度)
  • DPit:想要的pitch角度(单位:百分之一度)

PM(性能监测):

  • RenCnt:DCM renormalization count – a high number may indicate problems in DCM (extremely rare)

  • RenBlw:DCM renormalization blow-up count – how many times DCM had to completely rebuild the DCM matrix since the last PM.Normally innocuous but a number that constantly grows may be an indication that DCM is having troubles calculating the attitude (extremely rare)

  • FixCnt: the number of GPS fixes received since the last PM message was received (it’s hard to imagine how this would be useful)

  • NLon: number of long running main loops (i.e. loops that take more than 5% longer than the 10ms they should)

  • NLoop: the total number of loops since the last PM message was displayed.Normally 1000 and allows you to calculate the percentage of slow running loops which should never be higher than 15%.

  • MaxT: the maximum time that any loop took since the last PM message.This should be close to 10,000 but will be up to 6,000,000 during the interval where the motors are armed

  • PMT: a number that increments each time a heart beat is received from the ground station

  • I2CErr:最新性能监测数据,I2C错误的总数。任何的I2C错误,就可能意味着I2C总线出了问题。可能会导致主循环时间变长,导致飞行性能下降。

查看KMZ文件

当你从APM/PX4下载闪存日志文件,同时会自动创建一个KMZ文件(文件扩展名为.kmz)。可以用谷歌地图打开(只需双击该文件),在谷歌地球上查看飞行数据。请参见有关 数传日志页面 了解更多详细信息。

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

Pixhawk无人机教程-8.1 在Mission Planner中下载与分析日志(转载) 的相关文章

  • Pixhawk无人机教程-8.1 在Mission Planner中下载与分析日志(转载)

    摘自 xff1a https www ncnynl com archives 201608 491 html Pixhawk无人机教程 8 1 在Mission Planner中下载与分析日志 闪存日志 目录 闪存日志日志类型 闪存 VS
  • pixhawk的offboard模式其实是和定高(AltHold) 定点(loiter) 这些模式平级的一个模式

    pixhawk的offboard模式其实是和定高 xff08 AltHold 定点 loiter 这些模式平级的一个模式 所以也是可以通过遥控器进入offboard模式的 不是什么特别的东西 https blog csdn net msq1
  • PIXHAWK机架类型的的设置选择与电机通道顺序设置

    1 共轴直升机 main1 左侧斜盘电机 xff0c 控制俯仰 main2 xff1a 左侧斜盘电机 xff0c 控制滚转 main3 xff1a 上面旋翼 xff0c 逆时针旋转 main4 xff1a 下面旋翼 xff0c 顺时针旋转
  • 关于pixhawk硬件IMU和compass那点事儿

    文章目录 前言一 IMU和compass是什么 xff1f 二 导航坐标系与机体坐标系三 安装IMU xff0c compasss四 hwdef中设置IMU xff0c compass朝向总结 前言 继上一篇讲解了pixhawk的硬件组成
  • apm、pixhawk、pixhack飞控航拍后pos数据提取流程

    apm pixhawk pixhack飞控pos数据提取流程 下载日志 打开log分析 区域omap地图验证 验证之前将log文件使用mission planner进行kml验证 筛选相机pos坐标 xff08 选择CAM xff09 很重
  • pixhawk ulg转csv

    ulg是目前最新版px4固件生成的log格式 xff0c 下载最新版的flightplot即可对内部数据进行预览分析 xff0c flightplot中支持部分函数和运算符操作 xff0c 但对带 数据的操作不支持 xff0c 如需要对某些
  • PX4/PixHawk无人机飞控应用开发

    最近做的一个国防背景的field UAV项目 xff0c 细节不能多谈 xff0c 简单写点技术体会 1 PX4 Pixhawk飞控软件架构简介 PX4是目前最流行的开源飞控板之一 PX4的软件系统实际上就是一个firmware xff0c
  • Pixhawk飞行模式的讨论

    手动模式 offboard 地面站 操控的区别 使用遥控操纵的模式 Simple and Super Simple 选项 加了这个选项之后 xff0c 它的磁力计会记录飞机解锁时 xff0c 朝向就是无人机的前方 每个飞行模式的旁边都有一个
  • Pixhawk代码分析-源码框架

    源码框架 pixhawk代码框架 xff1a pixhawk代码框架基础分析 xff1a 阅读下面内容时请结合源码阅读 xff0c 便于理解 The basic structure of ArduPilot is broken up int
  • pixhawk PX4FMU和PX4IO最底层启动过程分析

    首先 xff0c 大体了解PX4IO 与PX4FMU各自的任务 PX4IO STM32F100 为PIXHAWK 中专用于处理输入输出的部分 输入为支持的各类遥控器 PPM SPKT DSM SBUS 输出为电调的PWM 驱动信号 它与PX
  • pixhawk position_estimator_inav.cpp思路整理及数据流

    写在前面 xff1a 这篇blog主要参考pixhawk的高度解算算法解读 xff0c 并且加以扩展 xff0c 扩展到其他传感器 xff0c 其实里面处理好多只是记录了流程 xff0c 至于里面实际物理意义并不是很清楚 xff0c 也希望
  • pixhawk: px4代码初学分析:追溯电机控制--pwm输出

    追溯电机控制 pwm输出 正常工作状态下pwm输出过程简述 xff1a 其他状态下pwm输出 xff1a 正常工作状态下pwm输出过程简述 xff1a 姿态解算部分得出姿态控制量通过px4io cpp把姿态控制量发送给IOIO串口读取姿态控
  • 【Pixhawk】注册一个字符型驱动设备

    最近学习Pixhawk的SPI xff0c 本以为PX4是STM32单片机而已 xff0c 写个SPI驱动应该很简单 但是当我看到mpu9250的那些cpp文件 xff0c 我一下就蒙了 由于PX4用的NUTTX系统 xff0c 类似Lin
  • 飞行控制器Pixhawk简介

    作者 xff1a 华清远见讲师 Pixhawk是一款由PX4开源项目设计并由3DR公司制造生产的高级自动驾驶仪系统 其前身是APM xff0c 由于APM的处理器已经接近满负荷 xff0c 没有办法满足更复杂的运算处理 xff0c 所以硬件
  • 搭建pixhawk飞控无人小车--替换自带遥控器

    因为小车原装遥控器接收机和电调版整合在一个小板子上 xff0c 且没有相关资料 xff0c 无法接入飞控 因此单独购买遥控器 在某宝上购买富斯遥控器i6 xff0c 总共六个通道 三个双向开关 一个三向开关 遥控器简单入门视频如下 xff0
  • APM与Pixhawk间的关系

    1 APM 本文APM指代 xff1a https github com ArduPilot ardupilot 2 Pixhawk 本文Pixhawk指代 xff1a https github com PX4 Firmware 3 关系
  • ArduPilot飞控之Mission Planner模拟

    ArduPilot飞控之Mission Planner模拟 1 源由2 Mission Planner安装 amp 模拟2 1 安装Mission Planner2 2 Mission Planner模拟 3 注意事项3 1 界面语言设置3
  • Pixhawk WIFI模块Station模式配置

    Pixhawk WIFI模块配置 最近在鼓捣Pixhawk的飞控 xff0c 用来控制双桨的无人船 xff0c 固件刷的最新的ArduRover4 0 0 xff0c 经过扒论坛 xff0c 现场调试 xff0c 终于能让一艘船按照航点前行
  • MISSION_MAVLINK

    上传航点的mavlink包 MISSION ITEM 39 Message encoding a mission item This message is emitted to announce the presence of a miss
  • 树莓派3B使用mavlink串口连接PIXHAWK_V5

    参考网址 xff1a http ardupilot org dev docs raspberry pi via mavlink html https dev px4 io en robotics dronekit html https do

随机推荐