ロボットのオドメトリを可視化する方法を紹介します。 今回はオドメトリ受信用スクリプトとオドメトリ描画用スクリプトを組み合わせて可視化します。
本ステップ実行後の状態のSceneファイルはMobileRobotUITutorialProject/Assets/Scenes/Step5.unityから入手できます。
- Windows 10 Home バージョン 21H2
- Unity 2021.3.4f1
- Unity-Technologies/ROS-TCP-Connector v0.7.0
- Docker Desktop 4.9.1
STEP4までと同様にAssets/Scripts/OdomSubscriber.csをSubscriberオブジェクトにアタッチします。
ここまででSubscriberに追加したコンポーネントはTf SubscriberとOdom Subscriberの2つになります。
まず、スクリプトを用意します。UnityScripts/OdometryViewerフォルダをUnityプロジェクトのAssetsフォルダにコピー(Assets/OdometyViewerとして配置)します。
次に用意したスクリプトをアタッチしていきます。
Assets/OdometyViewer/Scripts/OdometryViewer.csをraspimouseオブジェクトにアタッチします。
raspimouseオブジェクトを選択してInspectorウィンドウを開き、Odometry ViewerコンポーネントのSubscriber Game ObjectにSubsciberオブジェクトを、Arrow PrefabにAssets/OdometryViewer/Prefabs/Arrows-red.prefabを指定します。
以上で可視化の準備ができました。
- 再生モードでUnityプロジェクトを実行
- Gazeboシミュレータを起動
- 操作ボタンから移動指令送信
の手順でロボットを動かしてみます。
STEP4ではGazebo上の移動ロボットに合わせてUnityのロボットも動かすことができましたが、 今回はそれに加えてオドメトリを可視化することができました。
Odometry ViewerコンポーネントのLength Of Historyのパラメータを変えることで描画するオドメトリの履歴数を変更できます。
オドメトリ受信用スクリプトとオドメトリ描画用スクリプトを組み合わせて可視化する方法を紹介しました。 さらにパラメータを変更して描画する履歴の数を変更する方法も紹介しました。
次はSTEP6でLiDARデータの可視化方法を紹介します。






