智能电风扇控制系统的设计.docx
《智能电风扇控制系统的设计.docx》由会员分享,可在线阅读,更多相关《智能电风扇控制系统的设计.docx(19页珍藏版)》请在冰豆网上搜索。
智能电风扇控制系统的设计
本科毕业设计
题目:
智能电风扇控制系统的设计
学院:
数理学院
专业班级:
毕业年份:
姓名:
学号:
指导教师:
职称:
讲师
智能电风扇控制系统的设计
摘要:
本文设计了一款智能电风扇控制系统,使用STC89C51作为主控制芯片,通过DS18B20检测环境温度并将温度信号发送给单片机。
电机是否启动,以及电机的转速由系统设定温度值与检测温度值的比较结果控制。
同时用LED1602显示检测到的温度和系统设定温度。
关键词:
电风扇;STC89C51;液晶显示器1602;
1引言
风扇的结构简洁,并且便利使用,是一种常见的降温工具。
虽然现在空调已经走进人们的生活,但是风扇作为一种节省能源,并且环保的降温工具,很多家庭都在使用。
随着科技的进展,温控技术的不断进步,为了使电风扇更加节能便利,智能电风扇收到了越来越多的关注。
因为单片机具有操作简洁,廉价易购得,智能化程度高,在具有较好抗干扰能力的同时还拥有较高的控制精度,因此其在许多智能化产品的中得到了极为广泛的使用。
现阶段,智能电风扇的设计已经取得了一定的成果,可以通过人体检测来控制电扇的自动开启关闭,并能根据温度的不同控制风扇风速的大小。
实现智能控制。
[1]
本文设计了由单片机STC89C51作为控制器的可自动调速的智能电风扇。
工作过程当中首先会使用
传感器对周边环境温度进行检查,并将检测到的数据传递到单片机当中通过PWM对电风扇的电机进行驱动。
本文所进行的设计可以按照环境检测到的环境温度与预先设定的温度进行比对,根据结果完成转速的自动调节,并能根据人体检测结果控制电机自动开始或者停止工作。
2方案设计
2.1系统整体设计
本文所设计的系统的基本运行步骤如下:
首先对周边的温度进行检查,把检测到的温度信息传递到单片机当中,单片机将数据进行一定的处理,发送到显示屏当中进行显示,同时单片机依照检测到的温度按照既定的控制规章对风扇转速进行控制,并一同将转速数据在屏幕当中进行显示。
[8]本系统当中能够设置两个温度,TH和TL,其中TH为风速档位切换温度界限,TL为风扇启动最小温度。
设置按键有三个,K1、K2和K3。
调节TH还是调节TL由其中一个按键K1控制,另外的两个按键
可以对温度进行相应的升高或者降低的调节,温度信息精确到小数点后一位。
当按下K1时可调节TH,再次按下K1可调节TL。
按下K2加一度,按下K3减一度。
在本文所涉及的系统当中额外增加了一个红外感应探头用于对周边人员情况进行一定的检测,当周边没有人且持续了一段时间之后,系统会自动控制将风扇进行关闭。
除此之外本文所设计的系统当中使用了PWM脉宽调制进行电机的控制,以实现控制风扇转速的目的。
根据系统的结构,可以绘制出如图1所示的整体结构图。
图1 整体系统结构图
2.2方案论证
本文所要进行的设计的核心目的就是令风扇能够根据周围温度的不同进行自动的调节转速,如果周围温度低于设定值的话风扇会自动停止,且温度的设定值可以用独立按键改变。
在风扇感应到其工作区域一段时间内没有人的话即会自动关闭运行。
除此之外还需要系统拥有较高的温度分辨率以及较高的可靠性。
3硬件设计
3.1器件的选择
3.1.1温度传感器的选择
通过对本文所要设计内容进行了深入的分析,得到如下的两种温度检测方案:
方案一:
在本方案当中将采纳热敏电阻对周边的温度进行检测,周边温度的不同会使其阻值发生一定的改变,因此会使其输出电压发生细微的改变,通过将电压改变信号转换为数字信号之后传输到单片机当中从而实现整个控制过程。
方案二:
在本方案当中将采纳数字式集成温度传感器
对周边的温度进行检测,此类传感器的成熟度比较高,除了能够对温度进行非常精确的检测之外,其输出的信号能够直接传递到单片机当中进行使用。
总而分析来说,上述两种方面各有优劣,第一种方案的优点在于传感器成本较低。
然而其缺陷也非常明显,由于该方案中所用的温度检测元件所能够检测的温度并不是格外精细,因此在温度发生细微改变的是该元件难以进行实时的反应。
除此之外还需要对其输出的信号进行一定的处理,在此处理的过程当中可能会出现一定的信号失真情况,而且其阻值与温度直接并没有严格的线性关系,因此在温度的计算上相对比较困难,因此在设计的实现需要使用更加复杂的电路。
因此该方案并不适合应用到本系统当中。
对于第二种方案,由于
传感器是一款比较成熟的温度传感器,具有较高的集成度,同时能够对温度进行非常精确的检测。
与此同时其所输出的数据是直接的数字量,可以直接输出到单片机当中进行处理,这使得相应的电路以及程序设计被大大简化,除此之外该传感器使用了单总线技术,这使得其与单片机之间的接口比较简洁,使得数据传输的抗干扰能力得到提升。
综合考虑这些因素本系统采纳这个方案。
图2 温度传感器DS18B20
3.1.2控制核心的选择
在本文所要进行的设计当中选用
单片机对整个系统进行控制,其能够利用编程的进行信号的处理与输入输出,达到猎取温度信息并控制风扇转速的目的。
该单片机所需要的工作电压比较低而且所能够拥有的性能相对比较高,工作时能耗也比较小,除此之外其还能够与
直接用于良好的兼容性,且采购成本相对较低,故此能够使得本系统的设计需求得到较好的满足。
图3STC89C51
3.1.3显示器件的选择
方案一:
共阴极数码显示管。
方案二:
液晶显示屏
。
就方案一来说,本方案拥有成本低、耗能小等优点,而且在周边光线不足道时候也能够很清楚地进行显示,而且显示控制也比较简单。
不过该方案具有一个非常明显的缺点,由于该方案当中的现实元件是通过动态扫描的方式进行信息的显示的,所以在其进行工作时会产生一定的闪烁,当闪烁频率过高的时候会导致部分数据难以正常显示,因此经过综合分析本方案并不合适。
相比于第一种方案,方案二的显示情况就相对较好,而且该方案能够显示的字符也比较丰富,进行显示的过程当中也不会出现闪烁的情况。
因此与本系统的设计要求相符合,所以选用方案二。
图4 LCD1602
3.1.4调速方式的选择
方案一:
本方案当中使用
芯片进行电机调速,在工作的过程当中单片机根据目标转速输出相应的控制信号至芯片当中,芯片将信号进行一定的转换然后发送至无极调速电路当中,实现对于电机的转速控制。
方案二:
本方案利用软件来模式PWM实现电机调速的目的,该方案在工作的过程当中通过对脉冲序列的宽度进行调节来实现输出信号的不同。
该模式当中较为常用的信号为矩形波PWM信号[14]利用对占空比的调节实现电机转速的控制,占空比的大小与电机的转速成正比。
[3]在进行PWM信号输出的时候,也有不同的输出方式:
(1)利用软件延时进行输出信号的调节。
当高电平延时结束的时候相应的电平会反向,并会进行一段时间的延时,反向低电平时也是如此,因此通过软件控制延时就可以实现不同占空比信号的输出,经过综合分析,此模式实现相对简洁且基本无成本,故本系统当中使用的该模式。
(2)利用定时器进行不同信号的输出控制。
该方法与前述的方法类似,不过需要利用定时器实现相应的电平转换,此种方式在编程当中实现起来比较困难,故此不用。
(3)使用单片机内置的PWM控制器进行控制,该方式只适合于部分型号的单片机,因本文所使用的单片机当中并无PWM控制器,因此该方式无法使用。
通过对上述的两种可行方案进行分析能够得到,两种方案都可以实现较好的无极调速,但是由于方案一所需的数模转换器的成本相对较高,因此在本系统当中无法使用该方案。
相比之下第二种方案使用软件对占空比进行调节达到电机调速的目的,该方案具有的灵活性较高且成本很低,同时能够对系统的要求进行较好的满足,故此选用方案二作为本系统的调速方案。
3.1.5驱动方式选择
方案一:
达林顿反向驱动器
。
方案二:
电桥驱动电路
。
第一种方案当中的驱动器拥有的较高的性能,在控制方面也相对比较简单。
但是在对于电机的控制当中该方案难以达到较好的效果,其驱动力方面具有一定的欠缺,故此在一般的电机调速当中极少有人使用此方法。
方案二的驱动方式具有控制简洁上手简单的特点,同时该方案拥有较强的驱动力且在进行调速时也拥有很好的表现,因此在本文所要设计的系统当中采纳此方案作为驱动方案。
3.2各部分电路设计
在本文所要设计的系统当中各个硬件构成较为简洁,主要包含了控制模块、检测模块、显示模块、驱动模块以及风扇,除此之外还需要一些晶振、电源等必要的元件辅助系统能够正常工作。
[4]
3.2.1开关复位与晶振电路
本文所设计的系统当中主要包含晶振及复位两个电路,晶振电路主要是用来产生时钟信号,使得系统能够进行精确工作得到保证,[10]相应地,复位电路主要是用来使各个口的电路进行复位操作。
晶振是给电路提供工作信号脉冲的,采纳12M的晶振,单片机的工作速度为每秒12M。
当晶振在单片机的
与
所组成的振荡电路当中的时候出现一定的谐波,使得电路稳定性受到影响,所以需要在晶振的引脚上加接两个
的电容接地,通过这种方式才尽可能的减少由于谐波对于电路所产生的不利影响。
此系统当中所需的电路图如图5所示。
图5 晶振电路与复位电路
通过上图的结构能够得到,
脚与晶振互联,以此来实现反馈电路的功能。
在这当中的
为
,
为
,
为
,晶振频率是
。
3.2.2独立控制键盘电路
根据本系统的设计需要,在系统当中布置了三个独立按键
。
[11]其连接电路图如图6所示:
图6 按键电路
是三个独立按键,其各自与单片机的I/O端口P1.5、P1.6、P1.7和大地连接,当按下按键后由高电平变为低电平,电路接通。
在工作过程中,单片机扫描按键子程序,之后就可以对温度进行设置,K1是控制调节TH还是TL,K2和K3能够在进行温度设定的时候对设定值进行加减操作,每按下一次相应的温度设定值会增加或减少一度。
3.2.3LCD显示电路
本文设计时选择了LCD1602来显示温度信息,此电路和单片机的连接情况具体见图7,此显示器的第一行可以显示系统检测到的温度与档位,而温度信号可以精确到小数点后第一位,设定温度则可以在第二行显示。
其中T表示检测到的温度,P表示档位,TH为档位切换的温度界限,TL为电机启动所要达到的温度。
[5]
图7 LCD连接电路
3.2.4温度采集电路
在系统当中引入
并将主控芯片与相应的温度传感器进行有效连接通讯,再具体运作中,震荡计数器可以将相应低温系数振荡器产生的时间形式的信号进行有效处理后并完成计数,在此过程中,一定使系统内部对应于
完成基权值的预置,一旦计数结果呈现出0状态并且相应的震荡周期未终止,即可认定所测温度范围溢出,温度寄存器内部便会执行加1运算,依次往复进行循环直到该震荡周期完结终止,此时寄存器内部的数值即为所测的温度,由于存储机理为二进制的形式,依靠信号读取指令便可确定相应的温度。
[12]值得注意的是,温度振荡器本身存在一定的非线性,具体应用当中只有对其进行有效的补偿,才能确保输出的精度。
[7]该电路具有数字形式的信号输出,在与单片机进行实时通讯的过程当中还需引入一定的上拉电阻,如图8所示相关引脚连接示意图。
图8 DS18B20连接电路
3.2.5风扇驱动电路
该电机的运转控制是基于调整模拟形式的占空比来实现的,依靠相关的
接口即可实现该信号与驱动模块的衔接,从而对相应的电机完成驱动运转,除此之外,利用该手段还能够有效进行调速。
关于预置的温度可以凭借键盘进行相应的输入,随后基于红外探测技术进行相关温度信号的识别工作并完成与预设值之间的对比,通过对比结果的有效分析便可实现所需输出的脉冲信号的确定,从而驱动电机实现所需转速的控制。
[13]当外部温度发生一定的改变时,电机转速便会遵循预定程序进行有效变更,二者在一定程度上呈现出正比关系,也就是说相应的转速会随着温度的提升而不断增大,当温度过低的情况发生,那么系统就会马上终止运作,除此之外,假如红外技术不能检测到相关人员,也会进行终止,只有当相关人员存在,并且实测温度高于某一预定数值的条件下,电机才会相应运转,从而带动风扇进行吹风,相关电路配置如图9所示。
图9 直流电机连接电路
3.2.6电路总图
图10总电路图
4软件设计
本系统在编程时主要用到C语言,也可以选择汇编语言,二者都有一定的优缺点和适用范围,具体比较情况如下。
[2]
编程便捷、效率高且易于上手是
语言固有的特点形式,不但在编译层面较为便利,而且对其进行修改也不困难。
所谓汇编语言本质上是一种机器形式的语言,受限于相关硬件的配备,相对于
来讲后期处理调试相对繁琐,入门需求较高,最大的优点在于固有的内涵清楚明白,在执行效率方面要远高于
语言,仅在某些特别场合应用较为广泛。
[9]
对于初学者而言,综合考虑,采取
语言来进行相关程序的编写,在一定程度上可以该任务的有效执行。
4.1主程序流程图
图11 主程序流程图
4.2液晶显示子程序
只有对时序图进行充分了解之后才能进行相关程序的编写,为了有效幸免一些干扰项误差实现切实有效精准显示,一定预先进行显示器的相关初始化,除此之外,还要对相关的处理函数以及字符位置进行有效确定,即从
开始编写,如图12所示显示功能的实现流程。
图12 液晶显示程序流程图
4.3DS18B20温度传感器子程序
4.3.1温度读取程序
通过对传感器所接收到的相关温度信号完成切实有效的相关转换并加以处理即为该程序的功用所在,最终形成相应的数字信号形式输出。
如图13所示为该部分的相关框图。
图13 DS18B20程序流程图
4.3.2温度处理程序
如图14所示,显示屏读相关数据的基本框架,在完成上一步转换处理的基础之上,将该数字形式的相关信号输出读出来并在显示器当中呈现。
图14 温度处理子程序流程图
4.7软件设计中的问题与分析
4.7.1LCD显示程序的问题
具体需要呈现在显示屏上的各项数据大致可以归纳为:
风扇当前的档位情况、外部环境以及预置温度状况等,将相应的输出顺序进行切实有效的排布,不仅能够在一定程度上表明系统预置的合理程度,还能够使其数据完成良好的显示功能。
在现实情况当中,相关的数据输出或多或少都会存在延时的现象,这就需要针对于所编写出的程序进行切实有效的调试工作,依次逐步清理各种各种的故障问题,将延迟现象进行最大限度的压缩。
4.7.2DS18B20的显示程序问题
本文所设计的系统大部分有效数据都会在
当中来呈现,在此过程当中幸免不了与其他数据产生一定的关联,这种耦合作用表现在一旦某一项发生改变其他的也会在此基础上进行相关变更,这就导致风速不能够按照预期相对稳定的输出。
将板子通电,进行相应的调试工作,结果温度信息没能够正常呈现,反而显示出来的是
的形式,很明显已经显示异常,对此执行复位操作后便会消。
这样的现象发生后,导致其他形式的信息也产了相应改变的效果。
虽然风速能够进行较短形式的运转,但是,这种现象极为恶劣,根据其相关手册进行有效分析,需要对短暂周期显示
这个数值进行相关数据转化,在这个周期内部就相应会显示出
。
这种现象与硬件的类型脱离不开干系,着手从软件的视角进行着手,具体来讲就是在运行循环体之前插入进去
形式的延时程序,这样就可有效幸免此类现象的产出。
5硬件调试
相比前面的软件层面的开发与设计,这里的硬件电路相关的调试工作就较为简单了。
具体主要针对于温度采集、按键、红外感应以及相关电机电路在一定程度上进行有效调试,确保整体系统能够妥当运行。
5.1按键电路的调试
这是最简洁的一步,基于电路进行相关相关温度的预置,其次按下按键以后进行观察前后是否发生相应的温度改变。
经调试按键电路可正常使用。
当按下K1时,可调节TH,按下K2键TH加1,按下K3键TH减1。
再次按下K1键可调节TL,按下K2键TL加1,按下K3键TL减1。
如图所示。
图
15TH的调节图16TL的调节
5.2温度传感器电路的调试
通过主控芯片的
实现
与其实现一定程度的通讯,单片机样板上的这些引脚
,均为插针连接形式的接口,仅需对其进行相应的插拔即可,操作相对便捷。
通过对其进行外部加热的手段进行
的相关调试工作,结果表明显示屏上前两位数字明显增加,即可说明
与单片机完善兼容能够正常运行。
在此过程当中还要注意
当中各个引脚之间的相对位置,切勿出现接反的现象造成芯片损坏。
5.3电机电路的调试
通过对相关温度的预设数值进行变更,去观察风速是否发生改变也就是说其转速有没有变,根据观察结果表明,电机电路达到预期的效果。
其中TH为一档二挡切换温度界限,T为系统检测温度,TL为电机启动温度。
当T大于TH则为二挡,否则为一档。
当T大于TL,电机启动,T小于TL,电机停止。
调试数据如下表。
根据观察结果表明,电机电路达到预期的效果。
T
TL
TH
P
26.5℃
27℃
28℃
0
29℃
0
30℃
0
31℃
0
24℃
25℃
2
26℃
2
27℃
1
28℃
1
18℃
19℃
2
20℃
2
26℃
2
27℃
1
20℃
25℃
2
26℃
2
27℃
1
27.8℃
28℃
29℃
0
30℃
0
31℃
0
25℃
26℃
2
27℃
2
28℃
1
20℃
24℃
2
26℃
2
28℃
1
30℃
1
表1
5.4红外感应电路的调试
经过严谨的调试工作最终实现假如红外技术不能检测到相关人员,也会进行终止,只有当相关人员存在,并且实测温度高于某一预定数值的条件下,电机才会相应运转。
5.5硬件调试遇到的问题
本文的实质就是对驱动电机展开一系列的研究,恰好将问题呈现在驱动这一块在硬件调试当中也是不可幸免的。
驱动器起初选取的是
反向类型的,在其他部件都保持完好的状态时,电机却呈现出一定的堵转现象。
对此还分别针对软硬件进行了相应的检测但糟糕的事仍然没有解决,其次,利用桥式电路
将其替代,最终实现风扇稳态运转。
5.6系统功能
5.6.1系统实现的功能
本系统可以实现通过检测到的环境温度的改变,从而改变电机的转速,使风扇可在不同温度范围内进行相应的电机转速切换,依据独立按键去预置所需温度,
随后基于红外探测技术进行相关温度信号的识别工作并完成与预设值之间的对比,通过对比结果的有效分析便可实现所需输出的脉冲信号的确定,从而驱动电机实现所需转速的控制。
当外部温度发生一定的改变时,电机转速便会遵循预定程序进行有效变更,二者在一定程度上呈现出正比关系,也就是说相应的转速会随着温度的提升而不断增大,当温度过低的情况发生,那么系统就会马上终止运作,除此之外,假如红外技术不能检测到相关人员,也会进行终止,只有当相关人员存在,并且实测温度高于某一预定数值的条件下,电机才会相应运转。
其中风扇当前的档位情况、外部环境以及预置温度状况等还能够相应显示出来,并可以基于按钮进行调控。
5.6.2系统功能分析
温度采集电路是确保该系统稳定运行的重中之重,首先就要进行外围温度检测,间接控制主控芯片完成调速;其次重要的就属风扇驱动了,具体需要通过主控芯片将
在一定程度上实现平均电压转化,来具体执行电机相关转速控制,再有就是
显示功能需要实施有效显示当前内部与外部温度值。
6结论
本文的设计的主要功能是基于单片机在一定程度上实现风扇智能调控,形成以主控芯片为核心,
外温环境检测的一体化设计,最终依据外温实现一定程度的电机转速自动调控,并能通过独立按键调节预设温度。
实现了基于单片机的智能风扇的设计。
对此进行相应的调试一步步攻克难题,最终在一定程度上基本实现所期望的功能,除此之外,本系统设计也可以应用到其他电机的控制当中实现相对自动的调控。
通过这次毕设,我觉得不仅是知识上,乃至精神上都得到了升华,运用已学知识初步与实际相结合,发觉理论与实际真的存在相当大的差距,最重要的是锻炼了我独立思考的能力,逐步摸索,翻阅大量文献资料来寻求解决方法,完善自我设计行为规范,细化针对问题点的能力,培养了良好的科研作风。
参考文献:
[1]李学龙.使用单片机控制的智能遥控电风扇控制器[J].电子电路制作.2003.9:
13-15.
[2]郭天祥.新概念51单片机C语言教程[M].北京:
电子工业出版社.2009.342-344.
[3]蓝厚荣.单片机的PWM控制技术[J].工业控制计算机.2010.23(3):
97-98.
[4]胡汉才.单片机原理及其接口技术[M](第2版).北京:
清华大学出版社.2004.49-77.
[5]胡全.51单片机的数码管动态显示技术[J].信息技术.2009.13:
25-26.
[6]李钢,赵彦峰.1-Wire总线数字温度传感器DSI8B20原理及应用[J].现代电子技术.2005.28(21):
77-79.
[7]马云峰.单片机与数字温度传感器DS18B20的接口设计[[J].计算机测量与控制.2007.10(4):
278-280.
[8]王会明,侯加林.智能电风扇控制器的研制[J].电子与自动化.1998.5(4):
25-26.
[9]谭浩强.C程序设计[M](第三版).北京:
清华大学出版社.2005.37-65.
[10]孙号.Proteus软件在设计电子电路中的应用[J].仪表技术.2009.8:
74-75.
[11]楼俊军.基于Proteus和Keil的单片机演奏乐曲的实现[J].科技信息.2010.23:
50.
[12]王文海,周高兴.用Proteus实现51单片机的动态仿真调试[J].IT技术.2006,20:
10-11.
[13]丁建军,陈定方,周国柱.基于AT89C51的智能电风扇控制系统[J].湖北工学院学报.2003,18
(2):
60-63.
[14]刘进山.基于MCS-51电风扇智能调速器的设计[J].广州:
电子质量.2004,10(10):
71.
DesignofIntelligentElectricFanControlSystem
Zhangyi
(Class1Gread2015,agriculturalelectrification,SchoolofMathematicsandPhysics,WeinanNormalUniversity)
Abstract:
Thispaperdesignsasmartelectricfancontrolsystem,usingSTC89C51asthemaincontrolchip,detectingtheambienttemperaturethroughDS18B20andsendingthetemperaturesignaltothesinglechipmicrocomputer.Whetherthemotorisstartedandthespeedofthemotoriscontrolledbythecomparisonbetweenthesystemsettemperaturevalueandthedetectedtemperaturevalue.Atthesametime,thedetectedtemperatureandsystemsettemperaturearedisplayedbyLED1602.
KeyWords:
Fan;STC89C52;LCDMon