Skip to content

OpenDogeRobotics/BEEF-ROS2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BEEF-ROS —— ROS2实战教程与示例项目

项目简介

BEEF-ROS 是一个面向 ROS2 学习者和开发者的实战型教程与代码示例仓库,涵盖 ROS2 从环境安装、核心概念、接口开发、TF2、Launch、DDS、测试调试、rosbag2 等全流程内容。每一章节均配有详细代码、脚本和说明文档,适合初学者入门、进阶者查阅和项目实战。



快速开始

1. 环境要求

  • Ubuntu 20.04/22.04(推荐桌面版)
  • ROS2(建议Humble/Foxy等主流发行版)
  • Python 3.8+
  • C++17 支持
  • 推荐安装 colcongnome-terminalrviz2turtlesim 等依赖

2. 一键安装ROS2

cd src/chapter01_intro_install
chmod +x install_ros2.sh
./install_ros2.sh

3. 编译全部示例包

cd ~/Desktop/BEEF-ROS
colcon build
source install/setup.bash

4. 运行章节示例

以“小海龟Turtlesim”一键演示为例:

cd src/chapter02_core_concepts_turtlesim
chmod +x turtlesim_demo.sh
./turtlesim_demo.sh

更多章节的运行方法请参考各自目录下的README或章节文档。


各章节/模块功能简介

1. 环境安装与配置(chapter01_intro_install)

  • 提供一键安装ROS2脚本,适合新手快速搭建开发环境。

2. ROS2核心概念与Turtlesim(chapter02_core_concepts_turtlesim)

  • 一键启动小海龟仿真、键盘控制与命令终端,体验话题、服务、参数等核心概念。

3. 第一个ROS2示例(chapter03_first_demo)

  • C++/Python双版本,包含服务/客户端、计数器、自定义消息发布/订阅等基础节点。

4. 接口开发实战(chapter04_interfaces)

  • 演示自定义消息(msg)、服务(srv)、动作(action)接口的完整流程。
  • 提供C++/Python节点实现。

5. Launch文件与项目管理(chapter05_launch)

  • 展示复杂事件处理、条件启动、参数化配置等Launch文件高级用法。
  • 详见event_handling_demo包,支持C++/Python双版本。

6. TF2与多坐标系实战(chapter06_tf2)

  • 包含静态/动态/固定帧广播器、监听器、RViz可视化等完整TF2演示。
  • 支持turtlesim仿真与3D坐标系树展示。

7. URDF与机器人模型(chapter07_urdf_models)

  • 机器人模型描述与仿真(详见配套文档)。

8. DDS与ROS2(chapter08_dds)

  • 演示DDS通信机制、QoS配置、性能测试等。
  • 提供C++/Python示例。

9. 测试与调试(chapter09_testing_debugging)

  • C++/Python单元测试(GTest/pytest)、日志输出、调试节点与一键Launch。

10. rviz教程(chapter10_rviz_tutorial)

  • rviz可视化工具使用与配置(详见配套文档)。

11. 仿真与机器人模拟(chapter11_simulation_models)

  • 机器人仿真环境搭建与实战(详见配套文档)。

12. rosbag2高级编程(chapter12_rosbag2)

  • C++/Python API演示数据包录制、读取、回放等高级用法。

主要示例与脚本说明

  • install_ros2.sh:一键安装ROS2脚本
  • turtlesim_demo.sh:一键启动小海龟仿真环境
  • 各章节均配有README.mdlaunch/src/test/等子目录,便于查阅和运行
  • 复杂功能包(如TF2、event_handling_demo)均有详细注释和参数说明

贡献与反馈

欢迎提交PR、Issue或建议!

  • 如发现代码/文档问题,请在GitHub仓库提交Issue
  • 贡献新示例或修复bug请提交Pull Request
  • 也欢迎在讨论区交流ROS2学习心得

参考资料


致谢

感谢所有为本项目做出贡献的开发者与学习者!


如需详细学习每一章节内容,请查阅各章节目录下的README和配套.md文档。

About

也许是第二好的中文ROS2教程!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors