基于单片机的声音定位系统的设计
【摘要】声音定位技术利用声学与电子装备,接收声波来确定声响模块具体位置的一种技术,它是一种重要的军事侦察手段,同时在其他方面也有广泛的应用。本系统采用低功耗MSP430单片机作为控制器,控制整个声音定位系统的协调工作,在一块平板上贴一张坐标纸,在其四角外侧分别固定安装一个声音接收模块,通过驻极体话筒检测音频信号,然后声音接收模块将声音信号传送至信息处理模块,判定声响模块所在的位置的X、Y坐标,并以数字形式在液晶上显示X、Y坐标值。
【关键词】低功耗MSP430单片机;声音定位;声音接收模块;声响模块
1.声音定位系统发展现状
声音定位在人的日常生活中着重要意义。例如,当你独自行走时,突然听到一个响声.你会想到这个声音什么意思,对你有无威胁,它来自何方等等。确定声音的方向和距离需要比较来自两耳信息,然后做出对比判断和反应。
声音定位技术利用声学与电子装备接收声波来确定声响模块具体位置的一种技术,它是一种重
要的军事侦察手段,产生于第一次世界大战。开始根据火炮发出的声音测定火炮位置。其系统有多个声测哨站与声测中心组成,两者用电缆连接。声测哨站根据传感器接受信号,声测中心记录信号并根据同一信号到达不同传感器的时间差计算火炮位置。
声音定位在战场之外也同样具有广泛的应用前景。它可用于电话会议系统、视频会议系统、可视电话等系统中的控制摄像头和传声器阵列波速方向对准正在说话的人;也可用于语音及说话人识别软件的前端预处理,以提供高质量的声音信号,提高语音及说话人识别软件的识别率;亦可用于强噪声环境下的声音获取、大型场所的会议记录,以提高声音拾取质量;还可用于助听装置中,更好地为耳障患者服务等。
2.本系统的功能
本声音定位系统,在一块不大于1m2的平板上贴一张500mm×350mm的坐标纸,在其四角外侧分别固定安装一个声音接收模块,声音接收模块通过导线将声音信号传输到信息处理模块,声音定位系统根据声响模块通过空气传播到各声音接收模块的声音信号,判定声响模块所在的位置坐标。
3.系统总体设计方案
根据设计的基本要求,为完成相应功能,本设计提出的方案如图1所示。整个系统划分为以下几个基本模块:电源模块、Msp430g2553小系统、声响模块、声音接收模块、信息处理模块、显示模块。
控制器模块采用TI公司的两片低功耗MSP430单片机作为主辅控制芯片。MSP430单片机工作频率高,功耗低,有大量的寄存器以及片内数据存储器可参加多种运算,并且MSP430g2553小系统简单,可以很方便的做I/O口扩展,节约了资源。
声响模块用Msp430g2553单片机做声响模块。用Msp430g2553单片机产生一个较稳定的500HZ的方波信号,经三极管驱动后,送入高精度电子扬声器发声。这样做出的声响模块既简单,使用又方便,并且能够得到比较稳定的基波频率为500HZ的声音信号。此外,它还具备功耗小的特点。
声音接收模块用驻极体话筒拾音后,接基本的三极管9012、9013和LM339。由基本三级管组成的电路可以自由控制放大基本参数和能量原理,并且,在其中直接融入滤波,配合示波器调试,可对每一级信号情况进行细调和控制。声音接收模块首先将接收到的微弱声音信号通过两级放大器放大。同时,通过改变的其中耦合电容和加入输出回路负载电容,滤除声源
过来的高次谐波和杂波,并放行500HZ左右一定带宽范围内的谐波。最后用LM339对发大输出的波形进行比较输出,其中声源过来的500hz信号引起的震动将比较大,而其它频率或拾音器拾得的电信号的高次谐波却被滤除的基本忽略。所以,只需调节最终极比较端的参考电平达到一合理值,那么当声音到达拾音器引起震荡时既能及时输出一方波下降沿,通过判断此下降沿来判断是否有声音到达拾音器。
信息处理模块根据接收到的声音传输时间差来对声响模块定位。声响模块发出的声音传到不同的接收器时间不同,根据不同的接收时间进行定时计数,做差值,可以判断出声响模块距离不同声音接收模块的位置差,从而确定出声响模块的具体位置坐标。
(1)数据处理模块原理分析
开始计时,当话筒接收到扬声器发来的音频信号,就通过拾音电路将第一个下降沿传送至单片机Msp430F149信息处理模块处理,从而通过中断初始化并开始计时。并通过Msp430F149捕获模块判断其它路声音到达后与第一路声音间的时间差,后续处理程序计算,来判定声响模块所在的位置的X、Y坐标。
(2)数据处理模块计算
当前声响模块的位置S,如图3所示。设S模块电源是什么意思的坐标为(X,Y),设S点到A点的距离为SA,到B点距离为SB,到C点距离为SC,当声响模块发声时,A、B、C三点会根据S点的位置按一定先后顺序收到声音信号,比如图中A点先收到,设A接收模块和B接收模块的时间差为T1,A和C之间接收的时间差为T2,根据三角形余弦定理可得:(已知声音在空气中的传播速度为V=340m/s)
由上述(1)、(2)、(3)、(4)、(5)、(6)式用MATLAB可解得SA、X、Y的代数式如下所示:
其中:a=1-(V*T1)2/6002-(V*T2)2/4502,b=[6002-(V*T1)2]*V*T1/6002+[4502-(V*T2)2]*V*T2/4502,
C=-[((600-V*T1)/1200)2+((450-V*T2)/900)2];
X=(6002-2ab-b2/1200-50,
Y=(4502-2ac-c2)/900-50;
显示模块用液晶显示。液晶显示屏显示看起来清晰,又具有低功耗,抗干扰能力强等特点,而且外接电路简单。
(3)硬件电路制作
按照上述分析,就可以制作出所需要的各模块电路,并且用c语言编写程序代码。
(4)测试
测试结果表明,该系统能够完成基本要求,每按键一次发声一次,声音信号的频率能够稳定在500HZ左右,声音持续时间约为1s。声响模块采用3V以下电池供电,功耗也没有超过200mW。四路声音接收模块将频率为500HZ左右的信号传送至信息处理模块,通过精确的算法能够定声响模块所在位置的X、Y坐标,并在液晶上显示坐标。
参考文献
[1]陈益如,王博,邬杨波.基于声音导引的声源定位系统设计[J].工业控制计算机,2010,23(10):101-104.
[2]沈建华,杨艳琴.MSP430系列16位超低功耗单片机原理与实践[M].北京:航空航天大学出版社,2008.
[3]高吉祥.全国大学生电子设计竞赛培训系列教程[M].电子工业出版社,2007.
[4]曹国华.单片机原理及接口技术(第二版)[M].西安:西安电子科技大学出版社,2007,12.
[5]谭浩强.C语言程序设计(第二版)[M].北京:清华大学出版社,2000.
[6]杨颂花.数字电子技术基础(第二版)[M].西安:电子科技大学出版社,2009.
[7]童诗白,华成英.模拟电子技术基础(第四版)[M].高等教育出版社,2006.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论