ROS学习笔记——ROS核心功能与如何阅读大型项目源码
(一) ROS核心代码
1. ROS所要解决的问题
1) 装备多种传感器的复杂机器人的出现导致单个程序完成任务已经不可能。
2) 多研究所合作,避免重复造轮子。
2. 解决问题的思路
1) 希望可以实现多个程序分别完成特定任务,并且能够在进程中相互通信,并且可以定义常用格式以方便使用。
2)提供构建环境,让使用者可以较容易地使用他人的工作。
3.ROS的核心功能
基于上诉思路,ROS诞生了
1) 进程通信机制(topic, service, parameter-sever)
2) 常用消息定义,基本满足了常见传感器、执行器的需要。
3) 机器人描述、位姿管理系统。
4) SLAM、路径规划等模块、框架。
5)可视化、消息检测等辅助工具。
6)包管理。
(二)如何阅读大型项目代码
1. 明确目的
深度开发?
学习架构?
学习算法?
2. 敢于掠过非关键代码,现寻找和突破关键部分,不要过早陷入细节
3. 四门功课
- 编程语言
- 构建工具(Cmake)
- 常用设计模式<