![]() |
图6 赛道设计界面 |
赛车也是整个仿真的基础模型之一。如图7所示,在赛车参数面板中,左边可以任意设置赛车的几何参数,右边传感器布置区支持各种传感器布置方式的设定。试驾功能可以在设计阶段对赛车的运动和传感器性能进行测试,提高了开发效率。
![]() |
图7 赛车参数界面 |
控制算法层为使用者提供了3种不同的仿真方案:SubVI、C结点以及单片机在线仿真。使用者可选择其中一个方案输入或移植自己的控制算法。
通讯层只用于单片机的在线仿真,使用CAN模块,可以使单片机与仿真系统进行即时的数据交流,从而实现动态仿真。
首先,最接近于LabVIEW编程环境的即为SubVI方案。此方案对于熟悉LabVIEW G语言编程方法的使用者来说非常简单,但将单片机的控制算法转换为子VI的程序需要一个过程。
其次,C结点方案则更适合于采用C语言编程的使用者们,其程序直接用C语言编写,用Visual Studio IDE将其编译为dll文件,系统在仿真时会自动调用该dll,从而实现与SubVI一样的控制和反馈。
最后,利用CAN或串口模块,系统可以直接与单片机进行直接通讯,并实现在线仿真。单片机方面只需要在其CAN接口或串口即时地传送其控制量,而Plastid则通过模块得到这些量,并传送反馈量给单片机。
动态仿真环境层基于赛车、赛道模型以及控制算法所输出的控制信号(电机控制、转向控制及车速信号等),计算出车的行走路线,并即时地将数据传回控制算法层(其计算周期可调)。
在比赛仿真界面中,通过调用控制算法、赛道、赛车,可以在仿真内核上进行仿真运算(对应调用各个文件)。如图8,界面上实时显示车速、前轮转角等参量的变化。仿真后,可以将仿真过程保存,以供回放时调用。
![]() |
图8 比赛仿真界面 |
凭借LabVIEW软件的优势,系统可以方便地将仿真过程中的各种变量记录下来,特别是一些实际试验时无法测量的量,保存于文件中。在回放模式中,用户可以调用这些文件,对其仿真结果进行后期分析和处理,从而可以更准确地发现问题,指导赛车设置和控制算法的优化。
成果
通过测试和对比,Plastid智能车仿真平台可以有效地仿真出赛车的实际行驶路线以及直道波动、弯道超调、弯道回转以及交替弯道等现象,具有相当高的仿真精度。
此外,基于LabVIEW的本仿真平台还作为本次智能车大赛的官方软件,与赛车一起配套发布,给其他参赛者们提供了帮助和服务。我们给参赛队提供多次现场培训以及网上在线答疑,使他们能够迅速掌握软件的使用。凭借出色的创意和较高的实用性,Plastid仿真平台在今年清华大学第二届NI杯虚拟仪器设计大赛中获得第一名和最佳创新奖。在清华大学第二十三届"挑战杯"学生课外学术科技作品竞赛中获得了一等奖的殊荣。
综上所述,本仿真平台是在LabVIEW图形化编程环境下开发完成的,并将做不断的优化和改进,为广大参赛队伍更好地完成开发任务而服务。




【