手动添加ROS包(usb_cam)

在ROS下,下载包源码编译后,手动添加包

系统:ubuntu1804(树莓派)

 

在树莓派上安装了ubuntu,但树莓派是arm架构,所以用的下载源也不同于在电脑上;

对于ubuntu来说,在普通电脑上用的源一般为 http://mirrors.xxx.xxx/ubuntu/ bionic ....,而在arm架构的树莓派上要改成 http://mirrors.xxx.xxx/ubuntu-ports/ bionic ....

用opencv-ROS做相机标定时运行roslaunch robot_vision usb_cam.launch出现了一个报错 cannot launch node of type [usb_cam],需要安装一个包 sudo apt-get install ros-melodic-usb-cam

在电脑上测试的时候很顺利,很快就下载好了

但换到树莓派上,无论我换成什么源,都会报错 E:无法定位软件包

网上查了查,看到一篇遇到类似问题的文章,可能就是这个arm专用的源里没有这个包

于是决定 把这个包的源代码下载下来自己编译,然后手动安装进去

在github上下到压缩包后,包名改为usb_cam.zip(原来是usb_cam-develop.zip)

在本地创建工作空间,并初始化

~$ mkdir -p cameratest_ws/src

~$ cd cameratest_ws/src 

~/cameratest_ws/src$ catkin_init_workspace

把下载到的压缩包解压到src下,再跳到工作空间主目录下编译

~/cameratest_ws/src$ cd ..

~/cameratest_ws$ catkin_make

接下来就是正式移植了

需要用到的有:

cameratest_ws/devel/share下的usb_cam 复制到 /opt/ros/melodic/share

cameratest_ws/devel/lib下的usb_cam 复制到 /opt/ros/melodic/lib

cameratest_ws/src/usb_cam/include下的usb_cam 复制到  /opt/ros/melodic/include

然后就差不多了,在运行roslaunch robot_vision usb_cam.launch时就不会报错了

你可能感兴趣的:(ROS)