STA24で作っておいたSD USBアップローダープログラムをSTA25システムに組み込みます。
70歳にもいなると、記憶力がおちてきているので、こまめにやったことを備忘録しないと1週間前にやったことを再現できなく
なってしまいます。WEBやchatGPTがあるので、何とか活動できています。
●STA25のシステム使い勝手
①ログデータの扱い方
STA25では、STA24の5倍のデータ量になるので、マイコンプログラムを効率よくしないといけません。
マイコン側のログプログラム内にあるBluetoothモニター部分を1秒に一回出力にして、マイコン側の処理の負荷にならないようにしました。生のバイナリーログデータをSDに大量にため込んで電源ラインを兼ねたUSBケーブルでTeensyのSDIO高速読取りを活用して
WINタブレットのC#コンソールプログラムで3-20MB/secの速度で高速にアップロードします。
一端WINDOWS上にデータ乗れば、Pythonで自在に加工できるので、スキー場では、どんどんためこむことに専念します。
②RTKデータの信頼性を現場で判断
RTKが十分可能な地形かどうか、リアルタイムの測定しながらログできるようになってます。
下記文字データがBluetooth経由でスマホとかタブレットに送信されて、表示されます。
自分だけ判ればいいので、記号で、重要パラメータを表現してます。
chk=3:SDログの健全性でエラーがでると0.1.2になります。
epochN:F9Pの1周期のデータセットを1エポックしてカウントします。今回は120msec周期です。
dc,dNdL:Baseデータのカウンタ類 NAV-SAT長さが捕捉衛星数で変わるので一回の受信で全部受信できるとはかぎらないのでカウンタ
をみながら、データの解読をしてます。
numSV:捕捉衛星数
Upper40,Upper50:40dB以上の衛星数、50dB以上の衛星数。RTK成立の条件がUpper40>=10 & Upper50>1を監視します。
numSVr:RTK計算に使われている衛星数
flags=0,0,0: base ,Top,TailのFIXかFloatか判断 0,1は電波きてない、3は、RTKデータ来てない、67は、float,131は、FIX
hacc=0,0,0base ,Top,Tailの水平精度1σ値 Fixsしてもhaccが0.01mにならないとRTK精度がでてない
bncnt0=BNO085のデータカウンタ
itowb=Baseのitow
len=:0,0:BaseとTopの基線長、BaseとTailの基線長
Head=0,0:BaseとTopのHeading角、BaseとTailのHeading角
\
●仕様備忘録
①ログファイル種類
ファイル種類 | 名前 | 内容 |
Baseデータファイル | “base_”+stime + “.ubx” | stime:月日時分 NAV-PVT、NAV-RELPOSNED、NAV-SAT |
TimePulse同期ファイル | ”TP_”+ stime + ”.txt” | itow3k,tpt3k,bncnt0,bncntT,epochN itow3k=timePulseと一致するitow値 itow%3000==0 tpt3k=TimePulse%3000==0になる時刻 bncntT= |
BNOとADS データファイル |
“BA_”+stime+”.bin” | ヘッダに0xFF,bnocnt4バイト記録してから
,ADS( Top,Tail4バイト)+BNO(Center,Tail,19バイト) |
Roverデータファイル | “rover_”+stime+”.ubx” | Top,Tailの順で
NAV-PVT,NAV-RELPOSNED,NAV-PVNAV-RELPOSNED |
②ログファイルアップロード仕様
Teensy4.1のUSB経由
A:Teensy用アップロードPgm
https://gist.github.com/dj1711572002/30a7e9006f2afc4c549e7553bb56a9b3
USBシリアルから”l”文字を受信したら、SDカード内のFile LISTをUSBシリアルへ送るファイル名と連番がつきているので
それをタブレットで見ながら指定ファイルの番号をUSBシリアル経由でマイコンに教えて、所望のファイルを転送してもらう。
B:タブレット用アップロード C#コンソール
VisualStudio 2022 。NET.6で作成 シリアルモジュールをnugetから読み込む。
https://gist.github.com/dj1711572002/0526df51923c060f9974aff4ace32987
シリアルポート番号をCキーでCOMxxと入力してTeensyと接続
l キーでFile LIST CキーでCOMポート名変更 他のキーで繰り返す
●以後
まだ、本番実装プログラムと合体してないので、合体しながら、使い勝手仕様をかえていく。