Orion 用の CM4 制御、カメラ配信、ホスト監視ツール一式です。
- CM4 側 OS は Raspberry Pi OS 64bit
- 主な実行ユーザーは
ibis - CM4 側は
192.168.20.xxxの固定 IP を利用 - ホスト側 GUI は Qt ベース
- CM4 側 Python 依存は
setup.sh経由でpip導入 - ホスト PC 側 Python 依存は
uvで導入・実行
lancher.py- CM4 側の制御 API サーバー
control_server.servicelancher.pyを自動起動するsystemdユニット
cm4_control.py- 制御 API 用の共通 CLI / ライブラリ
host_lancher.pycm4_control.pyを使うホスト側 Qt GUI
cm4_cam/- CM4 側で動作するカメラサーバー本体、デフォルトHSV設定、PyInstaller 設定、実行ファイル
runtime/- CM4 側で実行時に生成される設定ファイル置き場
cm4_camera.py- カメラ API / multicast 用の共通 CLI / ライブラリ
cam_viewer.pycm4_camera.pyを使うホスト側 Qt GUI- raw 画像の ROI ドラッグによる HSV 自動推定に対応
robot_feedback_packet.pyforward_robot_feedback.cppの 128 バイトパケットを Python でデコード
robot_feedback_receiver.py- UDP multicast の robot feedback を受信して標準出力へパース結果を表示
robot_feedback_viewer.pyrobot_feedback_receiver.pyの受信・パース結果を Qt GUI でグラフ表示
robot_feedback_rerun.py- UDP multicast の robot feedback を受信して
rerun-sdkで可視化
- UDP multicast の robot feedback を受信して
CM4 側のセットアップ手順は専用ドキュメントに分離しました。
- 詳細手順: SETUP.md
- 内容: Raspberry Pi 初期設定、固定 IP、
setup.shによる依存導入、C++ ビルド、カメラサーバービルド、systemd設定
ホスト PC 側は uv で依存環境を管理します。
uv sync各ツールの起動方法は ホスト PC 側ツール を参照してください。
機体番号を N とすると:
- 制御サーバー IP:
192.168.20.(100 + N) - 制御サーバーポート:
8000 - カメラ API IP:
192.168.20.(100 + N) - カメラ API ポート:
8001 - multicast グループ:
224.5.10.(100 + N) - multicast ポート:
5100 + N
host_lancher.pyとcam_viewer.pyはPySide6が必要です。- 通信処理は GUI に持たせず、CLI から単独確認できる共通モジュールへ分離しています。
robot_feedback_receiver.py、robot_feedback_viewer.py、robot_feedback_rerun.pyは Windows/Linux の両方で動く Python 製の受信ツールです。- 詳細な役割分担は
doc/overview.mdを参照してください。 - CM4 の初期構築手順は
SETUP.mdを参照してください。