ROS2与ROS共存
Posted
技术标签:
【中文标题】ROS2与ROS共存【英文标题】:ROS2 coexistence with ROS 【发布时间】:2020-04-20 23:17:55 【问题描述】:如果我已经在我的 linux 机器上安装了 ROS,我可以安装 ROS2 并毫无问题地同时使用吗?
我已经安装了 ROS,我正在使用它来学习这个概念,但我最终必须在其中工作的系统是 ROS2。
【问题讨论】:
【参考方案1】:是的,ROS1 和 ROS2 可以共存。
根据您要使用的 ROS 版本,将适当的 setup.bash
获取到。
对于 ROS1:source /opt/ros/melodic/setup.bash
对于 ROS2:source /opt/ros/dashing/setup.bash
【讨论】:
谢谢。我已将该来源放在.bashrc
文件中。如果我想使用一个(ROS)然后另一个(ROS2)我必须编辑这个文件吗? (意思是我不能同时放两个)
最后获取的文件将是活动的。我建议您为它们创建别名并在需要时使用它们。将它们都添加到 .bashrc
不会是多余的。【参考方案2】:
是的,您可以将 ROS1 与 ROS2 一起使用(如果您愿意,可以同时使用来自同一 ROS 版本的不同发行版),唯一的要求是获取正确的 setup.bash 文件:
source /opt/ros/[distribution]/setup.bash
如果您想在同一个应用程序中使用 ROS1 和 ROS2,请查看名为 ROS1_bridge 的 ROS2 包,它允许您将 ROS1 主题连接到 ROS2 主题(反之亦然)。
【讨论】:
【参考方案3】:根据Shrijit Singh 的评论,你需要在你的主目录中创建文件 .bash_aliases 然后写:
alias source-ros='source /opt/ros/noetic/setup.bash'
alias source-ros2='source /opt/ros/foxy/setup.bash'
然后你只需要在你的终端输入 source-ros 或 source-tos2 您无需在 .bashrc 中添加任何内容,因为 .bash_alias 会自动从那里加载。
【讨论】:
以上是关于ROS2与ROS共存的主要内容,如果未能解决你的问题,请参考以下文章