32基于单片机和DS18B20的空调温控系统设计(硬件)
32基于单片机和DS18B20的空调温控系统设计(硬件),32,基于,单片机,以及,ds18b20,空调,温控,系统,设计,硬件
湘潭大学兴湘学院毕业论文(设计)任务书论文(设计)题目: 基于单片机和 DS18B20 的空调温控系统设计(硬件) 学号: 2006183832 姓名: 卢 涛 专业: 机械设计制造及其自动化 指导教师: 刘习文 系主任: 一、主要内容及基本要求1.采用 DS18B20(1-Wire 设备)实现温度数据采集,采用键盘方式输入指令,设定温度,并配有 LCD 显示。自主选择单片机、液晶显示器。 2.输入指令: 温度设定指令,通常设定范围可为 16 - 30 ,可设计 0-9 数字键;另外,最好还包换+ - 键 3.要根据设定温度动作 二、重点研究的问题1. 51 系列单片机的引脚及熟悉其内部结构及功能 2. DS18B20 芯片的读写方法,具体如何体现在 C 语言的编程上 3. PID 各环节的意义,如何使用 PID 算法来调节温度 三、进度安排序号 各阶段完成的内容 完成时间1 查资料 2010.3.122 设计电路、编写程序 2010.4.293 翻译 2010.5.84 撰写论文 2010.5.225 答辩四、应收集的资料及主要参考文献应收集的资料: 一、51 系列单片机原理和接口技术 二、DS18B20 芯片的原理及使用方法 三、1602 液晶的接口和使用方法 四、PID 控制算法 五、DAC0832 芯片的接口及使用 六、外文资料一篇 主要参考文献: 1 黄贤武,郑筱霞. 传感器原理与应用M 成都:电子科技大学出版社,高等教育出版社 2 黄坚. 自动控制原理及其应用M 北京:高等教育出版社 3戴佳,戴卫恒.51 单片机 C 语言应用程序设计实例精讲M.北京:电子工业出版社 4何立民.MCS-51 系列单片机应用系统设计系统配置与接口技术M.北京:北京航空航天大学出版社 湘潭大学兴湘学院基于单片机和 DS18B20 的空调温控系统设计(硬件)摘要:本设计说明书主要介绍的是基于 89S51 单片机和 DS18B20 数字温度传感器的空调温度控制系统。它以 89S51 单片机为主控制芯片,用数字温度传感器 DS18B20 实现温度的检测,测量精度可以达到 0.5。该系统采用 1602 液晶作为显示器,形象直观的显示测出的温度值。本文首先在绪论中介绍了此系统的背景以及功能。在第二章论述了硬件的设计过程,确定了技术指标及器件的选择并且描述了系统硬件电路设计、硬件设计框图及所使用的各种芯片功能与特性。第三章重点叙述了通过 PID 算法实现温度控制的过程。最后一章中具体讲述了用 C 语言进行空调温度控制系统软件的设计过程。基于 89S51 单片机的单总线温度测控系统具有硬件组成简单、多点温度检测、读数方便、精度高、测温范围广等特点,在日常中得到广泛应用。关键词:89S51 单片机,数字温度传感器, 单总线,PIDThe Design of Air Conditioning Control System Based on SCM and DS18B20 (Hardware)Abstract:The problem introduces 89S51 monolithic machine and the DS18B20 figure temperature measurement system mainly. It is 89S51 MCU-based control chip, digital temperature sensor DS18B20 the realization of temperature detection, measurement accuracy can reach 0.5.We can see the real temperature via the LCD. The display of visual images is to measure the temperature. This article first described in the introduction of this system, as well as background features. In the second chapter discusses the overall design process to determine the technical specifications and the choice of device of devices and a description of the hardware circuit design, hardware design and diagram used in a variety of features and functions of the chip. Chapter III analyzes how to control the temperature buy PID closed-loop control system. The final chapter told us how the designer write the soft for this system ,and it based on C language.89S51 single chip based on single-bus temperature measurement and control system with simple hardware components, multi-point temperature, easy reading, high-accuracy, wide temperature range, and other characteristics of the actual projects are widely used in our daily lifeKey words: digital temperature sensor, 89S51single chip, single-bus,PID湘潭大学兴湘学院目录第一章 绪论 .11.1 课题研究背景 .11.1.1 空调的工作原理 .11.1.2 空调的功能 .11.2 控制技术介绍 .21.3 总体方案设计 .3第二章 空调温度控制系统硬件设计 .52.1 单片机的选择 .52.1.1 AT89S52 单片机简介 .52.1.2 AT89S52 单片机引脚介绍 .52.1.3 AT89S52 单片机的外围电路 .62.2 温度传感器的选择 .72.3 键盘的设计 .82.3.1 行列式键盘和独立键盘的接口设计 .82.3.2 矩阵键盘和独立键盘的工作原理 .92.4 液晶显示的设计 .92.4.1 液晶 1602 的接口电路 .92.4.2 液晶 1602 工作原理 .92.4.3 液晶 1602 的其他参数 .102.5 DA 转换电路设计 .112.5.1 DA 转换器的选择 .112.5.2 DAC0832 简介 .122.5.3 DAC0832 结构 .12第三章 空调温度控制设计 .133.1 PID 调节器控制原理 .133.2 位置式 PID 算法 .143.3 数字 PID 参数的整定 .143.3.1 采样周期选择的原则 .153.3.2 PID 参数对系统性能的影响 .153.3.3 PID 计算程序 .16第四章 空调温度控制系统软件设计 .194.1 系统部件的软件设计方案 .194.2 系统软件设计框图 .194.3 主程序和子程序流程图设计 .204.3.1 主程序流程图 .204.3.2 液晶 1602 流程图 .214.3.3 温度转换子程序流程图 .214.3.4 键盘处理子程序流程图 .22结束语 .23参考文献 .24湘潭大学兴湘学院1第一章 绪论1.1 课题研究背景温度是一个和人们生活环境有着密切关系的物理量,也是一种在生产、科研、生活中需要测量和控制的重要物理量,是国际单位制七个基本量之一。温度的变化会给我们的生活、工作、生产等带来重大影响,因此对温度的测量至关重要。其测量控制一般使用各式各样形态的温度传感器。随着现代计算机和自动化技术的发展,作为各种信息的感知、采集、转换、传输相处理的功能器件,温度传感器的作用日显突出,已成为自动检测、自动控制系统和计量测试中不可缺少的重要技术工具,其应用已遍及工农业生产和日常生活的各个领域。空调即空气调节器(room air conditioner),是一种用于给空间区域(一般为密闭)提供处理空气的机组。它的功能是对该房间(或封闭空间、区域)内空气的温度、湿度、洁净度和空气流速等参数进行调节,以满足人体舒适或工艺过程的要求。而空调温度控制系统是空调的核心。1.1.1 空调的工作原理压缩机将气态的氟利昂压缩为高温高压的气态氟利昂,然后送到冷凝器(室外机)散热后成为常温高压的液态氟利昂,所以室外机吹出来的是热风。 然后到毛细管,进入蒸发器(室内机) ,由于氟利昂从毛细管到达蒸发器后空间突然增大,压力减小,液态的氟利昂就会汽化,变成气态低温的氟利昂,从而吸收大量的热量,蒸发器就会变冷,室内机的风扇将室内的空气从蒸发器中吹过,所以室内机吹出来的就是冷风;空气中的水蒸汽遇到冷的蒸发器后就会凝结成水滴,顺着水管流出去,这就是空调会出水的原因。然后气态的氟利昂回到压缩机继续压缩,继续循环。制热的时候有一个叫四通阀的部件,使氟利昂在冷凝器与蒸发器的流动方向与制冷时相反,所以制热的时候室外吹的是冷风,室内机吹的是热风。 其实就是用的初中物理里学到的液化(由气体变为液态)时要排出热量和汽化(由液体变为气体)时要吸收热量的原理。 1.1.2 空调的功能(1)降温湘潭大学兴湘学院2在空调器设计与制造中,一般允许将温度控制在 16-30之间。如若温度设定过低时,一方面增加不必要的电力消耗,另一方面造成室内外温差偏大时,人们进出房间不能很快适应温度变化,容易患感冒。(2)除湿空调器在制冷过程中伴有除湿作用。人们感觉舒适的环境相对湿度应在 40-60%左右,当相对湿度过大如在 90%以上,即使温度在舒适范围内,人的感觉仍然不佳。(3)升温热泵型与电热型空调器都有升温功能。升温能力随室外环境温度下降逐步变小,若温度在-5时几乎不能满足供热要求。(4)净化空气空气中含一定量有害气体如 NH3、SO2 等,以及各种汗臭、体臭和浴厕臭等臭气。空调器净化方法有:换新风、过滤、利用活性碳或光触媒吸附和吸收等。(5)增加空气负离子浓度空气中带电微粒浓度大小,会影响人体舒适感。空调上安装负离子发生器可增加空气负离子度,使环境更舒适,同时对降低血压、抑制哮喘等方面有一定医疗效果。1.2 控制技术介绍控制理论的发展也经历了经典控制理论、现代控制理论和智能控制理论三个阶段。智能控制的典型实例是模糊全自动洗衣机等;而自动控制系统可分为开环控制系统和闭环控制系统。一个控制系统包括控制器、传感器、变送器、执行机构、输入输出接口。控制器的输出经过输出接口、执行机构加在被控系统上,控制系统的被控量经过传感器、变送器通过输入接口送到控制器。不同的控制系统,其传感器、变送器和执行机构都不一样。PID 控制及其控制器或智能 PID 控制器已经很多,产品已在工程实际中得到广泛的应用,各大公司均开发了具有 PID 参数自整定功能的智能调节器,其中PID 调节器参数是自动调节是通过智能化调整或自校正、自适应算法来实现,有利用PID 调节控制实现压力、温度、流量、液位的控制。能实现 PID 控制功能的有 PLC 和一些 PC 机。本恒温自动控制系统的设计中应用 AT89S52 的单片机进行数字 PID 运算,能充分发挥软件系统的灵活性,在必要时针对 PID 算法进行修正,使其更加完善,可满足不同功率制冷系统的需要。随着电子技术以及应用需求的发展,单片机技术得到了迅速的发展,在高集成度,高速度,低功耗以及高性能方面取得了很大的进展。伴随着科学技术的发展,电子技术有了更高的飞跃,我们现在完全可以运用单片机来代替人工测量,这样既省时又省力。湘潭大学兴湘学院3而 PID 控制技术在现在最为成熟,控制结构简单,参数容易调整,不必求出被控对象的数学模型就可以调节,所以在恒温控制系统中通常采用 PID 算法。PID 是比例(proportional) 、积分(intergal)和微分(derivative)三者的缩写。PID 调节器的三个基本参数 kp(比例系数)、ki(积分系数) 、kd(微分系数)是选择非常重要,它将直接影响一个控制系统的准确性。三个环节在实际控制中的作用:1、比例调节作用:比例反映系统的偏差,系统一旦出现偏差,比例调节立即产生调节作用,用于减少偏差。比例作用大,可以加快调节,减少误差,但过大的比例使系统的稳定性下降,甚至造成系统不稳定;2、积分调节作用:是使系统消除静态误差,提高无差度。因为有误差,积分调节就进行,直至无差,积分调节就停止。积分调节输出为一常值,积分作用的强弱取决于积分时间常数 Ti. Ti 越小,积分时间就越强;反之 Ti 越大,积分时间就越弱。加入积分调节可使系统稳定性下降,动态响应变慢,积分作用常与另两种调节规律结合,组成 PI 调节或 PID 调节;3、微分调节作用:微分作用反映系统偏差信号的变化率,具有预见性,能预见偏差变化的趋势。因此能产生超前的控制作用。在偏差还没有形成之前,已被微分调节作用消除。因此微分调节可以改善系统的动态性能。在为时间选择合适的情况下,可以减少超调,减少调节时间。微分作用对噪音干扰有放大作用,因此过强的加微分环节,对系统抗干扰不利。此外微分反映的是变化率,而当输入没有变化时,微分作用的输出为零。微分作用不能单独使用,需要与另外两种调节规律相结合,组成 PI 调节器或 PID 调节器。大多数温度控制系统均建立在模型上,难以满足加工工艺要求,故引入模糊控制,采用模糊 PID 算法,运用 AT89S52 单片机对电阻炉温度实现智能控制,可以解决上述种种不足,从而实现高精度的控制。因此本次设计应用 PID 控制技术最为有效。1.3 总体方案设计选用 89S52 单片机为中央处理器,通过温度传感器 DS18B20 对室内的温度进行实时精确测量,将采集到的温度信号传输给单片机,再由单片机控制液晶显示器, ,并比较采集温度与设计温度是否一致,然后驱动空调机的加热或降温循环对空气进行处理,从而模拟实现空调温度控制单元的工作情况。温度的设定部分,采用 4*3 矩阵键盘设计,键盘包括 0-9 数字键,而不是传统的+,-键,可以方便快速地输入想要设定的温度。同时包含+-键,两种输入方式并存,湘潭大学兴湘学院4更加人性化。有三个独立按键,分别为设置,加温和降温三个。空调器通电后,制冷系统内制冷剂的低压蒸汽被压缩机吸入并压缩为高压蒸汽后排至冷凝器。同时轴流风扇吸入的室外空气经冷凝器,带走制冷剂放出的热量,使高压制冷剂蒸汽凝结为高压液体。高压液体经过过滤、节流机构后喷入蒸发器,并在相应的低压下蒸发,吸取周围的热量。同时贯流风扇使空气不断进入蒸发器的肋片间进行热交换,并将放热后变冷的空气送向室内。如此室内空气不断循环流动,达到降低温度的目的。总体方案结构如图 2.1:89S52DA 转换温度传感器空气键盘输入液晶显示压缩机动作图 1 总体方案结构实现方案的技术路线为:用按钮输入标准温度值,用 LCD 实时显示环境空气温度,通过 PID 运算,同标准温度值进行比较,然后用驱动电路控制压缩机完成加热和制冷调节,湘潭大学兴湘学院5第二章 空调温度控制系统硬件设计2.1 单片机的选择考虑到尽量降低成本和避免与复杂的电路,此系统所用到的元器件均为常用的电子器件。而主控器采用低功耗、高性能、片内含 8kb 可反复檫写的 Flash 、只读程序器的 CMOS8 位单片机 AT89S522.1.1 AT89S52 单片机简介89S52 有 40 个引脚,如图 2 所示,有 32 个输入端口(I/O),有 2 个读写口线,可以反复擦除。所以可以降低成本。主要功能特性: (1)兼容 MCS51 指令系统(2)32 个双向 I/O 口线(3)3 个 16 位可编程定时/计数器中断(4)2 个串行中断口 (5)2 个外部中断源(6)2 个读写中断口线(7)低功耗空闲和掉电模式(8)8k 可反复擦写(1000 次)Flash ROM(9)256x8 bit 内部 RAM(10)时钟频率 0-24MHz(11)可编程 UART 串行通道(12)共 6 个中断源(13)3 级加密位(14)软件设置睡眠和唤醒功能。2.1.2 AT89S52 单片机引脚介绍输入输出口线 口 8 位双向口线0.P7.0 口 8 位双向口线.1.1 口 8 位双向口线0.27.2图 2 89S52 引脚图湘潭大学兴湘学院6 口 8 位双向口线0.3P7.3ALE:地址锁存控制信号 在系统扩展时,ALE 用于控制把 口输出的低 8 位地址送入锁存器锁存起来 ,以实0P现低位地址和数据的分时传送。此外由于 ALE 是以六分之一晶振频率的固定频率输出正脉冲,因此可作为外部定时脉冲使用。:外部程序存储器读选通信号PSEN在读外部 ROM 时, 有效(低电平),以实现外部 ROM 单元的读操作。PSEN:访问程序存储趋控制信号A但 信号为低电平时,对 ROM 的读操作限定在外部程序存储器; 而当 信号为高电平时, 则对 ROM 的读操作是从内部程序存储器开始,并可延续至E外部程序存储器。RST:复位信号当输入的复位信号延续 2 个机器周期以上高电平时即为有效,用以完成单片机的复位操作。和 :外接晶体引线端1XTAL2当使用芯片内部时钟时,此二引线端用语外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。:地线SV: +5V 电源C2.1.3 AT89S52 单片机的外围电路(1)时钟电路单片机内部有一个高增益反向放大器,输入端为芯片引脚 ,输出端为引脚 。而1XTAL2XTAL在芯片外部 和 之间跨接晶体振荡2器和微调电容,从而构成一个稳定的自激振荡器。晶体震荡频率高,则系统的时钟频率也高,单片机运行速度也就快,但反过来运行速度快对存储器的速度要求就高,对印制电路板的工艺要求也高,所以,这里使用震荡频率为 6MHz 的石英晶体。震荡电路产生的震荡脉冲并不直接是使用,而是经分频后再为系统所用,震荡脉冲经过二分频后才作为系统的时钟信号。在设计电路板时,振荡器和电容应尽量靠近单片机以避免干扰。需要注意的是:电路板时,振荡器和电容应尽量安装得与单片机靠近,以减小寄生电容的存在更好的保障振荡器稳定、图 3.时钟电路湘潭大学兴湘学院7可靠的工作电路图如图 3 所示(2)复位电路单片机的复位电路分上电复位和按键复位两种方式。上电复位是指在加电之后通过外部复位电路的电容充电来实现的。当 的上升时间不超过 1ms,就可以实现自CV动上电复位,即接通电源就完成了系统的初始化电路原理图。RST 上的电压必须保证在斯密特触发器的阀值电压以上足够长时间,满足复位操作的要求。按键复位是指程序运行出错或操作错误使系统处于死锁状态时,为了摆脱困境,也需按复位键以重新启动 RST 引脚是复位信号的输入端,复位信号是高电平有效。按键复位又分按键脉冲复位和按键电平复位。电平复位将复位端通过电阻与 相连,按键脉冲复位是利用 RC 分电路产生正脉冲来达到复位的。CV(3)注意因为按键脉冲复位是利用 RC 微分电路产生正脉冲来达到复位的。所以电平复位要将复位端通过电阻与 相连.如复位电路中 R、C 的值选择不当,使复位时间过长,单C片机将处于循环复位状态。故本设计采用按键复位。2.2 温度传感器的选择温度测量转换部分是整个系统的数据来源,直接影响系统的可靠性。传统的温度测量方法是:温度传感器例如 AD590,将测量的温度转换成模拟电信号,再经过 A/D 转换器把模拟信号转换成数字信号,单片机再对采集的数字信号进行处理 3。这种模拟数字混合电路实现起来比较复杂,滤波消噪难度大系统稳定性不高,鉴于这些考虑,本设计采用数字式温度传感器 DS18B20。DS18B20 支持“一线总线”接口,测量温度的范围为-55C+125C,现场温度直接以“一线总线”的数字式传输,大大的提高了系统的抗干扰性。DS18B20 为 3 引脚, DQ 为数字信号输入/输出端;GND 为电源地;VDD 为外接 供电电源输入端。图 4 按键复位电路湘潭大学兴湘学院8温度采集电路模块如图 5 所示。DSB8B20 的 2 脚接系统中单片机的 INT1 口,用于将采集到的温度送入单片机中处理,2 脚和 3 脚之间接一个 4.7K 上拉电阻,即可完成温度采集部分硬件电路。DS18B20 内部结构主要由四部分组成:64 位光刻 ROM、温度传感器、非挥发的温度报警触发器 TH 和 TL、配置寄存器。DS18B20 中的数据转换如下表 2.1。表 1 DS18B20 温度数据转换表Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0LS Byte 23 22 21 20 2-1 2-2 2-3 2-4Bit15 Bit14 Bit13 Bit12 Bit11 Bit10 Bit9 Bit8MS Byte S S S S S 26 25 24这是 12 位转化后得到的 12 位数据,存储在 18B20 的两个 8 比特的 RAM 中,二进制中的前面 5 位是符号位,如果测得的温度大于 0,这 5 位为 0,只要将测到的数值乘于 0.0625 即可得到实际温度;如果温度小于 0,这 5 位为 1,测到的数值需要取反加1 再乘于 0.0625 即可得到实际温度。2.3 键盘的设计键盘采用 43 的行列式键盘,又叫矩阵式键盘。用 I/O 口线组成行、列结构,按键设置在行列的交点上。43 的行列结构可组成 12 个键的键盘。因此,在按键数量较多时,可以节省 I/O 口线。本例中还有三个独立按键。2.3.1 行列式键盘和独立键盘的接口设计行列式键盘和独立按键的接口方法,直接接口于单片机的 P1 口上,如图 6 所示,其中 S0-S9 为数字键输入,S10 和 S11 为加减键。最下面三个为独立按键。图 5 温度采集模块湘潭大学兴湘学院92.3.2 矩阵键盘和独立键盘的工作原理键盘设置在行、列线的交点上,行、列线分别连接到按键开关的两端。行线通过上拉电阻接5V,被拉在高电平状态。独立键盘为按键 S12-S14,分别对应“设置”“升温” “降温”三个功能,按键的一端接+5V,一端接地,当有按键按下时,对应的口被拉低电平。对键盘的工作过程可分两步:第一步时 CPU 首先检查独立按键上是否有键按下;如果按了设置键,表明开始设置温度,进入温度设置状态,开始扫描矩阵键盘。当扫描到设置键按下时,退出设置温度及退出矩阵键盘扫描。2.4 液晶显示的设计2.4.1 液晶 1602 的接口电路 液晶显示的接口方法,直接接口于单片机的 I/O 口上,如图 7 所示。2.4.2 液晶 1602 工作原理显示采用 DMC1602A LCM,采用标准的 14 脚接口,其中:图 6 行列式键盘和独立键盘的接口设计图 7 液晶 1602 的接口电路湘潭大学兴湘学院10第 1 脚:GND 为地电源第 2 脚:VCC 接 5V 正电源第 3 脚:VL 为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影” ,使用时可以通过一个 10K 的电位器调整对比度第 4 脚:RS 为寄存器选择,高电平时选择数据寄存器,低电平时选择指令寄存器第 5 脚:RW 为读写信号线,高电平时进行读操作,低电平时进行写操作。当 RS 和RW 共同为低电平时可以写入指令或者显示地址,当 RS 为低电平 RW 为高电平时可以读忙信号,当 RS 为高电平 RW 为低电平时可以写入数据。第 6 脚:EN 端为始能端,当 E 端由高电平变成低电平时,液晶模块执行命令第 714 脚:D0D7 为 8 位双向数据线第 15 脚:背光源正极第 16 脚:背光源负极1602 液晶模块内部的控制器共有 11 条控制指令它的读写操作、屏幕和光标的操作都是通过指令编程来实现的。指令 1:清显示,指令码 01H,光标复位到地址 00H 位置指令 2:光标复位,光标返回到地址 00H指令 3:光标和现实模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或右移。高电平有效,低电平则无效指令 4:显示开关控制。D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁指令 5:光标或显示以为 S/C:高电平时移动显示的文字,低电平时移动光标指令 6:功能设置命令 DL:高电平时为 4 位总线,低电平时为 8 位总线 N:低电平时为单行显示,高电平双行显示 指令 7:字符发生器 RAM 地址设置指令 8:DDRAM 地址设置指令 9:读忙信号和光标地址 BF:为忙标志,高电平表示忙,此时模块不能接受命令或者数据,如果为低电平表示不忙。指令 10:写数据指令 11:读数据湘潭大学兴湘学院112.4.3 液晶 1602 的其他参数(1)RAM 地址映射及标准字库表液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,图 4.3.2 是 1602 的内部显示地址。图 4.3.2 1602LCD 内部显示地址在对液晶模块的初始化中要先设置其显示模式,在液晶模块显示字符时光标是自动右移的,无需人工干预。每次输入指令前都要判断液晶模块是否处于忙的状态。(2)一般初始化(复位)过程延时 15mS写指令 38H(不检测忙信号)延时 5mS写指令 38H(不检测忙信号)延时 5mS写指令 38H(不检测忙信号)以后每次写指令、读/写数据操作均需要检测忙信号写指令 38H:显示模式设置写指令 08H:显示关闭写指令 01H:显示清屏写指令 06H:显示光标移动设置写指令 0CH:显示开及光标设置湘潭大学兴湘学院122.5 DA 转换电路设计2.5.1 DA 转换器的选择温度数据经过 DS18B02 传给单片机后,通过 PID 运算得出相应的数据,然后送到DA 转换器变成模拟量输出来控制压缩机的转速。此次选择美国国家半导体公司生产的DAC0832 芯片。2.5.2 DAC0832 简介DAC0832 是 8 分辨率的 D/A 转换集成芯片。与微处理器完全兼容。这个 DA 芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。D/A 转换器由 8 位输入锁存器、8 位 DAC 寄存器、8 位 D/A 转换电路及转换控制电路构成。2.5.3 DAC0832 结构D0D7:8 位数据输入线,TTL 电平,有效时间应大于 90ns(否则锁存器的数据会出错);ILE:数据锁存允许控制信号输入线,高电平有效;CS:片选信号输入线(选通数据锁存器) ,低电平有效;WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于 500ns)有效。由ILE、CS、WR1 的逻辑组合产生 LE1,当 LE1 为高电平时,数据锁存器状态随输入数据线变换,LE1 的负跳变时将输入数据锁存;XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于 500ns)有效;WR2:DAC 寄存器选通输入线,负脉冲(脉宽应大于 500ns)有效。由 WR2、XFER的逻辑组合产生 LE2,当 LE2 为高电平时,DAC 寄存器的输出随寄存器的输入而变化,LE2 的负跳变时将数据锁存器的内容打入 DAC 寄存器并开始 D/A 转换。IOUT1:电流输出端 1,其值随 DAC 寄存器的内容线性变化;IOUT2:电流输出端 2,其值与 IOUT1 值之和为一常数;Rfb:反馈信号输入线,改变 Rfb 端外接电阻值可调整转换满量程精度;Vcc:电源输入端,Vcc 的范围为+5V+15V;VREF:基准电压输入线,VREF 的范围为-10V+10V;图 8 DAC0832 引脚湘潭大学兴湘学院13AGND:模拟信号地DGND:数字信号地湘潭大学兴湘学院14第三章 空调温度控制设计在控制系统中,控制器最常用的控制规律是 PID 控制。PID 控制系统原理框图如图9 所示。系统由 PID 控制器和被控对象组成。3.1 PID 调节器控制原理 比 例微 分积 分 被 控 对 象Rin(k) Yout(k)+- +图 9 PID 控制系统原理框图PID 控制器是一种线性控制器,一种它根据给定值 rin(t)与实际输出值 yout(t)构成控制偏差:E (t)=rin(t)-yout(t)PID 控制就是对偏差信号进行比例、积分、微分运算后,形成一种控制规律。即,控制器的输出为:tDp dteTetktu01)()()()(或写成传递函数的形式:sTksEUGDp1)(左中, kp比例系数;Ti积分时间常数;T d微分时间常数。简单说来,PID 控制器各校正环节的作用如下:比例环节:成比例地反映控制系统的偏差信号 error(t),偏差一旦产生,控制器立即产生控制作用,以减小偏差。比例控制: Gc(s)= Kp 积分环节:主要用于消除静差,提高系统的无差度。积分作用的强弱取决于积分时间常数 Ti,Ti 越大,积分作用越弱,反之则越强。积分控制: Gc(s) = Kp/T is微分环节:反偏差信号的变化趋势(变化速率) ,并能在偏差信号变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。湘潭大学兴湘学院15微分控制: Gc(s) =KpT ds3.2 位置式 PID 算法 基本 PID 控制器的理想算式为式中u(t)控制器(也称调节器)的输出;e(t)控制器的输入(常常是设定值与被控量之差,即 e(t)=r(t)-c(t)) ;Kp控制器的比例放大系数;Ti 控制器的积分时间;Td控制器的微分时间。设 u(k)为第 k 次采样时刻控制器的输出值,可得离散的 PID 算式式中 , 。由于计算机的输出 u(k)直接控制执行机构(如阀门) , u(k)的值与执行机构的位置(如阀门开度)一一对应,所以通常称式(2)为位置式 PID 控制算法。位置式 PID 控制算法的缺点:当前采样时刻的输出与过去的各个状态有关,计算时要对 e(k)进行累加,运算量大;而且控制器的输出 u(k)对应的是执行机构的实际位置,如果计算机出现故障, u(k)的大幅度变化会引起执行机构位置的大幅度变化。3.3 数字 PID 参数的整定 PID 控制器的参数整定是控制系统设计的核心内容。它是根据被控过程的特性确定PID 控制器的比例系数、积分时间和微分时间的大小。PID 控制器参数整定的方法很多,概括起来有两大类:一是理论计算整定法。它主要是依据系统的数学模型,经过理论计算确定控制器参数。这种方法所得到的计算数据未必可以直接用,还必须通过工程实际进行调整和修改。二是工程整定方法,它主要依赖工程经验,直接在控制系统的试验中进行,且方法简单、易于掌握,在工程实际中被广泛采用。本设计采用 PID 归一整定法把对控制台三个参数(Kc、Ti、Td,)转换为一个参数 , 从而使问题明显PK简化。以达到控制器的特性与被控过程的特性相匹配,满足某种反映控制系统质量的性能指标。湘潭大学兴湘学院163.3.1 采样周期选择的原则1.根据香农采样定理,系统采样频率的下限为 fs=2fmax,此时系统可真实地恢复到原来的连续信号。 2.从执行机构的特性要求来看,有时需要输出信号保持一定的宽度。采样周期必须大于这一时间。3.从控制系统的随动和抗干扰的性能来看,要求采样周期短些。 4.从微机的工作量和每个调节回路的计算来看,一般要求采样周期大些。 5.从计算机的精度看,过短的采样周期是不合适的。 6.当系统滞后占主导地位时,应使滞后时间为采样周期的整数倍下表 4.1 列出了几种常见的被测参数的采样周期 T 的经验选择数据。 。表 4.1 采样周期的经验数据表被测参数 采用周期 T(s) 备注流量 15s 优先选用 1s压力 310s 优先选用 5s液位 68s温度 1520s 或纯滞后时间成分 1520s3.3.2 PID 参数对系统性能的影响表 4.2 PID 参数对系统性能的影响参数 图 作用 缺点P 加快调节,减少 稳态误差稳定性下降,甚至造成系统的不稳定I因为有误差,积分调节就进行,直至无差.消除稳态误差,提高无差度。加入积分调节可使系统稳定性下降,动态响应变慢。积分作用常与另两种调节规律结合,组成PI 调节器或 PID调节器。湘潭大学兴湘学院17D反映系统偏差信号变化率,具有预见性,能预见偏差变化的趋势,因此能产生超前的控制作用。可以减少超调,减少调节时间。微分作用对噪声干扰有放大作用,因此过强的加微分调节,对系统抗干扰不利。微分作用不能单独使用,需要与另外两种调节规蓄料目结合,组成PD 或 PID 控制.综上所述, (Kp、Ti、Td,)对系统的性能影响如表 4.3 所示:表 4.3 Kp、Ti 和 Td 对系统的影响影响 Kp Ti Td稳态性能可以减少静差,但不能消除消除静差,但不能太大配合比例控制,可以减少静差动态性能加快系统速度,但会引起震荡太小会不稳定,太大会影响性能太大和太小都会引起超调量大,过渡时间长。3.3.3 PID 计算程序 PID 调节规律的基本输入输出关系可用微分方程表示为:tDIPdteTetKtu0)()(1)()((4.5)式中 为调节器的输入误差信号,且)(te(4.6))()(tCrte其中: 为给定值, 为被控变量;tr为调节器的输出控制信号;)(u为比例系数;PK为积分时间常数;IT微分时间常数。D计算机只能处理数字信号,若采样周期为 T 第 n 次采样的输入误差为 ,且ne湘潭大学兴湘学院18,输出为 ,PID 算法用的微分 由差分 代替,积分)(nCren)(nudteTen1由 代替,于是得到dtt0)(TeK(4.7)TeunDniIPn 101写成递推形式为 1nnu= ni nnDiIP eTeTeK0 211)()()(= )2()( 211 nnnIn= 211 nnDPnInP eTKeeK= )()( I= DIP其中: )(1neKIIPIT)2()2( 2121 nnDnnDP eeKeK显然,PID 计算 只需要保留现时刻 以及以前的两个偏差量 和 。初始u 1ne2化程序初值 通过采样并根据参数 、 、 以及 、 和 计算021ne PDIKn 。nu根据输出控制增量 ,可求出本次控制输出为n+ = 1nuDIP1本设计采用 Ziegler-Nichols 提出的 PID 归一调整法,调整参数,主要是为了减少在线整定参数的数目,常常人为假定约束条件,以减少独立变量的个数,令:UT.0I5湘潭大学兴湘学院19UDT125.0式中 称为临界周期。在单纯比例作用下(比例增益由小到大) ,是系统产生等幅UT振荡的比例增益 ,这时的工作周期为临界周期 ,则可以得到K =nu )(.2.0)( 211 nnnnP eee= 5PPK= 211 nnDnIn式中 =0.2 , =1.25 8 IK从而可以调节的参数只有一个。可设计一个调整子程序,通过键盘输入改变 值,PK改变运行参数,使系统满足要求。下面对 PID 运算加以说明:1、所有的数都变成定点纯小数进行处理。2、算式中的各项有正有负,以最高位作为符号位,最高位为 0 表示为正数,为 1表示负数。正负数都是补码表示,最后的计算以原码输出。3、双精度运算,为了保证运算精度,把单字节 8 位输入采样值 和给定值 都nCnr变成双字节 16 位进行计算,最后将运算结果取成高 8 位有效值输出。4、输出控制量 的限幅处理。为了便于实现对晶闸管的通断处理, PID 的输出现nu在在 0250 之间。大于 250 或小于 0 的控制量 都是没有意义的,因在算法nu上对 进行限幅,即n= numaxmaxinii uPID 的计算公式采用位置式算法,计算公式为+1nu )2()( 211 nnDnInP eeKeK= DI湘潭大学兴湘学院20第四章 空调温度控制系统软件设计4.1 系统部件的软件设计方案一、每个模块的程序结构简单,任务明确,易于编写、调试和修改。二、程序可读行好,对程序的修改可局部进行,其它部分可以保持不变,便于功能扩充。三、对于使用频繁的子程序可以建立子程序库,便于多个模块调用。4.2 系统软件设计框图主 程 序温 度 采 集模块液晶显示模块键盘扫描模块温度控制模块图 9 系统软件设计框图如图 9 所示,根据设计要求,首先要确定软件设计方案,即确定该软件应该完成那些功能;其次是规划为了完成这些功能需要分成多少个功能模块,以及每一个程序模块的具体任务是什嫫。一般划分模块应遵循下述原则:1)每个模块应具有独立的功能,能产生一个明确的结果 。2)模块之间的控制参数应尽量简单,数据参数应尽量少。控制参数是指模块进入和退出的条件及方式,数据参数是指模块间的信息交换方式、交换量的多少及交换的频繁程度。3)模块长度要适中。模块太长时,分析和调试比较困难,失去了模块化程序结构的优越性;模块太短则信息交换太频繁,也不合适。湘潭大学兴湘学院214.3 主程序和子程序流程图设计4.3.1 主程序流程图采集温度查询温度温度采集和比较调显示程序键盘输入设定值PID 数据处理温度控制程序要控制温度?与设定值相等?否是是 否主程序开始图 10 主程序设计框图湘潭大学兴湘学院224.3.2 液晶 1602 流程图测试显示屏幕是否忙清除屏幕送显示地址送显示数据返回图 11 显示程序设计框图4.3.3 温度转换子程序流程图延时初始化读取温度值启动温度转换开始初始化 DS18B20跳过读序列号 跳过读序列号图 12 温度转换子程序设计框图湘潭大学兴湘学院234.3.4 键盘处理子程序流程图升温键 降温键Y设置键YN开 始检测独立按键矩阵键盘扫描程序升高温度 降低温度液晶显示检测设置键是否按下N图 13 键盘处理子程序设计框图湘潭大学兴湘学院24结束语在刘老师的耐心指导下,经过几个月的不断学习和努力,我的毕业设计终于接近完成了。本次设计基于单片机和 DS1820 的空调温控系统,系统采用单总线技术,按照DS18B20 的通信协议,由主机向 DS18B20 发送命令,读取 DS18B20 转换的温度,通过PID 算法,可以实现对室内温度的精确调节和控制。本说明书介绍了用单片机 AT89S51 控制,DS18B20 和 DAC0832 等芯片的使用方法以及各单元电路的设计和单片机的接口技术。最后还给出系统的软件的设计过程,使用了 C 语言进行程序设计。本文是采用模块化的方式进行叙述,对各模块的设计进行了比较详细地阐述。在这几周的时间里,我和指导老师经过了很多次交流,通过和老师的交流使我学会了很多设计技巧及方法.有不懂的地方及遇到自己难以解决的问题便向老师请教,老师每次都是不厌其烦的耐心指导我,并一步一步把我引向成功.我在老师那里不仅学到了很多额外的知识,同时也学到了不少解决问题的方式方法,在此我非常感谢帮助过我的指导老师刘老师.同时还要感谢教育和指导过我的所有老师,你们给予我的不仅仅是知识,还有你们对知识孜孜不倦的追求精神和对生活的积极向上态度,使我终身受益。我将在以后的工作中继续努力,不断学习,努力提高自己。我愿在未来的学习和研究过程中,以更加丰厚的成果来答谢曾经关心、帮助和支持过我的所有领导、老师、同学和朋友,并表示衷心感谢!经过这一次毕业设计,我学了不少的知识,学会了怎样查阅资料和利用工具书,以及熟练地使用 Altium Design 仿真软件和 KEIL 开发工具。通过这次毕业设计,我更加深刻地认识到只有将书本与具体的实践相结合,才会有真正的收获,才能巩固自已的所学,认识到自己的不足。湘潭大学兴湘学院25参考文献1 康华光,陈大钦. 模拟电子电路M 北京:高教育出版社,2004:335-336.2 赵茂泰. 智能仪器原理及应用M 北京:电子工业出版社,2006:130-132.3 黄贤武,郑筱霞. 传感器原理与应用M 成都:电子科技大学出版社,高等教育出版社,2005:76-108.4 清源计算机工作室 . Protel99SE 原理图与 PCB 及仿真M 北京:机械工业出版社,2005:113-1225 黄坚. 自动控制原理及其应用M 北京:高等教育出版社,2004:246-273.6 张晓华. 控制系统数字仿真欲 CADM 北京:机械工业出版社,2003:124-140.7 王幸之 ,钟爱琴 ,王雷,王闪. AT89 系列单片机原理及接口技术M 北京:北京航天大学出版社,2004:489-504.8 李广弟,朱月秀,王秀山. 单片机基础M.北京:北京航空航天大学出版社,2006:15-40.9 赖寿宏. 微型计算机控制技术M.北京:机械工业出版社,2006:91-111.10何立民.MCS-51 系列单片机应用系统设计系统配置与接口技术M.北京:北京航空航天大学出版社,1999:10-20111李华主编.MCS-51 系列单片机实用接口技术M.北京:北京航空航天出版社,1996:23-15412戴佳,戴卫恒.51 单片机 C 语言应用程序设计实例精讲M.北京:电子工业出版社,2007:10-25613凌艺春主编.电子基本知识及技能M.北京:中国电力出版社,2006:101-105
收藏