版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-基于单片机的空气质量检测系统设计实现目录TOC\o"1-3"\h\u14065第1章绪论 5262851.1课题研究的主要内容 5220971.2国内外现状 58362第2章关键技术介绍 6208682.1STM32单片机 6154102.2LCD1602液晶显示屏 6157792.3HC-05蓝牙 723872.4ZE08甲醛传感器 7145762.5PM2.5传感器 710752第3章系统分析 8284873.1构架概述 8198373.1.1系统设计总体思路 86183.1.2系统设计总方案 8102113.2系统设备选择 945853.2.1主控模块选择 938323.2.2电源电路选择 10182003.2.3按键方案选择 10119653.2.4显示方案选择 11117633.2.5温湿度方案选择 1269943.2.6通信方式选择 12107203.3系统开发环境 1329480第4章系统设计 1434954.1设计指导思想和原则 1470664.1.1设计思想 14225604.1.2设计原则 14131484.2硬件设计 14254514.2.1单片机最小系统 14290334.2.2液晶显示电路设计 156724.2.3按键模块电路设计 1572524.2.4温湿度传感器电路设计 16108514.2.5烟雾传感器电路设计 16258924.2.6语音电路设计 17252854.2.7蓝牙电路设计 1726044.2.8甲醛电路设计 18300214.2.9PM2.5电路设计 1824274.3软件设计 1981994.3.1系统主程序 19101904.3.2液晶显示子程序 1980414.3.3按键电路程序 20307734.3.4烟雾采集电路程序 21106604.3.5温湿度采集电路程序 2112749第5章系统实现 2251525.1环境配置 22195045.2硬件实现 23226785.2.1成果物的实现 2382635.2.2语音BY8001-16P模块的实现 23319075.2.3LCD1602液晶显示模块的实现 23280995.2.4甲醛传感器模块的实现 24157975.2.5烟雾传感器模块的实现 245405.2.6一氧化碳传感器模块的实现 25321675.2.7PM2.5传感器模块的实现 25165015.3软件实现 2626797第6章系统测试 28110886.1系统制作 28189346.2硬件调试 30125536.3软件调试 313756第7章结论 33摘要科技的发展引领世界的进步,是一切文明进步的力量源泉,电子世界精彩纷呈展现科技力量进步的结果。生活中随处可以看到电子元器件、微控制智能技术、传感器的影子。智能化的发展让生活变得方便快捷,使人们的生活变得充满效率,也给人们提供了更加舒适的生活,使人们从手工时代迈进智能时代。本次的设计是微控芯片单片机通过调配外设资源来实现整个系统的设计要求,单片机自身的外设资源比较丰富,其中,单片机采用的是STM32F103C8T6。主要包括接口应用以及对普通I/O的使用,采用单片机的内核作为中枢控制大脑。采用外围的各类传感器实现信息的采集工作,采用外围的各类开关控制器件实现开关信号的控制工作,采用各类显示器件实现显示功能的工作,单片机对信息进行数据的运算处理,完成本次设计的整体功能。针对这种情况设计本次的项目,通过单片机和外设资源实现功能设计,主要采用PM2.5传感器检测空气中粉尘颗粒状况,同时还进行温湿度、烟雾、一氧化碳、甲醛等其他污染物的检测。总体来说,达到了预期效果,实现了基本功能。但在实验过程中仍然存在着缺陷,比如,没能有效的播报当前的气体温度,导致室内的人们没能高效的接收到所检测的当前空气质量的有效信息,这就需要一个语音播报来实时的输出工作了。关键词:单片机,传感器,芯片第1章绪论众所周知,在日益发展的21世纪,人们对于环境的要求越来越高。不论在国内还是在国外,都需要极佳的环境来提高生活指数。比如在国内,导致环境因素急剧下降的有以下几点:大气污染问题、水环境污染问题、垃圾处理问题、水土流失问题等严重问题。但大气污染问题迫在眉睫,由于我国目前还处于粗放型经济模式,多地为了追求经济效益,不顾对环境造成的严重影响,直接往空气中排放,使得国内出现严重雾霭天气。研究表明,PM2.5日平均浓度增加,会导致人类出现各种无法想象的严重后果。首先,表现最明显就是医院的呼吸道门诊量增长迅速,导致医疗资源跟不上增长速度,严重的还会引起纠纷。其次,上班一族,长期处在雾霾中工作,心理会由于过度的压抑,导致患上抑郁症等精神疾病,一系列不可控疾病随即而来,严重到可能导致社会动荡。 随着国内经济的迅猛发展,工业化水平的越来越高,小康水平的基本普及,人们也日益追求高质量生活。自然,对于环境的要求也是有着苛刻的要求。在现今,人们使用的监控设备精度越来越高,空气里PM2.5浓度受到了实时关注,在各种严重后果面前,人们都希望有一个干净、舒适的环境供大家生存。1.1课题研究的主要内容本次的设计是基于单片机的空气质量检测系统首先通过PM2.5粉尘传感器、烟雾传感器、一氧化碳、甲醛传感器、温湿度传感器及检测电路对周围环境中的PM2.5的浓度值数据、烟雾、甲醛的浓度进行采集,由模数转换电路检测的模拟量转换成数字量,并将数据传送给微控制器,并由微控制器对数据进行处理分析。一方面将处理的结果显示在LCD1602液晶显示屏上,同时进行温湿度的采集,通过蓝牙模块将采集的数据传送到上位机串口,通过上位机查看,使PM2.5的检测结果、温湿度、烟雾、甲醛浓度一目了然,方便人们随时随地的了解周围空气质量的状况。 另一方面,如果测量的的浓度过高,便由微控制器通过语音报警电路进行必要的提醒,报警部分主要由语音播放模块组成。1.2国内外现状在很长的一段时间里,我国的空气质量检测技术和监控网络都远远落后于一些西方发达国家,当点式的空气质量检测仪日趋成熟完善,美国率先大力普及,我国也不甘于落后,加大了采用这种检测仪器的力度。截止到二零一零年,我国已经建立起了一百多个重点环境空气质量监测站,随时发布重点城市的空气质量状况,对各种有害气体的排放指标进行科学采样,实施全天候监控,并及时将各种采集到的数据传输到指定的站点,由专业人员结合空气质量检测系统进行严密分析,并针对具体的实际情况做出及时有效的处理,到目前为止,我国的空气质量检测系统已经成为了我国管理空气污染的重要依据,对我国的一些气象灾害预报,城市空气的净化,起到了巨大的推动作用。第2章关键技术介绍2.1STM32单片机STM32系列的单片机是一款以ARM为内核的性能较高,能够实现低功耗,能满足大多数电子设计需求的一款单片机。STM32型号众多,性能也有所不同,在此次研究课题中采用STM32F103C8T6这款型号。它的主频高达72MHZ,引脚多达64个,RAM空间为48K。体积小,性能强大的它非常适合本次课题研究。本次课题使用STM32单片机作为主控芯片,进行一氧化碳,烟雾识别,以及语音播报,温湿度传感器,甲醛传感器,PM2.5传感器与外设的控制。对单片机的编程是课题实现的重要基础。我将使用Keil5编译器进行单片机软件编程,用J-Link进行软件的下载与调试。2.2LCD1602液晶显示屏1602字符型液晶,它是一种专门用来显示符号、字母、数字等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它能很好地显示图形1602LCD,指的是显示的内容为16X2,即可以显示两行,每行16个字符液晶模块。
在众多的显示屏中,本次课题采用的是LCD1602这个型号的显示屏,相比于其它的显示屏,它具有以下功能:(1)数字式接口液晶显示器都是数字的,和单片机系统的接口更加简单可靠,操作更加方便。(2)体积小、重量轻液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上相同显示面积的传统显示器要轻得多。(3)功耗低相对而言,液晶显示器的功耗在其内部的电极和驱动IC上,因而耗电量要比其它显示器少得多。2.3HC-05蓝牙HC-05嵌入式蓝牙串口通讯模块具有两种工作模式:命令响应工作模式和自动连接工作模式。当模块处于自动连接工作模式时,将自动根据事先设定的方式连接的数据传输;当模块处于命令响应工作模式时能执行下述所有AT命令,用户可向模块发送各种 AT指令,为模块设定控制参数或发布控制命令。2.4ZE08甲醛传感器ZE08甲醛具有以下特点:低功耗,高灵敏度,使用寿命长。模拟电压信号灯多种输出方式,提供UART。优秀的抗干扰能力,高稳定性,卓越的线性输出。2.5PM2.5传感器PM2.5传感器被设计用来感应空气中的尘埃粒子,其内部对角安放着红外线发光二极管和光电晶体管,他们的光轴相交,当带灰尘的气流通过光轴相交的交叉区域,粉尘对红外光反射,反射的光强与灰尘浓度成正比。光电晶体管使得其能够探测到空气中尘埃反射光,即使非常细小的如烟草烟雾颗粒也能够被检测到,红外发光二极管发射出光线遇到粉尘产生反射光,接收传感器检测到反射光的光强,输出信号,根据输出信号光强的大小判断粉尘的浓度,通过输出两个不同的脉宽调制信号区分不同灰尘颗粒物的浓度。2.6DHT11温湿度传感器DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,使其成为该类应用中,在苛刻应用场合的最佳选择。2.7MQ7一氧化碳传感器MQ-7气体传感器所使用的气敏材料是在清洁空气中电导率较低的二氧化锡。使用简单的电路即可将电导率的变化,转换为与该气体浓度相对应的输出信号。MQ-7气体传感器对一氧化碳的灵敏度高,这种传感器可检测多种含一氧化碳的气体,是一款适合多种应用的低成本传感器。2.8MQ2烟雾传感器MQ-2型烟雾传感器属于二氧化锡半导体气敏材料,属于表面离子式N型半导体。当与烟雾接触时,如果晶粒间界处的势垒收到烟雾的调至而变化就会引起表面导电率的变化。利用这一点就可以获得这种烟雾存在的信息,烟雾的浓度越大,导电率越大,输出电阻越低,则输出的模拟信号就越大。第3章系统分析3.1构架概述3.1.1系统设计总体思路整个系统的设计需要考虑以下几个方面的内容:(1)硬件的设计:硬件设计是整个项目的原理设计,首先是要根据设计的数据量选取单片机,单片机的存储容量不同也分为多种型号,估算项目的数据量确定选取的单片机,其次是根据本次设计的功能选取对应的传感器型号,比如设计时钟功能,就要选取时钟功能的传感器,如DS1302等,设计温度就要选取DS18B20等。确定好传感器模块后就要查找模块的对应资料,在各个功能模块确定好后,就要进行原理图的设计,绘制好整个原理图,对应原理图焊接系统的实物。(2)软件的设计:软件与硬件是相互依存的关系,软件的编写是根据传感器连接的位置进行代码编写。软件的编写首先需要编写主程序,构思整个设计的流程概况,把主程序的框架编写完成,其次是对设计的各个子模块分别进行编写,达到模块的程序设计,在最终调试的时候可以针对某一模块单独进行调试。不会影响到其他的功能。最后设计系统的整体功能。(3)系统的测试:测试对于整个系统来说是一个特别重要的环节,在硬件设计和软件设计的过程中不可避免的会出现一些BUG,这样就可以通过测试来查询设计过程中不完善的地方,对测试的问题进行软硬件的修改,使整个项目功能达到满意为止。3.1.2系统设计总方案本系统主要有MCU模块,按键模块,显示屏模块,蓝牙模块,语音模块,以及传感器模块组成。单片机通过采集当前室内的温度,烟雾,PM2.5,甲醛的气体浓度值,当当前的所得值超过预定的范围时,就会通过语音播报发出预警。蓝牙模块也可以通过USB串口把单片机的数据发送到电脑上,本设计的硬件框图如图3.1所示。图3.1硬件框图3.2系统设备选择3.2.1主控模块选择方案一:STC89C51单片机STC89C51单片机是一款低功耗、性价比高的8位CPU·4kbytes程序存储器,该系列单片机的前身是Inter的8004单片机,随着长足的发展,51单片机成为很多公司争相生产改进的机型,在很长一段时间占据着大量的市场。它一共有32条I/O口线,21个专用寄存器,2个可编程定时/计数器,5个中断源。这款单片机上手非常轻松,会简单的C语言,掌握51单片机的基本结构就能轻松操控。但51单片机对于稍复杂程序处理会较其他单片机慢一些。方案二:ArduinoArduino是一款简单易操作,可以快速上手的开源电子原型平台,它的硬件和软件都是开源的,网上资料也很多。Arduino是单片机二次开发的产物。单纯以做项目来说,普通单片机只是散件,需要自己动手设计硬件和软件。而且Arduino是半成品,只要把相应的模块组装整合,再直接复制程序就能完成。Arduino核心板大部分使用的是AVR单片机作为核心。AVR单片机一般使用汇编语言、C语言开发,需要配置寄存器。Arduino在C的基础上简化了开发方式,自己实现了一套较为简单的语言,开发的时候不需要纠结于AVR的寄存器等底层的东西,直接写代码就能控制兼容Arduino的外设。方案选择三:STM32F103C8T6STM32F103C8T6是由ST公司制造基于ARMCortex-M3为核心的32位处理器,速度能达到72MHZ,内置FLASH存储器,程序存储容量是256KB,RAM容量为48K,另外还有2个定时器、4个通用定时器、2个高级定时器、2个DMA控制器、3个12位ADC、51个IO口等资源。综上所述,以上方案中,方案一功能最为简单,价格也比较便宜些,但是配置较低,无法满足课题需求;方案二相对来说性能高于方案一,而且开源的开发环境软硬件不需要自己设计,但是也产生了许多局限性问题。通过对比方案三是更符合本次课题的需求,而且开发难度低,功能强大,因此采用方案三。3.2.2电源电路选择方案一:采用线圈绕线的隔离变压器进行供电这种方式的供电是通过市电220V的交流电输入到变压器中,通过变压器以及外围的电源芯片将交流电转化为DC12V的直流电源,再通过电压转换芯片将12V电压转换为5V电压,这种电源再设计的时候需要匹配的器件比较复杂,需要多种电源器件与电压器的参数进行匹配设计,设计复杂是它的缺点之一,但是同样优点就是输出能力比较强,对于大功耗器件的供电能力尤为明显,输出的电量持续稳定,可以提供比较优质的供电能力。明显的缺点就是需要与变压器匹配的器件太多,安全系数比较低,应用时对于专业程度要求较高。方案二:采用USB接口电源线进行供电USB电源线从出现到广泛普及不过短短几年的时间,现在的USB接口供电技术比较成熟,而且应用的范围也越来越广,在生活中随处可见USB的电源接口,即插即用。这种电源供电环境非常稳定,除了供电能力弱一些之外,几乎不存在任何缺点,它的供电系统相对比较安全,不会出现任何危险,同时也不会由于电压过大导致设备的损坏,对于弱电控制系统是最为理想的电源,因为弱电控制系统本身不存在大容量的电器,同时也会对弱电器件进行电源保护,USB非常适合弱电控制系统的供电要求。方案三:采用锂电池供电锂电池的优势和劣势都非常明显,优势就是使用起来方便,不限制任何的使用场合,任何地点都可以使用,尤其在便携式的设备上,必须使用锂电池功能,劣势就是需要间隔时间充电,否则设备就不能持续使用。如果不是便携式的设备,一般的情况都不会采用锂电池供电。经过综合的考虑从安全性与应用性方面的考虑采用方案二的USB供电,应用十分方便即插即用,供电也稳定,所以本次课题采用方案二的设计方式,采用USB的供电方式来作为电源。3.2.3按键方案选择按键和显示器是人机对话的主要部分,所以按键部分在整个系统中所占的比重非常大,按键的作用就是进行数据的查询,控制显示屏的翻页功能,对所需要的限值数据进行更改,或者其他的逻辑位置确定等等功能,通过按键的设定,实现程序的逻辑执行,控制相应的功能,达到相应的功能需求。一般说来,键盘有两种形式,一种是矩阵键盘,一种是直接IO口触发。方案一:矩阵键盘是通过对单片机接口进行动态扫描,以普通IO口组合的形式实现矩阵键盘的控制,这样的控制方式可以节省IO的资源,使用的是M*N的按键,需要IO口是M+N个,优势在于需要按键多的情况下可以节省IO口资源。一般情况是通过中断的形式来进行控制,单片机通过中断快速读取按键值。编程时相对于独立按键稍显复杂,需暂用定时器资源处理按键功能。方案二:IO口控制即独立按键,在硬件设计上就是将IO口通过按键接地,单片机扫描按键是否接地判断按键是否按下,这种按键的方式简单可靠,缺点就是浪费IO口资源,一般的情况是用于按键不多的场合,这样的设计结构简单,可靠性比较高,相对于矩阵键盘,没有程序的复杂算法,只需要对IO实时监测即可。综上所述,本设计选择了方案二作为比课题的设计方案。3.2.4显示方案选择方案一:LED组成的数码管来显示设备的基本信息,数码管的组成是由8段LED来组成的,通过编写代码来驱动不同的LED点亮,组成不同的LED图片。在使用数码管的时候需要进行段码的程序设计,需要找到不同显示的驱动程序。驱动数码管需要有外围电路的配合,否则数码管的驱动比较暗。数码管的主要优点在于成本的控制非常的便宜,并且显示的数据可以调节的非常的亮眼、明显。但是数码管也是具有一定的缺陷的,主要就是体现在显示数据量比较少,在一些显示简单的场合可以采用数码管进行数据的显示。方案二:使用液晶显示LCD1602来作为设备的信息交互界面。液晶的显示是通过背景中的点来构成显示,通过构建字库可以实现多种多样的灵活显示。LCD1602与单片机的接口相对来说比较简单,可以通过并行的方式来驱动显示,显示刷新的速度比较快。但是由于本身的原因,里面的显示靠液体,所以使用的温度范围就是有一定的限制。在一些不是非常复杂的设备选择LCD1602来作为显示是比较合算的,性价比、美观性方面都是比较高的。方案三:采用LCD12864来作为设备的人机交互界面,12864可以说是在LCD1602上的一个升级版本,除了具有LCD1602的优缺点之外,就是显示的字体更加的大,显示的内容也更加的多样化。可以在一些比较大型或者相对复杂的一点的系统中应用。LCD12864的显示更加清晰,也更加的易懂。但是LCD的价格比较贵,开发时候可以根据实际的需求进行相应的选择。综上来说,采用LCD1602是一种很好的显示,可以方便的与人交互,还可以节约设备的开发成本,并且外观上也是相对美观。3.2.5温湿度方案选择方案一:选择DS18B20作为温度检测传感器,DS18B20是数字温度传感器,可以检测环境的温度。与单片机连接只需要一个IO引脚就可以实现数据的读取。DS18B20的温度检测准确,外围器件使用简单,只需要一个上拉电阻就可以保证采集的温度的准确性。方案二:选择PT100温度传感器,PT100是铂电阻类型传感器,随着温度的变化,电阻的阻值会发生变化,根据检测的变化阻值来实现温度的检测。PT100的优点是测量温度的范围广泛,测量精度高但是外围电路相对来说复杂一些,需要采用AD检测模块检测PT100的电压数值,由于电压变化范围太小还需要加入运放电路,一般应用在精度要求较高场合。方案三:采用DHT11温湿度传感器,DHT11温湿度传感器是数字传感器,采用一个引脚与单片机连接,可以读取环境的温度、湿度数值。外围的器件只需要一个上拉电阻就可以实现数据的稳定读取。DHT11使用方便,可以根据需要选择读取环境的温度或者湿度。综上所述,经过对比筛选,本次课题选择了DHT11传感器作为本次课题的研究。3.2.6通信方式选择方案一:并行通信技术一组数据的各数据位在多条线上同时被传输。以计算机的字长为传输单位,每次传送一个字长的数据。并行是指8位数据同时通过并行线进行传送,这样数据传送速度大大提高,但并行传送的线路长度受到限制,因为长度增加,干扰就会增加,数据也就容易出错。各数据位同时传输,传输速度快、效率高,多用在实时、快速的场合。并行传输的数据宽度可以是1~128位,甚至更宽,但是有多少数据位就需要多少根数据线,因此传输的成本较高。在集成电路芯片的内部、同一插件板上各部件之间、同一机箱内个插件板之间的数据传输都是并行的。适合于外部设备与微机之间进行近距离、大量和快速的信息交换。并行数据传输只适用于近距离的通信,通常传输距离小于30米。方案二:蓝牙通信蓝牙设备使用无线电波来连接手机和电脑,不需要电线和电缆做介质。当蓝牙设备之间想要互相交流时,它们需要进行配对,当网络环境创建成功,一台设备作为主设备,而其它设备作为从设备。蓝牙技术的主要特点的描述是蓝牙技术无处不在、功耗低、易于采用及应用成本低。蓝牙技术无处不在——几乎每一台手机、笔记本电脑、台式电脑和平板电脑都采用了蓝牙技术。蓝牙技术功耗低,开发人员能够开发出只需一小颗的纽扣电池就可运行数月甚至数年的小型传感器。这为蓝牙技术成为物联网的主流技术之一奠定了基础。蓝牙技术易于采用——对于消费者而言,再也没有比使用蓝牙技术更简单的事了。只需要进入设置,打开蓝牙,点击配对按钮,然后等待启动通信就可以了。就是这么简单。从开发角度而言,开发蓝牙产品只需基于核心规格,再将配置文件和定制服务逐层添加上去。方案三:Wi-Fi通信Wi-Fi是一个行动的热点,是一个创建于IEEE802.11标准的无线局域网技术。“Wi-Fi”常被写成“WiFi”或“Wifi”,但是它们并没有被Wi-Fi联盟认可。Wi-Fi模块又名串口Wi-Fi模块,属于物联网传输层,功能是将串口或TTL电平转为符合Wi-Fi无线网络通信标准的嵌入式模块,内置无线网络协议IEEE802.11b.g.n协议栈以及TCP/IP协议栈。传统的硬件设备嵌入Wi-Fi模块可以直接利用Wi-Fi联入互联网,是实现无线智能家居、M2M等物联网应用的重要组成部分。WiFi模块通过指定信道号的方式来进行快速联网。在通常的无线联网过程中,会首先对当前的所有信道自动进行一次扫描,来搜索准备连接的目的AP创建的(或Adhoc)网络。串口wifi模块提供了设置工作信道的参数,在已知目的网络所在信道的条件下,可以直接指定模块的工作信道,从而达到加快联网速度的目的。综上所述,在上述的方案中,并行传输适合短距离大量快速传输信息,其成本较高,连线较多会显得复杂化;方案二的蓝牙通信作为物联网时代的主流通信技术应用甚广,他不仅低功耗,携带方便,而且成本较低。方案三WIFI通信不受布线的束缚,可以自由移动,但是通信质量较差,安全性较差。所以,本次课题我选择了方案二。3.3系统开发环境硬件开发环境:AltiumDesigner(inAD),USB下载线软件开发环境:KeiluVision5 第4章系统设计4.1设计指导思想和原则4.1.1设计思想随着社会的发展进步,人们的生活质量发生了巨大的改变,但环境问题也越发严重时刻影响着人们的生活质量。因此,需要研发出一些空气质量系统检测仪器来检测人们的室内生活不仅具有很大意义,而且空气质量检测仪器还具有广阔的发展前景。4.1.2设计原则本次课题需要保证在总体设计上的可行性,站在产品的角度上需要经济实用,采用大市场上的成熟技术,并加入自己的设计思想,达到预期目标。4.2硬件设计4.2.1单片机最小系统STM32单片机一共具有48个引脚,通用的引脚分为PA、PB、PC三个通用的双向的IO管脚,通过寄存器配置可以配置成上拉输入接口、下拉输入接口、上拉输出接口、下拉输出接口。同时引脚的接口还具有功能的复用、包括了SPI接口、UART接口、IIC接口等,可以说STM32单片机的功能非常的全面。同时STM32单片机是性价比非常高的单片机,内核是32位的ARM内核,处理速度非常的迅速。芯片的FLASH是64KB的存储容量,且存储空间相对较大,单片机编写程序的时候不必担心因为代码的原因导致系统不可用。STM32电路图如图4.1所示。图4.1STM32引脚图4.2.2液晶显示电路设计LCD1602显示屏,它具有非常强大的显示功能,在其内部的显示芯片自带字库,可以显示字符,同时其内部有其自己的寄存器结构,在设计的时候,需要根据寄存器的功能要求进行程序设计,在引脚的功能上分为并口与串口,本次使用的并口数据显示并且本次课题采用LCD1602来显示数据,LCD1602液晶显示屏原理图如图4.2所示。图4.2LCD602液晶电路图4.2.3按键模块电路设计按键电路一般是负责参数的设置和功能的控制,无论何种的应用方式,其本质是一样的,不同的只是程序的处理方式,按键接入一般的情况是独立式接入,独立式接入就是按键的一端连接地,另一端连接单片机的引脚,单片机的引脚上电是高电平,当按键按下之后,引脚的电平被拉低,单片机采集引脚的电平变化判断外部的按键是否按下,这样就可以很便捷的处理按键的程序。还有一种接入的方式是键盘式接入,就是按键的两端都接入单片机的引脚,这样接入的好处是可以节省单片机的资源,当多个按键时,通过两端不同的电平可以实现多按键功能,比如矩阵按键就是利用8个引脚可以完成16个按键的功能,如果使用独立按键就需要16个引脚,这样可以节省单片机的引脚数量。本次课题使用的是独立按键功能,因为只需要有限几个按键就可以实现设计要求,通过与单片机连接,实现设置功能,‘加功能’、‘减功能’,按键电路的硬件电路如图4.3所示。图4.3按键模块电路4.2.4温湿度传感器电路设计DHT11型温湿度传感器,这款传感器既可以测试温度同时还可以进行湿度检测,此款温湿度传感器应用环境是针对空气进行检测,检测空气环境的温度与湿度,非常适合本次的设计要求,在检测范围方面温度的检测范围是0-100度,湿度的检测范围是0%-90%,在其内部含有数据校准功能,在设计的时候不需要通过软件程序校准,直接采集数值即可。在整个数据采集的过程中需要注意的是DHT11传感器对时序间隔的问题,首先最重要的是每次采集的时间不能低于2秒,这是DHT11传感器器件本身的间隔要求,其次,每个数据位与数据位之间的间隔是1ms,必须准确,否则采集的数据将会出现错误,电路连接图如图4.4所示。图4.4温湿度电路图4.2.5烟雾传感器电路设计烟雾传感器是一种检测气体的传感器,通过本身的特殊材质在有烟雾气体的时候燃烧自身达到内阻的变化,它输出的信号是一个模拟值,这个模拟值是根据气体的浓度变化,浓度越大这个模拟值越大,模拟值是以电压输出的,传感器本省输出的电压比较小,一般都是以毫伏为单位,即使浓度特别高的时候也就是几十毫伏,单片机对毫伏的感应不是那么灵敏,所以传感器都会有个一放大电路,将毫伏级的信号放大几十倍,达到几伏级的标准,但单片机的最大采集电压是5V,放大不能超过5V,否则单片机将采集不到。本次课题中的烟雾传感器选用MQ-2半导体气体煤气传感器,电路如图4.5所示。图4.5烟雾传感器电路图4.2.6语音电路设计语音模块采用深圳百为电子科技有限公司生产的小型MP3播放模块,它以其稳定播放模式迅速占领市场,模块本身外引16P引脚,采用BY8001-SSOP24MP3芯片为其主要的控制芯片,故模块型号为BY8001-16P。在模块内部自带FTP卡座,播放内容可由电脑导入TF内进行播放,根据播放内容的不同跟换TF卡即可,语音播报电路如图4.6所示。图4.6语音播报电路图4.2.7蓝牙电路设计蓝牙模块采用HC-05嵌入式蓝牙模块,通讯协议采用蓝牙2.0,模块可实现双向通讯,通过串口可设置通讯模式,通讯速率。模块数据嵌入式集成模块,对外输出采用串口通信的方式,可适用于众多场合,支持通讯2400-115200通讯波特率,连接方式极为简单。模块一共对外输出4个引脚,分别是电源引脚和串口通讯引脚,与单片机连接采用串口TTL电平方式进行连接,TX引脚连接单片机的RX引脚,模块的RX引脚连接单片机的TX引脚,这种交互式的连接才能保证通讯正确,否则无法进行数据通讯。模块在设置的时候采用AT指令进行设置,设置的模式分为主模式、从模式、换回模式,模块默认是从模式,若使用单个模块实现与手机设备进行连接时,默认模式下可以与单片机直接连接上,若使用双蓝牙模块进行无线通讯,则蓝牙模块必须设置主模式和从模式才能实现功能,如图4.7所示。图4.7蓝牙电路图4.2.8甲醛电路设计检测甲醛浓度采用ZE08-CH20模组,通过检测空气中的甲醛浓度实现电化学反应,在其内部有温度补偿电路,可以抵消由于温度的变化导致的检测数据的影响,模组具有模拟输出和串口输出功能,可以满足多种情况下的使用,对于干扰气体的影响有很好的一直效果,模块一共有7个引脚,其主要应用的引脚主要是AD引脚和串口引脚,本次设计采用的是串口引脚。在进行电路连接的时候,需要对模块完成电源引脚和串口引脚的连接,在串口连接时需要注意模块的RX和TX与单片机的TX和RX进行交互连接,否则将接受不到模块的数据,模块本身默认的情况下是每秒钟自送上送甲醛浓度数据,对于串口的读取可以设置位主动式和被动式,默认是主动式,被动式就是通过单片机读取而返回数据,数据按照一定的通讯格式进行传输,单片机需要根据格式的解析完成有效数据的提取,如图4.8所示。图4.8甲醛电路图4.2.9PM2.5电路设计PM2.5检测电路采用LED发射管进行漫反射检测的模块,通过模块内部的LED以1ms的频率对模块内部的控制进行照射,根据空气的质量不同,检测出的模拟量也不相同,最终模拟量以电压的形式输出,模块本身自带运放电路系统集成,通过运算放大将反射信号转换为电压信号,电压信号进行单片机采集控制。模块一共有6个引脚,1脚和6脚为VCC,2脚和4脚为GND,3脚为模块的LED引脚,5脚为模块的模拟输出引脚,PM2.5传感器如图4.9所示。图4.9PM2.5电路图4.3软件设计4.3.1系统主程序Main函数是系统的主程序,通过执行每一条程序的动作实现系统的预期目标,这里的程序编写就有逻辑性,知道系统的具体执行流程,按照流程来逐渐的去实现每一个小的目标功能,具体的主程序流程图如图4.10所示。图4.10主程序流程图4.3.2液晶显示子程序显示程序设计主要分为几步进行,首先是初始化,在初始化中完成指针归零,配置寄存器,输入命令,控制显示位置。之后就是调用显示子函数,最后显示出结果,如图4.11所示。图4.11LCD显示流程图4.3.3按键电路程序按键检测程序主要是获取按键的键值。本设计中的按键设置为与按键连接的端口低电平时有效,按键模块的流程图如4.12所示。图4.12按键读取流程图4.3.4烟雾采集电路程序烟雾采集是通过烟雾传感器输出模拟电压,通过AD引脚进行数字量的转化,将烟雾传感器的模拟量转换为数字量,烟雾采集流程图如4.13所示。图4.13烟雾转换流程图4.3.5温湿度采集电路程序温湿度采集是通过DHT11进行读取,按照DHT11芯片的本身协议读取温湿度的数值,温湿度采集流程图如4.14所示。图4.14温湿度读取流程图第5章系统实现5.1环境配置本次课题采用KeiluVision5软件进行编译,使用前需要进行环境配置,配置过程如下:(1)打开KeiluVision5,点击绿色包图标,下载STM32F103系列的包。(2)选择系统设计所需要的芯片型号,点击进入页面并下载。(3)下载成功以后,新建一个新的工程,选择设计芯片的型号,这里我采用的是STM32F103C8T6这个芯片。(4)选择设计所需要的单片机库函数,如图5.1所示。图5.1选择库函数(5)工程创建成功,环境配置完毕,接下来,可以开始进行编译工程,如图5.2所示。图5.2工程创建成功5.2硬件实现5.2.1成果物的实现本系统硬件设计采用Altiumdesigner16绘制电路板,采购所需元器件进行焊接,经过各模块测试后,各功能均可达到预期效果,电路板如下图5.3所示。图5.3成果物成品5.2.2语音BY8001-16P模块的实现语音播报能更能便捷于使用用户,更能体现出本次课题的重要意义,本次课题采用的是语音BY8001-16P模块,语音BY8001-16P模块如图5.4所示。图5.4语音BY8001-16P模块5.2.3LCD1602液晶显示模块的实现1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块,LCD1602液晶显示屏模块如图5.5所示。图5.5LCD1602液晶显示屏模块5.2.4甲醛传感器模块的实现ZE08甲醛传感器型电化学甲醛模组是一个通用型,小型化模组。利用化学原理对空气中存在的甲醛进行探测,具有良好的选择性,稳定性,内置温度传感器,可进行温度补偿;同时具有数字输出与模拟电压输出方式,方便使用,ZE甲醛传感器如图5.7所示。图5.7甲醛传感器模块5.2.5烟雾传感器模块的实现MQ-2烟雾传感器处于200-300摄氏度时,二氧化锡吸附空气中的氧,形成氧的负离子吸附,使半导体中的电子密度减少,从而使其电阻值增加,MQ-2烟雾传感器如图5.8所示。图5.8MQ-2烟雾传感器模块5.2.6一氧化碳传感器模块的实现一氧化碳传感器采用的是MQ-7这个型号,其高低温循环检测方式低温(1.5V加热)检测一氧化碳,传感器的电导率随空气中一氧化碳气体浓度增加而增大,高温(5.0V加热)清洗低温时吸附的杂散气体,MQ-7一氧化碳传感器如图5.9所示。图5.9MQ-7一氧化碳传感器模块5.2.7PM2.5传感器模块的实现PM2.5传感器也叫粉尘传感器,可以用来检测我们周围空气中的粉尘浓度,如图5.10所示。图5.10PM2.5传感器模块5.3软件实现5.3.1按键模块的实现此模块为按键模块,上键默认为低电平,下键,左键,右键默认为高电平。既上键按下时,默认电平从低电平变为高电平,产生一个上升沿信号,下键,左键和右键任意一个按下时,默认电平从高电平变为低电平,产生一个下降沿信号,其部分主要代码如下:u8KEY_Scan(u8mode){ staticu8key_up=1; if(mode)key_up=1; if(key_up&&(KEY1==0||KEY2==0||KEY3==0)) { Delay_Ms(10); key_up=0; if(KEY1==0)return1; elseif(KEY2==0)return2; elseif(KEY3==0)return3; }elseif(KEY1==1&&KEY2==1&&KEY3==1)key_up=1; return0;}5.3.2显示屏模块的实现此部分代码为表示液晶显示关闭,显示清屏,显示光标移动位置,其部分主要代码如下:LCD_write_cmd(0x28);delay_lcd(20000);LCD_write_cmd(0x08);delay_lcd(20000);LCD_write_cmd(0x01);delay_lcd(20000);LCD_write_cmd(0x06);delay_lcd(20000);LCD_write_cmd(0x0C);delay_lcd(20000); 5.3.3温湿度传感器模块的实现此部分为温湿度传感器的代码实现,读取一个byte数据,就是循环读取八个位,其部分主要代码如下:u8DHT11_Read_Data(u8*temp,u8*humi){ u8buf[5]; u8i; DHT11_Rst(); if(DHT11_Check()==0) { for(i=0;i<5;i++) { buf[i]=DHT11_Read_Byte(); } if((buf[0]+buf[1]+buf[2]+buf[3])==buf[4]) { *humi=buf[0]; *temp=buf[2]; } }elsereturn1; return0; }5.3.4蓝牙模块的实现STM32最小系统通过蓝牙模块与上位机通信,上位机可以实时显示测量数据,以下是蓝牙发送数组前的赋值代码部分:send_buf[0]=temperature;send_buf[1]=humidity;send_buf[2]=CO_PPM;send_buf[3]=YW_PPM;send_buf[4]=PM25_DUST/100;send_buf[5]=PM25_DUST%100;send_buf[6]=ch2o_value/100;send_buf[7]=ch2o_value%100;第6章系统测试6.1系统制作系统实物的制作需要准备电烙铁、焊锡、电路板元器件等工具。在实物系统的完成过程之中主要包括了以下的几个步骤:1.在焊接时需要根据设计的电路图进行焊接,电路图中的器件引脚的分布在原理图中是不能具体表现得,所以在焊接具体的器件时需要器件的数据手册来确定器件引脚的连接方式,这一步非常关键,往往有时候因为焊接错误而烧毁器件,每一个器件都需要确定无误后才能进行焊接,同时在焊接的时候要格外注意不能长时间的焊接,有些器件在高温状态下很容易损坏。2.在实物焊接完成后,首先就要观察所有的元器件焊接是否正确,是否有元器件位置焊接错误,确定元器件没有问题后,开始逐一排查各个元器件的引脚,是否有连焊或者漏焊的存在,如果存在用电铁重新焊接,完成器件的焊接工作,在这个过程中一定要耐心,要一点一点的对照电路原理图排查,保证焊接的正确性,否则后期在程序调试的时候无法分辨是硬件错误还是程序错误。3.使用万用表进行电路测试,第一步要测试电源和地之间是否存在短路的现象,将万用表调节到通断测试档位,将表笔分别放在电源端子和地端子上进行测试,如果万用表鸣响,说明电源短路,必须要将这一故障排除,如果没有鸣响,那就说明电路的电源部分没有问题,接下来对照电路图按照每条电器线测量,直到全部测试完毕,排除短路和漏焊的现象存在。4.实物检查完毕后,开始进行上电测试,观察系统的电源是否正确,通过万用表测量供电电压是否符合本次系统的设计,电源没有问题后观察各个元器件模块是否有异常,通过万用表测试每个元器件的电压,确保所有的元器件模块都正常工作。5.完成程序的编写,程序在编写的时候采用模块化分步进行,对设计电路板上的元器件模块功能逐一调试,保证每个功能都能调试成功。之后就进行统一的调用,完成系统的设计。6.对系统进行测试,测试工作是整个设计的关键环节,他的功能和逻辑都是在测试中进行完善,边测试边修改程序,知道功能全部实现设计要求。焊接的图片如图6.1所示。图6.1系统焊接图系统实物图片如图6.2所示。图6.2系统实物图6.2硬件调试系统的焊接问题,在焊接时往往会出现连焊,虚焊的现象,尤其对使用电烙铁不够熟练的我们来说,连焊还能好一些,通过查找,可以看得见,用电烙铁把连焊点跳开就可以了,在连焊中有一种现象是比较麻烦的,就是电源和地之间的连焊,这个问题在查找的时候比较费时费力,因为所有的器件都需要电源和地,不知道在那一部分短路了,这样就只能分段查找,沿着电源线和地之间分块测量,一部分一部分的断开电源和地,分部检测,找出问题,将其改正,上电测试图如图6.3所示。图6.3系统上电测试图6.3软件调试在设计软件的时侯,第一步就要完成显示的功能,因为是人机交互的窗口,后续的功能都需要通过显示来表达正确与否,在编写程序的时候发现显示屏的功能不正确,显示的是白屏,界面如图6.4所示。图6.4显示方框程序通过查找,硬件的连接线都没问题,在查找软件,发现引脚的设置错了。通过更改程序显示程序正常的执行,正常显示如图6.5所示。图6.5正常显示程序最后通过整体的调试系统可以正常的工作,如图6.6所示。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆市长寿区市级名校2026年中考物理猜题卷含解析
- 福建省龙岩八中学2026年中考物理猜题卷含解析
- 2026年河北省保定市定兴县达标名校中考押题物理预测卷含解析
- 中医养生护理
- 2026年广东省湛江市第二十二中学中考二模物理试题含解析
- 模板工程施工现场木工施工技术交底
- 资产负债损益审计实施办法
- 常州市天宁区2025年数学三下期中质量检测模拟试题含答案
- 前列腺疾病的药物治疗与护理配合
- 巴音郭楞蒙古自治州和静县2025年数学三年级下学期期中学业水平测试模拟试题(含答案)
- (独家!)2025年3月29日湖南省事业单位联考A类《职测》真题及答案
- 3.围手术期质量管理第2部分:手术前管理北京围手术期医学研究会团体标准TBPM01.2-2023
- 中国通信建设北京工程局笔试
- 脊柱骨折护理讲解
- 华为公司培训讲师体系构建
- 2025至2030隐身材料产业运行态势及投资规划深度研究报告
- 江苏省盐城市2024-2025年七年级下学期期末考试生物试卷(含答案)
- 危重新生儿救治中心工作手册-(制度、职责、预案、流程、诊疗规范)
- 交警大队保密管理制度
- JG/T 478-2015建筑用穿墙防水对拉螺栓套具
- 2025九江银行笔试题目及答案
评论
0/150
提交评论