logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

《Threejs入门》Ch6 旋转与四元数:从万向锁到半个角

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

文章图片
#前端
《Babylonjs入门》第 7 章 旋转的真相

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

文章图片
#前端
《Pinocchio入门》第 12 章 质心动力学:`centerOfMass`、`h_com`,以及一张只记外力的账

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

文章图片
#c++
《Pinocchio入门》第 11 章 正动力学与仿真:`aba`、三档控制器,以及步长这件事

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

文章图片
#c++
《Pinocchio入门》第 10 章 逆动力学与质量矩阵:`rnea`、`crba`,以及只填了上半个的那个矩阵

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

文章图片
#c++
《Pinocchio入门》第 6 章 从 URDF 读进一个真实机器人:`<limit>` 活着,基座的质量「不在账上」

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

文章图片
#c++
《Pinocchio入门》第 3 章 `Model` 与 `Data`:结构放一边,算出来的东西放一边

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

文章图片
#c++
《Pinocchio入门》第 1 章 所有权:值、引用、`unique_ptr`、`shared_ptr`

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

文章图片
#c++
《Eigen入门》第 37 章 · 综合项目二:3D 点云与刚体变换

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

文章图片
#c++
《Eigen入门》第 32 章 · 几何模块

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

文章图片
#c++
    共 22 条
  • 1
  • 2
  • 3
  • 请选择