ROS2 Demo
前言 来自ROS2理论与实践 | ROS2讲义。事实上,作者也学习过ROS1,但由于工作需求、未来发展等原因,遂从头学起ROS2,理论方面ROS1和ROS2区别不大,但ROS2面向对象编程,而ROS1面向过程,ROS1选手可参考biglonglong/ROS1demo: Some demos for ROS1 basic operation。 流程 文件系统 WorkSpace --- 自定义的工作空间。 |--- build:存储中间文件的目录,该目录下会为每一个功能包创建一个单独子目录。 |--- install:安装目录,该目录下会为每一个功能包创建一个单独子目录。 |--- log:日志目录,用于存储日志文件。 |--- src:用于存储功能包源码的目录。 |-- C++功能包 |-- package.xml:包信息,比如:包名、版本、作者、依赖项。 |-- CMakeLists.txt:配置编译规则,比如源文件、依赖项、目标文件。 |-- src:C++源文件目录。 |-- include:头文件目录。 |-- msg:消息接口文件目录。 |-- srv:服务接口文件目录。 |-- action:动作接口文件目录。 |-- Python功能包 |-- package.xml:包信息,比如:包名、版本、作者、依赖项。 |-- setup.py:与C++功能包的CMakeLists.txt类似。 |-- setup.cfg:功能包基本配置文件。 |-- resource:资源目录。 |-- test:存储测试相关文件。 |-- 功能包同名目录:Python源文件目录。 -------------------------------------------- |-- C++或Python功能包 |-- launch:存储launch文件。 |-- rviz:存储rviz2配置相关文件。 |-- urdf:存储机器人建模文件。 |-- params:存储参数文件。 |-- world:存储仿真环境相关文件。 |-- map:存储导航所需地图文件。 |-- ...... 创建工作空间 ...