ビーゴを用いた環境ログの取得プログラムについて

Satofumi KAMIMURA

注意: この仕様書の完成までには、数回の改変が予定されており、まだ未完成です。


* 実現すること
----------------------------------------------------------------------
ビーゴを用いて、環境ログ取得を行うためのプログラムを作成する。
可能であれば、リモコン操作できるようにする。



* 準備すること、確認すること
----------------------------------------------------------------------
- 走行制御のオドメトリを、正しく取得させる
- PC のタイムスタンプと同期しながら、Running オドメトリ、Top-URG データを取得
- PC 時刻と同期した GPS データを取得
- PC 時刻と同期した カメラ画像を取得
- PC 時刻と同期した、３軸加速度情報の取得



* データの利用方法について
----------------------------------------------------------------------
- マッチング用の環境データを生成するために用いる
- 走行アルゴリズムを検討する上での、シミュレーション用データとして用いる



* 走行制御のオドメトリを、正しく取得させる
----------------------------------------------------------------------
- 現状の動作を確認し、手で押したときの管理位置を適切に修正する
- 走行コマンドを発行したときの位置を、適切に修正する



* PC のタイムスタンプと同期しながら、Running オドメトリ、Top-URG データを取得
----------------------------------------------------------------------
- タイムスタンプ付きで、推定自己位置を記録する
- タイムスタンプ付きで、Top-URG データを記録する
- Top-URG と Running の両方のタイムスタンプオフセットを取得、利用する

データの融合においては、

- 指定時刻の推定自己位置を返すためのクラス
- 位置を取得しながら、Top-URG 位置の X-Y データを配置するクラス

を作成し、そのデータをグローバルな位置として記録する。

Tips)
----------------------------------------
Top-URG のデータ取得は高速なため、
タイムスタンプを用いない位置を計算し、それをグローバル位置として利用してもよい。

ただし将来的にはタイムスタンプを用いたデータ変換とすること。
そのときの検証には、Running と Classic-URG を用いる。
----------------------------------------

Tips)
----------------------------------------
各モジュールのタイムスタンプには誤差があるため、
適切な周期でタイムスタンプ同期を行う必要がある。

この周期は、精度評価した実験結果に基づいて決定されるべき。
----------------------------------------



* PC 時刻と同期した GPS データを取得
----------------------------------------------------------------------
PC と GPS タイムスタンプのオフセットを記録する。



* PC 時刻と同期した カメラ画像を取得
----------------------------------------------------------------------
カメラ画像をファイルとして出力し、
そのファイルを作成した PC タイムスタンプを別ファイルに出力する。



* PC 時刻と同期した、３軸加速度情報の取得
----------------------------------------------------------------------
基本的には、Running のタイムスタンプ同期と同じ方法で同期させる。

!!! このデータの具体的な利用方法は、未定。
!!! Top-URG のデータを用いる仮定において、必要になると思われる。
!!! グローバル位置に変換するときに、この３軸加速度の位置も必要になりそう。



* Running からのデータ取得
----------------------------------------------------------------------
- X, Y, T のオドメトリ情報
- ３軸加速度の情報

を取得し、移動しながらの推定自己位置を計算する。
データ間隔が細かいほど正確な位置推定ができるようになるが、
送受信データ量が増加する。

データが定期的に送信される仕組みを作成してもよい。
