0 引言
多声源定位技术因其在智能机器人以及视频会议等的广泛应用而日益成为研究的热点。基于麦克风阵列的多声源定位是指采用麦克风阵列接收声音信号,通过对采集到的多路信号进行分析及处理,并结合麦克风的几何关系最终得出多个声源的坐标。设计了多声源数据采集系统仿真及实验平台。
计算机编程语言中,VisualBasic 6.0 是Microsoft 公司推出的面向对象的可视化开发编程工具, 具有丰富的数据类型和结构化程序结构,开发效率高,界面制作美观方便等优点,且应用日益广泛,故Visual Basic 6.0 语言做到了真正的面向对象编程。此外,在数据采集和数据处理的系统中,PC机软件资源丰富,人际交互方便等优点。以PC 机作为实验平台,能实时快速的实现数据的采集及处理等。此外,实验平台能实现多声源数据的同时采集,因此本设计采集到的数据能够很好的应用于多声源定位的算法研究中。
1 系统仿真的原理、组成及实验平台搭建
1.1 系统仿真中的麦克风阵列结构及信号模型
L 型麦克风阵列数学模型如图1 所示:
上图中的为声源的位置, 为声源的中心频率,为声源与轴连线的夹角, 为声源到坐标原点的距离。L型麦克风阵列由X 轴和Y 轴上阵元个数均为M 的均匀线阵X,Y 构成,阵元间的距离为D,均小于信号波长的四分之一,阵列输出的噪声为均值为零,方差为的统计独立的高斯白噪声,和信号源不相关。
设平面内有K 个独立的信号源发射到此阵列上,以坐标原点处阵元为参考阵元,则阵列X、Y 接收到的信号矢量分别为:
1.2 系统仿真结果
仿真界面主要包括:多个声源位置,波形,幅值,相位及频率的设置;坐标轴的横、纵坐标范围均为0-10 米;麦克风阵列的几何位置;采样频率;A/D 转换;采集数据集、声源及麦克风添加信息的保存路径等。
图3 显示添加的声源及麦克风的信息,各麦克风得到的声音信号波形如图4 所示:
仿真最终要应用在实际中,仿真中采用的信号频率范围为声源信号的范围[20,20000]Hz,幅度范围为[0,1]V,采样频率取值分别设置为8000Hz、90000Hz,A/D 转换等。
2 实验平台搭建
多声源数据采集系统框图如图5 所示,主要包括:PC 机、外扩声卡、麦克风阵列。
实验平台搭建目的保证了各麦克风阵元是同时开始采集声源信号,即保证了采集时间零点的同步,具体搭建过程如下:①声源选择单频率正弦波信号, 用圆形的扬声器进行播放满足了点声源的要求。② PC 机中用VB 编写数据采集的控制界面用来控制信号采集的开始和结束。③一台PC 机可外扩多个声卡,每个声卡的左右声道分别接两个麦克风,即每个声卡可同时采集两路信号。④麦克风放置成L 型,相邻两阵元之间的距离为5cm,安装时保证阵列和声源在同一个水平面上。
声源的设计:选用圆形的扬声器作为实验的声源点,其优点在于扬声器发出的声音信号是以圆形向四周传播开来,保证每个麦克风阵元接收到的声音信号都是一样的。麦克风阵列的设计:为提高阵列的分辨率,相邻两阵元距离不大于接收声源信号波长的四分之一。选用具有高灵敏度、全指向性、低阻抗的驻极体受话器。
多声源数据采集VB 控制界面如图6 所示,首先检测PC 机上的声卡设置,选中所需要用的声卡设备,设置好采样频率和数据的保存路径,点击开始采集,即可得到真实环境中的声源信号。
麦克风1、2、3、4、5 采集到的信号波形如图7 所示:
3 总结
本文实现了多声源数据采集系统仿真及硬件平台的搭建,系统仿真界面可视化好。硬件中PC 机存储、处理数据速度快,实时性好。这种实验设计主要解决了各路信号采集时间零点同步的问题,避免了采集过程中存在的时间差对多声源定位算法的研究。此仿真系统可应用于对数据同时采集及采样频率等要求较高的地方。