Team CIMAR’s NaviGATOR: An Unmanned Ground Vehicle for the 2005 DARPA Grand Challenge
发布日期:2021-09-30 05:17:01 浏览次数:2 分类:技术文章

本文共 19530 字,大约阅读时间需要 65 分钟。

本文描述了参与2005年DARPA挑战赛中的自动驾驶汽车系统的发展。在对事件进行简要描述之后,基于3.2版本的无人系统国防部联合体系结构体系结构以及系统的设计进行了详细介绍。特别是引入了“智能传感器”概念,该概念为每个传感器提供了标准化的手段,以便为快速集成和仲裁提供数据。 然后详细介绍有关车辆设计,系统定位,感知传感器和所使用的动态规划算法的信息。 随后,介绍了测试结果和性能结果。

1.介绍

DARPA挑战赛被认可为全球规模最大,最前沿的机器人比赛,提供高度积极的科学团体美国各地的科学家和工程师都有机会创新发展最先进的自动驾驶技术,具有重要军事和商业应用。 美国国会已经要求军方在2015年前将近三分之一的运行地面车辆无人驾驶,而DARPA大挑战是加快这项努力的一项努力之一。该活动的目的是促进正常军事采购渠道以外的工程师和科学家团体参与机器人技术,包括大学研究,军事发展和行业研究的领导者。

CIMAR团队是佛罗里达大学智能机器和机器人中心,佛罗里达州High Springs的Eigenpoint公司以及犹他州Young Ward的自主解决方案的合作项目。CIMAR团队的目标是开发具有广泛市场应用的尖端自动驾驶车辆系统和解决方案,例如智能交通系统和用于保护的自动系统。CIMAR团队通过参与2004年和2005年DARPA大挑战,致力于在国际层面上证明自己的解决方案。

2003年,CIMAR团队是全国100多名申请人中参加首届活动的25支队伍之一。CIMAR团队也是成功获得并参加2004年3月首届活动的15支队伍之一,第八个完成比赛的团队。CIMAR团队于2003年12月底被DARPA大挑战赛接纳,并在不到三个月后跻身了前十名的车辆。该团队从最初的活动中学到了很多,并利用这些经验开发了一个非常先进的新系统,有资格参加2005年的第二次大挑战赛。

2.系统架构和设计

实施的系统架构基于3.2版本的联合无人系统参考架构实现的。JAUS定义了一系列可重复使用的构件和接口。系统架构是尽可能使用现有的JAUS指定组件以及符合JAUS的组件间消息传递基础结构制定的。在JAUS中没有指定组件的任务需要使用“用户定义”消息创建所谓的“实验”组件。这种方法得到JAUS工作组的认可,是扩展和发展JAUS规范的最佳方式。

2.1 高层次架构

在最高层次上的架构由四个基础要素组成,图二中描述如下:

在这里插入图片描述
规划方面:充当先验数据的存储库的组件,包括已知的道路,路径或障碍物,以及可接受的车辆工作空间边界。 此外,这些组件基于该数据执行离线规划。
控制方面:每个组件形成闭环控制以保持车辆在指定路径上。
感知方面:组件执行定位所需的传感任务障碍和评估地形。
智能方面:那些部分根据感知信息以确定“最佳”路径段。

2.2 智能传感器概念

智能传感器概念统一了感知数据在生成和/或消费它的组件之间的格式和分布。 首先,设计了一个名为Traversability Grid的通用数据结构,供所有智能传感器,智能仲裁器和反应驱动器使用。**图3显示了人类在上层看到的世界,而下层显示了基于传感器信息融合的网格表示。**该网格已被充分指定,以使开发人员能够独立工作,并使智能仲裁者使用相同的方法处理输入网格,无论在任何时刻有多少。

智能传感器架构的基础是每个传感器独立于系统处理其数据,并为系统内的其他组件提供逻辑冗余接口。这样允许开发者独立创造并且处理数据适应系统。传感器能够被通过很小的努力整合进入系统来创建强大的感知系统。这种方法的主要好处是它的灵活性,实际上是解耦了各个组件研究人员的开发和集成工作。其主要缺点是,在将原始输入数据转换为可穿越性结果时,它阻止了一个传感器组件利用另一个传感器的结果。

Traversability Grid概念基于一个众所周知的占用网格概念,这通常归功于卡内基梅隆大学的Alberto Elfes。他的工作将Occupancy Grid定义为“空间信息的概率性表示”。Sebastian Thrun提供了一篇关于这种范式在过去20年中如何成熟的优秀论文。近年来,将占用网格扩展为可穿越网格,试图扩大这一基本概念的适用性和实用性。为NaviGATOR设计的可穿越性网格实施的主要贡献在于其重点在于表示可穿越性程度,包括地形条件和障碍物,同时保持20 Hz的实时性能。

Traversability Grid被设计为121行121列,每个网格单元代表0.5米乘0.5米的区域。中心区域在(60,60)的位置,呈现车辆报告的位置。传感器结果面向全局参考框架,以便真正的北方永远在网格中垂直对齐。以这种方式,生产了一个60米乘60米的网格,该网格能够接收距离车辆至少30米的数据并将数据存储。为了正确处理车辆的位置和方向,每个智能传感器组件都负责建立来自GPOS组件的实时纬度/经度和航向馈送。

每个格子的评分基于将传感器对该格子的可穿越性的评估映射到2到12的范围,2表示绝对不可以穿越,12表示绝对可以很容易的穿过,7表示传感器没有证据表面该区域能穿还是不能穿,某些其他的值保留用作:0表示超出边界,1值未改变,13表示失败或者错误,14位置,15车辆位置。这些离散的值被赋予颜色来帮助人可视化Traversability Grid,从红色到灰色到绿色。

所有这些特性对于每个智能传感器都是相同的,使得无缝集成成为可能,没有预定数量的传感器。网格被送到负责的智能仲裁员用于融合数据。然后,仲裁器将具有所有相同特性的网格发送给反应驱动,后者使用它来动态计算所需的车辆速度和转向。

用于将网格单元数据从传感器编组到仲裁器以及从仲裁器到反应驱动器的消息传递概念是在下游组件请求它时发送整个可遍历网格(主要20HZ)。为了使给定传感器的输出与其他传感器的输出正确对齐,该消息还必须提供中心单元的纬度和经度.考虑了一种替代的数据编组方法,其中只有那些自上一条消息以来已经改变的单元被打包到消息中。因此,对于每次扫描或迭代,发送组件将确定网格中的哪些单元具有新值并将该单元的行,列和值打包到当前消息中。这种技术大大减少了网络名义案件的流量和消息处理负载。然而,在实验室和现场进行了大量实验之后,由于担心无法接收和应用更改的单元格消息会破坏网格并可能导致不适当的决策,而不是使用此技术,而在发送每条消息中的整个网格永远不会成为问题。

为了帮助理解,调整和验证正在生成的可穿越网格,开发了智能传感器可视化器组件。主要用于测试,智能传感器可视化组件可以指向任何智能传感器,智能仲裁器或反应式驱动器,它将显示颜色编码的可穿越性网格,以及相关的车辆位置,航向和速度。 图像的刷新率可以实时调整。

2.3 行动的概念

最艰巨的任务是整合这些组件,以便完成整体任务。图4示意性地描绘了关键部件如何协同工作以控制车辆。图4操作原理图还显示了Traversability如何网格概念使各种智能传感器能够为智能仲裁器提供网格,智能仲裁器将它们融合并为反应式驱动器提供单个网格。在开始给定任务之前,先验规划器构建初始路径,其作为一系列全球定位系统航点存储在路径文件中。任务开始后,Reactive Driver通过Primitive Driver顺序引导车辆到路径文件中的每个航点。与此同时,各种智能传感器开始寻找障碍物和光滑的表面,并将他们的发现提供给智能仲裁器。智能仲裁器执行其数据融合任务并将结果发送给Reactive Driver。Reactive Driver根据智能仲裁器的输入查找干扰或机会,并相应地将其命令更改为Primitive Driver。最后,目标是在亚秒循环时间内迭代地执行此序列,具体取决于组件,默认操作速率为20 Hz。

在这里插入图片描述

3.车辆设计

NaviGATOR的基础平台是根据CIMAR团队规格定制的全地形车辆。框架由低碳钢滚动条制成,采用开放式设计。他有9英寸,Currie车轴,Bilstein减震器,液压转向系统以及前后盘式制动器,后部带有紧急制动器,它有一个150马力的横向本田发动机/变速驱动桥纵向安装,带有锁定的驱动桥,驱动前后底特律储物柜差速器。选择这款车是因为它的多功能性,机动性,开放性和易开发性。

电力系统由两个独立的140 A 28 V交流发电机系统,每个交流发电机驱动2400 W连续,4800 W峰值逆变器,并由四个深单元电池备用。每个交流发电机为两个自动转换开关供电。一个ATS的输出驱动计算机和电子设备,而另一个驱动执行器和3/4吨空调。如果交流发电机或电池系统发生故障,整个负载会自动切换到另一个交流发电机或电池系统。 总系统功率要求约为2200 W,因此电力系统完全是冗余的。

系统传感器安装在专为其配置和放置在车辆前部而设计的机架上。这些传感器包括一个可在场景中找到最平滑路径的摄像头。该相机配有自动光圈,安装在防水防尘保护外壳内,通过一个由lexan制成的表面,并覆盖一层偏光防刮膜。 两个SICK LADAR也安装在传感器笼上,扫描车辆前方的地面以进行地形坡度估算;一个用于负面障碍物检测,另一个用于平滑地形检测。 另外,平行于地平面的附加SICK LADAR安装在车辆前部的保险杠水平面上,用于平面障碍物检测。 为实验目的,在车辆上安装了额外的传感器,每个传感器的具体细节讲在论文的后面进行阐述。

在这里插入图片描述
计算系统要求包括高级计算需求,系统命令实现以及具有健康和故障监视的系统感测。 通过利用针对个人计算需求的八个单处理器计算节点,在部署的系统中满足高级计算需求。 划分个别过程的决定是由系统的发展性质决定的。 实现通信协议以允许进程间通信。

基于商业现成硬件的主观评估来选择单独的计算节点硬件架构。 评估标准以性能和功耗为中心。 部署的系统维护相对于主板,随机存取存储器的同质硬件解决方案,机箱和系统存储。 AMD K8 64位微处理器系列是根据功耗测量和性能选择的,可根据性能要求进行定制,以降低功耗要求。 目前,部署了三种处理器速度:2.0 GHz,2.2 GHz和2.4 GHz。这些处理器托管在现成的主板上,并使用固态闪存卡进行启动和长期存储。 每个处理节点配备512到1028 MB的RAM。 JAUS通信通过位于主板上的内置以太网控制器实现。 几个节点托管用于数据i / o的PCI卡。 每个节点都安装在标准的1-U机箱中。 部署的操作系统基于2.6 Linux内核。 由于计算节点的同质和模块化特性,系统维护和可靠性预计是足够的。 备份计算节点随时可用于其他要求和替换。 所有计算系统和电子设备都安装在安装在车辆后部的NEMA 4外壳中。

在这里插入图片描述

4.路径规划

DARPA挑战提出了一个有趣的规划问题,因为这条路线长达175英里,可以在加利福尼亚州巴斯托和内华达州拉斯维加斯之间的任何地方运行。 在活动当天,DARPA提供了一个路线数据定义文件,其中包含航点坐标,走廊段宽度和速度数据。 为了处理通过DARPA的航路点文件生成先验环境数据并生成路线,Team CIMAR使用了Mobius,这是一个易于使用的图形用户界面,由Autonomous Solutions Inc.开发,用于控制和监控无人驾驶车辆。 在国家资格赛和fina大挑战赛中,Mobius被用来计划NaviGATOR的初始路径。

路线预先计划分三步完成:

生成道路数据,导入和优化DARPA路径,以及修改路径速度。 世界模型组件通过解析DARPA的RDDF并使用走廊剪切所有其他环境信息来生成道路数据,以便在规划过程中仅使用道路内的高程数据。 然后将RDDF轮廓导入Mobius并显示给操作员进行验证。
在这里插入图片描述

**在下一步中,Mobius导入原始RDDF文件以用于路径生成。**根据每个航路点的DARPA指定速度,为每个路径段分配最大速度。从这里,使用NaviGATOR的运动学约束和期望来优化路径与初始路径的最大偏差。 结果路径是一条平滑的可驱动路径,从起始节点到结束节点,位于专为NaviGATOR生成的RDDF走廊内。 然后,Mobius用于在必要时进行次要路径修改,以创建更理想的路径。

在这里插入图片描述
**预先计划过程的最后一步是根据先验环境数据和NaviGATOR本身的速度约束来修改路径速度。**选择路径的部分并重新分配速度。 Mobius将新期望速度的最小值和RDDF指定的速度分配给各部分,以确保永远不会超过RDDF指定的速度。在DARPA事件期间,NaviGATOR的最大控制速度为每小时25英里;因此,在第一次通过中,整个路径设置为保守的18英里/小时,除了RDDF速度限制较低的路径段。从那里开始,从开始到结束检查路径,并且基于路径的曲率变化,开放环境,高度变化以及路径中的已知危险来增加或减少速度。在完成所有速度变化之后,可以计算完成整个路径所需的时间。对于比赛,据估计NaviGATOR需要大约8小时45分钟才能完成比赛。最后,路径保存为以acomma分隔的路径文件,并传输到NaviGATOR以进行自主导航。

5.定位

**NaviGATOR通过滤波和融合传感器数据的组合来确定其地理位置。所有导航数据的处理由Smiths Aerospace North-finding模块完成,该模块是惯性导航系统。该模块保持卡尔曼滤波器估计车辆的全球位置和方向,以及线性和角速度。它融合了内部加速度计和陀螺仪数据,以及来自外部NMEA GPS和外部里程表的数据。**提供给NFM的GPS信号来自两个板载传感器之一。这些传感器包括NavCom Technologies Starfire 2050和Garmin WAAS Enabled GPS 16。车载计算机同时解析来自两个GPS单元的数据并将最佳确定的信号路由到NFM。这样做是为了在只有一个传感器跟踪GPS卫星时有效地向NFM保存信息。在有效跟踪期间,NavCom数据的精度优于Garmin,因此系统偏向于在可能的情况下始终使用NavCom。

如果两个单元失去对卫星的跟踪,如在车辆处于隧道中时发生的GPS中断期间所见,则NFM将基于惯性和测距数据保持定位估计。 这允许车辆继续航行一段时间; 然而,只要GPS中断继续,解决方案将逐渐漂移并且位置系统的准确性将稳定地降低。 在几百米的距离之后,系统中的错误将累积到车辆无法继续充满信心的程度。 此时,车辆将停止并等待GPS重新获取。 一旦GPS单元开始跟踪卫星并提供有效的解决方案,系统就会纠正任何偏离航线的漂移并继续自主操作。

Smith的NFM经过编程,可以稳健地检测并响应各种传感器错误或故障。 生成无效数据的两个GPS系统的已知故障都会被模块自动拒绝,并且不会影响系统的性能,只要故障不会持续很长一段时间。 如果它们确实存在,则NFM将向控制计算机指示问题是什么,并且系统可以相应地对其进行校正。 对于任何里程表编码器错误或惯性传感器错误也是如此。 NFM将自动响应故障并将相关信息传递给控制计算机,因此系统可以决定纠正问题的最佳方案。

6.感知

本文的这一部分讨论了NaviGATOR如何收集,处理和组合传感器数据。每种传感器组件都按照类型组织:激光雷达,相机或“伪”(一个组件,它生成一个输出,就好像它是一个传感器,但是基于来自文件或数据库的数据),最后,讨论了Smart Arbiter传感器融合组件。

6.1 基于激光雷达的智能传感器

有三种智能传感器依靠激光雷达数据来产生结果:地形智能传感器(TSS),负面障碍智能传感器(NOSS)和路径雷达智能传感器(PLSS)。 所有这三个组件都使用Sick 公司的LMS291-S05进行量程测量。 将详细描述TSS,然后仅根据它们与TSS的不同之处来讨论其余两个。

激光测距仪根据飞行时间原理运行。 传感器以180°或100°的单线扫描发射人眼安全的红外激光束,检测每个分辨率点的返回值,然后计算单线距离图像。 虽然可以实现三种范围分辨率(1,0.5,0.25),但只能通过100°范围扫描实现分辨率。 激光测量的精度为+/- 50 mm,范围为1至20 m,最大范围为80 m。 高速串行接口卡用于实现所需的500 kB高速波特率

6.1.1 地形智能传感器

传感器面向前方安装,朝向地面成6°角。为了实现TSS,使用具有0.25°分辨率的100°范围。通过这种配置和标称条件(平坦的地面,车辆水平),激光扫描距离车辆前方约20米,宽度为32米。 TSS将激光器在极坐标中报告的范围数据转换为传感器本地的笛卡尔坐标,Z轴垂直向下,X轴在车辆行进方向。基于系统的已知几何形状和传感器报告的距离距离来计算每个数据点(Z分量)的高度。然后将数据转换为可穿越网格所需的全局坐标系,其中原点是后轴下方地面车辆的中心线(即GPS天线在地面上的投影),基于瞬时车辆的侧倾,俯仰和偏航。

可遍历网格中的每个单元格都会单独进行评估,并根据其可遍历性值进行分类。 用于分类的标准是:

1.单元格内数据点的平均高程(高度)。
2.通过每个单元格中的数据点的最佳拟合平面的斜率。
3.单元格内数据点高程的方差。

公式部分

6.1.2 负障碍智能传感器

NOSS专门用于检测负面障碍(尽管它也可以提供有关积极障碍和表面平滑度的信息,如TSS)。传感器的配置与TSS类似,但与地面成12°角。通过这种配置和标称条件,激光在车辆前方10 m处扫描地面。为了检测负面障碍,该组件分析其接收的范围值大于水平地面预期值的情况。在这种情况下,通过假设完全水平的假想平面来找到人们期望接收命中的单元。如图10所示,通过求解假想的水平面和由激光束形成的线的交点来找到该单元。基于范围距离的值和其他可配置参数,将可遍历值分配给该单元。因此,对于任何相关范围数据大于假定水平面预期数据的细胞,报告了一个负面障碍。接收范围值数据的剩余单元在类似于TSS的基础上评估。

在这里插入图片描述

6.1.3 Planar LADAR智能传感器

**传感器安装在离地面0.6米的地方,在与地面水平的平面上扫描。 因此,PLSS仅识别出积极的障碍,**并且对于没有报告正面障碍的区域的平滑性或可穿越性没有任何意见。 对于PLSS,使用具有0.5°分辨率的180°范围。 来自激光器的范围数据被转换成全局坐标系,并且识别接收每个命中的单元。 因此,该单元中的“命中数”增加1,然后,对于命中单元和传感器之间的所有单元,“错过的命中数”增加1,Bresenham的线算法用于有效地确定介入细胞的指数。

基于总数,将2到7之间的可遍历值分配给每个单元该单元格累积的命中数和未命中数。 映射算法首先计算得分,该得分是单元中命中总数和折扣未命中数之间的差值(事件使用1/6的折扣权重)。 然后使用指数等级2将该分数映射到可遍历值。例如,得分为2或更低是映射到可通过性值“7”,得分4和以下的数字被映射到“6”,依此类推,得分大于32被映射到“2”。错过命中的折扣提供了识别障碍的保守性,但允许从虚假中逐渐恢复积极的(例如,地面效应)和移动障碍。

6.1.4 现场测试

影响组件输出的算法参数放在配置文件中,以便快速测试和调整这些参数。 TSS和NOSS组件的这些可调参数的示例是用于映射到特定可遍历值的斜率,方差和平均高度的阈值。 对于PLSS,这些参数包括给定单元中命中数与未命中数的相对重要性,以及控制任何一次扫描对最终输出的影响程度的加权因子。

通过使这些参数易于调整,可以根据经验调整和验证这些组件,适用于各种环境,例如陡坡,悬崖,崎岖道路,小灌木丛和大型障碍物,如汽车。 这种方法还有助于将每个组件配置为在所有不同环境中以最佳方式工作。 最后,它有助于确定构建对障碍物的信任所需的组件的数据/时间量,或者当先前检测到的障碍物现在从视野中消失时(例如,移动的障碍物)

6.2 基于摄像头的智能传感器

探路者智能传感器(PFSS)由安装在传感器笼中的单色摄像头组成,瞄准车辆前方的地形。 其目的是评估摄像机场景中与车辆当前行驶类似的地形区域,然后将该场景信息转换为可穿越性信息。 PFSS组件使用高速帧抓取器以30赫兹存储相机图像。

请注意,用于分析处理的主要功能是红色,绿色和蓝色(RGB)颜色空间。 这是计算机和数码相机领域的标准表示,因此通常是颜色表示的自然选择。 此外,RGB是电荷耦合器件相机的标准输出。 由于道路通常具有与不可驱动地形不同的颜色,因此颜色是用于分割的高度相关的特征。 以下段落描述了应用于每个图像的场景评估过程,用于渲染发送到智能仲裁器的可穿越网格。

6.2.1 预处理图像

为了减少处理大图像的计算开销,**场景的尺寸从720×480像素的原始数字输入修改为320×240缩小图像。然后,进一步预处理图像以消除最可能对应于天空的场景部分。**图像的分割简单地基于场景内的物理位置,该场景基于场测试来调谐,由瞬时车辆间距调整。这种非常简单的方法是可行的,因为无意中消除地面的后果是最小的,因为地平线附近的地面区域可能超出系统的30米规划距离。该过程中该步骤的动机是图像的天空部分以两种方式阻碍了分类过程。首先,我们认为天空部分通过花费资源来评估地面车辆永远无法驾驶的像素,从而降低了图像处理速度。其次,可能存在天空图像的某些部分可能被错误分类为道路的情况。

6.2.2 制作训练和背景数据集

**接下来,使用 100x80 的子图像来定义可行驶区域,并使用两个35x50子图像来定义背景。**可行驶的子图像放置在图像的底部中心,而背景子图像放置在图像的中间右侧和中间左侧,这通常是基于经验的背景区域(Lee,Crane,Kim&Kim,2004)(见图11)。 当车辆转弯时,在转弯方向上的背景区域将被重新分类为可行驶区域。 在这种情况下,通过分类算法将该背景区域信息视为道路区域。

在这里插入图片描述

6.2.3 应用分类算法

选择使用贝叶斯决策理论方法,因为这是与诸如此类的应用相关联的模式分类问题的基本统计方法。 它假设决策问题以概率术语提出,并且所有相关概率值都是已知的。 贝叶斯决策理论的基本思想非常简单。 然而,这是高斯分布假设下的最优决策理论(Morris,Descombes&Zurubia,1997)。

公式部分

6.2.4 转变为全局坐标系

在处理图像之后,通过透视变换估计将被分类为可行驶道路的区域转换为用于可穿越格栅的全局坐标(Criminisi,Reid&Zisser-man,1997)。 基于摄像机校准参数和瞬时车辆航向计算透视变换矩阵。 最后,PFSS将值12(高度可穿越性)分配给对应于已被分类为可驱动区域的那些单元格。 所有其他单元格的值为7(中性)。 图13描绘了转换为全局坐标后的PFSS可移动性网格数据。

在这里插入图片描述

6.3 伪智能传感器

有两个智能传感器根据存储的数据生成Travers-ability网格:边界智能传感器(BSS)和路径智能传感器(PSS)。

BSS翻译边界知识,在任务开始之前定义为边界多边形,进入实时可穿越性网格,确保车辆不会超出给定范围。

BSS负责从本地空间数据库获取边界信息.BSS使用这些数据来确定车辆瞬时位置的可穿越网格的边界和越界部分.
BSS还具有可配置性“羽化”功能,允许边界边缘软化,沿边缘创建缓冲区域。此功能可为GPOS组件报告的位置数据中的不确定性提供弹性。图14显示了BSS的典型电网输出,表明车辆在网格内的位置以及车辆周围的可行驶区域。通过明确地将网格区域划分为越界区域,BSS允许智能仲裁器概括地解除越界网格单元和反应驱动程序的计算以修剪其潜在计划的搜索树。
在这里插入图片描述
PSS将在任务开始之前存储为“路径文件”的先验路径计划转换为实时可穿越性网格。 PSS使用这些路径数据基于车辆的瞬时位置将原始计划的路径叠加到可穿越网格上。 PSS具有可配置的“羽化”功能,允许调整路径的宽度并使路径的边缘柔化。此功能还允许工程师通过设置中心线的网格值来选择原始计划路径的加权强度。 12将导致仲裁者和计划者倾向于遵循原始计划,即使是传感器正在检测更好的路径,而10是运行时使用的传感器,它会使原始计划更像是一个可以更容易被传感器发现覆盖的建议。图15显示了PSS的典型网格输出,指示了车辆在网格内的位置以及流经入口走廊的先验规划路径。
在这里插入图片描述

6.4 传感器融合

利用可遍历网格概念来标准化各种传感器的输出,数据融合任务变为将匹配单元仲裁为网格中每个入站单元位置的单个输出发现。

6.4.1 网格对齐

首先,智能仲裁器必须接收和解包来自给定传感器的最新消息,然后将其中心点调整为匹配Arbiter的那个(假设车辆在传感器消息建立的瞬间和时间之间移动正在建立仲裁输出消息的时刻)。 必须对已发送消息的每个传感器重复此步骤。 此过程的伪代码是:

1.确定当前车辆位置
2.调整Smart Arbiter Grid的中心来匹配当前位置,
3.对于每一个智能传感器,为了支持可穿越网格与当前车辆位置的对齐,引入了所谓的“环面缓冲”对象。 这允许系统使用指针算法来“滚动网格”(即,改变其中心点的行和列值)而不复制数据。

6.4.2 数据仲裁

现在,智能仲裁器必须同时遍历输入网格,逐个单元,并将来自每个相应单元的数据融合为该行/列位置的单输出值。 一旦所有单元都处理完Smart Arbiter打包了它输出网格消息并将其发送到Reactive Driver。

对于早期测试,输入的简单平均值单元格值用作输出单元格值。 后来的工作调查了其他算法,包括启发式算法,以执行数据融合任务。 Smart Arbiter组件旨在使您可以轻松地尝试不同的融合算法,以支持正在进行的研究。 用于DGC事件的算法需要两个阶段启发式方法。 阶段1是针对正在考虑的细胞位置的严重障碍的“拍卖”。 然后,第2阶段取决于拍卖的结果。 如果没有传感器“赢得”拍卖,则对该位置处的所有输入单元进行平均,包括仲裁器先前对该单元的输出值。 该算法的伪代码是:

对于每个单元位置:
因此,传感器必须报告几次迭代的严重障碍,以便仲裁器降低其输出值,从而提供阻尼效果以帮助避免由于传感器的输出值引起的颠簸。 输入值的平均值以及仲裁器的先前输出值也提供了阻尼效果。
使用此处描述的算法,智能仲裁器能够实现其指定的20 Hz处理循环速度。 用于所有被探索的算法的前提是保持算法非常简单和就地,因为数据融合任务需求每秒可以达到200万次操作只是为了处理算法(7个网格/周期x14,641个单元/网格 x 20次/秒)。 因此,没有探索复杂的基于概率和基于信念的方法。 然而,在拍卖中增加了高度可穿越的单元,即11和12兲并对输出网格进行后处理以提供接近平滑和/或障碍扩张,但是这些替代方案都没有提供任何更好的性能(在速度或准确性方面) )比用于事件的那个。

7.实时规划和车辆控制

在线规划和控制的目的是通过其感知环境自主驾NaviGATOR,沿着一条路径,最大限度地成功遍历。 此功能被划分为Reactive Driver NaviGATOR的(RD)组成部分。该输入到该组件的数据包括检测到累积可穿越网格,由Smart Arbiter组件组装,车辆状态信息,如位置和速度,最后是先验路径计划,它表达了所需的路径车辆遵循无传感器输入。 有了这些信息,在线实时规划和控制组件,寻求生成低级执行器命令,这将引导车辆沿着最佳可用路径,同时避免任何感觉不好的区域穿越。

7.1 记录水平控制器

RD组件的目的是生成一组优化的致动器命令(在JAUS中称为“扳手”),其驱动车辆通过可穿越网格并使车辆达到期望的目标状态。 NaviGATOR完成这个实时计划和同时控制,应用创新的基于启发式的后退水平控制器。

一种模型预测控制(MPC),一种先进的控制技术,用于解决复杂和受约束的优化问题。

在这种情况下,问题是通过局部可穿越空间优化轨迹,同时遵守NaviGATOR的非完整动力学约束。 深入解释和分析技术在Mayne,Rawlings,Rao&Scokaert(2000)和应用中提供Scokaert,Mayne&Rawlings(1999)给出了次优MPC对非线性系统的影响。 选择该方法是因为它将较高级别的计划问题与车辆的较低级别转向控制统一起来。不需要单独的组件
计划所需路径的几何形状,然后将车辆调节到该路径上。

*控制器试图通过采用A 搜索算法(Hart,Nilsson和Raphael,1968年)来优化轨迹的成本。 搜索的目标是找到一组开环致动器命令,其最小化通过可穿越空间的轨迹的成本,并且还使车辆在期望的目标状态的给定接近度内。 目标状态估计为交叉点具有可穿越网格边界的先验路径。 当车辆接近路径的尽头时,不再有了与网格边界的交叉,期望的目标状态仅是最后一个先验路径段的终点。

特别考虑制定搜索费用单位(c)。 可行性网格值(t)的指数变换乘以行进距离(d)被认为是最佳的。 这里给出了成本方程,其中指数基数由(b)表示:

因此,遍历网格单元的成本与其相应的可遍历值非线性地缩放。 直观的比较最好描述这种转变的效果以及它运作良好的原因:用a线性变换,通过可穿越值2的路径的成本仅是通过值1的相同路径的两倍。 (注意,这些值仅用于示例的目的,并且实际上并未在NaviGATOR系统中遇到。)因此,搜索可能选择一条路径,在1的值中驱动两倍的距离,而不是通过值2驱动的更短的路径。然而,指数变换确保存在始终是相邻整数遍历值之间的固定比率。 因此,该比率可以用作调整参数,以允许算法在长度和累积之间实现期望的折衷

选定路径的可穿越成本。当然,用于调整的比率等于成本等式中给出的指数的基数。

具有后退视界的闭环控制通过重复优化来实现控制器算法作为新的可穿越性数据被感知和车辆状态信息被更新。 从而,干扰,例如可穿越性或车辆状态的意外变化,被拒绝在20Hz或更高频率下连续再现一组接近最佳的开环指令。

搜索计算不同的轨迹生成输入命令并通过车辆运动学模型对其进行外推。 然后产生轨迹的成本通过将变换的可穿越性值沿着通过网格产生的几何路径进行积分来计算。该继续搜索,直到找到产生接近最佳轨迹的开环命令解决方案集。 然后将该组中的第一个命令发送到执行器,并且过程重复进行。 计划优化的典型结果如图16所示,其中暗线是最终瞬时解。

在这里插入图片描述

而不是通过输入的多维向量计划,即转向,节流和

制动执行器,搜索尝试以固定行驶速度优化一维转向指令; 通过简单的比例积分微分(PID)控制器分别处理所需速度的控制。 由于可能需要改变车辆的期望速度以便通过搜索空间优化计划轨迹,因此在搜索中包括额外的逻辑以根据遇到的数据加速或减慢车辆。

7.2 车辆模型

公式

7.3 理想的速度逻辑

命令和计划车速的确定源于许多因素。 RD接收几个请求速度的来源,计算其自身的最大速度,然后选择其中的最小值来计算车辆的油门和制动命令。 每个输入速度命令都是根据车辆所需行为的唯一因子计算或产生的。 在最高级别,车辆速度被限制为根据NaviGATOR的物理限制通过实验确定的最大值平台。下一级速度限制来自先验路径数据,其本身仅限于RDDF走廊提供的速度。 另外,可以评估路径文件提供的速度以查看较慢的期望速度是否接近车辆前方。 因此,如果需要使车辆减速,则RD可以允许自然减速时间。 此外,增加了所需的速度作为俯仰的函数,以使车辆在陡峭的上升或减速时减速下坡。 这确保了NaviGATOR在遇到丘陵地形时不会驾驶太快。

另一个重要的速度考虑在于规划搜索。嵌入在搜索中本身就是在期望的轨迹接近可穿越的网格单元的情况下使车辆减速的能力。计划员使用查找表来列举允许车辆行驶的所有最大速度因此,如果车辆试图避开障碍物或沿着有危险地形的狭窄道路行驶到任何一侧,则命令减速,从而提供较低的风险,同时允许更多全面搜索以找到最佳行动方案。而且,如果搜索无法找到合理的解决方案(即,仅找到通过非常差的区域的解决方案),则降低期望的速度。在下一次迭代中,RD尝试以较慢的速度找到更好的解决方案。这种方法是合理的,因为车辆在低速时具有更大的机动性,因此规划人员更有可能找到成本较低的路线目标。

由LongRange障碍专家和Terrain Ruggedness专家组成的情况评估部分提供额外的速度控制。 LongRange障碍专家使用来自PLSS LADAR的数据馈送来确定是否直接在前面的空间

车辆在30米规划范围之外没有障碍物(即,距离LADAR的80米范围限制为30米)。地形Ruggedness Specialist使用车辆的瞬时俯仰率和侧倾率(由速度状态传感器提供)将当前地形分类为“平滑”,“坚固”或“非常坚固”。基于远程障碍状态和地形坚固耐用状态,具有适当的滞后控制和阻尼,允许的速度选择车辆并将其发送到RD。例如,如果地形是平滑的并且没有检测到长距离障碍物,则允许RD将车辆驱动到其最高允许速度,因此比经验导出的障碍物避让速度7.2 mps快。(16mph)

7.4 控制器错误的检测

在车辆的正常操作期间,RD能够检测到四个故障。它们是NaviGATOR具有的情况:被阻挡,卡住,与障碍物碰撞,或者超出RDDF的范围。在每一个在这些情况下,系统可以采取纠正措施。这些错误中最常见的是阻塞情况。在这种情况下,即使搜索试图以车辆最可机动的速度计划轨迹,也没有可行的路径规划解决方案。通过对所收集的数据的分析确定该案例最多通常由于传感器错误分类而发生。这些情况下的纠正措施是简单地等待一小段时间让传感器数据自行校正,从而使规划人员能够找到解决方案。有时,如果没有车辆改变其位置,数据将无法正确,因此主动纠正是在短暂等待后自动“轻推”车辆,并在堵塞清除后继续计划路径。

8.测试和表现

本文的这一部分总结了在几个关键场所中发生的测试和性能。 本节补充了一个描绘该视频的视频NaviGATOR在这些场馆中运营(见多媒体)。

8.1 CIMAR 库

测试开始于驱动NaviGATOR的十台计算机上的JAUS消息传递系统。 JAUS消息传递需要能够发送多达500个每个节点每秒消息超过14小时。在比赛当天,实际发送和接收了超过2000万条JAUS消息。接下来,本文讨论的各个JAUS组件的初始测试发生在2005年春季主要在佛罗里达大学的CIMAR实验室。目标是让每个组件在受控的实验室环境中“在工作台上”自行工作。为了支持台架测试,设计了一个简单的车辆模拟器组件,用于发送与位置和速度相关的JAUS好像车辆正在通过RDDF走廊的消息。一旦每个单独的组件成功测试并宣布可操作,则随着系统开始形成,各种组件组合被集成并一起测试。基础车辆平台了在各个JAUS组件进行台架测试的同一时间内进行组装。随着车辆组装和JAUS组件的运行,各种JAUS组件随后安装在NaviGATOR中。

8.2 Citra 测试点

接下来,是时候将系统带到现场了。 2005年4月20日,在位于佛罗里达州Citra的佛罗里达大学植物科学部设计并建造了一个试验场。 球场布局在一个开阔的场地上,主要由一个瞄准器,一个椭圆形和几个左右急转弯组成(见图17)。 本课程增加了各个部分,以复制沙漠中预期的地形。 虽然这门课程有一些严峻的障碍,但它基本上是“最安全”的考试场所。 这是Team CIMAR的主要测试站点,用于系统的广泛开发以及DARPA实地考察于2005年5月6日举行的地点。2005年5月20日NaviGATOR被放入1/2英里的环路,由于一个小问题,它在停止前跑了12英里。 这是在向西航行之前最远的地方

在这里插入图片描述
Citra测试工作的一部分专门用于传感器的初始调整。 图18和图19描绘了在传感器调整过程中捕获的Citra地形场景和随附的智能传感器输出
在这里插入图片描述
在这里插入图片描述
智能传感器输出,在传感器调整过程中捕获。 图18(a)显示了均匀间隔的果园杆,而图18(b)显示了PLSS 在驶过该区域时,果园杆已被清楚地检测到并被标为障碍物。专门选择该区域以确保PLSS的输出准确地将障碍物映射到网格上。请注意,PLSS算法已被调整为精确定位极点,即使它们中的大多数在车辆经过它们时被遮挡了一段时间。 图19(a)示出了当沿指示的方向行驶时具有出现在车辆左侧的粗糙地形的道路。 图19(b)显示了同一路段的TSS可穿越网格的快照,将粗糙区域评分为有些不合需要,但不是被完全地阻挡(即4’s,5’s和6’s)。

到2005年8月20日,主要的硬件和软件升级已经完成,系统已准备好在前往西部之前在Citra站点进行最后一轮测试。 然而,在2005年8月25日,在进行高速雷达测试时,车辆严重失效。 其中一个后方震动啪的一声,发动机和车架掉了下来在后驱动轴和里程表齿轮上。 突然停止还导致前传感器笼支柱卡扣和传感器笼向前瘫倒了。 确定失败的原因并且系统是大约重新设计和重建一周。 随着损坏的修复,NaviGATOR返回Citra几天,以验证系统是否正常运行并准备好进入沙漠进行更严格的测试。

8.3 斯托达德山谷非公路车辆区

2005年9月11日,NaviGATOR向西驶向位于加利福尼亚州巴斯托附近的Stoddard Valley非公路车辆(OHV)区域,见图20。该团队首先尝试了一些短期试运行以确保系统运行。 这也标志着团队第一次使用追逐车辆设置运行NaviGATOR。参见图21(a)。

在这里插入图片描述
这些系统测试在Stoddard Valley的OHV区域进行(图20中标记为1)。 这条测试路线长约4英里,包括第一次严重的自主上坡和下坡,让团队评估系统的性能在重音和体面的演习中。 这些测试期间的速度保持在10英里/小时的范围内。 总而言之,该系统显示出几乎令人惊讶的处理地形的能力,促使团队加快努力寻找更具挑战性的测试路径。在这些成功的测试之后,团队将车辆移至Slash X.

Slash X是DARPA开始的网站2004年大挑战(DGC04)活动期间,CIMAR团队与其他几个DARPA Grand Challenge 2005团队共享该区域。首先,该团队开始了DGC04路线的起点和第一英里(图20中的站点2)。 这让团队可以进行测试并专门调整传感器铁丝网围栏是垮台的2004NaviGATOR这条路径也为测试更高速度的导航提供了一个好地方。 在路径2和Slash X后面的开放区域之间,团队能够以高达30英里/小时的速度测试和调整NaviGATOR,凭经验确定避障速度为16英里/小时。

2005年9月18日星期日原来是一个CIMAR团队历史性的一天。 TerraMax团队慷慨地通过图20中的沙漠标记站点3向我们提供了他们的RDDF之一。 该团队拿走了该文件,经过几次错误的开始,最终在下午4点启动了车辆。 路径3每个路程约20英里,内置转弯兲。 速度测试尚未完成,第一次测试以10英里/小时的速度完成。 在第一次测试之前,团队既没有看到也没有走过这条道路。 NaviGATOR不确切地知道他们要去哪里,他们一路领先,见图21共b兲兴。 NaviGATOR甚至让团队成员感到惊讶,第一次尝试成功导航了整个20英里的距离,只停留给人类操作员时间喝酒和休息。

在接下来的一周,该团队测试了NaviGATOR在这个课程上多次,达到25英里/小时的速度,并完成整个40英里的课程数次。 路径包括长直道,爬山和电力线覆盖的区域; 在DARPA Grand Challenge活动期间,团队期望遇到的所有地形。

斯托达德最后一个重要的测试领域图20中标记为4的山谷是DGC04事件的另一部分。 被称为Daggett Ridge,这是前一场比赛中最远的球队所达到的区域,包括非常危险的山地转弯和数百英尺的落差。传感器团队与车辆进行了多次旅行,以调整和测试传感器套件手动驾驶时的路径,特别注重以悬崖和冲刷形式检测负面障碍兲。

在两个星期的黎明到黄昏测试中在Stoddard OHV地区,NaviGATOR从一个1/2英里的赛道中的12英里的个人最好成绩到跨越数英里沙漠地区的40英里跑道。 该团队能够快速扩展系统,从10英里/小时的速度运行到25英里/小时,可靠的避障速度可达16英里/小时,同时还有调整和验证动态确定应使用哪种速度的软件。 在沙漠中的那段时间也许是在整个DARPA大挑战项目中进行测试的最佳时间,无论是车辆还是团队成员都在进行测试。虽然更多的测试时间会非常有用 ,在2005年9月27日,该团队前往加州赛道和国家资格赛NQE兲。

8.4 国家资格赛

在开幕式结束后,NaviGATOR立即成为第一个参加第一次资格赛的队伍。 资格认证课程如图22所示。它包括一条2.3英里长的路径,有三辆停放的汽车,一个粗糙的地形部分,一个模拟的山口,一个隧道,最后是一个木制的“坦克陷阱”障碍物。

在这里插入图片描述
NaviGATOR在第一次尝试时完成了整个课程。 图23描绘了NQE课程的NaviGATOR。 然而,三个车道标记锥体被击中,并且在路线末端的坦克陷阱障碍物被轻微刷过。 第二轮对NaviGATOR进行了两处更改。 在高速秒上所需的速度 -
当然,路线的速度从16英里/小时增加到20英里/小时,并且感知障碍物的扩张尺寸增加,试图完全错过坦克陷阱障碍物。 在第二次运行期间,NaviGATOR开始摆动并在高速部分变得不稳定并且运行中止。 问题是资格认证课程的高速部分是在人行道上,而所有高速测试都是在越野路上进行的。 不断引起的干扰路面上有四轮驱动车负责振荡。

对于资格课程的第三次运行,全部参数重置为第一次运行期间使用的参数。 一切顺利,直到车辆刮过球道山口区域的混凝土墙,扣住前转向连杆。 车辆很快被修好了。 对于未来的运行,路径中心线据PSS报道,在山口段的墙壁上移动了12英寸。 在此之后,资格课程又成功完成了两次。 总之,NaviGATOR完成了五个中的三个完整的资格认证课程时代,该团队被DARPA选中参加沙漠比赛。

在这里插入图片描述

8.5 比赛

该小组在2005年10月8日凌晨收到了包含航线航路点的RDDF处理数据,主要包括为课程的每个部分设置所需的速度。 然后将路径文件上传到车辆,并在上午9:30离开NaviGATOR。 离开起跑门后,NaviGATOR开始进入沙漠,然后在大约8英里处绕过人群。 NaviGATOR以大约24英里/小时的速度驶过观众,在比赛的这一点上表现非常好,(图24)。 在进一步跟踪土路后,NaviGATOR遇到了路面的铺砌部分并开始振荡。 它停了下来并做了几次转弯,纵横交错,然后重新恢复平静,朝正确的方向前进。在第二次资格审查期间,所需的速度设置得太高,无法在人行道上操作。

在这里插入图片描述
NaviGATOR接下来完美地穿越了一个在铁路轨道上的桥梁,消失在棕色的沙漠阴霾中。在上午11点之前不久,该小组收到了追踪卡车的消息,该追踪卡车正在追踪NaviGATOR,车辆莫名其妙地跑开了道路并停了下来。 NaviGATOR似乎不愿意进入和退出低刷在它面前,虽然它的越野能力很容易实现。在多次尝试暂停并重新启动NaviGATOR之后,司机回电说车辆正在移动,但是慢慢地仍然在路上。大约一半之后
一英里的起步,停车和在刷子上慢慢行驶,它重新获得了道路,并在道路完美后再次高速起飞。然而,在大约一英里之后,车辆再次熄火这条路和这次停在灌木丛前。这次,DARPA官员迅速宣布NaviGATOR死了。时间是中午前不久,NaviGATOR已经行驶了14英里。 NaviGATOR在23位决赛选手中排名第18位。总计五支球队实际完成了整个球场,斯坦福大学的斯坦利以6小时,53分钟和58秒的最短时间获得了200万美元的奖金。

8.6 什么阻止了NaviGATOR

比赛结束后的第二天,团队成员走上了赛道,发现NaviGATOR轮胎在车辆偏离道路右侧的两个地方进行了追踪。根据车辆上记录的这些信息和数据,似乎精确的GPS位置漂移了大约20英尺,导致车辆想要移动到实际道路的右侧。从轮胎轨道和可穿越网格看到图25,

在这里插入图片描述
显然车辆想要向右移动,但避障传感器正在检测到道路右侧的灌木和护堤。从车辆的角度来看,(图25),看来走廊上到处都是物体,最好的办法就是沿着走廊的左侧行走,走出左边的边界。实际上,车辆正在拥抱一条非常可通航的土路的右侧,但大多数开阔的道路被划分为越界车辆偏离的两次都是因为右侧没有障碍物并且车辆试图移动到其错误走廊的中心。 图26显示了NaviGATOR第二次离开球场的位置,随后DARPA离开停了下来。 总之,20英尺的位置误差导致边界智能传感器的相应移位,其消除了实际感测的道路作为计划者的选项。
在这里插入图片描述

9.结论

整体而言,团队对NaviGATOR系统非常满意。 基础车辆非常强大,在非常崎岖的地形中具有出色的机动性。 障碍物和地形检测传感器,以及传感器集成方法,工作得很好,反应计划模块也是如此。 总的来说,控制回路从检测到的物体到确定车辆驱动参数兲以超过20Hz的速率运行。 此外,努力的一个重要贡献是表明JAUS可以在这种情况下成功使用,并且JAUS定义的标准化消息传递系统可以极大地简化整体集成工作。

目前团队正在追求四个关键领域。 前两个重点是解决在挑战赛中参加比赛时遇到的具体问题。 另外两项改进将使NAVIGATOR系统在出现这些问题时更能适应这些问题。

1.稳定性。 控制器的稳定性可以通过增加额外的时间来改善正确获取控制参数调整。 目标是实现稳定的控制路面25英里/小时,泥土30英里/小时不久的将来。

2.位置系统。 我们目前正在改善位置系统估计的准确性这样的错误,当系统的输出降级了,它可以通知其余部分系统适当。 一个更好的版本正在实施GPS切换代码这将允许系统决定哪个GPS用作NFM的输入,NavCom或Garmin,基于哪个更好当时。 与此同时,NavCom和史密斯航空航天公司正在共同努力进一步提高了整体的准确性系统。
3.动态边界传感器和道路传感器。 如前所述,NaviGATOR陷入困境的原因在比赛中的道路是由于位置错误导致BSS转移可驾驶走廊在路上。 为了防止这种情况发生在未来,走廊宽度由BSS提供的功能将成为位置系统均方根误差(RMS)。 例如,如果位置RMS是好,然后在网格中的BSS走廊相应紧; 但是当位置RMS降级,然后BSS会发生冲击反应宽阔的走廊通过其可用性网格。 这样,BSS就没有了因此,更长时间地消除道路作为一种选择允许传感器找到通往的道路侧。 类似地,PSS的重量可以是调整使其推荐路径为当RMS位置时涂上十位好的,但只有七个或八个RMS降解,从而减少其影响。
4.适应性规划框架。 更广泛地实施这种情况 - 评估专家和高级别决定制作能力目前正在进行中。这将允许NaviGATOR这样做事情确定何时成为现实阻止并决定如何最好地解决问题,例如备份和重新计划。其他例子包括改变聚集 - 计划的灵活性基于任务的风险。参数和改变a的贡献根据环境给传感器情况。

此列表中的前三项是相对的短期内应该在本文之前完成发表。 使用调谐控制器,位置系统 - tem升级,BSS和PSS动态广告对于RMS的位置,NaviGATOR应该能够完成2005年DARPA课程不到10小时。 适应性规划的成熟框架可能会持续到未来一段时间

回想起来,团队本来会受益来自加州沙漠的更多测试时间。 与定位系统和路面高速控制相关的问题可以解决。 然而,该项目非常成功一个全新的车辆系统在九个月内设计,制造和自动化,准备参加2005年DARPA大挑战赛。 这是一项充满活力的时间和资源计划的巨大努力。

作者要感谢DARPA所有组织和举办一次非常成功的活动的工作人员的工作。 此外,还要感谢JAUS工作组的成员,他们的努力正在推动一种开放式架构,以促进军用机器人系统的互操作性。 最后,作者非常感谢团队的冠名赞助商Smiths Aerospace的技术和财务支持。

转载地址:https://blog.csdn.net/huoxingrenhdh/article/details/86522242 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Git 学习
下一篇:Ubuntu16.04 VTK6.3.0 测试

发表评论

最新留言

很好
[***.229.124.182]2024年04月16日 09时17分50秒