冯祎 白文乐
摘 要:声音定位技术是一种新型技术,在各种领域都有涉及,如工业制造、射击训练、国防军事等。本文设计了一种基于到达时间差的声源定位系统,系统控制器选用STC15F2K60S2,硬件电路主要由音频发射模块、音频接收模块、数据处理模块三部分组成,软件部分主要使用Chan算法进行数据计算。设计的系统能够在接收到声源信号之后,对声源信号进行预处理,然后再对数据进行分析,最终显示测量结果。
关键词:到达时间差;声源定位;STC15F2K60S2;Chan算法
中图分类号:TN912.3 文献标识码:A 文章编号:2096-4706(2019)22-0041-03
Abstract:Sound localization technology is a new type of technology that is involved in various fields,such as industrial manufacturing,shooting training,and defense military. A sound source localization system with time difference is designed in this paper. The system controller selects STC15F2K60S2. The hardware circuit is mainly composed of audio transmission module,audio receiving module and data processing module. The software part mainly uses Chan algorithm for data calculation. The designed system is capable of pre-processing the sound source signal after receiving the sound source signal,and then analyzing the data,and finally displaying the measurement result.
Keywords:arrival time difference;sound source localization;STC15F2K60S2;Chan algorithm
0 引 言
声音定位技术最早被应用在声呐系统中,后来逐渐地应用到探测水下目标的领域,因为电磁波在海水中会有较为明显的信号衰减,所以电磁波的传输距离就会受到较大的限制,而声音定位技术因为其自身特点,刚好弥补了电磁波的不足[1]。
最近几年,声源定位系统开始与数字信号处理(DSP技术)、自顺应信号解决技术等各种技术进行结合,声音定位系统也因此得到了进一步的发展和完善,并且更加广泛地应用于军用和民用的领域[2]。
当今世界上在测距部分一般使用AOA(Angle of Arrival,
到达角度丈量)、RSSI(Received Signal Strength Indication,接收的信号强度指示)、TOA(Time of Arrival,抵达时间丈量)、TDOA(Time Difference of Arrival,抵达时间差丈量)等计算门径。AOA需要添加额外的设备,而且对计算量要求较大;RSSI容易受到环境中的障碍物影响,故而容易发生较为明显的误差;TOA要求各个接收装置开始接纳信号的工夫完全同步,难度相对较大;TDOA算法与其他算法相比,其原理较为简单,对硬件设施要求较低,是一种比较实用简单的方法。
本文的目标是基于TDOA的声音定位装置的设计与实现,在声音接收装置接收到声音之后,经过一系列声音信号处理,再通过使用单片机利用TDOA算法对处理后的声音信号进行计算,将计算结果发送至显示设备,显示出声源的位置。
1 系统的整体规划与设计方案
1.1 系统的整体设计
系统整体设计框图如图1所示。
系统使用音频发射模块发射特定频率的声音信号,然后使用音频接收模块进行对声音信号的接收与处理[3]。声音信号首先经过滤波放大,达到选频、去除噪声信号以及对所需声音信号进行放大的目的。经过滤波放大的声音信号再通过整形模块,将模拟声音信号转变为同频率的数字声音信号。处理后的声音信号再传输至数据处理模块进行处理。数据处理模块将接收到的各个声音信号进行比较,计算出声音信号从音频发射模块传输到各个音频接收模块所用时间的差值,再根据声音的传输速度计算出音频发射模块的位置,最后将结果发送至显示模块进行显示。
1.2 信号发射电路
信号发射采用蜂鸣器发出声音。用蜂鸣器作为音频发射装置时,驱动电路简单易行,仅需要一片LM386即可实现。信号源的波形由STC单片产生,采用软件控制GPIO发出的波形,可以非常方便地控制波形的频率和占空比。人耳可听到的声音频率范围在20Hz~20kHz之间,单片机也完全有能力产生此范围内的波形。初始频率设定为1kHz,音频发射模块的电路图如图2所示。
此音频发射模块的原理是输入方波信号,经滑动变阻器控制输入信号的幅度,然后通过电容过滤多余噪音信号,再经放大器将输入信号放大,输出信号通过滤波器去除噪音后输入到扬声器,这样便发出了与输入信号同频率的声音信号。
1.3 聲源信号接收模块
声源信号接收模块起到的作用是将收到声音信号转换为电信号,然后对电信号做进一步的调理,经过调理后的波形还要进行进一步的放大处理才可以输入至下一级电路。对波形的滤波及放大电路选用LM324运算放大器和LM311比较器电路组成,故我们可以使用此整形模块对声音信号进行整形。
为了能够通过声音信号测量声源的位置,需要使用合适的拾音设备接收声音信号。目前市面上咪头是最常见的拾音模块,咪头又叫作麦克风、话筒、传声器、咪胆等。拾音处理电路如图3所示。
由于环境中经常会出现其他不需要接收的噪音信号,以及电路中经常出现干扰信号,故需要使用滤波模块将接收到的声音信号进行过滤,保留需要测量的声音信号,过滤掉不需要的多余干扰信号。
1.4 数据处理部分
数据处理部分可选用单片机作为控制及数据计算,测量结果通过显示模块进行显示。单片机软件编程的灵活度高,可经由编程实现不同用途的算术算法以及逻辑管制。并且体积小,硬件实现简略、使用便利。单片机选用STC15F2K60S2,该系列单片机更适合作为系统的主控以及数据处理系统。显示模块选用LCD液晶显示屏,在智能管制系统中愈来愈多地运用了液晶显示屏LCD,LCD是一种介于液体以及固体之间的热力学的中心稳固相,它自身不会发光,是使用外部光的反射原理进行表现。
1.5 声音定位算法分析
现有的主流定位算法有AOA(到达角度测量)、TOA(到达时间测量)、RSSI(接收信号强度测量)、TDOA(到达时间差测量)[4,5]。考虑到本系统的使用环境及单片机的计算性能,为保证系统可以正常、及时地进行测量,这里选择TDOA作为最适合的算法方案。TDOA算法原理简单,且对STC单片机硬件要求低,可以在容忍的时间内计算出结果,是相对简便、实用的方法。
目前基于TDOA的定位算法多种多样,例如Chan算法、Taylor级数展开算法、SX(球面相交)算法、Friedlander算法等。其中SX算法与Friedlander算法都因为自身算法的局限性导致计算结果并不是最优解,导致在现实环境中的计算结果不够精确;Taylor算法是一种迭代的思想,相比于其他算法,其准确性更高,但是对于初始值的要求非常高,如果初始值的精确度较高,其结果也会非常准确,但如果初始值不够准确,其结果也会出现较大的误差。Chan算法的计算量相比于上述算法较小,且在噪声符合高斯分布的时候准确性非常高,故本设计选用Chan算法作为系统算法。
2 系统软件部分
2.1 主程序设计
软件主程序流程图如图4所示。
系统软件方面的主体思路如下:当系统主程序开始运行后,单片机首先会对各类的硬件进行初始化和检查,之后单片机会保持接收经过处理后的声音信号,当单片机接收到第一个音频接收模块传输过来的信号时,单片机开始计时,当单片机接收到后续其他音频接收模块传输的信号时记录时间,此时得到的时间即为后续其他音频接收模块与第一个传输声音信号的音频接收模块接收声音的时间差,通过各音频接收模块与第一个音频接收模块的相对位置、到达时间差以及声音的传输速度可以计算出声音发射装置的具体位置,然后将经过计算后的数据结果传输至液晶显示模块进行显示结果。
2.2 算法介绍
根据系统设计需求声源作为设为(x,y),为第i个声音的接收模块坐标为(xi,yi)。因此发射声音与拾音器之间满足式(1)。
然后可知Riy代表发射声音电路的第i个接收模块的距离差,则双曲线定位中发射声音(x,y)和拾音器(xi,yi)满足式(2)。
根据式(1)(2)可知,如想求出方程式的解,应用Chan算法即可。使用Chan算法求解可以尽量减小CPU的计算负担且不用为计算初始化常量,非常适合解这种具有解析表达式的双曲线方程组。考虑到系统选用的STC单片机计算能力有限,可认为Chan算法是适合基于STC单片机的计算方法,可取得较为理想的测量效果。
3 结 论
本文以一个基于TDOA的声音定位系统为研究目标,实现了音频发射与接收模块的设计,音频接收模块可根据接收声音信号的幅度与频率正常输出数字信号。数据处理模块能够根据各音频接收模块发送处理后的声音信号的时间差计算音频发射模块与各音频接收模块的距离差,同时可正常显示数据处理结果。虽然本文的系统实验结果存在一定的误差率,影响实验结果的条件较多,例如环境噪音、算法优化等,但在目标定位方面具有一定的应用前景。
参考文献:
[1] 冯振宇,王洪源.基于概率计算的声源定位技术研究 [J].数字技术与应用,2012(7):63.
[2] 陆灏铭,陈玮,刘寿宝.基于麦克风阵列的声源定位系统设计 [J].传感器与微系统,2012,31(4):79-81+85.
[3] 韩文革,苏淑靖,薛彦杰.基于麦克风阵列的声源被动定位系统设计 [J].电子技术应用,2017,43(12):61-64.
[4] 文小军,吉建华,钟林波,等.基于时延估计的声源定位算法实验研究 [J].计算机工程与应用,2014,50(23):212-214+233.
[5] 何赛娟,陳华伟,尹明婕,等.基于差分麦克风阵列和语音稀疏性的多源方位估计方法 [J].数据采集与处理,2015,30(2):372-381.
作者简介:冯祎(1983-),男,汉族,北京人,实验师,硕士,研究方向:红外图像的数据采集、传输及数据处理技术。