简介汽车上的机器人操作系统(ROS)

关注公众号,点击公众号主页右上角“ ··· ”,设置星标,实时关注智能汽车电子与软件最新资讯
来源:焉知智能汽车
作者:一骥绝尘


ROS与智能驾驶


ROS全称Robot Operating System,直接翻译就是机器人操作系统。虽然名字里含有“操作系统”的字眼,但ROS与Windows和Linux等操作系统不一样,它实际上是一套软件库和工具,可以帮助用户快速建立机器人应用程序。在软件层面上,ROS是一种中间件。什么是中间件?中间是相对的,有“上”和有“下”的时候就有“中间”。这感觉就像是“中产阶级”,没有严格界限。所以在有上层软件和底层软件的语境下,这中间的软件就是“中间件”。ROS就是介于底层操作系统(如Linux)和上层业务应用软件(如OpenCV)之间的中间件。

图1:ROS是机器人领域著名的框架

那么ROS能出现在焉知智能汽车的公众号里,它跟智能汽车又有什么关系呢?
实际上智能汽车就是一种机器人。举个例子,您有没有觉得家里的扫地机器人和智能驾驶汽车非常像?近年来,智能驾驶无疑是汽车工业的当红炸子鸡,而汽车的智能驾驶化实质上也是汽车的机器人化。我们常说的“感知”、“决策”和“规控”等,其实也是来自于机器人领域。智能网联汽车的功能域控制器划分,电子电气架构的演变都能或多或少看到机器人的影子。甚至有些公司就是借用机器人传统术语来作为传统车企智能化改革的口号和产品蓝图。

机器人是多专业知识交叉的学科,通常涉及传感器、驱动程序、多机通信、机械结构、算法等,为了更高效地进行机器人的研究和开发,选择一个通用的开发框架非常必要。而ROS就是最流行的框架之一。当机器人和智能驾驶汽车一相逢,ROS顺理成章的成了很多团队开发智能驾驶的选择,很多智能驾驶的算法应用都是基于ROS来开发的。中国智能驾驶界大名鼎鼎的“Apollo”就是基于ROS二次开发改进的。而从另一个角度来看,近年来ROS也成为了智能网联工程师岗位招聘要求的高频词。熟练掌握ROS的汽车工程师毫无疑问是人才市场上的“香饽饽”。


02 ROS历史简介


首先提一下,ROS有ROS1和ROS2两个大分支。没有特别说明时,一般ROS都指ROS1。简单来说ROS由来已久,进化过程中发现已有架构必须革新才能满足更多需求,于是就开辟了ROS2,并把之前的版本统称ROS1。

展开来看,ROS系统最早起源于2007年斯坦福大学人工智能实验室的STAIR项目与机器人技术公司Willow Garage的个人机器人项目(Personal Robotics Program)之间的合作,2008年之后由Willow Garage公司推动其发展。几番测试后于2010年推出了正式发行版本:ROS Box Turtle。比较有趣的是,ROS各版本均以龟作为发行代号,至今已设计出十多种造型奇特的“ROS龟”。而每一次ROS发布新版都会按照字母顺序改一个名字。例如ROS Box Turtle后是ROS C Turtle,再是Diamondback……2020年5月发布的ROS Noetic Ninjemys则到了字母“N”,也是ROS1的最后一个版本。

图2:4个ROS版本及其ROS龟海报

从2008年至2013年,ROS主要由Willow Garage公司管理维护,但这并不意味着ROS是封闭的系统。相反,ROS由众多学校及科研机构联合开发及维护的,这种联合开发模式也为ROS系统生态的构建与壮大带来有力的促进。2013年,Willow Garage公司被Suitable Technologies公司收购,此前几个月,ROS的开发和维护管理工作被移交给了新成立的开源基金会Open Source Robotics Foundation。而随着ROS的优化和丰富,对ROS的要求也越来越多,一些原始架构和设计已经不能够满足,于是催生了ROS2。经历几个测试版后,2017年ROS2正式发布了Ardent Apalone版本,之后每版升级同样是迭代一个字母和ROS龟海报。最新一版ROS2是今年5月份刚发布的Humble Hawksbill。


03 为什么智能汽车选择ROS


上文提到,智能驾驶汽车就是一种机器人。但是当智能汽车选择开发框架的时候,为什么会这么多人选择ROS呢?肯定不是因为它的名字里有“Robot”这么简单。而结合上文提到的ROS1和ROS2时间线,这个关于智能驾驶的选择肯定在ROS1上开始的。究其原因,有这3个重要因素:

1.已有的开源代码丰富。

许多智能驾驶需要用到的算法,都能在ROS生态中找到已经成熟的代码。例如建立地图的算法,使用激光雷达或GPS定位算法,沿着地图规划路径算法,避开障碍物的算法,摄像头视觉处理算法等等......这些轮式机器人导航所需的算法在ROS上是现成的,几乎都可以直接适用于智能驾驶汽车。

2.具备配套的可视化工具。

ROS自带一套图形工具,可以方便地记录和可视化传感器捕获的数据,并以全面的方式表示车辆的状态。此外,它还提供了一种简单的方法来实现定制化的可视化需求。这在开发控制软件和调试代码时非常有用。如果您曾经在电脑前看过智能驾驶汽车传感器的原始数据,做过调试,相信您会深刻理解一个靠谱的数据可视化工具是有多么重要。

图3:利用ROS RVIZ三维可视化点云数据

3.简单好上手。

在开展一个新领域的时候,没有什么比把东西先做出来更重要了。基于ROS来开发一个智能驾驶汽车项目是比较简单的。例如从一个简单的轮式机器人开始,配备一对轮子、一个摄像头、一个激光扫描仪和ROS导航软件栈,开发者可以在几个小时内就可以完成设置,让小车自主行进避障。这种快速上手也可以帮助新手快速理解整个运作基础和框架,然后再转向更专业更深入的研究。某宝上就有很多基于ROS的智能小车,很多机构也是基于这些套件开展智能驾驶培训的。


04 ROS1在汽车应用上的弱点


当然,ROS并不是完美的,尤其是ROS1应用在智能汽车上存在不少局限性。早年间ROS1应用于智能驾驶研发时,正是由于这些局限性,各大公司都需要在ROS上进行二次开发,以满足智能汽车要求。那ROS1究竟有哪些弱点呢?

1.单点失效。

如下图所示,ROS1的通讯机制是存在主从结构的。也就是节点之间的通讯都依赖于一个Master。在这种集中式通讯方式下,如果Master失效了,那么系统就会崩溃。这在汽车行业功能安全的要求下,无疑是太脆弱了。

图4:ROS1通讯机制示意图

2.实时性差。

ROS1就是基于Linux操作系统之上的。Linux原生不是实时操作系统,ROS1自然也没有实时性的设计考虑。ROS1设计之初更多地从实现最高性能的角度出发,在任务调度和线程切换等机制设计上并没有保证实时性所要求的“确定时间”。例如汽车动力底盘域常见的轮速信号就很容易在原生ROS1中失真。

3.缺乏网络安全机制。

ROS1并没有实现任何安全机制来防止第三方进入ROS1网络并读取节点之间的通信。这意味着任何能够进入汽车网络的人都可以进入ROS1的信息传递并劫持汽车。这在汽车网络安全法规日益严格的背景下,也无疑是力不从心的。


05 ROS1与ROS2


早年间,各大公司都针对ROS1弱点做了很多优化,以让其适用于汽车。而这些研究和改进当然也反馈到ROS组织本身,所以也就有了上文提到的ROS2。那么ROS1和ROS2有什么差别呢?ROS2对这些弱点有改进吗?话不多说,我们先来看看两者的系统架构框图对比。

图5:ROS1和ROS2的系统架构框图对比

由下往上看,在操作系统层,ROS2比ROS1支持的底层操作系统更多,也支持实时操作系统(RTOS)了。这就让ROS2可以支持更多样化的嵌入式硬件,例如汽车应用中一些轻量化的ECU。

在中间层,ROS1更多地依赖TCP和UDP协议,而在ROS2中则引入了DDS。DDS全称是Data Distribution Service 数据分发服务,是一种分布式实时通信中间件协议,也是一个被很多公司实现的工业标准。DDS采用发布/订阅体系架构,强调以数据为中心,提供丰富的服务质量(QoS)策略,以保障数据进行实时、高效、灵活地分发。

正是基于DDS的通讯机制,ROS的应用层就不再需要Master节点。节点之间采用自发现机制,找到彼此,进而建立稳定的通信连接。这对于满足功能安全需求,有很大帮助。当然,ROS1和ROS2的应用层软件接口是匹配的,让ROS1上开发的应用软件能快速复用部署到ROS2上,也是ROS2的设计目标。

由此可见,上文提到的ROS1在汽车应用上的弱点,在ROS2上都得到了针对性甚至是根本性的改善。


06 ROS与AUTOSAR Adaptive


在汽车领域谈软件,自然是离不开AUTOSAR的。这些年汽车硬件和软件的发展本身也是日新月异。AUTOSAR也是在这背景下不断优化和自我革新,AUTOSAR Adaptive就是针对多核动态操作系统的高资源环境在奋起直追,希望站稳汽车软件架构老大的地位。ROS2和AUTOSAR Adaptive都是中间件,那它们在不断升级进化的过程中,有没有朝着某个共同的方向,进而出现交汇点?答案是有的。最明显的就是DDS的通讯机制。

图6:DDS在AUTOSAR Adaptive通讯中的位置

如上图所示,AUTOSAR Adaptive中的通讯管理模块就加入了DDS的部分,并对DDS相应的功能安全和网络安全都作了定义和描述。通过ara::com可以统一CAN PDU、SOME/IP和DDS的通讯。而DDS就是ROS2中最核心的部分。所以聚焦于这个汇合点,可以结合ROS2和AUTOSAR,取两者之所长。

事实上这个关键点已经被很多公司企业抓住,并开发出了不少商用的产品。例如下图就是Apex.AI公司的产品示意图。Apex.AI将Apex.OS节点(匹配ROS节点)与AUTOSAR Adaptive和AUTOSAR Classic平台连接起来。AUTOSAR arxml(包含数据类型和接口的描述)可以直接作为配置输入。这使得设置可以灵活应对服务定义的变化。ROS Topic的数据最终可以在AUTOSAR ara::com或RTE中使用。

图7:Apex.AI公司统一ROS和AUTOSAR的产品示意图(来源:Apex.AI)


07 写在最后


智能汽车的发展是个复杂而又漫长的过程,期间需要不断的技术迭代和功能创新。对于个体开发人员来说,站在巨人的肩膀上来迎接这过程中的挑战十分重要。ROS(尤其ROS2)就是其中一个巨人肩膀。希望本文能为之前没接触ROS的同仁提供一个初步印象,有所帮助。有兴趣进一步深入了解的朋友可以参考网络上海量的学习资源。

关注公众号,点击公众号主页右上角“ ··· ”,设置星标,实时关注智能汽车电子与软件最新资讯


智能汽车电子与软件 专注于汽车电子领域的信息交融平台,涵盖汽车电子行业资讯、市场动态、技术干货、知识见解、行业趋势等资讯深度覆盖。
评论
  • 一、前言 回首2024,对于我而言,是充满挑战与收获的一年。在这一年里,我积极参与了论坛的众多活动,不仅拓宽了我的认知边界(有些东西不是你做不到,而是你想不到),还让我在实践中收获了宝贵的经验和。同时,多种多样的论坛活动让我们全方面的接受新东西,连接新知识,多种类型的的活动交织了你我的2024。在这里说一说对过去一年的活动经历,进行一次年终总结,并谈谈我的收获和感受,以及对2025年的展望。二、活动足迹(一)快速体验:机智云Gokit2.0开发板初体验 机智云Gokit2.0开发板的体验活动让大
    无言的朝圣 2024-12-27 14:50 65浏览
  • 在科技飞速发展的今天,医疗电子作为一个融合了医学与电子技术的交叉领域,正以前所未有的速度改变着我们的医疗模式和健康生活。它宛如一颗璀璨的明珠,在医疗领域绽放出耀眼的光芒,为人类的健康福祉带来了诸多惊喜与变革。医疗电子的神奇应用医疗电子的应用范围极为广泛,深入到医疗的各个环节。在诊断方面,各种先进的医学成像设备堪称医生的 “火眼金睛”。X 光、CT、MRI 等成像技术,能够清晰地呈现人体内部的结构和病变情况,帮助医生准确地发现疾病。以 CT 为例,它通过对人体进行断层扫描,能够提供比传统 X 光更
    Jeffreyzhang123 2024-12-27 15:46 87浏览
  • 一、引言无人机,作为近年来迅速崛起的新兴技术产物,正以前所未有的速度改变着众多行业的运作模式,从民用领域的航拍、物流,到工业领域的测绘、巡检,再到军事领域的侦察、打击等,无人机的身影无处不在。为了深入了解无人机的现状,本次调研综合了市场数据、行业报告、用户反馈等多方面信息,全面剖析无人机的发展态势。二、市场规模与增长趋势随着技术的不断进步和成本的逐渐降低,无人机市场呈现出爆发式增长。近年来,全球无人机市场规模持续扩大,预计在未来几年内仍将保持较高的增长率。从应用领域来看,消费级无人机市场依然占据
    Jeffreyzhang123 2024-12-27 17:29 108浏览
  • 起源与基础20 世纪 60 年代:可编程逻辑设备(PLD)的概念出现,一种被称为 “重构能力” 的芯片的可编程性吸引了许多工程师和学者。20 世纪 70 年代:最早的可编程逻辑器件 PLD 诞生,其输出结构是可编程的逻辑宏单元,它的硬件结构设计可由软件完成,设计比纯硬件的数字电路更灵活,但结构简单,只能实现小规模电路。诞生与发展20 世纪 80 年代中期:为弥补 PLD 只能设计小规模电路的缺陷,复杂可编程逻辑器件 CPLD 被推出,它具有更复杂的结构,能够实现较大规模的电路设计。1988 年:
    Jeffreyzhang123 2024-12-27 10:41 72浏览
  • 在科技飞速发展的今天,汽车不再仅仅是一种交通工具,更是一个融合了先进技术的移动智能空间。汽车电子作为汽车产业与电子技术深度融合的产物,正以前所未有的速度推动着汽车行业的变革,为我们带来更加智能、安全、舒适的出行体验。汽车电子的发展历程汽车电子的发展可以追溯到上世纪中叶。早期,汽车电子主要应用于发动机点火系统和简单的电子仪表,功能相对单一。随着半导体技术的不断进步,集成电路被广泛应用于汽车领域,使得汽车电子系统的性能得到了显著提升。从电子燃油喷射系统到防抱死制动系统(ABS),从安全气囊到车载导航
    Jeffreyzhang123 2024-12-27 11:53 99浏览
  • 图森未来的“夺权之争”拉扯了这么久,是该画上句号了。大约9年前,侯晓迪、陈默、郝佳男等人共同创立了图森未来,初衷是以L4级别的无人驾驶卡车技术为全球物流运输行业赋能。此后,先后获得了5轮融资,累计融资额超过6.5亿美元,并于2021年成功在美国纳斯达克上市,成为全球自动驾驶第一股。好景不长,2023年市场屡屡传出图森未来裁员、退市的消息。今年1月份,图森未来正式宣布退市,成为了全球首个主动退市的自动驾驶公司。上市匆匆退市也匆匆,其背后深层原因在于高层的频繁变动以及企业的转型调整。最近,图森未来的
    刘旷 2024-12-27 10:23 64浏览
  • 发明阶段(20世纪80年代至90年代)起源:当时ASIC设计成本高,周期长,流片失败率高,业界需要一种通用的半导体器件进行流片前测试和验证,可编程逻辑器件就此产生。诞生:1980年,Xilinx公司成立。1985年,Ross Freeman制造了第一片PFGA芯片XC2064,采用4输入,1输出的LUT和FF结合的基本逻辑单元。发展阶段(1992年至1999年)容量提升:FPGA容量不断上涨,芯片面积逐渐增大,为架构穿心提供空间,复杂功能可以实现。布线问题凸显:缩着芯片复杂度增加,片上资源的互连
    Jeffreyzhang123 2024-12-27 10:26 88浏览
  • 采购与分销是企业运营中至关重要的环节,直接影响到企业的成本控制、客户满意度和市场竞争力。以下从多个方面介绍如何优化采购与分销:采购环节优化供应商管理供应商评估与选择:建立一套全面、科学的供应商评估体系,除了考虑价格因素,还要综合评估供应商的产品质量、交货期、信誉、研发能力、售后服务等。通过多维度评估,选择那些能够提供优质产品和服务,且与企业战略目标相契合的供应商。建立长期合作关系:与优质供应商建立长期稳定的合作关系,这种合作模式可以带来诸多好处。双方可以在信任的基础上进行深度沟通与协作,共同开展
    Jeffreyzhang123 2024-12-27 17:43 85浏览
  • 在当今科技飞速发展的时代,工业电子作为现代制造业的中流砥柱,正以前所未有的速度推动着各个行业的变革与进步。从汽车制造到航空航天,从智能家居到工业自动化,工业电子的身影无处不在,为我们的生活和生产带来了巨大的改变。工业电子的崛起与发展工业电子的发展历程可谓是一部波澜壮阔的科技进化史。追溯到上世纪中叶,电子技术开始逐渐应用于工业领域,最初主要是简单的电子控制装置,用于提高生产过程的自动化程度。随着半导体技术、计算机技术和通信技术的不断突破,工业电子迎来了爆发式的增长。集成电路的发明使得电子设备的体积
    Jeffreyzhang123 2024-12-27 15:40 92浏览
  • 在当今这个数字化的时代,电子设备无处不在,从我们手中的智能手机、随身携带的笔记本电脑,到复杂的工业控制系统、先进的医疗设备,它们的正常运行都离不开一个关键的 “幕后英雄”—— 印刷电路板(Printed Circuit Board,简称 PCB)。PCB 作为电子设备中不可或缺的重要部件,默默地承载着电子元件之间的连接与信号传输,是整个电子世界的基石。揭开 PCB 的神秘面纱PCB,简单来说,就是一块由绝缘材料制成的板子,上面通过印刷、蚀刻等工艺形成了导电线路和焊盘,用于固定和连接各种电子元件。
    Jeffreyzhang123 2024-12-27 17:21 74浏览
  • 在当今竞争激烈的商业世界中,供应链管理已成为企业生存与发展的核心竞争力之一。它就像一条无形的纽带,将供应商、制造商、分销商、零售商直至最终消费者紧密相连,确保产品和服务能够高效、顺畅地流转。今天,就让我们一同深入探索供应链管理的奥秘。供应链管理是什么简单来说,供应链管理是对从原材料采购、生产制造、产品配送直至销售给最终用户这一整个过程中,涉及的物流、信息流和资金流进行计划、协调、控制和优化的管理活动。它不仅仅是对各个环节的简单串联,更是一种通过整合资源、优化流程,实现整体效益最大化的管理理念和方
    Jeffreyzhang123 2024-12-27 17:27 86浏览
  • 在当今这个科技飞速发展的时代,物联网(IoT)已经不再是一个陌生的概念,它正以一种前所未有的速度改变着我们的生活和工作方式,像一股无形的力量,将世界紧密地连接在一起,引领我们步入一个全新的智能时代。物联网是什么简单来说,物联网就是通过感知设备、网络传输、数据处理等技术手段,实现物与物、人与物之间的互联互通和智能化管理。想象一下,你的家里所有的电器都能 “听懂” 你的指令,根据你的习惯自动调节;工厂里的设备能够实时监测自身状态,提前预警故障;城市的交通系统可以根据实时路况自动优化信号灯,减少拥堵…
    Jeffreyzhang123 2024-12-27 17:18 68浏览
  • 引言工程师作为推动科技进步和社会发展的核心力量,在各个领域发挥着关键作用。为深入了解工程师的职场现状,本次调研涵盖了不同行业、不同经验水平的工程师群体,通过问卷调查、访谈等方式,收集了大量一手数据,旨在全面呈现工程师的职场生态。1. 工程师群体基本信息行业分布:调研结果显示,工程师群体广泛分布于多个行业,其中制造业占比最高,达到 90%,其次是信息技术、电子通信、能源等行业。不同行业的工程师在工作内容、技术要求和职业发展路径上存在一定差异。年龄与经验:工程师群体以中青年为主,30 - 45 岁年
    Jeffreyzhang123 2024-12-27 17:39 87浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦