基于单片机的模拟空调控制系统学士学位论文.docx
- 文档编号:6820460
- 上传时间:2023-01-10
- 格式:DOCX
- 页数:68
- 大小:864.82KB
基于单片机的模拟空调控制系统学士学位论文.docx
《基于单片机的模拟空调控制系统学士学位论文.docx》由会员分享,可在线阅读,更多相关《基于单片机的模拟空调控制系统学士学位论文.docx(68页珍藏版)》请在冰豆网上搜索。
基于单片机的模拟空调控制系统学士学位论文
淮北师范大学
学士学位论文
基于单片机的模拟空调控制系统
学院、专业物理与电子信息学院
电子信息工程
研究方向单板微型计算机
基于单片机的空调模拟控制系统
淮北师范大学物理与电子信息学院235000
摘要本文设计了一种以STC89C52为核心的空调控制系统,并详细分析了其在硬件和软件上的实现过程。
本系统硬件电路大致上可以分成控制模块、电机模块、键盘模块、电源模块、温度模块和显示模块。
控制模块选用STC89C52芯片并采用24MHz晶振获得稳定的频率,可以用来准确地控制整体电路以及存储和计算数据。
按键模块完成空调的工作方式、风速、温度等状态信息的设定。
电源模块采用12V锂电池经过7805转换成5V电压向单片机及电机供电,并且用L298N驱动电机使电机速度达到可控。
温度模块则是用DS18B20实时采集温度并传输到液晶上显示。
显示模块采用无字库LCD12864液晶,实时显示温度数据及空调状态信息。
系统软件程序采用C语言编写,占用资源少、程序执行效率高,有利于实现较复杂的算法和程序结构化设计。
经测试,本系统满足设计要求,可以实现控制系统的基本功能。
关键词空调;单片机;温度;控制系统
BaseOnSingle-ChipComputerAirConditionerSimulation
ControlSystem
JiHongYuan
SchoolofPhysicsandElectronicInformation,HuaibeiNormalUniversity,235000
Abstract:
Adesignofacontrolsystemofair-conditionwhichusedSTC89C52asthecoreisdescribedinthispaper.Adetailedanalysisofthedesignprocessinbothhardwareandsoftwareisalsomentioned.Thehardwarecircuitofthissystemcanberoughlyseparateintocontrolmodule,motormodule,keyboardmodule,powermodule,temperaturemoduleanddisplaymodule.Inthecontrolmodule,whichcancontrolthewholeelectriccircuitaccurate,aSTC89C52chipused24MHzcrystaloscillatortogetthestablefrequencyisused.Italsocansaveandcalculatedata.Thekeyboardmodulesetthestateinformationsuchasworkingmode,windspeed,temperatureandetc.Inthepowermodule,a12Vlithiumbatteryconvertedto5Vthrough7805isused,whichsupplythepowerusedinsingle-chipcomputerandmotor.AL298Ndrivemotorisalsousedtocontrolthemotorspeed.Intemperaturemodule,DS18B20whichrecordtemperatureandsendtoLCDisused.Inthedisplaymodule,aLCD12864withoutfontisusedtodisplaythetemperaturedataandthestateinformationofACinreal-time.TheClanguageisusedtoprogramthesystemsoftware.Itispropitioustoprogramthecomplicatedalgorithmandstructuredesignofsoftwareduetothesmallresourceusingandeffectiveness.Bytesting,thesystemsatisfiedthedesignrequirementandachievethebasicfunctionofcontrolsystem.
Keywords:
Air-Condition;Single-chipcomputer;Temperature;Controlsystem
目录
1绪论1
1.1空调的发展1
1.2单片机特点及其应用开发过程2
1.3设计任务3
2系统硬件设计4
2.1设计方案4
2.2控制模块4
2.3显示模块7
2.4键盘模块9
2.5测温模块9
2.6电机模块10
2.7电源模块11
2.8整体电路图12
3系统软件设计13
3.1C语言程序的设计方法13
3.2系统软件的设计13
4调试及性能分析19
4.1仿真软件及编译软件简介19
4.2调试过程中出现的问题及解决办法19
4.3调试结果20
结论24
参考文献25
致谢26
1绪论
1.1空调的发展
空调即空气调节器(roomairconditioner),它是一种对空间区域里的空气(一般为封闭)进行处理,使空气温度产生变化的机组。
空调可以对封闭空间或区域内空气的温度、湿度、洁净度和空气流速等参数进行调节,从而满足人体舒适度的要求。
公元前1000年左右波斯利用装置于屋顶的风杆,让外面的自然风穿过凉水并吹入室内另室内感到凉快,这是世界上最早的空气调节系统[1]。
1555年Agricola的著作介绍了煤矿中的通风系统(用人工鼓动的风箱)。
1842年,美国佛罗里达州的医生约翰.哥里(JohnGorrie)采用刚发明的机制冰在阿帕拉契科拉医院进行气温调节。
1851年苏格拉天文学家C.P.Smyth在爱丁堡皇家学会上提出,打算采用空气制冷机来冷却热带房间的想法。
1860年FredinandCarre在巴黎科学院发表了一篇报告他在预言制冷机的多种用途中把剧场、舞厅、别墅的冷却作为主攻目标。
1870年西班牙工程师JoseVallhonesta设计一种装置可以将从阴凉处得到的外界空气,加湿或经过一冰式空冷器后引入房间。
1874年美国AndrewMuhl获得一栋大楼的冷却专利。
1884年Baltimore--Ohio公司在美国进行初步的尝试,用冰来进行铁路客车舒适空调的设计。
1890年左右,空调获得了初步成就,有了工业空调,也有了为人们福利的舒适空调。
1903年巴黎海关获得了一项专利并在埃及铁路线上运行的国际铁路公司的餐车上安装了一台可以容乃500公斤冰的设备。
美国的WillisCarrier是对空调发展做出重大贡献的世界名人,1904年他设计的带水喷淋空气洗涤室的集中式空调站。
1911年他确定了对空调装置进行合理计算的曲线图。
从1930年起用于房间空调的单个空调器已经实现商品化。
1937年起美国实现了汽车空调的配备。
但是直到1945年后才实现了将空调系统装配到私人汽车上。
1945年以后空调处于高速发展的阶段,随着人们对舒适生活的追求,空调系统出现在各种各样的场合中,种类也越来越多,如:
挂壁式空调、立柜式空调、窗式空调、吊顶式空调以及中央空调。
空调的制冷剂最初用冰,然后采用氟利昂、二氧化硫或氯化甲烷。
由于氟利昂对地球臭氧层的破坏,现代又出现了无氟的空调系统用R410A来代替原有的氟利昂制冷剂。
1.2单片机特点及其发展前景
1.2.1 单片机的特点
单片机是在一块硅片上集成了微处理存储器及各种输入/输出接口的芯片,这样一块芯片就具有了计算机的属性,因而被称为单片微型计算机,又称单片机(SingleChipMicrocomputer),尽管单片机的大部分功能都集成在一块小芯片上,但是他具有一台完整计算机所需要的大部分器件[2]。
单片机是一种可以通过程序进行控制的微型处理芯片,由于单片机芯片自身不能单独的运用在某项工程或产品上,因此在使用的时候需要加上一些外围器件,比如晶体振荡器,复位电路,从而构成较为完整的硬件系统。
如果要实现其他的功能,还要加上相应的外围电路来实现。
由于单片机具有可集成度高、体积小、可靠性高、可扩展性好、超强抗干扰、高速、低功耗和性价比高的特点。
因此它主要面向工作环境比较恶劣,如高温、强电磁干扰等。
通过以上单片机的特点决定了单片机CPU与通用微机CPU具有不同的技术特征和发展方向。
目前其应用领域已非常广泛如:
(1)工业自动化。
如数据采集、测控技术。
(2)智能仪器仪表。
如数字示波器、数字万用表、感应电流表等。
(3)消费类电子产品。
如洗衣电冰箱、空调、IC卡、汽车电子设备、电视机等。
(4)通信方面。
如调制解调器、程控交换技术、手机等。
(5)武器装备。
如飞机、舰艇、坦克、导弹、航天飞机、鱼雷制导、智能武器、卫星等。
1.2.2 单片机的发展前景
现如今单片机正朝着多功能化、多选择性、高速度、低功耗、低价格、大存储容量和增强I/O功能及结构兼容方向发展[3]。
其发展趋势不外乎以下方面:
(1)体积小、集成度高
单片机、CPU、I/O接口等功能集成在一块芯片上,体积小,节省空间。
能灵活方便的应用在各种智能化的控制设备和仪器上,实现机电一体化。
单片机是面向控制的,存储器很多的控制场合一般并不需要它去完成一些复杂的数学计算。
因此单片机在生产工艺上进行了简化,降低了制造成本。
同时单片机都是大批量生产,进一步降低了产品的成本。
(2)多功能
单片机中尽可能多地把应用所需的存储器都集成在一块芯片内、其CPU可以对I/O口直接进行操作,可以进行位操作、分支转移操作,还能方便的实现多级控制,是整个系统的效率大大的提高。
(3)高性能
为了提高单片机的速度和执行效率,其中使用了RISC、流水线、DSP等的设计技术,使其性能明显优于同类型的微处理器。
(4)低功耗
由于单片机需要面向便携式和家电消费产品,因此低电压、低功耗的性质是非常重要的,很多单片机的电压只有2~4V,所以为以上产品提供了许多便利。
许多单片机可在2.2V电压下正常运行,有的也能在1.2V或0.9V电压下正常工作。
功耗为均为uA级,由一粒纽扣电池供电下可长期运行。
(5)抗干扰能力强
单片机把各种功能部件集成在一块芯片上,采用总线结构,减少各芯片之间的连线,从而大大提高了单片机的可靠性与抗干扰能力,适合在恶劣环境下工作。
单片机的适应温度范围广,能够在-50—100℃范围内正常工作,这种温度对一般的微型计算机来说是不可想象的。
如今单片机的应用范围十分广泛,已成为工业测控各个领域中理想的控制用计算机,成为计算机领域的一个重要分支[3]。
在许多过去采用模拟电路、脉冲电路、组合逻辑实现的部分控制电路系统,现在可用各种单片机予以取代。
单片机、编程和传统模拟技术的相结合,构成了新一代的电子应用技术。
可以说,单片机将向着“更高、更快、更强”的方向发展。
1.3设计任务
本系统要求能实时显示当前温度,当前空调所处状态,设定温度,可以用按键调节设定温度,制热制冷状态,强弱风的选择。
系统开始工作后电机开始转动。
(1)开机后液晶上显示“毕业设计:
空调控制系统纪宏源”。
(2)从独立按键上先按下休眠键进入设定状态。
(3)选择工作模式、风量以及设定温度。
(4)按下休眠键系统开始工作。
2系统硬件设计
2.1设计方案
由于要显示静态和动态图形以及数字所以本设计采用无字库的LCD12864液晶作为显示部分,无字库的液晶12864可以随意的显示自己想要显示的图形及数字灵活性大,因此在本实验采用LCD12864。
由本设计的要求和需要,在系统的具体实现时可划分为几个子模块:
控制模块(单片机系统及外围电路)、显示模块(LCD12864)、电源模块、键盘模块、驱动模块。
各功能模块相互独立,可扩充性强,具有再次开发的潜力。
本设计满足系统功能的要求,并且减少了系统实现的复杂度。
各模块之间的关系如图1所示。
图1硬件系统的总体设计框架
2.2控制模块
2.2.1单片机简介
单片机是一种采用超大规模集成电路技术把中央处理器CPU以及一些相关的功能器件集成在一起的硅材料的集成电路芯片,虽然体积很小,但是一个完善的计算机系统本次设计用的是STC89C52型的单片机。
STC89C52是一种带8K在系统可编程FLASH存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器[4]。
STC89C52在经典的51内核上做了许多改进,使其具备了许多51单片机以前所不具备的功能。
该芯片使用低电压,高性能的COMOS8微处理器,并且芯片自带8K字节的闪烁可编程可擦除只读存储器(FPEROM-FlashProgramableandErasableReadOnlyMemory)。
STC89C52管脚说明如图2所示:
图2STC89C52管脚图
VCC(40引脚):
单片机电源电压,接+5V电压。
GND(20引脚):
接地。
XTAL1(19引脚):
反向振荡放大器的输入及内部时钟工作电路的输入。
接外部晶体的一端。
XTAL2(18引脚):
来自反向振荡器的输出。
接外部晶体的另一端。
在单片机内部,它是反相放大器的输出端。
RST(9引脚):
RST引脚是单片机的复位/备用电源输入端,高电平有效,有效时间应至少持续24个震荡周期即2个机器周期才能使单片机进行复位。
ALE(30引脚):
低8位地址锁存使能输出端。
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
当CPU访问外部存储器时ALE可向低8位地址锁存器输出锁存控制信号;当CPU不访问外部存储器时,ALE端以时钟振荡频率的六分之一固定输出正脉冲。
另外,该引脚被略微拉高。
如果此时置位无效则微处理器在外部执行状态下ALE被禁止。
(29引脚):
该引脚为外部程序存储器选通信号引脚,当CPU在访问外部程序存储器时,每个机器周期中
信号两次有效。
当访问外部数据存储器时,这两次有效的
信号则不会出现。
(31引脚):
外部程序存储器地址允许使能端。
P0口(39引脚~32引脚):
P0口是一个漏级开路的8位准双向复用I/O端口,每脚可吸收8TTL门电流。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。
P1口(1引脚~8引脚):
P1口是一个内部带上拉电阻的8位准双向I/O端口,P1口缓冲器能接收输出4TTL门电流。
在FLASH编程和校验时,P1口作为低八位地址接收。
P2口(28引脚~21引脚):
P2口为一个内部带上拉电阻的8位准双向复用I/O端口,P2口缓冲器可接收,输出4个TTL门电流。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口(10引脚~17引脚):
P3口是一个带内部上拉电阻的8位多功能双向I/O端口,可接收输出4个TTL门电流。
P3口除了作为通用I/O口使用外,其主要的功能是它的第二功能,P3口的每一条引脚均可独立定义为第一功能的输入或输出或第二功能。
P3口第二功能如下:
端口
第二功能
P3.0
RXD(串行输入口)
P3.1
TXD(串行输出口)
P3.2
(外部中断0)
P3.3
(外部中断1)
P3.4
T0(记时器0外部输入)
P3.5
T1(记时器1外部输入)
P3.6
(外部数据存储器写选通)
P3.7
(外部数据存储器读选通)
2.2.2单片机外围电路
如图3所示,复位是单片机的初始化操作。
复位电路有两种复位操作形式:
上电自动复位和按键手动复位。
而按键手动复位有电平方式和脉冲方式[5]。
本次试验使用的是按键手动复位。
复位电路的基本功能是:
由图3可以看到复位电路的连接方式。
复位电路的主要功能是把PC初始化为0000H,在单片机开始执行程序时使单片机从0000H单元开始执行。
假如单片机不能正常的进入系统执行初始化,此时可能是程序运行出错或者因为操作错误至使系统处于死锁状态,此时为摆脱困境,需要使用按键进行手动复位重新启动系统。
为消除电源开关或者电源插头在分-合过程中引起的抖动现象,电源稳定后要经过一定的延时时间后才能撤销复位信号。
晶振在电路中的作用主要是提供频率稳定的时钟信号,晶振有不同的赫兹如:
11.0592MHz、12MHz和24MHz,图3启振电路中C2=C3=30pF,晶振X1的振荡频率为24MHz,复位电路中C1=10uF,R6=R7=10k。
图3单片机外围电路
2.3显示模块
LCD12864是128×64个点阵的图形液晶显示模块[6]。
该显示模块分为两种一种是带字库的一种是不带字库的,并且有串行口连接和并行口连接两种方式,在用串口方式连接时可以节省单片机的端口资源,但是传输速率较慢。
并行口方式所占用的接口资源多但是传输速率较快。
由于此次设计中单片机的接口剩余较多且要实时刷新DS18B20所以采用并行口连接方式。
实验中使用的是无字库型液晶,它可以显示在一定精度范围内的任意字体的汉字或者静态、动态图片以及数字等。
LCD12864管脚及其与单片机连接方式如图4所示,管脚功能[7]如表5所示:
表5LCD12864管脚功能
名称
参数
说明
VDD
+5V
模块电源+5VDC
VSS
GND0V
模块电源地
V0
0V~-10V
外部液晶偏置电压(负压)输入端
DB0
H/L
数据线0(H表示高电平,L表示低电平)
DB1
H/L
数据线1
DB2
H/L
数据线2
DB3
H/L
数据线3
DB4
H/L
数据线4
DB5
H/L
数据线5
DB6
H/L
数据线6
DB7
H/L
数据线7
H/L
左半屏使能(低电平有效)
H/L
右半屏使能(低电平有效)
RST
H/L
LCM复位(低电平有效)
RW
H/L
H:
LCM读数据L:
LCM写数据
RS
H/L
H:
数据L:
指令
E
H/L
LCM使能
Vout
+5V
LED背光电源+5VDC
单片机P2.0~P2.4分别连接到LCD的E、RW、RS、
、
端口,液晶的数据口与单片机P0口依次相连,使得单片机处理出来的数据传输到液晶显示。
图4LCD12864与单片机连接图
2.4键盘模块
键盘可以分为矩阵键盘和简单键盘[7],首先矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些。
其次实验中所用按键个数不是很多,所以可以使用简单键盘。
当按键没有按下时,所有的输入端都是高电平,代表无键按下。
一旦有键按下,则输入端电平就会被拉低,所以,通过读取输入端的电平就可得知是否有键按下了。
实验中,P1.0口用来控制休眠按键,当按键按下后,进入设定模式。
P1.1口在进入设定状态后用来增加设定温度。
P1.2口则是用来减少温度。
P1.3口用来调节风量的大小,风量分为三个等级:
强、中、弱风。
当第一次按下按键,此时为弱风,两次为中风,三次为强风,当按到第四次时又为弱风,以此方式进行循环。
P1.4口是空调制冷、制热模式的选择,和风量选择一样可以进行循环操作。
图5键盘各口与单片机引脚连接图
如图5所示,键盘与单片机P1各口相连,从而使键盘所接收到的信息以高低电平的形式传入单片机内部处理。
2.5测温模块
DS18B20单线数字温度传感器是Dallas半导体公司生产的世界上第一片支持“一线总线”接口的温度传感器。
它的温度检测与传输全集成于一个芯片上,从而抗干扰能力强,其一个工作周期分为两个部分,即温度检测和数据处理。
该芯片具有体积小、硬件开消小、抗干扰能力强、精度高、附加功能强著称,是当今温度传感器中的主流。
DS18B20的管脚和它的主要特征有[8]:
(1)、VDD电源电压
(2)、GND电压地
(3)、DQ单数据总线
(4)、全数字温度转换及输出、
(5)、最高12位分辨率精度可达±0.5℃
(6)、先进的总线数据通信
(7)、12位分辨率时最大的工作周期是750ms
(8)、可选择寄生工作方式
(9)、检测温度范围为-55℃~+125℃(-67F~+257F)
(10)、内置EEPROM,限温报警功能
(11)、64位光刻ROM,内置产品序列号,方便多机挂接
(12)、多样封装形式适应不同硬件系统。
图6键盘各口与单片机引脚连接图
如图6所示,DS18B20与单片机P2.4口相连。
2.6电机模块
L298N是SGS公司的产品,内部包含四通道逻辑驱动电路是一种两相和四相电机的专用驱动器,其内含两个H桥的高电压大电流双全桥式驱动器,接受标准TTL逻辑电平信号[9]。
L298N具有15个引脚具体功能如下:
●VCC:
电源电压
●GND:
接地引脚
●IN1~IN4:
连接单片机的相应接口,通过单片机输送控制电位便可控制电机的正反转。
●OUT1~OUT4:
用来连接两个电机,该驱动电路既可以负载直流电机同时也可以负载步进电机。
●SenseA和SenseB:
该端口是电流监测端,它们分别为两个H桥的电流反馈脚,不用时可以直接接地。
●ENA和ENB:
TTL电平兼容输入使能端,低电平禁止输出。
如图7所示,直流电机分别接在OUT1和OUT2端口。
图7L298N模块引脚连接图
2.7电源模块
用7805组成的稳压电源模块所需的外围元件极少,电路内部还有过流、过热和调整管的保护电路,最大输出电流为1.5A,具有短路保护功能[10],使用起来可靠、方便而且性价比高。
本系统使用的是12V锂电池经过7805转换成+5V电压,从而解决了因为电机的负载过大,接口供电不足的情况。
7805电源模块的接线图如图8所示。
J1和J2为扩展出的5V输出。
图87805电源模块引脚连接图
2.8整体电路图
图9模拟空调控制系统整体电路图
3系统软件设计
自从1946年世界上出现了第一台电子计算机以来,计算机改变了世界,改变了人类的生活。
但是计算机不是天生“自动”工作的,它是由程序控制的。
由此便产生了计算机语言,让我们来告诉计算机要做什么。
计算机语言包括:
机器语言、汇编语言以及“高级语言”,机器语言和汇编语言都依赖于具体机器,所以被称为“低级语言”。
用低级语言编写程序很不直观,繁琐枯燥,工作量大,无通用性。
所以20世纪50年代出现了用于程序设计的“高级语言”。
高级语言直观易学,易理解,易修改,易维护,易推广,通用性强。
现在应用比较广泛的有100多种,影响最大的有:
FORTRAN和ALGOL、BASIC和QBASIC、CO
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 模拟 空调 控制系统 学士学位 论文
![提示](https://static.bdocx.com/images/bang_tan.gif)