机车模拟器的三维声音仿真

专栏·朔黄铁路
声音仿真技术的发展
模拟器应用系统中,为了增强沉浸感,获得逼真的仿真效果,除了视觉、动觉外,听觉也是必不可少的一部分。据统计,人类从外界获取的信息中约有15%来自听觉,因此声音的实时仿真对模拟器而言具有重要意义。
模拟器的声音仿真技术是随着频谱技术、数字音频技术、音频软硬件技术的发展而不断发展的。在早期的训练模拟器中,受音频软件的局限,模拟器的声音仿真主要通过硬件功能来实现。采用模拟频率合成方法,即首先采集声音信号,然后对声音信号进行频域内的分析,得到声音的频谱特征。在仿真过程中,根据仿真环境的需要,用声音的频谱值去控制谐波发生器的频率和幅值,再采用滤波器、混频器等合成声音。这种方法能够实现简单的声音仿真,主要体现一种发声的概念,但需要大量的模拟音响电路板[1]。随着数字信号处理技术的发展,可以用数字序列描述声音信号,利用多个数字信号处理器的产生、滤波、变换、调幅、调频、延时、增强等处理手段,经数字合成得到期望的声音信号[2],即数字频
率合成方法。这种方法较上一种方法有所进步,不需大量模拟音响电路板,声音信号生成更灵活、方便。但由于同样是通过控制声音的频率和幅值来实现声音模拟以及声音的复杂多样性,用此类方法合成声音逼真度仍然不高。
随着数字音频技术的发展,开始采用专门的音频芯片来进行声音仿真,可通过设计简单的控制软件来控制音频芯片的发声,从而进行音效的模拟[3]。这种方法比以往有了很大进步,声音失真少、反应及时、能模拟各种各样的声音、对声音的控制较强。但其实现的仍是二维平面的声音仿真,没有达到三维立体声音仿真效果,不具备沉浸感。
在前期声音仿真技术发展的基础上,结合数字音频技术的最新成果,提出采用一种新的技术方法来进行声音仿真。综合专业音频硬件(如声卡)和音频软件(声音软件开发包),在其平台基础上设计三维声音仿真软件来模拟音效。首先精确录制各种声音,经过数字化
声音定位机车模拟器的三维声音仿真
王建华:朔黄铁路发展有限责任公司机辆分公司,工程师,河北 肃宁,062350
付建林:西南交通大学机械工程学院,讲师,四川 成都,610031
摘 要:声音仿真是机车模拟器的重要组成部
分,良好的仿真音效可以进一步加强模拟器的
真实感。在总结声音仿真技术发展过程的基础
上,提出一种新的三维声音仿真技术,以多声
道专业音频卡及功放音响系统为底层硬件,在
声音引擎开发包DirectSound基础上开发三维声音
仿真应用程序,直接控制现场采集声音的回放
与混音,实现更具沉浸感的三维立体声音仿
真。详细阐述了新技术的基础原理及软硬件实
现过程,并把此项技术应用在朔黄铁路机车模
拟器的三维声音仿真系统中,获得了十分逼真
的声音仿真效果。
关键词:机车模拟器;三维声音仿真;数字音
频;DirectSound
中图分类号:U268.4              文献标识码:A
文章编号:1001-683X(2016)12-0065-04
机车模拟器的三维声音仿真  王建华 等
处理后输入计算机,通过三维声音仿真软件进行混音与
回放控制,使原来在铁路现场司机室内听到的各种音效
在司机操纵模拟器的同时能以多声道的方式再现。与以
往的技术相比,这种方法除了声音失真更少、混音控制
更强、回放效率更高外,还真正实现了三维立体声音仿
真,能更好地体现空间感和声音的环境效果,实现声音
的定位和特殊音效。该技术应用在模拟器中可以大大增
强模拟器的真实感。
以朔黄铁路机车模拟器三维声音仿真系统的实现为
例,阐述三维声音仿真技术的基本原理与实现过程。
2  三维声音仿真的设计与实现
2.1  声音仿真的目标
对机车模拟器而言,声音仿真的目标是要满足下列3个
方面要求:
(1)从司机听觉感受的角度来模拟车辆运行时的环境声音,包括:机车车辆设备声音的模拟(如电机、空调、鸣笛等);线路及周边环境音效的模拟(如过道岔、轮轨摩擦声音等);通信声音的模拟(如站名预报、站台播音等);故障及突发事件声音的模拟(如水灾、脱轨、失电等)。
(2)音效的改变应与当前运行中的各种状态变化相适应,体现设备运行状态、突发事件、故障事件、
运行速度、线路环境、天气状况、通信信息等对音效的实时影响。
(3)以三维立体声真实地对以上声音进行模拟,表现声音的方向感、空间感和距离感,尽量体现声音衰减、多普勒效应、环境变化等效果。
2.2  硬件构成
朔黄铁路机车模拟器为一个分布式实时仿真系统,主要由数据采集系统、主控计算系统、视景仿真系统、声音仿真系统、运动控制系统、教员控制系统等组成,每个子系统为一个节点,各节点之间通过快速以太网连接,通过网络传递消息和数据[4]。模拟器的硬件结构见图1,图中上部为声音仿真系统的硬件构成。
教员控制系统控制整个模拟器系统的启动、运行、停止。数据采集系统采集模拟驾驶台司机的操纵指令,送往主控计算系统,主控计算系统再根据列车的运动学和动力学模型计算出列车的当前运行状态,如工况、速
图1  模拟器的硬件结构
度、加速度、位置等,送往各子系统。视景仿真系统根据当前列车速度控制图形显示,运动控制系统根据运行状态参数调节模拟器的运动形态,声音仿真系统控制列车运行环境声音效果。
声音仿真系统由声音仿真计算机(配备多声道输出的专业级声卡)、多声道功放、司机室多声道扬声器系统组合而成。作为分布式仿真系统的一个节点,声音仿真系统通过快速以太网与其他子系统连接,交换信息。在模拟机车运行时,声音仿真系统接收主控计算系统的实时状态数据,包括列车设备状态、运动状态、线路状态、突发及故障事件状态数据等。声音仿真程序根据这些状态数据判断哪个声音对象的播放状态需要改变,然后进行音效变化参数的计算,从而改变相应声音对象的播放状态。
声音仿真计算机生成的5.1声道的音频信号送往多声道功放,再通过司机室多声道扬声器系统播放声音。扬声器的布置虽受模拟器司机室结构的限制,但还是应该尽量接近标准的5.1声道输出的位置来摆放。5个扬声器的位置在通常前左、前右2个立体声扬声器的基础上,再分别在正中和左后、右后3个方位配置3个扬声器。前左、前右、中置扬声器的高度基本与司机在同一水平面上,左后、右后设置在比司机耳朵高60~90 cm的水平面上。低音扬声器由于无方向性,因此并没有规定特定的放置方位。
模拟司机室
5.1音频功放
功放输出
前左
中置前右
低音  司机
声音仿真
计算机左后
右后
(配备专业声卡)
快速以太网交换机
数据采集
系统
主控计算
系统
运动控制
系统
视景仿真
系统
教员控制
系统
机车模拟器的三维声音仿真  王建华 等
2.3  软件实现原理
声音仿真软件的开发平台为DirectSound,这是目前最为先进、实用的声音开发包之一,可生成具有三维音效的各类声音。根据DirectSound的原理和声音仿真目标,声音仿真软件的实现原理见图2,按流程可以分为3个模块:网络通信模块、计算模块和播放模块。各模块之间通过消息触发的方式传递数据。网络通信模块向计算模块传递实时状态数据,计算模块向播放模块传递音效变化数据。播放模块根据接收到的音效变化数据改变各个声音的播放状态。
由于声音种类繁多,影响因素也较多,控制声音条件复杂,因此声音数据库采用表格形式。除声音源文件外,共制作3种表格:声音控制表、线路元素信息表以及声音属性表。声音控制表每行代表1个声音对象,每行有控制条件(包括仪表值、逻辑状态、线路状态、事件状态等)、声音编号、播放动作、播放参数(频率、音量、三维位置、三维速度、音锥三维朝向)等信息。线路元素信息表是通过把影响声音的线路元素分为隧道、轨道、轨缝、道岔、站台、桥梁、山谷等若干类型,根据分类依次对线路元素的内容(包括元素子类型、开始位置、结束位置等)进行描述而形成。线路元素信息表保存线路状态信息,用于根据当前机车运行位置计算当前线路状态。声音属性表包含了各个声音对象的初始状态信息,每行代表
图2  声音仿真软件的实现原理
1个声音对象,每个声音对象包含声音编号、与其他声音对象的关联/互斥关系、初始播放参数信息。
声音仿真软件实现过程可分为2个阶段,即初始化阶段和模拟运行阶段。程序启动后,网络通信模块初始化;计算模块初始化时加载声音控制表及线路元素信息表,加载数据完毕即进入网络数据等待中;播放模块初始化时加载声音属性表,同时按照声音编号加载所有的声音源文件,每个声音源创建1个从缓冲区对象,并为从缓冲区对象配置参数,如初始频率、音量、平衡等,如果是三维声音,在从缓冲区对象的基础上再创建1个三维缓冲区对象,并配置各参数(如频率、音量、三维位置、三维速度、音
锥三维朝向等),直到所有声音对象都配置完毕,播放模块初始化完成后即进入音效变化消息等待中。
初始化完成后,进入模拟运行阶段。网络通信模块接收主控计算系统的实时状态数据,然后向计算模块传递。实时状态数据包括设备状态信息和运动状态信息(如速度、距离、天气、通信信息、突发事件、故障事件信息等)。计算模块接收到实时状态数据后,开始依次处理每个声音对象,判断是否要改变声音对象的播放状态。如果需要改变,则由当前状态参数和此声音对象的控制条件综合比较计算,确定音效变化参数。然后把音效变化参数以消息的方式传递给播放模块,播放模块
根据音效变化参数改变声音对象
的播放状态。
3  声音仿真中的关键问题
3.1  声音分类
考虑到机车环境内各类声音不同的自然特性及播放控制,按播放方式对声音进行分类:
二维声音——不需要表现空
间感的简单立体声,只有少数声音属于此类,如到站播放。
三维声音——具有立体空间感的声音,大部分声音属于此类。
三段承接式声音——把声音分为起始、中间循环、结束阶
网络通信模块
开始初始化:加载线路元素信息表、声音控制表
初始化:加载声音属性表,配置声音对象参数,包括缓冲、三维缓冲、初始播放等
网络初始化
初始完毕等待状态数据
网络通信
实时状态数据
接收状态数据,依次处理每个声音对象加载声源文件数据到声音对象的缓冲区中
以太网交换机
下一声音对象
状态参数与控制条件比较
初始化结束,等待消息
改变音效?
音效变化数据
接受消息?
计算音效变化参数
改变声音对象的播放状态
计算模块播放模块
扬声器播放
机车模拟器的三维声音仿真  王建华 等
段,如鸣笛、空压机等声音。
单次播放声音——单次播放完毕,如断路器、继电器声音等。
单次循环声音——单次循环播放,如下雨等。
关联式声音——某些声音的启动停止会引起其他关联声音播放状态的变化。
3.2  速度对声音的影响
不同的列车运行速度会对声音有不同的影响,如以不同速度过道岔的声音、不同速度摩擦轨道的声音。
对于此类声音的模拟,采用按照一定的速度级别切换不同的声音对象来实现。对在同一速度级别内的速度微变,通过调节声音对象的频率、音量来表现,以使声音的过渡自然平滑。由于低速阶段的变化较明显细致,对于低速阶段速度等级可以划分的更细一些。
3.3  三维声音的定位
美国航空航天局(NASA)研究表明,声源位置的变化必须同时改变声音的混响时间差和混响压力差[5]。 混响时间差(ITD)见图3,即声波分别传播到左右耳的时间差,与声频 f、声源位置θ、头部半径γ、声速υ有关。
ITD = fγsinθ/υ。                                           (1)混响压力差(IPD)即声波对左右耳作用的压强差。
IPD = 1.0+(f/1 000)0.8sinθ。                       (2)空间声音合成方法:直接卷积带有头部相关传递函数(Head Related Transfer Function,HRTF)滤波器的声音信号,得到的脉冲响应通过不同方向到达左耳与右耳。以前需要TMS320/C25等数字信号处理器来实现,目前由于技术进步可由软件完成。
考虑到不同线路环境中音效不同,利用DirectSound的声音接口对声音添加一些特殊效果来表现,如反射、混响、失真、压缩、回声等。这种方法能够在一定程度上表现各种声音在不同环境条件下的变化和过渡。4  结论
该三维声音仿真技术成果已经成功应用在朔黄铁路机车模拟器中,与以前各类模拟器仿真音效相比,具有以下明显改善:
(1)声音真实度高,利用高性能采集设备现场录制声源文件,并利用音频处理软件进行处理,声音的真实性与实际一致。
(2)可再现众多的声音混音,声音数量基本不受限制,能够独立、灵活地控制每个声音对象的混音,互不干扰。
(3)三维空间音效明显,方位感清晰,可在三维空间内同时对多个声源进行准确定向、定位。
(4)可在一定程度上表现各种特效,如鸣笛回响、声音在隧道中混响、速度造成的多普勒效应、声音衰减等。
(5)系统的实时性较好,能够及时反应,并且与其他系统(如视景变化、司机操纵)保持同步。
该声音仿真技术不仅可以应用在铁路、地铁、轻轨等机车模拟器中,也可以应用于其他如飞行模拟器、船舶模拟器、电站模拟器、军事仿真训练等仿真领域中。该技术虽然考虑了声源位置与方向、听众的位置、声音环境、声音反射和传递、多普勒效应等,但目前在环境音效、区域效果方面的实现,如声音的扩散、封闭、阻碍、区域间过渡等尚存在一定不足,仍有进一步改善的空间。
参考文献
[1] 何正伟,杨宏军,花传杰. 实时三维声音仿真系统的
设计与实现[J]. 计算机应用研究,2002(1):23-25.
[2] 李春洪,毛跃奇,陈贵来,等. 基于DirectSound的声音实
时仿真研究[J]. 计算机仿真,2001,18(3):47-49.
[3] 谢华,杨军良,孙启顺. 训练模拟器中设备工作声音
的实现[J]. 计算机工程,2002,28(6):287-289. [4] 何成才. 基于模拟仿真的动车组驾驶培训系统[J]. 中
国铁路,2012(2):53-54.
[5] 肖田元,张燕云,陈加栋. 系统仿真导论[M]. 北京:
清华大学出版社,2000.
责任编辑  李凤玲
收稿日期  2016-05-19
图3  混响时间差γθ

本文发布于:2024-09-25 13:18:25,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/350395.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:声音   状态   模拟器
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议