当前位置:文档之家› 汽车空调系统设计

汽车空调系统设计

电子与信息工程学院射频实验室 实训报告 实训报告

实训项目名称 汽车空调控制系统 所属课程名称 实训 实 训 日 期 2015年1月5日~1月16日 专 业 电子信息工程

班 级 电信12-1班 学 号 姓 名 成 绩

工程实训 电子与信息工程学院射频实验室 实践概述: 电子与信息工程学院射频实验室 实训报告 【实践目的及要求】 (1)学习怎样使用keil4以及AltiumDesignerSummer9软件; (2)学习设计汽车空调系统; (3)在设计过程中,完成如何利用软件实现仿真; (4)基于AT89C52控制3相6拍步进电动机,压缩机,4X4键盘,LCD显示,DS18B20温度传感器,风机调速模块、鼓风机来实现汽车空调智能控制

【实践原理】

汽车空调系统是应用于汽车上的普遍的一个系统,而本次实训的目的就是实现汽车空调系统的基本功能,由于条件有限本次实训只是做出了一个基本的模型,他的基本原理是基于AT89C52芯片控制4X4按键、控制步进电机和鼓风机的制冷制热过程,读取安装在车内、车外和蒸发器上的三个DS18B20温度传感器的实时感应三点温度,传到LCD显示车内外温度。通过LCD显示的菜单内容来进行“制冷”、“制热”以及“自动调节”和“返回”来自己或者自动控制汽车室内温度。 (一)、AT89C52的基本功能和参数指标 AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。具体见图1。 电子与信息工程学院射频实验室 实训报告 图1 AT89C52单片机 汽车空调系统的主要模块有4X4键盘、LCD显示、DS18B20温度传感、3相6拍步进电机、压缩机以及风机调速模块控制下的鼓风机等,下面介绍上述各模块。 1.4X4键盘 4X4键盘的“5”“6”“7”“8”分别控制“制冷”“制热”“自动”“返回”。“1”对应“目标温度”即自己想要达到的温度。“2”和“3”则是对应目标温度的加减。具体见图2 电子与信息工程学院射频实验室 实训报告 图2 4X4键盘模块 2.LCD显示 车内、车外和蒸发器上的三个DS18B20温度传感器的实时感应温度通过芯片显示在LCD上,还有我们根据实时温度需要做出一系列的操作,我们的操作指令也会显示在LCD上。由于ADS库没有LCD显示的器件,所以在这里我用LED的显示来代替。具体见图3。

图3 LCD显示模块 电子与信息工程学院射频实验室 实训报告

3.DS18B20温度传感器 我们要根据车内的温度来判读是否达到我们究竟是要‚制冷‛还是‚制热‛,就需要有数据。我们在车内、车外和蒸发器上各有DS18B20温度传感器。收集实时温度数据。具体见图4。

图4 DS18B20温度传感器模块 4.3相6拍步进电动机 步进电动机主要是控制风门的开关,按照一定频率来进行风量的控制。具体见图5。 电子与信息工程学院射频实验室 实训报告 图5 3相6拍步进电机模块 5.压缩机 给高低电平控制压缩机工作与否,压缩机开启进行制冷模式,关闭进行制热模式。具体见图6。 电子与信息工程学院射频实验室 实训报告 图6 压缩机模块 6.风机调速模块、鼓风机。具体见图7。 电子与信息工程学院射频实验室 实训报告 图7 风机调速模块、鼓风机模块 电子与信息工程学院射频实验室 实训报告

实验设备: 实验硬件:(1)仿真器1台。 (2)+5V的直流稳压电源1台。 (3)PC机1台。 实验软件:AltiumDesignerSummer9,Keil uVision4。 实践内容: 【实践过程】(实践步骤、记录、数据、分析) 实验步骤: 1.设计汽车空调系统示意图 如图8所示:

AT89C51 4X4键盘

车内温度 DS18B20 车外温度

DS18B20 蒸发器温度

DS18B20

LED显示 电子与信息工程学院射频实验室 实训报告 图8:示意图 驱动电路 3相6拍步 进电动机

风门执

行机构

DC-SSR 压缩机电 磁离合器

风机调 速模块 鼓风机 电子与信息工程学院射频实验室 实训报告 2.汽车空调控制系统主程序流程图 如图9所示:

N Y

开始 初始化 调用读取温度子程序 温度传感器 都被检测到? 都

调用温度处理、温度显示子程序,一次显示各传感器检测的温度值 电子与信息工程学院射频实验室 实训报告 N Y N

Y N

Y N

Y

调用读取温度、温度处理、温度显示子程序,显示车内温度

制冷标志为0? 制冷标志为0? 制冷标志为0?

制冷标志为0?

调用制冷子程序 调用制热子程序 调用自动子程序 调用返回子程序 电子与信息工程学院射频实验室 实训报告 图9:流程图

(二)、实验的具体操作: 1.程序调试:打开Keil uVision4软件里的汽车空调主程序,编译,看程序是否有误。如图10所示。 电子与信息工程学院射频实验室 实训报告 图10程序调试 2.连接器件,如图11所示。

图11器件连接 3.打开烧录软件,将写好的程序下载到电路板当中。如图12所示 电子与信息工程学院射频实验室 实训报告 图12 烧录软件 4.上电。显示空调系统的初始菜单。如图13所示。 电子与信息工程学院射频实验室 实训报告 图13 初始菜单 5.点击按钮,让空调温度达到自己的所设定的界限温度。如图14所示。

图14 设置温度 电子与信息工程学院射频实验室 实训报告 6.此程序也可以手动调节制冷和制热,点击之前程序的“制冷”选项,鼓风机、压缩机转动,LCD显示目标温度以及当前温度。如图15所示。

图15制冷模式 7.点击“制热”按钮,压缩机停止工作,鼓风机转动加热。如图16所示。 电子与信息工程学院射频实验室 实训报告 图16制热过程 8.当人们不想自己手动控制温度,可以选择”自动”选项,LCD将会显示实时的温度,当温度达到我们设定的温度范围界限时,将会自动制冷或者制热。如17图所示。 电子与信息工程学院射频实验室 实训报告 图17 自动控制 结果分析: 当汽车空调系统开始工作,LCD显示预设主菜单:1,TD (Temp Down 制冷模式) 2,TU(Temp Up 制热模式)3,am(auto matic 自动模式)4,fh(返回菜单)。当选择制冷模式时,步进电机开始工作,打开风门,直流电机工作,继电器闭合,LCD显示工作后的温度,直到返回停止制冷;当选择制热模式时,步进电机工作打开风门,直流电机工作,继电器打开,LCD显示工作模式后的实时温度,返回时停止制热;当选择自动模式时,若温度过低,则自动进入制热模式,若温度过高,则自动进入制冷模式。直到返回停止自动模式,由于用LCD显示比用LED显示更直观,在具体的实验中,我们用LCD代替LED,更加符合这次实训的目的和要求。 结论: 我们将根据原理图编写的程序烧录到芯片中,各个功能模块达到了我们电子与信息工程学院射频实验室 实训报告 的要求,并且与分析结果完全一样。所以符合这次设计的目的。 【小结】 为期两周的课程实训快要结束了,通过对之前学习内容的整合,自己设计原理图,然后根据原理图编写程序,基于AT89C52控制3相6拍步进电动机,压缩机,4X4键盘,LCD显示,DS18B20温度传感器,风机调速模块、鼓风机来实现汽车空调智能控制。认识到了自己的不足,也收获了许多专业知识和对于我们我们专业更加具体的认识。在设计过程中遇到了难题,也意识到了自己犯得错误。我将自己的体会和认识到问题总结如下: (1)在设计原理图的时候要注意单片机的功能引脚,比如外部中断口等。否则有些功能是实现不了。 (2)在编写程序的时候要紧扣原理图,各个引脚的定义,赋值都要切合实际。 (3)我们在连线的时候要严格按照操作规则,否则会使程序下载不到单片机里,或者会将芯片烧了。 (4)在遇到困难时,我们要理清思路,一步一步查找问题,耐心的解决问题。 (5)这次设计,让我觉得我们所学的知识和实际非常贴近,我们在平时的学习中就可以和实际结合,而不是一味的苦学课本知识。 【指导教师评语及成绩】 评语: 电子与信息工程学院射频实验室 实训报告 成绩: 指导教师签名: 批阅日期: 电子与信息工程学院射频实验室 实训报告 /******************************************************************************* * 实 验 名 : 汽车空调系统 * 连接方式 : 见电路图"shixunyuanlitu.SchDoc" *******************************************************************************/ #include #include"lcd.h"

//定义I O口// #define GPIO_KEY P1 #define speed 1 sbit DSPORT=P3^7;

//声明函数// void Delay1ms(uint ); uchar Ds18b20Init(); void Ds18b20WriteByte(uchar com); uchar Ds18b20ReadByte(); void Ds18b20ChangTemp(); void Ds18b20ReadTempCom(); void Go(); int Ds18b20ReadTemp();//Motor sbit I01 = P0^2; sbit I11 = P0^3; sbit I02 = P0^4; sbit I12 = P0^5; sbit dianji=P2^0; sbit jidianqi=P3^6; sbit beep=P3^0; void delay(int time); //定义变量// unsigned char PuZh[17]="Zhe ge zhi :"; unsigned char caidang[]="1.ZHILENG 2.ZHIRE 3.ZIDONG 4.FANHUI"; unsigned char zhilengzhong[]="ZHILENGZHONG "; unsigned char zhirezhong[]="ZHIREZHONG " ; unsigned char shezhi[]="Gianbian" ; unsigned char auto1[]="Zidong" ; unsigned char KeyValue;

相关主题