空调控制系统设计.docx
- 文档编号:25664249
- 上传时间:2023-06-11
- 格式:DOCX
- 页数:34
- 大小:299.47KB
空调控制系统设计.docx
《空调控制系统设计.docx》由会员分享,可在线阅读,更多相关《空调控制系统设计.docx(34页珍藏版)》请在冰豆网上搜索。
空调控制系统设计
摘要
由于全球气候的变暖和国内人民生活水平的提高,空调将逐渐成为人们生活中不可缺少的一部分。
随着时代的进步和发展,空调已经普及到我们生活、工作,极大地改善了人们的生活品质。
空调器微电脑控制系统的任务是通过根据房间的温度、室内热交换器温度、室外热交换器温度、压缩机的状态等来控制空调器的运行过程。
具体地说,就是控制压缩机、室外风扇、室内风扇、室内风向电机,并将设定温度和房间实际温度用LCD液晶显示屏显示出来。
主要功能是根据房间温度和设定温度的差值,并综合考虑其他条件,然后对压缩机和室内外风扇的运行状态进行智能控制。
近年来随着科技的飞速发展,单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。
在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构,以及针对具体应用对象特点的软件结合,加以完善。
本控制系统采用AT89S52单片机收集数据,处理数据来实现对温度控制系统的调控。
关键字:
空调温度控制,AT89S52,单片机,LCD液晶显
1设计目的及要求
基于单片机计算机控制课程设计是一项综合性的专业实践活动,目的是让学生将所学的基础理论和专业知识运用到具体的工程实践中,以培养学生综合运用知识能力、实际动手能力和工程实践能力,为此后的毕业设计打下良好的基础。
本次计算机控制课程设计的主要任务是设计并制作一个空调控制器。
要求是利用AT89S52单片机、ADC0809模数转换器等芯片设计并制作一个具有制冷、制热、通风和自动运行的手控型空调控制器。
2设计方案
2.1系统基本方案
空调控制系统可以划分为七大部分:
系统控制部分、室内温度采集部分、键盘控制部分、温度显示部分、压缩机控制部分、四通阈控制部分、风机控制部分.各模块电路的框图如图所示。
图1系统框图
2.2方案的论证
系统CPU根据按键输入的命令,对采集和设置的温度进行智能判断,然后作出相应的制冷、制热运行,再通过接口电路,驱动压缩机、换向阀和室内外风机作相应动作,并对温度进行显示。
方案:
采用AT89S52单片机作为控制器。
它是高性能的COMS8位单片机,片内含4kbytes的可系统编程Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚,它集Flash程序存储器即可在线编程也可以用传统方法进行编程及通用8位微处理器于单片机芯片中,ATMEL公司的功能强大,体积小、价格低廉、技术成熟等优点的AT89S52单片机可以提供许多高性价比的场合,因此广泛应用于各个领域。
基上述综合了各方面因素,最后选择了AT89S52
3系统总体方案及硬件设计
3.1系统硬件的选择及其功能特性。
3.1.1AT89S52单片机最小系统
由于空调温度控制器的核心就是单片机,单片机的选择将直接关系到控制系统的工作是否有效和协调。
本设计采用MCS-51系列的89S52单片机,因为89S52单片机应用广泛,性能稳定,抗干扰能力强,性价比高。
89S52包含了8位CPU,片内振荡器,8K字节ROM,256字节RAM,2个16位定时器,计数器,中断结构,I/O接口等。
可进行计算,定时等一系列功能。
单片机的结构有两种类型,一种是程序存储器和数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(PrINCeton)结构。
INTEL的MCS-51系列单片机采用的是哈佛结构的形式。
图2单片机最小系统图
AT89S52是一种带8K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S52是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
另外,AT89C52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
图2AT89S52引脚结构
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
当89S52通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。
初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指钟写入07H,其它专用寄存器被清“0”。
RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。
然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态。
表2-1特殊功能寄存器初始状态
特殊功能寄存器
初始态
特殊功能寄存器
初始态
ACC
00H
B
00H
PSW
00H
SP
07H
DPH
00H
TH0
00H
DPL
00H
TL0
00H
IP
00000B
TH1
00H
IE
00000B
TL1
00H
TMOD
00H
TCON
00H
SCON
xxxxxxxxB
SBUF
00H
P0-P3
1111111B
PCON
0xxxxxxxB
复位电路:
图389S52复位电路
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
振荡器特性:
XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配置为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
芯片擦除:
整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。
在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。
此外,AT89S52设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。
在闲置模式下,CPU停止工作。
但RAM,定时器,计数器,串口和中断系统仍在工作。
在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。
2.2串口输出电路
AT89S52内部有一个可编程全双工串行通信接口,它具有UART的全部功能,该接口不仅可以同时进行数据的接收和发送,也可做同步移位寄存器使用。
该串行口有4种工作方式,帧格式有8位、10位和11位,并能设置各种波特率。
2.2.1AT89S52串行口
AT89S52内部有两个独立的接收、发送缓冲器SBUF,SBUF属于特殊功能寄存器。
发送缓冲器只能写入不能读出,接收缓冲器只能读出不能写入,二者共用一个字节地址(99H)。
发送数据时,是由一条写发送缓冲器的指令(MOVSBUF,A)把数据写入串行口的发送缓冲器SBUF中,然后从TXD端一位一位地向外部发送。
同时,接收端RXD也可以一位一位地接收外部数据,当收到一个完整的数据后通知CPU,再由一条指令(MOVA,SBUF)把接收缓冲器SBUF的数据读入累加器。
2.2.2AT89S52串行的工作方式
方式0用于扩展I/O口输出和输入
方式1收发双方都是工作在方式1下,此时,串行口为波特率可调的10位通用异步接口UART,发送或接收一帧信息,包括1位起始位0,8位数据位和1位停止位1。
方式2串行口为11位UART,传送波特率与SMOD有关。
发送或接收一帧数据包括1位起始位0,8位数据位,1位可编程位(用于奇偶校验)和1位停止位1。
方式3为波特率可变的11位UART通信方式,除了波特率以外,方式3和方式2完全相同。
2.2.3AT89S52串行口的波特率
在串行通信中,收发双方对传送的数据速率即波特率要有一定的约定。
通过上一小节的论述,我们已经知道,AT89S52单片机的串行口通过编程可以有4种工作方式。
其中方式0和方式2的波特率是固定的,方式1和方式3的波特率可变,由定时器T1的溢出率决定,下表列出了各种常用的波特率及获得办法。
路若采用11.059MHz的晶振,分析TMOD的设置,可知实训8中串行通信的波特率应为2400。
表2-2定时器T1产生的常用波特率
波特率
FOSC
SMOD
C
模式
初始值
方式0:
1MHz
12MHz
12MHz
12
MH
×
×
×
×
×
×
方式2:
375K
12MHz
11.059
Z
12
z
12
2
2
FFH
FDH
方式1、3:
62.5K
19.2K
9.6K
4.8K
2.4K
1.2K
137.5K
MHz
11.059MHz
11.059MHz
11.059MHz
11.059MHz
11.986MHz
6MHz
12
MHz
1
1
0
0
0
0
0
0
0
0
0
0
0
0
2
2
2
2
2
2
1
FDH
FAH
F4H
E8H
1DH
72H
FEEBH
2.24单片机串口通信电路
这是进行全双工通信所必须的最少线路。
因为MCS-51单片机输入、输出电平为TTL电平,而PC机配置的是RS-232C标准接口,二者的电气规范不同,所以要加电平转换电路。
常用的有MC1488、MC1489和MAX232。
MAX232是串行通信时的电平转换芯片。
由于单片机的串行口的电平信号为单极型码,而MAX232串行通信的信号码型为双极型的所以得在他们的连线之间追加MAX232,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠。
我采用了三线制连接串口,也就是说和电脑的9针串口只连接其中的3根线:
第5脚的GND、第2脚的RXD、第3脚的TXD。
这是最简单的连接方法,但是对我们来说已经足够使用了,电路如2-7所示,MAX232的第10脚和单片机的11脚连接,第9脚和单片机的10脚连接,第15脚和单片机的20脚连接。
图4单片机串口通信电路
3.2温度传感器DS18B20
2.2.1DS18B20概述
DS18B20数字温度计提供9-12位摄氏温度测量而且有一个高低电平触发的可编程的不因电源消失而改变的报警功能。
DS18B20通过一个单线接口发送或接受信息,因此在中央处理器和DS18B20之间仅需一条连接线。
它的测温范围为-55~+125℃,精度为±5℃。
除此之外,DS18B20能直接从单线通讯上级去能量,出去对外部电源的要求。
每个DS18B20都有个独特的64位序列号,从而允许多只DS18B20同时连载一根单总线上;因此,很简单就可以用一个为微处理器去控制很多覆盖在一大片区域的DS18B20。
这一特性在很多控制方面非常有用。
表2.4详细说明其引脚功能。
3.2.1温度感测
温度的采集主要基于单线数字温度传感器DS18B20芯片。
Dallas半导体公司的单线数字温度传感器DS18B20是世界上第一片支持“一线总线”接口的温度传感器。
一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。
DS18B20支持“一线总线”接口,测量温度范围为-55°C~+125°C,在-10~+85°C范围内,精度为±0.5°C。
现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性,适合于恶劣环境的现场温度测量,支持3V~5.5V的电压范围,DS18B20可以程序设定9~12位的分辨率,精度为±0.5°C。
数字单总线温度传感器是目前最新的测温器件,它集温度测量,A/D转换于一体,具有单总线结构,数字量输出,直接与微机接口等优点。
既可用它组成单路温度测量装置,也可用它组成多路温度测量装置,文章介绍的单路温度测量装置已研制成产品,产品经测试在-10℃~70℃间测得误差为0.25℃,80℃≤T≤105℃时误差为0.5℃,当T>105℃误差为增大到1℃左右。
温度数据的无线传输主要是基于低功耗射频传输单元NRF905芯片。
工作电压为1.9~3.6V,32引脚QFN封装(5×5mm),工作于433/868/915MHz三个ISM(工业、科学和医学)频道,频道之间的转换时间小于650us。
nRF905由频率合成器、接收解调器、功率放大器、晶体振荡器和调制器组成,不需外加声表滤波器,ShockBurstTM工作模式,自动处理字头和CRC(循环冗余码校验),使用SPI接口与微控制器通信,配置非常方便。
此外,其功耗非常低,以-10dBm的输出功率发射时电流只有11mA,工作于接收模式时的电流为12.5mA,内建空闲模式与关机模式,易于实现节能。
nRF905片内集成了电源管理、晶体振荡器、低噪声放大器、频率合成器功率放大器等模块。
经过无线传输后,温度数据信息将在1602液晶显示芯片上进行显示,1602液晶显示芯片采用标准14脚接口,其中VSS为地电源,VDD接5V正电源,V0为对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K电位器调整对比度。
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
RW为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。
E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
D0D7为8位双向数据线。
本系统的温度采集与显示,无线的传输与对比均由单片机89S52来控制完成。
相比较而言ATMEL公司的89S52更实用,因他不但和89C51指令、管脚完全兼容,而且其片内的8K程序存储器是FLASH工艺的,这种工艺的存储器用户可以用电的方式瞬间擦除、改写,一般专为ATMELAT89xx做的编程器均带有这些功能。
显而易见,这种单片机对开发设备的要求很低,开发时间也大大缩短。
写入单片机内的程序还可以进行加密,这又很好地保护了我们的劳动成果。
首先,打开电源后,本系统由单片机89S52向单线数字温度传感器DS18B20芯片发出指令进行测温,DS18B20内部结构主要由四部分组成:
64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。
图4器件封装图
DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
DS18B20高速暂存器共9个存储单元,如表2-1所示:
表2-3DS18B20高速暂存器共存储单元
序号
寄存器名称
作用
序号
寄存器名称
0
温度低字节
以16位补码形式存放
4、5
保留字节1、2
1
温度高字节
同上
6
计数器余值
2
TH/用户字节1
存放温度上限
7
计数器/℃
3
HL/用户字节2
存放温度下限
8
CRC
光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。
64位光刻ROM的排列是:
开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。
DS18B20中的温度传感器可完成对温度的测量,以12位转化为例
用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。
12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。
表2-4十六位符号扩展二进制补码
高8位
S
S
S
S
S
26
25
24
低8位
23
22
21
20
2-1
2-2
2-3
2-4
DS18B20温度传感器的存储器:
DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2RAM,后者存放高温度和低温度触发器TH、TL和结构寄存器。
暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位,第二个字节是温度的高八位。
第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。
第六、七、八个字节用于内部计算。
第九个字节是冗余检验字节。
低五位一直都是1,TM是测试模式位,用于设置DS18B20在工作模式还是在测试模式。
在DS18B20出厂时该位被设置为0。
R1和R0用来设置分辨率,如表2-3所示:
(DS18B20出厂时被设置为12位)
表2-5分辨率设置表
R1
R0
分辨率
温度最大转换时间
0
0
9位
96.75ms
0
1
10位
187.5ms
1
0
11位
375ms
1
1
12位
750ms
根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:
每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。
复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待16~60微秒左右,后发出60~240微秒的存在低脉冲,主CPU收到此信号表示复位成功。
在硬件上,DS18B20与单片机的连接有两种方法,一种是Vcc接外部电源,GND接地,I/O与单片机的I/O线相连;另一种是用寄生电源供电,此时UDD、GND接地,I/O接单片机I/O。
无论是内部寄生电源还是外部供电,I/O口线要接5KΩ左右的上拉电阻。
2.3.2参数控制说明
工作电压:
直流3~5.5V;
工作电流:
小于133μA
输出电压:
+6V~-1.0V
输出阻抗:
1mA负载时0.1Ω;
精度:
0.5℃精度(在+25℃时);
漏泄电流:
小于60μA;
比例因数:
线性+10.0mV/℃;
非线性值:
±1/4℃;
校准方式:
直接用摄氏温度校准;
封装:
密封TO-46晶体管封装或塑料TO-92晶体管封装;
使用温度范围:
-55~+150℃额定范围。
引脚介绍:
①正电源Vcc;②输出;③输出地/电源地。
2.4LCD液晶显示
2.4.1显示特性
(1)STN正视反射模式;
(2)显示颜色:
绿底兰字;
(3)显示角度:
6点钟直视;
(4)驱动方式:
1/32Duty,1/6Bias
2.4.2机械特性
(1)外观尺寸:
见外观图;
(2)电阵:
122×32点;
(3)点尺寸:
0.36(W)×0.41(H)(MM);
(4)点间距:
0.40(W)×0.45(H)(MM)
2.4.3.引脚特性
表2-6引脚说明
管脚号
管脚名称
LEVER
管脚功能描述
1
VSS
0V
电源地
2
VDD
+5V
电源电压
3
VLCD
0∽+5VOR
0∽-5V
LCD外接驱动负电压
当VDD=+3V时,VLCD接0∽-5V负电压
4
A0
H/L
D/I=“H”,表示DB7~DB0为显示数据
D/I=“L”,表示DB7~DB0为显示指令数据
5
E1
H/L
读写使能信号
6
E2
H/L
读写使能信号
7
R/W
H/L
读写选择信号
8
DB0
H/L
数据线
9
DB1
H/L
数据线
10
DB2
H/L
数据线
11
DB3
H/L
数据线
12
DB4
H/L
数据线
13
DB5
H/L
数据线
14
DB6
H/L
数据线
15
DB7
H/L
数据线
16
RES
H/L
复位信号(低电平有效)
17
VLED+
--
LED(+5V)或EL背光源
18
VLED-
--
LED(0V)或EL背光源
LCD原理图
2.5遥控电路
2.5.1编码解码原理
PT2262/2272是一种基于CMOS工艺制造的低功耗低价位通用编解码电路,PT2262/2272最多可有12位(A0-A11)三态地址端管
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 空调 控制系统 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)