APP下载

基于Unity3D 的驾驶仿真系统研究与实现

2022-07-29曹文冠姚启明李贤钰姚元森

智能计算机与应用 2022年8期
关键词:踏板阻力建模

曹文冠,姚启明,李贤钰,姚元森

(1 同济大学 建筑设计研究院(集团)有限公司,上海 200092;2 上海智慧交通安全驾驶工程技术研究中心,上海 200000;3 上海未青数字科技有限公司,上海 200000)

0 引言

近年来,随着中国道路交通行业的快速发展,道路交通安全问题也日益显著。提升驾驶技能,规范驾驶行为,是解决道路交通安全问题的有效途径。然而,传统的驾培机构对驾驶员的驾驶技能提升和驾驶行为规范方面,存在成本大、效率低、效果差的局限性。因此,利用计算机虚拟现实仿真技术解决上述问题,引起了国内相关研究人员的广泛关注[3-6]。

驾驶仿真系统综合应用了人工智能、图像图形学与三维建模等领域的相关技术,通过计算机仿真计算,真实再现现实世界的不同场景,并辅以声音、动作等元素,使驾驶人通过驾驶模拟器,身临其境地体验“真实”驾驶过程。本文通过Unity3D 虚拟现实开发引擎,开发了一款高还原度、兼容性强、应用广泛的驾驶模拟仿真软件,为后续研究如何缓解交通压力、提升驾驶技能、规范驾驶行为与自动驾驶仿真测试提供较为真实的驾驶仿真平台。

1 系统整体架构

驾驶仿真系统由驾驶模拟器、车辆仿真系统与视景仿真系统等组成,整体架构如图1 所示。图1中,驾驶模拟器包括方向盘、加速踏板、刹车踏板、换挡拨片以及显示器和音响设备,车辆仿真系统包括车辆三维模型和车辆动力学模型,视景仿真系统包括道路模块、地形模块、建筑物模块和天气控制模块。

图1 系统整体架构图Fig.1 Overall system architecture diagram

2 系统设计与实现

2.1 视景仿真系统设计

视景仿真系统中,场景的逼真程度是实现沉浸感最重要的一个环节。为了使驾驶员感到身临其境的驾驶体验,场景环境的模型建立、贴图的制作、画面渲染都要有一定的逼真程度。完整的虚拟驾驶视景仿真系统由道路模块、地形模块、建筑物模块和天气管理模块四大模块组成,如图2 所示。只有将各模块加以有序组合,才能实时响应驾驶人的操控信息,并将实时渲染的画面呈现出来。这里,对各组成模块的功能设计拟展开阐释如下。

图2 视景仿真系统设计Fig.2 Design of visual simulation system

(1)道路模块。为了更加精细真实地表达出道路的几何线性、横纵坡度,本文利用专业的工程设计软件BIM(或犀牛),对道路的几何线性和横纵坡度进行建模,此后在3Dmax 中对路面纹理和交通标识进行贴图,从而达到逼真的建模效果,在降低模型误差的同时提升驾驶员的沉浸感。

(2)地形模块。地形模块是视景仿真系统的基础,其高程精度直接影响道路模块与建筑物模块的精度。故本文利用地面高程数据,在工业设计软件中生成地形曲面后,将其导入至Unity3D 中,利用地形转换插件将曲面转换成地形,再使用Unity3D 地形插件中的花草、树木、石块等细节模型对整个地形模块进行美化。

(3)建筑物模块。建筑物模块占据了驾驶人的大部分视野,建筑物的真实度将直接影响驾驶沉浸感。因此,本文选择专业的三维建模软件3Dmax,对建筑物进行建模与贴图,再将模型导入Uinty3D 中,并对该模型的光照效果进行细化,以达到真实的效果。

(4)天气控制模块。天气控制模块在虚拟环境中模拟出各种天气状况,如白天、夜晚、雨、雪、雾等。一方面,通过Unity3D 中的点光源、平行光源、聚光灯光源和区域光源四种光源单一或者组合使用,模拟出真实的光照效果;另一方面,通过Unity3D 中的粒子系统,模拟出雨、雪、雾等天气。粒子系统由数量可控、生命周期可控的微小粒子图元组成,并具有形状、位置、颜色、速度、运动方向等属性,可以通过对这些属性的调节,实现雨滴、雪花和空气中肉眼可见的微粒等物质,并能赋予其速度和运动方向,从而实现不同的天气展示。

2.2 车辆仿真系统设计

2.2.1 车辆功能模拟系统

图上的标号3就是最需要硬度的轴尖。看到随着轴尖的深度变化的硬度变化,在0.003毫米也就是3微米的地方,硬度能达到接近1000HV。一个钟表制造商,能在材料科学和机械设计上做出如此重大的发明十分令人敬佩。非常有意思的是这件专利只在瑞士和中国申请了专利,而且在中国申请的是实用新型专利,从中充分体现了中国市场对于瑞士钟表的重要性,为了适应2013年在中国的发布紧急部署专利保护。

2.2.1.1 车辆三维模型

在将三维建模软件中创建的车辆模型导入Unity3D 之前,必须保证车辆坐标系中的轴指向车辆正前方,轴指向正右方,轴指向正上方,以减少不必要的数据转换过程。模型导入后,将Unity3D 中的车轮碰撞体添加到三维模型的轮胎中。车轮碰撞体可以模拟真实车轮的转动,并可控制车辆的移动。在车轮碰撞体属性栏中可以调节悬架高度、阻尼、车轮最大转速等参数。除此之外,三维模型还要添加Rigidbody 组件,赋予车辆物理属性,包括质量、重力等。车辆三维模型如图3 所示。

图3 车辆三维模型Fig.3 3D model of vehicles

2.2.1.2 仪表与数据

本文仪表系统采用Unity3D 中的UI 界面功能和C#编程制作。主要包括速度仪表、发动机转速仪表、车辆挡位、辅助驾驶功能指示灯,以及车辆状态指示灯等部分。仪表仿真效果如图4 所示。

图4 仪表与数据显示Fig.4 Instrumentation and data display

2.2.1.3 音效模拟

音效是驾驶仿真系统开发中必不可少的元素。一个真实的驾驶体验,不仅包括良好的视觉体验,对听觉体验的营造也尤为重要。本文在传统刹车音效、马达音效的基础上,根据不同的前进踏板开度、制动踏板开度,线性调整音效的音响强度,使其具有真实的听觉体验。

2.2.2 车辆动力学模型

实现真实的模拟驾驶,不仅需要模拟出车辆的各种功能,对车辆动力系统的仿真也提出了更高的要求。本文以两轴四轮乘用车辆为例,根据汽车系统动力学知识,分析车辆的受力,主要包括:驱动力、滚动阻力、空气阻力、加速阻力和坡度阻力等。车辆的合力决定了车辆的运动状态,如图5 所示。

图5 车辆动力学模型Fig.5 Vehicles dynamics model

其中,为车辆的质量;为车辆速度;F为车辆驱动力;F为车辆滚动阻力; F为车辆空气阻力;F为车辆加速阻力;F为车辆坡度阻力。

这里,对各主要受力拟展开研究阐析如下。

(1)车辆驱动力F。计算公式可写为:

在Unity3D 车辆仿真过程中,可以通过前进踏板和制动踏板的开度来控制车辆运动。因此,进一步将车辆的驱动力公式修正为:

其中,C为前进踏板开度; F为式(1)计算出的最大值;C为速度修正系数。

(2)滚动阻力F。计算公式可写为:

其中,C为滚动阻力系数,为车辆重力。

(3)空气阻力F。计算公式可写为:

其中,C为空气阻力系数;为车辆的迎风面积;为空气当前的密度; V为汽车相对于空气的速度。

(4)加速阻力F。计算公式可写为:

其中,为车辆旋转质量转换系数。

(5)坡度阻力F。计算公式可写为:

其中,为路面的倾斜角度。

整理后可得:

3 系统测试与仿真效果展示

为验证驾驶系统的真实性、稳定性以及响应速度,本文使用Unity3D 发布了一个基于Windows 系统的应用实例,并对该实例展开分析。驾驶仿真效果如图6 所示。

图6 驾驶仿真效果展示Fig.6 Driving simulation effect display

为更直观地反映系统运行的实时性与稳定性,本文编写了计算系统运行实时帧率的代码,并使系统运行30 min,分析其实时帧率。系统运行实时运行帧率如图7 所示。

经过多次实验验证,并综合分析图6 和图7,证明本文所构建的车辆仿真系统与视景仿真系统能够实时耦合,加速踏板、制动踏板和方向盘功能均正常,且无滞后反应现象。

图7 系统实时运行帧率Fig.7 System real-time running frame rate

4 结束语

本文对基于Unity3D 的车辆驾驶仿真系统进行了详细的介绍与分析。通过反复试验,验证了本研究开发的系统呈现出良好的人机交互效果,同时也具有较高的真实度和稳定性。在后续的研究中,技术方面引进VR 技术或多自由度运动平台与该系统结合,对提升驾驶沉浸感具有重要的意义。理论方面可根据模拟仿真的实验数据进行分析和研究,实现低成本的缓解交通压力、提升驾驶技能、规范驾驶行为等目的。

猜你喜欢

踏板阻力建模
基于正交试验的整车驱动轮滚动阻力因素分析
物理建模在教与学实践中的应用
在经历中发现在探究中建模
Explore wild skating on nature
思维建模在连续型随机变量中的应用
某轻客车型离合踏板回位不良研究
猪猴跳伞
求距求值方程建模
钢琴踏板的基本用法
论钢琴踏板的正确使用