当前位置: 首页 > news >正文

ros2常用命令

1、ros2安装

wgethttp://fishros.com/install -O fishros&&.fishros

2、小海龟:测试一下

ros2 run turtlesim turtlesim_node ros2 run turtlesim turtle_teleop_key

3、colcon安装

sudoaptinstallpython3-colcon-common-extensions colcon --help pip3 show colcon-core
  • 全称/背景colcon是一个通用的、可扩展的构建工具,支持多种构建系统(如 CMake、Python setuptools、ament 等)。
  • 在 ROS 2 中的作用
    • 编译你写的 ROS 2 包(C++ / Python)
    • 管理依赖关系
    • 生成可执行文件、库、消息类型等

📌 注意:colcon本身不是 ROS 2 的一部分,而是一个独立的 Python 工具,但 ROS 2 官方指定它为标准构建工具。

为什么 ROS 2 使用 Python 编写的colcon来编译 C++/Python 代码?

  • 核心思想:“编排者 ≠ 编译器”

colcon本身不编译任何代码,它只是一个“构建流程的协调者(orchestrator)”

  • 真正的编译工作由底层工具完成:
    • C++ 包→ 用CMake+make/ninja
    • Python 包→ 用setuptools/pip
    • 其他语言(如 Rust、Go)→ 对应的构建工具
  • colcon的任务是:
    • 扫描工作空间中的所有包
    • 分析依赖关系(谁依赖谁)
    • 按正确顺序调用CMakesetup.py等工具
    • 统一管理输出目录(build/,install/
    • 提供一致的命令行体验(colcon build,colcon test

✅ 所以:用 Python 写“调度器”完全合理,因为调度不需要高性能,但需要灵活性和可扩展性。


与 ROS 1 的教训对比

  • ROS 1 用catkin(基于 CMake 的宏),导致:
    • CMake 被“滥用”做包管理,逻辑混乱
    • 难以支持非 CMake 包(如纯 Python 包)
    • 构建系统和包描述 tightly coupled(紧耦合)
  • ROS 2 吸取教训:分离“包描述”、“构建系统”、“构建调度器”
    → 于是诞生了colcon(调度器) +ament(ROS 2 的包格式和 CMake 工具链)


4、ros2 编译流程:Hello World

# 1、创建功能包(工作空间的:src目录下)# pkg01_helloworld_cpp 是(自定义)的(功能包)的名词ros2 pkg create pkg01_helloworld_cpp --build-type ament_cmake --dependencies rclcpp --node-name helloworld# 2、编辑源文件.cpp文件# 3、编辑配置文件package.xml、CMakeLists.txt# 4、编译(工作空间下)colcon build# 5、执行(工作空间下)# helloworld 是node-name 名称.install/setup.bash ros2 run pkg01_helloworld_cpp helloworld
http://www.cnnetsun.cn/news/54449.html

相关文章:

  • ubuntu常用命令
  • wvp-GB28181-pro国标视频平台完整使用教程:从零搭建到实战应用
  • 终极指南:LXMusic音源全面解析与使用技巧
  • GridPlayer:免费开源的多视频网格播放器终极解决方案
  • Terraria地图编辑器终极使用指南:5步轻松打造完美游戏世界
  • iStore插件中心终极指南:5步轻松搞定OpenWRT插件安装与管理
  • OneMore插件:让OneNote效率提升10倍的神器
  • 终极指南:快速上手轻量级文本转语音引擎eSpeak NG
  • 云顶之弈智能挂机助手:解放双手的自动化游戏神器
  • 图像分割标注转换:从入门到精通的全方位指南
  • 3步精通Draw.io Mermaid插件:小白也能快速上手的文本转图表神器
  • 12.14周报
  • 3分钟掌握Easy-Scraper:零基础网页数据抓取神器
  • 飞书文档批量导出终极指南:告别手动烦恼,实现高效迁移
  • SuperCom串口调试工具:终极免费解决方案与5分钟快速部署指南
  • Vulkan显存检测利器:memtest_vulkan快速验证显卡稳定性
  • 揭秘BlenderGIS:5分钟搞定专业级地形生成的秘密武器
  • 终极Mac桌面歌词神器LyricsX完整使用指南
  • TranslucentTB中文版下载安装保姆级教程(附安装包,非常详细)
  • 3分钟轻松退出Windows Insider计划:OfflineInsiderEnroll离线工具完全指南
  • 为什么需要多智能体?
  • openMES制造执行系统:5步快速部署完整指南
  • 万元级旗舰值不值?三星三折叠价格和功能深度拆解
  • 专科生必看!告别熬夜赶论文!paperxie1小时搞定毕业设计初稿,导师直呼“专业”
  • 无损剪辑新纪元:LosslessCut重塑视频处理体验
  • 对等保2.0的理解
  • 深蓝词库转换终极指南:5分钟搞定跨平台词库同步
  • BibTeX国标引用终极指南:自动化排版让学术写作更轻松
  • Lumafly模组管理器实战指南:告别空洞骑士模组烦恼
  • 终极指南:如何用gbt7714-bibtex-style轻松搞定国标参考文献排版