本帖汇总机器人工程技术人员竞赛模块A的培训资料与课后练习建议。建议结合课件和共享训练镜像,按“阅读工程—完成函数—检查结果—排查问题”的顺序学习。
一周练习的目标:能够独立运行一个机器人仿真工程,理解输入输出,并完成基础函数编写与调试。
一、培训课件与练习环境
培训PPT链接: 百度网盘 请输入提取码
课件主要包括:
- 地瓜机器人、RDK开发板与云端仿真环境。
- 机器人组成与常见仿真平台。
- MuJoCo模型、Python接口与基本控制循环。
- 训练工程使用、分项检查和课后练习安排。
练习使用 RoboGo云平台 的 Module_A_Practice 共享训练镜像,访问方式按培训通知执行。进入云桌面后,通过训练图标打开工程,先阅读 README.md 和 TASK.md。
训练场景为机械臂三工位测高巡检,主要完成传感器读取、检测点位换算、测高计算与区间分类。环境与运行入口已预置,可直接进行练习。
二、一周学习与练习安排
建议每天安排30~60分钟,薄弱环节可适当增加时间。
| 时间 | 学习与练习内容 | 当天目标 |
|---|---|---|
| 第1天 | 阅读课件和工程说明,运行完整演示;对应场景阅读XML | 找到作答文件、运行入口和传感器定义 |
| 第2天 | 复习Python函数、条件与循环;完成T1关节读取 | 解释函数输入、返回值、数组顺序与单位 |
| 第3天 | 复习NumPy索引与整体运算;完成T2点位换算 | 正确处理XYZ、数组形状和mm→m换算 |
| 第4~5天 | 完成T3测高和T4分类,检查正常值、边界值和异常输入 | 分项检查通过,并能解释检测结果 |
| 第6天 | 运行自己的完整巡检,结合日志排查问题 | 完成三个工位检测及返回 |
| 第7天 | 复盘修改内容,尝试调整训练点位或分类区间 | 能说明参数变化如何影响结果,整理仍未解决的问题 |
三、练习划重点
1. 模型与仿真:把场景和代码对应起来
worldbody:机器人、试件及其层级;关注body、joint、geom、site。actuator、sensor:执行器和传感器的名称、类型及关联对象。MjModel、MjData:模型信息与运行状态分别保存在哪里。- 控制循环:读取反馈、生成目标、写入控制、执行
mj_step、查看新状态。 - 时间与坐标:理解物理步长、控制周期,以及位置所属的坐标系。
阅读代码时,可以沿着一个传感器名称,从XML找到Python中的读取位置,再观察终端输出。
2. Python与NumPy:先明确输入,再编写函数
- 掌握函数参数、
return、if/elif/else、for和基本异常处理。 - 区分一个数、一个XYZ点和一组点,检查下标、
shape与单位。 - 理解数组整体运算和复制;需要保留原输入时,注意修改是否影响原数据。
- 条件判断同时检查正常情况、阈值相等和异常情况。
每个函数都先回答三个问题:输入是什么?需要返回什么?怎样检查结果?
3. 调试:形成固定的排查顺序
先看错误类型和原因,再定位文件、行号与函数,最后检查输入值、数组形状和单位。每次只改一处,保存后重新检查。
重点留意:Tab与空格混用、漏写返回值、数组维度错误、单位换算遗漏、传感器名称拼写错误,以及边界条件处理不完整。
四、训练工程常用命令
在工程目录执行:
cd ~/arm-inspection-training
./run.sh --demo # 观察完整演示
./run.sh --lesson io --check # 检查T1:关节读取
./run.sh --lesson targets --check # 检查T2:点位换算
./run.sh --lesson decision --check # 检查T3、T4:测高与分类
./run.sh --check # 检查全部练习函数
./run.sh # 运行自己完成的巡检
作答主要在 exercises.py 中完成。--demo 使用内置参考实现;直接运行 ./run.sh 使用自己的代码。关闭仿真窗口后,重新执行命令即可开始新一轮练习。
分项检查通过后,还要观察完整运行结果。终端日志和检测记录保存在 outputs/。仿真环境目录可在工作区中阅读,普通账号只读。
五、参考资料:按问题查阅
| 资料 | 建议阅读重点 |
|---|---|
| Python:控制流与函数 | 条件、循环、函数定义与返回值 |
| Python:错误与异常 | 错误信息、调用栈、raise 与异常处理 |
| NumPy入门 | 数组、shape、索引、整体运算与复制 |
| MuJoCo:Modeling | 模型层级、部件及坐标关系 |
| MuJoCo:Python接口 | 模型加载、数据访问、命名访问与Viewer |
| MuJoCo:XML Reference | 按工程中的名称查 joint、site、执行器和传感器 |
以上MuJoCo资料统一链接到3.3.7版本,便于对照训练工程。优先阅读与当前练习相关的部分,再回到代码验证。
拓展阅读:RDK官方硬件资料,了解板卡接口及机器人开发中的常见连接方式。
六、练习完成自查与交流
完成后,建议检查:
- 能独立打开工程,选择对应命令运行。
- 能解释T1~T4的输入、输出及主要判断逻辑。
- 分项检查通过,完整巡检有正常结果。
- 能根据日志定位一个错误,并说明修改原因。
- 能说明训练参数变化与运行结果之间的联系。
交流问题时,请附上:运行命令、完整报错、相关代码、预期结果。涉及账号信息的截图先做遮挡。
竞赛安排与要求以已公示技术文件及赛务通知为准。建议把这一周的重点放在基础理解、独立编写和实际调试上。