电子设计大赛声音定位系统TI杯二等奖.docx

上传人:夺命阿水 文档编号:1356317 上传时间:2024-06-09 格式:DOCX 页数:14 大小:47.57KB
返回 下载 相关 举报
电子设计大赛声音定位系统TI杯二等奖.docx_第1页
第1页 / 共14页
电子设计大赛声音定位系统TI杯二等奖.docx_第2页
第2页 / 共14页
电子设计大赛声音定位系统TI杯二等奖.docx_第3页
第3页 / 共14页
电子设计大赛声音定位系统TI杯二等奖.docx_第4页
第4页 / 共14页
电子设计大赛声音定位系统TI杯二等奖.docx_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《电子设计大赛声音定位系统TI杯二等奖.docx》由会员分享,可在线阅读,更多相关《电子设计大赛声音定位系统TI杯二等奖.docx(14页珍藏版)》请在课桌文档上搜索。

1、目录。前言10.1摘要10.2关键词11总体方案设计及方案论证11.1 系统总体设计方案及系统框图11.2 声响模块方案论正21.3 声音接收处理模块方案论证2声音接收模块21.3.2声音处理模块方案论证31.4 显示模块方案论证32.电路与程序设计31 .1声响模块32 .2声音接收处理模块42.1.1 声音接收模块42.1.2 声音处理模块42. 3显示模块42.4程序设计与流程图4声响模块流程图4接收模块流程图4显示模块流程图53理论分析与计算54系统测试64.1声响模块64.2声音接收模块6由于测试现场嘈杂,接收到了信号有一定的失真。64.3声音处理模块64.4显示模块6附录1:6附录

2、2:6声音定位系统设计O前言随着科学技术的快速开展,声波测距定位将在声音定位系统中的应用越来越广。但就目前技术水平来说,人们可以具体利用的测距技术还十分有限,因此,这是一个正在蓬勃开展而又有无限前景的技术及产业领域。展望未来,声音定位系统作为一种新型的非常重要有用的工具在各方面都将有很大的开展空间,它将朝着更加高定位高精度的方向开展,以满足日益开展的社会需求,如声纳的开展趋势根本为:研制具有更高定位精度的被动测距声纳,以满足水中武器实施全隐蔽攻击的需要;继续开展采用低频线谱检测的潜艇拖曳线列阵声纳,实现超远程的被动探测和识别;研制更适合于浅海工作的潜艇声纳,特别是解决浅海水中目标识别问题;大力

3、降低潜艇自噪声,改善潜艇声纳的工作环境。无庸置疑,未来的声音定位系统将与自动化智能化接轨,与其他的测距仪集成和融合,形成多定位系统。随着测距的技术进步,测距系统将从具有单纯判断功能开展到具有学习功能,最终开展到具有创造力。在新的世纪里,面貌一新的声音定位系统将发挥更大的作用。0.1摘要本设计采用以MSP430G2553单片机为声响模块控制芯片,以STC89C52单片机为声音信号处理和显示模块的控制芯片,二者皆采用低本钱、高精度、微型化数字显示声音定位系统的硬件电路和软件设计方法。整个电路采用模块化设计,由声响模块、接收信号模块、信息处理与显示模块组成。接收到的信号经单片机综合分析处理,实现定位

4、显示的功能。在此根底上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。相关局部附有硬件电路图、程序流程图。经实验证明,这套系统软硬件设计合理、抗干扰能力强、实时性良好,经过系统扩展和升级,可以有效地解决汽车倒车、建筑施工工地、一些工业现场的位置监控以及运动物体的轨迹等。0.2关键词MSP430G2553;STC89C52;声波测距系统;显示模块1总体方案设计及方案论证1.1 系统总体设计方案及系统框图针对本课题的设计任务,进行分析得到:该声音定位系统设计主要由以下几个模块组成:声响模块、声音信号接收模块、信息处理显示模块。在这几个模块中最主要的是声音信号接收模块,其功能是对声响模块

5、发出的信号进行采集并放大,采集到的信号容易失真、不稳定,所以需要屡次调试和修改电路。声响模块采用以MSP430G2553超低功耗16位单片机为核心设计的电路,功能是通过驱动扬声器发出5OOhz方波信号。声音接收处理模块采用驻极体接收,通过多级放大整波电路,将接收的信号经放大、滤波、电压比拟排除噪声干扰。显示模块是基于STC89C52单片机为核心的电路,用液晶显示器12864显示出声音信号的位置和移动轨迹。本设计的系统总体框图如图(1)所示。图(1)系统总体框图1.2 声响模块方案论正方案一:用模拟电子技术知识搭波形震荡电路产生矩形波,经过分析和查阅资料得到的矩形波电路如下列图所示,经示波器观察

6、波形后发现波形的质量不够高,所以放弃此方案。方案二:FPGA(FieldProgrammab1eGateArray),即现场可编程门阵列,它是在PA1.、GA1.、CP1.D等可编程器件的根底上进一步开展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的缺乏,又克服了原有可编程器件门电路数有限的缺点。内部有丰富的触发器和I/O引脚。开发费用最低,风险最小的器件之一。采用高速CMOS工艺,功耗低,可以与CMOS、TT1.电平兼容。但编程用的是VeriIOg语言,而我们所学习的是C语言,短期内不能熟练运用此器件,所以放弃方案二。方案三:MSP430G2553

7、是一款超低功耗的单片机,其供电电源只需3v,符合本设计的要求,而且此单片机适用于新手初步学习。经过论证,最终我们决定用MSP430G2553作声响模块的处理,选用方案三。1.3 声音接收处理模块方案论证声音接收模块方案一:采用自制的电容式声音接收装置。自制的声音电容,电容的一个极性为基准板;另一个极性为振动膜,在声波的振动下,该电容两极电压信号发生变化。该装置原理简单,但易受干扰,信号稳定不利采集。方案二:采用自制驻极体话筒接收器装置。驻极体话筒具有体积小、结构简单、电声性能好、价格低的特点,广泛用于盒式录音机、无线话筒及声控等电路中。属于最常用的电容话筒。由于输入和输出阻抗很高,所以要在这种

8、话筒外壳内设置一个场效应管作为阻抗转换器,为此驻极体电容式话筒在工作时需要直流工作电压。方案三:采用集成的声音传感器。市场上集成的声音传感器具有灵敏度高,反响灵敏,且抗电磁场和射频干扰能力强等优点,但是价格较为昂贵,且不易改装调试,影响电路结构使用的灵活性,因此其性价比偏低。考虑方案简单可行性和价格本钱,本系统采用方案二自制驻极体话筒接收装置。1.3.2声音处理模块方案论证方案一:采用声控开关。声控开关使用简单,价格廉价,但是反响不够灵敏,精度较低。方案二:采用多级放大整波电路,将接收的信号经放大、滤波、电压比拟排除噪声干扰,精度高。经综合论证,虽然方案二电路复杂运用模电知识,但是题目要求精度

9、比拟高,所以采用方案二。14显示模块方案论证经综合考虑,采用12864液晶显示,12864显示具有大量的信息、画面效果好、分辨率高,满足题目要求。2.电路与程序设计2.1 声响模块MSP430是业内功耗最低的MCU具有超低功耗运行模式和7种低功耗模式以及即时唤醒功能,MSP430采用了智能型模拟与数字外设,外设工作于低功耗模式,减少外局部立器件与物料本钱,具有FRAMUSB、RF、电容式触摸I/O、计量模块、1.CD、ADC、DAC等。以下是MSP430-launchpad引脚图:定时器A输出方波1、定时器的PWM输出8种模式输出模式0输出模式:输出信号OUTx由每个捕获/比拟模块的控制存放器

10、CCT1.x中的OUTx位定义,并在写入该存放器后立即更新。最终位OUTX直通。输出模式1置位模式:输出信号在TAR等于CCRx时置位,并保持置位到定时器复位或选择另一种输出模式为止。输出模式2PWM翻转/复位模式:输出在TAR的值等于CCRX时翻转,当TAR的值等于CCRo时复位。输出模式3PWM置位/复位模式:输出在TAR的值等于CCRX时置位,当TAR的值等于CCRO时复位。输出模式4翻转模式:输出电平在TAR的值等于CCRX时翻转,输出周期是定时器周期的2倍。输出模式5复位模式:输出在TAR的值等于CCRX时复位,并保持低电平直到选择另一种输出模式。输出模式6PWM翻转/置位模式:输出

11、电平在TAR的值等于CCRx时翻转,当TAR值等于CCRO时置位。输出模式7PWM复位/置位模式:输出电平在TAR的值等于CCRX时复位,当TAR的值等于CCRO时置位。下列图是增计数模式下的输出波形:2.2声音接收处理模块2.2.1声音接收模块驻极体话筒具有体积小、结构简单、电声性能好、价格低的特点,广泛用于盒式录音机、无线话筒及声控等电路中。属于最常用的电容话筒。由于输入和输出阻抗很高,所以要在这种话筒外壳内设置一个场效应管作为阻抗转换器,为此驻极体电容式话筒在工作时需要直流工作电压。驻极体话筒外观如下图:驻极体话筒外观图2.2.2声音处理模块P2为驻极体话筒,接收声音信号后连接到处理电路

12、。2.3显示模块2.4程序设计与流程图2.4.1声响模块流程图2.4.2接收模块流程图2.4.3显示模块流程图3理论分析与计算3.1声响模块分析、计算:声响模块的由msp430产生50OhZ方波,msp430单片机工作在SMC1.KE模式下,单片机频率为8mhz8=lmhz.CerO=ImhZ2000=500hz.题目要求产生IS的声波,因此设置中断,到达IS后通过改变CCtO值改变占空比为100%,从而变为上下平,到达控制效果。3.2声音接收放大器分析、计算购置的0.25W扬声器需要的工作电流值为1.5A,单片机输出3V电压,电阻不可能很小,此处接三极管放大,查阅资料发现SS8050三极管放

13、大倍数在150到300倍,连接两级三极管,可实现大约4000倍的电流放大效果,可将ImA的电流放大到IA以上,满足扬声器要求。3.3数据处理原理分析、计算本体要求通过声音判断发声源的位置,而且声源与测量位置并没有任何的接触,那么,通过驻极体接受声音信号就并且对其进行分析就是本体的主要任务。驻极体接收到声音信号,产生0.5mV左右的正弦波,不能到达STC89C52单片机要求的3.3到5V电压的要求,需要对接受到的信号进行10000倍左右的放大,处理过程中,采用电压比拟器产生供应单片机处理的电压要求,那么放大200倍左右就可以满足要求,用一个三极管SS8050,加上一个高通滤波器,截止频率在500

14、Hz,防止了背景里很多低频干扰,在误差范围之内,对高频信号可不做处理。利用1.M358运放做一个电压比拟器,分压比拟电阻阻值分别为15欧姆、5K欧姆(电位器),正常工作15K欧姆和IK欧姆,满足分压要求。比拟器输出为方波,电压幅值4V,相当于整形电路。4系统测试4.1声响模块产生50OHZ方波,如下列图所示:单片机计算产生的方波存在误差,误差在2%5%。4.2声音接收模块由于测试现场嘈杂,接收到了信号有一定的失真。4.3声音处理模块经过信号处理模块,信号幅值变大到4v。4.4显示模块附录1:参考文献1、陈振官陈宏威.光电子电路及制作实例.北京:国防工业出版社,20062、杨志忠.数字电子技术举

15、出.北京:高等教育出版社,20063、郭天祥.新概念51单片机C语言教程:入门、提高、开发、拓展全攻略M.北京:电子工业出版社,20094、彭伟.单片机C语言程序设计实训100例:基于8051+Proteus仿真M,北京:电子工业出版社,20095、范红刚.51单片机自学笔记M.北京:北京航空航天大学出版社,20106、杜洋.爱上单片机M.北京:人民邮电出版社,20117、谢亮.例说51单片机(C语言版)M.北京.人民邮电出版社,2010附录2:程序清单声响模块程序:ttincludeunsignedinti;voidtImeraO(void)TACCT1.OI=CCIE;TACCRO=200

16、0;voidtimeral(void)(TACCT1.l=OUTMoD_7;taccri=100o;PlDIR=BIT2;/Pl.2IaPWEa3P1SE1.=BIT2;)voidmain(void)(/StopwatchdogtimertopreventtimeoutresetWDTCT1.=WDTPW+WDTH01.D;TACT1.=TASSE1._2+TAC1.R+MC_1;timeral();timera();_EINT();while(l);)pragmavector=TIMER0_A0_VECT0R_interruptvoidTIMERO_AO_ISR(void)(i+;if(i=

17、200)TACCRl=2000;CCT1.OCCIE;)声音信号处理模块:includeREG52.httincludettincludedefinePORTsbitdefineBOO1.bit#defineBYTEunsignedchardefineWORDunsignedintWORDWoSignalA;WORDWoSignalB;WORDWoSignalC;unsignedintposX,posY;坐标取值BYTEbyRead;BYTEbyValid;WORDwoCount;voidfncDelay(WORDwo)(BYTEby;while(wo-!=O)for(by=O;by120;b

18、y+);)voidfncExtO(void)interrupt0外部中断O(if(woCount=0)ETl=1;WoSignalA=O;)elseWoSignalA=woCount;EXO=0;byValid+;)voidfncExtl(void)interrupt2外部中断1(if(woCount=0)(TRl=1;ETl=1;WoSignalB=O;)elseWoSignalB=woCount;EXl=O;byValid+;)voidfncTmrO(void)interrupt1定时器O作为外部中断2(ETl=O;TRO=O;if(woCount=0)(TRl=1;ETl=1;WoSig

19、nalC=O;)elseWoSignalC=woCount;byValid+;)voidfncTmrl(void)interrupt3定时器1,IoUS定时(woCount+;)voidSignalchuli(signedintm,signedintn)(BOO1.rl=0,r2=0;*方程是否成立变量*/BOO1.suc=0;*解题是否成功变量*/WORDx,y;for(x=10;x=500;x+=10)(for(y=10;y=350;y+=10)(if(sqrt(x2+(350-y)2)-sqrt(x2+y2)-m=20)rl=l;/elserl=0;if(sqrt(x2+y-2)-Sqr

20、t(y2+(500-)2)-11=20)r2=l;/elser2=0;if(rl&r2)suc=l;break;)elserl=O;r2=0;)if(sue)break;)posX=x;posY=y;)voidmain(void)signedintchai;signedintcha2;BYTExBai,xShi,xGe,yBai,yShi,yGe;TMOD=OX26;Tl工作于方式2,定时模式;TO工作于方式2,计数模式,扩展中断THl=246;定时IOusT1.l=246;THO=OxFF;T1.O=OXFF;TRO=1;ETO=1;EA=1;EXO=1;EXl=1;ITO=1;ITl=1;

21、while(1)if(byValid=3)TRl=O;ETl=O;停止定时计数chal=3.4*(WoSignalA-woSignalB);cha2=3.4*(woSignalB-woSignalC);/temp=signalchuli(chai,cha2);Signalchuli(chai,cha2);byValid=O;woCount=O;)/posX,posYxBai=posX100;xShi=posX/10-xBai*10;xGe=posX-xBai*100-Shi*10;yBai=posY100;yShi=posY/10-yBai*10;yGe=posY-yBai*100-yShi*

22、10;voiddisppicture(ucharcode*adder)(uinti,j;*显示上半屏内容设置for(i=0;i32;i+)(write_com(0x80+i);/垂直地址VERTICA1.ADDwrite_com(0x80);/水平地址HORIZONTA1.ADDfor(j=0;j16;j+)X坐标方向以2字节为单位,Y坐标方向以1位为单位,先连续写入垂直与水平坐标,再写入两字节数据到GDRAMo这里是这样进行的:i=0时,j=0,1时,写入两字节到垂直(0X80+00)水平(0X80+00)这格(D15D0)里;然后X坐标地址自增1,地址变为垂直(0X80+00)水平(0X8

23、0+01)这格,在尸2,3时写入两字节,一直到垂直(0X80+00)水平(0X80+07这格,在j=14,15时写入两字节,此时循环for(j=0;j16;j+)结束跳出,刚好第一行128位写完数据;然后i+,开始写第二行write_data(*adder);adder+;)*显示下半屏内容设置for(i=0;i32;i+)/(write_com(0x80+i);/SET垂直地址下半屏的垂直地址中上半屏一样是0X80+Y(Y:00-1F)write_com(0x88);/SET水平地址下半屏的水平地址是从0X80+08=OX88开始的for(j=0;j16;j+)(write_data(*adder);adder+;)fncDelay(1000);EXO=1;EXl=1;TRO=1;ETO=1;开启中断

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号