RViz2のScale・座標系の基準作りとR2R2R独自「テックログ」運用設計
LOG22R2R2R2025/12/31

RViz2のScale・座標系の基準作りとR2R2R独自「テックログ」運用設計

前回は、Macの中でROS 2がおしゃべりしている信号を数値としてのぞき見しました。 その信号を3Dで映し出すモニターRViz2を使いやすく設定し、さらに今後の開発を支える知識の整理術についてご紹介します。

※本プロジェクトの目的:実機「mechArm 270 M5」の制御を通じて、AIの判断をいかに物理的な動きへ変換するか。そのロボット制御の仕組みを理解するプロセスを記録・検証するものです。

RViz2を「3Dの舞台」に変える設定

立ち上げたばかりのRViz2は真っ暗な宇宙のような状態です。ここに、ロボットが動くための床と方向を追加していきましょう。

床(Grid)を敷く

まずは、距離感をつかむための網目状の床を表示させます。

  • 画面左下の 「Add」 をクリックし、リストから 「Grid」 を選んでOKを押します。

方向(Axes)を表示する

RViz2-方向表示

次に、どちらが前でどちらが上かを一目でわかるようにします。

  • 再び 「Add」 を押し、リストから 「Axes」 を追加します。

これで、画面の中心に赤・緑・青の3本の線が現れます。これが3D空間の基準点になります。

覚えておくと便利な「RGB = XYZ」のルール

表示された3本の線には、世界共通の大事なルールがあります。これを知っているだけで、一気にプロの視点になれますよ。

  • 赤 (Red) = X軸(前方向)

  • 緑 (Green) = Y軸(左方向)

  • 青 (Blue) = Z軸(上方向)

覚え方はとっても簡単。アルファベットの「X・Y・Z」の順番と、光の三原色「R・G・B」がセットになっています。赤は前、青は上とだけ覚えておくだけでも、Unityでの作業がぐっと楽になります。

 開発を加速させる「P2M テックログ」の導入

ロボット開発は覚えることが多く、時にはエラーにぶつかることもあります。そこで、自分だけの最強の辞書 「P2M テックログ(ログ & リファレンス)」 をスプレッドシートで作ることにしました。

なぜログが必要なの?

  • コマンドを忘れない: conda activate などの「お決まりの呪文」をすぐにコピーできます。

  • エラーを味方にする: RViz2が画面に出ない時はDockに隠れているだけといった、自分特有の解決策をメモしておけます。

  • 仕組みを整理する: 今回学んだ「RGB=XYZ」のような知識をまとめておくことで、いつでも振り返れます。

注意!ターミナルは閉じてはいけないの?

RViz2を表示している間は、そのターミナルを閉じてはいけません。

ターミナルを閉じてしまうと、連動して立ち上がっているRViz2も一緒に終了してしまいます。

ターミナルとRViz2(あるいはカメの画面など)の関係は、エンジンのスイッチと車のような関係だからです。

  • ターミナルの役割: プログラムを実行し続ける親のような存在です。

  • 閉じた時の動作: ターミナルを閉じると、Macはそのお仕事はもう終わりだねと判断して、動かしていたRViz2を強制的に止めてしまいます。

画面が邪魔なときは?

もしターミナルがデスクトップにたくさん並んでいて作業しづらい場合は、閉じる(×ボタン)ではなく「最小化(ーボタン)」をして、Dock(画面下のバー)に隠しておきましょう。これならプログラムは動き続けます。

他のターミナルも同様です

今の状態を維持するためには、他のターミナルたちも開いたままにしておく必要があります。

  • ターミナル1(カメ): 閉じるとカメが消えます。

  • ターミナル2(リモコン): 閉じるとカメを動かせなくなります。

  • ターミナル3(データのぞき見): 閉じると数字の流れが止まります。

終わらせたい時は?

プログラムを終了させたい時は、いきなり「×」で閉じるのではなく、ターミナルの画面上で 「Controlキー + C」 を押すのが正しい作法です。これで安全にプログラムを停止させてから、ターミナルを閉じることができます。

2Dから3Dへ、そして「記録」へ

2Dのカメの世界を卒業し、立体的な3D空間での基準作りまで進みました。 ただ動かすだけでなく、今、何が起きているかを正しく把握し、それを記録に残す。地味かもしれませんが、これがスムーズなロボット開発への一番の近道です。

これで脳(ROS 2)と目(RViz2)、そして知識(ログ)が揃いました。

この環境にいよいよ「Unity」を繋いで、画面の中に mechArm の姿を現す準備を始めます。