李昌禄, 郭威辰, 苏寒松
(天津大学电子信息工程学院,天津 300072)
声音定位技术是通过声学传感装置接收声波,再利用电子装置将声音信号进行转化处理,以此实现对声源进行定位的技术。声音定位技术产生于第一次世界大战,当时人们根据火炮发出的声音测定火炮的位置。经过两次世界大战,声音定位技术空前发展。在第二次世界大战和朝鲜战争中,75%的战场火炮侦察任务是依靠测量声音的技术手段完成的。在20世纪80年代和90年代,各军事强国重新将声音测量技术作为重点发展的传感技术之一。声音定位技术的下述特点在现代化战争中凸显其重要性:不受视线和能见度的限制;隐蔽性好,保密性强;难以被发现;不易受干扰。在现代战争中,战场传感监视系统是进攻和防御的有效手段之一。随着现代科技的发展,声音定位技术越来越受到各军事强国的重视[1]。
这种技术也逐渐扩展到日常生活当中,例如机器视觉追踪,摄像机式的眼睛可以聚焦到声源处;电视会议中通过接收发言者的语音信号,自动使摄像头对准发言者等等。也可用于语音及说话人识别软件的前端预处理,以提供高质量的声音信号,提高语音及说话人识别软件的识别率[2]。
据上所述,在日常生活中声音定位系统主要应用于室内。为了验证定位算法的可行性,本系统模拟了声音定位系统的典型应用,见图1。该图为房间俯视图的简化,四个声音接收模块分别位于房间的四个角,并与信号处理模块相连接,声音接收模块接收到声响模块发出的声音后,将信号传输至信号处理模块,经过分析、计算,即可得出声响模块的位置。因此,整个系统可划分为以下几个基本模块,即:独立的声响模块、声音接收模块、信号处理模块、显示模块、供电模块。
图1 定位系统示意图
声响模块包含信号产生电路、放大电路和微型扬声器等。为了便于测试及数据分析,该模块有两种发声模式。模式①,每按键一次发声一次,声音信号的基波频率为1 kHz左右,声音持续时间约为1 s,该模式用于模拟突发的声音。模式②,按键一次持续发声,声音信号的基波频率为1 kHz左右,该模式用于模拟连续的声音。
综上所述,采用单片机输出PWM波可以很方便地实现上述功能。TI公司出品的MSP430系列单片机内部资源丰富、运算速度快,而且功耗较低,所以本系统采用该系列单片机[3]。由单片机产生1 KHz的PWM波信号,经三极管驱动后,送入蜂鸣器。由于单片机I/O口驱动能力有限,所以需要外接三极管放大电路来驱动蜂鸣器,如图2所示[4]。
该模块使用麦克风拾取声音信号,并对其进行两级放大处理,放大后的信号,使用LM567鉴频芯片对信号进行鉴频识别。使用精密电位器设定固定频率为1 KHz,LM567将麦克风的信号和设定信号频率对比,当频率相同时,输出一个开关信号(下降沿),通过判断此下降沿来判断是否有固定频率声音到达拾音器,从而实现对声响模块发出声音识别的目的[5],电路如图3所示[6],调节图中的滑动变阻器可以改变LM567识别的频率,当检测到设定频率时,输出低电平,LED指示灯变亮。
图2 三极管放大电路
图3 声音接收模块电路图
由于麦克风输出的信号较弱,故必须经行放大,本系统测试中放大了100倍,可以满足后续处理的需要,实际中可根据声源与麦克风的距离来调整放大倍数。采用LM567鉴频芯片可以有效识别目标频率,同时可以抑制噪声的干扰。
1.3.1 算法比较
现有的定位算法有信号到达角度测量(Aangle of Arrival,AOA)、信号到达时间测量(Time of Arrival,TOA)、信号到达TDOA、接收信号强度指示(Received Signal Strength Indication,RSSI)。
下面对上述算法的利弊及可行性进行分析。
(1)AOA。该定位技术的关键在于基站需要安装阵列智能天线。通过这种天线测出基站与待定位目标之间的角度,两条基站与目标之间连线的交点即为目标的位置。如图4所示,R1、R2为基站,A为待定位目标,夹角分别为 θ1和 θ2。
图4 信号到达角定位(AOA)
令两个基站的坐标分别为(x1,y1)和(x2,y2),求解下列非线性方程组,就可以得到A的坐标(x0,y0)。
AOA技术利用两个天线阵列就能完成目标的初始定位,与其他技术相比,其结构简单,但是要求天线具有高的灵敏度和空间分辨率,整体成本较高[7]。
(2)TOA。在传播速度已知的情况下,可以通过测量信号发送与接收的时间差来计算两节点间的距离。TOA技术至少需要3个基站,并且所有基站都必须保证时间同步。在该算法中,目标位于以基站为中心,目标和基站之间距离为半径的圆上,3个圆的交点即为目标的所在位置[8]。
PCK这一概念最早由Shulman于20世纪80年代提出.他认为PCK是教师在面对特定的学科主题或问题时,如何针对学生的不同兴趣与能力,将学科知识合理组织、调整与呈现,从而实行有效教学的知识.这是一种使教师与学科专家有所区别的专门知识[2].PCK受到了越来越多人的关注,其研究大致形成了两个方向.
假设R1,R2和R3为三个基站,目标在t0时发出信号,到达三个基站的时间分别为t1,t2和t3。则时间差 ti=ti- t0(i=1,2,3)目标与基站之间的距离为 li,li=c×ti(i=1,2,3),c为传播速度。令三个基站的坐标分别为(x1,y1),(x2,y2)和(x3,y3),目标 A 的坐标为(x0,y0),那么基站与目标满足下述关系:
求解上述方程组即可得出目标的坐标。由于在传播中存在多径干扰、噪声干扰等造成的误差会使各圆无法相交,或者无法相交于一点儿而是交汇成一个区域。由于对同步的要求非常高,误差也是不可避免的,该算法并不实用[9]。
(3)RSSI。RSSI是通过接收到的信号强弱测定信号点与接收点的距离,进而根据相应数据进行定位计算的一种定位技术。在基于RSSI的定位中,已知发射节点的发射强度,接收节点根据接收到信号的强度计算出信号的传播损耗,利用理论和经验模型将传输损耗转化为距离,在利用已有的算法计算出节点的位置[10]。
虽然使用RSSI技术定位不需要进行复杂的时钟同步,但是需要提前建立信号的衰减模型,信号的快衰落和信号传输环境的迅速变化都会对结果造成较大的影响,此外RSSI技术受外界障碍物的干扰较大[11]。
(4)TDOA。TDOA是对TOA的改进,不再需要严格的时间同步。由于声源与声音接收模块的距离远近不同,因此信号到达不同声音接收模块的时间就不相同。在任一时刻,任何两个声音接收模块收到信号的时间之差可看成瞬时定值,根据双曲线的定义:到两定点的距离之差是一定值的动点的轨迹集合,是一组双曲线。所以,此时由时差所确定的双曲线是以两基站为定点的瞬时双曲线[12]。而不同声音接收模块间任一两两声音接收模块可以确定多组双曲线,而它们的交点就是声源的实际位置,如图5[13]。
综上所述,TDOA算法与其他算法相比,具有原理简单、硬件要求低等特点是一种相对简便、实用的方法。
图5 信号到达时间差(TDOA)
1.3.2 算法实现(TDOA)
令Riy表示声源模块第i个接收模块的距离差,则双曲线定位中声源(x,y)和接收(xi,yi)有如下关系:
求解上述非线性方程组要用到Chan算法[14],该算法是一种具有解析表达式解的非递归的双曲线方程组解法,该算法的特点是计算量小,且不用设定初值,在视距环境下及噪声服从高斯分布的信道环境下,定位精度高。该算法比较适合单片机运算。而且当声音接收模块为4个及以上时,该算法可利用所有TDOA测量值并取得更好的定位结果。综上所述,CHAN是一种比较适合本系统的算法[15]。
当有4个声音接收模块时,TDOA测量值数目多于未知量数目,因此,初始非线性方程组应首先转换为线性方程组,然后采用加权最小二乘(WLS)算法得到一个初始解,再利用第一次得的移动用户终端估计位置坐标及附自U变量等已知约束条件进行第二次WLS估计,就能得到改进的估计位置。
第一次WLS所得为:
第二次WLS所得式:
其中,Zp=x,[]yΤ
至此可以解出两组坐标值,舍去为负的那一组,剩下的即为最终坐标值。
本系统的性能测试实验在普通的实验室环境中进行,4个声音接收模块均朝向房间中央。声响模块分别在两种模式下发声。声音接收模块采集到信号后传输至信号处理模块,依据上述算法计算出声响模块的位置并显示,整体流程如图6所示。
图6 系统流程
通过大量的研究与测试表明,基于TDOA的声音定位系统可以准确地定位声响模块的位置,实际定位误差小于±3 cm,定位性能稳定可靠,定位方法简单方便。基于时间差的算法避免了时间同步对软硬件复杂性的要求,所采用的CHAN算法大大降低了程序计算的工作量,便于单片机实时处理。
[1] 靳 莹,杨润泽.声测定位技术的现状研究[J].电声技术,2007,31(2):4-8.JIN Ying,YANG Run-ze.Research Status and Prospect of the Acoustic Localization Technigues[J].Audio Engineering,2007,31(2):4-8.
[2] 张志勇.基于嵌入式Linux的分布式声音定位系统的研究[D].北京:北京邮电大学,2011.
[3] 沈建华,杨艳琴,翟骁曙.MSP430系列16位超低功耗单片机原理与应用[M].北京:清华大学出版社,2004:20-21.
[4] 冯 军,谢嘉奎.电子线路(线性部分)[M].4版.北京:高等教育出版社,1999:77-78.
[5] 郭小军.LM567及其在测距中的应用[J].实验室研究与探索,2007,26(10):22-23.GUO Xiao-jun.LM567 and Its Application in the Distance Measurement[J].Research And Exploration In Laboratory,2007,26(10):22-23.
[6] 全国大学生电子设计竞赛组委会.第九届全国大学生电子设计竞赛获奖作品选编[M].北京:北京理工大学出版社,2010:100-110.
[7] 诸燕平,黄大庆,李 勃.基于AOA的无线传感器网络节点定位算法[J].传感器与微系统,2010,29(1):98-101.ZHU Yan-ping,HUANG Da-qing,LI Bo.Node localization algorithm based onAOA for WSNs[J]. Transducer and Microsystem Technologies,2010,29(1):98-101.
[8] 杨天池,金 梁,程 娟.一种基于TOA定位的CHAN改进算法[J].电子学报,2009,37(4):819-822.YANG Tian-chi,JIN Liang,CHENG Juan.An Improvement CHAN Algorithm Based on TOA Position[J].Acta Electronica Sinica,2009,37(4):819-822.
[9] 任丽荣,肖 军.基于TOA的无线传感器网络自定位技术的研究[J].信息与控制,2006,35(2):280-283.REN Li-rong,XIAO Jun.TOA-Based Self-localization Technology in W ireless Sensor Networks[J].Information and Control,2006,35(2):280-283.
[10] 方 震,赵 湛,郭 鹏,等.基于RSSI测距分析[J].传感技术学报,2007,20(11):2526-2530.FANG Zhen,ZHAO Zhan,GUO Peng,et al.Analysis of Distance Measurement Based 0n RSSI[J].Chinese Journal of Sensors and Actuators,2007,20(11):2526-2530.
[11] 刘俊材.用于室内定位的测距技术分析[J].计算机光盘软件与应用,2011(19):72-73.LIU Jun-cai.Ranging Technology Analysis for Indoor Positioning[J].Computer CD Software and Applications,2011(19):72-73.
[12] 王治衡.人的双耳效应与双曲线定位导航[J].数学通讯:教师阅读,2007(5):47-48.WANG Zhi-heng.Binaural effect and hyperbolic navigation [J].Mathematical communication:Teachers reading,2007(5):47-48.
[13] 韩 毅,吴初娜,李龙飞.基于到达时差的声音定位系统的研究与实现[J].计算机工程与设计,2010(11):2462-2465.HAN Yi,WU Chu-na,LI Long-fei.Research and development of sound localization system based on time difference of arrival[J].Computer Engineering and Design,2010(11):2462-2465.
[14] Chan Y T,Ho K C.一个简单而有效的双曲线定位估计[J].信号处理,IEEE,1994,42(8):1905-1915.Chan Y T,Ho K C.A simple and efficient estimator for hyperbolic location[J].Signal Processing,IEEE Transactions on,1994,42(8):1905-1915.
[15] 马灵芝.基于 TDOA无线传感定位算法的研究及应用[D].济南:山东大学,2012.