mrpt杂乱笔记-26-10-31
# 添加ppa
sudo add-apt-repository ppa:joseluisblancoc/mrpt-stable
sudo apt update
sudo apt install mrpt-apps

哦!明白了,你这个是蓝桥云课(lanqiao.cn)里面预装好的环境!
蓝桥的在线实验镜像里面已经内置了 mrpt-apps,所以你点开就能直接跑这个 3D rotation converter; 但是本地纯净 Ubuntu20.04 官方源不带这个包,这就是刚才你在 shiyanlou 直接 apt 找不到的根源:
蓝桥是自己定制打包的镜像,提前预装/内置了 mrpt;实验楼原生 Ubuntu20.04 镜像是原版focal源,没有。
界面功能对照(正好适配你的【星盘旋转变换殿】关卡)
左边面板:
- 输入:Yaw(Z) / Pitch(Y) / Roll(X)(ZYX,机器人常用YPR欧拉角),支持滑条拖动、直接填数值,单位弧度
- 可以切换标签页:
Yaw-pitch-roll/SO(3) matrix - Apply按钮提交更新
左下输出区(解谜核心):
- SO(3) rotation matrix 旋转矩阵
- Quaternion (r,x,y,z) 四元数
- Axis-angle 轴角表示 右侧主窗口:
- 参考坐标系(蓝色Z、红色X、绿色Y)
- 勾选框:
Show reference frame/Show rotated frame,同时显示原始坐标系 + 旋转之后的坐标系,万向锁一眼就能看出来 - Ortho 正交视图切换,单位切换 Radians/Degrees
现在对你的秘境关卡方案调整建议
如果你上课是统一使用蓝桥云课平台: ✅ 完全可以保留主线【星盘旋转变换殿】,工具就是这个 3d-rotation-converter 教案备注一行即可:
图形工具:3d-rotation-converter(mrpt-apps);本工具在蓝桥云课实验环境预装好;原生Ubuntu20.04官方源不含该软件包,本地环境需添加MRPT PPA。
如果你还要兼容实验楼、本地自建Ubuntu20.04: 👉 放到【番外拓展关卡】,主线仍然维持原来13个全部原生apt源GUI关卡不变。
给你适配这个界面的谜题示例(课堂闯关题)
谜题1:输入 yaw=1.0 rad,pitch=0,roll=0,记录输出四元数,对照坐标系旋转 谜题2:万向锁陷阱题:设置 pitch = π/2,再拖动yaw、roll,观察两个轴发生重合,理解欧拉角奇异问题,对比四元数不会出现这个问题
横版技能迁移行(适配这个界面)
- GUI图形操作:拖动YPR滑条、勾选显示两套坐标系、读取面板四元数输出、观测万向锁幻象
- 核心知识点:ZYX欧拉角、SO(3)旋转群、万向锁、旋转矩阵、四元数、轴角
- 终端/代码迁移:Python scipy.spatial.transform / MRPT C++ API / ROS tf2 姿态转换
- 工程迁移场景:机器人TF坐标变换、无人机姿态、SLAM、相机标定
🎮【星盘旋转变换殿】万向锁陷阱闯关谜题(适配图里这个3D rotation converter界面,直接放进教案)
前置说明:工具默认顺序 ZYX(Yaw-Z → Pitch-Y → Roll-X),单位先切换为弧度 Radians,和界面保持一致
闯关任务:踏入万向锁机关陷阱
步骤1:封印初始姿态
全部角度清零: yaw(Z)=0、pitch(Y)=0、roll(X)=0 点击 Apply。 👉 观察:参考坐标系、旋转坐标系完全重合,三轴相互正交、互不干扰,yaw/roll/pitch各自控制独立转动。
步骤2:触发陷阱(核心)
设置: pitch(Y) = π/2(约 1.5708 rad),yaw、roll暂时保持0,点击 Apply
此时Y轴旋转90°,X轴被翻折到和Z轴同向。
步骤3:扰动yaw、roll,发现幻象
方案A:固定pitch=π/2不变,拖动 yaw(Z) 滑条,观察坐标系转动; 方案B:固定pitch=π/2不变,拖动 roll(X) 滑条,观察坐标系转动; ✅ 冒险者发现陷阱现象: yaw 和 roll 两个独立输入,最终产生一模一样的旋转效果!两个转动轴重合,三维姿态丢失一个自由度,这就是万向锁(Gimbal Lock)。
谜题台词:明明是两个不同符文(yaw、roll),结果催动出相同姿态,欧拉星盘出现幻象,无法区分这两种转动。
步骤4:查看输出面板,对比四元数
- 欧拉角这边:有无穷多组(yaw, roll)搭配,只要pitch=π/2,最终姿态完全相同,欧拉角表达产生歧义,奇异点
- 面板输出的四元数:对于这个唯一姿态,只会输出唯一一组四元数,不存在这种奇异歧义,这就是工程上优先选择四元数记录姿态的原因。
步骤5:脱出陷阱(解谜结论)
把 pitch 调回不等于 ±π/2 的数值,再拖动yaw、roll,三轴恢复独立控制,幻象消失,机关解锁。
📜 关卡剧情版描述(直接并入秘境文案)
冒险者将俯仰符文(Pitch)拨至 π/2,星盘机关突然异变。 无论拨动偏航Yaw还是横滚Roll符文,星辰转动的轨迹完全一致,两套符文变成了同一种效果,三轴星盘丢失一个维度,陷入万向锁幻象陷阱。 查看封印面板的四元数印记才发现:同一个空间姿态,永远只会对应唯一一组四元数,不会落入这个奇异陷阱。冒险者由此领悟:想要稳定记录飞行器、机器人姿态,需要用四元数作为姿态封印,规避欧拉角自带的机关缺陷。
✅ 配套思考题(课堂提问)
- 万向锁是不是“数学bug”?
不是bug,是ZYX顺序欧拉角本身参数化方式带来的奇异点,旋转本身在空间上是连续的,只是欧拉角这套编码方式在这里失效。
- 四元数是不是永远不会万向锁?
准确说法:四元数对SO(3)旋转空间的参数化不存在奇异点,不会出现这种自由度丢失的参数歧义;它只是姿态表示方法,不会消除旋转本身的物理约束。
📝 适配你的技能迁移备注
GUI观察行为:固定pitch=π/2,切换yaw/roll,对比坐标系动画 + 面板欧拉角、四元数输出 核心知识点:欧拉角参数化奇异、万向锁、SO(3)流形、四元数无奇异性 工程迁移:机器人TF、无人机飞控、SLAM姿态解算,都会优先使用四元数,避免欧拉角奇异带来失控风险

✅ 这张截图就是万向锁陷阱触发成功的典型画面!
先看输入:
pitch(Y)=1.571 rad≈ π/2,正好踩在奇异点上yaw(Z)=-3.142(≈-π)、roll(X)=3.142(≈π)你现在 yaw 和 roll 取了一负一正的π,但是最终旋转结果几乎一样,坐标系Z轴朝下翻转,yaw和roll的作用互相耦合在了一起。
观察现象对照
- 看右侧3D视图:旋转后的坐标系,原来的X、Z转动轴叠到同一个方向,yaw(Z轴旋转)和 roll(X轴旋转)不再是独立动作,你修改yaw或者修改roll,产生的姿态变化效果几乎一样,自由度丢失1个;
- 看左下角输出:
- 旋转矩阵:
[0,0,1; 0,1,0;-1,0,0](浮点微小误差是计算机计算精度问题),姿态唯一固定; - 哪怕你换另一组 yaw/roll 数值(比如 yaw=0, roll=0,pitch依旧π/2),最后得到的姿态、旋转矩阵、四元数依然是同一个。 👉 也就是:多组完全不同的欧拉角输入,映射到同一个空间姿态,这就是欧拉角的奇异歧义(万向锁)。
- 旋转矩阵:
🎯 闯关剧情台词(直接放进教案)
冒险者拨动星盘,俯仰符文锁定在 π/2,随后任意调整偏航、横滚符文。 明明两组符文数值完全不同,星辰定格的姿态却一模一样,星盘的独立转轴消失了,陷入万向锁幻象。 但下方的四元数封印印记只会生成唯一一组值,不会出现这种一对多的混乱映射。
📌 补充课堂讲解要点
- 这里不是软件bug,是ZYX欧拉角参数化本身的数学奇异特性;旋转本身在三维空间是光滑连续的,只是欧拉角这套“角度编码方案”在pitch=±π/2处失效;
- 浮点微小误差(0.0002、0.0008这类很小的数)是浮点数计算舍入带来的,不用纠结,属于正常现象;
- 脱出陷阱操作:把
pitch改成 1.0 或者 0.5(不等于±π/2),再拖动yaw、roll,三轴就会恢复独立控制,幻象消失。
配套提问
现在这个状态,如果我保持 pitch=1.571,把 yaw 改成 0,roll 改成 0,姿态会不会变化?
答案:几乎不变,验证万向锁“多组欧拉角对应同一个姿态”。
mrpt-apps 全部GUI可演示案例清单(适配你的【Linux秘境闯关】教案,对标 3d-rotation-converter,蓝桥云课环境预装)
筛选标准:纯GUI图形交互、滑条/点击可视化演示、适合课堂解谜闯关、排除纯命令行工具;每一项包含:启动命令、核心功能、闯关题材、谜题设计方向、适配关卡名称建议、教学亮点。 注意:Ubuntu22.04+源自带mrpt-apps,蓝桥云课镜像预装;原生Ubuntu20.04官方源无此包。
| 启动命令 | 工具名称 | 核心功能 | 秘境关卡定名建议 | 闯关剧情&谜题方向 | 教学亮点(适合课堂演示) |
|---|---|---|---|---|---|
3d-rotation-converter | 3D旋转转换器(你现在在用) | 欧拉角(YPR/ZYX) ↔ 四元数 ↔ 旋转矩阵 ↔ 轴角,实时3D坐标系预览 | 【星盘旋转变换殿】姿态符文转换 | 调节三轴星盘,触发万向锁陷阱;对比欧拉角歧义 vs 四元数无奇异性 | 拖拽滑条实时联动3D视图,是整套mrpt里最适合姿态原理入门的教具 |
robotic-arm-kinematics | DH参数机械臂运动学可视化 | DH参数编辑、串联机械臂3D实时预览、正运动学求解,可修改连杆长度、关节角度 | 【机械神臂工坊】连杆符文推演 | 冒险者填写DH符文,拖动关节滑条操控机械臂;设置奇异位形陷阱(臂锁死),观察运动学奇异点 | 完美承接万向锁知识点,从姿态旋转拓展到机械臂正运动学;可视化DH四参数 |
camera-calib | 相机内参标定GUI | 棋盘格相机标定、可视化畸变矫正、预览去畸变图像、计算相机内参矩阵 | 【晶镜校准台】透视符文校正 | 摆放棋盘标定板,采集多视角图像,破解镜头畸变幻象;对比原始畸变图像和校正后画面 | 计算机视觉入门,直观理解径向畸变、内参矩阵,可设计“畸变伪装线索”谜题 |
2d-slam-demo | 2D SLAM教学演示GUI | 二维激光SLAM仿真,粒子滤波定位、栅格地图实时构建、机器人仿真移动 | 【迷雾测绘要塞】迷雾地图拓印 | 机器人在未知密室中移动,逐步扫描构建栅格地图;设置绑架问题陷阱:机器人丢失定位,重新找回自身坐标 | SLAM入门标杆演示,“未知环境寻宝建图”题材,解谜感极强 |
RawLogViewer | 机器人数据集日志查看器 | 打开MRPT .rawlog 传感器数据包:激光、IMU、图像、里程计,回放时间轴、可视化传感器数据 | 【时光卷宗观星台】传感器卷宗回放 | 翻阅机器人历史探险卷宗,在时序数据流里定位传感器异常、数据丢包线索;区分IMU噪声、激光噪点 | 和你已有glogg日志关卡形成互补:glogg是文本日志,RawLogViewer是机器人传感器二进制日志可视化 |
robot-map-gui | 栅格地图编辑器 | 打开/编辑MRPT .simplemap 地图,修改障碍物、自由区域,查看地图坐标系 | 【迷宫制图阁】秘境地图篆刻 | 绘制迷宫障碍物,设置隐藏密道;给导航机器人一张残缺地图,考验地图坐标系理解 | 地图坐标系、占据栅格(Occupancy Grid)可视化,可联动导航demo |
ReactiveNavigationDemo | 2D反应式避障仿真GUI | 差分轮机器人、实时避障算法仿真,自定义障碍物、设置目标点 | 【迷途守卫迷宫】障碍闪避试炼 | 冒险者设定目标点,观察机器人自动绕开障碍;设置死胡同陷阱,观察避障算法的局限 | 移动机器人避障入门,适合做“机关迷宫逃生”闯关 |
holonomic-navigator-demo | 全向轮机器人导航演示 | 全向机器人(麦轮)反应导航仿真,可任意方向平移 | 【浮空浮游哨站】全向法阵机动 | 和差分轮机器人做对照谜题:同样障碍物环境,对比差分轮和全向机器人运动能力差异 | 直观区分非完整约束 / 全向机器人运动学差异 |
ReactiveNav3D-Demo | 3D空间避障仿真 | 三维空间障碍物、飞行器/无人机3D避障仿真 | 【空域迷障空域】三维闪避试炼 | 在三维空间设置悬浮障碍物,观察飞行器绕障;对比2D避障,理解三维运动规划 | 承接3D旋转姿态关卡,把姿态+三维导航串成一条主线 |
SceneViewer3D | MRPT 3D场景查看器 | 加载3D模型、点云、坐标系,自由漫游查看三维场景、点云 | 【虚空遗迹观测厅】三维遗迹勘验 | 导入点云遗迹模型,旋转观察三维遗迹,识别点云残缺、坐标偏移线索 | 通用3D点云/场景查看工具,适合拓展三维感知实验 |
benchmarkingImageFeatures_GUI | 图像特征点比对GUI | SIFT/SURF/ORB等特征检测器可视化,在图上绘制特征点、匹配对 | 【纹章识别密室】特征符文匹配 | 两张相似的遗迹纹章图片,找出匹配特征点;设置光照、缩放伪装陷阱,观察特征丢失 | 机器视觉特征匹配,适合密码、线索识别类谜题 |
navlog-viewer | 导航轨迹日志查看器 | 回放机器人导航轨迹、路径规划记录,可视化规划路径与实际行走轨迹 | 【行者轨迹回廊】路径线索追踪 | 对比规划理想路径和机器人实际轨迹,找出打滑、定位漂移造成的轨迹偏移 | 和RawLogViewer区分:专门聚焦导航规划轨迹,不是原始传感器数据 |
🎯 适配你原有秘境体系的优先级分级(按GUI解谜友好度,对标 apt矿洞扫雷战)
✅ 第一梯队(强烈推荐新增主线,谜题强、可视化拉满,和3d-rotation-converter同层级)
robotic-arm-kinematics机械神臂工坊(DH奇异陷阱,运动学,承接万向锁)camera-calib晶镜校准台(畸变矫正谜题,视觉入门)2d-slam-demo迷雾测绘要塞(SLAM建图+绑架问题陷阱,寻宝感最强)
✅ 第二梯队(番外拓展关卡,适合选做实验)
- RawLogViewer 传感器卷宗回放(和glogg形成对照实验)
- ReactiveNavigationDemo 迷途守卫迷宫(避障闯关)
- robot-map-gui 迷宫制图阁(地图编辑机关)
✅ 第三梯队(兴趣拓展,适合课后选看,谜题偏弱)
holonomic-navigator-demo、ReactiveNav3D-Demo、SceneViewer3D、benchmarkingImageFeatures_GUI、navlog-viewer
📝 横版技能迁移模板(以 robotic-arm-kinematics 举例,直接放进你的迁移地图)
- GUI图形操作:修改DH参数、拖动关节滑条、观察机械臂三维姿态、识别奇异锁死位置
- 核心知识点:DH参数、串联机械臂正运动学、雅可比矩阵、运动学奇异
- 终端/代码迁移:MRPT C++运动学API、ROS MoveIt运动学求解
- 工程迁移场景:工业机械臂、协作机器人控制
⚠️ 重要教案备注(必须写)
所有mrpt-apps工具,仅在蓝桥云课定制实验镜像预装;原版Ubuntu20.04(focal)官方源不含mrpt-apps,Ubuntu22.04(jammy)+官方源可直接apt安装mrpt-apps。
单片机&智能机器人方向|Ubuntu原生apt GUI清单(适配你的Linux秘境闯关规则:不加PPA、Synaptic可搜到、图形化、课堂解谜友好,蓝桥云课/ubuntu20.04可用)
筛选规则:✅ GUI可视化、滑条/点击交互、适合闯关谜题;❌ 剔除纯命令行、源码编译、必须第三方源;和前面mrpt-apps工具风格对齐,每个包含:安装命令、启动命令、关卡定名、闯关剧情谜题、教学亮点
一、单片机入门类(硬件烧录、串口调试、虚拟仿真)
1. arduino(Arduino官方IDE,universe源原生包)
sudo apt install arduino
启动:arduino 【电路符文工坊】单片机符文刻印台 闯关剧情:冒险者编写符文程序,烧录进Arduino符文主板;设置陷阱:引脚冲突、串口波特率不匹配、IO口短路谜题 亮点:图形IDE、串口监视器实时打印;可以做“点亮符文灯、读取模拟传感器”闯关;入门单片机首选,Synaptic直接搜到
备注:ubuntu20.04源里是1.8.x稳定旧版,够用课堂教学
2. cutecom(串口GUI调试器,非常适合单片机串口交互)
sudo apt install cutecom
启动:cutecom 【串口传讯密道】报文信使驿站 闯关剧情:冒险者打开串口密道,和单片机机器人收发报文;陷阱:波特率/校验位不匹配、十六进制/ASCII报文伪装、脏数据干扰谜题 亮点:纯GUI串口,支持HEX收发、时间戳、自动换行;和glogg日志关卡联动,观察单片机数据流;非常适合闯关解密报文
3. simulide(开源单片机仿真GUI,8051/AVR/Arduino虚拟仿真,无硬件!重点推荐)
sudo apt install simulide
启动:simulide 【虚拟芯片幻境】无实体芯片试炼台 闯关剧情:在幻境中搭建单片机电路,放置LED、按键、传感器,烧录hex程序;陷阱:虚焊断路、上拉电阻缺失、时钟晶振错误,电路看起来接线正确但是无法触发机关 亮点:纯虚拟仿真,不需要真实开发板,课堂零硬件成本;拖拽元件、实时仿真;可以做连环电路谜题,单片机入门神器
二、机器人仿真&状态可视化(和mrpt形成主线联动)
4. turtlesim(ROS Noetic原生,apt直接装,最经典入门2D机器人)
sudo apt install ros-noetic-turtlesim
启动:rosrun turtlesim turtlesim_node 【灵龟试炼庭院】小乌龟符文导航 闯关剧情:控制灵龟机器人在水池里移动、画轨迹;陷阱:角度转向歧义、坐标边界碰撞,写出路径符文抵达目标点 亮点:极简GUI、适合理解机器人坐标系;可以联动rqt;是ROS入门标杆,和你3d-rotation-converter姿态知识点串联
5. rqt / rqt-gui(ROS可视化工具箱,万能机器人调试面板套件)
sudo apt install ros-noetic-rqt ros-noetic-rqt-common-plugins
启动:rqt 【机器人观星台】多面板传感监视厅 闯关剧情:打开话题监视器、动态重绘面板,观察机器人里程计、IMU、激光数据流;陷阱:话题名字写错、消息类型不匹配、数据断流伪装故障 亮点:模块化可拖拽面板,实时曲线、图像、数值;可以搭配turtlesim、仿真机器人一起闯关
6. rviz(RViz,3D机器人可视化,和3d-rotation-converter绝配)
sudo apt install ros-noetic-rviz
启动:rviz 【星象观测大厅】机器人三维实景推演 闯关剧情:加载机器人URDF模型,拖动关节滑条、查看IMU姿态、激光雷达点云;陷阱:坐标系TF丢失、姿态旋转顺序混淆(完美承接万向锁知识点) 亮点:3D姿态展示,和【星盘旋转变换殿】形成上下关卡联动;机器人领域标准可视化工具
7. gazebo11(经典Gazebo11物理仿真器,ubuntu20.04官方源自带,不需要额外源)
sudo apt install gazebo11
启动:gazebo 【物理秘境沙盘】机器人实体仿真要塞 闯关剧情:搭建迷宫沙盘,放入差分轮机器人、激光雷达、相机传感器;陷阱:摩擦力参数错误、碰撞体缺失、传感器噪声干扰,机器人卡在障碍里 亮点:带物理引擎、激光/相机/IMU传感器仿真;可以和ROS联动,做SLAM、避障闯关,对标mrpt的2d-slam-demo
三、蓝牙/无线机器人通信GUI(遥控单片机蓝牙小车)
8. blueman(蓝牙图形管理工具,原生源)
sudo apt install blueman
启动:blueman-manager 【蓝牙浮空法阵】无线信号密门 闯关剧情:搜寻单片机蓝牙从机、配对建立无线通道;陷阱:蓝牙PIN码错误、设备被隐藏、射频距离丢失,信号中断谜题 亮点:图形化蓝牙扫描、配对、串口蓝牙SPP连接,搭配cutecom,控制蓝牙小车
四、电机/控制器拓展(进阶番外)
9. qelectrotech 电路绘图仿真GUI(机器人原理图、电机驱动电路)
sudo apt install qelectrotech
启动:qelectrotech 【电路符文绘卷】动力回路篆刻阁 闯关剧情:绘制L298N、L293D电机驱动电路;陷阱:续流二极管缺失、电源反接,电路机关烧毁谜题 亮点:电路原理图绘制、电气仿真;适合机器人动力部分前置关卡
🎯 优先级分级(按你的秘境闯关趣味强度,对标apt矿洞扫雷战)
✅ 主线推荐(谜题强、GUI友好、适合正式实验关卡)
- simulide【虚拟芯片幻境】(无硬件单片机仿真,谜题上限极高,强烈主推)
- cutecom【串口传讯密道】(报文解密,和glogg日志关卡完美联动)
- turtlesim【灵龟试炼庭院】(入门导航,简单好上手)
- rviz【星象观测大厅】(承接万向锁姿态主线,和mrpt姿态关卡串联)
✅ 第二梯队(拓展选做关卡)
arduino、gazebo11、rqt、blueman
✅ 第三梯队(课后兴趣拓展)
qelectrotech
📌 横版技能迁移模板(simulide示例,直接放进你的迁移地图)
- GUI图形操作:拖拽单片机、LED、按键元件,连线,加载hex固件,观察虚拟电路运行故障
- 核心知识点:单片机IO、数字输入输出、时序、上拉电阻、电路故障排查
- 终端/代码迁移:avr-gcc编译hex、avrdude烧录、串口通信代码
- 工程迁移场景:单片机原型验证、前置电路测试、机器人底层驱动开发
教案统一备注
全部为Ubuntu20.04(focal) universe/multiverse官方源原生包,不需要添加PPA,Synaptic新立得包管理器直接搜索安装,和你最开始【apt矿洞扫雷战】统一教学链路;其中turtlesim/rviz/rqt/gazebo属于ROS生态工具,蓝桥云课镜像预装ROS Noetic,可以直接跑。
✅ 三维系列全部清单(适配你的Linux秘境闯关,分两大组:MRPT套件三维工具 + Ubuntu原生apt三维GUI,蓝桥云课可用)
筛选标准:3D视图交互、GUI可视化、机器人/姿态/点云/仿真方向、适合课堂解谜;延续你【星盘旋转变换殿】万向锁这条姿态主线。
第一组:MRPT三维GUI(蓝桥镜像预装mrpt-apps,ubuntu20原生源无)
| 启动命令 | 名称 | 三维核心能力 | 秘境关卡定名 | 闯关谜题方向(承接万向锁) |
|---|---|---|---|---|
3d-rotation-converter | 3D旋转转换器 | SO(3)欧拉角/四元数/旋转矩阵双向转换、坐标系3D预览、万向锁演示 | 【星盘旋转变换殿】姿态符文转换 | pitch=π/2触发万向锁,对比欧拉角奇异 vs 四元数无奇异性(你当前在用) |
robotic-arm-kinematics | DH机械臂运动学GUI | 串联机械臂3D模型、DH参数编辑、拖动关节滑条、运动学奇异位形 | 【机械神臂工坊】连杆符文推演 | 拖动关节到奇异位置(臂锁死),和万向锁做对照:运动学奇异,雅可比降秩 |
SceneViewer3D | MRPT三维场景查看器 | 加载3Dscene、点云、坐标系、机器人模型自由漫游查看 | 【虚空遗迹观测厅】三维遗迹勘验 | 导入SLAM三维点云卷宗,查找坐标偏移、传感器错位线索,核对TF坐标系 |
ReactiveNav3D-Demo | 三维反应式避障仿真 | 2.5D分层高度栅格、三维障碍物、飞行器/立体避障 | 【空域迷障试炼台】三维闪避试炼 | 设置高低错落障碍物,对比2D避障;观察机器人因为高度信息缺失而撞障 |
camera-calib | 相机标定GUI | 棋盘格标定、3D相机外参、畸变矫正、相机坐标系可视化 | 【晶镜校准台】透视符文校正 | 相机外参旋转本质也是SO(3)旋转,联动前面四元数知识点;畸变陷阱 |
kinect-icp-slam | Kinect ICP三维建图Demo | RGBD深度相机、ICP配准、稠密三维点云实时建图 | 【深渊拓印秘境】三维稠密测绘 | 扫描物体,观察ICP配准漂移;旋转姿态错误导致点云错位,和万向锁联动 |
第二组:Ubuntu20.04原生apt源三维GUI(不加PPA,Synaptic直接搜,主线优先)
1. rviz(ROS Noetic)
sudo apt install ros-noetic-rviz
启动:rviz
【星象观测大厅】机器人三维实景推演
- 三维能力:URDF机器人模型、TF坐标系树、激光点云、深度相机点云、IMU姿态、导航路径标记
- 谜题:TF坐标系断开、姿态旋转顺序错误陷阱,完美承接万向锁知识点,查看机器人各关节/传感器之间三维变换
- 特点:机器人行业标准三维调试工具,和mrpt姿态关卡完美串联
2. gazebo11 三维物理仿真器
sudo apt install gazebo11
启动:gazebo 【物理秘境沙盘】三维机器人仿真要塞
- 三维能力:完整3D物理引擎、重力/摩擦/碰撞、激光雷达、深度相机、IMU、机械臂、差分轮/全向机器人
- 谜题:搭建高低障碍物迷宫,仿真飞行器、机械臂,复现三维姿态失控、奇异位形
- 特点:生成传感器三维数据,数据可以送入rviz可视化
3. pcl-tools(PCL点云查看器 pcl_viewer)
sudo apt install pcl-tools
启动:pcl_viewer xxx.pcd 【云墟卷宗阁】三维点云勘验台
- 三维能力:PCD点云加载、法向量显示、裁剪、颜色渲染、坐标轴
- 谜题:点云配准、旋转错位,同一个物体不同姿态点云对齐;观察旋转参数错误带来的点云偏移
4. f3d 极简3D模型查看器(ply/gltf/obj)
sudo apt install f3d
启动:f3d xxx.ply 【微缩星模阁】轻量化三维检视台
- 三维能力:轻量化快速查看三角网格三维模型,适合简单模型、标定板、零件模型
- 适合做快速三维模型线索展示,谜题弱,适合番外
5. geogebra(3D几何)
sudo apt install geogebra
启动:geogebra 【几何星盘台】三维几何推演
- 三维能力:自定义向量、坐标系、旋转矩阵、立体几何
- 适合:推导欧拉角旋转数学原理,万向锁数学推演,没有一键四元数输出
🎯 优先级分级(按闯关趣味性、三维联动性,对标3d-rotation-converter)
✅ 主线梯队(强烈优先放进主线,三维姿态闭环)
3d-rotation-converter星盘旋转变换殿(SO(3)姿态、万向锁原点)robotic-arm-kinematics机械神臂工坊(机械臂运动奇异,万向锁同数学根源)rviz星象观测大厅(TF坐标系、机器人整机三维姿态,工程落地)gazebo11物理秘境沙盘(带物理的三维仿真,生成真实传感器三维数据)
✅ 拓展梯队(选做实验,三维感知方向)
- SceneViewer3D、ReactiveNav3D-Demo、kinect-icp-slam(mrpt)
- pcl_viewer 点云勘验台、camera-calib
✅ 兴趣番外(课后)
f3d、geogebra
📚 主线教学逻辑链路(非常顺)
3d-rotation-converter(欧拉/四元数、万向锁奇异) → robotic-arm-kinematics(机械臂运动学奇异) → rviz(机器人多坐标系TF三维变换) → gazebo(三维物理世界仿真,生成传感器数据) 整条主线全部围绕 三维旋转SO(3)、姿态奇异、坐标系变换,知识点一脉相承。
📝 统一教案备注
MRPT系列三维工具仅蓝桥云课镜像预装;纯净Ubuntu20.04官方源无mrpt-apps;rviz/gazebo/pcl-tools/geogebra/f3d 是ubuntu20原生源,Synaptic直接安装,兼容性最好。
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐


所有评论(0)