Simple Demo (Genesis)#
本章通过 examples/demo1 中的完整示例,演示如何使用Robonix OS框架开发具身应用应用。
环境配置#
运行示例前,需要完成以下环境配置步骤:
系统要求
Python 3.12
NVIDIA 显卡驱动和 CUDA 工具包
OpenGL 支持
安装系统依赖
# 安装 OpenGL 相关依赖
sudo apt-get install freeglut3 freeglut3-dev mesa-utils
# 配置 NVIDIA 作为 OpenGL 渲染后端(重要!)
export __GLX_VENDOR_LIBRARY_NAME=nvidia
创建 Python 环境
# 创建并激活 conda 环境
conda create -n genesis python=3.12
conda activate genesis
安装依赖包
# 首先根据 https://pytorch.org/get-started/locally/ 安装 PyTorch
# 例如:pip3 install torch torchvision(Linux CUDA 12.8)
# 安装其他依赖包
pip install rich loguru mcp pyyaml argparse grpcio grpcio-tools ultraimport \
ultralytics genesis-world pynput openai python-dotenv opencv-python
Genesis 模拟器启动#
1. 配置模拟器连接
在运行示例前,需要修改模拟器连接配置。编辑 driver/sim_genesis_ranger/driver.py 文件,将 TARGET_SERVER_IP 修改为模拟器运行的 IP 地址:
本地运行:使用
localhost或127.0.0.1远程服务器:使用服务器的实际 IP 地址
2. 启动模拟器
# 在 robonix 根目录下启动 Genesis 模拟器
python start_genesis.py
等待模拟器启动完成,直到出现渲染窗口。
3. 导出技能系统
# 在 robonix 根目录下导出技能系统配置(模拟器模式)
python manager/eaios_decorators.py --config config/include/simulator.yml
此命令会生成 skill/__init__.py 文件,用于技能系统的初始化。
Note
如果要在物理小车上运行,请使用 config/include/ranger_test.yml 配置文件。
4. 下载视觉模型
为了使用视觉相关技能,需要下载 YOLO 模型:
# 在 robonix 根目录下执行
mkdir -p skill/sim_vision/models
wget -P skill/sim_vision/models https://github.com/ultralytics/assets/releases/download/v8.3.0/yoloe-11l-seg-pf.pt
示例概述#
simple_demo.py 展示了一个完整的具身应用应用开发流程,包括系统初始化、实体图构建、技能绑定和动作执行。该示例支持两种运行模式,适合不同的使用场景。
运行示例#
完成环境配置和模拟器启动后,可以运行示例程序。
其中加载的 action 程序为 examples/demo1/simple.action。
手动模式
# 在 robonix 根目录下运行
python examples/demo1/simple_demo.py --mode manual
手动模式下,用户需要手动指定目标物体和动作参数。
自动模式
# 在 robonix 根目录下运行
python examples/demo1/simple_demo.py --mode auto
自动模式下,系统会:
使用 YOLO 模型自动识别场景中的物体
自动生成实体图
自动绑定动作参数
让小车自动移动到识别到的物体位置
导出场景信息
# 在 robonix 根目录下运行
python examples/demo1/simple_demo.py --mode manual --export-scene scene_info.json
此命令可以将当前场景信息导出为 JSON 文件,便于后续分析和调试。