目次
Ardupilotのログ・ファイル
Mission Plannerで、Data Flash Logは、Binファイルになっていて、それをLogファイルに落とすには、下記のところをポチッとするとできるんですが。。
できてきたファイル見ると。。
こんなの。。わかんない。。
で。。pymavlinkというMavlinkの方のツール群の中にmavlogdump.pyというツールがありそうで。。それぞれの値を取ってこれそうなんですが。。
https://github.com/ArduPilot/pymavlink
いかんせん。。。使い方がわからない(笑)
https://erlerobotics.gitbooks.io/erle-robotics-mav-tools-free/content/en/tools/mavlogdump.html
と
https://discuss.ardupilot.org/t/output-data-from-the-log/16018/2
ここに少し乗っている。。
python mavlogdump.py –types GPS –format csv FILE.BIN > FILE.CSV
だって。。
で、WSLのUbuntuに入れて。。確かめてみました。
インストール方法などは、pymavlinkの通りでOKみたいです。
引数なし
tom2rd@xxxx:~/Documents/bin$ mavlogdump.py 2021-12-06-13-33-47.bin >2021-12-06-13-33-47.txt
ってすると。。
タイムスタンプ付きの、mission plannerで作ったLogと同じ形式になります(笑)
で。。
2021-12-06 13:33:47.19: POWR {TimeUS : 200145287, Vcc : 5.21184062958, VServo : 0.0260000005364, Flags : 1, AccFlags : 1, Safety : 2} 2021-12-06 13:33:47.19: BAT {TimeUS : 200145295, Instance : 0, Volt : 24.9287776947, VoltR : 0.0, Curr : qnan, CurrTot : qnan, EnrgTot : qnan, Temp : 0.0, Res : 0.0, RemPct : 100} 2021-12-06 13:33:47.19: MAG {TimeUS : 200145308, I : 0, MagX : 287, MagY : -10, MagZ : 394, OfsX : -109, OfsY : -65, OfsZ : -358, MOX : 0, MOY : 0, MOZ : 0, Health : 1, S : 200145306} 2021-12-06 13:33:47.19: MAG {TimeUS : 200145308, I : 1, MagX : 84, MagY : 388, MagZ : 629, OfsX : 0, OfsY : 0, OfsZ : 0, MOX : 0, MOY : 0, MOZ : 0, Health : 1, S : 200145304} 2021-12-06 13:33:47.19: BARO {TimeUS : 200145416, I : 0, Alt : -0.353867083788, Press : 102608.40625, Temp : 38.34, CRt : 0.13833604753, SMS : 200145, Offset : 0.0, GndTemp : 19.1974945068, Health : 1} 2021-12-06 13:33:47.19: BARO {TimeUS : 200145416, I : 1, Alt : 3.51454377174, Press : 102575.757812, Temp : 29.0, CRt : 0.13833604753, SMS : 200145, Offset : 0.0, GndTemp : 19.1974945068, Health : 1} 2021-12-06 13:33:47.19: CTUN {TimeUS : 200145443, ThI : 0.123866848648, ABst : 2.25305557251e-05, ThO : 0.0, ThH : 0.128501608968, DAlt : 0.0, Alt : -0.160450845957, BAlt : -0.35, DSAlt : qnan, SAlt : 0.0, TAlt : 1.10188508034, DCRt : 0, CRt : 6} 2021-12-06 13:33:47.19: FTN {TimeUS : 200145448, NDn : 1, DnF1 : 80.0, DnF2 : 0.0, DnF3 : 0.0, DnF4 : 0.0} 2021-12-06 13:33:47.19: ATT {TimeUS : 200145922, DesRoll : 0.0, Roll : -0.74, DesPitch : 0.0, Pitch : -0.79, DesYaw : 354.5, Yaw : 354.52, ErrRP : 0.0, ErrYaw : 0.0, AEKF : 3} 2021-12-06 13:33:47.19: RATE {TimeUS : 200145930, RDes : 6.10572195053, R : 0.417605996132, ROut : 0.0043260930106, PDes : 4.4775519371, P : 0.178727179766, POut : 0.00344010093249, YDes : 0.0204016882926, Y : 4.29625463486, YOut : 0.0008742743521, ADes : 0.682640075684, A : -6.43720626831, AOut : 0.0} 2021-12-06 13:33:47.19: XKF1 {TimeUS : 200144365, C : 0, Roll : -0.74, Pitch : -0.79, Yaw : 354.51, VN : -2.48858359555e-05, VE : 0.010904699564, VD : -0.0605220794678, dPD : -0.00687179528177, PN : 6.49941921234, PE : -5.43617248535, PD : 0.160450831056, GX : -0.34, GY : -0.42, GZ : 0.0, OH : 14.48} 2021-12-06 13:33:47.19: XKF2 {TimeUS : 200144365, C : 0, AX : 0.0, AY : -0.03, AZ : 0.0, VWN : 0.0, VWE : 0.0, MN : 299, ME : -42, MD : 374, MX : 0, MY : 0, MZ : 0, IDX : 0.0, IDY : 0.0, IS : 0.0} 2021-12-06 13:33:47.19: XKF3 {TimeUS : 200144365, C : 0, IVN : 0.0, IVE : 0.02, IVD : -0.04, IPN : 0.0, IPE : 0.0, IPD : -0.02, IMX : 0, IMY : 0, IMZ : 0, IYAW : 2.01, IVT : 0.0, RErr : 0.0, ErSc : 0.000205614778679}
こんな感じ。。
–types GPS –format csv
ってつけてみると。。
GPSのデータが、抽出できるみたい。
timestamp,TimeUS,I,Status,GMS,GWk,NSats,HDop,Lat,Lng,Alt,Spd,GCrs,VZ,Yaw,U 1638765227.19899988,200145263,0,3,102845199,2187,13,0.83,36.6426025,136.6242379,7.99,0.0174642503262,193.240524292,-0.0050000003539,0.0,1 1638765227.37843704,200324700,0,3,102845399,2187,13,0.83,36.6426025,136.6242379,7.99,0.0134536251426,228.012786865,0.01600000076,0.0,1 1638765227.57842088,200524684,0,3,102845599,2187,13,0.83,36.6426025,136.6242379,7.98,0.00400000018999,270.0,0.0110000008717,0.0,1
なるほど。。
–types IMU –format csv
だと。。 IMU(ジャイロとかの情報が出てくる)
timestamp,TimeUS,I,GyrX,GyrY,GyrZ,AccX,AccY,AccZ,EG,EA,T,GH,AH,GHz,AHz 1638765227.05861592,200004879,2,-0.016997942701,0.000953043519985,-0.0667885988951,-0.541677355766,0.0961284637451,-9.8179063797,0,0,31.5382328033,1,1,9188,4594
–show-types
だいたい予測はつくけど。。どんなTypeがあるんだ??(笑)
仕方がないので。。ソースを読んでみた(笑)
https://github.com/ArduPilot/pymavlink/blob/master/tools/mavlogdump.py
そしたら。。。こんな行を見つけた(笑)
parser.add_argument("--show-types", ・・・・
じゃぁ、やってみる(笑)
そうすると。。なるほど。。Mission Plannerでみる値のやつが出てくるわけですね(笑)
BAT DU32 CTRL RCIN PARM CMD D32 MOTB XKT MSG ATT IOMC XKF1 XKF3 XKF2 XKF5 XKF4 BARO XKY1 EV ORGN POWR POS AHR2 MULT PSCN GPS FMTU MODE XKY0 TSYN AUXF FMT CTUN GPA HEAT IMU DSF XKQ UNIT FTN RCOU MAV XKV1 XKV2 RATE TERR VIBE CAND RCI2 MAG SRTL XKFS PM ARM PSCD PSCE
ということで。。これらの例えば、
CMDっていうのを取れば。。 MissionのWaypointsが取れるんですね。。ほほぅ。。
Data Flash Logの対応表
とりあえず、ArdupilotのData Flash Logと、今回の機体の対応表を作ってみると。。
使えそうなLog類
Item | Discription | URL | Details | |||||||||||||||||
ATT
|
Canonical vehicle attitude | TimeUS | DesRoll | Roll | DesPitch | Pitch | DesYaw | Yaw | ErrRP | ErrYaw | AEKF | |||||||||
正規車の態度
|
Time since system startup | vehicle desired roll | achieved vehicle roll | vehicle desired pitch | achieved vehicle pitch | vehicle desired yaw | achieved vehicle yaw | lowest estimated gyro drift error | difference between measured yaw and DCM yaw estimate | active EKF type | ||||||||||
システムの起動からの時間 | 車両希望ロール | 車両ロールを達成しました | 車両希望ピッチ | 車のピッチを達成しました | 車両希望ヨー | 達成した車両ヨー | 最低推定ジャイロドリフトエラー | 測定されたヨーとDCMヨーの推定値の違い | アクティブEKFタイプ | |||||||||||
BARO
|
Gathered Barometer data | TimeUS | I | Alt | Press | Temp | CRt | SMS | Offset | GndTemp | Health | |||||||||
気圧計データを集めた
|
Time since system startup | barometer sensor instance number | calculated altitude | measured atmospheric pressure | measured atmospheric temperature | derived climb rate from primary barometer | time last sample was taken | raw adjustment of barometer altitude, zeroed on calibration, possibly set by GCS | temperature on ground, specified by parameter or measured while on ground | true if barometer is considered healthy | ||||||||||
システムの起動からの時間 | 気圧計センサーのインスタンス番号 | 標高計算 | 測定された大気圧 | 測定された大気温度 | 一次気圧計からの派生登り速度 | 最後のサンプルが取られました | 気圧計高度の生の調整、較正でゼロ化され、おそらくGCSによって設定された | パラメータで指定するか、または地面に測定された状態で温度上の温度 | 気圧計が健康と見なされている場合は真 | |||||||||||
BAT
|
Gathered battery data | TimeUS | Instance | Volt | VoltR | Curr | CurrTot | EnrgTot | Temp | Res | RemPct | |||||||||
バッテリーデータを集めました
|
Time since system startup | battery instance number | measured voltage | estimated resting voltage | measured current | consumed Ah, current * time | consumed Wh, energy this battery has expended | measured temperature | estimated battery resistance | remaining percentage | ||||||||||
システムの起動からの時間 | バッテリーインスタンス番号 | 測定電圧 | 推定休憩電圧 | 測定された電流 | 消費されたああ、電流*時間 | 消費されたWH、この電池が消費したエネルギー | 測定温度 | 推定電池抵抗 | 残りの割合 | |||||||||||
CMD
|
Executed mission command information | TimeUS | CTot | CNum | CId | Prm1 | Prm2 | Prm3 | Prm4 | Lat | Lng | Alt | Frame | |||||||
実行されたミッションコマンド情報
|
Time since system startup | Total number of mission commands | This command’s offset in mission | Command type | Parameter 1 | Parameter 2 | Parameter 3 | Parameter 4 | Command latitude | Command longitude | Command altitude | Frame used for position | ||||||||
システムの起動からの時間 | ミッションコマンドの総数 | このコマンドはミッションのオフセットです | コマンドタイプ | パラメータ1 | パラメータ2. | パラメータ3 | パラメータ4 | コマンド緯度 | 命令経度 | コマンド高度 | 位置に使用されるフレーム | |||||||||
EV
|
Specifically coded event messages | TimeUS | Id | |||||||||||||||||
具体的にコード化されたイベントメッセージ
|
Time since system startup | Event identifier | ||||||||||||||||||
システムの起動からの時間 | イベント識別子 | |||||||||||||||||||
GPS
|
Information received from GNSS systems attached to the autopilot | TimeUS | I | Status | GMS | GWk | NSats | HDop | Lat | Lng | Alt | Spd | GCrs | VZ | Yaw | U | ||||
AutoPilotに接続されているGNSSシステムから受信した情報
|
Time since system startup | GPS instance number | GPS Fix type; 2D fix, 3D fix etc. | milliseconds since start of GPS Week | weeks since 5 Jan 1980 | number of satellites visible | horizontal precision | latitude | longitude | altitude | ground speed | ground course | vertical speed | vehicle yaw | boolean value indicating whether this GPS is in use | |||||
システムの起動からの時間 | GPSインスタンス番号 | GPS修正タイプ。 2D修正、3D修正など | GPS週の開始以来ミリ秒 | 1980年1月5日から数週間 | 衛星数が表示されています | 水平精度 | 緯度 | 経度 | 高度 | 地上速度 | 地域 | 垂直速度 | 車両ヨー | このGPSが使用中かどうかを示すブール値 | ||||||
IMU
|
Inertial Measurement Unit data | TimeUS | I | GyrX | GyrY | GyrZ | AccX | AccY | AccZ | EG | EA | T | GH | AH | GHz | AHz | ||||
慣性測定単位データ
|
Time since system startup | IMU sensor instance number | measured rotation rate about X axis | measured rotation rate about Y axis | measured rotation rate about Z axis | acceleration along X axis | acceleration along Y axis | acceleration along Z axis | gyroscope error count | accelerometer error count | IMU temperature | gyroscope health | accelerometer health | gyroscope measurement rate | accelerometer measurement rate | |||||
システムの起動からの時間 | IMUセンサーインスタンス番号 | X軸に関する回転速度を測定しました | y軸に関する測定回転速度 | Z軸周りの回転速度を測定 | X軸に沿った加速 | Y軸に沿った加速度 | Z軸に沿った加速度 | ジャイロスコープエラーカウント | 加速度計エラーカウント | IMUの温度 | ジャイロスコープの健康 | 加速度計の健康 | ジャイロスコープ測定率 | 加速度計測定率 | ||||||
MAG
|
Information received from compasses | TimeUS | I | MagX | MagY | MagZ | OfsX | OfsY | OfsZ | MOX | MOY | MOZ | Health | S | ||||||
コンパスから受け取った情報
|
Time since system startup | magnetometer sensor instance number | magnetic field strength in body frame | magnetic field strength in body frame | magnetic field strength in body frame | magnetic field offset in body frame | magnetic field offset in body frame | magnetic field offset in body frame | motor interference magnetic field offset in body frame | motor interference magnetic field offset in body frame | motor interference magnetic field offset in body frame | true if the compass is considered healthy | time measurement was taken | |||||||
システムの起動からの時間 | 磁力計センサーのインスタンス番号 | ボディフレームの磁場強度 | ボディフレームの磁場強度 | ボディフレームの磁場強度 | ボディフレームの磁場オフセット | ボディフレームの磁場オフセット | ボディフレームの磁場オフセット | ボディフレーム中のモータ干渉磁界オフセット | ボディフレーム中のモータ干渉磁界オフセット | ボディフレーム中のモータ干渉磁界オフセット | コンパスが健康と見なされている場合はtrue | 時間測定が行われました | ||||||||
PARM
|
parameter value | TimeUS | Name | Value | ||||||||||||||||
パラメータ値
|
Time since system startup | parameter name | parameter value | |||||||||||||||||
システムの起動からの時間 | パラメータ名 | パラメータ値 | ||||||||||||||||||
POWR
|
System power information | TimeUS | Vcc | VServo | Flags | AccFlags | Safety | MTemp | MVolt | MVmin | MVmax | |||||||||
システム電力情報
|
Time since system startup | Flight board voltage | Servo rail voltage | System power flags | Accumulated System power flags; all flags which have ever been set | Hardware Safety Switch status | MCU Temperature | MCU Voltage | MCU Voltage min | MCU Voltage max | ||||||||||
システムの起動からの時間 | フライトボード電圧 | サーボレール電圧 | システムパワーフラグ | 累積システム電源フラグ今までに設定されたすべてのフラグ | ハードウェアの安全スイッチの状態 | MCUの温度 | MCU電圧 | MCU電圧MIN | MCU電圧MAX | |||||||||||
RCOU
|
Servo channel output values | TimeUS | C1 | C2 | C3 | C4 | C5 | C6 | C7 | C8 | ||||||||||
サーボチャネル出力値 | Time since system startup | channel 1 output | channel 2 output | channel 3 output | channel 4 output | channel 5 output | channel 6 output | channel 7 output | channel 8 output | |||||||||||
C1~C2にモータ回転数が入っているらしい | システムの起動からの時間 | チャンネル1出力 | チャネル2出力 | チャネル3出力 | チャネル4出力 | チャネル5出力 | チャネル6出力 | チャネル7出力 | チャネル8出力 | |||||||||||
VIBE
|
Processed (acceleration) vibration information | TimeUS | IMU | VibeX | VibeY | VibeZ | Clip | |||||||||||||
処理された(加速)振動情報
|
Time since system startup | Vibration instance number | Primary accelerometer filtered vibration, x-axis | Primary accelerometer filtered vibration, y-axis | Primary accelerometer filtered vibration, z-axis | Number of clipping events on 1st accelerometer | ||||||||||||||
システムの起動からの時間 | 振動インスタンス番号 | 一次加速度計フィルタを除去した振動、X軸 | 一次加速度計フィルタ処理された振動、Y軸 | 一次加速度計フィルタを除去した振動、Z軸 | 1回目の加速度計のクリッピングイベントの数 | |||||||||||||||
XKF1
|
EKF3 estimator outputs | TimeUS | C | Roll | Pitch | Yaw | VN | VE | VD | dPD | PN | PE | PD | GX | GY | GZ | OH | |||
EKF3推定量の出力
|
Time since system startup | EKF3 core this data is for | Estimated roll | Estimated pitch | Estimated yaw | Estimated velocity (North component) | Estimated velocity (East component) | Estimated velocity (Down component) | Filtered derivative of vertical position (down) | Estimated distance from origin (North component) | Estimated distance from origin (East component) | Estimated distance from origin (Down component) | Estimated gyro bias, X axis | Estimated gyro bias, Y axis | Estimated gyro bias, Z axis | Height of origin above WGS-84 | ||||
システムの起動からの時間 | EKF3コアこのデータはフォリックです | 推定ロール | 推定ピッチ | 積算ヨー | 推定速度(ノースコンポーネント) | 推定速度(東部コンポーネント) | 推定速度(ダウンコンポーネント) | 垂直位置の除去された誘導体(下) | 原産地からの推定距離(North Component) | 原産地からの推定距離(東部) | 原産地からの推定距離(Down Component) | 推定ジャイロバイアス、X軸 | 推定ジャイロバイアス、Y軸 | 推定ジャイロバイアス、Z軸 | WGS-84の上の原点の高さ | |||||
XKF2
|
EKF3 estimator secondary outputs | TimeUS | C | AX | AY | AZ | VWN | VWE | MN | ME | MD | MX | MY | MZ | IDX | IDY | IS | |||
EKF3推定器二次出力
|
Time since system startup | EKF3 core this data is for | Estimated accelerometer X bias | Estimated accelerometer Y bias | Estimated accelerometer Z bias | Estimated wind velocity (North component) | Estimated wind velocity (East component) | Magnetic field strength (North component) | Magnetic field strength (East component) | Magnetic field strength (Down component) | Magnetic field strength (body X-axis) | Magnetic field strength (body Y-axis) | Magnetic field strength (body Z-axis) | Innovation in vehicle drag acceleration (X-axis component) | Innovation in vehicle drag acceleration (Y-axis component) | Innovation in vehicle sideslip | ||||
システムの起動からの時間 | EKF3コアこのデータはフォリックです | 推定加速度計Xバイアス | 推定加速度計Yバイアス | 推定加速度計Zバイアス | 推定風速(ノースコンポーネント) | 推定風速(東部コンポーネント) | 磁場強度(ノースコンポーネント) | 磁場強度(東部) | 磁場強度(下側) | 磁場強度(ボディX軸) | 磁場強度(ボディY軸) | 磁場強度(ボディZ軸) | ビヒクルドラッグ加速度の革新(X軸成分) | ビヒクルドラッグ加速度(Y軸成分)の革新 | 車の横に革新 | |||||
XKF3
|
EKF3 innovations | TimeUS | C | IVN | IVE | IVD | IPN | IPE | IPD | IMX | IMY | IMZ | IYAW | IVT | RErr | ErSc | ||||
EKF3イノベーション
|
Time since system startup | EKF3 core this data is for | Innovation in velocity (North component) | Innovation in velocity (East component) | Innovation in velocity (Down component) | Innovation in position (North component) | Innovation in position (East component) | Innovation in position (Down component) | Innovation in magnetic field strength (X-axis component) | Innovation in magnetic field strength (Y-axis component) | Innovation in magnetic field strength (Z-axis component) | Innovation in vehicle yaw | Innovation in true-airspeed | Accumulated relative error of this core with respect to active primary core | A consolidated error score where higher numbers are less healthy | |||||
システムの起動からの時間 | EKF3コアこのデータはフォリックです | ベロシティの革新(ノースコンポーネント) | 速度におけるイノベーション(東部コンポーネント) | 速度の革新(ダウンコンポーネント) | 位置の革新(ノースコンポーネント) | 位置のイノベーション(東部コンポーネント) | ポジションのイノベーション(Down Component) | 磁場強度の革新(X軸成分) | 磁場強度の革新(Y軸成分) | 磁場強度の革新(Z軸成分) | 車両ヨーの革新 | 真の気球でのイノベーション | アクティブなプライマリコアに対するこのコアの相対誤差の累積 | より高い数値が健康的ではない統合されたエラースコア |
コメントを残していただけるとありがたいです