下载和分析闪存日志.docx
- 文档编号:26054268
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:15
- 大小:275.27KB
下载和分析闪存日志.docx
《下载和分析闪存日志.docx》由会员分享,可在线阅读,更多相关《下载和分析闪存日志.docx(15页珍藏版)》请在冰豆网上搜索。
下载和分析闪存日志
闪存日志
目录 [显示]
日志类型(闪存VS数传日志)
有两种方法可以记录你飞行时的数据。
尽管两种记录方法十分类似,但也有些区别:
∙闪存日志(本页的主题)飞行完成后,可以从APM或PX4的板载闪存上下载。
飞机和地面车辆,只要一开机就会自动创建闪存日志。
四轴上则是解锁后才创建闪存日志。
∙数传日志(也称为“tlogs”)用3DR或XBee数传模块连接APM到电脑上,会被MissionPlanner(或其他地面站)记录下来。
你可以 在这里找到详细信息。
设置你想要记录的数据
LOG_BITMASK参数控制闪存内记录什么类型的数据。
如果你想指定某个消息类型附加到默认的方法上,在MissionPlanner标准参数列表页面,可以在LogBitmask的下拉列表设置。
使用终端控制会更加方便(命令行界面),如下所示:
∙进入MissionPlanner的终端界面
∙单击“连接APM”或“连接PX”
∙键入logs
∙启用或禁用某个消息类型,在enable或disable后输入信息的类型即可。
如:
enableIMU
用于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:
油门和高度信息,包括油门输入大小、超声波测得的高度(sonaralt)、气压测得的高度(baroalt),以10HZ频率记录。
D32:
id=9,简单模式最初的航向,单位是百分之一度(例:
18000=南)。
DU32:
id=7,内部状态的位掩码。
个别位的含义可以在 ArduCopter.pde中定义的结构体ap找到。
ERR:
子系统错误和错误编号。
这些列表上可以在 “使用日志文件诊断问题”Wiki页面找到。
EV:
一个事件的编号。
事件的完整列表可以在 defines.h 找到,最常见的是:
10=Armed(解锁)。
11=Disarmed(锁定)。
15=AutoArmed(自动解锁)(飞手已经拉高油门大于0了、自动驾驶仪不用再控制油门)
16=TakeOff(起飞)
18=LandComplete(降落完成)
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。
∙欲知在其他平台有哪些日志可用,执行以下步骤:
∙做之前,把所要启用的日志项记下——写下来。
∙在终端输入EnableAll。
将会启用全部日志项,当然也包括你不想要的。
所有被记录的日志项会显示出来。
∙若想禁用某日志项–如:
某个日志项返回初始设置,在“disable”后跟着名字即可。
或者进入-软件–高级参数,查看日志位掩码(LOG_BITMASK)参数,给模型配置参数。
用MissionPlanner下载日志
∙打开MissionPlanner的终端界面。
∙单击“连接APM”或“连接PX”。
∙当出现提示时,单击“日志下载”
∙当“日志”屏出现,在多选框先选择,然后下载(一般选择数字最大)
∙选择你的模型类型(APM:
Copter,APM:
Plane,APM:
Rover)。
这一步,保证了下载的参数比率正确。
∙单击“下载这些日志”
对于非常大的日志,可能要花几分钟才能下载完,注意看着“清除记录”按键下的传输进度。
当文件下载完成,会显示“已完成”。
出现的文件夹会显示日志文件,位置在软件安装目录,logs文件夹或在手动配置的文件夹。
在软件的配置/调试>logpath可以设置。
文件的格式:
YYYY-MM-DDHH-MM##.log,其中日期是当前日期,##是日志编号。
.kmz文件和log文件是一起的,用Google打开kmz文件后,可以看到飞行路径3D效果图。
同时也生成了 .gpx文件,不过很少用。
清除日志:
∙按下“清除日志”按钮,会清除所有的日志。
∙这个功能很有用,可以把前些天没用的日志删除,保留有用的日志。
∙闪存写满了,会覆盖最旧的日志。
查看内容
打开闪存文件分析,按照以下步骤:
∙打开MissionPlanner的终端界面。
∙按下日志浏览按钮,接着打开.log闪存文件
日志和顶部的图形在一个界面。
在图形上,按下鼠标左键不放,移动到绿色按钮上面范围以内都行,绘图大小就可以改变。
基本格式:
∙行号出现在最左侧
∙软件版本和主板型号显示在顶部
∙其次,FMT信息告诉MissionPlanner每个信息类型的列标题
∙PARM对应的行,显示每个参数(按EEPROM存储排列的顺序)以及刚开始飞行时的值
∙飞行数据信息,包括GPS、IMU(惯性测量单元)等等。
想绘制哪个飞行数据,只要相应行单击它。
你就会看到相应的列标题会更新。
接着点击那个列,然后按下“绘制这个数据”键。
上面的例子,ATT的Roll-In和Roll数据已经绘制成图了。
鼠标的滚轮可用于放大或缩小。
你也可以选择图表的某个区域进行放大。
缩小,鼠标右键单击并选择“设置比例为默认值"。
这里的 有个短教程教你如何使用此功能。
你还可以用过滤的方式,在第一行单击,在下拉菜单选择信息类型(飞行数据类型)。
这非常有用,特别是查看飞行任务期间,不同飞行模式时(称为“模式”信息)。
再次单击第一列,按“取消”可以清除过滤器。
详细信息(针对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)
ECode1:
“LateFrame”意思是APM的板载ppm编码器,至少2秒钟了没有更新数据。
ECode0:
意思是ppm编码器恢复数据更新,错误已解决。
3:
Compass(罗盘)
ECode1:
罗盘初始化失败(很可能是硬件问题)
ECode2:
从罗盘读取数据失败(可能是硬件问题)
ECode:
上述错误已解决
4:
Opticalflow(光流)
ECode1:
初始化失败(很可能是硬件问题)
5:
油门安全故障
ECode1:
油门下降到参数FS_THR_VALUE以下,可能RX/TX失去连接
ECode0:
上述问题解决,意思是RX/TX恢复连接
6:
电池安全故障
ECode1:
电池电压低于参数LOW_VOLT,或电池过度放电能力超过参数BATT_CAPACITY
7:
GPS安全故障
ECode1:
GPS断开锁定至少5秒钟
ECode0:
GPS恢复锁定
8:
GCS(地面站)安全故障
ECode1:
地面站的操纵杆,至少5秒钟未变化。
ECode0:
恢复地面站的更新
9:
围栏
ECode1:
超过限定围栏高度
ECode2:
超过限定围栏范围
ECode3:
超过限定海拔高度和围栏范围
ECode1:
模型回到限定范围内
10:
飞行模式
ECode0–10:
模型不能进入想要的飞行模式
(0=自稳,1=特技,2=定高,3=自动,4=导航,5=悬停,6=返航,7=盘旋,8=定位,9=着陆,10=光流—悬停)
11:
GPS
ECode2:
GPS故障
ECode0:
GPS已故障清除
12:
撞击检查
ECode1:
检测到撞击
EV:
(事件的编号)。
可能事件的完整列表可以在 defines.h 找到,最常见的是:
10=解锁(Armed)。
11=Disarmed(上锁)。
15=自动解除锁定(飞行员已经拉高油门大于0了、自动驾驶仪不用再控制油门)
16=起飞(TakeOff)
18=降落完成(LandComplete)
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:
bearingtothenextwaypointindegrees
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:
DCMrenormalizationcount–ahighnumbermayindicateproblemsinDCM(extremelyrare)
RenBlw:
DCMrenormalizationblow-upcount–howmanytimesDCMhadtocompletelyrebuildtheDCMmatrixsincethelastPM.NormallyinnocuousbutanumberthatconstantlygrowsmaybeanindicationthatDCMishavingtroublescalculatingtheattitude(extremelyrare)
FixCnt:
thenumberofGPSfixesreceivedsincethelastPMmessagewasreceived(it’shardtoimaginehowthiswouldbeuseful)
NLon:
numberoflongrunningmainloops(i.e.loopsthattakemorethan5%longerthanthe10mstheyshould)
NLoop:
thetotalnumberofloopssincethelastPMmessagewasdisplayed.Normally1000andallowsyoutocalculatethepercentageofslowrunningloopswhichshouldneverbehigherthan15%.
MaxT:
themaximumtimethatanylooptooksincethelastPMmessage.Thisshouldbecloseto10,000butwillbeupto6,000,000duringtheintervalwherethemotorsarearmed
PMT:
anumberthatincrementseachtimeaheartbeatisreceivedfromthegroundstation
I2CErr:
最新性能监测数据,I2C错误的总数。
任何的I2C错误,就可能意味着I2C总线出了问题。
可能会导致主循环时间变长,导致飞行性能下降。
查看KMZ文件
当你从APM/PX4下载闪存日志文件,同时会自动创建一个KMZ文件(文件扩展名为.kmz)。
可以用谷歌地图打开(只需双击该文件),在谷歌地球上查看飞行数据。
请参见有关 数传日志页面 了解更多详细信息。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 下载 分析 闪存 日志