激光雷达和3d视觉传感器驱动很多都是基于ros1开发的,由于自己项目在ros2环境开发,需要获取从驱动出来的点云数据流,所以尝试订阅ros1出来的点云topic话题,固需要ros1与ros2之间建立通讯连接。
项目环境:
Legion-Y7000P-IRX9 + Ubuntu 20.04 + ROS1(noetic)+ ROS2(foxy)
ros1与ros2 的环境配置参考 ubuntu20.04 ros1和ros2共存及切换
通信操作:
1)安装 ros1_bridge
bash
source /opt/ros/foxy/setup.bash
sudo apt install ros-foxy-ros1-bridge
2)分别运行 ROS1 与 ROS2 的节点
3)开一个新终端,在该终端下source ros1与 ros2 的环境变量,然后运行ros1_bridge 便可以看到上述两个节点可实现话题通信
bash
source /opt/ros/noetic/setup.bash
source /opt/ros/foxy/setup.bash
ros2 run ros1_bridge dynamic_bridge