基于ROS的汽车自主导航算法的教学模拟环境

煤油灯科技2022-07-31 08:30

摘要

近年来,工程学位课程已成为机器人教学的基础,并融入了许多基本的 STEM 概念。一些作者提出了不同的平台来教授与机器人相关的不同主题,但这些平台中的大多数对于课堂使用并不实用。在自主导航算法的教学中,由于课堂平台的缺失,学生无法进行实践活动,或无法对不同的导航算法进行评估和比较,从而限制了学习。本研究的主要贡献是实现了一个免费平台,用于在不使用物理机器人的情况下基于机器人操作系统教授自动驾驶算法。作者介绍了一个使用该平台作为教学工具的案例研究,用于两门本科机器人课程的教学,学生对平台进行定量和定性评估。我们的研究表明,教授和学生可以进行不同的测试并比较不同的导航算法,以分析他们在课堂上相同条件下的表现。此外,所提出的平台提供了环境和数据可视化的真实表示。结果表明,模拟的使用有助于学生更好地理解理论概念,激发他们的注意力,增加他们的信心。

1.引言

STEM是科学、技术、工程和数学的缩写。近年来,由于就业市场对STEM毕业生的需求很高,这一教育领域已经发展起来。例如在美国,有2600万个工作需要这些领域的知识。机器人技术从根本上植根于STEM教育。机器人技术可以被描述为一门处理一类被称为机器人的机电系统的学科,能够执行不同的工业、科学和商业应用。近年来,该学科已成为工业机电系统的重要组成部分。这就是为什么机械电子工程、电子工程和计算机工程等专业学位课程已经成为机器人教学的基础,并融入了许多基本的STEM概念。

由于不同行业的技术和机器人技术的不断变化,让未来的工程师做好充分的准备是至关重要的。为了实现这一点,教师必须开发和实施创新的方法来教授概念和使用新技术来优化教育过程。在教育中,当信息以理想的教学工具传递时,所获得的知识将比通常使用的标准方法保留更长的时间。

使用机器人平台是教授机器人概念和提供实践活动的一种创新方式。然而,这些平台在可访问性、成本和灵活性方面存在各种挑战。无障碍平台有助于在必要时获取或更换组件,并帮助学生进行教育。同样,这些教育工具的灵活性允许它们适应不同的教学方法和课程。最后,成本是一个重要的考虑因素,在很多情况下,对于学生多的教育机构来说,投资多个平台来满足众多班级学生的需求是不可行的。因此,开发一种工具来在不同的环境中进行模拟,并在课堂上评估各种自动驾驶导航算法应该是一个目标。

这项工作的主要目标是提出一个模拟自动驾驶算法的平台,以帮助学生提高他们的学业成绩。利用该平台,教师和学生可以在教室环境中分析和比较相同条件下现有的各种导航算法。本文贡献是一个免费的平台和场景,教师和学生可以下载作为学术工具,执行自动驾驶实验室实践和加强理论概念。

该平台在自动驾驶教学方面具有一定优势。例如,机器人教师将能够专注于这个主题,而学生将不会被其他活动分心,如平台设计、机器人设计、编程等。同样,学生也可以进行实际的模拟,在相同的条件下,比较不同的导航算法在真实环境中的结果。为了演示教师如何在课堂上使用这个免费平台,作者提出了一个案例研究,比较了三种不同场景的两种本地路径规划算法:医院、仓库和实验室。在最后,学生们对所提出的平台进行了定量和定性的评估,这些评估旨在研究平台对学生学业成绩的影响,并确定在课堂上使用平台的改进。最后,对结论和未来的工作进行了展望。

1.1教学机器人

在之前的研究中,已经开发了多个平台来教授各种机器人主题和概念。每个平台都有不同的组件、工具和学习目标。教师在教授机器人技术时使用最多的工具之一是LEGO™,这个平台的主要优点包括它的可访问性和各种各样的工具包,可以适应不同的项目。Martínez等人开发了一个使用LEGO NXT™教授强化学习(RL)的平台,该平台可以解决与机器人相关的各种各样的问题。同样,Rosillo等人开发了第一个结合了三种技术工具的平台:LEGO™Kits、Matlab™和Simulink™。该平台重新排列Matlab™中的代码,用Simulink™将其转换为c++代码,并通过Wi-Fi将其传输给LEGO™机器人。作者利用Matlab和ROS开发了第二种教育机器人工具。该框架开发和模拟复杂机器人。

目前使用最广泛的物理平台之一是TurtleBot。作者描述了该平台如何在比利时鲁汶大学的课程中使用,提供了主要功能的概述, 并提出了减少学生学习曲线的改进建议。他们编写了课程,并报告了使用该平台的两门课程的学习结果,都取得了学生积极的反馈。

另一个用于机器人教学的技术资源是虚拟现实(VR)。虚拟现实允许学生安全地使用相关工具、仪器、组件和虚拟应用程序进行简单的电子实验室实验。通过使用虚拟场景和学习材料,学生可以通过参与远程学习过程进行学习,并引入了其他工业4.0概念,如数字孪生、大数据、云计算、物联网和网络安全。在教学中使用虚拟现实的另一个显著优势是消除了潜在有害的实验策略的风险,以及最小化成本和时间。一个例子是虚拟机电一体化实验室(ViMeLa)项目,由罗兹理工大学、斯科普里的s. Cyril和Methodius大学、塔尔图大学和帕维亚大学开发,在高等教育机构实施电子教学。他们的研究结果表明,虚拟现实技术对教育过程有很大的帮助,可以将理论应用于实践,促进知识的获取。

此外,还有其他平台为学习机器人提供优秀的内容、活动和工具。通用机器人学院(Universal Robots Academy)就是这样一个平台,它是一个开放获取的平台,包含一系列练习和活动,以学习机器人和电子技术,重点是工程学。这个平台上的活动涵盖了移动机器人、工业机器人、甚至无人机[等主题。机器人教学中最令人兴奋是视频游戏,它可以作为可理解的学习工具。Robles和Quintero开发了一个平台,里面有各种互动式视频游戏,平台存储玩家产生的所有信息,然后使用智能系统对其进行解码、分析和评估。在分析结束时,系统会显示出用户与游戏交互过程中计算出的所有统计信息,并提供合适的建议来强化游戏所涉及的主题。该平台旨在培养高中生的数学技能;然而,这些平台可以动态地教授创新的交互式机器人概念。

最后,这类平台允许远程学习,这在COVID-19大流行的背景情况下特别有用,这也是许多学校暂停面对面教育活动,开始在线教学的原因。这些平台允许进行实验室实践,从而加强理论知识。实践活动可以在虚拟实验室或模拟中进行。由于疫情,教学中的技术有所增加。具体来说,机器人和数字教学平台对学生学习各种概念和学科至关重要。另一方面,由于成本、可用性和学习曲线的原因,将这些平台纳入课堂仍然是一个挑战。此外,许多课程必须重新设计,以满足特定的学习目标。

1.2. 机器人技术中的自动驾驶

自动驾驶是在没有主动驾驶员控制的情况下操作车辆的一种方法,它涉及到移动机器人的正确操作的多个变量,如读取传感器,遵循轨迹,保持与其他车辆或障碍物的安全距离,以及速度控制等。

由于这一学科为日常生活、工业、商业等领域的数千种应用铺平了道路,因此近年来与自动驾驶相关的研究有所增加。STEM课程吸引了更多与机器人相关的不同主题,如教学和应用自动驾驶模型。然而,发展教学策略以创新的方式促进知识获取,将概念和理论付诸实践已证明对机器人教师具有挑战性。

自动驾驶汽车的相关部件之一是传感器。在自动驾驶汽车中,这些设备包括摄像头、激光雷达雷达、声纳、全球定位系统(GPS)、惯性测量单元(IMU)和车轮里程数。传感器收集数据,由车辆的计算机分析,以控制其方向、速度和刹车。然而,传感器融合也应用于自动驾驶汽车,将来自不同来源的数据进行组合,以实现信息的一致性组装。当这些源或传感器单独使用时,得到的信息更可靠。当组合不同类型的数据时,这种方法是必不可少的。例如,在自动驾驶汽车上安装一个摄像头来克隆人类的视觉是至关重要的。然而,最好从传感器例如激光雷达或雷达获得距离数据。因此,相机传感器与激光雷达或雷达数据的结合是必不可少的。此外,结合激光雷达和雷达数据提供了关于障碍物与车辆之间的距离或环境中不同物体的距离的可量化信息。

同样,在操作自动驾驶汽车时,另一个重要的考虑因素是处理传感器数据以进行决策的算法。Levinson等人为商用车开发了一系列算法。该车辆必须执行以下任务:无监督激光校准、测绘和定位、目标识别和轨迹规划。无监督激光校准需要多光束激光来检索每个光束的方向和距离响应函数的最佳参数。这种方法允许同时校准数十或数百束光束,每个光束都有特定的参数。此外,还得到了传感器相对于机器人坐标系的外部位置。重要的是,不需要特定的校准目标;它仅仅基于一个弱假设,即空间中的点趋向于在连续的表面上。

对于测绘和定位任务,来自GPS、IMU和LiDAR传感器的数据可以生成车辆所在位置的高分辨率地形地图,车辆使用的地图是地面上基于网格的激光雷达汇款响应的正交投影。

在目标识别方面,首先利用深度信息对每次激光雷达扫描进行分割。这些片段被插入到一个标准卡尔曼滤波器中,该滤波器包括位置(x, y)和速度(x ', y ')的变量状态。路径分类通过两个单独的增强分类器来执行:一个表示每一帧路径中的物体形状,另一个使用整个路径的运动描述符。这些预测使用离散贝叶斯滤波器进行组合。该车辆在不同条件下可自动行驶数百英里,试验结果良好。然而,为了更安全的驾驶,司机必须始终在场,考虑到在某些情况下,一些驾驶也必须手动进行。

1.3. 自动驾驶算法

在教育领域,为教授各种机器人主题而设计和测试的不同平台包括电子平台, 有例如 LEGO™、Arduino 和 Raspberry Pi。特别是LEGO™平台已被用于机器人教学,但它在自动驾驶科目方面有一些限制。LEGO™控制单元(砖模块)可以使用标准的LEGO™基于块的软件或其他开源编程语言进行编程。然而,基于块的软件需要相当多的编程经验,限制了程序的复杂性和算法的学习能力。

另一方面,基于视觉的控制对于自动驾驶至关重要。例如,LEGO™平台缺乏合适的摄像头。此外,它的硬件还不够强大,无法实时处理图像。Otto等人设计了一个机器人教学平台,使用LEGO™平台结合Raspberry Pi、Matlab™、Simulink™、低成本的网络摄像头和外部电源。与标准的LEGO™平台不同,这种新设计提供了足够的计算能力来实时评估图像数据。当Raspberry Pi在LEGO™平台上模拟UART通信协议并传输连续计算的控制输入时,操作开始,PI传感器控制器将控制输入转移到LEGO™电机。最后,Matlab™和Simulink™允许在Raspberry Pi卡上实现自动驾驶算法和机器人控制。该系统的主要优点是可以添加多个传感器,作者概述了他们的系统在自动驾驶教学方面的局限性(比如缺乏摄像头)。

目前,导航算法种类繁多,特点和功能各不相同。在教学中,比较不同的算法来分析它们的行为和性能是有针对性的,但由于场景和测试条件不一样,这并不总是可能的。

Naotunna和Wongratanaphisan对三种导航算法进行了性能分析:动态窗口方法(DWA)、定时弹性带(TEBand)和弹性带(EBand)。作者利用ROS软件对这三个地方规划机构的性能进行了比较。实验在一个选定的区域进行,在清迈大学工程学院主楼一层约145平方米。对三种算法的性能进行了分析,在四种预定轨迹上对机器人进行导航。对于每种算法,机器人在路径上进行了20次测试,分为两段。前10次测试在通畅的场景中进行,随后的10次测试在有障碍的相同场景中进行。研究结果表明,DWA和TEBand算法的跟踪精度值高于EBand算法。同样,考虑到完成路线所需的平均时间,结果显示DWA算法比TEBand算法完成路线所需的时间更少。虽然EBand算法生成的是最短路由,但生成的最大速度小于设置的最大速度。最后,在目标位置测量的位置和姿态误差表明,EBand算法具有更大的精度,并且TEBand算法的误差偏差最大。然而,这项研究对于教学的缺点是,学生需要接触真正的机器人平台和一个大的开放空间来使用机器人进行测试。

Pimentel和Aquino比较了Base local Planner、DWA、TEBand和EBand四种不同的局部路由规划算法,实验采用了前置激光传感器和后置激光传感器。为了进行评估,还添加了一个3D深度摄像机。在这些测试中使用了两个场景:第一个,一个模拟场景,评估在无障碍的静态环境中的导航;第二,一个模拟场景,评估在传感器范围外使用静态3D物体的导航。在进行了相应的测试后,作者注意到,尽管DWA和Base Planner算法在ROS环境中使用最多,但其结果最糟糕。在本研究的最后,作者证明了ROS可以用于比较不同自主算法的性能,而不需要物理移动机器人或空间来执行测试。这样,ROS就可以作为课堂上的学习工具,将理论知识付诸实践。

然而,学生必须在课堂上使用这些平台,这就分散了他们的注意力,使他们无法完成不符合学习目标的作业。此外,由于课堂平台的缺失,学生无法开展自动驾驶实践活动,限制了学习;因此,他们无法比较不同算法的性能。另一个重要的考虑因素是,许多平台都是物理平台。虽然大学可以获得这些考试,但有时学生无法获得大空间进行不同的考试。因此,开发一个学习工具来在不同的环境中运行模拟,并实时评估不同的导航算法是一个挑战。

因此,本研究提出使用ROS作为一种工具,学生可以利用在课堂上进行不同的实践,并加强学习型机器人在虚拟场景中的实施。使用课堂模拟的好处是,学生可以在相同的条件下比较不同导航算法的性能。

2. 材料和方法

2.1. 利用ROS教授机器人技术

目前有多个平台用于不同教育水平的机器人教学。这些平台用于移动机器人、STEAM概念、控制工程机器人、机械手、编程技能、智能传感器、机器人视觉[、生存和行为分析等教学,有广泛的硬件平台支持机器人课程和实验室实践。对于不同的编程环境,Matlab™和C是课堂上的主流选择。近年来,出现了免费的开源软件包,可以实现模拟移动机器人的虚拟场景,机器人操作系统(ROS)就是这样的例子。

图1显示了ROS的基本操作,机器人操作系统(ROS)是一种开源工作环境,最初是为了安装在Linux操作系统上而开发的。它可用于编程和机器人仿真。ROS由执行单元(称为节点)组织,它们通过发布/订阅消息、提供服务和/或执行操作进行通信。ROS包括与物理和真实硬件(如传感器或致动器)的连接,以及各种控制类型、导航、地图创建等的算法实现。它的Gazebo模块(模拟)和RVIZ (ROS-VIsualiZer)完成了一个灵活的框架,允许使用模拟元素进行教学,并且可以在真实硬件上传输和测试开发成果。

图 1. ROS 是一个开源工作环境,包括与物理和真实硬件(执行器和传感器)的连接,Gazebo(运行 3D 机器人模拟)和 RVIZ(允许 3D 可视化)模块构成了一个灵活的框架,允许结合 ROS 进行模拟和可视化。

Gazebo是一个结合ROS运行机器人模拟的3D环境。通过这种方式,用户可以测试算法,设计和测试移动机器人,并使用现实场景的虚拟表示训练AI(人工智能)系统,这提供了在复杂的室内和室外环境中精确高效地模拟机器人运动的能力[30]。Gazebo图形用户界面(GUI)如图2所示。

图 2. Gazebo 主屏幕,Gazebo 可以运行 3D 机器人模拟。

ROS Visualization (RVIZ)是一个用于ROS应用的3D可视化工具,它的主屏幕如图3所示。RVIZ显示移动机器人模型,捕获机器人传感器数据,并再现捕获数据。它可以将来自相机、激光器和3D和2D设备的数据显示为图像和点云。

图 3. RVIZ 主屏幕,该工具允许对 ROS 应用程序进行 3D 可视化。

ROS具有硬件抽象、不同设备驱动、多机器进程间通信、测试和可视化工具等功能,所以更有利于机器人教学。然而,ROS的主要特点在于软件如何运行和通信,允许在不知道硬件如何详细操作的情况下设计和实现算法。本节回顾了一些将 ROS 平台用于机器人教学的系统。

Niu等人开发了一种通过Matlab™和Simulink™附加包使用ROS和Gazebo模拟器来教授移动机器人的工具包,以提高物理机器人仿真环境中的学习效率。该工具包中包含了虚拟传感器和驱动器的访问,并隐藏了通信细节,让学生专注于编程和调试他们的自动驾驶算法。该平台的基本架构由三个主要的软件模块组成:Matlab™和Simulink™、机器人操作系统(ROS)和Gazebo。在Matlab™和Simulink™中开发的算法与ROS交互,ROS将Matlab™和Gazebo模拟器连接起来。

一组机器人专业的学生被分配了一个活动来评估这个平台。在本次活动中,学生们利用LiDAR传感器数据和机器人的测程数据,分别避免机器人与不同的障碍物发生碰撞,使机器人到达预定的最终位置。通过测量完成初始和最终位置之间轨迹所花费的时间来评估这个活动。比较每个学生获得的时间,找出最佳时间。

EUROPA平台( 教育 ROS 机器人平台)延续了ROS在教育领域的应用趋势。该平台由一个低成本的两轮机器人组成,具有差动牵引,其中央控制器是 Raspberry Pi 3B +卡。它具有完美的可扩展性,并适应不同的教育水平和课程,它的设计允许根据教育水平和课程设置使用工具进行编程。EUROPA采用ROS平台作为主要的通信和控制软件。Raspberry Pi控制硬件(如电机和其他执行器),并从里程计传感器和摄像头收集数据。所有负责控制两台直流电机、伺服电机、超声波传感器和激光雷达的控制器都安装在Raspberry Pi上。最后,Raspberry Pi还托管了几个充当节点的Python脚本。该平台目前正在马其顿中部(希腊)的中学进行评估,那里正在运行试点项目。

Cañas等人开发了另一种教学机器人的工具包,称为Robotics-Academy Design。这个工具包包括一套独立的练习,提出关于自主机器人的具体问题。学生必须开发算法和编程机器人来正确解决问题。它的主要组件是Python编程语言、ROS中间件、Gazebo模拟器和每个练习的一个代码模板(Python ROS节点和Jupyter笔记本)。该套件在西班牙雷伊·胡安·卡洛斯大学的几个本科工程课程中使用和验证。150多名学生参与了这项研究,调查显示,其中95%以上的人在使用中给予了积极评价。在一项涉及221名大学预科学生的研究中,这一结论也得到了验证。定量分析表明,与对照组相比,机器人学院工具对学生的学习结果有积极的影响。

先前的研究报道了ROS作为一种教育工具的良好效果,这就解释了为什么在设计和实施机器人课程学习的虚拟实验室等工具的教授中使用它,解决了一些教育机构的限制,并解决了一些学生没有平台或物理空间的问题。

然而,据作者所知,这些平台大多集中在机器人的一般主题,用户不能在相同的条件下运行模拟。此外,这些之前的平台还没有被用于教授自动驾驶算法或评估其对学生学业成绩的影响。

2.2. 自动驾驶算法免费教学平台的开发

本研究的平台使用了ROS和Gazebo模拟器,以及地图绘制算法和全局和局部路径规划库。 这个免费平台允许学生实际执行模拟,而无需从头开始设计或实施机器人或场景。因此,学生可以专注于自动驾驶理论的学习,并将其付诸实践。

提议的平台有一个用于交换消息的接口。因此,ROS和Gazebo项目可以在进行过程中相互通信。例如,LiDAR传感器处理后的数据被发送到ROS服务器进行进一步处理,从而移动虚拟移动机器人的电机。在模拟过程中,Gazebo和RVIZ在这个教学平台上为学生提供了所使用的环境和移动机器人的运动的真实再现(见图4)。提议的免费平台包括三个不同的场景和一个移动机器人模型,学生可以评估不同的局部路径规划算法的性能。这些算法可以是ROS本身的,并且是用户生成的。要在模拟中更改算法,学生只需选择他们想要使用的算法的名称。类似地,要修改场景,学生必须只选择他们想要使用的场景的名称。

图 4. 运行模拟的建议平台:Gazebo 渲染图 ( A )、RVIZ 规划图 ( B )、机器人实时测量数据 ( C ) 和用户 GUI ( D )。

平台安装的所有步骤以及使用可用场景和算法的说明都位于 GitHub 存储库中,链接如下:http://github.com/marcochunab/skid_steer_bot

2.3. 真实封闭场景的设计

如前所述,这项工作的重点是ROS平台,用于在机器人课程中教授自动驾驶算法。在课堂上使用这个工具的主要优势之一是学生可以在相同的条件下测试和比较不同的算法。例如,相同的场景。该平台可以成为教师和学生在机器人课程中进行自动驾驶实践的教学支持工具(虚拟实验室),而无需访问物理平台或测试空间。

作为初始方案,本工作考虑了三个具有不同条件和特征的虚拟工作空间,对自动驾驶算法进行测试和比较,这些免费场景可用于学术和科学社区的教学或研究应用。

国际机器人联合会(IFR)收集的报告显示,2016年至2019年期间,与前几年相比,医疗、农业、物流和国防领域的服务机器人的使用和需求有所增加,基于这些数据,我们选择健康、物流(供应链)和行业在ROS平台上创建三个虚拟场景。图5总结了实现平台和场景的过程。

图 5. 用于开发和实施平台和虚拟场景的方法。

场景设计使用了Gazebo工具。第一个场景是医院医疗保健层。在这种情况下,移动机器人可以帮助开展必须避免与人类直接接触的活动,例如在当前的COVID-19大流行期间。在这个场景中,考虑了以下空间:一个接待区,九个医疗护理室,以及连接房间和接待区的走廊(有九个入口到医疗护理室)。每个房间都有不同的障碍物,有足够的空间让机器人在障碍物之间穿行。如图6所示为接待区(A)、房间区(B)和走廊区(C)。总面积为15米宽,45米长(675平方米 )。为了在Gazebo中模拟一个真实的医院,我们在整个场景中使用了预先存在的人的模型,运动没有被独立计算。

图 6. 场景 #1 的地图——医院:接待处 ( A )、房间 ( B ) 和走廊 ( C )。

第二个场景是装卸仓库。在这里,移动机器人有助于执行需要在不同区域之间运输物品的物流活动。这个场景有一个卸货区和一个装货区,以及在场景中心部分排列成两排的一系列块,模拟仓库中的现有产品。人们也分散在不同的地方,以模拟人员流动。 图 7 显示了装载区 (A)、卸载区 (B) 和存储区 (C)。总面积为 20米宽和 25米长(500平方米 )。

图 7. 场景 #2 的地图——仓库卸货 ( A )、装载 ( B ) 和存储区 ( C )。

与医院场景不同,仓库在街区周围有更多的开放空间和更宽的走廊。然而,每个街区之间也有缩小或狭窄的走廊。走道的宽度足以让机器人在任何情况下导航。另一方面,这个场景没有机器人必须进入的不同房间的入口。

最后提出的场景是工业制造实验室。实验室有一个中心区域,周围区域有几台机器和一个仓库。图8显示了机器区域(A), (B), (C), (D)和一个仓库空间(E)。总面积为20米长,25米宽(500平方米)。

图 8. 场景 #3 - 工业制造区的地图:机器区 1 ( A )、机器区 2 ( B )、机器区 3 ( C )、机器区 4 ( D ) 和仓库 ( E )。

表1总结了三个场景中的差异。此外,在每个场景中建立了两种不同的路径或轨迹进行评估:一种轨迹称为“简单路径”,另一种称为“复杂路径”。在简单路径上,初始位置到目标点的距离小于15米。此外,不存在妨碍移动机器人运动的障碍。在复杂路径上,初始位置与最终位置之间的距离大于15米。在复杂的路径中,移动机器人必须自主规避各种障碍物才能到达目标点。

表 1. 三种情景之间的差异。

实现一个长65cm、宽46cm、四个轮子、前转向的虚拟移动机器人进行测试,如图9所示。它有两个用于测绘的传感器:第一个是激光雷达传感器,它使用激光发射器来确定与物体的距离。第二个传感器是立体相机,不用于自主导航或环境测绘;相反,它的目的是让用户可视化当前机器人位置的虚拟环境。

图 9. 模拟中使用的具有四个轮子的虚拟移动机器人,具有以下组件:激光雷达传感器 ( A )、立体相机 ( B ) 和编码器 ( C )。

最后,编码器和Gazebo平台生成测程数据,提供虚拟场景中机器人的X坐标和Y坐标位置。图10显示了执行模拟的步骤流程图。

图 10. 运行模拟的步骤:首先,用户必须选择场景;之后,必须设置初始点和目标点;最后,用户必须配置算法才能运行。

3.结果

本案例研究的目的是描述在课堂设置中使用该平台对不同的自动驾驶算法进行分析和比较。此外,进行了两项评价:定量和定性。本研究选取了Time Elastic Band (TEBand)和Elastic Band (EBand)两种局部路由规划算法作为案例研究,因为前人研究中使用]这两种算法获得了最好的性能结果。这些算法在提出的平台上实现,使用简单和复杂轨迹的三种场景(医院、仓库和工业制造区域)运行一组模拟。对以下实验组进行测试:

  • SP-TEBand→采用TEBand算法的简单路径;
  • SP-EBand→采用EBand算法的简单路径;
  • CP-TEBand→采用TEBand算法的复杂路径;
  • CP-EBand→使用EBand算法的复杂路径。

这项研究是在两门本科机器人课程期间进行的。该研究分为两个阶段,两个课程遵循相同的方案。第一阶段是对自动驾驶算法的理论概念进行解释,在这一阶段,教授采用了传统的口头陈述结合PowerPoint幻灯片的教学方法。这一部分包括笔试,学生必须回答一系列关于机器人理论概念的问题。

该研究的第二阶段继续演示了拟议的平台如何工作。在课堂环境中,教授进行了一系列模拟,向学生展示了在相同条件下,每种场景下每种算法的性能参数。每种算法在每种场景中对两条路径中的每一条进行了30次测试。在每次测试中,机器人都自主沿着从初始位置到目标点的路线行进。在每个场景中,障碍都是静态的。这种教育方式让学生学习和比较不同的自动驾驶算法的性能,以加强理论知识。这一部分还包括笔试,学生必须回答关于理论概念的问题。模拟是在一台配备英特尔酷睿i7处理器、8gb RAM和NVIDIA™GeForce™GTX 1050显卡的个人计算机上进行的。

本研究测量了三个绩效指标:

  • 总距离:指的是机器人从初始位置到停在目标点的总距离。这个指标是用米测量的,利用模拟过程中机器人的实时位置来计算总距离,并结合虚拟测程系统计算的数据(见图11)。
  • 时间:这是机器人从初始位置到计划路线的目标点所需的秒数。当机器人到达最终位置时,时间停止(见图12)。
  • 平均误差:这个值是用米测量的。它表示相对于机器人的最终位置和目标点的测量误差(换句话说,移动机器人离终点有多近)。这个指示器以米表示,利用测程信息确定机器人在轨迹末端的坐标。机器人位置与目标点之间的距离计算公式如下:

其中X 和Y 为端点坐标,X1_1 和Y1_1 为机器人初始位置的坐标(见图13)。

图 11. 同一场景中的路径示例:简单路径 ( a ) 和复杂路径 ( b )。

图 12. 不同路径的时间示例。在此示例中,在简单路径 ( a ) 中,与复杂路径 ( b )相比,机器人到达目标点所需的时间更少。

图 13. 不同路径的平均误差值示例。在此示例中,在简单路径 ( a ) 中,机器人与目标点之间的距离小于在复杂路径 ( b ) 中。

在课堂上,学生被要求在每个场景中进行一组模拟。在活动开始时,他们获得了表 2 所示的数据表,用于记录和进一步比较他们的模拟结果。

表 2. 获得结果的工作表报告示例。

教师和学生可以对自主驱动算法的每个场景进行详细的分析和数据比较。对于这种分析,推荐使用t-检验,这是一种比较两组独立数据的两种平均值的统计研究。该检验判断当p值等于或小于0.05时,两组均值之间是否有统计学意义的差异。

表3总结了在两种路径上的每个场景中运行模拟后获得的数据,这些结果取决于轨迹的初始和最终位置,在这种情况下,这些位置对于所有的测试都是相同的。它说明了平均速度,使用行驶的时间和距离计算,车辆完成路线所需的时间,以及相对于目标点的误差。

表 3. 获得的模拟数据汇总。

图14显示了阶段1(传统方法)和阶段2 (ROS和模拟)笔试结果的比较。这些结果表明,在第二阶段,当教授在课堂上使用所提出的平台和模拟时,学生获得了较高的分数。

图 14. 第一阶段和第二阶段笔试成绩对比。

此外,在研究的两个阶段结束时,参与者必须评估结果,以使用五李克特五量表法评估平台的可用性:

A1:我认为我在课堂上使用ROS的模拟时,我的学习是有差异的。

A2:模拟的使用帮助我更好地理解理论概念。

A3:通过模拟的使用,我了解了每种算法的优缺点。

A4:模拟的使用激励我在课堂上集中注意力。

A5:模拟的使用使课堂更有趣。

A6:我认为用来运行模拟的平台是简单易用的。

A7:通过课堂上的模拟学习,我更加自信了。

A8:我认为模拟应该一直作为课堂上的辅助工具。

表 4 总结了可用性评估的结果。在这种情况下,值 1 表示“完全同意”,而值 5 表示“完全不同意”。

4.讨论

图15 展示了虚拟场景#1—医院楼层的结果,使用TEBand算法的移动机器人完成轨迹需要更长的时间,比使用EBand算法时分别慢14.23%和48.62%。在准确率方面,EBand算法在短路径上的准确率比TEBand算法高出11.40%。而TEBand算法在长路径上的准确率比EBand算法高15.46%。统计分析表明,在简单路径下,TEBand组和EBand组完成轨迹所需的时间和精度在统计上没有显著差异,但在复杂路径下没有显著差异(p <0.05)。

图 15. 使用医院场景的实验组之间的完成时间和误差比较 (* p < 0.05)。

图16展示了虚拟场景#2—仓库的结果,其中使用EBand算法的机器人需要更长的时间来覆盖较短的路线,比TEBand算法慢89.09%。在精度方面,TEBand算法在简单路径上的精度比EBand算法高36.56%。另一方面,在复杂路径上,TEBand算法无法完成该场景下的轨迹。 统计分析表明,在简单路径的情况下,TEBand 和 EBand 组在完成轨迹所需的时间及其准确性方面存在统计学显着差异 (  p < 0.05)。

图 16. 使用仓库场景的实验组之间的完成时间和误差比较 (* p < 0.05)。

图17显示了虚拟场景#3—工业制造区域的结果,EBand算法在短路径和长路径上耗时最长,分别比TEBand算法慢82.50%和58.40%。在精度方面,EBand算法在短路径上的准确率比TEBand算法高56.85%。同样,Eband算法在长路径上的准确率比TEBand算法高97.69%。 统计分析表明,在完成轨迹所需的时间及其准确性方面,所有研究组之间存在统计学显着差异(  p < 0.05)。

图 17. 工业制造场景中实验组的完成时间和误差比较 (* p < 0.05)。

关于学生的表现,图14显示了笔试结果的差异。此外,t-检验显示有统计学意义的差异(p<0.05)。换句话说,在第二阶段(教授在课堂上使用模拟教学)中,这种教育方法比教授使用传统教学方法有助于提高学生的表现。这一事实表明,这项工作的主要目标已经实现,拟议的平台有助于提高学生的学业成绩。

从图18可以看出,总的来说,模拟的使用有助于更好地理解理论概念,每种算法的优缺点,使课堂更有趣,激发学生的注意力,使学生更有信心。超过85%的学生建议这种教育方法应该一直在课堂上使用,以改善他们的学习过程。然而,一些学生认为这个平台的使用并不简单和容易。这一事实表明,有必要考虑一个初始阶段,教师让学生熟悉平台的使用及其功能,以便该工具不会分散注意力或不影响学习过程。

图 18. 可用性测试结果的比较,一般来说,使用模拟有助于学习过程,但教授应确保学生了解如何使用该平台。

从教授和学生的角度来看,这个平台对于那些教授自动驾驶汽车设计和实现相关学科的人来说是一个有价值的工具。此外,从实现工具的责任中解脱出来,学生可以专注于学习算法和自动驾驶技术,以便分析影响其操作的不同变量。

这个项目的一个优点是,通过使用ROS环境,学生可以进行不同的测试,分析算法的性能,比较数据。使用该平台,学生可以评估和比较不同算法在不同场景和不同轨迹中的性能。学生需要设置弹道(起始点和目标点),在模拟结束时,平台提供算法的性能结果(距离、时间和误差)。通过比较性能值,学生可以找出每个算法在每个场景中的优势和局限性,从而选择性能最好的算法来解决给定的问题。

类似地,学生可以实现不同的场景,因为它只需要在Gazebo中创建它们,并使用ROS库执行映射。此外,还可以使用不同的自主导航算法,这些算法可能是ROS本身的,也可能是第三方创建的,也可能是用户创建的。本研究的主要局限性在于,该平台在两门本科机器人课程中进行了测试。建议进行更多的实验,以确定局限性并改进平台。此外,有必要分析拟议的平台如何适应不同的教学方法和课程。此外,该平台还需要改进,以提供更真实的机器人模型,更多的测量,包括更多的局部路径规划算法。

5. 结论

STEAM教育是工科大学生能力培养的基础。就机器人而言,研究界提出了不同的教学平台,然而,这些平台在课堂使用的可访问性、成本和灵活性方面存在挑战。自动驾驶教学的一个复杂之处在于,学生们需要使用真正的机器人平台和自由空间来使用机器人进行测试。本研究描述了一个基于ROS软件的免费自动驾驶算法教学平台。

为了展示该平台在教学中的优势,作者使用该平台进行了一个案例研究,在三个不同的虚拟场景中,对两种本地路径规划算法进行了评估和比较。在课堂上,利用这个平台进行模拟实验,并将理论应用于实践。利用总距离、时间轨迹和平均误差等变量对每种算法进行分析。学生对平台的定量和定性评价表明,这种教育方式有助于学生的学习过程,加强了理论知识,激发了学生的课堂积极性。此外,这些结果是第一步,表明其他平台的局限性可以通过使用提出的平台解决,在该平台中,学生可以在相同的条件下比较不同导航算法的性能。

总的来说,研究结果表明,使用ROS软件可以让学生以一种实用的方式进行自动驾驶模拟,而无需设计或实现一个物理机器人。此外,该平台促进了模拟的实现,可以帮助学生专注于学习与自动驾驶相关的概念和理论。作者建议继续这个项目作为未来的工作,并建议设计和实现一个物理平台,学生可以轻松地建立在真实环境中验证模拟结果。


原文链接:https://www.mdpi.com/2076-3417/12/14/7277/htm

完整附件下载:A Free Simulation Environment Based on ROS for Teaching.pdf

你可能也喜欢这些文章

科技互联网,科技,资讯,动态,洞察,量子,计算,AI,人工智能,机器人,区块链,Web3,分布式,操作系统,OS,芯片,视频,深度,论文