教学教程 · 从调试到课堂
模块 1 · 仿真先行:为什么先“假”,再“真”
我们怎么调
用与实机一致的 URDF 关节链、关节限位和 TCP 建仿真;先在仿真里检查姿态、可达性、碰撞与路径,再下发真机。真机时间只用于验证已经跑通的方案。
课堂上怎么教
- 先让学生在仿真里预测“夹爪会往哪边动”,再点按钮验证。
- 把“仿真—真机”差异当成讨论题:为什么真机慢、为什么有误差?
- 建立规则:仿真没跑通,不上真机。
对应:D01 初中三关、D02 高中限位数据课、初中 J01–J03、高中 S01/S06。
模块 2 · 运动安全:位置、速度、力度三件事
我们怎么调
大范围姿态切换先慢速、再走安全侧摆、到位后再恢复标准速度;路径先做碰撞检查,离立柱足够远才直接走。立柱与机械臂一起升降,安全范围随之平移。
课堂上怎么教
- 用 D01 第一关的“接近距离 / 握力”滑杆,让学生看到参数变化。
- 把“停住 1.5 秒”解释成确认窗口,而不是浪费时间。
- 让学生写三条“机器人安全公约”。
对应:D01 第一关、初中 J01、高中 S06。
模块 3 · 抓取:先升立柱,再从上往下
我们怎么调
抓桌面物体前先把臂基座/夹爪抬到桌面以上;预抓取位置高于桌面 ≥12cm;只允许从上往下接近;指尖离桌面 ≥1cm;先用头部相机找目标,再用手腕相机精定位。
课堂上怎么教
- 用“高—准—慢”三个字概括:先抬高、再对准、最后慢降。
- 让学生在学案上画“错误接近”和“正确接近”两张侧视图。
- 真机演示只做空载,不夹手、不夹笔。
对应:初中 J01/J04、高中 S06。
模块 4 · 点云与视觉:把“看见”变成坐标
我们怎么调
头部 RGB-D 数据转到机器人基坐标系,做体素降采样、平面提取、物体聚类;识别结果只作为候选,最终抓取前还要用腕部相机确认。识别失败时保留原图与参数,便于复盘。
课堂上怎么教
- 先讲“像素坐标 → 相机坐标 → 机器人坐标”的转换链。
- 用一张桌面照片让学生圈出“可抓/不可抓”,再对照算法结果。
- 把“置信度”讲成“敢不敢下手的把握”。
对应:初中 J04、高中 S05/S06。
模块 5 · 对话:听懂、找到、说人话
我们怎么调
语音先转文字,再做意图识别和槽位抽取;知识库按“问题—关键词—答案”组织;答不上来时明确说“不知道”,并记录问题,下一轮补库。涉及动作的指令必须加安全护栏。
课堂上怎么教
- 用 D01 第二关的“意图 / 槽位 / 置信度”面板讲清链路。
- 让学生故意问一个知识库外的问题,体验“拒识”。
- 比较“教室在哪”和“带我去教室”:一个是问答,一个是任务。
对应:初中 J05、高中 S07。
模块 6 · 导航:地图、路径、到站
我们怎么调
先把环境栅格化,标出可通行/障碍;用 A* 做全局路径,用局部规则处理动态障碍;到站不只看距离,还要看方向、地面标记和任务回执。失败时保留“在哪一步失败”的日志。
课堂上怎么教
- 用 D01 第三关先让学生猜路线,再点目的地验证。
- 把“行人阻挡”当成动态障碍案例:停—等—绕—回原路线。
- 讨论:如果目的地在三楼,还需要什么?
对应:D02 定点头限位、初中 J06/J07、高中 S06。
模块 7 · 系统集成:接口比功能更重要
我们怎么调
把感知、决策、执行拆成独立模块,用统一的消息/接口连接;每个模块都能单独测试,失败时能定位到具体环节。集成测试先跑通“最短闭环”,再逐步加功能。
课堂上怎么教
- 让学生画 D01 三关的输入/输出框图。
- 用“如果对话模块坏了,带路还能不能用”讨论解耦。
- 高中要求用 Python/ROS 2 复现其中一个模块。
对应:高中 S01/S09/S10。
模块 8 · 评价:证据优先,不只看“能跑”
我们怎么调
每次调试记录:改了什么、预期什么、实际什么、下次改什么。可靠性用成功率、耗时、碰撞次数、失败原因分布来衡量,而不是只看一次演示。
课堂上怎么教
- 学案每关都有“参数—现象—判断”三列。
- 展示环节要求带 1 张图或 1 组数据。
- 用 rubric 评“观察记录、概念理解、提问质量、安全规范、团队协作”。
对应:全部项目;D01 教案第七节。
把方法变成课程:一页纸模板
| 课程环节 | 要回答的问题 | 产出 |
|---|---|---|
| 情境 | 真实世界里谁需要这个能力?失败会怎样? | 任务卡 / 失败案例 |
| 仿真 | 先预测什么?改哪个参数? | 预测 + 截图 |
| 实践 | 一次只改什么?怎么测? | 记录表 |
| 对照 | 仿真和真机差在哪?为什么? | 差异清单 |
| 复盘 | 下次先改哪一处? | 一条改进 + 证据 |