
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
本章目标能解释欧拉角三个数的双重读法(体轴系/世界轴系)、three.js 默认 'XYZ' 顺序对应的矩阵 Rx·Ry·Rz,并能推导万向锁的几何机制与公式特例。能从复数旋转出发"造出"四元数:记住 q = (cos θ/2, sin θ/2 · 轴),会手算常见四元数,理解 q 与 −q 是同一个旋转。理解旋转复合 = 四元数乘法(最右先作用),会用 setFromAxisAngle / se

最终效果:一个"旋转调试器",展示同一个立方体用三种不同方式旋转的效果对比:欧拉角(Euler angles)、四元数(Quaternion)和 lookAt。读者可以拖动滑块改变角度,直观看到万向锁现象以及四元数如何避免它。

本章解决一个问题:前三章算的都是「每个关节要出多大力、每个关节怎么动」,都是 nv 维的账。这一章把它压缩成 6 个数——质心的平动 + 绕质心的动量矩。然后你会发现一件很反直觉的事:想让机器人「站得住」所需的那张账上,关节力矩一个都不出现,只有外力。本章用实测把这句话钉死:钉住一个姿态要花 33.63 N·m,而它对外界的动量账贡献是 0.0000。

本章解决一个问题:给了力矩,机器人到底怎么动?把第 10 章那条方程反过来解,再用它搭一个能让时间流动起来的仿真循环——然后拿同一个循环、同一组增益,看「纯 PD」「PD + 重力补偿」「计算力矩」三档控制器差多少。

本章解决一个问题:给定机器人的姿态、速度、加速度,各关节需要输出多大力矩?这是动力学库存在的理由,也是第 13、14 章两套控制律的发动机。先修:第 00 章(环境)、第 03 章(Model / Data 的分工)、第 07 章(正运动学)。

本章解决一个问题:前三章的模型全是你自己在 C++ 里 addJoint 拼出来的,或者用 buildModels::manipulator 一行调用出来的。真实项目不是这样——真实项目给你的是一个 .urdf 文件。本章把一份 4 连杆 3 关节的 URDF 读进 Pinocchio,然后逐项对账:XML 里写的每一个数字,最后落在 Model 的哪个字段。对账的收获比想象大:你会发现 <ori

本章解决一个问题:一台机器人在 Pinocchio 里到底是被怎么「装」起来的,以及为什么每次调用算法都要同时递进去一个 Model 和一个 Data。这一章不涉及任何动力学公式,只把两件事量清楚:结构(关节树 + 坐标系树)和尺寸(nq/nv/njoints/nframes)。后面 11 章的每一行代码都建立在这两个表上。

本章解决一个问题:一个对象被创建出来之后,谁负责销毁它,以及把它交给别人用时怎么交才不会把程序搞坏。这一章不碰机器人动力学,只把语言工具磨利——后面 11 章的代码里每一处 const Model&、每一个 auto、每一次 std::move 都靠它打底。

第二个实战项目:处理 3D 点云,做旋转和平移。这是计算机图形学、机器人、SLAM 的基础。本项目综合运用:vector、几何模块、刚体变换。

Eigen 的几何模块(<Eigen/Geometry>)是机器人、图形学、SLAM 的必备工具。本章讲旋转的三种表示、刚体变换,以及它们之间的转换。








