2か月でpythonのプログラム群も増えてきて、毎日、機能が増殖し続けて何がどうなっているのか、混乱してきたので、
ここで、整理して備忘録しておきます。個別のプログラムの操作と機能、動作をメモしておきます。
その1では、BasicDataTrans_STA24_ver0.42.py で、STA24システムのログファイルをデータ処理用のファイルになるようにデータを補修、整列、合体させるプログラムです。
●目的:
①F9Pのログファイルの0.5%以下で、データの抜けが発生するので、0.5%以下の抜けデータを補修しないと後行程で
トラブルになるので、ここで、完全なデータに修復しておく必要がある。BNOファイルのタイムスタンプも同様 ②SkiON(Base,Rover,BNO )の3個のデバイスからのデータとBootsOn(Base,BNO)2個のデバイスからの出力
SkiOnは、BRBN_ファイルとして合体させる。BootsOnは、BTUBNO_ファイルとして合体させる。
●操作
’r’キーでデータファイルを読み込む。ファイル名によって、自動的に処理を選択してくれる。
その他のキーは別表
’r’キーで指定したファイル名 | プログラム動作 |
”BRBN”を含むファイル名 | BRBN=BaseRoverBNoで、SkiOnMovingBaseシステムの出力ファイル
データフレーム resultBRBN 作成して、後の処理で使う。
|
”BRBNT”を含むファイル名 |
データフレーム df_BRBNTを作成して、後の処理で使う。
|
“ubx”を含むファイル名 | MovingBaseバイナリファイルをCSVに変換したファイル名はubxがつく。 このファイルの検査修復をおこなって、データフレームresult 作成。 例:3-15-12-32.ubx-MBUX.csv=>ここにBase RoverのUBXデータ収納 ●関数 def readMBFile(filename, basename, head0)を使う 1:Baseデータの処理 1ー1:itowタイムスタンプの飛び箇所を前後の平均値で補修して新に行作成 1-2:BaseのUBX出力カラム名に”_B”サフィックスをつける 2:Roverデータの処理 2-1:towタイムスタンプの飛び箇所を前後の平均値で補修して新に行作成 2-2:RoverのUBX出力カラム名に”_R”サフィックスをつける 3:BaseとRoverを横合体concatして BR_ファイルを出力、 関数として出力は、データフレーム resultを戻す |
“bno”を含むファイル名 | bnoファイルを読み込んでBRファイルと合体させてBRBNファイル作成 ※bnoファイルの開始itowは、BRファイルのitowの事後であることが制限 1:bnoデータは10msec周期なので間引いて120msecのデータフレームdf_BNO120作成 2:BRファイルデータと合体させるため最初はゼロ埋めしたdf_BNOLを作成 3:データフレームresultとdf_BNOLを横concatして、resultr_BRBNを作成 3:BRBNO_ csvファイル出力 4:ついでにCPLT用にファイルCPLT_も出力(matplotで作成するので今は使わない) |
“BTUBX”を含むファイル名
|
BTが付くファイルは、BootsOnシステムのファイルなので、MovingBaseでなくBaseのUBXのバイナリ変換csvデータファイルをitow抜け補修
1:読み込んでデータフレーム BTUBX_を作成 |
●その他のキー機能
キー | 動作 |
‘e’キー | プログラムを終了 |
‘v’キー | PlotVecoto線図 plotvector3(resultBRBN) |
‘t’キー | ターンカット turncut(result) |
‘i’キー | BNO積分 bnointegral() |
●コード
https://gist.github.com/dj1711572002/82330327afeb927ae94742fbabf4bd25