




已阅读5页,还剩30页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于51单片机的智能温控风扇德州职业技术学院高职专业毕业论文论文题目:基于51单片机的智能温控风扇系 部: 电子与新能源技术工程系 专 业: 应用电子(太阳能光电方向) 姓 名: 学 号: 201202060117 指导教师: 二一四年十一月三日1摘要本设计为一种温控风扇系统,具有灵敏的温度感测和显示功能,系统选用STC89C52单片机作为控制平台对风扇转速进行控制。可由用户设置高、低温度值,测得温度值在高低温度之间时打开风扇弱风档,当温度升高超过所设定的温度时自动切换到大风档,当温度小于所设定的温度时自动关闭风扇,控制状态随外界温度而定。所设高低温值保存在温度传感器DS18B20内部E2ROM中,掉电后仍然能保存上次设定值,性能稳定,控制准确。关键词:单片机 温度传感器 智能控制Abstract This design is a kind of temperature control fan system, has the sensitive temperature senor and display function ,system STC89C52 monolithic as control the fan speed.High and low temperature can be set by the users, the measured temperature value between high and low temperature open the fan when the windshield ,when temperature exceeds the set temperature automatically switch to the wind ,when the temperature is less than the set temperature automatically shut down the fan, control state varies with temperature. Set high and low temperature values stored in internal temperature sensor DS18B20 E2ROM, after power off can still be saved the set value, stable performance and accurate control.Key words: Automatic control; single chip micromputer; temperature control目录第一章引言1第二章 整体方案的设计22.1 系统整体的设计22.2 方案论证22.2.1 温度传感器的选择22.2.2 控制核心的选择32.2.3 温度显示器件的选择32.2.4 调速方式的选择4第三章 硬件设计53.1 系统器件简介53.1.1 DS18B20单线数字温度传感器简介53.1.2 STC89C52单片机简介63.1.3 LED数码管简介113.2 电路设计123.2.1 开关复位与晶振电路123.2.2 独立按键连接电路133.2.3 数码管显示电路143.2.4温度采集电路15第四章 软件设计174.1程序设置174.2用KeilC51编写程序184.3用Proteus进行仿真184.3.1 Proteus简介184.3.2 本设计基于Proteus的仿真19第五章 系统调试245.1 软件调试245.1.1 按键显示部分的调试245.1.2 传感器DS18B20温度采集部分调试24第六章 硬件系统256.1 按键电路的调试256.2 温度传感器电路的调试256.3 电机电路的调试256.4 硬件调试遇到的问题25第七章 结论26参考文献27致谢28附录29附录1 PCB版图29附录2 原理图30附录3 程序代码31第一章引言电扇是人们日常生活中常用的降温工具,从开始的吊扇到现在的USB风扇无处不见电扇的踪迹。虽然如今空调已经走进千家万户,但是电扇的低位还是无可取代。作为一种节能环保,并且廉价简单的降温工具,电扇还在很多人家发挥着自己独特的作用。顺应时代潮流,各种多功能的风扇逐渐在取代传统风扇。 单片机作为一种智能化程度高,控制精度高,操作简单,廉价易得,抗干扰能力强等特点,越来越多的应用于智能化产品之中。 市场上智能风扇产品相继问世,制作方法也多种多样,功能也逐渐完善,普遍都具有了手动变速和定时关闭等功能。相对而言,具备人性化,智能化的风扇还是很少,使用也并不广泛,而且在电子工艺高度发展的今天,智能化的步伐也越来越快。尤其是中国这个高速发展的国家,电扇的智能化也该向前迈进一个步伐。在中国市场上风扇还是有一定的市场份额的,几乎每个家庭都有风扇,具备价格便宜,摆放轻便,体积灵巧等特点,使得风扇在中小城市以及乡村将来一段时间内仍然会占有市场的大部分份额,为提高风扇的市场竞争力,使之在技术含量上有所提高。满足智能化的要求,智能风扇很具竞争力。大学三年即将结束,为了检验自己的学习情况,我决定使用之前所学习到的硬件只是结合相关的软件基础来制作一个基于单片机的智能温控风扇。基于对人性化与智能化相结合的考虑,同时基于对价格的考虑,本设计决定制作一个基于52单片机的智能温控风扇。该风扇具有随温度自动调节风速的功能,并且在无人时可以自动关闭,而且可以根据每个人的不同情况来设定基准温度,从而实现了人性化与智能化的双重目标。第二章 整体方案的设计2.1 系统整体的设计 本设计的整体思路是:利用温度传感器DS18B20检测环境温度并直接输出数字温度信号给单片机STC89C52进行处理,在LED数码管上显示当前环境温度值以及预设温度值。其中预设温度值只能为整数形式,检测到的当前环境温度可精确到小数点后一位。同时采用PWM脉冲宽度调制方式来改变直流风扇电机的转速。并通过两个按键改变预设温度的大小,一个提高预设温度,另一个降低预设温度。系统结构框图如图1。 图1系统结构框图2.2 方案论证 本设计需要实现风扇直流电机的温度控制,使风扇电机能根据环境温度的变化自动启动和停止以及转速的自动调节,需要比较高的温度变化分辨率以及稳定可靠的换挡停机控制部件。2.2.1 温度传感器的选择在本设计中,温度传感器的选择有以下两种方案: 方案一:采用热敏电阻。热敏电阻的特性是阻值可以随温度的变化而变化,采用热敏电阻作为检测温度的核心部件,然后通过放大电路放大信号,进过AD0809数模转换将放大的微弱电压变化信号转化了数字信号输入单片机处理。 方案二:采用单总线数字温度计DS18B20。作为一款优秀的数字集成温度传感器,DS18B20可以直接检测并输出数字信号给单片机进行处理。 对于方案一,如果采用热敏电阻作为温度检测原件,则价格方面比较便宜,原件易得,但是热敏电阻的缺点显而易见,对于温度细微变化反应不敏感,而且在后续的转换和放大电路中还会造成失真和误差。并且热敏电阻的变化曲线非线性,每个热敏电阻都不同,还需要单独测试描绘出曲线,虽然可以通过软件来实现误差的修正,但是这回使得电路复杂性增加,并且在人体所在实际环境中难以检测到小的温度变化,所以这个方案在本设计中难以胜任。 对于方案二,由于数字式集成温度传感器DS18B20的高度集成化,大大降低了外接放大转换等电路的误差因数,温度误差变得很小,并且由于其检测温度的原理与热敏电阻检测温度的原理有着本质的不同,使得其温度分辨率极高。温度值在器件内部转化成数字量直接输出,简化了系统程序设计,又由于该温度传感器采用先进的单总线技术,与单片机的接口变的非常简洁,看干扰能力强,因此该方案适用于本系统。2.2.2 控制核心的选择 在本设计中采用STC89C52单片机作为控制核心,通过软件编程的方法进行温度检测和判断,并在其I/O口输出控制信号。AT89C52单片机工作电压低,性能高,片内含8K字节的只读程序存储器ROM和256字节的随机数据存储器RAM,它兼容标准的MCS-51指令系统,单片机价格便宜,适合本设计系统。2.2.3 温度显示器件的选择 方案一:采用四位功能共阳数码管显示温度,动态扫描显示方式。 方案二:采用液晶显示屏LCD显示温度。 对于方案一,该方案成本低廉,显示温度明确醒目,即使在黑暗空间也能清楚看见,功耗极低,同时温度显示程序的编写也相对简单,因而这种显示方式得到了广泛应用。但不足的地方是它采用动态扫描的方式,各个LED数码管是逐个点亮的,因此会产生闪烁,但由于人眼的视觉暂留时间为20MS,故当数码管扫描周期小于这个时间时人眼不会感觉到闪烁,因此只要扫描频率设置的当即可采用该方案。 对于方案二,液晶体显示屏具有显示字符优美,不但能显示数字还能显示字符甚至图形的优点,这是LED数码管无法比拟的。但是液晶显示模块价格昂贵,驱动程序复杂,从简单实用的原则考虑,本系统采用方案一。2.2.4 调速方式的选择 方案一:采用数模转换芯片DAC0832来控制,由单片机根据当前环境温度值输出相应数字量到DAC0832中,再由DAC0832产生相应模拟信号控制晶闸管的导通角,从而通过无极调速电路实现风扇电机转速的自动调节。 方案二:采用单片机软件编程实现PWM(脉冲宽度调制)调速的方法,PWM它是按一定的规律改变脉冲序列的脉冲宽度,以调节输出量和波形的一种调制方式,在PWM驱动控制的调节系统中最常用的的是矩形波PWM信号,在控制时需要调节PWM波的占空比。占空比是指高电平持续时间在一个周期时间内的百分比。在控制电机的转速时,占空比越大,转速就越快,若全为高电平占空比为100%时,转速达到最大。用单片机I/O口输出PWM信号时,有如下三种方法:利用软件延时。当高电平延时时间到时,对I/O口电平取反,使其变成低电平,然后再延时一定时间;然后当低电平延时时间到时,在对该I/O口电平取反,如此循环即可得到PWM信号。利用定时器。控制方法与(1)相同,只是在该方法中利用单片机的定时器来定时进行高低电平的转换,而不是用软件延时。应用此方法是编程相对复杂。在本设计中应用了此方法。利用单片机自带的PWM控制器。在STC12系列的单片机中自身带有PWM控制器,但本系统所用到的AT89单片机无此功能。 对于方案一,该方案能够实现对直流风扇电机的无极调速,速度变化灵敏,但是D/A转换芯片的价格较高,与其温控状态下无极调速功能相比性价比不高。 对于方案二,相对于其他用硬件或者软硬件相结合的方法实现对电机进行调速而言,采用PWM用纯软件的方法来实现调速过程,具有更大的灵活性,并可大大降低成本,能够充分发挥单片机的功能,对于简单速度控制系统的实现提供了一种有效的途径。综合考虑选用方案二。3第三章 硬件设计 系统主要硬件包括DS18B20温度传感器、STC89C51单片机、四位LED共阳极数码管、风扇直流电机。辅助元器件包括电阻、电容、电源、按键、拨码开关等。3.1 系统器件简介3.1.1 DS18B20单线数字温度传感器简介 DS18B20数字温度传感器,是采用美国DALLAS半导体公司生产的DS18B20可组网数字温度传感器芯片分装而成,它具有温型化、低功耗、高性能、抗干扰能力强、易配温处理器等优点,可直接将温度转化成串行数字信号供处理器处理。适用于各种狭小空间设备数字测温和控制领域。 此温度传感器是美国DALLAS半导体公司继DS1820之后推出的一种改进型智能温度传感器DS18B20。作为新一带数字检测元件,DS1820是世界上第一片支持 一线总线接口的温度传感器,在其内部使用了在板ON-BOARD专利技术。全部传感元件及转换电路集成在形如一只三极管的集成电路内。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在新一代的DS18B20体积更小、更经济、更灵活。使你可以充分发挥“一线总线”的优点。DS18B20可以程序设定912位的分辨率,精度为0.5C。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。测温范围为-55125最大分辨率可达0.0625。DS18B20减少了外部的硬件电路,直接输出数字信号,具有低成本和易使用的特点。DS18B20内部主要有四个部分:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。其管角有三个,其中DQ为数字信号端,GND为电源地,VDD为电源输入端.5 图2 DS18B20外形及管脚 图3 DS18B20内部结构3.1.2 STC89C52单片机简介 性能:(1)与MCS-51单片机产品兼容(2)8KFlash字节闪速存储器(3)1000次擦写周期(4)全静态操作:0Hz88Hz l (5)32个可编程I/O口线l (6)三个16位定时器/计数器(7)八个中断源(8)全双工UART串行通道(9)低功耗空闲和掉电模式(10)掉电后中断可唤醒VCC:+5V电源线; GND:接地线P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。 P1 口:是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),具体如下表1所示。在flash编程和校验时,P1口接收低8位地址字节。 表4 P1口功能 P2 口:P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也可接收高8位地址字节和一些控制信号。P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用,如上表2所示。在flash编程和校验时,P3口也接收一些控制信号。表5 P3口功能RST:复位输入。当震荡器复位器件时,要保持RST脚两个机器周期的高电平状态。 地址锁存允许/ 编程线,当访问片外存储器时,在P0.7P0.0引脚线上输出片外存储器低8位地址的同时还在线上输出一个高电平脉冲,其下降沿用于把这个片外存储器低8位地址锁存到外部专用地址锁存器,以便空出P0.7P0.0引脚线去传送随后而来的片外存储器读写数据。在不访问片外存储器时单片机自动在线上输出频率为1/6晶振频率的脉冲序列。 :外部程序存储器ROM的选通信号。在由外部程序存储器取指期间,每个机器周期两次有效,但在访问外部数据存储器时,这两次有效的信号将不出现。 :允许访问外部存储器/编程电源线。当保持低电平时,则在此期间允许使用片外程序存储器,不管是否有内部程序存储器。当保持高电平时,则允许使用片外程序存储器。当FIASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1和XTAL2:片内振荡电路输入线,这两个端子用来外接石英晶体和微调电容,即用来连接单片机内OSC的定时反馈电路。 存储器结构:MCS-51器件有单独的程序存储器和数据存储器。外部程序存储器和数据存储器都可以64K寻址。 程序存储器:如果EA引脚接地,程序读取只从外部存储器开始。对于89S52,如果EA 接VCC,程序读写先从内部存储器(地址为0000H1FFFH)开始,接着从外部寻址,寻址地址为:2000HFFFFH。 数据存储器:STC89C52 有256 字节片内数据存储器。高128 字节与特殊功能寄存器重叠。也就是说高128字节与特殊功能寄存器有相同的地址,而物理上是分开的。当一条指令访问高于7FH 的地址时,寻址方式决定CPU 访问高128 字节RAM 还是特殊功能寄存器空间。晶振特性如图2所示,STC89C52 单片机有一个用于构成内部振荡器的反相放大器,XTAL1 和XTAL2 分别是放大器的输入、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器图6 自激振荡器原理图 定时器0 和定时器1 在STC89C52 中,定时器0 和定时器1 的操作与89C51 一样。定时器2 定时器2是一个16位定时/计数器,它既可以做定时器,又可以做事件计数器。其工作方式由特殊寄存器T2CON中的C/T2位选择(如表2所示)。定时器2有三种工作模式:捕捉方式、自动重载(向下或向上计数)和波特率发生器。工作模式由T2CON中的相关位选择。定时器2 有2个8位寄存器:TH2和TL2。在定时工作方式中,每个机器周期,TL2 寄存器都会加1。由于一个机器周期由12个晶振周期构成,因此,计数频率就是晶振频率的1/12。中断 STC89C52有6个中断源:两个外部中断(INT0 和INT1),三个定时中断(定时器0、1、2)和一个串行中断每个中断源都可以通过置位或清除特殊寄存器IE 中的相关中断允许控制位分别使得中断源有效或无效。IE还包括一个中断允许总控制位EA,它能一次禁止所有中断。定时器2可以被寄存器T2CON中的TF2和EXF2的或逻辑触发。程序进入中断服务后,这些标志位都可以由硬件清0。实际上,中断服务程序必须判定是否是TF2 或EXF2激活中断,标志位也必须由软件清0。下表2为中断允许控制寄存器功能。 图7 中断允许控制寄存器3.1.3 LED数码管简介 本系统选用四位LED数码管来进行温度显示。LED又称为数码管,它主要是由8段发光二极管组成的不同组合,其中ag为数字和字符显示段,dp为小数点的显示,通过ag这七个发光二极管点亮的不同组合,可以显示09和AF共16个数字和字母。LED数码管可以分为共阴极和共阳极两种结构,如图5所示。共阴极结构把8个发光二极管阴极连在一起,共阳极结构把8个发光二极管阳极连在一起。通过单片机引脚输出高低电平,可使数码管显示相应的数字和字母,这种使数码管显示字形的数据称字形码,又称段选码。 图8七段LED数码管表9 七段LED的段选码表一个共阴极数码管接至单片机的电路,要想显示数字“7”须a、b、c这三个显示段发光(即这3个字段为高电平)只要在P0口输入00000111(07H)即可。这里07H即为数字7的段选码。字形与段选码的关系见表9。3.2 电路设计3.2.1 开关复位与晶振电路单片机系统中,有两个非常重要的电路,一个是开关复位电路,用来对单片机本身和其外部扩展。I/O接口电路进行复位还有一个是晶振电路,用于产生谐振,使单片机得以工作。电路图如图10。 图10系统复位与晶振电路在单片机系统中,处单片机本身需要复位外外部扩展I/O接口电路也需要复位,因此需要一个包括上电和按钮复位在内的系统同步复位电路。单片机的XTAL1和XTAL2用来外界石英晶体和微调电容,连接单片机内OSC的定时反馈电路。如图所示,当按下按键开关是系统复位一次。其中电容C1、C2为20pF,C3为10uF,电阻R1为10k,晶振为12MHz。 3.2.2 独立按键连接电路本设计还有三个独立按键,其中一端分别连接单片机的P2.0口、P2.1口和P2.2口,如图8所示。另一端接地,当按下时,当按下任一键时,P1口读取低电平有效。系统上电后,进入键盘扫描子程序,以查询的方式确定各按键,完成温度初值的设定。其接线图如图11:图11 按键电路3.2.3 数码管显示电路本设计制作中选用四位共阳极数码管作为显示模块。数码扫描显示电路是数字系统设计中较常用的电路,通常作为数码显示模块。数码扫描显示电路,其中每个数码段的8个段 a、b、c、d、e、f、g、h(小数点)分别连在一起,8个数码管分别有8个选通信号 K1、K2、K3、K4、K5、K6、K7、K8 来选择。被选通的数码管显示数据,其余关闭。如在某一时刻,K2 为高电平,其余选通信号为低电 平,此时,仅 K2 对应的数码管显示来自信号段的数据,其他 7个数码管呈现关闭状态。所 以,如果要在 8个数码管显示希望的数据,就必须使得 8个选通信号,分别单独选通。同时,在短信号输入端口假如希望在该对应数码管上显示的数据。于是随着选通信 号的循环变化,就实现了扫描显示的目的。它和单片机硬件的接口如图12。图12 数码管显示电路3.2.4温度采集电路DS18B20数字温度传感器通过其内部计数时钟周期来的作用,实现了特有的温度测量功能。低温系数振荡器输出的时钟信号通过由高温度系数振荡器产生的门周期而被计数,计数器预先置有与-55相对应的一个基权值。如果计数器计数到0时,高温度系数振荡周期还未结束,则表示测量的温度值高于-55,被预置在-55的温度寄存器中的值就增加1,然后这个过程不断重复,直到高温度系数振荡周期结束为止。此时温度寄存器中的值即为被测温度值,这个值以16位二进制形式存放在存储器中,通过主机发送存储器读命令可读出此温度值,读取时低位在前,高位在后,依次进行。由于温度振荡器的抛物线特性的影响,其内用斜率累加器进行补偿。DS18B20在使用时,一般都采用单片机来实现数据采集。只需将DS18B20信号线与单片机1位I/O相连,且单片机的1位I/O线可挂多个DS18B20,就可实现单点或多点温度检测。在本设计中将DS18B20接在P1.7口实现温度的采集。其与单片机的连接如图13。图13 温度采集电路第四章 软件设计 软件编写有C语言和汇编语言两种,这两种语言我都有所了解,两种语言各有特点。C语言具有编写简单,容易上手的特点,而且看起来条理清晰,便于修改能够快速准确的找到错误并进行改正。相对于汇编语言,作为一种低级的机器语言,读程序相对繁琐,但程序写好后意思明了,效率也要高于C语言编写的程序,具有很好的开发功能。 4.1程序设置 程序设计部分主要包括主程序、DS18B20初始化函数、DS18B20温度转换函数、温度读取函数、键盘扫描函数、数码管显示函数、温度处理函数以及风扇电机控制函数。DS18B20初始化函数完成对DS18B20的初始化,DS18B20温度转换函数完成对环境温度的实时采集,温度读取函数完成主机对温度传感器数据的读取及数据换算,键盘扫描函数则根据需要完成初值的加减设定,温度处理函数对采集到的温度进行分析出理,为电机转速的变化提供条件,风扇电机控制函数则根据温度的数值完成对电机转速及启停的控制。主程序流程图11:4.2用KeilC51编写程序 Keil C51是美国Keil Software公司开发的51系列兼容单片机C语言的软件开发系统与单片机汇编语言相比,C语言在不仅语句简单灵活而且编写的函数模块可移植性强,因而易学易用效率高。随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前使用较多的MCS-51系列单片机开发的软件。 Keil C51软件不仅提供了丰富的库函数,而且它强大的集成开发调试工具为程序编辑调试带来便利,在开发大型软件时更能体现高级语言的优势。在使用时要先建立一个工程,然后添加文件并编写程序,编写好后再编辑调试。Keil的使用界面如图14:图14 keil的使用界面4.3用Proteus进行仿真 4.3.1 Proteus简介 Proteus软件是来自英国Labcenter electronics公司的EDA工具软件。Proteus软件有十多年的历史,在全球广泛使用。它不仅和其它EDA工具一样有原理布图、PCB自动或人工布线及电路仿真的功能,而且更重要的功能是他的电路仿真是互动的,可以根据仿真实时观察到得现象验证设计的正确性及准确性并及时改变程序代码、原理图连接以及元件属性等。它还能配合系统配置的虚拟仪器来显示和输出,如示波器、逻辑分析仪等效果很好。 Proteus有4个功能模块智能原理图设计、完善的电路仿真功能、独特的单片机协同仿真功能以及实用的PCB设计平台。其内部元件库含有丰富的元件,支持总线结构以及智能化的连线功能,支持主流CPU如ARM、8051/52、AVR及其通用外设模型的实时仿真等,为单片机的开发应用等带来极大的便利。Proteus软件使用的主界面如图15:图15 Proteus软件使用界面4.3.2 本设计基于Proteus的仿真 首先启动Proteus软件并建立一工程,然后根据原理图调出相应的原件,再根据要求改变各原件的属性并把各个原件按原理图连接起来。在原理图绘制连接好后再把编译好的程序加载到其中。最后根据系统要实现的功能分步进行仿真。 把温度传感器DS18B20温度设置为23摄氏度,用键盘S2调节系统预设的温度为22摄氏度。点击开始按钮,系统开始仿真,待一段时间稳定后,观察风扇直流电机的转速,如图16所示。图16当把温度传感器DS18B20温度设置为24摄氏度,用键盘S2调节系统预设的温度为22摄氏度。点击开始按钮,系统开始仿真,待一段时间稳定后,观察风扇电机的转速,如图17所示。图17 当把温度传感器DS18B20温度设置为28摄氏度,用键盘S2调节系统预设的温度为22摄氏度。点击开始按钮,系统开始仿真,待一段时间稳定后,观察到直流风扇电机的转速,如图18所示。图18在上一步仿真的基础上(温度传感器DS18B20温度设置为33.4摄氏度,系统预设的温度为22摄氏度)用键盘S2调节系统预设温度至34摄氏度,此时可知系统预设温度大于温度传感器检测到的温度,观察到直流风扇电机的转速逐渐变慢,最后转速变为0,符合系统要实现的功能,如图19所示。图19 通过以上仿真可以看出,直流风扇电机在系统设定温度一定的情况下,其转速随着环境温度,温度传感器检测到的温度的增加而增大。当环境温度低于系统预设的温度时,风扇自动停止运转,实现了系统所设计的功能。当然在此没有实现风扇直流电机的无级调速,本系统实现的是电机在随环境温度变化的四个等级的速度变化,环境温度在一定小范围内变化风扇电机转速是不变的,只有超过了设定的某一界限时转速才会变化。第五章 系统调试5.1 软件调试5.1.1 按键显示部分的调试 起初根据设计编写的系统程序,程序的键盘接口采用P1口,数码管显示采用P0口,控制LED的断码,P2口控制LED的位码,从而实现键盘功能及数码管的显示。经过编译没有出错,但在仿真调试时,数码管显示的只是乱码,没有正确的显示温度,按键功能也不灵,当按下键时,显示并不变化。 经过查找分析,发现键盘扫描程序没有没有按键消抖部分,按键在按下与松手时,都会有一定程度的抖动,从而可能使单片机做出错误的判断,导致按键条件预设温度时失灵,甚至根本不能工作。因此必须在按键扫描程序中加入消抖部分,即在按键按下与松手时加入延时判断,以检测键盘是否真的按下或已完全松手。 数码管不能正确的显示,主要是因为所以数码管的段码都由P0口传送,而数码管显示又采用了动态扫描的方式,但在程序中却没有设置显示段码的暂存器,导致当P0口传送段码时发生混乱,不能正确识别段码。应在系统中加入锁存器,或是在程序中设定存储段码的空间。 在键盘加入了消抖程序,数码管显示程序中加入了段码的存储空间后,数码管能够正常的显示,按键也能够工作,达到了较好的效果。 5.1.2 传感器DS18B20温度采集部分调试 由于数字式集成温度传感器DS18B20的高度集成化,为软件的设计和调试带来了极大的简便、小体积、低功耗、高精度为控制电机的精度和稳定提供了可能。软件设计采用P3.1口为数字温度输入口,但是需要对输入的数字信号进行处理后才能显示,从而多了温度转换程序。通过软件设计实现了对环境温度的连续检测,由于硬件LED个数的限制,只显示了预设温度的整数部分。 在温度转换程序中,为了能够正确的检测并显示温度的小数位,程序中把检测的温度与10相乘后,再按一个三位的整数来处理。如把24.5变为245来处理,这样为程序的编写带来了方便。 第六章 硬件系统 硬件电路的调试相对来说比较简单。调试的功能包括按键电路,DS18B20电机电路和红外传感电路。 6.1 按键电路的调试 按键电路实现的功能是在按键按下后能执行设定温度的改变,这项采用实物调试,按键按下之后温度随之改变。 6.2 温度传感器电路的调试 温度传感器DS18B20的调试在实物上进行,当用手指去加热温度传感器DS18B20的时候,LCD示数开始随温度的上升而改变,变化明显而且刷新频率适中,可以清晰的看到所显示的温度。 6.3 电机电路的调试 电机电路进行调试,不断的将设定温度降低,观察电机转速的变化。电机随设定温度与实际温度差值的改变而改变,转速变化较为平滑,达到了预期的效果。6.4 硬件调试遇到的问题 本次设计中遇到的最困难的问题就是出在了电机的驱动上,刚开始的设计使用的达林顿ULN2803反向驱动器来驱动电机,可是在软件无误,硬件连接无误的情况下,电机转动表现出来的是变速效果不明显,最高档时停转现象的发生。再不断的修改软件和硬件电路无果的情况下,放弃了这个驱动,改用桥式驱动电路L298N,所有的问题迎刃而解
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年戒毒工作招聘心理测试题
- 2025年司法鉴定助理笔试冲刺模拟题物证类
- 2025年高级地震观测员实操考核题库
- 2025年民宿管理实操测试题及答案
- 数学专业分班考试题目及答案
- 2025年宁波企业安全知识竞赛题库及答案
- 生产管理岗位职责考试题库及答案
- 金融CRM系统2025年数字化转型下的客户洞察与价值创造报告
- 三相电考试题及答案
- qa笔试题目及答案
- 神经阻滞麻醉病例分享
- 2025-2030年中国聚烯烃弹性体(POP)行业市场现状供需分析及投资评估规划分析研究报告
- 第2课《中国人首次进入自己的空间站》课件
- 引水工程可行性研究报告
- 压力管道安全培训
- 《学术写作与研究方法》课件
- 公司安全员培训课件
- 政务服务智能化:DeepSeek在政务系统中的场景化落地
- 魏桥供煤合同协议
- 中国工会章程试题及答案
- 炉窑安全管理制度
评论
0/150
提交评论