家用窗帘自动开关控制器设计Word文档下载推荐.docx
《家用窗帘自动开关控制器设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《家用窗帘自动开关控制器设计Word文档下载推荐.docx(18页珍藏版)》请在冰豆网上搜索。
![家用窗帘自动开关控制器设计Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-10/13/e3e00ebd-4b26-42e3-9c3c-692b8d7a5ecf/e3e00ebd-4b26-42e3-9c3c-692b8d7a5ecf1.gif)
第1章绪论
伴随着信息化时代的到来,人们的生活速度以及对生活质量的追求也在大幅提高。
电子产品智能化速度的加快,也使人们的工作、生活和通讯的关系日益紧密。
智能化的产品设计在改变人们工作方式与生活习惯的同时,让人们对生活质量的提升提出了更高的要求,方便、舒适成了人们所追求的生活方式,在现代家庭生活环境中,居家环境早已不仅仅局限在物理空间上,人们更为关注的是一个安全、方便、舒适的环境。
智能化的电子产品以及设计将以前的被动静止物体转变为人们能够方便操控的工具,这些产品具有提供全方位的信息交换的功能,不仅能够优化人们的生活方式,帮助人们合理的安排时间,增强居家环境的安全性,甚至还可以为各种能源费用节约资金。
在智能化产品中,单片机的应用已经越来越广泛,单片机以它体积小、质量轻、耗电省、可靠性高、价格低等优点,开始不断发展,并广泛应用于仪器仪表、家用电器、医疗设备、航天航空领域、工业专用设备的管理及过程控制等领域,在很多的大中型的电气设备以及小型的电子产品中也用到了单片机进行控制。
针对人们对智能化的需求以及对舒适生活的追求,窗帘自动控制器改变了传统窗帘的劣势,它可以根据外界光照强度的不同而自动开闭窗帘,也可以根据人们设定的时间来控制窗帘。
该器利用光敏电阻检测光照强度的变化,并且将光敏检测模块的电阻变化转化为电压变化,然后将电压变化的信号送单片机,单片机通过电机驱动模块控制着步进电机的正反转实现窗帘的来回移动。
本设计正是把利用AT89C51单片机的优点以及简单实用性,顺利的完成了对智能控制的要求,并且为智能化的家居设备提供了良好的基础。
此外,对该器进行扩展,比如可以加上防火,防盗,甚至室内煤气浓度监测等功能,会使该器更具有实用性,而且也完善了器。
第2章方案设计
2.1概述
本次设计主要是综合运用所学知识,设计出家用窗帘自动开关控制器,并在实践的基本技能方面进行一次系统的训练。
能够较全面地巩固和应用“单片机”课程中所学的基本理论和基本方法,并初步掌握小型单片机系统设计的基本方法。
该器具有一般的窗帘控制器的最基本的功能,即通过电动按钮来开闭窗帘,在此基本功能的前提下,本设计根据需求还设计了可以根据光照强度和设定时间自动开闭窗帘的功能,在选取设计方案和采用元器件方面,该器本着简单实用经济的思想,尽量简化电路设计,用最简单的电路布线和选用最经济实用的器件来达到设计要求。
自动窗帘控制器具有以下几个基本功能:
(1)手动控制:
该功能是根据用户的需求通过按键进行窗帘的开关,此功能可以使窗帘的开闭处于任何一种状态;
(2)自动控制:
用户可以通过按键一次性开闭窗帘;
(3)光照控制:
器可以根据用户设定的光照强度值通过感光器采集光照自动开光窗帘;
(4)时间控制:
此功能是根据用户设定的时间一次性开关窗帘。
2.2系统组成的总体结构
本次课程设计所采用的系统结构图如图所示
图2.2系统组成结构图
根据光照来开闭窗帘主要原理是用光敏电阻采集外界的光强度,从光传感器采集的信号利用信号校正电路放大,滤波后输入到A/D转换器,由于A/D转换器件的转换需要一定时间,一旦在这段时间内信号发生变化,转换结果将会出现偏差,所以在转换期间要应该采用采样保持电路。
传入的信号由89C51单片机来控制,并且做出响应,以实现电机的正转、反转与停止。
显示模块是用来显示自动窗帘控制器的各种状态。
键盘作为输入设备,通过不同按键来控制单片机进行各种运转状态。
第3章硬件设计
3.1电源电路设计
单片机正常工作电压为5V,因此设计的电源电路主要是提供单片机工作电压。
图3.1(a)是为单片机提供电压的电源电路。
在这个电路中采用了三端集成稳压器LM7805,可以输出5V的直流电压以供给单片机。
图3.1(a)电源电路
三端集成稳压器LM7805,总共有三条引脚,分别是输入端、接地端和输出端。
用LM78\LM79系列三端稳压器来组成稳压电源所需的外围元件极少,电路内部还有过流、过热及调整管的保护电路,使用起来可靠、方便。
其内部结构图如图3.1(b)所示。
图3.1(b)LM7805内部示意图
3.2系统控制器单片机的选择
自单片机诞生以来的40年中,单片机已有70多个系列,500多个机种,如今单片机厂商众多,生产的单片机产品性能各异,种类繁多。
以Inter(美国英特尔)公司的MCS-51系列产品为例,其一般可以分为普通型和增强型。
他们的结构基本相同,其主要的差别在于存储器的不同,如89C51是以FlashROM为存储器。
为了符合系统的要求,本课程设计选用89C51作为微机控制核心。
其特点如下:
面向控制的8位CPU;
一个片内震荡器和时钟产生电路,振荡频率为0~24MHz;
片内4kbFlashROM程序存储器;
128B的片内数据存储器;
可寻址64KB的片外程序存储器和片外数据存储器控制电路;
2个16位定时/计数器;
4个并行I/O口,共32条可单独编程的I/O线;
5个中断源和2个中断优先级;
一个全双工的异步串行口等。
AT89C51单片机是低功耗、高性能的CMOS8位单片机,片上带有8KFlash存储器,且允许在器改写或用编程器编程。
89C51单片机上有40个引脚如图所示,其主要参数有:
(1)4K字节可编程闪烁存储器;
(2)全静态工作:
0Hz-24MHz;
(3)128*8位内部RAM;
(4)32可编程I/O线;
(5)两个16位定时器/计数器;
(6)5个中断源;
(7)低功耗的闲置和掉电模式;
(8)片内振荡器和时钟电路;
图3.289C51单片机引脚图
3.3光敏电阻的选择与设计
窗帘自动控制器的光控功能是可以根据光照的强弱来自动控制窗帘的开闭的,因此需要用到光照传感元器件,本设计采用了型号为GL3526的光敏电阻。
其参数为最大电压100(VDC);
最大功率50(mW);
环境温度-30℃到+70℃;
光谱峰值540(nm)到10(nm);
高电阻20KΩ;
低电阻1MΩ。
图3.3光敏电阻与单片机的连接图
3.4驱动电路设计
本次课设中我们所选用的驱动电机为JL-48E500/520步进电机,下图为步进电机运行原理图。
JL-48E500/520是供电源为12V的4相5线的步进电机,而且是减速步进电机,减速比为30:
1,步进角为5.625*30度。
如果需要旋转一圈,那么需360*30/5.625的脉冲信号,该步进电机的耗电流为200mA左右。
图3.4步进电机原理图
用ULN2003驱动,驱动端口为P1.0(A),P1.1(B),P1.2(C),P1.3(C)。
正转次序:
AB组–BC组--CD组--DA组(即一个脉冲,正转5.625度);
反转次序:
AB组--AD组--CD组--CB组(即一个脉冲,正转5.625度)。
图3.4步进电机电路与单片机的连接
3.5A\D转换电路
A/D转换的作用是进行模数转换,把接收到的模拟信号转换成数字信号输出。
ADC0809的主要特性有:
(1)8路输入通道,8位A/D转换器,即分辨率为8位。
(2)具有转换起停控制端。
(3)转换时间为100μs(时钟为640kHz时),130μs(时钟为500kHz时)。
(4)模拟输入电压范围0~+5V,不需零点和满刻度校准。
(5)工作温度范围为-40~+85摄氏度。
(6)低功耗,约15mW。
ADC0809芯片为28引脚的双列直插式封装:
图3.5A\D转换器引脚图
3.6键盘的设计
在窗帘控制器设计中的键盘采用的是4×
4矩阵键盘。
这16个按键分别为:
设定键主要是用来设定自动窗帘打开或者关闭的时间;
0-9数字键,其作用主要是用于设定时间;
复位键主要应用在程序出错以及误操作的时候使单片机复位,从而重新设定;
反转键是使步进电机反转,控制窗帘关闭;
正转键是使步进电机正转,从而控制窗帘打开;
停止键可以控制步进电机停止工作,窗帘控制器停止运行;
确定键主要是用于在时间设定完成后的确定输入。
图3.6键盘接口电路
3.7显示电路的设计
显示电路主要是用于显示时间。
采用LED数码管进行显示是因为LED数码管具有以下几个优点:
(1)能在低电压、小电流条件下驱动发光,能与CMOS、ITL电路兼容。
(2)发光响应时间极短(<
0.1μs),高频特性好,单色性好,亮度高。
(3)体积小,重量轻,抗冲击性能好。
本设计采用的是4位LED数码管的串行驱动电路来达到显示的目的。
驱动器采用74LS164,由单片机89C51的P3.0和P3.1来控制LED数码管的显示。
显示电路图如3.7(a)所示。
图3.7(a)显示电路图
74LS164是8位串行输入,并行输出的移位寄存器。
其引脚图如下图3.7(b)所示:
图3.7(b)74SL164引脚图
3.8时钟电路的设计
DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟日历芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。
实时时钟可提供秒、分、时、日、星期、月和年,一个月小于31天时可以自动调整,且具有闰年补偿功能。
工作电压宽达2.5~5.5V。
采用双电源供电(主电源和备用电源),可设置备用电源充电方式。
需要强调的是,DS1302需要使用32.768KHz的晶振。
DS1302采用双电源供电,平时由+5V电源供电,当+5V掉电之后,由图中BT1(+3V备用电池)供电。
如图,串行时钟SCLK接单片机P3.6,时钟数据的I/O接P3.3,E接P3.2。
需要注意X1和X2两端连接的晶振Y1,该晶振频率为32.768KHz。
图3.11时钟电路电路图
第4章软件设计
4.1A/D转换子程序设计
该流程图首先要发送启动信号到地址选择处,由地址选择字来判断应答信号是否正确,不正确则返回,若正确则继续执行来发送转换控制字,再次判断应答信号是否正确,如此执行三次,最终读取转换数据,并发送非应答信号,顺序执行发送结束信号,最终返回主程序。
图4.1A/D转换流程图
4.2电机驱动程序设计
此流程图首先由电机脉冲分配函数来确定电机是正转还是反转,从而来决定数组是加1还是减1,若大于最大节拍则令节拍为0,否则直接调转到最小节拍;
若小于最小节拍则顺序执行到把数据输出到电机接口再执行延时程序,否则直接跳转到延时程序,最后返回,整个程序结束。
图4.2电机驱动流程图
4.3时钟电路程序设计
该程序主要实现对DS1302写保护、充电,对年、月、日、时、分、秒等寄存器的读写操作。
首先程序