宇树 Qmini 双足机器人训练个人经验总结

宇树 Qmini 双足机器人训练个人经验总结
github:https://github.com/vsislab/RoboTamer4Qmini

本篇内容基于我在 AutoDL 云服务器 上对 Qmini 做完整训练与测试的实践总结,涵盖训练、可视化、策略测试、模型导出、URDF 调试等环节,并重点说明 headless(无显示)环境下的各种坑与解决方案。希望能帮到后来者少走弯路。

前提说明:为什么不建议在云端直接跑渲染?

我最开始的目标是:训练、渲染、视频录制全部在 AutoDL 上完成,不经过本地运行。

然而现实是:

  • 即使用 Xvfb 等虚拟显示器启动 Isaac Gym,也会发生视频保存全黑的情况。
  • VNC 远程桌面也无法正常显示 Isaac Gym 的渲染窗口。
  • 根本原因来自 驱动版本过高与 Isaac Gym 对驱动的强依赖
因此更推荐:在云服务器训练模型 → 本地 Ubuntu 加载策略进行测试与演示。
可以在云服务器中进行训练然后在本地进行测试,这是我目前发现的比较好的方式,本地使用的是ubuntu系统,最后算是可以正常演示。

当前的问题都是基于我完全使用autodl上进行的尝试,希望可以对大家有所帮助,少踩坑。
训练阶段

python train.py --config BIRL --name <name>

–name

​ 存放路径experiments/<name>/

–config

​ 选择配置文件,默认:BIRL

–resume

​ 恢复训练

​ eg:python train.py --name stand --resume --path experiments/stand/checkpoints/policy_40000.pt

–render

​ 开启画面显示(isaac gym窗口)

–fix_cam

​ 视角固定在机器人上方

–horovod

​ 多gpu训练

–r l_device

​ 训练设备设置

​ 默认cudo0,可以改为cpu等

–num_envs

​ 环境数量

–seed

​ 随机种子,利于复现

–max_iterations

​ 最大训练迭代次数
查看结果

云端可能出现 6006 端口占用 的情况,需要手动释放。

1. 安装 lsof

apt-get update

apt-get install lsof -y

2. 查看端口占用

lsof -i :6006

3. 杀掉进程

kill -9 <PID>

4. 重新启动 TensorBoard

tensorboard --logdir experiments/<name>/log --port 6006

运行训练好的策略 play.py

python play.py --render --name <name> 加载训练好的策略,开始跑模拟器

–render 显示画面

–fix_cam 相机固定跟随机器人

–cmp_real 与真实机器人采集的数据对比绘图

–plt_sim 显示仿真数据的曲线图(如关节角、速度等)

–num_envs 改变并行环境数量

–video 开启视频录制,保存到 videos/ 文件夹,必须配合 --render

–time 玩多少秒

–iter 指定用哪一轮的模型,默认加载目录下最后一个 policy

–epochs 重复评估多少次,用来统计平均性能

–debug 保存仿真数据到 Excel
导出ONNX模型

python export_pt2onnx.py --name <name>

.pt 权重导出为 .onnx,便于部署到嵌入式设备、Jetson、Unity 等。

加载(调试)urdf模型

python tune_urdf.py

测试你的机器人 URDF 是否正常加载,检查质量参数、碰撞体、关节限位,也可微调模型参数

自动调参PID(tun_pid.py)

python tune_pid.py --mode <mode>

–model

错误

Headless 环境无法渲染
云服务器默认无显示设备。

临时方案:使用虚拟显示:Xvfb(首先进行pip下载)

Xvfb :1-screen 0 1024x768x24 &#启动 X Server export DISPLAY=:1#设置环境变量
注意:但这只能让程序“以为”自己有显示,无法保证正常渲染!
使用autodl远程连接,play.py 视频录制仍为黑屏
image-20251121211032490
原因分析:原因:云端 GPU 驱动版本过高(如 570 系列),超过了 Isaac Gym 的兼容范围。

Isaac Gym 对渲染器依赖的驱动版本非常敏感,驱动过新 → 渲染器初始化失败 → 视频录制为纯黑。

目前找到比较好的方案是:云端只做训练,本地 Ubuntu 运行 play.py。

最后的最后再次说明,目前我认为比较稳妥、推荐的流程是:云端训练(AutoDL)→ 本地 Ubuntu Play 与可视化。云端的 headless 环境与高版本驱动目前无法可靠支持 Isaac Gym 的图形渲染与视频录制,本地则能完美解决所有渲染相关问题。

如有不对,希望各位大佬可以积极指出,谢谢各位。

Read more

机器人编程的基础知识,家用机器人和工业机器人的编程区别

机器人编程的基础知识,家用机器人和工业机器人的编程区别

机器人编程的基础知识 机器人编程的基础知识,简单来说就是“告诉机器人做什么”和“告诉机器人怎么做”。 为了让你更直观地理解,我结合工业机器人(如ABB、FANUC)和家用/服务机器人的实际场景,为你梳理了以下几个核心板块,并附带了具体的代码和操作示例。 1. 运动控制:机器人的“肢体语言” 这是编程最基础的部分,控制机器人怎么移动。主要分为两种基本运动模式: * 点对点运动 (PTP / Joint) * 含义:机器人以最快的速度、最短的路径从当前位置移动到目标点,不关心中间经过的路线。 * 适用场景:长距离空跑、搬运物体时的快速回位。 * 示例: * 工业场景:让机器人手臂快速回到“Home”原点。 * 直线运动 (LIN / Linear) * 含义:机器人的末端工具(如手爪)沿着一条精确的直线路径移动。 * 适用场景:涂胶、焊接、或者需要精确插入的动作。 * 示例: * 工业场景:在两个点之间画一条直线进行焊接。

小米智能家居Home Assistant接入教程:本地控制与设备兼容问题全解

小米智能家居Home Assistant接入教程:本地控制与设备兼容问题全解 【免费下载链接】ha_xiaomi_homeXiaomi Home Integration for Home Assistant 项目地址: https://gitcode.com/GitHub_Trending/ha/ha_xiaomi_home 小米智能家居设备接入Home Assistant常遇到设备不响应、数据不同步或功能缺失等问题。本文将通过问题诊断、方案选择、实施指南和进阶技巧四个阶段,帮助你解决90%的常见问题,实现本地控制与设备兼容的最佳配置。 问题诊断:如何判断小米智能家居接入Home Assistant的常见故障 💡实用提示:设备连接问题通常表现为状态不同步或控制无响应,先检查网络连接和设备固件版本。 常见故障类型及表现 * 连接失败:设备未出现在Home Assistant集成列表中,日志显示"连接超时" * 状态不同步:Home Assistant显示状态与实际设备状态不符,延迟超过5秒 * 控制失效:

OpenClaw本地部署接入飞书机器人完全安装指南

OpenClaw本地部署接入飞书机器人完全安装指南

作者:网心 2026-3-10 在 Windows 系统上从头开始部署 OpenClaw,并将其配置为可以接入飞书的智能机器人。我们将以实战中遇到的问题为鉴,确保安装过程顺畅无误。 第一章:准备工作与环境检查 在正式开始安装前,请确保您的电脑满足以下基础条件,并理解我们将要使用的关键命令。 1. 系统要求 操作系统: Windows 10 或 Windows 11 (需使用管理员权限运行 PowerShell)。 网络环境: 能够正常访问 GitHub 和 npm 仓库。如果您在网络受限的环境中,可能需要提前准备代理或镜像配置。 2. 核心命令解释 在整个安装过程中,有两个核心命令您需要理解: 一键安装命令:iwr -useb https://openclaw.ai/install.ps1 | iex iwr:Invoke-WebRequest 的别名,用于从指定网址下载文件。

Islands Architecture(岛屿架构)

Islands Architecture(岛屿架构)详细笔记 1. 引言 在现代Web开发中,性能优化一直是开发者关注的重点。随着应用变得越来越复杂,传统的单页应用(SPA)架构面临着首屏加载慢、JavaScript包体积过大等问题。为了解决这些问题,一种名为"Islands Architecture"(岛屿架构)的新型架构模式应运而生。 2. Islands Architecture 概述 2.1 什么是 Islands Architecture? Islands Architecture 是一种新兴的前端架构模式,其核心思想是将页面视为由静态内容(如HTML/CSS)构成的"海洋",其中嵌入的交互式组件则被视为独立的"岛屿"。这些岛屿可以独立加载、渲染和运行,彼此隔离且互不干扰。 2.2 历史背景