




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的自动温控电风扇设计 JIANGXI AGRICULTURAL UNIVERSITY 本 科 毕 业 论 文(设 计)题目: 基于单片机的自动温控电风扇设计 学 院: 工 学 院 姓 名: 刘 成 伟 学 号: 20061148 专 业: 电子信息工程 年 级: 信工062 指导教师: 赵进辉 职 称: 讲师 二0一一年五月I摘 要在日常生活中,单片机得到了越来越广泛的应用。它体积小、重量轻、集成度高、抗干扰能力强、性价比高,尤其适合应用于小型的自动控制系统中。电风扇起停的自动控制,能够解决夏天人们晚上熟睡时,由于夜里温度下降而导致受凉,或者从睡梦中醒来亲自开关电风扇的问题,具有重要的现实意义。本文从此目的出发利用AT89S51单片机设计了自动温控电风扇系统,巧妙的利用了单片机技术、温度传感器技术,根据温度变化,通过继电器实现风扇的自动控制。本系统通过DS18B20温度传感器时时采集温度,并用四位数码管时时显示温度,当温度高于20时,自动打开电风扇;低于20时自动关闭电风扇。还可以通过按键设定报警的上、下限温度,实现当温度过高或过低时,蜂鸣器发出声音报警提醒人们注意避暑或防止受凉。经过分析子硬件电路与软件设计,并通过实验证明了该系统可靠性高,反应灵敏,具有较高的实用价值。关健词:AT89S51;DS18B20;温度显示;继电器;智能控制AbstractIn daily life, the microcontroller has been more widely used. It is small, light weight, high integration, anti-interference ability, cost-effective, particularly suitable for small automatic control system. Automatic control of fan starts and stops, can solve the summer people sleep at night when the temperature dropped as a result of cold at night, or wake up in person from the fan switch problem has important practical significance. Starting from the purpose of this paper AT89S51 microcontroller design using automatic temperature control electric fan system, clever use of microcontroller technology, temperature sensor technology, according to temperature changes, through the automatic control of the fan relays. Temperature sensor of the system from time to time through the acquisition DS18B20 temperature, and from time to time with four digital display temperature, when the temperature is higher than 20, the fans automatically turn on; lower than 20, electric fans turn off automatically. You can also set the alarm button, the lower the temperature, to achieve when the temperature is too high or too low, the buzzer sounds the alarm to draw attention to the summer or to prevent the cold. After analysis of hardware and software sub-design, and the experiment proved the high reliability, responsive, and has high practical value.朗读显示对应的拉丁字符的拼音字典Key words: AT89S51;DS18B20;Temperature display;Relay;Intelligent control目 录 1 绪 论11.1 引言11.2 自动温控系统概述11.2.1 自动温控系统的应用和发展11.2.2 传统自动温控技术21.3 家用电风扇的发展21.4 课题的设计目的和意义32 系统主要硬件电路设计42.1 系统整体设计框图42.2 AT89S51介绍及说明62.2.1 AT89S51单片机电源电路72.3 单片机的复位电路和时钟电路72.4 数字温度传感器模块设计82.4.1 DS18B20介绍82.5 键盘输入模块92.6 继电器控制电路102.6.1 继电器简介及工作原理102.7 蜂鸣器报警电路112.8 温度显示与控制模块123 软件设计与说明143.1 系统方案设计143.2 主程序流程图143.3 数字温度传感器模块程序流程图153.4 键盘描扫程序163.5系统调试与测试16设计总结17参考文献18附录19附录A 系统与原理图19附录B 系统与原理PCB图19附录C 实物图19附录D 程序清单20致谢291 绪 论1.1 引言虽着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食晶、石油等各个行业。传统的温度采集方法不仅费时费力,而且精度差,单片机的出现使得温度的采集和数据处理问题不能够得到很好的解决。温度是工业对象中的一个重要的被控参数1。本系统采用MCS-51单片机设计一个温控系统,具有对环境温度进行实时测量,当外界温度高于设定最高温度时,启动风扇降温;当外界温度低于指定最低温度时,将发出报警声。温控系统用四位LED数码管显示测量的实时温度,可以设定最高限报警温度值和最低报警温度值。温度测量采用数字温度传感器DS18B20,DS18B20是美国DALLAS半导体公司推出的一种改进智能温度传感器2。降温控制系统采用家用电风扇,温控系统的温度显示和温度的设定直接采用综合实训板上的显示和键盘。该系统体积小、重量轻、价格低、可靠性高、耗电少和灵活性强,将会有更广阔的开发1,2前景。在日常生活中,单片机得到了越来越广泛的应用。它体积小、重量轻、集成度高、抗干扰能力强、性价比高,尤其适合应用于小型的自动控制系统中。电风扇起停的自动控制,能够解决夏天人们晚上熟睡时,由于夜里温度下降而导致受凉,或者从睡梦中醒来亲自开关电风扇的问题,具有重要的现实意义。本文从此目的出发利用AT89S51单片机设计了自动温控电风扇系统,当采集到的温度高于20时,启动风扇降温,当温度降到20以下后,风扇自动停止运转。还可以设定一个上限温度和一个下限温度,实现当温度高于上限温度或低于下限温度时,蜂鸣器发出声音报警提醒人们注意避暑或防止受凉。1.2 自动温控系统概述1.2.1 自动温控系统的应用和发展 随着电子技术以及应用需求的发展,单片机技术得到了迅速的发展,在高集成度,高速度,低功耗以及高性能方而取得了很大的进展。单片机系统的开发麻用给现代业测控领域带来了一次新的2,5技术革命,自动化、智能化均离不开单片机的应用。将单片机控制方法运用到温度控制系统中,可以克服温度控制系统中存在的严重滞后现象,同时在提高采样频率的基础上可以很大程度的提高控制效果和控制精度。温度控制系统广泛应用于社会生活的各个领域,如家电、汽车、材料、电力电子等,常用的控制电路根据应用场合和所要求的性能指标有所不同,在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人员努力解决的问题5。这类控制对象惯性人,滞后现象严重,存在很多不确定的因素,难以建立精确的数学模型,从而导致控制系统性能不佳,甚至出现控制不稳定、失控现象。1.2.2 传统自动温控技术传统的继电器调温电路简单实用,但由于继电器动作频繁,可能会因触点不良而影响正常工作。控制领域还人量采用传统的PID控制力方式,但PID控制对象的模型难以建立,并且当扰动因素不明确时,参数调整不便仍是普遍存在的问题。而采用数字温度传感器DS18B20,因其内部集成了A/D转换器,使得电路结构更加简单,而且减少了温度测量转换时的精度损失,使得测量温度更加精确9。数字温度传感器DS18B20只用一个引脚即与单片机进行通信,大大减少了接线的麻烦,使得单片机更加具有扩展性2。由于DS18B20芯片的小型化,更加可以通过单跳数据线就可以和主电路连接,故可以把数字温度传感器DS18B20做成探头,探入到狭小的地方,增加了实用性。更能串接多个数字温度传感器DS18B20进行范围的温度检测。以电风扇为来来说:以往电风扇多采用机械方式进行控制,功能少,噪音大,各档的风速变化大,随着科技的发展和人们生活水平的提高,产品趋向与自动化、智能化、环保化、人性化,于是产生了微机控制的智能电风扇,该产品实现了家电产晶的更新换代,提高产品的附加值,使产品更具有人性化。本系统设计一个温控系统,用二位LED数码管显示测量的实时温度,可以设定最高限报警温度值和最低限报警温度值。再加上继电器控制模块,用它来控电风扇,一个自动温控电风扇便宜可以轻松实现。1.3 家用电风扇的发展电风扇曾一度被认为是空调产品冲击下的淘汰品,其实3并非如此,市场人士称,家用电风扇并没有随着空调的普及而淡出市场,近两年反而出现了市场销售复苏的态势。其主要原因:一是风扇和空调的降温效果不同空调有强大的制冷功能2,可以快速有效地降低环境温度,但电风扇的风更温和,更加适合老人儿童和体质较弱的人使用;二是电风扇有价格优势,价格低廉而且相对省电,安装和使用都非常简单。尽管电风扇有其市场优势,但传统电风扇还是有许多地方应当进行改良的,最突出的缺点是它不能根据温度的变化适时调节风力磊小,对于夜间温差大的地区,人们在夏夜使用电风扇时可能遇到这样的问题:当凌晨降温的时候电风扇依然在工作,可是人们因为熟睡而无法察觉,既浪费电资源又容易引起感冒,传统的机械定时器虽然能够控制电风扇在工作一定后关闭,但定时范围有限,且无法对温度变化灵活处理。鉴于以上方而的考虑,我们需要设计一种智能电风扇控制系统来解决这些问题。1.4 课题的设计目的和意义在许多场台,风扇仍是主要的散热降温设备,很多场台都希望风扇的转速具有智能性,能够随着温度的变化自动控制。为解决这一问题。本文提出了一种采用温度传感器测温,利用单片机控制,自动在相应的温度时作出风扇起停及超出范围报警等动作的系统。该系统动作准确,精确度高,能取得良好的节能效果。本文设计了一种基干AT89S51单片机的风扇智能控制系统,根据温度的变化,通过继电器实现风扇的自动控制。分析子硬件电路与软件设计,并通过实验证明了该系统可靠性高,反应灵敏,具有较高的实用价值,更具有人性化。 2 系统主要硬件电路设计2.1 系统整体设计框图本系统由单片机、温度传感器、继电器、按键电路、数码管、蜂鸣器及其他一些外围器件组成,系统结构框图如图1所示。在系统中,单片机通过检测温度传感采集来的温度并在数码和上显示出来,然后作出相应的处理,当温度高于20时,单片机的P2.1引脚输出低电平,继电器线圈得电,其对应的常开触电闭合,电风扇电路导逋,电风扇开始转动:当温度低于20时,单片机的P2.1引脚输出高电平,继电器线圈失电,其对应的常开触电打开,电风扇电路断开,电风扇停止转动同时在单片机的P3.7引脚连一十蜂鸣器,当温度高于敲定的高温度限或低于设定的低温限时,蜂鸣器报警。在系统运行过程中,因干扰或其他意外造成死机时,可用复位电路进行复位,以保证系统可以安全正常运行。AT89S51按键输入温度采集DS18B20时钟电路复位电路风扇执行数码管显示继电器控制蜂鸣器报警图1 系统结构框图2.2 AT89S51介绍及说明根据设计要求设定AT89S51为中央处理器,它是一种低功耗、高性能的处理器。作为整个控制系统的核心,AT89S51内部已包含了定时器、程序存储器、数据存储器等硬件,其硬件能符合整控制系统的要求,不需要外接其他存储器芯片和定时器件,方便地构成一个最小系统12。整个系统结构紧凑,抗干扰能力强,性价比高,是比较合适的方案。 2.2.1 AT89S51主要特性及引脚说明AT89S51是一个低功耗高性能单片机,如图2所示,它共有40个引脚,32个外部双向输入/输出(I/O)端口,2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89S513可以按照常规方法进行编程,也可以在线编程。 图2 AT89S51引脚图资料来源:陈忠半,哇仁武.单片机基础与最小系统实践M北京航空航天大学出版社,2007管脚说明10:VCC:供电电压。GND:接地。PO口:PO口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。PO能够用于外部程序数据存 储器,它可以被定义为数据/地址的第八位。 Pl口:P1口是一个内部提供上拉电阻的8位双向I/O口,Pl口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口: P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P3口:P3口管脚是8个带内部,卜拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89S51的一些特殊功能口,如下表所示:P3口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INTO(外部中断0)P3.3 /INT1(外部中断1)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当IEA保持低电平时,则在此期间外部程序存储器 ( OOOOH-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此问内部程序存储器。XTALl:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。2.2 电源电路电路主要分为:变压、整流、滤波、稳压四个部分。电流进入电路,通过一个220V变15V的电源变压器把220V的交流电压变为15V的交流电压,变胜器次级线圈输出的15V交流电压经过全桥进行全波整流,C1滤波,7805稳压后,输出稳定的+5v直流工作电压。系统电源电路如图3: 图3 电源电路图2.3 单片机的复位电路和时钟电路2.3.1 复位电路通过某种方式, 使单片机内各寄存器的值变为初始状态的操作称为复位。如图4所示,在本电路中,AT89S51单片机在时钟电路工作以后, 在RST端持续给出2个机器周期(24个时钟周期)的高电平就可以完成复位操作7。 图4 单片机复位电路2.3.2 时钟电路 单片机的时钟信号用来提供单片机内部各种操作的时间基准,时钟电路用来产生单片机工作所需要的时钟信号。单片机内部有一个高增益的反向放大器,其输入端X1和X2用于外接晶体和电容,以构成自激振荡器7,其发出的脉冲直接送入内部的时钟电路。单片机时钟电路如图5所示:图5 单片机时钟电路2.4 数字温度传感器模块设计在选定单片机类型后,通常还要对一些严重影响系统性能指标的器件,如传感器进行选择。有时一个设计合理的温控系统往往因为传感器的限制而达不到应有的效果。该电路的根本任务是温度的实时测量。因此,选用一块好的温度传感器是本设计的关键。典型的温度温控系统是由模拟温度传感器、A、D转换电路和单片机组成。但是由于模拟温度传感器输出为模拟信号,必须经过A/D转换环节获得数字信号后才能与单片机等微处理器接口,使得硬件电路结构复杂,成本较高。近年来,由于以DS18B205为代表的新型单总线数字式温度传感器的突出优点使得它得到充分利。2.4.1 DS18B20介绍DS18B20 内部结构土要由四部分组成5: 64位光刻ROM、温度传感器非挥发的温度报警触发器TH和TL、配置寄存器。 DS18B20的测量温度范围是-55+125。该温度传感器的输出温度数据可与摄氏度校准,使用查找表或转换规则就可计算温度值。它采用单根信号线,既传输时钟,又传输数据,而且数据传输是双向的,因此具有节省I /O口线资源、结构简单、成本低廉、便于总线扩展和维护等诸多优点2,5。它可以直接将模拟温度信号转化为数字信号,降低了电路的复杂程度,提高了电路的运行质量。2.4.2 DS18B20的封装方式 DS18B20采用3脚PR35封装或8脚SOIC封装,本设计采用的是3脚PR35封装2。其结构图如图6所示:DS18B20引脚定义:(1)DQ为数字信号输入/输出端;(2)GND为电源地;(3)VDD为外接供电电源输入端(在寄生电源接 线方式时接地)。 资料来源:周育才,饶洪德.基于DS18820分组方式测温系统设计M.计算机信息出版社,2007:127DS18B201 2 3GND DQ VDD图6 PR-35封装 2.4.3 DS18B20的功能及使用说明DS18B20数字温度传感器可以完成如下的功能2,5,9:(1) 采用采用AT89S51单片机和DS18B20温度传感器通信,控制温度的采集过程和进行数据通信;(2) 提供DS18B20的使用外围电路温度显示LED电路以及DS18B20和单片机的通信接口电路;(3) 利用发光二极管指示系统的工作状态,DS18B20温度传感器内置温度上下限;(4) 编写程序,完成单片机对温度数据的采集过程以及与DS18B20数据传输过程的控制。图7 DS18B20温度传感器接线图如图7 DS18B20温度传感器接线图:主机(单片机)控制DS18B20完成温度转换必须经过三个步骤9:每一次读写之前都要对DS18B20进行复位操作,复位成功后发送一条R01指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求丰CPU将数据线下拉500微秒,然后释放,当DS18B20收到信号后等待1660微秒左右2,5,后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。部分温度值与DS18B209输出的数字量对照表如下表1:表1 DS18B20数字量对照表温度温度输出(二进制)温度输出(十六进制)+850000 0101 0101 00000550H+25.6250000 0001 1001 00010191H+10.1250000 0000 1010 001000A2H+0.50000 0000 0000 10000008H+00000 0000 0000 00000000H-0.51111 1111 1111 1000FFF8H-10.1251111 1111 0110 1110FF5EH-25.6251111 1111 0110 1111FF6FH-551111 1100 1001 0000FC90H资料来源:马云蜂.单片机与数字温度传感器DS18B20的接口设计M.计算机测量与控制2.5 键盘输入模块2.5.1 键盘的选择与原理键盘的基本工作原理:键盘是单片机应用系统中不可缺少的设备,人们通过它往计算机中传递信息。常用的键盘电路有两种:独立式键盘和矩阵式键盘。本设计采用的是独立式键盘独立式键盘:最简单的键盘为独立式键盘6,每个键对应I/O端口的一位,没有键闭合时,I/O湍口各位均处于高电平。当有一个键被按下时,就使对应位接地成为低电平。而其他位仍为高电平。这样,只要CPU检测到T/O端口的某一位为“0”,便可以辨别出对应键已经被按下。2.5.2 键盘电路根据所需按键个数、I/O引脚输出级电路结构以及可以利用的I/O引脚数量,确定键盘电路7形式。本方案有3个按键,又考虑到I/O 口的数量,采用独立式键盘电路。3个按键分别定义如下:设定键(S2):按下时,温度显示设定温度,并可改变设定温度; +按键(S3):改变设定温度使设定温度增加; -按键(S4):改变设定温度使设定温度减小;如图8所示: 图8 键盘电路2.6 继电器控制电路 2.6.1 继电器简介及工作原理单片机是弱电器件9,风扇的工作电压为220V。因此单片机不能直接控制风扇,这就需要继电器,使得强电与弱电隔离,实现弱电控制强电。继电器采用JZC-33F3,动作电压为5v。它有一组常开触点,一组常闭触点,这里我们只需要用一组常开触点即可。工作原理:这里的继电器由PNP型三极管驱动。当温度高于温度上限时,单片机P21输出0,三极管导通,继电器线圈得电,触点闭台,电风扇电路接通,风扇开始转动。温度低于设定值下限时,P21输出1,三极管截止,继电器中没有电流,触点保持断开,风扇电路断开,风扇停转。继电器线圈两端反相并联着一个二极管,起到吸收反相电动势的功能,保护三及管。2.6.2 继电器作用实现弱电控制强电,单片机是弱电器件,一般情况下它的工作电压为5 V,电风扇工作所需电压为220 V,属于强电,强电不能和弱电有任何电器接触,防止强电进入到单片机内,继电器起到隔离作用9,12。由于单片机是一个弱电器件,它的工作电压是5 V,驱动电流在mA级以下,而现在要把它用于一些大功率场合,控制电风扇,显然是不行的。所以,就要有一个环节来衔接,这个环节就是所谓的“功率驱动”,继电器驱动就是一个典型的、简单的功率驱动环节3。继电器驱动就是单片机与其他大功率负载接口,起到控制作用,三极管起到放大作用。 这里继电器由相应的三极管来驱动,当温度高于20时,给单片机一个命令 P21,单片机P21引脚输出低电平,三极管导通,继电器线圈得电有电流经过,常开触点闭合,电风扇电路接通,电风扇开始转动。温度低于20时,执行CLR P21,单片机P21引脚输出高电平,三极管截至,继电器线圈中没有电流经过,常开触点保持原断开状态,电风扇电路断路,电风扇不能转动。继电器线圈两端反相并联的二极管起到吸收反向电动势的功能,保护相应的驱动三极管,实现自动控制时先把开关PLY1闭合。 继电器控制电路如图9所示: 图9 继电器自动控制电路2.7 蜂鸣器报警电路在单片机的P37引脚连接一个蜂鸣器报警器,可以实现当温度过高或过低时,蜂鸣器发出声音报警提醒人们注意避暑或防止受凉。蜂鸣器工作原理12简介:当控制端口通以不同频率及不同占空比的信号时蜂鸣器将发出不同强度及不同频率的声音。由于其具有比传统的喇叭体积小,价格低等优点,所以此次提示音电路选用蜂鸣器。如图 10所示: 图10 蜂鸣器报警电路2.8 温度显示与控制模块在单片机控制系统中,常用LED显示器10来显示各种数字和符号。这种显示器显示清晰,亮度高,接口方便,广泛用于各种控制系统中。2.8.1 LED显示灯介绍LED显示器在电路连接上有两种7,12形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳极型LED显示器;另一种是8个发光二极管的阴极都连在一起的,称为共阴极型LED显示器。本设计是对室内温度进行显示,一般用户室内温度是四位,所以我采用四位数码管显示,共阳极、动态显示方式。2.8.2 LED两种显示方式数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。(1)静态显示驱动静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5840根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性3。(2)动态显示驱动数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低3,8。LED显示电路图如图11所示:图11 LED显示电路3 软件设计与说明3.1 系统方案设计本文采用C语言进行编程,在程序中设置上下限温度。程序工作原理:单片机不断将当前温度与设定值比较,当超过设定范围时,及时转去执行超温处理或欠温处理程序,控制继电器的吸合、断开状态,从而控和风扇的起停。本方案按照功能的不同可以把系统软件部分分成六个模块,每个独立的模块通过联系程序联系起来,再与硬件联系,从而形成一个完整的控制系统。系统的丰要功能模块有:主程序、传感器温度检测模块、温度显示模块、按键控制模块、蜂鸣器报警模块、继电器控制模块。3.2 主程序流程图根据流程图编写程序是单片机在温度高于设定温度限时控制电风扇转动,低于设定低温限时控制电风扇停止,温度过高或温度过低,控制蜂鸣器发出响声,同时数码管时时显示温度。系统程序流程图如图12所示:图12 主程序流程图YNYNYN温度高于20高于温度上限低于温度下限继电器保护原状风扇不转继电器工作风扇转动蜂鸣器报警P2.1继电器输低电平DS18B20温度采集温度显示键盘输入开 始初始化程序AT89S51芯片 程序工作原理如下:开机后,系统开始初始化,再进行键盘扫描,判断否里有按键值键入,然后温度传感器开始采集温度并把数据传送到AT89S51芯片,然后在数码管上显示出来,再将当前采集到的温度与20进行比较,当温度高于20时,给单片机一个命令 P21,单片机P21引脚输出低电平,继电器线圈得电有电流经过,常开触点闭合,电风扇电路接通,电风扇开始转动;温度低于20时,继电器线圈中没有电流经过,常开触点保持原断开状态,电风扇电路断路,电风扇不能转动;再根据设定上下温度限的大小判断当温度高于上限温度或低于下限温度时,蜂鸣器发出声音报警。然后单片机不断将当前温度与设定值比较,当超过设定范围时,及时转去执行超温处理或欠温处理程序,控制继电器的吸合、断开状态,从而控和风扇的起停。3.3 数字温度传感器模块程序流程图本系统的运行程序采用C语言编写,采用模块化设计,整体程序由主程序和子程序构成。数字温度传感器模块程序流程图:开 始系统初始化进行测温设置参数初始化DS18B20启动DS18B20测温内部判断调用读子程序输出显示调用相应的控制程序调用相应的键值处理程序调用写子程序结 束 图13 数字温度传感器模块程序流程图如图13所示,丰机控制DS18B20完成温度转换工作必须经过三个步骤4,5:初始化、ROM操作指令、存储器操作指令。单片机所用的系统频率为12MHz。根据DS18B20初始化时序、读时序和写时序分别可编写4个子程序8:初始化子程序、写子程序、读子程序、显示子程序。3.4 键盘描扫程序键盘描扫程序完成键盘的描扫并根据确定的键值执行相应的功能,主要完成最低温度、最高温度的设定。3.5 系统调试与测试先利用Proteus和Keil软件进行仿真,设计印制板,加工好后选取器件进行焊接,编写程序,调试成功后通过下载线下载到单片机芯片中,组装整个系统,进行整体调试。 连接好电路后,用打火机在温度传感器AT18B20附近使温度升高,或者将冰块放在旁边使温度下降,检测电风扇是否能根据温度变化而实现自动起停,经实验,该系统能够实现电风扇的自动起停,而且反应灵敏,也能够实现报警功能,达到了预期的目的。 3.5.1 软件调试步骤1、首先打开Keil uVision3软件,进入软件的界面2、打开软件以后,新建一个项日并且保存3、然后再新建一个文件并且添加到项日里4、在文件中输入程序5、开始编译文件,查看是否有错,并且纠正错误6、程序正确后为目标1设置选项7、最后进行调试3.5.2 软硬件联调步骤1、首先将仿真器安装到电路板上2、并且与电脑USB口连接,然后接通电源3、运行桌面Keil uVision3软件,添加调试好的程序4、设置好F1标选项,选择串口波特率5、最后编译,运行调试直至成功实现功能4 设计总结系统主要以DS18B20为核心,学习单片机应用系统一与外同应用系统或部件组合的综合设计、分析与调试方法。学会分析与掌握专用芯片或器件的功能、控制方法和编程技巧,能根据专用芯片或部件的技术资料、读写时序要求设计硬件接几及软件编程,完成单片机的整个开发过程。该系统的难点是理解和掌握DS18B20的专用特性和功能,能根据厂商提供的技术资料,编制出相应的初始化程序、读写程序。调试程序时,重点分析和调试DS18B20的初始化及读写程序,严格按照技术资料提供的时序要求,检查时序的前后次序和延时时问,要结合能反映故障存在与否的参数变化、运行路径变化、显示内容变化等选择合适的观测点和观测对象,再运用适当的调试方法,快速地检验调试结果,由此分析和判断出故障点。程序采用模块化结构,分为系统初始化程序、主程序MAIN、温度采集程序写子程序以及延时程序。经过一个月的毕业实习,通过这次毕业设计使我们在这几年大学里所学的知识得以复习和巩固,同时也使我深刻认识到我们所学的内容是多么有限,学校生活的结束并不代表学习的结束,要想真止的有所发展,还将要不断的学习和进取。在这次设计中我学到了不少新知识,了解了很多的设计思想与方法,我也将继续努力,不断完善和充实自己。最后我们要感谢含辛茹苦、默默的在后而辅导我们的老师,我们的成功离不开你的默默的努力和鞭策,在以后的工作和学习过程中我们将牢记你们的指导和教诲,使自己在事业上有更好的发展!参考文献1魏水广.现代传感技术M.东北大学出版社,20012周育才.饶洪德,基于DS18820分组方式测温系统设计R.计算机信息出版社,2007.13刘基山.基于MCS-51电风扇智能调速器的设计D.电子质量,2004,104马忠梅.单片机的C语言应用程序设计M.北京航空航天大学出版社,19975马云蜂.单片机与数字温度传感器DS18B20的接口设计M.计算机测量与控制,2007 6余永权汁明慧,黄英,单片机控制系统中的应用M.电子工业出版社,20037纠张鑫.单片机原理与应用M.电子工业出版社,2005,88划同法,陈忠半,哇仁武.单片机基础与最小系统实践M.北京航空航天大学出版社,2007 9明德刚.DS18B20在单片机温控系统中的应用J.贵州人学学报,2006.210夏继强.单片机试验与实践教程M.北京航空航天大学出版社,200l11李华.MCS51系列单片机实用接口技术北京M.北京航空航天大学出版社,200312刘同法,陈忠平,眭仁武.单片机基础与最小系统实践M.北京航空航天大学出版社,200713童诗白.模拟电子技术基础.修订2版,北京高等教育出版社,198814阎石.数字电子技术基础.修订3版,北京高等教育出版社,198815胡汉才.单片机原理及其接口技术.第二版,清华大学出版社,200416张毅刚.单片机原理及应用.北京高等教育出版社,200017马忠梅.单片机C语言应用程序设计.第四版,北京航空航天大学出版社,200718张志良.单片机原理与控制技术. 北京机械工业出版社,200819刘勇.数字电路,电子工业出版社,200320夏路易电路原理图与电路板设计教程Protel99seM,北京希望电子出版社,200221王幸之AT89系列单片机原理及接口技术M,北京航天航空出版社,2006附 录附录A 系统与原理图附录B 系统与原理PCB图附录C 实物图附录D 程序清单(1)主程序/*程序名称:温控电风扇单片机程序*实现功能:自动温控电风扇系统,当温度高于20时,自动打开电风扇;*低于20时自动关闭电风扇。还可以实现当温度过高或过低时,蜂鸣器发出声音报警提醒人们注意避暑或防止受凉。*编写时间:2011-04-25*/#include /52系列单片机头文件#include ds18b20.h/*外围设备管脚定义*/sbit led=P36; /低温报警发光二极管sbit bell=P37;/报警蜂鸣器sbit k= P21; /继电器/*数码管显示*/sbit seg1=P24;sbit seg2=P25;sbit seg3=P26;sbit seg4=P27;/*按键*/sbit k1=P33;sbit k2=P34;sbit k3=P35;#define LED_ON led=0 /点亮报警发光二极管#define LED_OFF led=1 /息灭报警发光二极管#define BELL_ON bell=0#define BELL_OFF bell=1#define NULL10 /不显示#define N11 /负号,用于温度显示#define ON12/ON状态#define OFF13 /OFF状态#define G14unsigned char code discode=0xa0,/*0*/0xbb,/*1*/0x62,/*2*/0x2a,/*3*/0x39,/*4*/0x2c,/*5*/0x24,/*6*/0xba,/*7*/0x20,/*8*/0x28,/*9*/0xff,/*不显示*/0x7f,/*负号*/0xb0,/*ON*/0x74,/*F*/0x7f/*G*/;unsigned char i,count,set=0;bit Alarm_Flag=0;/报警开关,默认为关闭报警unsigned char temperturehigh=38;/温度上限unsigned char temperturelow=25;/温度下限/ms级延时函数/形参:ms,需要的延时时间/输出:无void delayms(unsigned int ms)unsigned int num;for( ; ms0; ms-)for( num=110; num0; num-);/*void Reset_WDT(void)WDTRST = 0x1E;WDTRST = 0xE1; */数码管显示函数,动态扫描的方法/输入形参:dat1,第一位数码管显示的数字.dat2,第二位数码管显示的数字/输入形参:dat3,第
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学冬季安全培训记录课件
- 2025年黄山黄山区消防救援大队招聘2人考前自测高频考点模拟试题及答案详解(网校专用)
- 安全培训效果考评方案模板课件
- 安全培训效果汇报课件
- 互联网合作协议书模板
- 2025年《中国烟草》杂志社有限公司(中国烟草总公司传媒中心)招聘考前自测高频考点模拟试题有答案详解
- 民宿行业市场分析与发展策略报告
- 广州莱拓的课件助手
- 2025湖南长沙市金海高级中学教师招聘34人考前自测高频考点模拟试题及答案详解(全优)
- 成本控制与预算管理标准化表
- 人教PEP版(2024)四年级上册英语-Unit 2 My friends 单元整体教学设计(共6课时)
- 《数星星的孩子》课件 部编版语文二年级上册
- 爆破安全培训课件
- 报废产品处置合同范本
- 水平定向钻施工专项方案施工技术方案
- 财务管理分析毕业论文
- 2025年《临床执业医师》考试试卷及参考答案
- BSCI验厂一整套文件(含手册、程序文件及表单汇编)
- 儿科泌尿道感染护理查房
- 2025年国防知识竞赛题库及答案(共300题)
- 胃肠胰神经内分泌肿瘤诊疗指南2025年版
评论
0/150
提交评论