Avaliação de imagem ROS 2
O feature ros2 é hook de build orientado a Ubuntu. Listas de pacotes no registry estão vazias porque o hook possui setup de repositório e pacote. Revise sources gerados e distribuição ROS selecionada antes de construir; o nome do feature sozinho não fixa release ROS suportada.
Use artefatos separados para ambiente de desenvolvimento desktop e runtime de robô. Compartilhe versões explícitas de origem e pacote, não configuração “latest” mutável.
Prompt de desenvolvimento
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.Prompt de runtime
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.Limite da receita
Receita de runtime normalizada deve tornar explícitos base, feature, pacotes nativos, conta de serviço e cenários:
{
"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"
}
]
}
}Membership em grupo concede só permissão Unix onde dispositivos e regras correspondentes existem. Não prova que adaptador serial, câmera, controlador GPIO, barramento I2C ou robô está presente ou seguro para comandar.
Evidência virtual
Checagens úteis no guest incluem:
- arquivos de setup de ambiente ROS e inventário de pacotes;
- startup da CLI
ros2; - dois nós de teste trocando mensagem sintética única pela implementação RMW selecionada;
- start, restart, falha e shutdown limpo de serviço;
- identidade de processo e permissões de arquivo; e
- ausência de exposição de rede não solicitada.
ros2 topic list sozinho não é teste completo de discovery DDS. Use processos publisher e subscriber separados ou VMs e verifique conteúdo da mensagem e timeout.
Qualificação no lado do robô
Repita a suíte de aceitação no módulo de compute exato, kernel, configuração de middleware, rede, sensores, atuadores e carga de timing. Meça latência e comportamento de deadline com kernel real-time pretendido se exigido. Valide parada de emergência, watchdog, modo degradado e shutdown seguro fora do ambiente KVM genérico do OpenFactory.