《单片机课程设计(论文)基于AT89C51的噪音检测自适应系统设计.doc》由会员分享,可在线阅读,更多相关《单片机课程设计(论文)基于AT89C51的噪音检测自适应系统设计.doc(20页珍藏版)》请在三一办公上搜索。
1、 摘要本文以AT89S52 单片机为控制核心,通过播音判断电路寻找广播间歇时段,实时采集噪声环境内的噪音信号,根据A/ D 转换后的噪音电平值计算出复杂环境下噪声信号的平均功率;根据噪声信号的功率大小自适应地控制大厅环境内的广播音量,实现了复杂噪声环境下自适应音量控制系统。该系统的硬、软件设计简单,性能良好,价格低廉。实验结果表明,该系统实现了预期功能,自适应效果良好,性价比较高,具有良好的推广价值。关键词: 语音判断;噪音采集;自适应音量控制;AT89S52 单片机AbstractAn adaptive volume cont rol AT89S52 MCU system based on
2、noise collection is int roduced. By looking forbroadcasting intermittent period using the voice judge circuit ,complicated noise signal at hall environment is sampledreal2time. Through A / D conversion and calculation ,the average power of noise signal can be measured. According tothe average power
3、of noise signal ,an adaptive volume cont rol system at complicated noise environment is designed. Thedesign of hardware and sof tware is simple and cost performance is good. Experimental result s show that the wholesystem can adaptive adjust s volume according to the environment noise signal , and i
4、t s engineering value is good.Keywords : voice detection ;noise sampling ;adaptive volume cont rol ;AT89S52一. 绪 论1.课题背景和意义1.噪音能够给人带来生理上和心理上的危害主要有以下几方面:a.损害听力b.噪音损害视力c.有害于人的心血管d.影响人的神经系统, 使人急躁、易怒e.影响睡眠, 造成疲倦。因此噪声对环境的监测与控制在对人的身体健康和身心健康方面有着重要的作用,加强对环境噪音的检测与控制显得尤其重要。2.随着传感器技术、微电子技术、单片机技术的不断发展,为智能噪音测控系统测
5、控功能的完善、测控精度的提高和抗干扰能力的增强等提供了条件。同时由于单片机具有集成度高、功能强、体积小、价格低、抗干扰能力等优于一般CPU的优点,因此,在要求较高控制精度和较低成本的工业测控系统中,往往采用单片机作为数字控制器取代模拟控制器。2.国内外研究现状a.我国的发展状况我国环境噪声自动连续监测系统的技术要求已纳人国家标准, 国家环保总局和国家质量监督检验检疫总局在年颁布修改的声环境质量标准及测量方法, 在测量仪器中增加环境噪声连续自动监测仪器, 并要符合有关规定。北京、上海、广州等大城市目前已安装丹麦公司生产的环境噪声连续自动监测系统。国产的环境噪声续自动监测系统已有产品。 目前我国环
6、境监测部门的噪声监测仪器大部分都采用具有单片机处理功能的积分统计声级计, 属便携式仪器, 这些声级计灵敏度随气压、温湿度而变化,影响测量精度, 需要经常校准, 声级计的关键部件传声器和整机不能在户外长期全天候的工作, 并需避雨雪、潮湿、风沙, 否则声级计的测量精度明显下降, 测量误差会很大甚至停止工作。b.国外的发展状况 发达国家已生产出全天候的长年能在户外进行测量的噪声自动监测系统, 可进行实时监测, 监测结可包括每小时、昼间、夜间或其它任意时段的等效级、统计声级等, 能存储噪声超标事件发生的录音,以便事后识别噪声源的性质。 国外环境应急监测发达国家生产的应急监测仪器体积小、重量轻、分析速度
7、快、操作简便、种类繁多, 有些仪器的性能指标接近或达到实验室仪器的水平, 而能源和溶剂的消耗却大大减少。国外环境常规污染物如、等的便携式仪器早已成熟, 便携式气相色谱作为现场分析仪器也已使用多年, 最近又出现了声表面波检测器, 又称“ 电子鼻” , 它与快速色谱技术联用, 可以对气体样品进行快速的采集和分析, 样品前处理设施也正在逐渐趋于小型化, 并用于野外分析, 例如英国等使用超临界萃取仪现场萃取了土壤中的多环芳烃, 其提取效率可达索式萃取的。美国的等也使用了同样的应急方法。3.总论在车站、码头、机场等公共大厅环境内均安装有公共广播系统,主要用于广播班次、通知等信息。然而大厅内的噪音是各种不
8、同频率和强度声音的无规则的组合,情况是复杂多变的,如旅客的嘈杂声、机车的启动、进站等大强度噪音均会对大厅广播造成干扰,导致旅客听不清广播信息。如果长时间开大广播音量则会引起听觉不适。如果手动实时进行音量调节也不太现实。通常,广播语音信号是间断的,而背景噪音在时间上多少是连续的;且声音信号具有较宽的频带,但能量主要集中在800 Hz 以下,因此,采用电容驻极式无指向性MIC ,可以线性地将此频段的声波转换为电平信号。根据这些特点,本文以AT89S52单片机为控制核心,通过在播音停顿间隙时刻采集噪音信号,经过A/ D 转换后计算噪音平均功率;然后根据噪音功率大小,设计并实现了自适应调节广播音量控制
9、系统。二 硬件设计方案1系统组成与工作原理 系统组成框图如图1 所示。系统采用AT89S51单片机作为控制核心。大厅内的噪音信号被MIC 采集后,经过放大、半波整流,滤波变成直流脉动电压信号,然后通过A/ D 转换形成数字噪音电平存入AT89S52 以备计算。取自大厅广播功放输出的播音信号经过放大限幅、整流滤波后,再与设定值进行二值比较,通过比较判断出此时是否处于播音间隙。CPU 只在播音间隙时段启动A/ D 转换,也就是在这个时段大厅内只有噪音,没有播音,这样就避免了MIC 将大厅播音也当做环境噪音采入,保证了两类音源的准确区分。如图2 所示。CPU 将采集到的最近100个噪音电平值进行计算
10、,得到平均噪音功率值,然后根据不同时刻的噪音平均功率大小控制继电器,切换不同的衰减电阻接入到扬声器回路,最终实现音量的实时控制。2系统组成框图AD转换整 流滤 波放大电 路MICAT89C51功率输出放大限 幅二值比较整 流滤 波 衰减电阻切换扬声器 图1. 系统框图3噪音检测电路由电容驻极式无指向性MIC 将噪音声波转换为电压信号后,进入运放NE5532进行信号放大。运放使用12 V 直流电源,配合调节R13改变放大增益,使线性放大后的交流信号在- 6 + 6 V之间。放大后的信号经过D11 、R17 组成的半波整流电路,检出0 + 6 V 的直流脉冲信号,再经C14 滤除高次谐波后得到相对
11、平滑的直流波动电平。R17 与C14 组成的RC 时间常数约为0. 1 s ,能够较快的反映出噪音信号的直流平均电压, 保证了噪声检测的实时性。同时0+ 6 V 的直流电压将覆盖ADC0809 的0 + 5 V 的A/ D转换区域,基本满足了转换的电平需求。噪声检测部分电路4播音判断电路 播音判断电路如图4 所示,该电路为CPU 采集噪音值提供时间依据。从播音功放输出口取出音频信号,首先经过运放NE5532 放大限幅,然后通过由D21 、R24 、C23 组成的半波整流滤波电路。与噪音检测电路相似,完成对播音信号的直流转换。LM393 构成二值判决电路,调节R25 确定翻转电平。当LM393
12、的“ + ”脚电位高于“ - ”脚电位时,LM393 输出高电平;反之,输出低电平。这样,当播音直流信号大于此判决阈值时,LM393 输出高电平即认为此时正在播音;当播音直流信号于此阈值时,LM393 输出低电平即认为此时没有播音,可以通知CPU 采集噪音值。播音判断电路部分电路图5A/ D 接口与CPU控制电路 A/ D 接口与CPU 控制电路如图5 所示。本系统A/ D图5 A/ D 接口与CPU 控制电路转换采用ADC0809; 74LS02 或非门为ADC0809 提供选通逻辑;AT89S52 的AL E 引脚为ADC0809 提供时钟信号;考虑到只有一路噪音模拟信号需要转换, 故将A
13、DC0809 的3 根地址线接地,即选择通道0 的信号转换;转换结果送到AT89S52 的P0 口。LM393 的输出接入AT89S52 的P3. 2 口,CPU 通过查询此端口判断是否可以启动A/ D 转换。A T89S52 的P1. 5 、P1. 6 端口用于输出控制信号,控制继电器的通断,进而切换不同电阻接入扬声器回路。A/ D 接口与CPU控制电路综上所述,噪声监测的完整电路图如下:三 软件设计系统的软件采用C 语言编写, 对单片机进行编程实现各项功能。为了方便程序调试和提高可靠性,软件采用模块化结构程序设计方法,主要包括初始化程序、主程序、定时中断服务程序、各子程序模块等。主程序完成
14、系统初始化,查询各种状态,打开多路转换开关控制相应操作等功能。1. 程序流程框图2. 程序源码#include#include#define _Nop() _nop_() sbit D18B20=P37;sbit k1=P15;unsigned char flag;unsigned char u,d=; void TempDelay (unsigned char us) while(us-);void Init18b20 (void) D18B20=1; _nop_(); D18B20=0; TempDelay(80); _nop_(); D18B20=1; TempDelay(14); _n
15、op_(); _nop_(); _nop_(); if(D18B20=0) flag = 1; else flag = 0; TempDelay(20); _nop_(); _nop_(); D18B20 = 1;void WriteByte (unsigned char wr) unsigned char idata i; for (i=0;i= 1; unsigned char ReadByte (void) unsigned char idata i; for(i=0;i= 1; D18B20 = 1; if(D18B20=1) u |= 0x80; TempDelay (2); _no
16、p_(); return(u);main() unsigned char a,b,c,j; while(1) Init18b20(); WriteByte(0xcc); WriteByte(0x44); Init18b20(); WriteByte(0xcc); WriteByte(0xbe); a=ReadByte(); b=ReadByte(); a=a4; b=b30) k1=0; else k1=1; for(j=0;j250;j+) P0=dc/10; P2=0xe3; TempDelay(100); P0=dc%10; P2=0xe7; TempDelay(100); 四 软件综合
17、调试1.系统调试工具keil c51 Keil C51 仿真器是一款利用KEIL C51 的IDE 集成开发环境作为仿真环境的廉价仿真器,是利用SST公司具有IAP功能的单片机SST89C58制作而成,主要是利用了SST89C58的IAP功能,所谓IAP功能是In application program 的英文缩写,是在应用编程的意思,通俗一点讲就是:它可以通过串口将用户的程序下载到单片机中,可以通过串口对单片机进行编程。它之所以具有这种功能,实际上它有两块程序flash区,其中一块flash中运行的程序可以更改另外的一块程序flash区中的程序,正是利用这一特性才用它作成了仿真器,我们把仿真
18、器的监控程序事先烧入SST89C58,监控程序通过SST89C58的串口和PC通讯,当使用KEIL C51的IDE环境仿真时,用户的程序通过串口被监控程序写入flash程序区中,当用户设置断点等操作仿真程序时,flash程序中的用户程序也在相应的更改,从而实现了仿真功能 。调试的主要方法 :1. 启动Keil c51 2. 新建一个工程。Project菜单New project ,选择好我们要保存的文件夹后,键入Frist 保存。接着弹出CPU类型选择框,我们选择最常用的AT89C51,按确定。3. 在工程中加入文件。新建一个文件,文件菜单FileNew,我们再选择:文件菜单FileSave
19、As? (另存为)弹出 对话框后,我们文件名框中键入First.c(注意文件后缀名是 .c)保存。C文件建好啦。现在我们把文件加入到工程中去。 点击Target 1前面的+号,右键单击Source Group 1选择Add Files to Group ,Source Group 1,选择添加 Add。编译运行,检查程序是否有错误。2. PROTEUS Proteus是一款EDA软件,该软件具有模拟电路仿真,数字电路仿真,单片机以及外围电路组成的系统的仿真,RS-232动态仿真,I2C调试器,SPI调试器,键盘和LCD系统的仿真,以及各种虚拟仪器,如示波器,逻辑分析仪,信号发生器等。该软件目前
20、支持的单片机类型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列、ARM以及各种外围芯片。该软件还支持大量的存储器和外围芯片,所以,该软件是一款集单片机和SPICE分析于一身的仿真软件。调试方法:首先用Keil软件将C编译成HEX文件,打开Keil软件,新建一个文档,输入C程序,保存成C格式文件,然后新建工程,连接单片机为AT89C51,选择Options for target,选择OUTPUT子菜单,在Create HEX Fi前打钩,DeBug子菜单中,Settings选择ProteusVSM Simulator,USE
21、前打钩,再次运行文件,成功后在目录下会生成HEX文件,打开Proteus软件,或直接点击DSN文件,双击单片机模板,点击文件夹式样的图标选择对应的HEX驱动文件,然后点击开始,进行调试3.实验结果单片机系统上电后,进入初始化程序,完成片内各模块的设置、清存储单元内容、端口设定等初始化工作。然后进入主程序,当查询到P3. 2 端口状态为低即播音间歇期时启动A/ D 转换。在采集到100 个噪音电平后计算出这100 个电平的平均功率 7 。根据功率值的大小,通过P1. 5 、P1. 6 端口,切换接入扬声器回路的衰减电阻。具体阻值大小根据现场试验确定。总的来说,如果噪音大,则串入电阻小,扬声器音量
22、增大; 如果噪音小,则串入电阻大,扬声器音量减小。模糊音量控制规则如表1 所示 8 。程序中同时打开10 秒定时中断,让当前的控制状态保持10 s 。如果这10 s 内有更大的噪音出现则马上切换到新的状态且再保持10 s ;如果这10 s 内没有更大的噪音出现则当前状态一直保持到10 s 结束,然后再根据新的噪音切换到新的状态。如此循环往复。软件上这样处理的优点是音量的调节不会过于频繁,既照顾了听觉上的自然感,又能及时响应突发大噪音的变化,实现了调节的实时性。系统实验中,通过利用收音机在电台盲区所发出的噪音来模拟环境噪声,通过MIC 采集后送入本系统;利用CD机播放一段没有背景音乐的间断语言信
23、号,通过功放放大后接入本系统;然后本系统将经过衰减理的语音功率信号接入扬声器。系统实物如图7 所示。实验中采用DT2815 噪音计测量声强,收音机距离噪音计0. 5 m ,扬声器距离噪音计3 m ,实验者与噪音计处在同一位置。首先设定一个噪声音量大小,噪音计测出相应的分贝值;然后打开功放调节语音音量至能够清晰听到为止,接着关掉收音机,噪音计测出此时的语音分贝值。这样经过多次试验,即可得到噪声大小与广播音量的对应关系。通过这种对应关系和功放的最大输出音量,就可确定图5 中R31 和R32 的切换状态。具体如表2 所示。最后同时打开收音机、功放和本系统,并且实时调整收音机的噪音大小即可实现表2 所
24、示的音量变化。由于每一组噪音采集和计算的时间不超过0. 3 s ,播音间隔时间一般不小于0. 4 s ,因此系统的实时性较好;而且本系统采用突发大噪声的延时控制算法,听觉上感觉音量的过渡变化比较自然。实验结果调试图:五 心得体会初次看到本次的课程设计的题目时,感觉设计的难度不大,但是由于是第一次运用单片机设计,在设计过程中又遇到了种种困难,又感觉到要完成此次设计还需要花费很大的时间和精力。但是经过本组同学的共同努力,运用科学的分析方法,最终顺利完成了本次单片机课程设计。经过两个星期的实习,过程曲折可谓一语难尽。在此期间我也失落过,也曾一度热情高涨。从开始时满富盛激情到最后汗水背后的复杂心情,点
25、点滴滴无不令我回味无长。生活也是这样,汗水预示着结果也见证着收获。劳动是人类生存生活永恒不变的话题。通过实习,我才真正领略到“艰苦奋斗”这一词的真正含义,我才意识到老一辈设计员为我们的社会付出。我想说,设计确实有些辛苦,但苦中也有乐,在如今物欲很流的世界,很少有机会能与大自然亲密接触,但我们可以,而且设计也是一个团队的任务,一起的工作可以让我们有说有笑,相互帮助,配合默契,多少人间欢乐在这里洒下,大学里一年的相处还赶不上这十来天的实习,我感觉我和同学们之间的距离更加近了;我想说,设计确实很累,但当我们的设计出现成果时,心中也不免产生兴奋,正所谓“三百六十行,行行出状元”我认为无论干什么,只要人
26、生活的有意义就可以。同时我认为我们的工作是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神。某个人的离群都可能导致导致整项工作的失败。实习中只有一个人知道原理是远远不够的,必须让每个人都知道,否则一个人的错误,就有可能导致整个工作失败。团结协作是我们实习成功的一项非常重要的保证。而这次实习也正好锻炼我们这一点,这也是非常宝贵的。另外,课堂上也有部分知识不太清楚,于是我又不得不边学边用,时刻巩固所学知识,这也是我作本次课程设计的第二大收获。整个设计我基本上还满意,由于水平有限,难免会有错误,还望老师批评指正参考文献【1】肖洪兵. 跟我学用单片机. 北京:北京航空航天大学出版
27、社,2002.8 【2】 何立民. 单片机高级教程 第1版北京:北京航空航天大学出版社,2001 【3】赵晓安. MCS-51单片机原理及应用. 天津:天津大学出版社,2001.3 【4】李广第 单片机基础 第1版北京:北京航空航天大学出版社,1999 【5】徐惠民、安德宁 单片微型计算机原理接口与应用 第1版 北京:北京邮电大学出版社,1996 【6】何立民从Cygnal 80C51F看8位单片机发展之路 单片机与嵌入式系统应用,2002年,第5期:P58 【7】 夏继强. 单片机实验与实践教程. 北京:北京航空航天大学出版社, 2001 【8】陈志强 胡辉. 单片机应用系统设计实践指南. 自编教材 【9】胡学海.单片机原理及应用系统设计M.北京:北京电子工业出版社,2005年.