欢迎来到天天文库
浏览记录
ID:38711611
大小:114.50 KB
页数:5页
时间:2019-06-18
《基于单片机的光控窗帘设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于单片机的光控窗帘设计孙勤时间:2012年10月22日来源:微型机与应用2012年第16期字体:大中小关键词:单片机光敏传感器直流电动机C语言智能光控窗帘AT89C51智能家居摘要:为了能根据室外环境亮度实现窗帘自动拉合的设计需求,提出了一种基于单片机控制的光控窗帘设计方案,并完成系统的软、硬件设计。该系统的硬件部分主要利用光敏传感器产生的信号作为单片机输入信号,软件部分采用C语言进行编程,能够完成智能光控窗帘的自动拉合。同时,考虑到用户习惯和天气原因,本方案还设置了选择开关,用户在使用窗帘时可任意选择自动或手动控制方式。实际应用表
2、明,该系统具有设计成本低、可靠性高的特点,达到了设计要求。关键词:单片机;光敏传感器;直流电动机;C语言;智能光控窗帘随着生活水平的不断提高,人们对家庭生活舒适度的要求也越来越高,具有装饰、遮光并能进行自动开合的智能光控窗帘成为了现代家居生活的新宠。为了能根据室外环境亮度实现窗帘自动拉合的设计需求,本文提出了一种基于单片机控制的光控窗帘设计方案。1系统概述本设计由单片机、传感器和直流电动机组成,以AT89C51单片机[1-2]芯片为核心,运用光敏传感器技术,将室外环境亮度作为单片机的控制信号,实现窗帘的自动拉合。同时,考虑到用户习惯和
3、天气原因,本方案还设置了选择开关,用户在使用窗帘时可任意选择自动或手动控制方式。当选择自动控制模式时,单片机将室外环境光线亮度作为输入信号,单片机控制程序根据光敏传感器所产生的电流信号的强弱自动调节直流电机的正反转,从而实现窗帘的自动拉合;当选择手动控制模式时,单片机将手动控制开关作为输入信号,单片机控制程序根据开关信号控制电机的正反转,从而实现窗帘的手动拉合。2系统硬件设计本系统硬件系统主要由传感器、单片机、直流电动机三大部分组成[3-4],如图1所示。2.1元器件选择(1)单片机芯片本文选择AT89C51单片机作为控制芯片,可以反
4、复修改1000多次。 (2)光敏传感器光敏传感器尺寸为32mm×11mm×20mm,型号为EPSON1600K3+,工作电压为直流5V,可用于光控场合、无需驱动、可直接接单片机。(3)电机选择775微型电动机,其工作电流为5A,工作电压为27V。能承受频繁的冲击负载,发热量低、驱动功率较小,满足负载较轻的智能窗帘的驱动需求。材料清单如表1所示。2.2硬件电路设计图本电路由电源部分、光感应部分、数据存储部分和显示部分组成。硬件电路设计图如图2所示。电源部分通过外接插座输入直流13V~14V电压;P2.2接光敏传感器接收光信号,单片机P1
5、.0、P1.1控制电机运行。P0.0、P0.1接正反转指示灯,其中按钮接共阴极,低电平有效;指示灯共阳极,低电平有效。3系统软件设计系统软件主要实现智能光控、手动控制两大功能,采用C语言进行编程,可实现用户在使用窗帘时任意选择自动或手动控制方式[4-5]。3.1程序流程图光控窗帘程序流程图如图3所示。3.2程序设计(1)光控程序当天亮时,有阳光射进屋内,传感器感应到光信号,此时电机正转,窗帘开始打开,当碰到开限位开关时,电机停止转动;当天黑时,传感器接收到信号,电机反转,窗帘闭合,当碰到关限位开关时,电机停止转动。具体程序如下:#in
6、clude#include #defineucharunsignedchar #defineuintunsignedint sbitK3=P2.2;//光控正转或反转,此处接光敏传感器sbitK5=P2.4;//开限位 sbitK6=P2.5;//关限位 sbitLED1=P0.0;//正转指示灯 sbitLED2=P0.1;//反转指示灯 sbitMA=P1.0; sbitMB=P1.1; voidmain(void) { LED1=1;LED2=1; while(1)
7、{ if(K7==0) sd(); if(K3==0&&K4==1)//光控正转{while(K3==0&&K5==1&&K4==1){LED1=0;LED2=1;MA=0;MB=1;} LED1=1;LED2=1;MA=1;MB=1; } if(K4==0&&K3==1)//光控反转 {while(K4==0&&K6==1&&K3==1) {LED1=1;LED2=0;MA=1;MB=0;} LED1=1;LED2=1;MA=1;MB=1; } } }(2)手动程序当阴天或者晚上用户要打开窗帘时,只需将控制方式选
8、择按钮P2.6按下,就可以实现手动控制窗帘的开合。程序如下: #include #include #defineucharunsignedchar #defineuintunsig
此文档下载收益归作者所有