收藏 分销(赏)

基于的室内温度控制新版系统.doc

上传人:丰**** 文档编号:2742410 上传时间:2024-06-05 格式:DOC 页数:98 大小:3.28MB
下载 相关 举报
基于的室内温度控制新版系统.doc_第1页
第1页 / 共98页
基于的室内温度控制新版系统.doc_第2页
第2页 / 共98页
基于的室内温度控制新版系统.doc_第3页
第3页 / 共98页
基于的室内温度控制新版系统.doc_第4页
第4页 / 共98页
基于的室内温度控制新版系统.doc_第5页
第5页 / 共98页
点击查看更多>>
资源描述

1、题 目 基于STM32室内温度控制系统_ 学生姓名 李枝玲 学号 _ 所在学院 陕西理工学院_ 专业班级 电子信息工程_ 指引教师 梁芳_ 完毕地点 物理与电信工程实验室_ 年 5 月 29 日基于STM32室内温度控制系统李枝玲(陕西理工学院 物理与电信工程学院 电子信息工程专业 电子1205班,陕西汉中723000)指引教师:梁芳 摘要 本设计是以STM32单片机为核心温度控制系统。采用DS18B20温度传感器实现对温度采集,并用TFT液晶屏对温度进行显示。通过对元器件选取,设计系统硬件电路,从而设计有关应用程序,制作实物,实现温度采集、显示、控制等功能。成果表白,所设计温度控制系统基本可

2、以完毕所需功能,并且具备测量精准高、实时性好、使用以便等特点。 核心词 温度控制; DS18B20;STM32单片机 Indoor temperature control system based on STM32Zhiling Li (Electronic information engineering,School of physics and telecommunication engineering,Shaanxi University of Technology,Hanzhoung 723000,Shaanxi,1205)Tutor:Fang LiangAbstract This d

3、esign is based on STM32 microcontroller as the core of the temperature control system.Using DS18B20 temperature sensor to achieve the temperature of the collection,the use of TFT LCD screen to display the temperature. the hardware circuit of the system is designed through the selection of components

4、;So as to design the related application,make the object,realize the function of temperature acquisition,display,control and other functions.The results show that the designed temperature control system can basically complete the required functions,and has the characteristics of high precision,good

5、real-time performance,easy to use,and so on.Keywords temperature control;DS18B20;STM32 single chip microcompute目录绪论11 系统总体设计21.1系统功能规定21.2系统方案论证21.3系统设计框图21.4 详细控制选取21.4.1 控制器选取21.4.2 温度传感器32 硬件设计42.1硬件构成42.2 控制模块42.2.1 STM32简介42.2.2 STM32重要长处52.2.3 STM32开发板62.3 最小系统设计72.4 温度采集模块82.4.1 DS18B20简介82.4

6、.2 DS18B20工作原理简介82.4.3 DS18B20使用中注意事项92.4.4 DS18B20与STM32单片机连接电路92.5 显示模块102.5.1 TFTLCD液晶显示简介102.5.2 ALIENTEK 2.8液晶简介102.6 按键模块112.7 电源模块122.8 风机模块123 系统软件设计133.1 主程序133.2 温度采集子程序143.4 按键子程序164 系统调试174.1 硬件调试174.2 软件调试174.3 联合调试174.4 故障分析175 总结与展望195.1 总结195.2 展望19道谢20参照文献21附录A 外文及翻译22原文22译文29附录B 系统

7、电路图35附录C 实物图36附录D 程序清单37绪论在人类生活环境中,温度扮演着极其重要角色。特别是在冶金、医药、食品制造和化学制造业等行业特别显得重要。在恰当温度下生产产品质量、产量和合格率会大大提高。有些药物生产和存储要在很低温度下进行;石油分馏过程中在不同温度下才干分离出汽油、柴油、煤油、硫化物;食品制造和存储也要在特定温度下才干保证质量。在农业大棚蔬菜和室内圈养牲口对于环境温度规定也很高,大棚蔬菜温度基本上要保证在2030。鸡舍育雏期温度要控制在36左右。随着社会生产力和科学技术发展,工农业生产和生活中对于温度规定会越来越高,因而可以检测温度变化温度检测设备出当前人们视线中。它能使人们

8、能及时看到温度变化第一手资料,提示温度变化状况,协助人们及时调节,让温度控制更好服务于整个社会和人们生活。 近年来随着电子信息技术飞速发展,人类生活发生了很大变化,特别是随着大规模集成电路浮现,微型计算机应运而生,让人类社会进入了一种崭新时代。但是由于微型计算机成本较高,在诸多工业控制中并不是最佳选取。因此单片机由于价格低廉、可靠性高,性能稳定以及独特定期、计数功能而被广泛应用在工业控制,工业生产,家用电器制造等方面,单片机应用在不断走向深处,在实时检测与自动控制单片机应用系统中,单片机普通是用来做核心部件,由详细硬件构造与控制对象特点,和软件相结合来加以完善9。温度是表达物体冷热限度物理量,

9、工农业生产过程中温度是一种非常重要参数。温度测量在产品生产,工业设计,能源节约中发挥到了核心性作用。随着科学技术进步和生产需要,温度传感器不断更新和丰富起来。温度作为一种模仿量,如果采用适当技术和元件,把模仿温度量转化为数字量虽然说不难,但电路比较复杂,成本也太高。温度测量中测量温度是重点,本设计中单片机温度测量同样如此11。 温度控制系统惯用来保持温度恒定或者使温度按照某种规定程序变化。由于温度自身某些特点,如惯性大、滞后现象严重、难以建立精准数学模型等,老式控制方式由于其控制精度不高、不能及时跟踪对象特性变化等因素导致控制系统性能不佳。本设计基于这一点,选用品有高性能而又经济STM32单片

10、机作为控制器,所用算法为位置型PID控制算法,完毕了对系统设计8。本课题设计方案具备可行性和一定推广性,若可以应用于实际生产生活中,将会对提高公司自动化水平、减少生产成本、减轻工人劳动强度、提高生活质量等方面起到积极增进作用。1 系统总体设计1.1系统功能规定该设计重要由单片机最小系统模块,温湿度采集模块、显示模块和键盘模块,报警模块等构成,以STM32单片机作为核心解决器。重要完毕功能有如下几点:对室内温度进行实时检测、可按照指令变化控制参数、将检测温度显示出来。1.2系统方案论证电路总体可以分为温度采集模块、单片机STM32最小系统模块、电机驱动模块、按键模块以及显示模块等。以STM32单

11、片机最小系统作为核心控制电路,传感器采集温湿度作为STM32 输入,电机驱动模块、TFTLCD2.8寸液晶屏,以及按键模块作为STM32 输出。采集温度方面由DS18B20温度传感器来完毕,它是一种数字温度传感器、内置模数转换,可直接与单片机相连接。而TFTLCD2.8寸液晶显示屏是插针式,也可以直接与单片机相连接。通过DS18B20传感器采集当前温湿度值、经单片机将其解决后数据送到TFTLCD液晶显示屏来进行显示,重要显示测得实时温度与设定温度上下限。运用键盘设立温度阈值,如果当前采集实时温度不在设定温度阈值范畴之内,则由STM32单片机发出指令来控制电机驱动模块,使电机正常工作来实现室内温

12、度控制。1.3系统设计框图功按照系统能详细规定,在保证明现其功能基本上,尽量减少系统成本。总体设计方案环绕上述思想,初步拟定系统方案如图1.1所示 STMF103RCT6控制器晶振电路DS18B20电机驱动LCD显示按键电路复位电路LED批示 图1.1 功能模块框图1.4 详细控制选取1.4.1 控制器选取方案一:选用STM32F103ZET6单片机该单片机有144个引脚,为32微解决器M3内核,最大时钟频率可达到72MZhz,解决速度快,效率高。其内部有8个定期器,内个能输出4路PWM波,且有六个能能配备4个通道捕获。同步内部尚有多路AD、DA等,配备有SPI、I2C接口等,内部资源极为丰富

13、,用该解决器为设计带来很大以便5。方案二:选用STM32F103RCT6单片机 该单片机有64个引脚,跟上述STM32ZET6功能极为相似,同样也有多路PWM、输入捕获、AD、DA,配有SPI、I2C等接口,内部资源较为丰富。但是相比STM32ZET6,该单片机体积小,引脚少。内部只有四个定期器(定期器1到定期器4),但是都具备计数、产生PWM波及输入捕获功能5。方案一中STM32F103ZET6管脚太多且体积较大,虽然内部资源丰富,但是好多没用到。而STM32F103RCT6内部不但集成了设计所需要功能并且体积小、引脚少,同步相比STM32F103ZET6价格更便宜。因此选用STM32F10

14、3RCT6作为主控器。1.4.2 温度传感器方案一:数字温度传感器如DS18B20 该传感器重要特性如下:数据线供电方式是在寄生电源方式下供电,电压适应范畴比较宽,电压范畴为:3.05.5V;DS18B20在和单片机连接时仅仅需一条总线就可以实现DS18B20和单片机双向通信,它单线接口方式十分特殊,但也十分以便;各种DS18B20可以并联在唯一三线上,可以实现组网多点测温功能;所有传感器元件和转换电路就像一只三极管集成在集成电路内,DS18B20在使用时候不需要任何外围元件;测温范畴55+125,在-10+85时精度在0.5范畴内;有912位可编程辨别率,相相应可辨别温度依次为0.5、0.2

15、5、0.125和0.0625,因而可以实现高精度测温;9位辨别率时最大可在 93.75毫秒内把温度转换为数字,12位辨别率时最多能在750毫秒内把模仿温度值转换为数字量,速度更快;直接把测量出数字温度信号成果输出,可传送CRC校验码,同步用单总线串行方式传递给CPU,抗干扰和纠错能力都较强;负压特性:把电源极性接反时候,芯片不会由于发热而烧毁,但是也不能正常工作10。方案二:热电阻温度传感器热电阻测量精度高,性能稳定,使用以便,测量范畴比较宽,在高精度、低温测量中占有重要地位。热电阻传感器重要用于中低温度(-200+650或850)范畴温度测量。惯用工业原则化热电阻有铂热电阻和铜热电阻。铂电阻

16、传感器是运用金属铂(Pt)电阻值随温度变化而变化物理特性而制成温度传感器3。以铂电阻作为测温元件进行温度测量核心是要能精确地测量出铂电阻传感器电阻值。铂电阻具备合用范畴广、测量范畴大、稳定性高、重复性好、价格低廉、使用以便等长处,成为当前工业和实验室中温度测量应用最广泛普遍传感元件之一,工业中应用较多热电阻传感器如Pt100。通过比较,虽然方案二测量温度范畴比较大,但是由于它测温原理是电阻值随着温度变化而不断变化,因而需要设计出非常优良温度采集电路,其中应涉及测温某些,线性化某些,放大某些,A/D转换某些,这就会使外围电路复杂性大大增长。方案一数字式温度传感器,用一根数据总线就可以和单片机进行

17、通信,使其外围电路大大简化,测量精度更加精确。因而在本设计中选取方案一作为温度采集传感器。2 硬件设计2.1硬件构成 硬件重要涉及:温度采集模块、单片机STM32最小系统模块、电机驱动模块、按键模块以及显示模块。2.2 控制模块该模块重要任务是完毕单片机所发出升温或降温操作。单片机STM32F103RCT6做CPU,DS18B20采集温度直接输出数字信号,单片机进行解决与执行。当温度高于设定温度上限值时,单片机向温度控制执行电路发送降温命令,同步发光二极管绿灯亮,提示使用者温度过高正在进行降温,启动风机等操作。当温度低于设定温度下限时,单片机向温度控制执行电路发送升温命令,同步发光二极管红灯亮

18、,提示使用者温度过低正在进行升温操作。控制模块如图2.1所示。图2.1 控制模块2.2.1 STM32简介STM32系列是为规定高性能、低成本、低功耗嵌入式应用专门设计ARM Cortex-M3内核。按性能提成两个不同系列:“增强型”STM32F103系列和“基本型”STM32F101系列。增强型系列时钟频率能达到72MHz,是同类产品中频率最高;基本型时钟频率为36MHz,用16位产品同样价格得到比16位产品更大性能,是16位产品最佳选取。两个系列均有内置32K到128K闪存,不同是SRAM最大容量和外设接口组合。时钟频率为72MHz时,从闪存执行代码来看,STM32功耗36mA,是32位市

19、场上功耗最低产品,相称于0.5mA/MHz6。以STM32103RCT6单片机为解决器,该单片机为32位解决器。内核为Cortex-M3,其并行总线构造,嵌套中断向量控制单元,调试系统和它原则存储映射。嵌套中断向量控制器(Nested Vector Interrupt Controller,简称NVIC)是Cortex-M3解决器中一种比较核心组件,它为基于Cortex-M3微控制器提供了原则中断架构和先进中断响应能力,为超过240个中断源提供专门中断入口,并且可觉得每个中断源赋予单独优先级。采用NVIC可以达到非常快中断响应速度,从收到中断祈求到执行中断服务第一条指令仅需12个周期。这种极快

20、响应速度一方面得益于Cortex-M3内核对堆栈自动解决机制,这种机制是通过固化在CPU内部微代码实现。另一方面,在中断祈求持续浮现状况下,NVIC使用一种称为“尾链”技术,使持续而来中断可以在6个时钟周期内得到服务。在中断压栈阶段,更高优先级中断可以不耗费任何额外CPU周期就能完毕嵌入低优先级中断动作。详细细节背面我会继续总结。顾客可以通过设立CPU自动进入低功耗状态,而使用中断来将其唤醒,CPU在中断时间来临之前会始终保持睡眠状态7。Cortex-M3CPU支持两种运营模式:线程模式(Thread Mode)与解决模式(Handler Mode)并且需要注意是,这两种模式都拥有各自独立堆栈

21、。这种设计使得开发人员可以进行更为精密程序设计,对实时操作系统支持也就更好了。Cortex-M3解决器还包括了一种24位可自动重装载定定期器,可觉得内核(RTOS)提供一种周期中断。在指令集方面,ARM7和ARM9均有两种指令集(32位指令集和16位指令集),而Cortex-M3系列解决器支持Thumb-2指令集。由于Thumb-2指令集融合了Thumb指令集和ARM指令集,使得32位指令集性能和16位指令集代码密度之间获得了平衡5。 专业嵌入式、单片机技术实训。并且,ARM Thumb-2 专门为C/C+编译器设计,这就意味着Cortex-M3系列解决器开发应用可以所有在C语言环境中完毕。S

22、TM32微控制器推出标志着ST公司在两条产品主线(低价位主线和高性能主线)上迈出了重大一步。STM32最初发布时有14个不同型号,分为两个版本:最高CPU时钟为72MHZ“增强型”和最高CPU时钟为36MHZ“基本型”。这些不同STM32型号里内置Flash最大可达128KB,SRAM最大为20KB,在STM32发布之初,配备更大Flash,RAM和更复杂外设版本就已经在规划之中了。不论是什么版本,什么型号STM32器件,它们在引脚功能和应用软件上是兼容。这就使得开发人员在使用STM32系列微控制器时,不必改动PCB就可以依照需要随意更换器件型号。乍一看STM32设备配备,与往日熟悉51单片机

23、倒有几分相似。普通,STM32都会配备常用外设,诸如多通道ADC,通用定期器,I2C总线接口,SPI总线接口,CAN总线接口,USB控制器,实时时钟RTC等。但是,它每一种外部设备都具备独特之处。例如,12位精度ADC具备各种转换模式,并带有一种内部温度传感器,带有双ADCSTM32器件,还可以使两个ADC同步工作,从而衍生出了更为高档9种转换模式;STM32每一种定期器都具备4个捕获比较单元,并且每个定期器都可以和此外定期器联合工作以生成更为精密时序;STM32有专门为电机控制而设高档定期器,带有6个死区时间可编程PWM输出通道,同步其带有紧急制动通道可以在异常状况浮现时,逼迫PWM信号输出

24、保持在一种预订好安全状态;SPI接口具有一种硬件CRC单元,支持8位字节和16位半字数据CRC计算。在对SD或MMC等存储介质进行数据存取时相称有用。并且,STM32还包括了7个DMA通道。没恶搞通道都可以用来在设备与内存之间进行8位,16位,32位数据传播。每个设备都可以向DMA控制器祈求发送或者接受数据。STM32内部总线仲裁器和总线矩阵将CPU数据接口和DMA通道之间连接大大简化了,这就意味着DMA通道单元是很灵活其用法简朴,足以应付微控制器应用中常用数据传播规定。2.2.2 STM32重要长处l 使用ARM最新、先进构架Cortex-M3内核l 出众实时性能l 出众功率控制l 出众和创

25、新外设l 最大限度集成整合l 易于开发,可使产品l 迅速进入市场STM32硬件特色接口:l I/O:输入/输出口l 低功耗模式、定期器/计数器、输入捕获l PWM:脉宽调变l A/D:模/数转换l DMA:直接存储器存取l USART、SPI:单个程序启动l BOOT:2.2.3 STM32开发板STM32开发板如图2.2所示4l STM32F103RCT6,TQFP64,FLASH:256K,SRAM:40Kl 1个JTAG/SWD调试下载口l 1个电源批示灯(蓝色)l 2个状态批示灯(DS0:红色,DS1:绿色)l 1个红外接受头l 1个IIC接口EEPROM芯片,24C02,容量256字

26、节l 一种SPIFLASH芯片,W25X16,容量2M字节l 1个DS18B20温度传感器预留接口l 一种原则2.4 / 2.8英寸液晶屏接口,支持触摸屏l 1个OLED模块接口l 1个USB SLAVE接口,用于USB通信l 1个插SD卡接口l 1个PS/2接口,外接鼠标、键盘等l 1组5V电源供应/接入口图2.2 STM32开发板l 1组3.3V电源供应/接入口l 1个启动模式配备选取接口l 2个2.4G无线通信接口(24L01和JF24C)l 1个复位按键,用来对MCU和LCD进行复位l 3个功能按键,其中WK_UP兼具唤醒功能l 1个电源开关,控制整个板电源l 除晶振占有IO口外,别的

27、因此得IO所有引出,其中GPIOA和GPIOB按顺序引出2.3 最小系统设计单片机要正常工作必要电源电路提供电源,通过震荡电路产生时钟周期,同步为了防止系统异常还需加上复位电路,可手动让系统重新工作。(1)震荡电路震荡电路用是8M晶振,由于STM32内部可以通过锁相环可以进行倍频,变为最高72MHZ频率,因此外部接8MHZ晶振,通过倍频可达到72MHZ1。其电路如图2.3所示。其电路重要有晶振、电容和电阻构成。其中OSDIN 和OSDOUT为STM32外部时钟电路引脚。通过震荡电路产生时钟从该管脚输入作为解决器时钟源。图2.3 振荡电路(2)复位电路图2.4 复位电路Stm32是低电平复位并且

28、每次上电是会复位一次,因此系统上电之后默认状况下其RST脚应当为高电平。其电路如图2.4所示。R1位上拉电阻,REST为单片机复位引脚,当按键K1按下RST引脚输出低电平,此时系统复位;当复位按键K1没按下时,由于RST直接接在上拉电阻上,默以为高电平,因此系统正常工作。2.4 温度采集模块 该模块重要采用温度传感器DS18B20来实现对温度采集。DS18B20将采集来模仿温度信号转换为数字信号,传送给单片机进行解决。2.4.1 DS18B20简介 DS18B20引脚图如图2.5所示。 图2.5 DS18B20引脚图DS18B20功能特点:1.独特单线接口方式,与单片机通信只需要一根I/O线,

29、在一根线上可以挂接各种DS18B20。2.每个DS18B20均有它序列号,咱们是依照序列号来访问相应器件,具备一种独有,不可更改64位序列号。3.低压供电,电源范畴为3-5V,可本地供电,也能直接通过数据线提供电源(即寄生电源2方式)。4.在-10C至+85C范畴内可以达到精度为0.5摄氏度,测温范畴为55+125摄氏度。5.顾客可以依照自己设计设定报警上下限温度。6.它转换12位温度信号为数字信号最大时间为750毫秒,可编辑数据位9-12位。7.DS18B20辨别率为9-12位,可由顾客通过EEPROM设立。8.DS18B20可以把检测到模仿温度值直接转化为数字量,并且通过串行通信方式传送给

30、单片机。2.4.2 DS18B20工作原理简介DS18B20测温原理:低温度系数晶振,产生频率脉冲信号给计数器1,它振荡频率受温度影响较小。高温度系数晶振,振荡频率受温度影响较大,会随着温度变化而变化,产生频率脉冲信号给计数器2。把温度寄存器和计数器1先设立在55所相应一种基数值。低温晶振脉冲,通过计数器1进行减法计数,计数器1值降到0时,计数器1预设值会重新装入,此时温度寄存器值加1.计数器1重新开始计数,就这样循环,停止温度寄存器值累加时计数器2计数值到0,所测温度就为此时温度寄存器中数值10。DS18B20测温原理框图如图2.6所示。DS18B20写操作:1.把数据线先置为低电平0。2.

31、延时时间为15ms。3.从低位到高位发送字节数据(一次只能发送一位)。4.延时45ms。5.将数据线拉到高电平1。6.重复上面(1)到(6)操作,直到整个字节所有发送完为止。7.最后把数据线拉到高电平1。图2.6 DS18B20测温原理框图DS18B20读操作:1.先把数据线拉高“1”。2.延时2ms。3.数据线拉低“0”。4.延时15ms。5.将据线拉高“1”。6.延时15ms。7.读取数据线状态得到1个状态位,并且进行数据解决。8.延时30ms。9.重复(1)到(7)操作,读取完一种字节结束。2.4.3 DS18B20使用中注意事项DS18B20 虽具备连接以便、测温系统简朴、占用口线少、

32、测温精度高等长处,然而在实际应用中也应当注意如下两个方面问题:1.DS18B20 从测温结束到把测得温度值转换成为数字量,需要一定转换时间,这必要保证,否则会浮现转换错误现象,从而使温度输出总是显示为85度。2.在实际使用中,应当使电源电压保持在5V 左右大小,若是电源电压过低了,就会减少所测得温度精度。2.4.4 DS18B20与STM32单片机连接电路 DS18B20有两种供电方式,一种是寄生电源供电方式,这时单片机端口接是单总线, 寄生电源供电方式中,DS18B20 VDD 引脚必要接地。另一种是电源供电方式,此时DS18B201脚接地,3脚接电源,2脚是信号线。DS18B20与单片机接

33、口电路如图2.7所示。DQ与单片机PA4端口连接。图2.7 DS18B20与单片机接口电路图2.5 显示模块 采用TFTLCD液晶显示屏来进行显示,重要显示测得实时温度与设定温度上下限。2.5.1 TFTLCD液晶显示简介 显示屏是机器与人进行信息交流重要界面,初期用最多显示屏是显像管(CRT/Cathode Ray Tube),但是随着科学技术不断发展,各种各样显示技术诞生,而薄膜晶体管液晶(TFT-LCD)显示屏由于具备反映速度比较快、可视角度较大、无辐射危险,和稳定不闪烁影像等优势,更是在近年来不断下跌价格吸引下,逐渐取代了主流CRT地位。 TFTLCD型液晶显示屏由萤光管、滤光板、导光

34、板、偏光板、玻璃基板、配向膜、液晶材料、薄模式晶体管等构成。2.5.2 ALIENTEK 2.8液晶简介ALIENTEK 2.8液晶显示屏实物如图2.8所示:图2.8 ALIENTEK 2.8液晶显示屏ALIENTEK TFTLCD 采用16位并方式和外部电路连接,之因此不采用8位方式,是由于彩屏数据量比较大,特别是在显示图片时候,如果采用8位数据线就会比16位方式慢一半,咱们固然但愿速度越快越好,因此采用16位接口。TFTLCD接口定义如图2.9所示。图2.9 TFTLCD接口定义图该模块80并口有如下某些信号线: CS:TFTLCD片选信号。 WR:向TFTLCD中写入数据。 RD:从TF

35、TLCD中读出数据。 D15:0:16位双向数据线。 RST:硬复位TFTLCD。RS:命令/数据标志(0:读写命令,1:读写数据)。TFTLCD与MiniSTM32开发板IO相应关系如下:LCD_LED 相应 PC10。LCD_CS 相应 PC9。LCD _RS 相应 PC8。LCD _WR 相应 PC7。LCD _RD 相应 PC6。LCD _D17:1相应 PB15:0。2.6 按键模块 该模块重要实现对上下限温度设立以及对电路复位。单片机应用系统中除了复位按键有它专门复位电路,和专一复位功能以外,其他按键都是用开关状态来设立控制功能或者输入数据。 本系统设立了四个按键,来配合显示界面,

36、可以对有关参数进行设定,不同运营方式之间进行切换,测量校准,开入开出测试等操作。按键SW1SW4分别是复位、确认、温度加、温度减。其中温度设立键盘某些电路图如图2.10所示: 图2.10 温度设立某些电路图2.7 电源模块单片机STM32F103RCT6以及其他外围芯片都是3.3V供电,因此需要将5V电压转成3.3V,使用惯用AMS1117-3.3V电源芯片。电路如图2.11所示。图2.11 电源电路2.8 风机模块 当检测到实时温度高于设定温度值时,单片机要进行降温操作。采用L298N与单片机相连接,从而控制风机转动,以达到控制温度目。电路如图2.12所示。图2.12 风机电路3 系统软件设

37、计整个设计系统功能是由软件程序配合硬件电路来实现,如果硬件电路已经拟定,软件功能也就基本上拟定了,由于软件程序编译是基于STM32单片机编程。软件某些可分为主程序和子程序,主程序是整个控制系统核心,用于调节和解决各模块之间关系2。子程序是各个模块实现实质性功能,其重要子程序涉及:温度采集、键盘扫描、LCD显示等。3.1 主程序 图3.1 主程序流程图一方面进行系统初始化配备,即一方面向在stm32控制器中配制寄存器和I/O口,建立系统任务、测量任务及控制任务,并在启动任务中初始化传感器基本配备。然后在任务中编写顾客程序。顾客程序设计如下:将接DS18B20读到数据通过STM32输入捕获模式得到

38、该数据,送到TFTLCD液晶显示屏来进行显示,重要显示测得实时温度。然后一方面判断按键与否按下,如果未按下按键则返回按键扫描,否则再进一步判断所测得数据实时温度与否在室内温度设定阈值范畴内。如果没有在室内温度设定阈值范畴内,则需要启动电机驱动模块来启动电机,通过热冷客气对流来平衡温差,直到室内温度达到室内温度设定阈值范畴规定,最后结束主程序。主程序流程如图3.1所示。3.2 温度采集子程序温度采集子程序就是驱动外部温度传感器DS18B20进行工作,通过I/O口通信方式向STM32单片机中写入数据,并且送到TFTLCD液晶显示屏来进行显示。一方面进行I/O口初始化,然后是复位DS18B20使其恢

39、复初始状态等待DS18B20响应。将DS18B20读到温度数据进行数据转换,并且写入DS18B20单片机,最后结束子程序。配备程序流程图如图3.2所示 图3.2 温度采集框图DS18B20初始化环节如下:1、高电平“1”状态必要先给数据线。2、延时(该延迟时间长短规定不严格,但尽量短一点)。3、把数据线拉低到电平“0”状态。4、再延时750微秒(该时间范畴为480-960ms)。5、把数据线拉高到电平“1”。6、延时等待7、CPU如果读到了数据线上“0”状态低电平,还要继续做延时,延时时间由发出高电平开始算起(第(5)步时间开始算),至少需480ms。8、再次把数据线拉高到高电平“1”后就结束

40、。3.3 显示子程序图3.3 显示程序框图在该系统中使用TFTLCD液晶显示屏来显示DS18B20所采集当前温度值。显示子程序程序设计如下:一方面进行LCD初始化,即向TFTLCD配制寄存器,涉及写寄存器函数、LCD写GRAM命令,建立LCD光标位置、扫描方式、显示方向、显示颜色等,并在启动LCD初始化寄存器基本配备,然后通过STM32单片机向LCD写数据,并使LCD寄存器读出数据显示字符串,结束显示子程序。子程序流程图如图3.3所示。3.4 按键子程序 在本设计中运用键盘设立温度阈值阈值。按键子程序程序设计如下:一方面进行按键I/O口初始化即配备STM32单片机I/O口,另一方面调用按键扫描

41、函数,如果有相应按键按下,则执行相应动作,最后结束按键子程序。按键普通都存在抖动问题,为了去抖动采用软件办法,它是在检测到有键按下时,执行一种10ms延时程序后,再确认该键电平与否仍保持闭合状态电平,如保持闭合状态电平则确以为真正键按下状态,从而消除了抖动影响。按键检测子程序流程图如图3.4所示。图3.4 按键流程图4 系统调试由于温度控制系统有几种某些构成,需要由现象来进行调试,采用排除法和替代法综合找到问题,通过度析现象因素来解决问题,因此系统调试是由局部到整体,由硬件到软件再到软硬件联合调试过程。一方面是搭建电路,并编写各模块软件程序,调通各单独模块。保证各单独模块均正常工作时,再将各模

42、块放一种系统中让其都能正常工作。通过在调试途中发现问题、解决问题,而达到系统稳定、高效工作目。4.1 硬件调试其调试环节如下:(1) 一方面借助proteus、multisim将电源等基本电路仿真出来,拟定达到各指标后,再在电路板上展开焊接工作。(2) 当上述环节完毕后,再对比电路图检查连接与否对的,同步运用万用表检测各焊点之间导通状况,特别要注意电源正负极连接与否对的。当保证连接都正常时再接通电源,检测各模块供电电压与否正常,同步用手轻轻触摸各模块,检查与否有芯片发热等异常状况。如浮现异常应当及时断电,设法找到故障因素并排除故障。(3) 当上述环节完毕后,接通电源,让电路各模块运转起来,然后

43、各模块逐个检查看与否正常工作,最后再整体测试,看整个电路与否正常。通过以上几种环节完毕对硬件检查保证硬件电路对的无误为后续软件调试打下良好基本。4.2 软件调试软件调试就是将各模块程序跟硬件结合起来,通过调试让各模块成功实现其功能。详细如下:(1) 开发工具:MDK KEIL、串口助手、FlyMcu下载软件、CH340串口。(2) 设计中软件调试过程如下:a.在keil开发环境中编写各模块底层驱动。b运用FlyMcu下载软件、CH340串口将程序烧写到解决器中。c借助串口助手观测数据、分析数据。d如遇到问题,通过修改程序,不断重复2、3过程直到所有模块正常为止。4.3 联合调试联合调试目:将所

44、有模块都集合到一起,通过调试让其都能正常工作,最后达到设计所要实现功能为止。其过程如下:(1)将温度采集模块、单片机STM32最小系统模块、按键模块以及显示模块均组合到一起,通过调试让其都能正常运转。如若发既有问题则需要分模块调试。(2)加入电机驱动模块,分别调节(1)各模块和电机驱动模块。(4)向电机驱动模块加电机和风机片。(5)在室内环境下进行系统测试,测试其平衡性与稳定性,并对所浮现问题对参数进行调节。4.4 故障分析设计最开始传感器DS18B20每次初始化时LCD液晶都没有显示数据,通过调试发现是由于DS18B20DE引脚插反。通过纠正后能正常显示,但是显示字符有问题,不能显示摄氏度单

45、位符号“”,通过修改主函数程序才可以成功显示,是由于调用字符串显示函数时少了一种空格符号。室内对系统稳定性测试时,由于系统没有进行实物焊接,而是用杜邦线连接外围器件,正常该方向不会有问题,但是由于粗心也许导致杜邦线松动,从而导致DS18B20读出数据有问题,或者电机没有转动。但是这一切只是推测,详细需要对传感器数据和同事现象分析。DS18B20读出数据如表4.1所示。表4.1 DS18B20读出数据与实际温度比较实际温度测量温度007.2714.31421.12128.52835.33542.442通过数据表格咱们可以发现系统测得温度与实际温度存在一度误差,因素是由于DS18B20对一度温度变化不太敏感咱们只对温度整数某些进行了显示而未显示小数某些导致。由于咱们对室内温度进行调节温度规定不高不规定精准测量。理论上温度可以误差可以控制在-0.05度到0.05度范畴内。5 总结与展望5.1 总结 本设计简介了基于STM32单

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服