家庭环境噪声检测系统设计与实现毕业论文.doc_第1页
家庭环境噪声检测系统设计与实现毕业论文.doc_第2页
家庭环境噪声检测系统设计与实现毕业论文.doc_第3页
家庭环境噪声检测系统设计与实现毕业论文.doc_第4页
家庭环境噪声检测系统设计与实现毕业论文.doc_第5页
已阅读5页,还剩92页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

家庭环境噪声检测系统设计与实现毕业论文目 录摘 要IAbstractII第1章 绪论11.1 课题背景11.1.1选题意义11.1.2 国内外研究动态21.2 研究内容及方案31.2.1 研究内容31.2.2 研究方案41.3 论文结构5第2章 家庭噪声检测硬件电路系统设计72.1 硬件系统整体设计72.2 噪声数据采集模块82.2.1 驻极体话筒82.2.2音频功率放大器112.2.3 噪声数据采集系统132.3 单片机控制模块142.3.1 STC12C5A60S2单片机142.3.2 噪声信号A/D转换162.4 无线数据传输模块182.4.1 NRF24L01功能与结构182.4.2 NRF24L01工作模式192.5 液晶显示模块212.6 报警模块242.7 复位模块242.8 电源供电模块252.9 本章小节25第3章 家庭噪声检测系统软件设计273.1 系统软件组成273.1.1 发送端程序273.1.2 接收端程序293.2 本章小结31第4章 家庭噪声检测系统调试与分析334.1 硬件系统调试334.1.1 硬件系统调试过程334.1.2 硬件系统问题及解决334.2 软件系统调试344.3 测试结果分析344.4 本章小结35结 论36参考文献37致 谢39附录141附录249附录351附录459I第1章 绪论 第1章 绪论1.1 课题背景1.1.1选题意义声音使这个世界变得更加美妙,悦耳的声响总是能够带给人美的享受。但是,当声音在人们不需要时出现,就变得不再美妙,而是成为让人厌烦的噪声。在这个生活节奏越来越快的现代化社会中,噪声已几乎充斥于世界的每个角落。即使是躲在家里,也存在噪声,临街卧室中车来车往的声音;隔壁家的悄悄话;卫生间下水管的水声等。通常情况下,影响人们正常生活,包括学习,休息和工作的声音,即某一区域内不被人类所需要的声音都可以称为噪声。当噪声强度超过人们所能承受的程度,严重干扰了人类正常的生活和生产活动,就形成噪声污染1。环境噪声污染严重时甚至影响人们的身体健康。噪声对人体最直接的危害就是造成听力损害,它可能使人短时间失聪,长期处于噪声污染严重的环境中的人还可能永久性失聪,这种病症称为噪声性耳聋;另一方面,噪声还会影响人的睡眠质量,强烈的噪声会导致人无法安然入睡,让人心情烦躁。许多证据表明,噪声会引起人体心理和生理上的许多不良反应,还会影响胎儿的生长发育和儿童的智力发展。正是由于这种种危害,目前噪声已经成为世界性四大环境公害之一。家庭是人们活动的最主要场所,据统计,人的一生中至少有一半时间是在家庭中渡过的。从每个人所处不同位置的时间长短来考虑,居室内噪声强度对人的影响起着举足轻重的作用。而且从人的心理需求方面看,工作劳累一天之后,人们总希望有一个安静舒适的家庭环境以便充分地休息和消除疲劳,因此研究如何检测和控制家庭环境中噪声强度对人们的身心健康无疑具有重要意义。控制家庭环境噪声的前提是研究家庭环境中噪声强度,而研究家庭环境中噪声强度最科学的手段就是对家庭环境噪声进行检测。环境检测是环境科学的一个重要分支。广义上,是在一定时期内对环境因子进行重复测定, 追踪其变化;狭义上,是对环境进行定期测定,作为判断环境是否达到标准以及评价环境管理和环境控制系统效果的依据。家庭环境噪声检测是人们认识家庭环境噪声、评价家庭环境噪声,制定和执行家庭环境噪声标准,进行家庭环境决策的主要依据,是实现家庭环境管理科学化的基础,是家庭环境保护工作的重要组成部分。只有实现对噪声强度的准确测量,才能够完成对噪声强度的控制和防止噪声污染。1.1.2 国内外研究动态目前发达国家生产的噪声检测系统,可以不间断的对噪声实施检测,不仅能够检测白天的噪声强度,而且可以检测夜间的噪声强度,甚至,能够实现对任意时段任意位置的噪声进行检测,其所得到的监测数据是连续的,因而更加准确。如今,国外一些发达国家对噪声检测的研究主要汇聚在两个方面:一是在不特意建立噪声自动检测系统的前提下,如何实现对噪声的准确测定;二是在已经测得的噪声数据中如何获取更多的有用信息。最近,发达国家在噪声检测系统的研究中取得一些重大进展。通过使用 ACF和IACF分析方法,Kenji Fujii等人对各种类型的噪声源(如汽车的鸣笛声、人的呐喊声等)建立了相应的模型,在此模型的基础上,利用噪声自动检测系统测得的数据就能判断出产生这些噪声的声源类型,这对防治噪声污染有重要意义。通过进行实地调查和实验,Jin Yong Jeon等人使用多重回归分析方法,建立了把多种不同类型的单个声源结合在一起综合评定噪声强弱的模型,这对准确地从人类主观感受评价噪声强度有重要意义。另一研究方向是如何降低噪声自动检测的成本,Silvia Santini等人正在研究是否可以使用普通手机的听筒来对环境噪声进行自动检测。整合目前的研究成果,他们得出的结论是,通过编写一些在手机上可以应用的噪声处理软件,便可以把手机听筒作为噪声检测的终端,且效果并不比专业声级计差。这项研究成果如能投产,将大大促进噪声自动检测事业的发展2。至今为止,我国在噪声自动检测方面的研究主要集中在以下几个方面: (1)研究城市噪声的组成;(2)如何优化噪声自动检测系统的结构;(3)如何合理安排噪声自动检测系统各检测点的设定;(4)如何用最少的时间有效测定噪声值;(5)如何整合处理噪声检测系统所测得的数据。在许多前辈学者辛勤劳作下,我国终于初步建立了一套完整的环境噪声检测系统,具备了对环境噪声进行常规监测的能力。但仍有很多不完善的地方,技术的不成熟和仪器的不稳定,完全不能够满足日益强化的对环境噪声进行管理的需求,与发达国家相比存在一定差距。我国监测频次低,数据代表性差。人们的生产活动严重影响噪声污染水平,而且噪声污染程度在一年四季中存在很大的差异,一年一次的测量完全不能够反映某一地区噪声水平。但由于测量设备和测量人员等多种因素的影响,目前还是不能够大幅度提高测量的频率。另一方面监测点位多,浪费人力物力。噪声信号的空间分布是不连续的,只有采用多点抽样法测量,才能较为真实地反映一个区域的噪声平均污染水平。然而,目前使用的监测仪器都是便携式,需要监测人员到现场测量。如此繁琐而简单的工作耗费了监测技术人员大量的精力,致使噪声检测只停留在简单的数据测量阶段,而无法进行更深层次的分析和评价,导致我国环境噪声检测水平的滞后。1.2 研究内容及方案1.2.1 研究内容本课题研究的基本内容是设计一个适用于家庭的噪声检测系统,完成对家庭环境中噪声强度的测量,为家庭环境噪声测量提供一个价格低廉,方便实用的系统。本系统能够实现的基本功能包括:噪声测量,无线传输,显示噪声值,超限报警等。要实现对噪声强度的测量和传输,本系统至少应包括发送端和接收端两个部分,以下将分别介绍这两个子系统应该完成的任务和所能够实现的功能。发送端使用噪声传感器对家庭中的某个房间噪声强度进行不间断测量,将噪声强度转化为一个能够代表其大小的电量值,经放大器电路放大以便进行后期处理,再使用AD转化器对噪声传感器所采集的模拟量转换成数字量,以实现与单片机系统的兼容,单片机将该数字量同时传送给液晶显示器和无线传输模块,液晶显示器将代表噪声强度的数值显示出来以实现与人的交互,无线传输模块将单片机送来的一组一组代表噪声强度的数据通过无线的方式发送出去。接收端不间断的检测和接收来自发送端的信号,经过处理后将代表噪声强度的数值传送给接收端的单片机,单片机首先判断其大小是否超过预定值,若超过便启动报警器,并将其值在液晶显示器上显示,若没有超过,便只显示而不报警。通过分析,本次设计需要解决的问题包括:(1)采用何种噪声传感器测量噪声强度,系统使用带有迷你麦克和专业放大芯片LM386的噪声传感器模块完成对噪声值的测量,该模块输出范围为05V的模拟电压值,代表噪声强度;(2)如何完成对测量值的模数转换,本次设计所采用的单片机为STC12C5A60S2单片机,该单片机内部集成了一个具有8路输入的AD转换器,使用单片机自带的AD转换器即可完成对测量值的模数转换。如此,便可减少系统所用芯片的数量,简化系统结构;(3)如何完成测量数据的无线传输,本系统采用NRF24L01无线传输模块,该模块与单片机具有很好的兼容性,且通信距离远,传输效率高。1.2.2 设计方案实现对家庭环境噪声的检测有两种设计方案,基于Zigbee技术的家庭无线噪声检测系统和基于单片机的家庭无线噪声检测系统,下面分别介绍这两种方案。基于Zigbee技术的家庭无线噪声检测系统主要由噪声传感器节点、网关节点和监控终端3个部分构成3。在房间中部署多个无线噪声传感器节点,噪声传感器节点负责采集监测环境噪声强度数据。通过星形的网络架构组织本系统中各个节点与网关节点,各传感器节点将采集到的信息直接传输给网关节点。网关节点是网络内数据的汇聚节点,具有一定的数据融合能力,同时用它来连接无线传感器网络与监控终端。监控终端将接收到的来自网关节点的数据进行汇总和分析,并记录该房间噪声强度,当房间噪声强度超出预定值时,启动报警器。基于单片机的家庭无线噪声检测系统主要以STC12C5A60S2单片机和NRF24L01无线传输模块为核心,分为发送端与接收端两部分。发送端应用噪声传感器采集噪声强度信息,在单片机内部进行AD转换,通过无线发送模块将噪声强度信息传输到接收端,接收端主要负责显示接收到的噪声强度并判断是否超限报警4。此系统工作过程中比较稳定,易于实现。为减少成本和缩小系统体积,本次设计采用基于单片机的噪声测量系统。要实现对噪声强度的测量和传输,本系统至少应包括发送端和接收端两部分,为了便于实现,应用生产实习制作的单片机板,外接噪声传感器模块便可以完成基于单片机的无线噪声检测系统。1.3 论文结构第1章为绪论,阐述课题研究背景和意义,讨论课题研究的主要内容以及课题研究方法和设计方案。第2章为系统硬件电路设计方案,阐述系统硬件电路的总体设计方案,各模块的设计方案以及所用电子器件的内部结构和工作原理。第3章为系统软件程序设计方案,阐述系统软件总体设计方案,软件编写思路以及各函数之间的协调关系。第4章为系统调试和结果分析,阐述系统硬件和软件调试过程中采用的方法和遇到的问题及其解决方案,系统的结果分析等。 3 第2章 家庭噪声检测硬件电路系统设计 第2章 家庭噪声检测硬件电路系统设计2.1 硬件系统整体设计 本课题目标是对家庭环境噪声强度进行检测,该系统完成要求包括能够测量家庭环境中噪声强度,并显示噪声强度值;通过无线方式将测得的数据传输给控制中心;噪声超过预定值,系统能够报警提示。为了完成任务要求,本次设计方案整体系统包括发送端子系统和接收端子系统。发送端子系统主要包括数据采集模块,发送端控制模块,显示模块和无线传输发送模块;接收端子系统主要包括无线传输接收模块,接收端控制模块,显示模块和报警模块。数据采集模块采用集成噪声传感器和放大电路的噪声传感器模块完成对噪声值的测量,该模块中包含采集噪声的迷你麦克,它能够用一个电压的大小反应出周围环境中噪声的大小,由于该电量值一般在mV级,太小而不适合进一步处理,故在该模块内部集成了一个专业的音频放大电路,其输出范围在05V,适合进一步处理。由噪声传感器模块所测得的噪声值是在时间和幅值上均连续的模拟量,不适于单片机系统,故需要对其进行模数转换,数字量才能够在单片机系统中传输、处理。本次设计采用STC12C5A60S2单片机作为控制模块的主控芯片,由于该单片机内部已经集成了一个具有8路输入的高速模数转换器,为简化系统和降低成本,将使用单片机完成对所测量值的模数转换,并将转换后的数字量同时传送给显示模块和无线传输模块。显示模块采用LCD1602液晶显示器完成对噪声强度值的显示,将来自单片机的数据在液晶屏上显示出来。无线传输模块采用NRF24L01无线传输模块完成数据的传输,无线传输发送模块将数据采集模块的数据以无线的方式不停的发送出去,无线传输接收端不间断接收来自发送端的数据,并传送给接收端控制模块,控制模块的主控芯片STC12C5A60S2单片机判定噪声强度是否超过预定值,若超过便启动报警模块进行报警,报警模块采用最简单的蜂鸣器完成报警任务。本次设计的系统整体框图如图2-1所示,由此图可见本系统分为发送端子系统和接收端子系统。发送端子系统包括噪声数据采集模块、单片机控制模块、无线数据发送模块、液晶显示模块、复位模块和电源供电模块;接收端子系统包括单片机控制模块、液晶显示模块、报警模块、无线数据接收模块、复位模块和电源供电模块。l 发送端子系统51单片机LCD显示屏声音传感器复位模块电源供电模块nRF24L01发送端l 接收端子系统51单片机LCD显示屏报警模块复位模块电源供电模块nRF24L01接收端图2-1 系统整体框图2.2 噪声数据采集模块 本模块采用噪声传感器完成对家庭环境中噪声强度的测量,该噪声传感器模块主要包含驻极体电容式话筒和LM386音频放大电路。驻极体话筒作为噪声传感器,主要完成非电量到电量的转换,输出一个能够代表噪声强度的电压值。LM386音频放大电路主要负责对驻极体话筒的输出电压值进行放大等初步处理,以下将分别介绍驻极体话筒和LM386音频放大电路的特点和工作原理等。2.2.1 驻极体话筒驻极体话筒具有体积小、结构简单、电声性能好、价格低的特点,广泛用于盒式录音机、无线话筒及声控等电路中,属于最常用的电容话筒,它不仅能够用来测量声音强度,也可以作为声音输入端,完成录音的功能,其外观如图2-2所示。图2-2 驻极体话筒1. 驻极体话筒内部结构和工作原理驻极体话筒主要由声电转换和阻抗转换两部分组成,其内部结构如图2-3所示,前半部分为声电转换部分,后半部分为阻抗转换部分。图2-3 驻极体话筒内部结构声电转换的关键元件是驻极体振动膜,其基本结构由一片单面涂有金属的驻极体薄膜与一个上面有若干小孔的金属电极(称为背电极)构成。驻极体面与背电极相对,中间有一个极小的空气隙,形成一个以空气隙和驻极体作绝缘介质,以背电极和驻极体上的金属层作为两个电极的平板电容器。背电极和驻极体薄膜上分布有等量且总数不变的自由电荷。声波会引起驻极体薄膜振动而改变电容两极之间的距离,从而引起电容的容量发生变化。声音的强度越大,声波的振动幅度越大,引起电容两极间距离的变化越大,电容的容量变化越大。由于驻极体上的电荷数始终保持恒定,根据公式Q=CU可知,当C变化时必然引起电容器两端电压U改变,从而输出电压信号随着声音强度的变化而改变,实现声电的转换。驻极体膜片与金属极板构成的电容器的电容量很小,一般为几十pF,输出的电信号极为微弱,而它的输出阻抗值很高,约几十兆欧以上,这样高的阻抗是不能直接与音频放大器相匹配的,所以必须连接一个阻抗变换器。通常使用在内部源极和栅极间再复合一只二极管的专用场效应管作为阻抗变换器,内部电气原理如图2-4所示,这里接二极管的目的是在场效应管受强信号冲击时起保护作用。电容器的两个电极接在栅源极之间,电容两端电压既为栅源极偏置电压,变化时,引起场效应管的源漏极之间的电流变化,实现了阻抗变换,一般经阻抗变换后话筒输出电阻小于2千欧。图2-4 驻极体话筒电气原理2. 驻极体话筒的输出电路驻极体话筒输出电路如图2-5所示,话筒引出端分二端式和三端式两种。二端输出方式是将场效应管接成漏极输出电路,类似晶体三极管的共发射极放大电路,只需两根引出线,漏极D与电源正极间接一个漏极电阻R,信号由漏极D经电容C输出,源极S与编织线一起接地。漏极输出有电压增益,因而话筒灵敏度比源极输出时要高,但电路动态范围略小。目前市售的驻极体话筒大多是这种连接方式,本设计采用的话筒正是这种输出方式。三端输出方式是将场效应管接成源极输出方式,类似晶体三极管的射极输出电路,需要用三根引线。漏极D接电源正极,源极S与地之间接一个电阻R来提供源极电压,信号由源极经电容C输出。编织线接地起屏蔽作用源极输出的输出阻抗小于2K,电路比较稳定,动态范围大,但输出信号比漏极输出小。三端输出式话筒目前市场上比较少见,实际共有4种接线方式,如图2-5所示,若电源为正极接地时,只须将D、S对换一下,仍可成为两端输出或者三端输出,R的大小要根据电源电压大小来决定。图2-5 驻极体话筒输出电路2.2.2音频功率放大器LM386是美国国家半导体公司生产的音频功率放大器,具有自身功耗低、增益可调整、电源电压范围大、外接元件少和总谐波失真小等优点,广泛应用于录音机,收音机和声控电路之中。1. LM386的引脚说明LM386的封装形式有塑封8引线双列直插式和贴片式,本设计采用双列直插式封装的芯片,其各引脚及功能简介如图2-6所示。图2-6 LM386引脚功能图2. LM386的内部电路及放大原理图2-7 LM386内部电路图LM386的内部电路如图2-7所示,第一级为差分放大电路,VT1和VT3、VT4和VT2分别构成复合管,作为差分放大电路的放大管;VT5和VT6组成镜像电流源作为VT3和VT4的有源负载;VT1和VT2信号从管的基极输入,从VT4管的集电极输出,为双端输入单端输出差分电路。使用镜像电流源作为差分放大电路有源负载,可使单端输出电路的增益近似等于双端输出电路的增益。第二级为共射放大电路,VT7为放大管,恒流源作有源负载,以增大放大倍数。第三级中的VT8和VT9管复合成PNP型管,与NPN型管VT10构成准互补输出级。二极管VD1和VD2为输出级提供合适的偏置电压,可以消除交越失真。电阻R7从输出端连接到VT4的发射极,形成反馈通路,并与R5和R6构成反馈网络,从而引入了深度电压串联负反馈,使整个电路具有稳定的电压增益。引脚2为反相输入端,引脚3为同相输入端,电路由单电源供电,故为OTL(Output Transformer Less)电路。输出端(引脚5)应外接输出电容后再接负载。2.2.3 噪声数据采集系统图2-8 数据采集模块该模块的硬件实物如图2-8所示,数据采集模块电路图如图2-9所示,分析电路图可知,置于电路前端的MIC完成对环境中噪声的测量,输出代表噪声强度的一个电信号,作为音频输入连接到LM386音频放大电路中。信号经C02输出,C01起到平滑电信号的作用。改变滑动变阻器的大小可以改变输入音量的大小。PYPASS端外接的电解电容C03,起滤除噪声的作用,工作稳定后,该管脚电压值约等于电源电压的一半。在器件上电、掉电时的噪声就是由该偏置电压的瞬间跳变所致,这个电容可以减缓直流基准电压的上升、下降速度,有效抑制噪声。接在1脚、8脚间的电容C04(1脚接电容+极)将系统的增益设定为200dB,断开时增益为20dB。输出耦合电容C06的作用是隔断直流电压和耦合音频的交流信号,直流电压过大有可能会损坏负载。图2-9 数据采集模块电路图2.3 单片机控制模块 控制模块主要负责连接和协调各模块,对数据采集模块传来的模拟数据进行AD转换。本模块主要有STC12C5A60S2单片机组成,该单片机内部集成了一个具有8路输入的高速AD转换器,可以将模拟噪声值转换为数据噪声值。以下将详细介绍STC12C5A60S2单片机及其内部模数转换器的工作原理。2.3.1 STC12C5A60S2单片机单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051 单片机。指令代码完全兼容传统8051,但速度快8-12 倍;内部集成MAX810专用复位电路、2 路PWM、8 路高速10 位A/D转换(250K/S)。1. STC12C5A60S2单片机控制原理单片机的控制作用主要体现在对数据流向的控制,在发送端子系统中主要用到了该单片机的P1口,P0口和P3.2引脚等,其对数据流向的控制如图2-10所示。P1.7P1.0P1.2P1.4P0口单片机模数转换器数据存储器中断系统SPI驱动P3.2无线传输发送模块数据采集模块显示模块图2-10 发送端数据流向单片机由P1.7引脚接收来自数据采集模块传来的噪声模拟信号,并把该模拟信号送给其内部的模数转换器,接着启动模数转换器将模拟信号转换为数字信号,存入数据存储器。然后,单片机采用8位并行传输方式通过P0口将噪声强度数据传输给显示模块,采用SPI串行传输方式通过P1.0、P1.2和P1.4引脚将噪声值数据传输给无线传输模块发送端。发送端将数据成功发送之后通过P3.2引脚给单片机一个下降沿,以启动其内部的中断系统,单片机接收到中断信号后做出相应的反应。在接收端子系统中主要用到了该单片机的P1口,P0口以及P2.4,P3.2引脚等,其对数据流向的控制如图2-11所示。无线传输模块接收端成功接收数据之后,通过单片机P3.2引脚启动其中断系统,单片机得知信号收到之后采用SPI串行传输方式通过P1.0、P1.2和P1.4引脚将噪声值数据存入数据存储器中。然后,单片机采用8位并行传输方式通过P0口将噪声值数据传输给显示模块。当噪声值超系统的预定值时,单片机会通过P2.4引脚启动报警器。P2.4P1.0P1.2P1.4P0口单片机数据存储器中断系统SPI驱动P3.2无线传输接收模块报警模块显示模块图2-11 接收端数据流向2. STC12C5A60S2单片机的程序下载电路通过使用STC-ISP 软件,该单片机可实现串口在线编程,无需编程器,无需仿真器,其程序下载电路如图2-12所示。图2-12 STC12C5A60S2程序下载电路2.3.2 噪声信号A/D转换STC12C560S2系列单片机的A/D 转换口在P1 口(P1.7-P1.0),有8 路8 位高速A/D 转换器,速度可达到300KHz(30 万次/ 秒),8 路电压输入型A/D,可做温度检测、电池电压检测、按键扫描、频谱检测等。上电复位后P1 口为弱上拉型I/O 口,用户可以通过软件设置将8 路中的任何一路设置为A/D 转换输入口,不需作为A/D 使用的接口可继续作为I/O 口使用。在本系统中,该单片机内部的A/D转换器负责将数据采集模块输出的噪声模拟电信号转换为数字信号。图2-13 模数转换内部结构图STC12C560S2单片机中A/D转换器的内部结构如图2-13所示,其主要包括ADC控制寄存器,10-bit DAC,比较器,逐次比较寄存器等。通过向单片机内部A/D 转换控制特殊功能寄存器写入数值,可实现对A/D转换器的控制。其各标志位的作用如下:CHS2 / CHS1 / CHS0为模拟输入通道选择控制位;ADC_START为转换启动控制位,设置为“1”时,开始转换,转换结束后为“0”;ADC_FLAG为转换结束标志位,当A/D 转换完成后,ADC_FLAG = 1,要由软件清0;SPEED1,SPEED0为转换速度控制位;ADC_POWER为电源控制位。0表示关闭ADC 电源;1表示打开A/D 转换器电源。当ADC_START位被置“1”之后,模数转换启动,其工作工程为,逐次比较寄存器输出8位或者10位的二进制数值到D/A转换器,DAC将该数字值转换为模拟量,比较器比较该模拟量与模拟输入值大小,若模拟值大,则增大逐次寄存器的值,重复上述操作,直到确定模拟输入值是位于两个相邻数字值之间。然后,将这两个相邻的数字值中的一个作为最终结果存入AD转换结果寄存器ADC_RES和ADC_RESL中。在模数转换器内部存在一个10-bit DAC,其内部结构如图2-14所示,其工作原理为数字值作为DAC的输入,各位分别控制的开关状态。由于各开关支路中权阻值不同,在同一基准电压下,各开关支路中的电流处于不同数量级,支路电流通过加法器输出的电压值作为数模转换结果。图2-14 数模转换内部结构图2.4 无线数据传输模块数据传输模块主要负责实现噪声值数据从一端到另一端的无线传输,本模块主要由nRF24L01无线通信芯片及其外围电路组成。nRF24L01是NORDIC公司的一款无线通信芯片,采用FSK调制,内部集成NORDIC的Enhanced Shock Burst协议,可以实现点对点或是1对6的无线通信,无线通信速度最高可达2Mbps。只需为单片机系统预留5个GPIO,1个中断输入引脚,就可以很容易实现无线通信的功能,非常适合用来为MCU系统构建无线通信功能。以下将详细介绍nRF24L01无线通信芯片的工作原理。2.4.1 NRF24L01功能与结构nRF24L01是单片射频收发芯片,工作于2.42.5 GHz ISM频段,工作电压为1.93.6 V,有多达125个频道可供选择。可通过SPI写入数据,最高可达10 Mb/s,数据传输率最快可达2 Mb/s,并且有自动应答和自动再发射功能。芯片内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,如图2-15所示,并融进了增强式Shock Burst技术,其输出功率和通信频道可通过程序进行配置。图2-15 nRF24L01内部结构nRF24L01的内存区一共有24个寄存器,nRF24L01所有的配置字都由配置寄存器来定义,这些配置寄存器可通过SPI口访问。SPI接口由SCK,MOSI,MISO及CSN组成,在配置模式下单片机通过SPI接口配置nRF24L01的工作参数,在发射或接收模式下单片机从SPI接口发送或接收数据。单片机的控制指令从nRF24L01的MOSI引脚输入,而nRF24L01的状态信息和数据信息是从其MISO引脚输出并送给单片机的。2.4.2 NRF24L01工作模式无线传输模块发送端和接收端硬件上是一样的,其电路图如图2-16所示,NRF24L01具有收发模式(接收模式和发射模式)、待机模式和掉电模式四种工作模式,并由CE、寄存器内部PWR_UP和PRIM_RX共同控制。RF24L01收发模式有Enhanced ShockBurstTM收发模式、ShockBurstTM收发模式和直接收发模式三种,收发模式由器件配置字决定。在Enhanced ShockBurstTM收发模式下,NRF24L01自动处理字头和CRC校验码。在接收数据时,自动把字头和CRC校验码移去;在发送数据时,自动加上字头和CRC校验码。图2-16 无线传输模块电路图Enhanced ShockBurstTM发射流程如下:(1)把接收机的地址和需要发送的数据按时序送入nRF24L01;(2)配置CONFIG寄存器,使之进入发送模式;(3)微控制器把CE置高(至少10us),激发nRF24L01进行Enhanced ShockBurstTM发射;(4)nRF24L01的Enhanced ShockBurstTM发射过程是给射频前端供电;射频数据打包(加字头、CRC校验码);高速发射数据包;发射完成,nRF24L01进入空闲状态。Enhanced ShockBurstTM接收流程如下:(1)配置本机地址和需要接收的数据包大小;(2)配置CONFIG寄存器,使之进入接收模式,把CE置高;(3)130us后,nRF24L01进入监视状态,等待数据包的到来;(4)当接收到正确的数据包(正确的地址和CRC校验码),nRF24L01自动把字头、地址和CRC校验位移去;(5)nRF24L01通过把STATUS寄存器的RX_DR置位(STATUS一般引起微控制器中断)通知微控制器;(6)微控制器把数据读出;(7)所有数据读取完毕后,可以清除STATUS寄存器。2.5 液晶显示模块显示模块负责显示噪声的大小,本系统采用的显示器件是LCD1602字符型液晶显示器。LCDl602 可分为2 行共显示32个字符,每行显示16个字符;其可与8位或4位微处理器连接;内藏式字符发生器ROM,可提供160种工业标准字符,包括全部大小写字母、阿拉伯数字及日文片假名,以及32个特殊字符或符号的显示;内藏RAM可根据用户的需要,由用户自定义字符或符号;+5V单电源供电;低功耗(10mW)。1 LCD1602介绍表2-1 LCD1602各管脚功能表管脚名称功能1VSS电源地2VDD接+5V电源3VEE接+5V电源4RS寄存器选择5R/W读写信号线6E使能端714D0D78位双向数据线LCD1602引脚功能如表2-1所示,其中RS 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器;R/W 为读写信号线,高电平时进行读操作,低电平时进行写操作。 当 RS 和 R/W 共同为低电平时可以写入指令或者显示地址, 当 RS 为低电平 R/W 为高电平时,可以读忙信号,当 RS 为高电平 R/W 为低电平时可以写入数据;E 端为使能端,当 E 端由高电平跳变成低电平时,液晶模块执行命令。液晶显示模块连接电路如图2-17所示, LCD1602液晶显示器实物如图2-18。图2-17 液晶显示模块电路图a) LCD1602正面实物图b) LCD1602反面实物图图2-18 LCD1602液晶显示器实物图2 LCD1602的内部结构和显示原理LCD1602 内部结构由DDRAM、CGROM、IR、DR、BF、AC 等大规模集成电路组成,其各部分的功能如下:(1) DDRAM 为数据显示用的RAM,用以存放要显示的数据;(2)CGRAM 为字符产生RAM,可供使用者存储特殊造型的造型码;(3) IR 为指令寄存器,负责存储MCU 要写给LCD 的指令码;(4) DR 为数据寄存器,它们负责存储单片机要写到CGRAM 或DDRAM 的数据;(5) BF 为忙碌信号,当BF 为l 时,不接收单片机送来的数据或指令;当BF 为0 时,接收外部数据或指令。所以在写数据或指令到LCD 之前,必须查看BF 是否为0;(6) AC 为地址计数器,负责计数写入/读出CGRAM 或DDRAM 的数据地址。 LCD1602的显示原理,LCD1602通过指令寄存器IR接收来自MCU的指令,设置其工作模式和数据地址,通过数据寄存器DR接收来自MCU的ASCII码,并将其写入相应地址的DDRAM,显示器便会在屏幕的相应位置显示该ASCII码所对应的字符。1602 的内部显示地址如图2-19所示,假如需要在第一行第五列写入字符,并不是直接写入05H就可以将光标定位在第一行第五个字符的位置,因为写入显示地址时要求最高位D7恒定为高电平,所以实际写入的数据应该是:00000101B(05H)+10000000B(80H)10000101B(85H)。图2-19 LCD1602的内部显示地址2.6 报警模块报警模块主要负责在噪声值超过预定值时发出报警,主要由蜂鸣器组成,单片机通过P2.4口对蜂鸣器模块进行控制,硬件电路如图2-20所示。图2-20 报警模块2.7 复位模块复位电路,就是利用它把电路恢复到起始状态,就像计算器的清零按钮的作用一样,为确保系统中电路稳定可靠工作,复位电路是必不可少的,单片机通过RESET接口对复位模块进行控制,硬件电路如图2-21所示。图2-21 复位模块2.8 电源供电模块电源供电模块通过USB电源线与电源适配器连接,输出+5V的直流电压,驱动系统正常运行,硬件电路如图2-22所示。图2-22 电源供电模块2.9 本章小节本章主要从硬件电路设计的角度对系统的设计方案进行了论述,首先简要阐述系统电路的整体设计方案,然后详细介绍数据采集模块,控制模块,数据传输模块,液晶显示模块,报警模块,单片机复位模块与电源供电模块7个模块详细,阐述各模块对整个系统的作用。在数据采集模块中,详细介绍了该模块主要器件驻极体话筒和LM386音频放大电路的内部结构和工作原理等;在控制模块中,详细介绍了STC12C5A60S2单片机的控制作用及其内部模数转换器的工作原理;在数据传输模块中,详细介绍了该模块主要器件nRF24L01无线通信芯片的工作原理;在显示模块,详细介绍了本系统显示器件LCD1602的内部结构和显示原理;然后简要介绍了一下报警模块、单片机复位模块与电源供电模块。19 第3章 家庭噪声检测系统软件设计 第3章 家庭噪声检测系统软件设计本系统软件程序在编写时,采用先分模块编写,再整合为一个整体的方法,本章将详细阐述本系统软件设计方案。3.1 系统软件组成整个软件系统分为发送端子系统和接收端子系统两部分,下面将分别对这两个子系统的软件结构和编写思路进行阐述。3.1.1 发送端程序1 发送端程序结构发送端子系统的主要任务包括测量环境中噪声强度,显示噪声强度值,通过无线方式发送噪声强度数据,所以本系统软件分别分3个程序源文件编写程序,实现对应的3个任务,用一个主函数程序源文件协调各模块程序,发送端程序结构如图3-1所示。图3-1 发送端程序结构图AD.c文件中的程序用于实现将数据采集模块测量所得的噪声模拟值转换为数字值,其中主要包括AD转换初始化函数以及AD转换函数;1602.c文件中的程序用于驱动LCD1602液晶显示器,其中主要包括LCD1602的初始化函数和显示噪声值函数;fasong.c文件中的程序用于实现噪声值数据的无线发送,其中主要包括SPI读写函数,设置发送模式函数以及发送函数。main.c文件中主要包括主函数,通过协调其他程序源文件中的子函数以控制发送端子系统正常工作。2 发送端主函数程序设计发送端子系统的主函数流程图如图3-2所示,其主要任务是初始化LCD1602液晶显示器和NRF24L01无线通信芯片,配置并启动AD转换,显示噪声值,发送噪声值数据。否是1602初始化NRF24L01初始化A/D转换初始化启动AD转换,读取结果获取噪声值的每一位显示噪声值发送噪声值数据数据是否发送成功继续发送图3-2 发送端主函数流程图Lcd_Int()函数为LCD1602液晶显示器的初始化函数,其通过调用写指令函数Lcd_WriteCom()设置液晶显示器的工作模式为:162显示,57点阵,8位数据接口;无光标闪烁,光标右移,字符不移。Read_init(7)函数为AD转换初始化函数,主要负责配置与AD转换相关的特殊功能寄存器ADC_CONTR的值,设置AD转换的模式为采用通道7为模拟输入口,确定转换速度为1 4 0个时钟周期转换一次,启动AD转换电源;nRF4L01_Init()函数为nRF24L01通信芯片初始化函数,使之工作在掉电模式;单片机执行display()函数,将在液晶屏幕的第一行上显示“NOISE”字样,然后系统进入循环采集并发送数据阶段。首先,系统调用ADC_Read()函数,将输入的模拟值转换为数字值,并将结果作为返回值赋值给变量noise。通过zhuanhua()函数,可以得到其入口参数noise值的每一位值,并将结果存入发送数据寄存器TX_Buffer中,然后分别调用displaynoise()函数和fasong()函数将噪声值每一位显示在液晶显示屏上并发送出去。displaynoise()函数将噪声值的每一位转化为对应的字符,依次显示在液晶屏的第二行指定位置。fasong()函数通过调用nRF24L01_Set_TX_Mode(&TX_Bufferi)函数设置发送模式并将TX_Buffer中的噪声值数据发送出去,并调用Check_Ack()函数检测数据是否成功发送出去,如果成功LED灯闪烁。所有数据都发送出去之后,系统重新读取AD转换结果,重复上述操作。3.1.2 接收端程序1 接收端程序结构通过对接收端端硬件电路的分析可知,接收端子系统的主要任务包括接收来自发送端的噪声值数据,显示噪声强度,超过预定值报警,所以本系统软件分别分3个程序源文件编写程序,实现对应的3个任务,用一个主函数程序源文件协协调各模块的程序,其程序结构如图3-3所示。图3-3 发送端程序结构图1602.c文件中的程序用于驱动LCD1602液晶显示器,其中主要包括LCD1602的初始化函数和显示噪声值函数;jieshou.c文件中的程序用于实现噪声值数据的无线接收,其中主要包括SPI读写函数,设置接收模式函数以及读取接受结果函数。fengmingqi.c文件中的程序用于驱动蜂鸣器,主要包括蜂鸣器发声函数,即报警函数。main.c文件中主要包括主函数,通过协调其他程序源文件中的子函数使接收端子系统正常工作。2 接收端主函数程序设计是是1602初始化NRF24L01初始化配置接收模式启动接收是否收到数据点亮LED,读取噪声值显示噪声值否是否超过预定值启动报警否图3-4 接收端主函数流程图接收端子系统主函数流程图如图3-4所示,完成初始化LCD1602液晶显示器和NRF24L01无线通信芯片,设置接收模式并读取接收数据,显示噪声值,超过预定值报警的功能。Lcd_Int()函数和nRF4L01_Init()函数的作用与发送端相同,此不再缀述。单片机执行Ready_display()函数,将在液晶屏幕的第一行上显示“NOISE”字样,然后系统进入循环采集并发送接收阶段。nRF24L01_Set_RX_Mode()函数负责配置接收模式,设定其发送与接收功率,发送与接收地址等。nRF24L01_RX_Mode()函数通过标志位RX_DR检测是否接收完成,如果完成将接收数据存入接收数据寄存器RX_Buffer中,并返回“1”,否则,返回“0”,系统通过判定该函数返回值,做出相应的反应。3.2 本章小结本章分为发送端子系统和接收端子系统两部分对系统的程序进行详细介绍,针对发送端子系统,详细论述其程序结构,主函数的内容及程序流程图,简要介绍发送端子系统主函数是如何通过调用各子函数实现采集和发送噪声值数据的任务。针对接收端子系统,详细论述其程序结构,主函数的内容及程序流程图,简要介绍接收端子系统主函数通过调用各子函数实现其接收和处理噪声值数据的具体步骤。5 第4章 系统调试与分析 第4章 系统调试与分析对系统的硬件和软件进行系统调试是系统设计的最后步骤,也是系统设计中最为重要的环节。任何系统在焊接完成之后都要进行检测和调试, 以确保系统硬件连接无漏洞,各元器件无故障,才能进行软件下载和调试。本章详细介绍硬件系统调试的方法,硬件系统出现的问题及解决方案,软件调试的方法。4.1 硬件系统调试4.1.1 硬件系统调试过程硬件是系统功能实现的平台,系统能否正常工作直接影响到软件的编写和调试能否顺利进行。其调试过程如下:首先,运用直观法检查电路焊接是否正确,有无虚焊和错焊的情况,观察元器件的极性和芯片的引脚是否正确,尤其错接会损坏器件,例如,带极性的电容,NRF24L01无线传输模块等;然后测试系统电源是否为+5V直流电,确保电源正常之后便可以插上芯片,接上电源,观察电源指示灯是否正常,各元器件是否上电,显示器是否点亮,噪声传感器模块电源指示灯是否正常,无反常现象便可以下载运行程序;若程序运行结果与预想不符,在确保软件无误的情况下,全面考虑产生该问题的原因,分模块检测,逐个排除。另外,正确使用万用表、示波器、信号发生器等工具,可以提高工作效率。4.1.2 硬件系统问题及解决虽然在硬件的连接和焊接过程中已经格外注意元器件的极性问题和焊接点是否接通的问题,但是在硬件系统焊接完成之后依然存在问题。为了保证系统在接通电源后,电源指示灯亮起,硬件正常工作,需要在系统焊接完成,认真检查各元器件的极性问题。若给系统上电后发现电源指示灯没有点亮,可使用万用表测量C1两端电压值在5V左右,而VCC端电压值很小,几乎没有,断定系统中的VCC和GND短接。贴片电容C15C19两端VCC和GND容易短接,重新焊接之后,系统电源指示灯点亮。通过杜邦线将噪声传感器模块与单片机系统相连时,不慎将VCC与GND反接,接通电源后,导致噪声传感器模块中钽电容C7被烧毁,采集模块电源稳定性变差,但是不影响系统正常工作。为了可以成功下载程序目标文件,通过USB串行接口将单片机系统与计算机相连。若在程序下载时,一直显示不能连接,应认真检查串行接口电路,发现有虚焊的点,重新焊接之后,正常下载程序。4.2 软件系统调试本次毕业设计采用Keil C 软件,用C语言编写程序。通过STC_ISP软件将Keil C软件生成的hex文件下载到STC12C5A60S2单片机。本系统软件程序在编写时,采用先分模块编写,再整合为一个整体的方法,所以,在调试过程中也是分模块调试,再整体调试。首先,编写调试报警模块程序,起初设定程序只能驱动蜂鸣器响一声,系统无法起到报警作用,而后在程序中加一个4次循环的循环语句解决了这个问题,使其能够在启动报警器后连续响四声。编写调试显示模块程序过程中,显示器起初会出现部分显示和显示位置混乱的情况,在LCD1602写数据函数之后加延迟函数以给硬件一点反应时间,这个问题得到了解决。然后,编写AD转换相关程序,由于直接将AD转换结果传送给显示器,导致出现乱码。通过对数据进行处理得到每一位的值分别传送给相应地址的数据寄存器,准确显示出噪声值的大小,但显示屏上的噪声值变化速度很快而无法看清楚,于是在每次显示数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论