在树莓派上手动添加ROS包(usb_cam)

2023-05-16

在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/devel/lib下的 libusb_cam.so 复制到 /opt/ros/melodic/lib

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

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

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

 

注:若要在树莓派上用,就必须在树莓派上编译;在电脑上编译的话,文件移植到树莓派上运行会报错

 

有的包(find_object_2d)编译报错:'CV_CAP_PROP_FRAME_COUNT' was not declared in this scope 

这类的是因为Opencv的版本问题

例如之前的版本用的是 CV_CAP_PROP_FRAME_COUNT 而更新的版本用的是 cv::CAP_PROP_FRAME_COUNT

跟着报错提示一个个改就完事了 

(发现那个包的错误远远不止这些,于是划掉了(≖_≖ )....)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在树莓派上手动添加ROS包(usb_cam) 的相关文章

  • 树莓派:树莓派的各个引脚

    由于第一次接触树莓派 xff0c xff0c xff0c emmmm xff0c 仔细写 xff0c 奥里给 3 3V 5V xff08 VCC xff09 xff1a 显然是电源正极啦 GND xff1a 接地用 xff0c 负极负极负极
  • 不分类工具:sd卡格式化工具安装教程

    下载地址 xff1a https www sdcard org downloads formatter 4 eula windows 进入上面这个链接 xff0c 你会看到满上面都是字 xff0c 有一个download xff0c 点完还
  • 不分类工具:Win32 DiskImager安装教程

    下载地址 xff1a http sourceforge net projects win32diskimager 这个也是很普普通通的下载安装 1 直接 download 2 双击安装文件 xff0c 弹出如下框 xff0c 选择我同意 x
  • Meta-Learning: Learning to Learn Fast

    Meta Learning Learning to Learn Fast 元学习 学习如何学习 译 原文 本文与原文基本没有区别 xff0c 仅供个人学习记录 电子笔记本 前言 xff1a 元学习解决 xff1a 遇到没有见过的任务 xff
  • 解决 Docker 容器时间与本地时间不一致的问题

    Linux 通过 Date 命令查看系统时间 xff0c 得到如下结果 xff1a root 64 iZ8vbg6m7f5ntzibw3t4huZ date Mon Aug 26 12 24 58 CST 2019 但是在 Docker 容
  • 记录ssh 和vnc命令

    ssh windows是客户端 linux是服务端 在windows powershell 输入 ssh rikirobot 64 192 168 x xxx xff08 ip地址 xff09 VNC Viewer 参考文章 xff1a 1
  • Redux源码解析(部分)

    相信用过React的小伙伴对于Redux一定不陌生 xff0c A Predictable State Container for JS Apps xff0c 这是官方文档对于Redux的定义 xff0c 即一款适用于JS Apps的可预测
  • Axios源码解析(部分)

    从 Github 上把 Axios 项目的 master 分支拷贝到本地 xff0c 用编辑器打开项目目录 首先我们先解析一下整个 Axios 项目的一些关键的文件结构 对照项目的文件目录 xff0c 梳理一下其中的一些关键文件夹以及它的作
  • 解析Javacript的事件循环机制

    前言 作为最受欢迎的Web编程语言 xff0c Javascript的单线程执行是其一大特点 xff0c 也就是说在同一时间只能有一个任务处于执行状态 xff0c 而后续的任务需要等待当前任务处理完毕后才能继续处理 xff0c 而在当前编程
  • 关于项目打包相关的优化问题

    本文主要是针对项目在打包过程中使用的一些Webpack相关的打包手段 1 首先在真正处理我们的打包之前 xff0c 我们可以通过安装插件来具体查看一下我们目前项目中的打包模块以及打包时间 打包后各个模块的可视化工具 webpack bund
  • 英语词汇、短语、语句积累

    rules of thumb 经验法则
  • 关于Webpack plugins插件的两种写法

    类写法以及require方式引入 span class token keyword class span span class token class name HelloWorld span span class token punctu
  • 关于mini-css-extract-plugin在使用过程中出现冲突的问题

    今天在优化打包的过程中 xff0c 运行npm run build后 xff0c 总是会出现冲突的警告信息 xff0c 而且对于我的这个项目而言出现了几十条的冲突提示 如下 问题排查 首先我以为可能是由于我新引入的优化方面的插件导致了原先的
  • 关于使用Antd中的DatePicker出现的日期格式转化问题(Dayjs和Momentjs)

    在测试过程中发现了一个比较有意思的bug问题 xff0c 我们使用的是antd中的DatePicker组件 xff0c 当时间选择框存在已经设定的初始值后 xff0c 点击时间选择框直接报错 xff0c 但是当清除内容或者处于新建没有默认值
  • Javascript基础知识整理—1

    1 JS数据类型 原始数据类型 xff1a boolean xff0c string xff0c null xff0c undefined xff0c symbol xff0c bigint xff0c number 引用类型 xff1a
  • React基础

    1 Context全局值 链接地址 链接地址 目的是为了避免一些外部的传参向下传递时需要通过一层层的组件 span class token comment defaultValue只有在找不到附近的Provider时才会起作用 span s
  • git基础知识

    1 对当前commit的内容进行修正 如果发现commit的内容有问题想要修改 xff0c 正常做法可以重新再commit一次 通过amend可以直接将commit和暂存区的内容进行合并 xff0c 就不需要再重新commit一次了 ame
  • Typescript基础

    1 Pick和Omit 源码地址 相似点 xff1a 都是对接口进行剪裁 keyof 操作符常和接口结构一起使用 xff0c 得到一组对象键值的字面量类型组成的联合类型 xff0c 如 a b c 我们也常用 keyof any 表示成员未
  • Javascript基础知识整理—2

    1 节流和防抖的实现 https blog csdn net weixin 45709829 article details 123910592 防抖 Debounce 在设定的n秒内只会执行最新的函数 防抖实现 立即执行和非立即执行 sp
  • node文件系统 常用文件处理方法

    打开文件 获取文件描述符 java件描述符 xff1a 被打开的文件分配的一个简单的数字作为标识符 span class token keyword const span fs span class token operator 61 sp

随机推荐