ros1_bridge 测试笔记

一、遇到问题

在进行ros1_bridge 测试时,打开一个终端执行以下指令试图启动ros1_bridge:

source /opt/ros/melodic/setup.bash

source ~/ros2_ws/install/local_setup.bash

export ROS_MASTER_URI=http://localhost:11311

ros2 run ros1_bridge dynamic_bridge

结果不成功,报错:

ros2 run ros1_bridge dynamic_bridge

No executable found

参考:https://github.com/ros2/ros1_bridge/issues/82 、https://blog.csdn.net/xmy306538517/article/details/78770646,我删除了编译产生的 install 与 build 目录所有文件,执行以下指令重新编译ROS 2系统解决问题:

src/ament/ament_tools/scripts/ament.py build --build-tests --symlink-install --skip-packages ros1_bridge

. /opt/ros/melodic/setup.bash
. ~/ros2_ws/install/local_setup.bash 

src/ament/ament_tools/scripts/ament.py build --build-tests --symlink-install --only ros1_bridge --force-cmake-configure

二、ros1_bridge 测试( talker and listener)

分别打开四个终端输入以下指令进行测试。

shellA:

. /opt/ros/melodic/setup.bash
roscore

shellB:


source /opt/ros/melodic/setup.bash
source ~/ros2_ws/install/local_setup.bash
export ROS_MASTER_URI=http://localhost:11311
ros2 run ros1_bridge dynamic_bridge

shellC:

. /opt/ros/melodic/setup.bash

rosrun rospy_tutorials talker

 

shellD:

. ~/ros2_ws/install/local_setup.bash 

ros2 run demo_nodes_cpp listener

结果如下:

三、ros1_bridge 测试( 交换图像)

分别打开四个终端输入以下指令进行测试。

shellA:

. /opt/ros/melodic/setup.bash
roscore

shellB:


source /opt/ros/melodic/setup.bash
source ~/ros2_ws/install/local_setup.bash
export ROS_MASTER_URI=http://localhost:11311
ros2 run ros1_bridge dynamic_bridge

shellC:

. /opt/ros/melodic/setup.bash

rqt_image_view /image

 

shellD:

. ~/ros2_ws/install/local_setup.bash 

ros2 run image_tools cam2image

执行成功,桥的终端输出如下:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/wsc820508/article/details/81408251