SONY SPRESENSE の拡張ボードに付いているSDカードにGNSSアドオンで取得可能(ライブラリを使用)なデータ(NMEAフォーマット)を漏れなく書き込めるのかどうか試してみた(*´ェ`)
なぜなら最初にSDカードの書き込みを試していた時(1秒に1回データ取得して書き込みを行うと)1分もしないうちにデータが書き込めていなかったので先日は書き込むNMEAセンテンスを絞っていたのだ..(*゚ェ゚*)本当は残せるものは全部残したい気持ち(*´ェ`)
まず毎秒1回データの取得からSDに書き込み完了するまで何秒かかるか調べてみた(*´ェ`)
測定に使用する衛星は GPS+QZSS_L1CA+QZSS_L1S で取得するデータは
- GGA
- GLL
- GSA
- GSV
- GNS
- RMC
- VTG
- ZDA
にした(*´ェ`)
衛星を捉えてから1分間(60回)の平均データ取得からSDカードへの書き込み時間は平均約0.33秒、最大約0.37秒
平均 |
335166.213114754 |
μs |
|
335.166213114754 |
ms |
|
0.335166213114754 |
S |
最大 |
377636 |
μs |
あら大丈夫そう∑(*゚ェ゚*)
1回分のデータでそれぞれのNMEAセンテンスを書き込み完了するまでの時間も調べてみた(*´ェ`)
NMEAセンテンス |
SDに書き込みに掛かる時間(μs) |
$GPGGA |
13153 |
$GNGLL |
14068 |
$GNGSA |
14221 |
$GNGSA |
14374 |
$GNGSA |
17059 |
$GPGSV |
10742 |
$GPGSV |
10345 |
$GPGSV |
10437 |
$GPGSV |
13946 |
$GLGSV |
12908 |
$GQGSV |
12939 |
$GQGSV |
13091 |
$GQGSV |
13611 |
$GBGSV |
14190 |
$GBGSV |
14221 |
$GBGSV |
14374 |
$GBGSV |
15045 |
$GBGSV |
9827 |
$GBGSV |
10315 |
$GBGSV |
10468 |
$GBGSV |
11535 |
$GBGSV |
12786 |
$GBGSV |
12817 |
$GAGSV |
13001 |
$GAGSV |
17596 |
$GIGSV |
14282 |
$GNGNS |
14282 |
$GNRMC |
17486 |
$GNVTG |
10650 |
$GNZDA |
10345 |
捉えた衛星で上下はあるけれども約0.4秒..(*´ェ`)
合計 |
394114 |
μs |
平均 |
13137.1333333333 |
|
最大 |
17596 |
|
最小 |
9827 |
|
合計 |
394.114 |
ms |
|
0.394114 |
S |
やはりNMEAセンテンスごとに書き込む(fileのopen,closeする)よりいくつかまとめて書き込むようにするともっと速くなるのかな(*´ェ`)
最初に試したSDカードが今回調べている途中で認識しなくなってしまったのでもしかしたら壊れかけていたのかもしれない、それで書き込みができなくてデータが保存されていなかったのかもしれない..(*´ェ`)