技术分享 | 使用TSMaster从零打造车辆控制器HIL实时仿真系列3-脱离RT的车辆模型的实时仿真

描述

 

 

HIL实时仿真系列3

控制器

今天我们基于TSMaster HIL实时仿真系列第三章节。在上一章节我们介绍了如何自动生成ECU的嵌入式代码,并且集成到于TSMaster的实时运行环境中。从这一章节开始,我们继续介绍如何与我们的ECU算法进行数据层面的交互。

 

脱离RT的实时仿真

不论我们的ABS算法是处在TSMaster的小程序中,还是处在真实的ECU硬件中,它的运行必然都需要输入外部环境给它提供的轮速等信号,它的输出也必然要施加到外部的环境中,这里的外部环境就是指整车以及其他的控制器。很明显,我们需要一个整车模型来参与仿真的过程,通常意义上,这个整车模型就是CarSim的RT版本。
 

 

基于第一章节的实时性探讨,我们同样可以使用非RT版本的CarSim,而仅仅通过实时调用CarSim相关的API函数,将整车模型搬到个人电脑上来运行。

 

Carsim Controller

在这个例子中用到了我们专门为CarSim打造的CarSim Controller,它相当于CarSim的RT版本,具有在个人电脑上高精度的仿真车辆模型的能力。
 

 

控制器

 

我们首先通过CarSim Controller打开CarSim的自动化实例,选定CarSim中需要运行的车辆模型配置,在此我们同样使用的是对开路面,可以看到左侧是高附右侧是低附的洒水瓷砖。

 

控制器

 

我们再切换回CarSim Controller中,点击运行按钮,就可以实时的看到仿真的运行过程了。

 

控制器

 

当前我们看到车辆正在缓慢的前进,这是由于车辆处于怠速状态的缘故。我们切换到输入接口表中在这里可以浏览CarSim的流量接口变量,这相当于Simulink中的CarSim’s function inputs。我们过滤一下已经分配的接口变量,就可以看到我们预先配置的油门以及自动等输入。我们可以通过界面也可以通过API来实时控制这个车辆模型。

 

控制器

 

如果我们想要停止给油门,并且给左前轮施加自动压力,例如15兆帕的自动压力,切换到视频中可以看到左前轮抱死,而其他车轮还在正常的滚动,以上便是车辆动力学的手动控制功能。

 

TSMaster对模型的自动控制

我们当然可以通过TSMaster对车辆模型施加可重现的自动控制,这就需要TSMaster加载一个CarSim Controller的客户端,CarSim engine小程序库。

 

控制器

 

我们点开小程序库,可以看到CarSim engine的小程序库有一系列自动控制的API函数,他们负责完成CarSim车辆各类参数的自动修改、动力学模型实时控制等等一些列无人值守的自动化命令。从而实现仅仅使用个人电脑就可以执行CarSim RT等实时仿真的功能。而基于个人电脑直接运行HIL的好处是显而易见的,各类参数的配置和部署都在本地,对比传统HIL的部署可以说是瞬间完成。

 

而基于TSMaster的软件平台,我们就可以轻易的干预ECU算法中的任意变量。需要说明的是CarSim Controller仅仅是将一个动力学软件CarSim做到实时控制的千万种方法中的一种。基于此原理,同样可以实现Carmaker等等其他动力学软件的实时控制。(具体操作步骤详情可直接观看我们的B站视频哦~)

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分