Skip to content

Commit fdc87fb

Browse files
Michael-Jetsonclaude
andcommitted
补全教学文档 + 复核bug修复 + 公式LaTeX化起步
新增/扩写教学章节(≥2000行,遵循编写规范v5.0,结合互联网调研): 接触力学 摩擦锥2047/可微接触2130/Saltation2006; 深度学习数学 Diffusion2065(已LaTeX化); 另含本会话前批 无人机D1-D13/多机器人协作/01数学诸篇。 复核确认bug修复: 足式50 ABA偏置力多余项删除; 复合20/160 CMM Pinocchio(线动量,角动量)排列纠正; 优化40 GD收敛常数(2LR^2/k); 优化20 Moreau习题草稿残留清理; 优化50 §3.x交叉引用; 复合30 SE(3)末端代价Jacobian统一为-Jlog6(T_err^-1)J_LOCAL; 无人机40 omega_z悬停除零修复。 公式格式: 新写内容统一LaTeX; 存量全仓Unicode数学符号→LaTeX转换待后续批量。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent a467128 commit fdc87fb

256 files changed

Lines changed: 377742 additions & 28 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# 损坏的旧 .git 备份(21M,Nutstore 同步损坏后留存,勿提交)
2+
.git_corrupt_bak/
3+
4+
# 归档:个人笔记(docx/pdf)+ 下载的论文 PDF,不进入公开仓库
5+
_archive/
6+
7+
# 明显草稿 / 失败归档
8+
_failed_archive/
9+
tmp_*.md
10+
*_failed.md

00_项目导航/README.md

Lines changed: 247 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,247 @@
1+
# 机器人文档项目总导航图
2+
3+
> 这份导航图只回答一个问题:**这个文档项目整体在研究和教学什么,主方向有哪些,它们之间是什么关系。**
4+
>
5+
> 不展开到具体章节知识点,只保留宏观结构、代表方法、代表代码生态和核心入口文档。
6+
7+
如果你需要更细的结构树,请继续看:
8+
9+
- [项目分层导航](./01_项目分层导航.md):大方向 → 方向 → 子方向 / 子知识块 → 对应文件入口
10+
- [数学导航完整性审计](./02_数学导航完整性审计.md):按“总纲 → 批次 → 子任务 → 单文件成熟度”核对数学线是否缺项
11+
- [全项目导航完整性审计](./03_全项目导航完整性审计.md):对整个项目导航做简洁总审查
12+
13+
---
14+
15+
## 1. 项目定位
16+
17+
这个项目不是单一主题的笔记集合,而是一套面向**机器人高阶教学 / 工程迁移 / 研究预备**的文档体系。
18+
整体上可以理解为六层结构:
19+
20+
1. **数学底座**
21+
2. **C++ / SLAM 公共主线**
22+
3. **规划与控制总线**
23+
4. **按机器人形态展开的方向线**
24+
5. **横切专题**
25+
6. **工程生态与项目调研**
26+
27+
当前文档形态是**根目录平铺 + 多条主线并行演进**,因此建议后续都从本导航页进入。
28+
29+
---
30+
31+
## 2. 一张图看全项目
32+
33+
```text
34+
机器人文档项目
35+
├── A. 数学与博士前底座
36+
│ ├── 基础分析 / 代数 / 测度 / ODE
37+
│ ├── 流形 / 李群 / 凸优化 / 自动微分
38+
│ ├── 最优控制 / 刚体动力学 / 状态估计
39+
│ └── RL / 接触力学 / 深度学习与具身智能
40+
41+
├── B. C++ / SLAM 公共主线
42+
│ ├── 现代 C++ / 模板 / 并发 / 工程化
43+
│ ├── Eigen / manif / Ceres / GTSAM / g2o
44+
│ ├── PCL / OpenCV / ROS2 / CUDA
45+
│ └── 多传感器 SLAM 架构与项目实战
46+
47+
├── C. 规划与控制总线
48+
│ ├── 方向划分与公共基础层
49+
│ ├── Pinocchio / QP-NLP / MPC / WBC / ros2_control
50+
│ └── 从 SLAM/C++ 底盘过渡到规控方向
51+
52+
├── D. 方向线
53+
│ ├── 无人机规控
54+
│ ├── 机械臂规控
55+
│ ├── 腿足 / 轮足 / 人形 / 复合机器人
56+
│ └── 力控 / 柔顺 / 阻抗 / 导纳
57+
58+
├── E. 横切专题
59+
│ ├── 不确定性规划
60+
│ ├── 博弈规划
61+
│ ├── 时空联合规划
62+
│ └── MuJoCo / 可微仿真 / RL+规控交叉
63+
64+
└── F. 工程生态与调研
65+
├── ROS1 / ROS2 / Gazebo / URDF / Xacro
66+
├── 规划控制 C++ 库生态
67+
├── SLAM / 规控 / 机器人项目全景调研
68+
└── 经典论文脉络与项目精读
69+
```
70+
71+
---
72+
73+
## 3. 主结构导航
74+
75+
### A. 数学与博士前底座
76+
77+
- **定位**:整套项目的理论地基,负责把本科数学补到机器人博士预备层。
78+
- **主要覆盖**:实分析、测度、泛函、流形、李群、凸优化、非线性优化、自动微分、最优控制、刚体动力学、状态估计、RL、接触力学、具身智能数学。
79+
- **代表方法关键词**:Retraction、BCH、KKT、内点法、PMP、HJB、RNEA/ABA、EKF/IEKF、因子图、随机逼近、互补问题。
80+
- **代表代码生态**`Eigen``Sophus``manif``Ceres``CasADi``OSQP``Ipopt``GTSAM`
81+
- **入口文档**
82+
- [博士前数学学习路线图总览](../博士前数学学习路线图总览.md)
83+
- [博士前数学路线图 · 第一批 · 专题1:光滑流形的一般理论](../博士前数学路线图%20·%20第一批%20·%20专题1:光滑流形的一般理论.md)
84+
- [博士前数学路线图 · 第二批 · 专题 2:凸优化问题类型与对偶理论](../博士前数学路线图%20·%20第二批%20·%20专题%202:凸优化问题类型与对偶理论.md)
85+
86+
### B. C++ / SLAM 公共主线
87+
88+
- **定位**:整个项目的工程底盘,也是多数方向线默认的前置主线。
89+
- **主要覆盖**:现代 C++、模板、并发、内存/缓存、构建系统、ROS2、高性能工程;再向上进入 SLAM 的核心库、系统架构、项目精读与综合实战。
90+
- **代表方法关键词**:CRTP、SFINAE、Concepts、因子图、自动微分、图优化、多传感器 SLAM、性能优化、Mini-LIO。
91+
- **代表代码生态**`Eigen``manif``GTSAM``Ceres``g2o``PCL``OpenCV``ROS2``CUDA`
92+
- **入口文档**
93+
- [SLAM_CPP进阶教学大纲_v8_上篇](../SLAM_CPP进阶教学大纲_v8_上篇.md)
94+
- [SLAM_CPP进阶教学大纲_v8_下篇](../SLAM_CPP进阶教学大纲_v8_下篇.md)
95+
- [SLAM工程师C++进阶大纲优化研究报告](../SLAM工程师C++进阶大纲优化研究报告.md)
96+
97+
### C. 规划与控制总线
98+
99+
- **定位**:连接“SLAM/C++ 底盘”和“各机器人规控方向”的总纲层。
100+
- **主要覆盖**:规控方向分类、公共基础层、Pinocchio、动力学、优化建模、MPC、WBC、实时控制、任务编排。
101+
- **代表方法关键词**:Pinocchio、CppAD/CodeGen、QP/NLP、DDP/iLQR、MPC、TSID、WBC、PREEMPT_RT、BT.CPP。
102+
- **代表代码生态**`Pinocchio``CppAD``CasADi``OSQP``HPIPM``ProxQP``Crocoddyl``OCS2``ros2_control`
103+
- **入口文档**
104+
- [规控方向分类与公共基础层设计方案](../规控方向分类与公共基础层设计方案.md)
105+
- [机械臂腿足规控C++方向增量式教学大纲_v1](../机械臂腿足规控C++方向增量式教学大纲_v1.md)
106+
- [腿足方向C++进阶教学大纲_v1_序章上篇_全景与四分法](../腿足方向C++进阶教学大纲_v1_序章上篇_全景与四分法.md)
107+
108+
### D1. 无人机方向
109+
110+
- **定位**:面向多旋翼轨迹生成、自主探索、MPC/几何控制、敏捷飞行与群体协同。
111+
- **主要方法**:微分平坦、Min-Snap、多项式轨迹、B-spline、MINCO、安全走廊、几何控制、NMPC、敏捷飞行 RL、编队协同。
112+
- **代表代码生态**`GCOPTER``Fast-Planner``EGO-Planner``PX4``Flightmare``Aerial Gym``Agilicious``OmniDrones`
113+
- **入口文档**
114+
- [无人机方向C__进阶教学大纲_v0.1](../无人机方向C__进阶教学大纲_v0.1.md)
115+
- [无人机运动规划与控制开源C++项目全景调研](../无人机运动规划与控制开源C++项目全景调研.md)
116+
117+
### D2. 机械臂方向
118+
119+
- **定位**:面向固定基座操作机器人,从运动学、动力学、优化到规划执行的完整工程链。
120+
- **主要方法**:Pinocchio 动力学、IK、碰撞检测、QP/NLP 建模、OMPL、TrajOpt、CHOMP、STOMP、GPMP2、时间参数化、实时控制、MoveIt2。
121+
- **代表代码生态**`Pinocchio``KDL``TRAC-IK``IKFast``FCL``HPP-FCL``OMPL``MoveIt2``Ruckig``libfranka`
122+
- **入口文档**
123+
- [机械臂方向C__进阶教学大纲_v0.1](../机械臂方向C__进阶教学大纲_v0.1.md)
124+
- [机械臂规划与控制开源C++项目精炼版调研](../机械臂规划与控制开源C++项目精炼版调研.md)
125+
- [机械臂规控C++项目全景调研_第一批](../机械臂规控C++项目全景调研_第一批.md)
126+
127+
### D3. 腿足 / 轮足 / 人形 / 复合机器人方向
128+
129+
- **定位**:从浮动基座动力学出发,进入四足、轮足、人形、足式操作和 loco-manipulation。
130+
- **主要方法**:空间向量代数、Centroidal Dynamics、SRB、MPC+WBC、WBIC、全身控制、模式切换、移动操作、轮足混合、视觉全身控制。
131+
- **代表代码生态**`Pinocchio``OCS2``Crocoddyl``TSID``legged_control``qm_control``mc_rtc``Isaac Lab`
132+
- **入口文档**
133+
- [腿足方向C++进阶教学大纲_v1_第1批_Ch47-50](../腿足方向C++进阶教学大纲_v1_第1批_Ch47-50.md)
134+
- [复合机器人规控C++进阶教学大纲_续篇_Ch71-100](../复合机器人规控C++进阶教学大纲_续篇_Ch71-100.md)
135+
- [轮足机器人与足式机械臂开源项目全景调研](../轮足机器人与足式机械臂开源项目全景调研.md)
136+
137+
### D4. 力控 / 柔顺控制方向
138+
139+
- **定位**:从位置控制跨入接触交互世界,覆盖阻抗、导纳、操作空间力控、变阻抗、碰撞安全和学习型柔顺。
140+
- **主要方法**:阻抗控制、导纳控制、操作空间动力学、无源性、能量罐、动量观测器、WBC 力控、RL+阻抗、Diffusion Policy。
141+
- **代表代码生态**`libfranka``franka_ros2``ros2_controllers``mc_rtc``TSID``OCS2``WBIC``SERL`
142+
- **入口文档**
143+
- [力控柔顺控制方向C__进阶教学大纲_v0_2](../力控柔顺控制方向C__进阶教学大纲_v0_2.md)
144+
145+
### E1. 不确定性规划横切专题
146+
147+
- **定位**:处理模型误差、感知误差、风险和信念空间问题。
148+
- **主要方法**:Scenario Tree、Robust MPC、Chance-Constrained Planning、POMDP / Belief-space Planning、CVaR / 风险敏感规划。
149+
- **代表代码生态**`DESPOT` 等 POMDP 框架为主,工程 C++ 生态相对稀疏。
150+
- **入口文档**
151+
- [不确定性规划横切专题_八段式大纲_上篇](../不确定性规划横切专题_八段式大纲_上篇.md)
152+
- [不确定性规划横切专题_八段式大纲_下篇](../不确定性规划横切专题_八段式大纲_下篇.md)
153+
154+
### E2. 博弈规划横切专题
155+
156+
- **定位**:处理“对手/他人也是决策者”的规划问题,强调交互、意图和策略耦合。
157+
- **主要方法**:Game-theoretic Planning、交互式规划、联合预测-规划、多智能体决策、MARL 交界。
158+
- **代表代码生态**:开源 C++ 较分散,更多承担“论文脉络 + 方法地图”角色。
159+
- **入口文档**
160+
- [博弈规划横切专题_八段式大纲](../博弈规划横切专题_八段式大纲.md)
161+
- [经典规控范式四专题横切层调研报告](../经典规控范式四专题横切层调研报告.md)
162+
163+
### E3. 时空联合规划横切专题
164+
165+
- **定位**:处理路径和速度不能再分开的动态规划问题,是自动驾驶、多机协调、动态避障的重要横切层。
166+
- **主要方法**:Frenet / SL-ST 图、SIPP、时空走廊、CILQR、TEB、OBCA、Apollo/Autoware 工业链、多智能体 CBS/LaCAM/ORCA、扩散式规划。
167+
- **代表代码生态**`Apollo``Autoware``RVO2/ORCA`、多机 MAPF 相关项目,以及无人机时空协调框架。
168+
- **入口文档**
169+
- [时空联合规划横切专题_八段式大纲_上篇](../时空联合规划横切专题_八段式大纲_上篇.md)
170+
- [时空联合规划横切专题_八段式大纲_下篇](../时空联合规划横切专题_八段式大纲_下篇.md)
171+
172+
### E4. MuJoCo / 可微仿真 / RL+规控交叉
173+
174+
- **定位**:作为交叉能力层,连接接触、仿真、优化、强化学习与规控部署。
175+
- **主要方法**:可微仿真、接触梯度、轨迹优化、sim-to-real、MuJoCo 工程链。
176+
- **代表代码生态**`MuJoCo``mjlab`、以及与 `Isaac Lab``OCS2``Crocoddyl` 等规控框架的交叉。
177+
- **入口文档**
178+
- [MuJoCo与可微分仿真_规控交叉能力层教学大纲_v0.1_完整版_含mjlab实战](../MuJoCo与可微分仿真_规控交叉能力层教学大纲_v0.1_完整版_含mjlab实战.md)
179+
180+
### F. 工程生态与调研资料层
181+
182+
- **定位**:提供整套项目的工程环境、基础设施、代码生态、开源项目和论文脉络支撑。
183+
- **主要覆盖**
184+
- ROS1 / ROS2 架构、迁移、CLI、调试、可视化
185+
- Gazebo / URDF / Xacro / ros2_control / 硬件接入
186+
- SLAM、规划、控制、C++ 工具链与开源项目全景
187+
- 经典论文脉络与项目对照阅读
188+
- **代表代码生态**`ROS2``Nav2``Gazebo``MoveIt2``RViz2``PlotJuggler``Foxglove`
189+
- **入口文档**
190+
- [ROS1_ROS2_机器人工程师完整调研报告](../ROS1_ROS2_机器人工程师完整调研报告.md)
191+
- [ROS1_ROS2_架构对比与迁移_完整调研报告](../ROS1_ROS2_架构对比与迁移_完整调研报告.md)
192+
- [机器人规划与控制领域C++库生态全景调研](../机器人规划与控制领域C++库生态全景调研.md)
193+
- [机器人规划与控制经典论文脉络全景](../机器人规划与控制经典论文脉络全景.md)
194+
195+
---
196+
197+
## 4. 项目内文档的常见类型
198+
199+
为了快速判断一份文档在项目里的用途,可以按下面这五类看:
200+
201+
| 类型 | 作用 | 典型文件 |
202+
|------|------|----------|
203+
| 总纲 / 路线图 | 定义整条学习主线或方向结构 | `博士前数学学习路线图总览``SLAM_CPP进阶教学大纲_v8_*` |
204+
| 方向大纲 | 面向某个机器人方向的完整进阶路线 | `无人机方向*``机械臂方向*``力控柔顺控制方向*` |
205+
| 批次专题 / 子专题 | 深入某一理论链或章节组 | 第三批/第五批/第七批等专题文档 |
206+
| 横切专题 | 跨多个方向复用的方法层 | 不确定性规划、博弈规划、时空联合规划 |
207+
| 调研 / 生态 / 论文脉络 | 做选型、建图谱、找代码入口 | ROS 调研、开源项目全景、论文脉络全景 |
208+
209+
---
210+
211+
## 5. 宏观阅读顺序建议
212+
213+
如果只是想看清整个项目,不想一开始就掉进章节细节,建议按这个顺序浏览:
214+
215+
1. **先看数学底座**
216+
入口:[博士前数学学习路线图总览](../博士前数学学习路线图总览.md)
217+
218+
2. **再看 C++ / SLAM 公共主线**
219+
入口:[SLAM_CPP进阶教学大纲_v8_上篇](../SLAM_CPP进阶教学大纲_v8_上篇.md)
220+
221+
3. **然后看规控总线和方向划分**
222+
入口:[规控方向分类与公共基础层设计方案](../规控方向分类与公共基础层设计方案.md)
223+
224+
4. **再挑你关心的方向线**
225+
无人机 / 机械臂 / 腿足复合 / 力控
226+
227+
5. **最后再看横切专题和工程生态层**
228+
用来补“跨方向的方法论”和“工程环境地图”
229+
230+
---
231+
232+
## 6. 项目当前的宏观理解
233+
234+
从全局上看,这个项目可以概括成一句话:
235+
236+
> **先用数学与 C++ / SLAM 打底,再把规划与控制拆成多个机器人方向,最后用横切专题、工程生态和项目调研把它们重新连成一张研究与工程地图。**
237+
238+
如果后续继续扩展,建议优先维持这套导航结构不变:
239+
240+
1. 数学底座
241+
2. C++ / SLAM 主线
242+
3. 规控总线
243+
4. 方向线
244+
5. 横切专题
245+
6. 工程生态与调研
246+
247+
这样新增文档再多,也不会失去全局可读性。

00_项目导航/workflow/README.md

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
# 工作流导航
2+
3+
本目录收录所有标准化工作流,覆盖从调研到写作、从理论到实验的完整链条。
4+
5+
## 工作流一览
6+
7+
| 文件 | 工作流 | 定义 |
8+
|------|--------|------|
9+
| `academic_research_workflow.md` | 学术调研工作流 | 从一个研究方向出发,系统性搜索论文并产出结构化综述(技术谱系 + 里程碑论文清单 + 阅读路线) |
10+
| `theory_research_workflow.md` | 理论调研工作流 | 梳理一个理论领域的知识体系,产出理论大纲(概念拓扑 + 推导链 + 学习路径) |
11+
| `engineering_research_workflow.md` | 工程调研工作流 | 调研一个工程技术领域的知识模块与工具链,产出工程大纲(模块依赖 + 技术选型 + 学习路径) |
12+
| `writing_workflow.md` | 撰写工作流 | 根据综述或大纲,遵守编写规范,撰写高质量教学文档 |
13+
| `research_implementation_workflow.md` | 科研实现工作流 | 基于 2-3 篇论文的代码,实现研究 idea 并产出实验结果 |
14+
15+
## 流程总览
16+
17+
```
18+
学术调研 → 论文综述 ──→ 论文解读教学 ←─┐
19+
理论调研 → 理论大纲 ──→ 理论教学 ←─┤── 撰写工作流
20+
工程调研 → 工程大纲 ──→ 算法工程教学 ←─┤
21+
└→ 工程实践教学 ←─┘
22+
23+
科研实现工作流(独立链条):论文+代码+idea → 实验+论文
24+
```
25+
26+
- 三条调研工作流各自产出中间制品(综述/大纲),再由撰写工作流统一转化为教学文档。
27+
- 科研实现工作流是独立链条,不经过撰写阶段,直接面向实验和论文产出。
28+
29+
**四种教学文档类型**
30+
- **理论教学**:以数学推导和理论分析为核心(如控制理论、优化算法、李群)
31+
- **算法工程教学**:理论与代码并重,源码精读与算法实现(如C++进阶、SLAM、MPC)
32+
- **论文解读教学**:以一组论文及其源代码为输入,逆向恢复完整教学内容(如ViT Token Pruning论文精读)
33+
- **工程实践教学**:以动手操作和工程管线为核心(如IsaacLab/MJLab训练管线)
34+
35+
## 快速决策表
36+
37+
| 我想... | 用这个工作流 |
38+
|---------|------------|
39+
| 进入一个新研究方向,搞清楚有哪些必读论文 | 学术调研 |
40+
| 系统学习一个数学/物理/控制理论体系 | 理论调研 |
41+
| 搞清楚一个工程技术领域要学什么、怎么学 | 工程调研 |
42+
| 根据已有的综述/大纲写教学文档 | 撰写 |
43+
| 基于几篇论文做实验、出结果 | 科研实现 |
44+
45+
## 与编写规范的关系
46+
47+
> 编写规范(`编写规范/` 目录)定义教学文档的质量标准(what),工作流定义如何达到这些标准(how)。两者是互补关系:规范不讲流程,工作流不定义质量标准。
48+
49+
## 版本记录
50+
51+
| 工作流 | 版本 |
52+
|--------|------|
53+
| 学术调研 | v2.0 |
54+
| 理论调研 | v1.0 |
55+
| 工程调研 | v2.0 |
56+
| 撰写 | v3.0 |
57+
| 科研实现 | v2.0 |

0 commit comments

Comments
 (0)