学生休息室

分享学生如何在日常项目中使用Matlab和Simulink的技术和现实生活示例#studentsuccess金宝app

模拟,场景和自动驾驶 - SAE自动化方式

今天的客人博主是Akshra Narasimhan Ramakrishnan.,教育技术福音学生在Mathworks学生竞赛团队。她在这里谈谈2020年SAE汽车推动挑战的挑战的创始人的型号,鼓励学生参加2021年的挑战!了解更多关于比赛的信息这里,参与团队还可以申请免费软件。

介绍

SAE AutoDrive挑战是一个4年的大学设计比赛,来自美国和加拿大的8支球队参与。本次竞争第3年的高级技术目标是在SAE等级4所述的自动化驾驶模式下导航城市驾驶课程。

MathWorks挑战团队使用模拟

仿真是一种非常有用的自主车辆发展工具。基于模型的测试可以帮助算法开发,单位和系统级测试,以及边缘案例方案测试。可以将现实世界传感器数据记录并重新播放到系统中以调整融合算法。可以创建模拟环境以模拟现实世界环境,并且可用于测试各种算法和传感器位置。可以根据性能结果选择满足团队要求的最佳算法和传感器位置。

每年MathWorks挑战团队通过模拟挑战使用模拟。这篇博客将简要覆盖1和2n将2020年挑战(多伦多大学和肯特大学),系统设计的挑战(多伦多大学),以及他们如何使用MathWorks工具来帮助实现整体竞争目标。这些团队是根据他们如何使用这些工具执行的方式来判断:

  • 开环感知测试 - 合成开环测试数据,评估算法的正确性
  • 闭环控制测试 - 合成闭环方案,评估控制算法性能
  • 控制算法的代码生成 - 生成算法代码,将生成的代码集成到车辆中
  • 使用MathWorks Tools的创新 - 一种与上述3个类别明显不同的技术/技术

多伦多大学

学生团队从阿维罗多多伦多大学获得1在挑战中。

开环感知测试

该团队的第一步是综合用于开放循环感知测试的数据。他们选择测试其传感器融合算法。要合成用于测试的合成数据,它们使用了(DSD)。此应用程序使您可以设计用于测试自动驾驶的合成驾驶场景。可以找到有关创建驾驶场景和为自主车辆开发产生合成传感器数据的更多信息这里。该团队在传感器融合算法中使用雷达和3个摄像机,如图1所示配置。

图1:团队传感器位置(©autoronto)

它们建模了相机传感器 - 以及它们的位置,方向和配置 - 在DSD应用程序中,以合成传感器数据以进入其传感器融合算法。DSD在团队的图像处理和计算机视觉算法之后模拟相机输出,并为数据添加噪声和异常值。

方案阅读器块用于读取使用DSD创建的场景信息。actor姿势被发送为多个检测发生器的输入。然后将这些各种传感器的检测包装为可变尺寸的ROS(机器人操作系统)消息阵列,并将作为自定义ROS消息发送到特定的ROS主题(图2)。

图2:用于开环测试的金宝appSimulink模型(©autoronto)

该团队将其对象跟踪器的输出与地面真值与车辆的地面。RMSE(均均方误差)指标用于性能评估。

闭环控制测试

该团队的主要重点是测试他们改进的规划师,以获得新功能,如施工区的重新路由,露出障碍物。策划者被重新设计以使用晶格结构,其中边缘从地图中修剪,以找到必要的对象周围的路径(图3)。DSD再次用于创建场景。障碍和红绿灯也被添加到方案中。

图3:路径查找的格子结构(©autoronto)

该团队使用型号(图4)建模了交通灯出版商。当自助式车辆超出交通灯的范围(> 50米)时,公布了未知状态。当自我进入范围内时,发布了一个红细信。自我停止5秒后,该消息将切换到绿灯。

图4:extendflow到模型控制器(©autoronto)

启动了控制器,计划员和车辆模型ROS节点。如果障碍物在自我车辆的50米范围内,其位置将作为ROS消息发送到Simulink模型(图5)。金宝app

图5:发送位置消息的逻辑(©autoronto)

控制算法的代码生成

团队生成了停止标志处理算法的代码(图6)。金宝appSimulink编码器用于将StateFlow转换为C ++代码。使用代码包装功能生成独立模块。然后将生成的模块合并到团队代码库中。

图6:停止光控逻辑状态流(©autoronto)

使用Mathworks Tools的创新 - 激光雷达相机校准

为了准确地解释具有来自LIDAR和相机传感器的输入的场景中的对象,有必要将传感器输出熔断在一起。因此,该团队在LIDAR和Team Camera之间进行了转换,将LIDAR投影到图像或反之亦然进行传感器融合。直到投影看起来不错,而不是使用手动测量和旋转摄像头,该团队使用新开发的LIDAR Camera校准工具从激光雷达处理工具箱。该工具估计了一种刚性变换矩阵,其建立在三维激光雷达平面中的点与图像平面中的像素之间的对应关系。有关该工具的更多信息可以找到这里

它们建立了一个较大的校准板,因为他们的目前对于工具太小了。当相机校准工具用于获得其相机的内在矩阵。在每个图像中找到棋盘的角,并在LIDAR数据中找到。找到了激光雷达和相机之间的刚性变换矩阵。此过程输出可用于将点云数据投影到图像中的转换,反之亦然。这些步骤如图7所示。

图7:(a)相机内在矩阵(b)棋盘角(c)激光器到相机变换矩阵(©autoronto)

凯特琳大学

学生团队来自肯特大学,赢得了2n在挑战中。

开环感知测试

团队使用虚幻引擎来创建各种场景。使用模拟3D相机块在虚幻的自我车辆中将相机添加到EGO-载体中。使用金宝app虚拟图像使用Simulink模型进行车道检测(图8)。蓝色方块表示车道检测功能,黄色表示每个步骤的输出。这些输出数字如图9所示。

图8:用于开环测试的金宝appSimulink模型(©Kettering大学)

图9:车道检测输出(©kettering大学)

闭环控制测试

该团队的系统设计由2台国家机器组成 - 纵向和横向。这些状态机器,如图所示,用于基于传感器和决策数据来模拟控制器选择的逻辑。它们被互连并用于启用并初始化控制器子系统。

图10:国家机器(©©kettering大学)

组合控制器仿真与图11中的Simulink模型进行了完成以验证所有团队控制器的工作。金宝app使用滑块和仪表提供对这些控制器的输入。

图11:用于闭环测试的金宝appSimulink模型(©©kettering大学)

纵向状态机的控制器子系统包括纵向速度控制器和自动紧急制动(AEB)。各国由纵向车辆动态确定,如加速,巡航,减速,停滞和公园。

横向状态机的控制器子系统包括车道保持辅助(LKA),车道变化和转动控制器。各国基于横向车辆动力学确定(图12)。下面讨论纵向速度,车道变化和LKA控制器。

图12:横向控制器状态(©©kettering大学)

纵向控制器

图13显示了用于模拟纵向控制器的Simu金宝applink模型。它由基于速度的PID组成。参考和输出扭矩速率仅限于竞争加速和混蛋限制。系统输入初始化并用滑块编辑,使用范围来查看数据。图14显示了目标和实际纵向速度输出。

图13:纵向控制器Simulink模型(©Kettering大学)金宝app

图14:纵向速度比较(©kettering大学)

车道改变控制器

该团队的车道改变控制器使用自适应MPC(模型预测控制)。使用参数函数生成参考路径,带有车道改变输入,例如车速和车道宽度。控制器的输出是参考横向位置和偏航。使用3DOF(自由度)模型来模拟车身。图15显示了用于模拟的Simulink模金宝app型。图16示出了参考和模拟车道改变路径的模拟输出,以及车载测试之后获得的路径。

图15:Lane Change Controller Simulin金宝appk Model(©Kettering University)

图16:车道改变路径比较(©kettering大学)

车辆模型

该团队开发并验证了单轨和双轨车型的3D。使用线性自行车模型进行初始验证。使用物理测试数据进行最终验证。图显示了具有初始和最终验证的横向加速度对比输出,无需和测试数据。

图17:(a)横向加速比较(b)与测试数据(©kettering大学)的比较

使用Mathworks工具的创新 - 虚幻城市

该团队使用对所有控制器的闭环测试使用虚幻。他们创造了一个不可控制的行人运动和红绿灯的虚幻城市。创建了可定制的演员,并且存储了演员名称,演员类型,演员详细信息,动画详细信息和标签等信息,以便快速访问。还创建了交通灯图以及标有图18的灯光位置。

图18:虚幻的红绿灯地图(©克雷特大学)

图19显示了Simulink-Unrea金宝appl系统通信结构。由车辆位置,行人运动,交通灯状态等组成的虚幻场景的决策是使用状态流完成的,并作为输入到控制器(图20)。

图19:Simulin金宝appk虚幻系统通信结构(©Kettering大学)

图20:用于虚幻场景决策的州流(©kettering大学)

总之,来自多伦多大学和凯特大学的学生团队能够利用MATLAB和Simulink设计,构建,测试和评估融合,跟踪和导航算法,以越来越近建立SAE等级的自主车辆金宝app模拟。它们在不同的仿真环境中撰写了具有交通灯和多个演员的复杂方案,将带有Simulink的环境集成,并在这些方案上部署并测试了其所选算法。金宝app使用Simulink建模和测试开环和闭环感知算法,并为这些系统生成代码。金宝app团队还使用Simulink和StateFlow设计和测试各种控制器算法。金宝app这两项冠军团队都是创新和广泛使用的MathWorks工具。

MathWorks提供免费软件和支持大量学生比赛。金宝app当学生比赛MathWorks页面有各种主题的视频教程,如物理建模,计算机愿景,代码生成,自动化驾驶工具箱(ADT)等入门,让您和您的团队开始竞争对手的挑战。当赛车休息室博客由所有MathWorks支持的博客帖子组成,支持他们的学生团队及其项目以及学生团队兴趣金宝app的主题技术文章。

有趣的设计自动车和快乐的编码!

|

注释

要发表评论,请点击这里登录您的MathWorks帐户或创建新的。