0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ROS的扩展有哪些方法

麦辣鸡腿堡 来源:CSDN博客 作者:lwlv 2023-11-21 18:12 次阅读

ROS的扩展

ROS除了本身框架性的东西以外,最大的特色就是能融合很多其他的东西,形成一个机器人开发生态圈,难怪ROS名为机器人操作系统,使命是powering the world‘s robots也是毫不夸张的。

ROS的扩展即ROS universe,是全球范围的代码,有不同国家的ROS社区组织开发和维护。

有的是库代码,如OpenCV、PCL等;库的上一层是从功能角度提供的代码,如人脸识别,导航等,调用下层的库;最上层的代码是应用级的代码,让机器人完成某一确定的功能。

ROS真的是包罗万象,各种库、功能性框架都能融入进来,使其越来越强大。

使用第三方库一般有两种方法:

一种是通过cmake方法添加,有些库比如Qt、OpenCV、PCL等,可能直接下载ROS的时候就已经嵌套进去了,直接通过ROS的环境变量就能依赖到这些库。

但我更倾向于ROS框架保持不变,其他库再另外下载安装。

因为通过ROS下载的第三方库一般不完整或者版本不对导致开发受限等,最好直接安装第三方库然后通过cmake找第三方库在本机所安装的位置(find_package),这样库和库之间相对关系就很明确,ROS的基本框架也没被填充太多,也能保持得比较干净,更不会被找不到环境变量所困扰。

ROS和第三方库相互依赖的问题,估计困扰过不少人,我经常被花大量的时间在库依赖问题上。

另一种是让第三方库增加一些接口来适配ROS框架,也就是做成ROS包。

有些厂商比如激光雷达或者一些CAN总线协议,直接就提供了ROS接口,可以很方便的使用。可以说,基本上大部分成熟的算法机械臂正逆解、SLAM导航、点云、图像处理等),传感器接口(sick、kinect等),通信协议(EarthCAT、CANOpen、USB等)都可以在ROS wiki和GitHub上找到。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 机器人
    +关注

    关注

    206

    文章

    27043

    浏览量

    201425
  • 操作系统
    +关注

    关注

    37

    文章

    6288

    浏览量

    121896
  • ROS
    ROS
    +关注

    关注

    1

    文章

    271

    浏览量

    16684
收藏 人收藏

    评论

    相关推荐

    系统镜像Ubuntu_ROS2中ROS2是什么意思,带有ROS2开发环境吗?

    请问一下,百度文库资料里面,下图所示的系统镜像Ubuntu_ROS2中ROS2是什么意思,带有ROS2开发环境吗?与前面4GB版本的镜像什么区别?
    发表于 03-01 23:06

    ROS是否适用于工业?

    ROS 2并不是ROS的一个新版本,而是ROS的一个新方法。它带来了新的可能性,跟ROS 1一样
    发表于 10-17 13:24

    在Android中使用ROS

    由于ROS提供了Android的对应的开发库,我们可以方便的在Android中开发相应的ROS客户端程序。下面介绍一下在Android中使用ROS库的方法。1. 开发环境配置Andro
    发表于 05-16 19:16

    ROS navigation功能包添加自定义的全局路径规划器(Global Path Planner)

    base_global_planner参数指定实际路径规划执行时采用的全局路径规划器,这种设计大大提高了navigation包的可扩展性。ROS官网wiki详细的教程指导大家如何为ROS
    发表于 05-16 19:17

    在STM32上运行ROS节点——rosserial&stm32开发及调试方法 精选资料推荐

    rosserial+stm32开发及调试方法基本原理Ref: http://wiki.ros.org/rosserial简言之,rosserial提供一种嵌入式节点和运行在主控PC上
    发表于 08-24 06:19

    Autolabor ROS驱动模块的节点何功能

    Autolabor ROS驱动模块包含哪些?Autolabor ROS驱动模块的节点何功能?
    发表于 09-23 08:08

    什么是ROS?如何学习ROS

    什么是ROS?如何学习ROS
    发表于 11-11 07:21

    请问一下stm32与ros进行串口通信的方法是什么?

    请问一下stm32与ros进行串口通信的方法是什么?
    发表于 12-16 06:40

    什么是ROSROS产生、发展和壮大的原因和意义

    机器人操作系统(ROS)入门(嵌入式系统应用开发)一、ROS 基本问题1. 什么是 ROS2. ROS 产生、发展和壮大的原因和意义二、安装 ROS
    发表于 12-17 06:08

    配置STM32-ROS通信常见的问题哪些?

    配置STM32-ROS通信常见的问题哪些?
    发表于 12-23 07:32

    STM32与ArduinoMega2560驱动ROS小车何不同

    STM32电机驱动ROS小车的通信原理及使用方法分别是什么?ArduinoMega2560电机驱动ROS小车的通信原理及使用方法分别是什么?
    发表于 02-10 07:28

    ROS元操作系统何作用

    ROS是什么?ROS元操作系统何作用?
    发表于 02-11 07:40

    请问一下ROS参数的编程方法是什么

    ROS参数该怎样去使用呢?ROS参数的编程方法是什么?
    发表于 02-14 07:37

    搭建ARM+ROS的硬件载体之ROS的移植及测试方法

      1. 准备工作  经过前面的环境搭建,HDG2L-IoT评估套件已经能稳定地运行Ubuntu+docker环境,当前需要下载运行ROS镜像即可。  本文参考ROS官方文档《Getting
    发表于 03-09 13:55

    实现ARM+ROS(机器人操作系统)之运行ROS

    如何低成本搭建ARM+ROS的硬件载体?上文展示ROS部署前的筹备工作及步骤分解,本文将为大家演示ROS的移植及测试方法
    的头像 发表于 10-10 18:15 860次阅读
    实现ARM+<b class='flag-5'>ROS</b>(机器人操作系统)之运行<b class='flag-5'>ROS</b>!