一种地下矿用铰接车的驾驶模拟系统转让专利

申请号 : CN201310368624.4

文献号 : CN103413473B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 孟宇刘立豆风铅刘雪伟杨珏靳添絮金纯

申请人 : 北京科技大学

摘要 :

本发明提出了一种地下矿用铰接车的驾驶模拟系统,其包括地下矿用铰接车运动控制模型,可视化数据模型,视景仿真引擎,辅助驾驶单元,声音仿真引擎,显示终端,音频输出终端及虚拟驾驶单元,这些模型的建立能够真实模拟铰接车在地下的行驶过程,驾驶员通过虚拟驾驶单元来进行驾驶模拟,能够模拟地下巷道环境和地下矿用铰接车,为地下矿用铰接车智能控制技术提供良好的平台。本发明对照实车设计了模拟驾驶操作台,便于驾驶员进行驾驶操作,使驾驶员的感受更加真实。大大降低用真车来进行实验的成本,有效减少地下危险驾驶环境下对驾驶员的危害。

权利要求 :

1.一种地下矿用铰接车的驾驶模拟系统,其特征在于,该系统包括:地下矿用铰接车运动控制模型,可视化数据模型,视景仿真引擎,辅助驾驶单元,声音仿真引擎,虚拟驾驶单元;

所述辅助驾驶单元能够在虚拟环境中进行地下铰接车的智能辅助驾驶,通过光线投射技术在系统中按照真实激光雷达的工作原理添加虚拟激光雷达,通过虚拟激光雷达可以测量出车辆与巷道壁及障碍物的距离;所述虚拟驾驶单元包括虚拟驾驶操作台、方向盘、作业手柄、加速踏板、制动踏板、显示屏及音响;其中,地下矿用铰接车运动控制模型采用如下步骤建立:设矿车中央铰接点设为H点,前桥中点为Pf(x1,y1),前桥中点与中央铰接点H的距离为l1,车速为vf;后桥中点为Pr(x2,y2)点,后桥中点与中央铰接点的距离为l2,车速为vr,前车体横摆角速度为ω1,转向半径为r1,后车体横摆角速度为ω2,转向半径为r2,前车体的航向角为θ1,后车体的航向角为θ2,铰接角为γ,设前桥中点位姿状态向量st=T[x1(t)y1(t)θ1(t)]代表前车体在t时刻的位置及航向角,则t+1时刻的前桥位姿状态向T量St+1=[x1(t+1)y1(t+1)θ1(t+1),用非线性离散模型来表示为当前仿真时刻前车体的速度为vf(t),铰接角转动速率为 上次仿真到本次仿真的时间间隔为Ts,得出前车体的角速度为式中 ——铰接角转动速率

前车体的航向角等于上一时刻航向角加上本次仿真的增量

θ1t=θ1t-1+ω1(t)Ts,

后车体的航向角等于前车体航向角与铰接角之和

θ2t=θ1t+γT,

由前车体行驶速度和航向角得出车辆前桥中点在t时刻的世界坐标为:根据几何关系,求得t时刻后桥中点坐标

货箱的举升是匀速的,由货箱的控制参数求得ω3的值,从而得到举升角度θ3,控制输入量C值为0时货箱下降,当C值为1时货箱举升,货箱的举升角度范围为0至60度,货箱的举升或降落速度为:在t时刻货箱的举升角度为:

2.根据权利要求1所述的系统,其特征在于,可视化数据模型包括铰接车的三维模型、地下巷道的三维模型及交通标识。

3.根据权利要求1所述的系统,其特征在于,所述视景仿真引擎利用计算机图形图像技术生成车辆驾驶过程中驾驶员所看到的地下虚拟环境。

4.根据权利要求1所述的系统,其特征在于,所述声音仿真引擎能够制造不同效果的声音。

说明书 :

一种地下矿用铰接车的驾驶模拟系统

技术领域

[0001] 本发明涉及一种驾驶模拟系统,特别是一种地下矿用铰接车的驾驶模拟系统。

背景技术

[0002] 在地下采矿行业,无轨运输车辆的爬坡能力和运输效率远远高于有轨运输车辆,随着我国矿业水平的进步,采用无轨运输车辆已经成为地下矿山行业的发展趋势,提高地下车辆智能化控制水平是进一步提高矿山车辆运输效率的重要技术发展方向,但现今对车辆智能驾驶技术的研究一般要对真实车辆的改装或配置,在公路或特定环境中进行试验,现实因素是实车实验成本高,周期长并且危险性大,并且实验过程不可再现。使用车辆驾驶模拟在虚拟场景中进行车辆的进行智能化研究是一个新的研究方向,在虚拟的环境下对车辆的驾驶行为及相关因素进行预演,确保车辆能智能化的安全行驶。
[0003] 现有技术中,驾驶模拟系统也较多,文献1【《基于OGRE和ODE的驾驶模拟系统的设计与实现》】(交通信息与安全,2006,1(24):101)报道了一种基于OGRE和ODE的驾驶模拟系统设计方法,通过OGRE来渲染出车辆的驾驶环境,以ODE为工具结合汽车动力学模型模拟车辆运动,实现了一个可通过外围输入设备操作的交互式驾驶模拟系统,主要用于汽车驾驶员的驾驶训练。中国实用新型专利ZL201220293043.X,公开了一种新型模拟驾驶系统,通过驾驶控制器控制模拟车辆行驶,通过动感平台使驾驶员感觉到路面状况,通过模拟视频眼镜呈现模拟驾驶环境,该系统主要用于车辆驾驶员的培训。
[0004] 上述现有驾驶模拟系统的特点是,仅能模拟地面环境下的车辆行驶环境,不能模拟地下矿用车辆工作的巷道环境;仅能模拟刚性车体的乘用车辆,不能模拟铰接式车体的地下矿用车辆;仅能用于驾驶员的训练与培训,无法加入辅助驾驶单元,不具备验证自主行驶策略的功能。

发明内容

[0005] 本发明涉及一种地下矿用铰接车的驾驶模拟系统,带有辅助驾驶单元,能够模拟地下巷道环境和地下矿用铰接车的驾驶模拟系统,为地下矿用铰接车智能控制技术提供良好的平台。其包括:
[0006] (1)虚拟驾驶单元包括虚拟驾驶操作台、方向盘、作业手柄、加速踏板、制动踏板、显示屏及音响等,这些设备构成系统的操控机构。
[0007] (2)地下铰接车运动控制模型,可视化数据模型,视景仿真引擎,辅助驾驶单元,地下铰接车声音仿真,虚拟驾驶单元,这些模型的建立能够真实模拟铰接车在地下的行驶过程,驾驶员通过外虚拟驾驶单元来进行驾驶模拟。
[0008] (3)车辆的动力学模型是系统中很关键的部分,根据铰接式车辆的特点,建立了三自由度的动力学及运动学模型。动力学模型直接使用设备输入的数据,通过实时计算得到车辆的发动机转速和位置姿态等数据。
[0009] (4)可视化数据模型包括铰接车的三维模型、地下巷道的三维模型及交通标识等。
[0010] (5)视景仿真引擎,利用计算机图形图像技术生成车辆驾驶过程中驾驶员所看到的地下虚拟环境,如巷道,交通标识及灯光等。
[0011] (6)辅助驾驶单元,能够在虚拟环境中进行地下铰接车的智能辅助驾驶,通过光线投射技术在系统中按照真实激光雷达的工作原理添加虚拟激光雷达,通过虚拟激光雷达可以测量出车辆与巷道壁及障碍物的距离。通过相应的辅助驾驶策略,当车辆行驶时出现与巷道壁距离过近或巷道中有异物出现等危险驾驶情况的时候系统会发出警告。
[0012] (7)地下声音仿真引擎,制造不同效果的声音如发动机声,巷道内作业机械噪声等。
[0013] 本系统应用开源声音引擎,为了使声音效果更逼真,系统使用立体声音效。
[0014] 本系统中使用简化的车辆动力学及运动控制模型,并作离散化处理,在计算机图形渲染的两帧之间CPU空闲时间进行车辆运动控制的相关计算,运动控制模型采用如下步骤建立:
[0015] 设矿车中央铰接点设为H点,前桥中点为Pf(x1,y1),该点与中央铰接点H的距离为l1,车速为vf;后桥中点为Pr(x2,y2)点,该点与中央铰接点的距离为l2,车速为vr,前车体横摆角速度为ω1,转向半径为r1,后车体横摆角速度为ω2,转向半径为r2,前车体的航向角为θ1,后车体的航向角为θ2,铰接角为γ,设前桥中点位姿状态向量St=[x1(t)Ty1(t)θ1(t)]代表前车体在t时刻的位置及航向角,则t+1时刻的前桥位姿状态向量T
St+1=[x1(t+1)y1(t+1)θ1t+1)],用非线性离散模型来表示为
[0016]
[0017] 当前仿真时刻前车体的速度为vf(t),铰接角转动速率为 上次仿真到本次仿真的时间间隔为Ts,得出前车体的角速度为
[0018] 式中 —铰接角转动速率
[0019] ,
[0020] 前车体的航向角等于上一时刻航向角加上本次仿真的增量
[0021] θ1t=θ1t-1+ω1(t)Ts,
[0022] 后车体的航向角等于前车体航向角与铰接角之和
[0023] θ2t=θ1+γt,
[0024] 由前车体行驶速度和航向角得出车辆前桥中点在t时刻的世界坐标为:
[0025]
[0026] 根据几何关系,求得t时刻后桥中点坐标
[0027]
[0028] 货箱的举升是匀速的,由货箱的控制参数求得ω3的值,从而得到举升角度θ3,控制输入量C值为0时货箱下降,当C值为1时货箱举升,货箱的举升角度范围为0至60度,货箱的举升或降落速度为:
[0029]
[0030] 在t时刻货箱的举升角度为:
[0031]
[0032] 本发明和现有技术相比所具有的有益效果在于
[0033] (1)本发明对照实车设计了模拟驾驶操作台,便于驾驶员进行驾驶操作,使驾驶员的感受更加真实。
[0034] (2)本发明针对地下矿用铰接车建立了车辆运动学和动力学模型,能够真实模拟铰接车体的行驶。
[0035] (3)本发明能够真实模拟出地下巷道环境,为地下车辆的驾驶模拟提供了环境支持。
[0036] (4)本发明有辅助驾驶单元,能够模拟智能车辆的驾驶,为地下矿车智能控制技术研究提供良好的平台。
[0037] (5)本发明能大大降低用真车来进行实验的成本,有效减少地下危险驾驶环境下对驾驶员的危害。

附图说明

[0038] 图1为虚拟驾驶单元示意图。
[0039] 图2为铰接车体转向图。
[0040] 图3为数据交互图。
[0041] 图4车辆坐标系图。
[0042] 图5为车辆三维模型图。
[0043] 图6为巷道整体结构图。
[0044] 图7为巷道内部贴图。
[0045] 图8为图形仿真引擎启动流程图。
[0046] 图9为驾驶模拟系统的场景图。
[0047] 图10为摄像机视截体图。
[0048] 图11为驾驶模拟系统第一人称及第三人称视角图。
[0049] 图12为帧监听器类的结构图。
[0050] 图13为激光雷达扫描范围。
[0051] 图14为虚拟激光雷达测试图。
[0052] 图15为车辆靠近巷道左侧扫描图。
[0053] 图16为车辆靠近巷道左侧扫描虚拟激光雷达扫描数据图。
[0054] 图17为车辆靠近巷道右侧扫描虚拟激光雷达扫描数据图。
[0055] 图18危险驾驶行为提示。

具体实施方式

[0056] 1)以下结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
[0057] 2)地下矿用铰接车驾驶模拟系统包括地下矿用铰接车运动控制模型,可视化数据模型,视景仿真引擎,辅助驾驶单元,声音仿真引擎,显示终端,音频输出终端及虚拟驾驶单元,这些模型的建立能够真实模拟铰接车在地下的行驶过程,驾驶员通过虚拟驾驶单元来进行驾驶模拟。
[0058] 3)本地下矿车驾驶模拟系统的硬件设备由虚拟驾驶操作台、高性能计算机、显示终端及音频输出终端等构成。
[0059] 4)虚拟驾驶操作台包括显示终端支架和驾驶台,显示终端支架用于支撑三块显示屏,驾驶员通过三块显示屏能全方位感受图像化的地下巷道的驾驶环境和铰接车的行驶状态。驾驶台按照实车的结构尺寸设计制作,包括驾驶员座椅、方向盘、作业手柄、加速踏板及制动踏板,驾驶员能在上面进行和实车相同的驾驶操作,如附图1所示。
[0060] 5)地下矿车驾驶模拟系统中,方向盘装有旋转编码器,输出脉冲信号,用来记录其转过的角度;加速踏板和制动踏板输出模拟电压信号,根据踏板的行程输出相应数值的电压信号,来控制加减速的大小;作业手柄输出数字电压信号,用来控制铰接车货箱的举升和下降。这些信号通过计算机主机的PCI-IO卡收集后传递给运动控制模型,运动控制模型根据当前的车辆状态及输入数据计算出车辆的下一步位置及姿态数据,将这些数据传递给视景仿真系统,由视景仿真系统完成渲染和输出,驾驶员通过显示终端和音频输出终端来直观感受车辆的行驶状态。
[0061] 6)高性能计算机要求能快速处理三维图形及动力学计算,计算机显卡支持三屏显示,以达到全方位显示的目的,音频输出终端为音箱,与计算机相联,实时输出声音仿真引擎制造的各种声音。
[0062] 7)驾驶模拟系统中的车辆动力学及运动学模型不能直接使用微分方程的形式,因为计算机解微分方程会占用大量的CPU时间,进而影响系统的响应速度。所以本系统中使用简化的车辆动力学及运动学模型,并作离散化处理,在计算机图形渲染的两帧之间CPU空闲时间进行车辆运动控制的相关计算。
[0063] 8)地下矿车驾驶模拟系统中,运动控制模型直接接收系统采集的操控机构的数据xin,经过运动控制模型的计算输出相应的运动学参数xf、xr和xd给视景仿真系统。系统数据流见附图2。
[0064] 9)本系统中用到的操控机构的输入控制数据可以表示为
[0065] 10)式中,φa、φb——加速踏板及制动踏板位置
[0066] 11)θ、——方向盘转角及转动速率
[0067] 12)C——货箱举升控制,C=0,1
[0068] 13)G——挡位,G=1,2,3
[0069] 14)图形引擎中的坐标系为与SAE标准坐标系不同,OGRE中坐标系以屏幕为参考,水平向右为X轴正方向,垂直向上为Y轴正方向,垂直于屏幕向外为Z轴正方向,见附图3。
[0070] 15)以OGRE中的坐标系为基准建立模型坐标系,驾驶模拟系统采用三自由度模型,既不考虑车辆的侧倾和俯仰动作,只有横摆转动,并且假设车辆在垂直方向没有平动。
[0071] 16)将模型分为前车体、后车架、货箱及车轮等几个部分分别处理,前后车架的运动学控制参数xf和xr可分别表示为
[0072] 17)式中θ1、θ2——前车体及后车体的横摆角
[0073] 18)ω1、ω2——前车体及后车体的横摆角速度
[0074] 19) ——前车体及后车体的横摆角加速度
[0075] 20)vfx、vfz——前车体前桥中点位置的横向和纵向速度
[0076] 21)vrx、vrz——后车体后桥中点位置的横向和纵向速度
[0077] 22)afx、afz——前车体前桥中点位置的横向和纵向加速度
[0078] 23)arx、arz——后车体后桥中点位置的横向和纵向速度
[0079] 24)货箱与后车架通过铰链连接,则货箱的运动学参数与后车架基本相同,只是增加了绕Z轴的角自由度,则货箱的运动学控制参数为
[0080] 25)式中θ3、ω3——货箱举升角度及角速度
[0081] 26)在系统中,三维图形的渲染消耗了大部分的CPU时间,动力学计算要在渲染两帧图像的间隙进行。为了使模拟效果尽可能接近于真实,同时又兼具实时性,针对铰接式车辆的动力学特性进行简化,建立在世界坐标下的非线性离散化三自由度(3-DOF)模型。
[0082] 27)本实施例中的铰接车动力学模型以某35吨电传动铰接式自卸车建立。
[0083] 28)车辆行驶过程中速度的数学模型为am=Ft-Ff-Fi-Fw
[0084] 29)式中,m——整车质量
[0085] 30)a——车辆行驶加速度
[0086] 31)Ft——车辆驱动力
[0087] 32)Ff——车辆滚动阻力
[0088] 33)Fi——坡度阻力
[0089] 34)Fw——车辆所受空气阻力
[0090] 35)该车辆设计最高时速为25Km/h,空气阻力Fw可以忽略。由于推导的是车辆在二维平面上的模型,故忽略坡度阻力Fi。汽车在行驶过程中还要考虑制动力Fb所产生的影响,综上所述,汽车行驶速度模型为ma=Ft-Ff-Fb
[0091] 36)发动机模型使用三次多项式拟合的方式得到稳态转矩与转速之间的关系为2 3
[0092] 37)Me=a0+a1ne+a2ne+a3ne
[0093] 38)式中ai——拟合系数,i=0,1,2,3
[0094] 39)Me——发动机转矩
[0095] 40)ne——发动机转速
[0096] 41)发动机转矩与牵引力之间的关系可以表示为
[0097] 42)式中i0——主传动比
[0098] 43)ig——变速器传动比
[0099] 44)Rw——车轮半径
[0100] 45)ηT——传动系机械效率
[0101] 46)假设制动踏板的行程与制动力之间的关系为线性的
[0102] 47)式中φb——制动踏板行程;φbmax——制动踏板最大行程
[0103] 48)Fc——最大制动力
[0104] 49)于是车辆在t时刻的加速度可以求得为
[0105] 50)假设车辆的加速度在两次仿真内保持不变,可求得车辆在t时刻行驶速度为[0106] Vt=Vt-1+atTs
[0107] 51)式中Ts——两次仿真计算时间差值
[0108] 52)铰接车的运动学模型建立如下,如附图4所示,设矿车中央铰接点设为H点,前桥中点为Pf(x1,y1),该点与中央铰接点H的距离为l1,车速为vf;后桥中点为Pr(x2,y2)点,该点与中央铰接点的距离为l2,车速为vr。
[0109] 53)前车体横摆角速度为ω1,转向半径为r1,后车体横摆角速度为ω2,转向半径为r2。前车体的航向角为θ1,后车体的航向角为θ2,铰接角为γ。设前桥中点位姿状态向量St=[x1(t)y1(t)θ1(t)T,代表前车体在t时刻的位置及航向角。则t+1时刻的前桥位姿状态向量St+1=[x1(t+1)y1(t+1)θ1(t+1)]r,可以用非线性离散模型来表示为[0110]
[0111] 54)当前仿真时刻前车体的速度为vf(t),铰接角转动速率为 ,上次仿真到本次仿真的时间间隔为Ts,可得前车体的角速度为
[0112] 55)式中 ——铰接角转动速率
[0113] 56)
[0114] 57)前车体的航向角等于上一时刻航向角加上本次仿真的增量(θ1t=θ1,t-1+ω1(t)Ts,
[0115] 58)后车体的航向角等于前车体航向角与铰接角之和θ2t=θ1t+γt,[0116] 59)由前车体行驶速度和航向角可以得出车辆前桥中点在t时刻的世界坐标为[0117]
[0118] 60)根据几何关系,可以求得t时刻后桥中点坐标
[0119]
[0120] 61)货箱的举升认为是匀速的,则货箱的控制参数xd中需要求得ω3的值从而得到举升角度θ3。控制输入量C值为0时货箱下降,当C值为1时货箱举升。货箱的举升角度范围为0至60度,货箱举升时间为Tu=10.5s,货箱下降时间为Td=11.2s,则货箱的举升或降落速度为:
[0121] 62)于是在t时刻货箱的举升角度为:
[0122] 63)铰接车的运动控制模型建好后,开始建立可视化数据模型。
[0123] 64)实施例中的车辆模型采用SolidWorks建立,巷道模型采用Google SketchUp建立的,图形引擎为GORE,声音引擎为FMOD。
[0124] 65)为了简化模型并同时将模型导出,使用三维模型减面工具Polygon Cruncher来简化模型,以得更好的程序运行效率。
[0125] 66)为了能够灵活的控制地下矿车,本文将车辆的三维模型拆分为前车体、后车架、货箱及车轮四部分,其中四个车轮共用同一个模型。由于模型导入后没有任何的纹理贴图信息,所以还要在SketchUp中为模型添加相应的贴图材质,如驾驶舱玻璃,车体黄色油漆及轮胎材质。铰接车三维模型见附图5。
[0126] 67)巷道的三维模型直接使用SketchUp来建模,建模时采用先画巷道截面,之后采用路径跟随拉伸的方式建立巷道模型。模型建立好后使用岩石材质作为贴图覆盖整个巷道内壁,模型见附图6、7。
[0127] 68)可视化数据模型建立好后,开始用OGRE图形引擎来进行图形渲染。
[0128] 69)图形引擎启动流程见附图8,定义了渲染系统的所有设置,包括如分辨率、色彩深度、是否全屏显示,使用DirectX还是OPENGL进行底层渲染等等。
[0129] 70)接下来是创建具体的渲染系统,然后创建场景管理器,负责管理场景中的模型。创建视点,用来完成车辆驾驶视角的变换,实现第一人称视角驾驶及第三人称视角驾驶。创建输入监听器用来监听输入的数据。创建帧监听器,把帧监听器加入根文件,然后通过每帧的渲染队列方法来进行各种运算及逻辑控制。
[0130] 71)OGRE图形引擎以场景图形式来管理场景中所有可渲染的物体。OGRE由场景管理器类统一管理场景图。
[0131] 72)附图9展示了驾驶模拟系统的场景图结构,场景管理器直接挂载在OGRE系统的根节点上,场景管理器下面分别挂载了,静态物体节点、前车体节点、后车架节点、货箱节点、车轮节点及摄像机。静态物体节点下面挂载标志牌和障碍物等静态实体;前车体节点挂载前车身实体及前车头灯光;后车架节点挂载后车架实体;货箱节点挂载货箱实体;车轮节点挂载车轮实体。
[0132] 73)摄像机作为一个特殊的节点也被挂载到了场景管理器上,摄像机的主要工作是截取虚拟场景中的一部分图形来完成渲染。摄像机除朝向外还有两个重要参数,近截取距离和远截取距离,两个距离分别决定了近截面及远截面距观察点的距离,通过两个截面构成一个六面的视截体,也就是说虚拟场景中并不是所有的元素都会被渲染,而是通过摄像机的视截体(见附图10)来决定,只有在视截体中的元素才会被渲染。
[0133] 74)OGRE采用Frustum类来模拟人眼的视觉效果,在接口上按照用户的使用习惯,方便用户转换模型坐标,而在内部实现中,通过图形学的矩阵换算,完成人体视觉和计算机视觉之间的数学转换,达到一个比较好的过渡作用。
[0134] 75)驾驶模拟器的运动控制方式完全按照实际车辆的控制方式进行,摄像机观察点与车辆的位置绑定在一起,所以操作摄像机视点的运动相需根据车辆的实时状态来进行操纵。对车辆的运动控制,是基于动力学和运动学模型进行实时计算得出的位置及姿态结果。计算机中仿真是基于离散时间点的,两次循环之间的时间间隔很小,假设在这段时间内物体的受力情况不变。在车辆的位置姿态更新后获取相关的数据,然后通过更新摄像机的位置及朝向参数来完成摄像机的跟随效果。
[0135] 76)如附图11车辆在正常驾驶时需要使用第一人称视角来运行,也就是以正常驾驶员的视角,从驾驶室中向前看,而作为第三方监视时,可以使用第三人称视角,从车外后上方向车辆行驶方向监视。
[0136] 77)为了实现以前车体为参考点的视角跟随,在每一次动力学模型计算后,开始计算摄像机的跟随位置。
[0137] 78)获得的前车体节点的坐标是模型的几何中心,所以通过一个固定距离的平移可以获得摄像机应跟随点的位置。根据本系统中模型的大小,若要使观察点位于驾驶室内需要向Z轴负方向移动1个单位距离,向X轴正方向移动1.2个单位距离,向Y轴正方向移动1.2个单位距离。在第一人称视角模式下可以在观察点的位置直接前移一定距离。第三人称视角的与第一人称视角类似。
[0138] 79)动力学计算与OGRE融合,OGRE系统以类库的形式提供给用户,使用OGRE需要根据实际需求编写程序。OGRE开始时首先加载配置文件,设置资源路径,之后分别创建场景管理器、摄像机及视口。之后要在OGRE的主循环中注册帧监听器,实施例中了继承OGRE的帧监听器类实现此功能。
[0139] 80)帧 监 听 器 提 供 了 处 理 帧 渲 染 前(FrameStarted)帧 渲 染 中(FrameRenderingQueued)及帧渲染后(FrameEnded)的事件的方法,调用渲染前事件处理方法后,OGRE开始更新所有渲染目标,由于渲染主要由CPU来完成,这时的CPU并没有充分利用,而车辆的动力学以及运动学运算(DynamicSimulation)需要由CPU来完成,于是将动力学及运动学的相关计算都放在紧随其后执行的帧渲染中处理方法内运行。
[0140] 81)OGRE没有提供读取外设的接口,本系统使用OIS读取输入数据。首先在OGRE的帧监听器中创建OIS设备管理器,将OIS设定为非缓冲输入模式。之后通过UnbufferedInput来处理输入数据,将其转换为动力学仿真所需的数据格式。OGRE的帧监听器提供了帧事件实体来存放与帧事件有关的时间信息,其中包括帧时间间隔,该数据就是动力学计算中用的时间间隔到Ts,附图12表示了帧监听器类的结构。
[0141] 82)声音仿真引擎用来制造不同效果的声音如发动机声和巷道内作业机械噪声等。声音播放需要相应的事件来触发,而且本系统中使用了FMOD的3D音效来实现声音的3D效果,通过事件来更新音源位置。
[0142] 83)辅助驾驶单元,能够在虚拟环境中进行地下铰接车的智能辅助驾驶,通过光线投射技术在系统中按照真实激光雷达的工作原理添加虚拟激光雷达,通过虚拟激光雷达可以测量出车辆与巷道壁及障碍物的距离,见附图13,通过相应的辅助驾驶策略,当车辆行驶时出现与巷道壁距离过近或巷道中有异物出现等危险驾驶情况的时候系统会发出警告。
[0143] 84)光线投射是从空间中某点向设定好方向上发出一条射线,当射线与场景中的物体相交时返回物体的名称及射线与该物体的AABB包围盒交点的坐标。只有与包围盒的坐标无法满足要求,虚拟激光雷达要精确到能够测量与模型网格三角面的交点。于是要提取出模型的顶点及索引数据,之后遍历所有三角面与射线是否有交点从而得到距离最近的一个交点。
[0144] 85)采用光线投影技术模拟激光雷达,首先利用OGRE建立一个光线投射,并设定该光线的起点及投射方向。光线的起点被设定在由前桥中点向X轴正向平移3.2m,如图13中扇形的圆心位置。光线投射在XZ平面上,方向由-5°至185°扫描。每次扫描首先判断是否有物体与光线相交,如果有相交的物体,提取该物体的顶点及顶点索引数据,遍历所有的面片是否与光线相交,并求出最近的交点。
[0145] 86)图14、15为驾驶模拟系统虚拟激光雷达动态数据采集效果图,虚拟激光雷达扫描精度定为1°,扫描频率为25Hz,扫描范围从-5°至185°,从车辆的右侧开始扫描到左侧结束,将虚拟激光可视化处理,从激光发出点到检测到的交点绘制一条白色线段。
[0146] 87)将实验得到的数据以扫描角度为横轴,距离为纵轴可以得到图16、17。从图16中可以看出,扫描角度车辆在-5°到75°之间距离数值较小,从而可以判断车辆靠右行驶,图17与图16相反,在110°至185°之间距离数值较小,从而可以判断车辆靠左行驶。
[0147] 88)辅助驾驶单元有危险驾驶预警功能。当虚拟激光雷达在任意方向上检测到有距离小于1.5m的障碍时系统会给出警示。如图18所示,当车辆距离右侧巷道过近,距离不足1.5m时,系统会在右上角提示司机“警告:距离右侧不足1.5m”。同样的情况,如果车辆距离左侧巷道过近,距离不足1.5m时,系统会在右上角提示司机“警告:距离左侧不足1.5m”。
[0148] 89)以上所述仅是本发明优选实施方式,应当指出,对于本技术领域的普通技术员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变型,这些改进和变型也应该视为本发明的保护范围。