学生休息室

分享学生如何在日常项目中使用MATLAB和Simulink的技术和现实例子#学生成功#

赛车:小-工作流程:专业

在今天的博客文章中,我很高兴地介绍Jose Avendano Arbelaez他是本博客的首次嘉宾。我们一直在合作一个不错的硬件-软件演示,包括一个赛车(模型)。

- - - - - -

本文特别适合汽车专业的学生团队,但显然不是他们所独有的。所有与演示相关的模型都已在MATLAB中央文件交换还有两个教学视频已经发布:# 1#2.通过这篇博文,我将分享我们期望的学习成果和一些背景信息。

为什么?

车辆建模已被证明在学生比赛中给予团队竞争优势。这可以与基于模型的设计以最优的方式模拟和建立系统原型。基于模型的设计包括定义需求、对系统建模、部署到微控制器上以及测试所有通过相同建模方法连接的各个阶段。这样可以节省时间,提高最终产品的质量。我们决定展示如何应用产品开发的所有阶段来达到准备比赛的汽车。

我们的方法

由于我们无法在全尺寸车辆上展示这些功能,所以我们决定采用小型版本。我们的RC赛车演示展示了使用Simulink部署您之前设计和验证的车辆动力学控制器是多么容易。在这种情况下,德州仪器C2000硬件支持包是一个很好的执行器和传感器的接口,我们有在我们的车。MATLAB和Simulink也可以测试我们的设计。为此,我们实现了CAN通信,这是车载网络工具箱,既可以通过Simulink获取数据,也可以直接在模拟中使用记录的数据。

使用Simulink硬件支持包编程ECU

如前所述,为了使Simulink模型与实际硬件交互,我们使用了TI C2000嵌入式编码器支持包.Simulink最大的省时特性之一是它可以为不同的硬件平台自动生成代码,包括许多低成本的解决方案。对于我们的应用程序,C2000支持包与德州仪器的开发工具完全集成。

使用支持包提供的Simulink模块制作一些硬件驱动程序,意味着我们可以在几分钟内评估汽车的行为。只需点击“构建”按钮,我们就可以在几分钟内评估汽车的实际行为。请查看视频,了解该过程和算法的详细解释。

(视频)MATLAB和Simulink赛车休息室"远程控制赛车,第1部分:使用Simulink硬件支持编程ecut”

实现CAN网络

除了模拟和算法部署之外,基于模型的设计还用于开发的其他阶段,如测试和验证以及验证。我们决定使用硬件来展示几个可以简化测试和验证过程的工作流。这意味着展示如何在驾驶测试中从汽车获取数据,以及如何将其集成到进一步的验证工作流中。显然,我们的演示是对商用车辆所需的完整编程的极大简化。真实的车辆大多由独立的模块组成,控制着发动机、变速器、ABS制动器等单独的部件。

考虑到演示对汽车工程师观众的可伸缩性和相关性,我们决定通过ECU内的CAN网络来设置数据采集。展示的支持CAN设备以及如何从Simulink连接到CAN是最有意义的。车队将经常使用这种类型的工作流来编程与CAN网络接口的车辆控制模块。使用Simulink支持的CAN设备,例如,允许设置一个数据记录器,在实时驾驶测试期间从汽车获取数据。之后,它可以在现有的模拟中通过虚拟CAN通道重新播放,以执行植物验证和其他分析。有关这些实现的详细信息以及将CAN网络集成到模拟中的更多信息,请查看下面的视频。

(视频)MATLAB和Simulink赛车休息室"远程控制赛车,第2部分:集成CAN数据到您的模拟

结论

本演示的主要目的是展示Simulink功能,这些功能可以帮助您节省开发时间,降低总体成本并提高设计的性能。在本例中,我们不再模拟,而是展示了代码生成和部署以及CAN网络的集成。确保浏览硬件支持包可用于Simulink和MATLAB,并考虑使用类似的工作流来加速和优化您的开发工作。

感谢Kvaser提供的Kvaser黑鸟V2这使得用户可以无线显示所有功能。这让学生可以驾驶汽车,并体验自调谐控制算法。

请从文件交换提交有关模型的详细信息,请务必查看这个视频汽车的。

我希望这篇文章能让你很好地理解在小到大型项目中实现基于模型的设计的优点,以及它对轻松添加或连接一些自定义电子产品的影响。我期待着您对这些工作流程的任何评论或有趣的应用程序。

——穆

|

评论

如欲留言,请点击在这里登录您的MathWorks帐户或创建一个新帐户。

Baidu
map