公司动态

[具身智能-712]:亚博智能的真机机器:一体式代码部署、学习、测试、验证的真机环境,既是目标机,也是开发机,一机两用。

📅 2026/8/2 18:30:44
[具身智能-712]:亚博智能的真机机器:一体式代码部署、学习、测试、验证的真机环境,既是目标机,也是开发机,一机两用。
ROSMASTER-M1RDK X5 M1 麦克纳姆轮底盘方案定义一体式「一机两用」环境核心结论RDK X5 机器人本体 开发机 目标运行机硬件本体同时承载两大角色开发机预装完整 Ubuntu、ROS2 Humble、QT、Jupter、编译工具链、git、源码、调试工具支持代码编写、编译、调试目标机所有 ROS 业务节点本地执行整套机器人程序可脱离上位电脑独立运行。Windows/PC 电脑仅充当远程终端显示器VSCode Remote-SSH / MobaXterm SSHPC 不部署 ROS2、不运行任何机器人业务节点。一、整体软件栈架构载体RDK X5 ARM64 | Ubuntu 22.04 Jammyplaintext操作系统 Ubuntu22.04 ├── 基础开发工具git、cmake、gcc、python工具链、colcon编译系统 ├── ROS2 Humble兼容TogetheROS.Bot ├── ROS全套调试工具rqt、ros2 cli、jstest、串口调试工具 └── 机器人工作空间 ~/yahboomcar_ros2_ws ├─ src/ 完整源代码可直接修改 └─ install/ 编译产出机器人运行程序二、三种工作模式同一套硬件无缝切换模式 1开发学习模式日常编码调试适用学习 ROS2 架构、修改手柄映射、调整运动参数、调试链路故障工作流程PC 通过 VSCode远程 SSH 连接 RDK →直接在线修改源码→ 局部编译colcon build --packages-select xxx→ 加载环境变量前台启动 launch → 使用ros2 node list/ros2 topic echo/rqt 观测完整通信链路整条遥控数据流本地闭环无跨主机网络plaintextUSB游戏手柄(RDK本地) → /dev/input/by-id固定设备 ↓ joy_node → 发布话题 /joy ↓ yahboom_joy_M1解析轴与按键→ 发布 /cmd_vel ↓ Mcnamu_driver_M1麦轮运动学逆解→ 串口/CAN ↓ STM32底盘控制器 → 电机驱动模式 2集成测试模式整机功能验证适用长时间稳定性测试、场地实车移动测试、功能测试验收特点 代码冻结极少重新编译可降低日志打印等级减少资源占用 完整保留调试工具一旦出现小车异常立刻 SSH 登录抓取话题数据、日志验证重点手柄热插拔、连续运动、加减速、全向平移、避障联动。模式 3独立样机验证模式模拟成品形态适用检验机器人脱离上位机独立工作能力 配置 systemd 系统服务上电自动启动整套 ROS 遥控程序 断开电脑、断开 WiFi仅依靠本地 USB 手柄控制小车⚠️关键区分该模式依旧属于测试样机环境 ≠ 量产环境镜像内置编译器、源码、大量开发组件不能直接用于大规模商用出货。三、「一机两用」方案核心优势运行环境 开发环境消除兼容性坑不存在交叉编译、x86→ARM 架构差异、ABI 不兼容问题。代码调试通过后运行形态不会发生变化。学习门槛低聚焦 ROS 核心思想无需配置复杂 DDS 跨主机通信不会出现经典问题节点互相看不见、网络延迟、DomainID 冲突。 可以全身心理解节点、话题、发布订阅分布式通信模型。外设接入简单直接手柄、激光雷达、摄像头直接接入机器人板卡不需要通过网络转发硬件原始数据流。测试不受线缆束缚实车场地测试可以完全脱离电脑自由移动适合户外、大范围场地验证。单人即可完成完整研发闭环代码修改→编译→真机运行→实车测试。四、方案固有的短板明确边界RDK X5 ARM平台算力有限完整编译工作空间速度较慢 ✅对策使用局部编译不要每次全量编译colcon build --packages-select yahboomcar_ctrl镜像附带源码、编译器、大量调试包占用存储空间开机后台进程更多 ✅对策项目定型准备量产时基于验证稳定的代码重新制作最小运行时镜像剔除所有开发组件。如果同时运行 SLAM、多目视觉 AI 推理等高负载任务开发 运行程序叠加容易造成 CPU/BPU 满载 ✅对策重型算法调试阶段临时切换分布式方案日常遥控调试维持一体式架构。五、常见问题标准化解决方案新开终端执行 ros2 指令找不到节点 / 命令根因终端未加载环境根治将 ROS、工作空间环境变量写入~/.bashrc终端自动加载。反复插拔手柄设备从js0变成js1导致 joy_node 无法识别 优化 launch 文件放弃硬编码/dev/input/js0使用/dev/input/by-id/xxx固定符号链接。开发阶段日志过多长期运行占用磁盘 增加环境变量区分运行模式ROBOT_ENVdev全开调试日志ROBOT_ENVtest精简日志输出。六、在项目全生命周期里的定位前期方案预研PC Ubuntu Gazebo 仿真验证运动学、控制逻辑中期学习、真机迭代、功能验证采用本方案【一体式一机两用】后期样机验收开启开机自启动模拟产品独立运行大规模商用量产剥离开发环境构建纯运行时最小镜像删除源码、编译器、调试工具七、方案切换决策点✅继续使用一机两用一体式ROS 学习、小车遥控调试、小规模场地测试、算法真机验证❌建议切换分布式架构RDK 算力满载需要运行大型 SLAM、大模型视觉推理❌禁止直接使用该镜像量产必须裁剪为轻量化运行环境