【基于STM32单片机的行人体温度检测系统设计11000字(论文)】_第1页
【基于STM32单片机的行人体温度检测系统设计11000字(论文)】_第2页
【基于STM32单片机的行人体温度检测系统设计11000字(论文)】_第3页
【基于STM32单片机的行人体温度检测系统设计11000字(论文)】_第4页
【基于STM32单片机的行人体温度检测系统设计11000字(论文)】_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

基于STM32单片机的行人体温度检测系统设计设备功能确定器件的具体型号,采用AD10软件进行设备电路图的设计,完成整个系统备的程序编写。本次设计采用STM32单片机作为整体的核心控制,采用USB进行电源的供电,采用LCD1602进行人机交互界面,采用红外进行人体温度检测。完成系统的 2 2 2 22系统的整体方案设计 3 32.2总体框图设计 32.3主要器件的选择 42.3.1单片机的选择 42.3.2显示电路的选择 52.3.3电源的选择 52.3.4按键的选择 53系统硬件电路设计 73.1单片机最小系统 73.2晶振电路设计 73.3显示电路设计 83.4按键控制模块 9 3.6语音播报模块设计 3.7测温模块 4软件设计及实现 4.3显示程序设计 4.5传感器检测流程图设计 4.6语音播报模块流程设计 5系统的调试与分析 21 23 1.1课题研究的背景温度计转变成功能多样化的电子温度测量仪器。传统的测温元件一般使用的是热电偶,度采集电路,显示电路,语音广播电路和报警电路。软件设计部分使用KEIL作为编程软件,并使用C语言进行程序设计。1.2国内外的现状及发展趋势最早在16世纪,被应用于测量人体温度的仪器是伽利略发明的水银温度计,但由于各种局限原因,导致当时的水银温度计不够准确可靠。在此之后,人们也陆续的发明了各式各样的体温计。1714年,加布里埃尔·华伦海特开发了水银体温计,将冰点和人体温度范围设定为刻度。最后却由于体积大,没有被医生接受。1868年,体温计体积仍然太大,测量体温大约需要20分钟。直到19世纪,人们才设计出一种易于使用且简单可靠的水银温度计。当水银受热并膨胀时,它将沿着玻璃管上升。即使轻微的温度变化也可能导致水银明显上升。当水银温度与受试者皮肤温度相同时,水银将停止受热膨胀,已经上升到玻璃管上的水银会因为水银液泡与毛细管之间的缩□无法回到水银液泡中。此时,毛细管中的水银不会倒流回到玻璃球,因此可以读取所测量的温度值。体温测量工作完成后,仅需用力甩温度计,即可使水银迅速返回玻璃球,以便继续进行下一次的体温测量。由于水银温度计精度高,携带方便,各方面的功能已经非常成熟,人们也就没有开发其他类型的温度计,但是随着工业发展步伐的加快,环境受到了严重的破坏,环境保护显得迫在眉睫,促使人们开发环保型电子温度计。现代计算机技术的发展十分迅速,短短几十年就已经广泛地普及到了我们学习、生活和工作等各个领域,我们的日常生活也因此而得到了很多的便捷。近些年来,微型计算机(或者单片机)的进一步发展和应用更是引起了数码家电产品的新一轮技术革命。近20年来,我国红外测温技术也发展得越来越好,已经被广泛应用于各个领域。本次设计主要分为六个部分,从设备的设计背景到系统的具体设计,然后对设备进行整体的功能测试,最后完成整个系统的设计总结。第一章介绍系统设备的背景以及相关的现状,然后进行论文整个章节的设计与架构,完成论文的整体框架设计。第二章进行系统设备的方案设计,包括了设备整体结构框图的确定,以及硬件与软件的具体设计要点,并且对一些关键的器件进行选择对比然后确定。第三章主要介绍整个系统的硬件电路设计,包括了单片机最小系统设计,外围辅助电路的设计,首先介绍整体电路,然后对重要的电路分别进行电路模块设计。第四章主要是介绍系统设备的软件编写,包括了整体的流程图及程序设计与相关子流程的设计。第五章主要是进行设备的功能测试,包括设备的制作具体步骤,主要功能的测试与功能展示,最后的部分对系统设备进行整体的设计总结。2系统的整体方案设计片机的型号、内存、引脚数量、运行速度等等参数,传感器的引脚分布和封装尺寸。在所有需要的模块确定完毕之后,进行原理图的绘制,绘制过程中不断的参考资料,完成原理图设计。最后对照原理图完成实物的焊接工作。能,软件需要硬件实现功能,在本质上是一个硬件引脚进行代码的编写,否则将无法实现所需要的功能,对于大写各个子程序的代码,实现模块化设计,这样设计的代码在后期调试整体功能的时候,3、系统的测试:系统测试是设计中非常重要的一个步骤,测试中会发现设计的缺需要优化代码或者变更硬件来解决。在反复的2.2总体框图设计设备系统的运行与单片机的控制和运行密不可分,单片机是整个设计的核心部分,红外测温红外测温↵按键设置↵控制系统数据处理电源图2-1-系统的整体框图STC89C52单片机下载程序的接口可以采用P3.0的RXD与P3.1的TXD引脚进行直接STM32系列的单片机应用在消费领域是非常的普遍的。STM32系列单片机是32位单片机,处理速度相对较快。STM32系列单内核的微型的电脑主板。树莓派支持C语言编程与Python语言编程。树莓派可以通过IO接口直接连接传感器进行数据的采集,也可以通过IO□进行外围设备的驱动。不仅仅可以满足基础的单片机功能,还具有PC机的基本功能,树莓派采用LINUX系页的设计与制作,并且可以播放高清视频,游戏运行等功能。由于树莓派的硬件构成,包括了CPU,存储等,所以价格相对传统的单片机是比较昂贵的。根据本次设计的综合考虑,采用STM32系列单片机实的清晰。LCD1602可以显示2行的英文字符或者数字,每一行可以显示16位数。通过本次设计综合考虑人机交换系统多的需求,采用了LCD1602显示器作为系统的人化为系统直接使用的直流电源。USB的电压是5V,可以为系统的硬件提供电源,并且还可以通过USB接口供电。最为常见的包括电脑USB接口,手机充电宝的USB接口。220V市电供电:电源的设计是一个比较复杂的学科,设计一个稳定的电源需要长据不同系统变比不同的电压,主要是根据变压器的参数来决定。变压之后要进行整流,将交流电压变换为直流电压,通常采用整流桥。然后采用电解电件实现5V的电压输出。这样做的缺点是实现电源的质量不能得到保证,采用市电如果综合所诉,本次设计采用稳定的安全的直流USB进行按键是每一个按键都占用一个单片机的IO接□。通过按键来改变单片机IO管脚的引脚变化,通过变化识别外部信号实现信息的采集。独立按键具有操作灵活,与单片机的接□也相对简单,数据监测容易,单片机只需要识别是否具有按键按下,也就是监测是否会有低电平的变化就可以了。独立按键比较适合按键较少系统,通常在8个按键以下都可以采用独立按键进行设计。矩阵按键:矩阵按键比较适合多按键的输入系统,通过单片机4*4交叉实现每一个交叉节点处放置一个按键,共有16个按键,可以实现系统较多输入信息要求。矩阵按键通过行与列的电平扫描变化,来判断是哪个交叉处的按键按下,通过识别按键编码来实现信息的对应输入。矩阵按键具有占用IO单片机接口少,可以显示多键盘的输入。缺点在于焊接比较复杂,驱动时候需要按照对应的按键码进行程序的编写,相对独立按键来说使用比较复杂。综上所述,根据设备实现的功能,本次选择独立按键进行系统设备信息的采集。3.1单片机最小系统本设计使用的是STM32单片机,STM32最小系统一般由主芯片、电源供电电路、降压电路使用3.3V稳压芯片,由USB的5V输入,然后输出为3.3V,可以保证最大输出300MA电流,时钟频率可达到72MHz。电源指示灯LED(PWR通常为红色),如果电源指示灯亮说明单片机正常运行,如果较暗或者闪烁,则表示此单片机可能存在故障。币3.2晶振电路设计负责为系统时钟提供基准源,匹配的电容大小为22PF的电容。系统的晶振接在OSCIN与OSCOUT两端,晶振匹配的是8M赫兹的晶振,系统的最大运行速度可以达到72M赫兹的运行速度,匹配的电容也是22PF,可以满足系统要求。如图3-2-晶振电路图所3.3显示电路设计LCD1602是LCD的点阵,可以显示2行的英文字符或者数字,每一行可以显示16位数。(1个汉字占用2个字符)。通过显示不同的数字或者字母来实现数据的人机交互正电源。背光与电源引脚,BLA,BLK。RS接入单片机引脚PC13,R/W接入单片机引脚PC14,EN接入单片机引脚PC15。偏置信号引脚,VL。其中:VL管脚是液晶显示器对比度调节端,由10k电位器调节液晶配光的亮度从而调节液晶显示器的对比度。寄存器选择RS引脚,高电平选择数据寄存低电平执行写操作,当RS和R/W为低电平时,可以写入指令或显示地址,当RS处于低电平,R/W处于高电平时,可以读取忙信号。当RS在高电平而R/W为低电平时,可设计的LCD1602显示屏幕供电是5V电压,工作电流是在2.0MA左右,功耗非3.4按键控制模块阵式和独立式,矩阵式是8个单片机IO引脚实现16个按键检测工作,独立式是一个单测,程序设计中需要应用具体的处理方式解决按键机械抖动的问题,一般与按键相连接的单片机引脚,当电平为0时,判断执行按键动作。按键电路的硬件电路23.5报警模块设计蜂鸣器图3-5-报警电路3.6语音播报模块设计器下载相应的语音文件,比如广播“温度正常”,那么我们就需要通过minu下载器编辑这段语音“温度正常”。然后生成一个地址,当单片机需要广播这段语音的时候,就会发964²图3-6-语音播报模块电路图在红外检测器上,检测器将辐射功率转换为电信号,该电信号在被补偿环境温度之后,需将探头对准前额,按下测量按钮,几秒钟即可测量出数据。本系统将采用GY-906型11GY-906一一备模块的驱动程序,并读取数据程序。最终,主程序main的设计完成。根据系统的功编程软件完成,最终编译成功后输出可执行文件HEX文件,然后将软件下载到单片机特定的编译软件编译成单片机所识别的机器代码,单片机识别的机器代码只有0和1的们所使用的开发软件是KEIL软件,在代码编写的时候使用的是C语言,C语言是一种比较容易理解的语言,在设计的术语中叫高级语言,KEIL软件将这种高级语言翻译成机器语言,下载到单片机中,使单片机按照语言的逻辑运行。KEIL软件的功能极为强KEIL软件的开发界面给人一种干净整洁的观感,没有丝毫的杂乱,简单明了的指令系统得到众多程序员的认可,是最受欢迎的软件之一,KEIL软件涵盖了众多型号的单片机库,很多的单片机都可以使用KEIL软件直接进行开发,无需对新的开发环境进FlashDebugPeripheralsJoolsSvCsWindow日NewMulti-ProjecWorkspaL白main.建立工程在菜单Project中的,在下拉的菜单中找到NEW,单击后就可以根据指示的步骤选择单片机等一些列的操作,完成新工程的建立。如下图4-2-程序编写的Keil界面所示。EleEditYewProjectFlushQebugPetioheralsJooksSV奥梁津屋原此·●08a回·团muine回扫Target1日团main.c008010015ab1tREY3=P1^3;017ucharxdatasendBuf[1001=(0x00)//发送缓冲区020bitbt1=s,bt10ms,be100ms;//定时标志位022ucharreceTimeOut;//接收超时025ueharalndata=60,datal=78,almdataXXvoidsend_char_com(unsignedcharch028日(编写程序完成后,需要对其进行编译,如下图4-3-Keil编译界面所示。日白SourceGroup1团Startup.a51田团LCD1602.creceTimeout--;千(1me-E>-200//串口屏通讯处理A5senblingStartup.A51.Program51ze:data=22."modbua51"-0Error(3),4.2主程序流程图设计在程序设计中,一开始不要追求太多细节,而要从总体目标的最高点开始进行设计,解为特定的小目标。每个小目标都称为一个模块。主功能是系统的主程序。在Main中复执行程序。数据采集NO↵数据处理数据显示图4-4-主程序流程图初始化函数:delay_init();//延时函数初始化4.3显示程序设计本设计的显示程序采用的是LCD1602进行显示,显示程序主要通过初始化、设置显示命令,确定显示指针以及显示的地址来完成,在初始化中完成LCD1602的读写协后,确定第一行的显示地址和第二行的显示地址,最终完成数据voidLCD_Write_String(unsigne{{{}{S++;//指针加1本次设计的按键程序采用的是独立式的按键设计,按键子程序是一个实时的扫描过程,对按键检测首先是判断按键是否有动作,如果没有动作,一直处于主程序循环的扫描中,当检测到有动作之后,要进行去抖的延时检测,防止按键的机械性误动作,延时检测之后,对按键进行再次扫描,按键仍为有效值,则对按键值进行判断,判断完毕后等待按键释放,之后执行按键的功能。本次设计的按键功能主要是设置参数,按键模块的流程如图4-6-按键流程图所示。按键数值返回4.5传感器检测流程图设计传感器根据外部信息检测各种状态信息。当外部信息触发传感器时,传感器会输出相应的TTL电平信号。单片机检测到该信号,以实现各种状态判断,从而做出快速响应。程序流程图如图4-7-传感器状态检测流程图所示。开始开始NY单片机检测4.6语音播报模块流程设计Wt588d语音芯片通过外部的下载器下载相应的语音文件,然后生成一个地址,当需要播报这段语音的时候,按下按键,单片机就会发送指令给wt588d,进行语音播报。流程图如图4-1-语音播报模块流程所示。开始开始控制端↵按键是否按下↵是语音播报模块↵音频输出↵当温度高于设置温度上限,播报超温,当温度低于设置温度下限,播报低温,然后循环程序。在完成硬件的原理设计之后,进行硬件设备的焊接,根据原理图将单片机与应用设备的引脚进行连接,完成整体的设备硬件。完成程序的编程,各个模块的子程序设计,最后根据目标实现的功能完成主函数的编写,从而对设备进行整体调试。实物设计主要包括以下几个步骤:1.焊接实物是实物产品设计最为基础的分部,实物焊接是否正确决定实物功能是否能够实现,在这一过程中需要对传感器元器件进行确认,对元器件的引脚功能进行辨别,通过对比元器件的技术手册的引脚定义与原理图设计进行比对,确定无误后进行焊接,焊接时需要对焊接的温度进行控制,尤其对一些不耐热的器件需要快速准确完成焊接,避免高温下的损坏。2.焊接完毕后的检查工作,肉眼检查器件有没有反向焊接,器件引脚所焊接的位置是否正确,线路的连接有没有错误,电路板上的焊点是否存在忘记焊接的现象,密集的焊点之间是否存在着连在一起的错误,这些可能出现的表面问题需要依靠肉眼完成检查,再检查的过程中做到细致、认真、耐心,需要条理清晰的逐一检查,以免漏检在后期上电的时候出现器件不可逆的损害。3.通路实验检测,依靠万用表工具对线路进行检查,使用万用表的通断测试档位,对电路板的电源和地进行测量,这一步是为了避免最为严重的短路现象发生,一旦发生就会对电路板上的所有器件造成一定的损害,使部分功能失效,影响后续的功能调试。电源故障排除之后,对其他的线路按照原理图一—测试,逐一排查,直到全部测试完毕。4.实物通电试验,实物上电后,对于弱电部分可以用手背感测器件的温度,温热表明器件正常工作,过热说明器件工作不正常,需要重新检测。使用万用表的电压档位测试各个部分的电压是否正常,以确保所有器件和模块均正常工作。。5.实物功能调试,在实物的功能调试中需要将写好的程序代码写入到实物中进行运行,运行时可以将功能进行模块化调试,对每个功能进行逐一调试,以确保单个功能程序的正确性。在所有功能一—调试后,进行整体调试以完成系统的功能设计。6.实物性能测试,性能测试建立在功能全部实现基础之上,通过程序代码的运行逻辑,对实物的运行速度、控制器的反应时间、极限数据测量等等进行测试,不断的通过优化代码设计,完成性能的测试工作。焊接的图片如图5-1-实物焊接图所示。测试设备硬件最有效的方法是使用万用表进行整体测试。由于设备的焊接不是特别清楚,所以在比较原理图时不能很直观看出来,因此使用万用表测量电路。对于测试,首先要测试的是电源,即VCC和GND是否短路。测试结果如下5-2-VCC与GND测量结果所示。测量发现,VCC和GND的焊接正常,这证明系统电源没有问题。然后依次测试线路是否导通,并根据原理图测试两条线路之间是否存在断路。测试如图5-3-连通线测量结果所示,蜂鸣器鸣叫。完成系统的整体测试检查,设备整体上电检测结果正常,系统整体测试效果如图5-4-设备正常运行图所示。编写程序后,设备运行错误。主要错误在于显示程序的调试。由于不太熟悉显示硬件,因此在调试程序时,驱动程序的RS和RW引脚与设备硬件定义相反。发现在通电测试期间未显示出内容。查找出问题,交换显示的定义RS和RW后,系统显示正常。显示用作输出端口,然后调试整个程序。最后,系统总体实现设备的整体功能。系统整体测试如下图5-5-系统软件正常运行工作所示。本设计以单片机为核心,实现了智能检测功能和控制功能,通过对传感器的数据的采集,在单片机内部进行运算和逻辑处理,完成控制输出功能,在硬件设计和软件设计的综合应用的情况下,实现智能化系统设计功能要求。在本次的设计中,首先对本次的设计背景进行了描述与分析,以及未来的应用场合和市场的前景进行了概述,明确了设计的功能,对于所应用关键技术部分进行深入的讨论,其次描述了设计的总体思路,在总体设计思路的指导下选择功能器件,并且通过器件型号的对比分析,择优选取,在本文的第三章中,对硬件电路的设计进行全面的展开阐述,从核心的单片机到所应用传感器部件分别进行了具体的介绍,从器件的功能到最后的引脚连接全面进行了说明。在第四章中介绍的软件设计的功能,通过程序流程图的绘制,总体剖析软件设计的总体过程,对各个子程序的流程图设计,展示子程序功能实现的过程,最后在第五章中对于本次设计产品进行综合的调试,在调试过程中发现问题、解决问题。调试中,根据设计思路和运行逻辑进行分部测试,最终呈现设计的功

温馨提示

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

评论

0/150

提交评论