Skip to content

踩坑GitHub unitreerobotics/unitree_sim_isaaclab5 个月前

Unitree G1仿真键盘控制失效且DDS无实体,需指定lo网口 ​

本文由 AI 根据公开内容整理,可能有误,请以原文为准:键盘输入指令,仿真画面中的机器人不动(GitHub unitreerobotics/unitree_sim_isaaclab #117)

状态:已解决

问题 ​

在Docker或阿里云GPU工作站运行Unitree G1 IsaacLab仿真时,通过WebRTC获取画面正常,但执行send_commands_keyboard.py输入w/s/a/d/c等指令机器人无响应。使用cyclonedds ps -i 1检查发现无任何DDS通信实体,导致控制脚本与仿真器无法建立数据链路。

环境 ​

Unitree G1 (g129),IsaacSim 5.1,Ubuntu 22.04(Docker容器或阿里云GPU工作站原生环境),CPU/CUDA模式,启用WebRTC推流与dex1_dds。

解决办法 ​

  1. 修改 dds/dds_master.py 第60行,将 ChannelFactoryInitialize(1) 改为 ChannelFactoryInitialize(1, "lo"),强制DDS使用本地回环网口。
  2. 修改 send_commands_keyboard.py 第263行,同样将 ChannelFactoryInitialize(1) 改为 ChannelFactoryInitialize(1, "lo"),确保控制端与仿真端网络接口一致。
  3. (可选)修正 action_provider/action_provider_wh_dds.py 第20行日志名称,将 super().__init__("DDSActionProvider") 改为 super().__init__("DDSRLActionProvider") 以方便调试。

讨论原作者:@xjhdhq 等,版权归原作者所有。

来源

本页事实对应的公开页面,以原文为准。

  1. GitHub unitreerobotics/unitree_sim_isaaclab #117:键盘输入指令,仿真画面中的机器人不动访问 2026-10-26