🤖 ROS2 实时控制 · 行为树
30章 实战
中小学友好
⚡ 实时系统
📚 目录导航 · 点击卡片进入章节
01
ROS2与实时控制概述
ROS2实时性设计哲学 · 实时内核配置 · 实时线程与优先级管理
02
ROS2节点与生命周期
Node类详解 · LifecycleNode设计模式 · 状态机转换与回调
03
实时通信机制
零拷贝传输 · 共享内存(SHM)配置 · QoS策略对实时性的影响
04
ROS2 Executor深入
SingleThreadedExecutor · MultiThreadedExecutor · 静态单线程执行器
05
实时定时器与时钟
Timer API · 系统时钟与稳态时钟 · 高精度定时回调
06
实时内存管理
避免动态内存分配 · 内存池技术 · 锁无关数据结构
07
ROS2控制框架 (ros2_control)
Controller Manager架构 · 硬件接口层 · 资源管理器
08
编写自定义硬件接口
硬件组件基类 · 读写寄存器 · 模拟与真实硬件适配
09
实时控制器编写
Controller基类 · update()回调 · 命令与状态接口
10
关节轨迹控制器
JointTrajectoryController原理 · 插补模式 · 实时轨迹跟踪
11
力/力矩控制
EffortController · 阻抗控制基础 · 力位混合控制
12
多控制器切换与生命周期
控制器加载/卸载 · 切换策略 · 无扰切换实现
13
行为树(BehaviorTree.CPP)入门
节点类型 (Action/Condition/Decorator/Control) · 树结构
14
行为树与ROS2集成
BT节点封装为ROS2动作 · 话题订阅/发布节点
15
行为树导航与规划
Navigate动作 · 回退与重试 · 动态避障行为树
16
行为树中的实时约束
非阻塞执行 · 超时处理 · 优先级调度
17
行为树调试与可视化
Groot2使用 · 日志记录 · 状态监控
18
实时系统性能分析
perf工具 · ftrace · ROS2话题延迟测量
19
实时系统调优
CPU隔离(isolcpus) · 中断亲和性 · SCHED_FIFO策略
20
ROS2与实时Linux内核
PREEMPT_RT补丁 · 内核配置 · 验证实时性
21
分布式实时系统
DDS实时配置 · 网络绑定 · 零丢包策略
22
实时传感器融合
IMU与里程计融合 · 扩展卡尔曼滤波实时实现
23
实时运动学与动力学
正逆运动学实时计算 · 雅可比矩阵 · 动力学前馈
24
实时安全与故障处理
看门狗定时器 · 紧急停止行为树 · 状态恢复
25
多机器人实时协调
共享资源管理 · 同步控制 · 冲突解决
26
实时日志与诊断
ROS2诊断聚合 · 实时日志级别 · 环形缓冲区日志
27
硬件在环(HIL)测试
仿真环境搭建 · 实时接口模拟 · 测试自动化
28
实战:六轴机械臂实时控制
完整项目架构 · 控制器实现 · 行为树任务编排
29
实战:移动机器人实时导航
底盘控制 · 行为树避障 · 多传感器融合
30
综合项目:自主移动操作臂 (MoMa)
抓取与放置 · 实时协调 · 行为树决策
⚡ 点击任意卡片跳转对应章节 · 实时控制 · 行为树设计