ROS usb_cam试错汇总

ROS ros-kinetic-usb-cam安装报错汇总

今日笔者在安装并使用usb_cam的时候遇到了诸多问题,以下仅对笔者遇到的问题进行讨论

安装

方法一

首先是安装的过程,安装其实和网上大多数说的一样,先试试

sudo apt-get install ros-kinetic-usb-cam
  1. 如果 安装速度过慢,可考虑使用镜像源
  2. 安装的时候如果出现 无法获得锁 /var/lib/dpkg/lock-frontendopen (11: 资源暂时不可用或没有文件) 的问题可参考这篇文章
  3. 如果出现了 无法定位软件包的报错的话,很有可能是因为ROS版本没选对。即实际上ros-xxx-usb-cam中间的xxx是ROS版本参数,具体可能为kinetic/melodic/indigo等等,查看当前ROS版本方法参见这篇文章

安装完之后可按照以下代码运行测试文件

roslaunch usb_cam usb_cam-test.launch

.

方法二

直接github上copy一波

https://github.com/ros-drivers/usb_cam

后者详见这篇文章有教程
.

运行前准备

这一步非常重要,笔者就是在这里吃了大亏

  1. 检查摄像头是否连接到虚拟机(连接方法见后文 无法找到摄像头一栏)
  2. 用Linux自带的cheese试着打开摄像头(打开失败见后文 ‘foucus-auto’–令人迷惑的WARN一栏)

如果这都检查完了,那就愉快地阅读下去吧
.

运行

无法找到摄像头

遇到了几个错误,首先是 [ERROR] [1575905480.653251919]: Cannot identify ‘/dev/video0’: 2, No such file的错误,这往往是电脑的摄像头没有连接到虚拟机导致的。
按图索骥即可
摄像头连接虚拟机
.

select_timeout的debug

v4l2-ctl未安装–难以发觉的WARN

连接上摄像头之后,其仍可能出现 select_timeout的报错,此时就需要往上看几行,可能warning什么的会提示相应的报错信息
各位不妨看看笔者遇到的错误,按照以下思路寻找解决方案
在这里插入图片描述
从图中可以看到,其INFO里面先是说了找不到一个文件,然后WRAN里面出现了 v4l2-ctl:not found的信息,这其实是有个叫做v4l2-ctl的包未安装导致的,因此可按照上文提到的安装方法同样安装此包,而笔者直接用方法一就安装好了。
.

‘foucus-auto’–令人迷惑的WARN

接下来笔者遇到了这个问题
在这里插入图片描述
直接查那个WARN的意义是“无法对焦”,但是显然这不是导致ERROR的原因。经过一段时间的debug之后,其实是 usb3.0设置问题
实际上笔者这时候才想起来用cheese看看能不能打开摄像头,结果发现是黑屏的。因此判断是虚拟机未实际读取到摄像头。
接下来只需要按图索骥即可
在这里插入图片描述
在这里插入图片描述
而进行完这一步之后,笔者终于成功地运行的usb_cam-test.launch!不知道看了之后对各位有无帮助呢?欢迎在下面留言!

  • 7
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值