资源目录
压缩包内文档预览:
编号:514338
类型:共享资源
大小:3.07MB
格式:ZIP
上传时间:2015-11-12
上传人:小***
认证信息
个人认证
林**(实名认证)
福建
IP属地:福建
30
积分
- 关 键 词:
-
基于
单片机
汽车空调
控制系统
设计
实现
- 资源描述:
-
基于单片机的汽车空调控制系统的设计与实现,基于,单片机,汽车空调,控制系统,设计,实现
- 内容简介:
-
1 第 1 章 绪 论 1.1引言 人类掌握制冷技术总共 120多年时间, 而第一台汽车空调装置在 1927年才出现 。 当时的汽车空调的内容仅是具备加热器及空气经过过滤的通风系统 。 1940年才提供了通过制冷方式使汽车空气凉爽 。 第二次世界大战后,汽车空调开始了实质性的进展。直到如今,汽车空调作为提高汽车乘坐舒适性的一种重要手段已被广大汽车制造工作者及用户所认可,人们越来越认识到汽车装有空调的好处。 1988年美国生产的汽车就有90.3装备了空调系统,到 1993年上升到 94 。 我国在这方面起步较晚,从 60年代初,才开 始在红旗轿车上安装 。 但近年来发展速度很快,国内轿车上 80装有空调系统 。随着国内汽车行业的高速发展,汽车空调越来越受到汽车制造商的重视。现在国产汽车的汽车空调控制器普遍采用手动机械控制方式,大大落后于国际水平,限制了汽车工业的发展。 自从人们发明了汽车加热装置和汽车空调设备后,大大改善了人们驾驶的环境随着国内人们生活水平的提高,轿车在人们生活中扮演重要的角色。而汽车空调作为汽车使用舒适性的衡量标准之一,要求也越来越高。长期以来,我国轿车空调的自动控制水平较低,大多处于手动或半自动状态 。 手动控制一方面会出现 车室温度达不到舒适性、节能性的要求;另一方面容易分散注意力,不利于安全。实现轿车空调的自动控制是必然趋势。 国外高级轿车上一般都装有全自动的空调系统,能根据汽车的状态参数自动地调节车内温度。而国内大部分高档轿车的空调控制器都是依靠进口,目前还没有自己开发的具有自主知识产权的轿车空调自动控制器。 1.2研究项目开展的意义 在 2008年年初的时候,汽车业界一直认为中国汽车产量将突破 1000万辆而突如其来的金融危机让业界大跌眼睛,今年中国汽车产业量约 960万辆,同比增速约为 10%,而全球汽车产量却出现了下滑现象。 但是汽车产量的下滑却不等同于汽车的电子下滑,尤其人们对汽车行驶舒适性要求的提高推进了汽车车身自动控制的不断升级,同时智能化被越多的人所关注。 汽车空调作为一种舒适性空调,不仅是人民生活水平提高的标志,也是提高汽车nts 2 市场竞争能力的重要手段。随着科学技术的发展和人民生活水平的提高,人们对空调驾驶 室的温度提出了更高的要求,这就使轿车空调的控制又面临着新的挑战。但是汽车使用空调大部分都是封闭空间内使用,驾驶室的空间很狭小,内部空调长时间 循环导致空气不流通,有害气体的增加,车内空气混浊通风不好导致长期驾驶容易出现疲劳, 诱发事故。车内空气污染较严重时,严重影响了驾驶员的健康,因车内空气污染找出的疾病或中毒事件时有发生,为了获得安全舒适的车内气候环境,改善汽车内部的空调风门,来达到调节汽车内部温度系统是很有实在意义和广泛的发展空间的。 当今汽车不只是简单的代步工具,上海市曾做了个意向调查统计,约有 45%以上的有购车欲望的人希望购买 20致 25万左右的汽车,享受已经被越来越多的消费者所看重,而汽车空调系统更能体现这一点,汽车空调能在任何气候行驶的条件下,改善驾驶员的工作劳动条件和提高成员的舒适性。现在人们都希望汽车空调能达到人 体最适宜的状态。 目前国内大部分经济型轿车驾驶室内温度控制还处于一个手动状态,如果把空调的风门改成随着车内温度自动调节开度大小的系统,对驾驶者有很多益处,更为该车在市场竞争中添加了砝码。再有很多车当 驾驶 室乘员数、日照强度、车速、风量等大幅度变化时,手动控制不能很好地提供车内一个自动调控的舒适环境,手动控制已成为汽车空调进一步发展的瓶颈问题,而国外一些高档轿车上已经配有全自动轿车空调系统,并且对这些先进的技术申请了专利,对知识产权进行了保护,因此无法破解其核心技术,我们只有自主开发适合我国交通、气候的轿车空调 全自动控制器,形成具有自主知识产权技术,制订出汽车空调控制器的产品标准,才能更好的提高我国汽车工业整体水平,增强国际竞争力,进一步增强综合国力。 1.3汽车空调的系统工作原理 空调是空气调节器的简称,它的作用是对室内空气进行调节,使空气的温度、湿度、流速、和洁净度达到人体所需要的舒适范围。汽车空调室空气调节工程的一个重要分支,属于舒适性空调,他是为了车室内或驾驶室内的空气质量和数量达到舒适性标准而进行调节的装置。汽车空调一般由制冷系统、暖风系统、通风系统以及空气净化系统、控制系统等几个部分组成 。 汽车通风装 置的主要功能是换气,即打开通风口,利用汽车迎面风的动压通风或利用空调系统中风机的强制通风来进行换气。车厢空间小,车内空气由于成员呼出的二氧化碳、水蒸气、烟等而受到污染,需经过通风换气来净化,同时调节车内的温度与湿度。此外,通风对于防止车窗玻璃起雾也起着很重要的作用。为维持舒适条件需要的最小限度的换气称为必须换气量,为此应设置即使在汽车车窗禁闭的情况下,仍nts 3 能从车外引入新鲜空气的通风装置(每人约需 2536m3/h)。 其中控制系统是对制冷和暖风系统的温度、压力进行控制,同时对车室内空气的温度、风量、流 向进行控制,完善了空调系统的正常工作。 汽车在任何条件下,车厢内部都具有舒适的温度范围和气流平均速度,冬季为16 20 ,夏季为 20 29 。 汽车空调的控制机构和操纵机构要 求 灵活、方便 , 不增加驾驶员劳动强度,不影响驾驶员的正常驾驶等。 汽车空调制冷系统装置有压缩机、冷凝器、贮液干燥器或积累器、膨胀阀或膨胀管、蒸发器和电气控制系统等组成。 1.4汽车车厢的热力学分析 本文所研究的汽车空调电子控制器是针对使用全合一空气混合型的轿车空调系统,也就是制冷与加热使用一套温度控制系统,其通过混合风门的开度 调节冷热空气的混合。在汽车空调的作用下,除空调对气体交换处理外,对车厢内热平衡有显著影响的还有由车厢缝隙和换气系统缝隙进入的新风热、车身壁面传入热、日照辐射影响传入热和人体发热几个方面。对于其它热交换相对较少。 首先,将汽车车厢可以看作一个定容定压控热系统。这里的汽车车厢热学模型忽略了其他方面的影响,针对以上所述,假设空气为理想气体情况下,忽略气体的动量和势能,根据热力学第一定律可以得到以下方程: Q = Qf+ Q1 +Q2 +Q3+Q4 ( 1.1) 其中: Q 车厢总热量变化( KJ); Qf 空调输出空气与吸入空气热量差( kJ) Q1 车厢进入新风所产生的热量差( kJ) Q2 车身壁面传入热( kJ) Q3 日照辐射及影响热量( kJ) Q4 人体发热量。 根据热力学第一定律,理想气体等压变化可以得到: Q =m h= VCCp Tc(1.2) 其中: m 车厢内空气质量( kg); nts 4 H 车厢空气熔值的变化( kJ/kg) VC 车厢总体积(轿车估计为 3 1.5 1.5=6.75 m3 ); 空气密度(在标准大气压下为 1.225kg/m3 ) Cp 空气比热容(理想下 1.002kJ/kgK) Tc 车厢内空气温度变化( K) 1.5汽车空调的自动控制系统难点 空调的控制 , 为了使空调系统完成其通风、调节温度和湿度等功能,必须对其进行多方面的控制。具体的控制内容和方法如下:控制外气的引入量、控制鼓风机的速度、控制制冷能力、控制温度和配风控制。 与一般建筑空调相比,汽车空调有其特殊性。首先,汽车是个移动物体,外界气候条件变化大,车外热负荷变化大,以至于难以确定标准的车外设计参数。其次,由于汽车驾驶室内成员密度大,人体热量大,要求的制冷能力大,汽车开启空调与成员进入车内往往是同一时刻,乘客要求一进入车室,在很短的时间内就享受到空调效果 ;而汽 车车身(包括座椅等)在开空调之前的蓄热量(或蓄冷量)是很大的。这几种因素导致汽车空调所要求的负荷大,要求降温(或升温)迅速。因此,汽车空调机组的制冷(或采暖)能力应该比房间空调大的多,另外,汽车是高速移动的物体,与外界对流热量大。而且车身隔热困难,玻璃门窗所占面积又大,车室内得热量(或失热量)大。如果汽车长时间直接暴露在太阳底下(或风雪下),进入驾驶室的热负荷比一般房间要大得多,夏季汽车长时间停在烈日下,车内温度会上升到 50摄氏度以上。汽车的使用环境非常严重,这些环境因素往往在造成汽车电子装置的性能恶化,甚 至不能完成规定的功能或损坏,出现可靠性故障。因此与一般控制系统相比,汽车空调控制系统也有其特殊要求。 1、 要满足温度、湿度环境的要求。 2、 要求满足振动冲击环境要求。 3、 要满足电器环境要求。 1.6课题的提出与研究内容 1.6.1课题的研究内容 本课题的研究室针对我国现有高档汽车上装置的自动空调控制系统基本上依赖进口,国产化自动控制系统在汽车系统中的应用性研究较少,迫切需要对汽车空调控制nts 5 器实现电子自动化、国产化为目标而产生的。因此,本课题的研究内容为 : 1、 通过对汽车空调工作原理和空调总成的结构研究分析, 设计了以单片机为核心的模拟控制系统,并对控制器硬件电路部分选择和研究。 2、 建立了空调调节门的开度的模拟系统,阐述了如何实现汽车对汽车空调系统的自动控制 。 3、 温度检测采用高精度的集成 DS18B20温度传感器来实现 。 4、 编程过程中,采用分块化的设计方法,对各个子部分分别进行编程、调试,再按控制要求将他们连接起来,进行测试、分析。 5、 通过制作实物,来模拟汽车空调自动系统。 1.6.2 拟 解决的主要问题: 1、 如何实现传感器的接收,传递,以及提高传感器的精度。 2、 利用单片机编程所编写的程序如何能把所接受到的 信号处理后通过电路传到硬件机构。 3、 怎样把显示模块( LCD 显示屏)设计到该装置,如何能设定适合 温度 范围 。 4、 通过单片机出来电路连接马达还是连接步进电机,怎么采用其他方法来达到控制风门旋转的目的。 5、 接受的信号如何能通过经单片机控制来实现整个系统的自动化。 6、 软件编写,需要几次中断响应,和把程序下载到单片机保证程序正常运行。 nts 6 第 2章 单片机及 系统 开发 的 平台简介 2.1单片机的介绍及应用 将微处理器、一定容量的 RAM和 ROM以及 I/O口、定时器等电路集成在一块芯片上,构成单片机 微型计算机,简称单片机。 目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能 IC卡,高档轿车、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师 等 。 计算机时用于处理数字信息的,单片机也是如此,各种数据 及 非数据信息在进入 计算机前必须转换成二进制数或二进制编码。 单片机学习应用的六大部分: 1、 总线 2、 数据、地址、指令 3、 P0、 P2、 P3口的用法 4、 程序的执行过程 5、 堆栈 6、 单片机的开发过程 2.2单片机的发展 随着控制领域对单片机性能要求的增加,出现了 16位的单片机,而且芯片内部也增加了其他的性能。如 Inteld MCS-96系列单片机,在单片机内部集成了 A/D转换器、PWM输出。 在未来 各种电子产品对单片机的要求,单片机将会向多功能、高性能、高速度、低电压、低功耗、大容量储存器的方向发展。单片机是 器 件级计算机系 统,它可以嵌入到任何对象体系中去,实现智能化控制。空调机采用单片机后不但遥控参数设置方便,运行状态自动变换,还可实现变频控制。目前许多家用电器如 VCD、 DVD只有单片机出现后才可能实现其功能。 单片机与嵌入系统: 嵌入式系统源于计算机的嵌入式应用,早期嵌入式系统为通nts 7 用计算机经改装后嵌入到对象体系中的各种电子系统,如汽车的在自动驾驶仪,轮机检测系统等。 嵌入式系统首先是一个计算机系统,其次它被嵌入到对象体系中、在对象体系中实现对象要求的数据采集、处理、状态显示、输出控制等功能,由于嵌入在对象体系中,嵌入式系统的计 算机没有计算机的独立形式及功能。单片机完全是按照嵌入式系统要求设计的,因此单片机是最典型的嵌入式系统。早期的单片机只是按嵌入式应用技术要求设计的计算机单芯片集成,故名单片机。随后,单片机为满足嵌入式应用要求不断增强其控制功能与外围接口功能,尤其是突出控制功能,因此国际上已将单片机正名为微控制器 (MCU, Microcontroller Unit)。 2.3Keil C软件的开发与使用 Keil C51软件是众多单片机应用开发的优秀软件之一,它集编辑,编译,仿真于一体,支持汇编 , PLM 语言和 C语言的程序设计, 界面友好,易学易用。 单片机开发中除必要的硬件外,同样离不开软件, 编 写语言程序变为 CPU可以执行的机器码有两种方法 : 手工汇编 , 机器汇编 。其中 机器汇编是通过汇编软件将源程序变为机器码。现在大多数 MCU支持 Keil C 软件,可以发现其强大的应用性。 Keil C51开发系统基本知识 Keil C51开发系统基本知识 1、 系统概述 Keil C51软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到 Keil C51生成的目标代码效 率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。 2、 Keil C51单片机软件开发系统的整体结构 C51工具包的整体结构, uVision与 Ishell分别是 C51 for Windows和 for Dos的集成开发环境 (IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用 IDE本身或其它编辑器编辑 C或汇编源文件。然后分别由 C51及 C51编译器编译生成目标文件 (.OBJ)。目标文件可由 LIB51创建生成库文件,也可以与库文件一起经 L51连接定位生成绝对目标文件 (.ABS)。 ABS文件由 OH51转换成标准的 Hex文件,以供调试器 dScope51或 tScope51使用进行 源代码 级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如 EPROM中。 使用独立的 Keil仿真器时,注意事项: ( 1) 仿真器标配 11.0592MHz的晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。 ( 2) 仿真器上的复位按钮只复位仿真芯片,不复位目标系统。 nts 8 本课题主要采用 Keil C软件进行编程的。进入 Keil C51后,屏幕 如图 2.1所示。 进入后 几秒钟后出现编辑界 : 图 2.1 进入 Keil C51后的编辑界面 编译完成图 如图 2.2所示: 图 2.2 编写好程序图 nts 9 2.4 C语言的介绍与应用 2.4.1C语言的简介 C语言是在 20世纪 70年代初问世的。 1879年,美国电话电报公司贝尔实验室正式发表了 C语言。它是一种结构化语言,它层次清晰是一种计算机高级语言。 在单片机的开发应用中,逐渐引入了高级语言, C语言就是其中的一种。 C语言具有良好的模块化,容易阅读和维护等优点。有很好的可移植性功能化的代码能够很方便地从一个工程移植 到另一个工程,从而减少了开发时间。 Avr单片机 C语言高级程序设计是一种成功的系统描述语言,用 C语言开发的 UNIX操作系统就是一个成功的范例 ;同时 C语言又是一种通用的程序设计语言,在国际上广泛流行。世界上很多著名的计算公司都成功的开发了不同版本的 C语言,很多优秀的应用程序也都使用 C语言开发的,它是一种很有发展前途的高级程序设计语言。 C是中级语言。它把高级语言的基本结构和语句与低级语言的实用性结合起来。 C 语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。 C是结构式语言。结构 式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。 C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。 C语言功能齐全 ,具有各种各样的数据类型,并引入了指针概念,可使程序效率更高。而且计算功能、逻辑判断功能也比较强大,可以实现决策目的的游戏。 C语言适用范围大。适合于多种操作系统,如 Windows、 DOS、 UNIX等等;也适用于多种机型。 C语言 对编写需要硬件进行操作的场合,明显优于其它解释型高级语言,有一些大型应用软件也是用 C语言编写的。 C语言具有较好的可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。 C语言是结构式语言的显著特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。 C语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。 2.4.2 C语言比 汇编语言相比的优点: 1、 要了解处理器的指令集,也不必了解储存器结构。 2、 器分配和寻址方式由编译器进行管理,编译时不需要考虑存储器的寻址数据类nts 10 型等细节。 3、 令操作的变量选择组合提高了程序的可读性。 4、 使用与人的思维更相近的关键字和操作函数。 5、 序的开发和调试时间大大缩短 。 6、 语言中的库文件提供许多标准的例子。 7、 通过 C语言可实现模块化编程技术,从而可将已编制好的程序加入到新程序中。 8、 C语言可移植性好且非常普及, C语言编译器几乎适用于所有的目标系统, 已完成的软件项目可以很容易地转换到其他的处理 器或环境中。 2.4.3编写 C语言程序的结构 1、 顺序结构:顺序结构的程序设计是最简单的,只要按照解决问题的顺序写出相应的语句就行,它的执行顺序是自上而下,依次执行。 2、 选择结构:顺序结构的程序虽然能解决计算、输出等问题,但不能做判断再选择。对于要先做判断再选择的问题就要使用选择结构。选择结构的执行是依据一定的条件选择执行路径,而不是严格按照语句出现的物理顺序。选择结构的程序设计方法的关键在于构造合适的分支条件和分析程序流程,根据不同的程序流程选择适当的选择语句。选择结构适合于带有逻辑或关系比较 等条件判断的计算,设计这类程序时往往都要先绘制其程序流程图,然后根据程序流程写出源程序,这样做把程序设计分析与语言分开,使得问题简单化,易于理解。程序流程图是根据解题分析所绘制的程序执行流程图。 3、 循环结构:循环结构可以减少源程序重复书写的工作量,用来描述重复执行某段算法的问题,这是程序设计中最能发挥计算机特长的程序结构, C语言中提供四种循环,即 goto循环、 while循环、 do while循环和 for循环。四种循环可以用来处理同一问题,一般情况下它们可以互相代替换。 4、 模块化程序结构: C语言的 模块化程序结构用函数来实现,即将复杂的 C程序分为若干模块,每个模块都编写成一个 C函数,然后通过主函数调用函数及函数调用函数来实现大型问题的 C程序编写,因此常说: C程序 =主函数 +子函数。因此,对函数的定义、调用、值的返回等中要尤其注重理解和应用,并通过上机调试加以巩固。 C程序时由函数构成的,一个 C源程序至少包括一个函数,一个 C源程序有且只有一个名 main()函数,也可能包含其他函数,因此,函数是 C程序的基本单位。主程序通过直接书写语句和跳用其他函数来实现有关功能,这些函数可以是 C语言本体提供的。 一个函数由 两部分组成: 函数的首部,即函数的第一行。包括函数名、函数类型、函数属性、函数参数(函nts 11 数参数)名、参数类型。 函数体,即函数首部下面的大括号 “”内的部分。如果一个函数内有多个大括号、则最外层的一对 “”为函数体的范围。 一个 C 语言程序,总是从 main 函数开始执行的, C 语言其中 含 有大量 if 语句 等等。 2.5 PROTEL软件的开发 早期的 PROTEL主要作为印制板自动布线 工具使用 ,运行在 DOS环境,对硬件的要求很低,在无硬盘 286机的 1M内存下就能运行,但它的功能也较少,只有电原理图绘制与印制板设计功能,其印制板自动布线的布通率也低,而现今的PROTEL已发展到 PROTEL99,是个庞大的 EDA软件 ,完全安装有 200多 M,它工作在 WINDOWS95环境下,是个完整的板级全方位电子设计系统,它包含了电路原理图绘制、 模拟电路与数字电路 混合信号仿真、多层 印制电路板 设计(包含印制电路板自动布线)、 可编程逻辑器件 设计、图表生成、 电子表格 生成、支持宏操作等功能,并具有 Client/Server(客户 /服务器)体系结构,同时还兼容一些其它设计软件的 文件格式 ,如 ORCAD, PSPICE, EXCEL等,其多层印制线路板的自动布线可实现高密度 PCB的 100布通率。在国内 PROTEL软件较易买到,有关PROTEL软件和使用说明的书也有很多,这为它的普及提供了基础。 Protel99 SE共分 5个模块,分别是原理图设计、 PCB设计(包含信号完整性分析)、自动布线器、原理图混合信号仿真、 PLD设计。以下介绍一些 Protel99SE的部分最新功能。 确定起始点和终止点, Protel99就会自动地在原理图上连线,从菜单上选择“ Place/Wir e” 后,按空格键切换连线方式,自动连线、 任意角度、 45连线、 90连线,使得设计者在设计时更加轻松自如。只要简单地定义 AutoWire方式。自动连线可以从原理图的任何一点进行,不一定要从管脚到管脚。 打开 Photoplotte.ddb设计数据库,点 “ ” 找到 Electronics 和 Photohead文件夹,打 开 Photohead Parts list设计窗口,用同样方法打开 Photohead.pcb文件和 Photohead. prj文件在 Photohead Parts List窗口下击鼠标右键,选择 “ Split Horizontal” 菜单 ,界面将被水平分割。在 Photohead.prj设计窗口下点右键,选 Split Vertical 菜单。界面将被垂直分割 , 可以用鼠标调整分割窗口的大小。要想分割更多的窗口,可重复上述操作。 按 Ctrl+Tab可循环切换打开的设计文件,按 Shift+Tab可在导航板和设计窗口中有效文件夹的内容间切换。 本器件的电路图大部分是由 Protel软件完成的。 如图 2.3所示是电路电阻与单片机nts 12 相连图。 图 2.3用 PROTEL99 完成的电路图 2.6 本章小结 本 章 按照 任务书要求,分别介绍了单片机的分类和发展、 Keil C 软件的应用、 C语言的介绍以及 Protel 软件的应用。设计与开发本器件时主要使用了几个软件都有简略的介绍。通过查阅大量的书面和网络资料,初步设定了计划及未来的准备。为后面的章节做了铺垫。 nts 13 第 3章 硬件电路的选择 本控制器是建立在计算机控制理论基础上的一种以单片机为控制核心的测控系统。它能实现实时数据采集、实时决策、实时控制;所谓实时数据采集,即对被控制的瞬时值进行检测和输入;所谓实时决策,即对实时的给定值和被控量的数值进行已定的控制规律运算,决定下一步的控制过程;所谓实时 控制,即根据决策,适时的对执行机构发出控制信号。 3.1单片机的选择 车用 MCU不同于一般的消费用 MCU,其最大区别在于车用 MCU是需要在极苛刻的环境下运行的。例如可能要工作在 -40 到 +120 的环境中,这就要求车用 MCU要有很高的可靠性和稳定性。 本项目中使用到的 MCU选用 8位单片机 , 型号为 AT89S52。由于该款单片机出货量大,由此成本低,而且它的片上资源满足本项目的要求,因此适合采用。该单片机采用 024MHZ晶振,内片有 256字节数据存储器 RAM;片内有 8K字节程序存储器 ROM。4个 8位的并行 I/O口( P0、 P1、 P2、 P3);一个全双工串行通信口; 3个 16位定时器、计数器( T0、 T1、 T2)可处理 6个中断源,两级中断优先级。 Vcc, GND:正电源端与接地端( +5V) 。 3.1.1单片机的系统 AT89S52是一种低功耗、高性能 CMOS8位微控制器,具有 8K在系统可编程使用Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容。片上 Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的 8位 CPU和在系统可编程 Flash,使得 AT89S52为众 多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89S52具有以下标准功能: 8k字节 Flash, 256字节 RAM,32 位 I/O 口线,看门狗定时器, 2个数据指针,三个 16位定时器 /计数器,一个 6向量 2级中断结构,全双工串行口,片内晶振及时钟电路。另外, AT89S52可降至 0Hz静态逻辑操作,支持 2种软件可选择节电模式 。 空闲模式下, CPU停止工作,允许 RAM、定时器 /计数器、串口、中断继续工作。掉电保护方式下, RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 该系统板 上的单片机系统把全部的 I/O端口资源提供出来,因此,在实际应用的时候,可以灵活地组合成不同的单片机应用系统。 nts 14 AT89S52单片机的引脚分布如图 3.1所示: 图 3.1 AT89S52单片机引脚分布 3.1.2单片机各个端口及引脚说明 P0 口: P0口是一个 8位漏极开路的双向 I/O口。作为输出口,每位能驱动 8个TTL逻辑电平。对 P0端口写 “ 1” 时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时, P0口也被作为低 8位地址 /数据复用。在这种模式下, P0具有内部上拉电阻。 编程时有应用。 在 flash编程时, P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 P1 口: P1 口是一个具有内部上拉电阻的 8 位双向 I/O 口, P1 输出缓冲器能驱动 4个 TTL 逻辑电平。对 P1 端口写 “ 1” 时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流 (IIL)。 在系统中编程中应用。 此外, P1.0和 P1.2分别作定时器 /计数器 2的外部计数输入 (P1.0/T2)和时器 /计nts 15 数器 2的触发输入 (P1.1/T2EX),具体如 下表所示。 在 flash编程和校验时, P1口接收低 8位地址字节。 引脚号第二功能 P1.0 T2(定时器 /计数器 T2的外部计数输入 ),时钟输出 P1.1 T2EX(定时器 /计数器 T2的捕捉 /重载触发信号和方向控制 ) P1.5 MOSI P1.6 MISO P1.7 SCK P2 口: P2口是一个具有内部上拉电阻的 8 位双向 I/O口, P2口 输出缓冲器能驱动 4个 TTL 逻辑电平。对 P2 端口写 “ 1” 时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引 脚由于内部电阻的原因,将输出电流。 在系统中编程 中 应用。 在访问外部程序存储器或用 16位地址读取外部数据存储器时, P2口送出高八位地址。在这种应用中, P2口使用很强的内部上拉发送 1。在使用 8位地址访问外部数据存储器时, P2口输出 P2锁存器的内容。在 flash编程和校验时, P2口也 可以接收高 8位地址字节和一些控制信号。 P3 口: P3 口是一个具有内部上拉电阻的 8 位双向 I/O 口, P2输出缓冲器能驱动 4个 TTL 逻辑电平。对 P3端口写 “ 1” 时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使 用时,被外部拉低的引脚由于内部电阻的原因,将输出电流 (IIL)。 P3口亦作为 AT89S52特殊功能 (第二功能 )使用。 在 flash编程和校验时, P3口也接收一些控制信号。 端口引脚 第二功能 P3.0 RXD(串行输入口 ) P3.1 TXD(串行输出口 ) P3.2 INTO(外中断 0) P3.3 INT1(外中断 1) 在系统中编程 中 应用 P3.4 TO(定时 /计数器 0) P3.5 T1(定时 /计数器 1) P3.6 WR P3.7 RD(外部数据存储器读选通 ) 在系统中编程中应用 本器件组成是应用于单片机最小系统,经过多方对比,设计单片机底座,选择了 AT89S52 单片机,并且把单片机连接了开发 板上,各个引脚对应如上所nts 16 诉,方便连接其他器件及各大模块的链接。 本器件通过选择单片机,然后选择单片机的位置,选择了 复位操作和复位电路 。 复位 (Reset)操作是使单片机的 CPU 以及系统各部件处于初始装,并从这个状态开始运行。单片机在运行过程中可能会受到外界的干扰使程序陷入死循环或 “ 跑飞 ” ,发生这种情况时需要将单片机复位,重新启动 运行。 AT89S52 单片机的 RST 引脚是复位信号的输入断口,高电平有效。在始终振荡器稳定工作的情况下,该引脚若由低电平上升到高电平并持续 2 个机器中期,系统实现一次复位操作。 复位操作有手动复位和上电自动复位。本设计是即可以上电自动复位,又可以采用手动复位。复位电路如图 3.1 所示。在实验中运用多次,已经通过验证。整个电路是相对简单的。在系统上电后由于电容是在充电过程所以 RST 是高电平,达到复位的效果。在手动操作中,通过按键的连接,而使 RST 的电流由低变高而达到上电复位的效果。 3.2数据采集部分的选择与应用 3.2.1温度传感器的选择 在汽车控制中,温度信号是整个系统进行控制计算的根据。如果稳定信号测量不准确,控制系统的控制精度也就无从谈起。所以选择好的控制方案直接关系系统性能的好坏。传统的温度检测大多以热敏电阻为传感器,但热敏电阻可靠性差、测量温度准确率低,且必须经过专门的接口电路转换成数字信号后才能由微处理器进行处理。DS18B20是美国公司生产的单线数字温度传感器,它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点。特别适合于构成多点温度测控系统,可直接将温度转化成串行数字信号进行处理,而且 每片 DS18B20都有唯一的产品号并可存入其ROM中,以便在构成大型温度测控系统时在单线上挂接任意多个 DS18B20芯片。 1、 DS18B20基本知识 DS18B20数字温度计是 DALLAS公司生产的 1-Wire,即单总线器件,具有线路简单,体积小的特点。因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。 DS18B20产品的特点 ( 1) 只要求一个端口即可实现通信。 ( 2) 在 DS18B20中的每个器件上都有独一无二的序列号。 ( 3) 实际应用中不需要外部任何元器件即 可实现测温。 ( 4) 测量温度范围在 55。 C到 125。 C之间。 nts 17 ( 5) 数字温度计的分辨率用户可以从 9位到 12位选择。 ( 6) 内部有温度上、下限告警设置。 2、 DS18B20的引脚介绍 TO 92封装的 DS18B20的引脚排列见图 3.2,其引脚功能描述见表 3.1。 图 3.2 DS18B20传感器底视图 表 3.1 DS18B20详细引脚功能描述 序号 名称 引脚功能描述 1 GND 地信号 2 DQ 数据输入 /输出引脚。开漏单总线接口引脚。当被用着在寄生电源下,也可以向器件提供电源。 3 VDD 可选择的 VDD引脚。当工作于寄生电源时,此引脚必须接地。 3、 DS18B20的使用方法 由于 DS18B20采用的是 1 Wire总线协议方式,即在一根数据线实现数据的双向传输,而对 AT89S52单片机来说,我们必须采用软件的方法来模拟单总线的协议时序来完成对 DS18B20芯片的访问。 由于 DS18B20是在一根 I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。 DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有 时序都是将主机作为主设备,单总线器件作为从设备。而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。数据和命令的传输都是低位在先。 对于 DS18B20的读时隙是从主机把单总线拉低之后,在 15秒之内就得释放单总线,以让 DS18B20把数据传输到单总线上。 DS18B20在完成一个读时序过程,至少需要 60us才能完成。 对于 DS18B20写 0时序和写 1时序的要求不同,当要写 0时序时,单总线要被拉低至少 60us,保证 DS18B20能够在 15us到 45us之间能够正确地采样 IO总线上的 “0”电平,当nts 18 要写 1时序时,单总线被拉低之后,在 15us之内就得释放单总线。 选择完温度传感器,开始设计温度传感器与实验开发板连接,因为温度传感器有 3个引脚,在开发板上用 P3.3口,并且与单片机连接 XTAL2L连接 AT89S52单片机 18引脚 。温度传感器 2引脚 DQ链接单片机 17引脚。如图 3.3所示。其中下图左面画出了晶振,防止输入和输出出现错误,右面同上是复位电路。 图 3.3 结合单片机的电路图 在设计上,通过查阅相关资料,一般轿车的温度传感器设计在方 向盘下面,方便接受信号,本器件设计没用采用一般的电阻似温度传感器。因为那样设计过于死板,不方便测温时温度传感器的移动和整个系统的移动。最后选择采用了 DS18B20温度传感器,利用其是 “ 线状 ” 方便转换位置,移动,方便测温等诸多优点。最后设计了一个工具箱,可以装载改器件,同时在外围设计一个孔,把温度传感器连接到工具箱外围,可以模拟在不同位置测量温度。 3.2.2温度传感器采集放大电路 温度传感器采集的温度信号时模拟信号,需要进行 A/D转换。单片机的芯片就是进行 A/D转换的扩展芯片,它可以进行 8路模拟信号的转换。 但是 MCU的输入信号时电压值,电压范围是 05V,而 18B20温度传感器采集的温度信号是电流信号,电流量是微安级,所以传感器采集的温度还不能直接输入到单片机中,需要进行电流 /电压的转换,将电流信号转换为电压信号,并且对电压信号进行放大。以适应 AT89S52芯片的输入要求。因此,本文采用 1千欧电阻与 AT89S52串联对传感器进行电压区域。在电阻上得到与绝对温度成正比的电压输出 V。对于输出的电压值还需要进行放大,采用通用发大器进行同相放大 10倍。这样, DS18B20传感器采集的信号经过放大后就为AT89S52芯 片要求的 05V,对于测量范围在 -55摄氏度到 +125摄氏度的信号经过转换后nts 19 得到的电压值分别为: 1、 0摄氏度对应的电压值为 2.7315V 2、 100摄氏度对应的电压值为 3.7315V 表 3.2 对于各个数的编程 对应表 为 温度 / 二进制表示 十六进制表示 +125 00000111 11010000 07D0H +25.0625 0000001 10010001 0191H +10.125 0000000 10100010 00A2H +0.5 0000000 00001000 0008H 0 0000000 00000000 0000H -0.5 11111111 11111000 FFF8H -10.125 11111111 01011110 FF5EH -25.0625 11111110 01101111 FE6FH -55 11111100 10010000 FC90H 另外,出于经济性和数据采集特点的考虑,本文决定采用多路 开关来对 8路传感器信号进行分时采集,这样可以使 8路信号公用一个放大器,而又不影响电路的特性。 3.3数据显示部分的选择 3.3.1显示屏的选择 显示模块主要显 示车内温度。本系统使用带背光的 RZ-1602LCD液晶显示屏。 1602液晶也叫 1602字符型液晶,它是一种专门用来显示字母、数字、符号等点阵型液晶模块,他有若干个 5 7或者 5 11等点阵字符组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔 每行之间也有也有间隔 起到了字符间距和行间距的作用,正因为如此 所以他不能显示图形。 1602LCD是指显示的内容为 16X2,即可以显示两行,每行 16个字符液晶模块(显示字符和数字)。目前市面上字符液晶绝大多数是基于 HD44780液晶芯片的,控制原理是完全相 同的,因此基于 HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。 1602液晶显示屏的 正面 图片 如图 3.4: nts 20 图 3.4 1602液晶显示屏 外观图 1602LCD的特性: 1、 +5V电压,对比度可调 。 2、 内含复位电路 。 3、 提供各种控制命令 ,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能 。 4、 有 80字节显示数据存储器 DDRAM。 5、 内建有 160个 5 7点阵的字型的字符发生器 CGROM。 6、 8个可由用户自定义的 5X7的字符发生器 CGRAM。 字符型 LCD1602通常有 14条引脚线 或 16条引脚线的 LCD,多出来的 2条线是背光电源线 VCC(15脚 )和地线 GND(16脚 )。 3.3.2显示屏 1602的液晶接口及引脚 设计最初是选择 18624液晶显示屏的,但是比较优点及对 1602的研究,最后选择了1602液晶显示屏,其具体引脚如图 3.5所示。 引脚功能见表 3.3。 图 3.5 1602液晶显示屏 接口图 nts 21 表 3.3 1602具体原理表格以及引脚对应: 引脚号 引脚名 电平 输入 /输出 作用 1 Vss 电源地 2 Vcc 电源( +5V) 3 Vee 对比调整电压 4 RS 0/1 输入 0-输入指令 1-输入数据 5 R/W 0/1 输入 0-向 LCD写入指令数据 1-从 LCD读取数据 6 E 1 输入 使能信号, 1时读取信息 1 0执行指令 7 DB0 0/1 输入 /输出 数据总线 line0(最低位) 8 DB1 0/1 输入 /输出 数据总线 line1 9 DB2 0/1 输入 /输出 数据总线 line2 10 DB3 0/1 输入 /输出 数据总线 line3 11 DB4 0/1 输入 /输出 数据总线 line4 12 DB5 0/1 输入 /输出 数据总线 line5 13 DB6 0/1 输入 /输出 数据总线 line6 14 DB7 0/1 输入 /输出 数据总线 line7(最高位) 15 A +Vcc LCD背光电源正极 16 K 接地 LCD背光电源负极 1602液晶显示屏的开发板的液晶接口: HD44780内置了 DDRAM(显示数据存储 RAM)、 CGROM(字符存储 ROM)和CGRAM(用户自定义 RAM)。 DDRAM就是显示数据 RAM,用来寄存待显示的字符代码。共 80个字节, 选择 1602液晶显示屏的一个重要原因是本实验需要显示温度,起初设定是 要显示温度范围,后来决定还是显示当前的温度,由于温度是随着温度传感器输入信号而时刻变化的,所以,选择 1602LCD显示屏 , 5 7的数字点阵和 16各个模块分 2排能更清晰的表达温度,方便演示时观看。 其地址和屏幕的对应关系如下表 3.4所述 : nts 22 表 3.4 1602地址和对应关系表 显示位置 1 2 3 4 5 6 7 40 地址 第一行 00H 01H 02H 03H 04H 05H 06H 27H 第二行 40H 41H 42H 43H 44H 45H 46H 67H 就是说想要在 LCD1602屏幕的第一行第一列显示一个 “ A” 字 ,就要向 DDRAM的00H地址写入 “ A” 的代码就行了。但具体的写入是要按 LCD模块的指令格式来进行的,后面我会讲到的。一行有 40个地址在 1602中我们就用前 16个就行了。第二行也一样用前 16个地址。 如何显示一个自定义符号 例子: 地址: 01000000 数据: 00010000 图示 : 01000001 00000110 01000010 00001001 01000011 00001000 01000100 00001000 01000101 00001001 01000110 00000110 01000111 00000000 3.4系统模拟空调风门开度器件的选择 3.4.1步进电机的选择 步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。您可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时您可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 一 、 步进电机的工作原理 步进电机是一种感应电机,它的
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。