ROS 2 の画像評価
ros2 機能は、Ubuntu 指向のビルド フックです。フックがリポジトリとパッケージのセットアップを所有しているため、そのレジストリ パッケージ リストは空です。ビルドする前に、生成されたソースと選択した ROS ディストリビューションを確認します。機能名だけでは、サポートされている ROS リリースを特定することはできません。
デスクトップ開発環境とロボット ランタイムには別々のアーティファクトを使用します。変更可能な「最新」構成ではなく、明示的なソースとパッケージのバージョンを共有します。
開発プロンプト
Create an Ubuntu 24.04 GNOME ROS 2 development image. Request ROS 2 Jazzy,
RViz, the required build tools, Git, Python, C++, and a non-password account
named robot in only the groups needed for the virtual test. Show the exact ROS
repository, signing key, package names, and versions in the plan. Add a clean
environment-source test and a two-node DDS discovery test using synthetic data.実行時プロンプト
Create an Ubuntu 24.04 headless ROS 2 runtime evaluation image with SSH and the
minimum ROS packages required by my reviewed launch file. Install the launch
file through a versioned package, run it as an unprivileged robot account, and
add bounded service, publish/subscribe, restart, and shutdown tests. Do not
claim PREEMPT_RT or physical peripheral support unless the exact kernel and
hardware are tested.レシピ境界
正規化されたランタイム レシピでは、ベース、機能、ネイティブ パッケージ、サービス アカウント、およびシナリオが明示的になる必要があります。
{
"name": "ros2-runtime-evaluation",
"base_image": "ubuntu-24.04",
"os": {
"features": ["headless", "ssh", "ros2"],
"packages": ["ros-jazzy-ros-base", "ros-jazzy-sensor-msgs"],
"users": [
{
"username": "robot",
"groups": ["dialout", "video"],
"shell": "/bin/bash"
}
]
}
}グループ メンバーシップは、一致するデバイスとルールが存在する Unix 権限のみを付与します。シリアル アダプター、カメラ、GPIO コントローラー、I2C バス、ロボットが存在すること、または安全にコマンドを実行できることを証明するものではありません。
仮想証拠
便利なゲスト チェックには次のようなものがあります。
- ROS 環境セットアップ ファイルとパッケージ インベントリ。
ros2CLI の起動。- 選択された RMW 実装を通じて固有の合成メッセージを交換する 2 つのテスト ノード。
- サービスの開始、再起動、障害、および完全なシャットダウン。
- プロセス ID とファイル権限。そして
- 要求されていないネットワークへの露出がないこと。
ros2 topic list だけでは完全な DDS 検出テストではありません。別のパブリッシャーとサブスクライバーのプロセスまたは VM を使用して、メッセージの内容とタイムアウトを確認します。
ロボット側の資格
正確な計算モジュール、カーネル、ミドルウェア構成、ネットワーク、センサー、アクチュエーター、タイミング負荷について受け入れスイートを繰り返します。必要に応じて、目的のリアルタイム カーネルを使用してレイテンシと期限の動作を測定します。 OpenFactory の汎用 KVM 環境外での緊急停止、ウォッチドッグ、デグレードモード、および安全なシャットダウンの動作を検証します。