基于STM32的室内温度控制系统

基于STM32的室内温度控制系统
基于STM32的室内温度控制系统

题目基于STM32的室内温度控制系统_______学生姓名李枝玲学号1213014137_____所在学院陕西理工学院____________专业班级电子信息工程________________ 指导教师梁芳____________________完成地点物理与电信工程实验室__________

2016 年5 月29 日

基于STM32的室内温度控制系统

李枝玲

(陕西理工学院物理与电信工程学院电子信息工程专业电子1205班,陕西汉中723000)

指导教师:梁芳

[摘要] 本设计是以STM32单片机为核心的温度控制系统。采用DS18B20温度传感器实现对温度的采集,并用TFT液晶屏对温度进行显示。通过对元器件的选择,设计系统的硬件电路,从而设计相关应用程序,制作实物,实现温度采集、显示、控制等功能。结果表明,所设计的温度控制系统基本能够完成所需功能,并且具有测量精准高、实时性好、使用方便等特点。

[关键词] 温度控制;DS18B20;STM32单片机

Indoor temperature control system based on STM32

Zhiling Li

(Electronic information engineering, School of physics and telecommunication engineering,

Shaanxi University of T echnology,

Hanzhoung 723000, Shaanxi, 1205)

T utor: Fang Liang

Abstract This design is based on STM32 microcontroller as the core of the temperature control https://www.360docs.net/doc/d4856054.html,ing 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; 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 real-time performance, easy to use, and so on.

Keywords temperature control;DS18B20;STM32 single chip microcompute

目录

绪论 (1)

1 系统总体设计 (2)

1.1系统功能要求 (2)

1.2系统方案论证 (2)

1.3系统设计框图 (2)

1.4 具体控制选择 (2)

1.4.1 控制器选择 (2)

1.4.2 温度传感器 (3)

2 硬件设计 (4)

2.1硬件构成 (4)

2.2 控制模块 (4)

2.2.1 STM32简介 (4)

2.2.2 STM32的主要优点 (5)

2.2.3 STM32开发板 (6)

2.3 最小系统设计 (7)

2.4 温度采集模块 (8)

2.4.1 DS18B20的介绍 (8)

2.4.2 DS18B20工作原理介绍 (8)

2.4.3 DS18B20使用中的注意事项 (9)

2.4.4 DS18B20与STM32单片机的连接电路 (9)

2.5 显示模块 (10)

2.5.1 TFTLCD液晶显示简介 (10)

2.5.2 ALIENTEK 2.8液晶简介 (10)

2.6 按键模块 (11)

2.7 电源模块 (12)

2.8 风机模块 (12)

3 系统软件设计 (13)

3.1 主程序 (13)

3.2 温度采集子程序 (14)

3.4 按键子程序 (16)

4 系统调试 (17)

4.1 硬件调试 (17)

4.2 软件调试 (17)

4.3 联合调试 (17)

4.4 故障分析 (17)

5 总结与展望 (19)

5.1 总结 (19)

5.2 展望 (19)

致谢 (20)

参考文献 (21)

附录A 外文及翻译 (22)

原文 (22)

译文 (29)

附录B 系统电路图 (35)

附录C 实物图 (36)

附录D 程序清单 (37)

绪论

在人类的生活环境中,温度扮演着极其重要的角色。特别是在冶金、医药、食品制造和化学制造业等行业尤其显得重要。在适当的温度下生产的产品质量、产量和合格率会大大的提高。有些药品的生产和存储要在很低的温度下进行;石油分馏的过程中在不同的温度下才能分离出汽油、柴油、煤油、硫化物;食品的制造和存储也要在特定的温度下才能保证质量。在农业大棚蔬菜和室内圈养牲畜对于环境温度的要求也很高,大棚蔬菜的温度基本上要保证在20~30℃。鸡舍的育雏期温度要控制在36℃左右。随着社会生产力和科学技术的发展,工农业生产和生活中对于温度的要求会越来越高,因此能够检测温度变化的温度检测设备出现在人们的视线中。它能使人们能及时看到温度变化的第一手资料,提示温度变化情况,协助人们及时调整,让温度控制更好的服务于整个社会和人们的生活。

近年来随着电子信息技术的飞速发展,人类的生活发生了很大的变化,尤其是随着大规模集成电路的出现,微型计算机应运而生,让人类社会进入了一个崭新的时代。但是因为微型计算机成本较高,在很多工业控制中并不是最好的选择。所以单片机因为价格低廉、可靠性高,性能稳定以及独特的定时、计数功能而被广泛的应用在工业控制,工业生产,家用电器制造等方面,单片机的应用在不断的走向深处,在实时检测与自动控制的单片机应用系统中,单片机一般是用来做核心部件的,由具体的硬件结构与控制对象的特点,和软件相结合来加以完善[9]。

温度是表示物体冷热程度的物理量,工农业生产过程中温度是一个非常重要的参数。温度测量在产品生产,工业设计,能源节约中发挥到了关键性的作用。随着科学技术的进步和生产的需要,温度传感器不断更新和丰富起来。温度作为一个模拟量,如果采用合适的技术和元件,把模拟的温度量转化为数字量虽然说不难,但电路比较复杂,成本也太高。温度测量中测量温度是重点,本设计中单片机温度测量同样如此[11]。

温度控制系统常用来保持温度恒定或者使温度按照某种规定的程序变化。由于温度自身的一些特点,如惯性大、滞后现象严重、难以建立精确的数学模型等,传统的控制方式由于其控制精度不高、不能及时的跟踪对象特性变化等原因造成控制系统性能不佳。本设计基于这一点,选用具有高性能而又经济的STM32单片机作为控制器,所用算法为位置型PID控制算法,完成了对系统的设计[8]。本课题的设计方案具有可行性和一定的推广性,若能够应用于实际生产生活中,将会对提高企业自动化水平、降低生产成本、减轻工人劳动强度、提高生活质量等方面起到积极的促进作用。

1 系统总体设计

1.1系统功能要求

该设计主要由单片机最小系统模块,温湿度采集模块、显示模块和键盘模块,报警模块等构成,以STM32单片机作为核心处理器。

主要完成的功能有以下几点:对室内温度进行实时检测、可按照指令改变控制参数、将检测的温度显示出来。

1.2系统方案论证

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

1.3系统设计框图

功按照系统能的具体要求,在保证实现其功能的基础上,尽可能降低系统成本。总体设计方案围绕上述思想,初步确定系统的方案如图1.1所示

图1.1 功能模块框图

1.4 具体控制选择

1.4.1 控制器选择

方案一:选用STM32F103ZET6单片机

该单片机有144个引脚,为32微处理器M3内核,最大时钟频率可达到72MZhz,处理速度快,效率高。其内部有8个定时器,内个能输出4路PWM波,且有六个能能配置4个通道的捕获。同时内部还有多路AD、DA等,配置有SPI、I2C接口等,内部资源极为丰富,用该处理器为设计带来很大方便[5]。

方案二:选用STM32F103RCT6单片机

该单片机有64个引脚,跟上述的STM32ZET6功能极为相似,同样也有多路PWM、输入捕获、AD、DA,配有SPI、I2C等接口,内部资源较为丰富。但是相比STM32ZET6,该单片机体积小,引脚少。内部只有四个定时器(定时器1到定时器4),不过都具有计数、产生PWM波及输入捕获功能[5]。

方案一中STM32F103ZET6管脚太多且体积较大,虽然内部资源丰富,但是好多没用到。而STM32F103RCT6内部不仅集成了设计所需要的功能而且体积小、引脚少,同时相比STM32F103ZET6价格更便宜。所以选用STM32F103RCT6作为主控器。

1.4.2 温度传感器

方案一:数字温度传感器如DS18B20

该传感器主要特性如下:数据线供电方式是在寄生电源方式下的供电,电压适应的范围比较宽,电压范围为:3.0~5.5V;DS18B20在和单片机连接时仅仅需一条总线就可以实现DS18B20和单片机双向的通信,它的单线接口方式十分特殊,但也十分方便;多个DS18B20可以并联的在唯一的三线上,能够实现组网的多点测温功能;全部传感器元件和转换电路就像一只三极管集成在集成电路内,DS18B20在使用的时候不需要任何的外围元件;测温范围-55℃~+125℃,在-10~+85℃时精度在±0.5℃范围内;有9~12位的可编程的分辨率,相对应的可分辨温度依次为0.5℃、0.25℃、0.125℃和0.0625℃,因此可以实现高精度测温;9位分辨率时最大可在93.75毫秒内把温度转换为数字,12位分辨率时最多能在750毫秒内把模拟温度值转换为数字量,速度更快;直接把测量出的数字温度信号的结果输出,可传送CRC校验码,同时用"单总线"串行方式传递给CPU,抗干扰和纠错能力都较强;负压特性:把电源极性接反的时候,芯片不会因为发热而烧毁,但是也不能正常工作[10]。

方案二:热电阻温度传感器

热电阻的测量精度高,性能稳定,使用方便,测量范围比较宽,在高精度、低温测量中占有重要的地位。热电阻传感器主要用于中低温度(-200℃~+650℃或850℃)范围的温度测量。常用的工业标准化热电阻有铂热电阻和铜热电阻。铂电阻传感器是利用金属铂(Pt)的电阻值随温度变化而变化的物理特性而制成的温度传感器[3]。以铂电阻作为测温元件进行温度测量的关键是要能准确地测量出铂电阻传感器的电阻值。铂电阻具有适用范围广、测量范围大、稳定性高、重复性好、价格低廉、使用方便等优点,成为目前工业和实验室中温度测量应用最广泛普遍的传感元件之一,工业中应用较多的热电阻传感器如Pt100。

通过比较,虽然方案二测量温度范围比较大,但是由于它的测温原理是电阻值随着温度的改变而不断变化,因此需要设计出非常优良的温度采集电路,其中应包括测温部分,线性化部分,放大部分,A/D转换部分,这就会使外围电路复杂性大大增加。方案一数字式的温度传感器,用一根数据总线就可以和单片机进行通信,使其外围的电路大大简化,测量的精度更加准确。因此在本设计中选择方案一作为温度采集传感器。

相关主题
相关文档
最新文档