基于单片机的光控自动窗帘控制系统设计说明书文档格式.docx
《基于单片机的光控自动窗帘控制系统设计说明书文档格式.docx》由会员分享,可在线阅读,更多相关《基于单片机的光控自动窗帘控制系统设计说明书文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
同时,遥控和定时的组合控制,可以让人们在需要的时段内,方便、快捷使用。
自动控制窗帘系统的推广和应用具有重要的现实意义,它改变了人们的生活方式,单片机控制的自动窗帘控制系统具有丰富的智能化功能,为家庭用户营造一个高效、舒适、便利的居住环境,给人们日常生活带来了极大地方便。
自动控制窗帘系统又牵扯一大批产业,单片机控制的自动控制窗帘产品面向家庭用户,其应用市场是庞大的,发展前景也是广阔的,必将吸引大批各类企业介入,从而牵动一大批产业的发展。
1.2本设计的内容
主要设计内容:
窗帘结构设计、窗帘安装布局的设计、控制系统软件的设计和硬件的选择。
窗帘结构设计:
在现代的审美观念中,人们往往追求的整体美观,同时窗帘作为整体家居环境的一部分,它的结构和尺寸大小有一定的限制。
为了满足人们对美的追求,在设计过程中采用硬度高、质量轻的铝合金材料来制作窗帘的整体框架。
窗帘安装布局的设计:
窗帘光感模块依靠两个光感模块和三个限位开关来实现。
对于不同尺寸的窗帘,可根据实际情况改变限位开关的距离来实现控制。
控制系统软件的设计:
智能窗帘的智能化体现在其自身光控部分,当人们在室内休息、工作的时候,由于外界光线强度的改变,可能给在室内的人们造成不适,而光控刚好解决了这一缺陷。
只要事先设置好光感的强度,程序就可根据这个光线改变而实现窗帘的开合,从而改变室内光线强度,给人们一个舒适、温馨的环境。
系统的定时部分可提供任何状态下12个小时的定时功能,在定时结束后,系统自动恢复到光感模式,同时用户也可在未到时间的情况下重新开启光感模式。
本系统还可提供温度时时检测,时刻提醒用户注意温度变化。
1.3存在的主要问题
1.3.1光感功能的实现
光感部分主要可分成光感检测和光感执行两部分。
光感检测依靠的是光敏电阻的使用。
光敏电阻可分成暗电流和亮电流两部分。
暗电流:
光敏电阻在室温条件下,全暗(无光照射)后经过一定时间测量的电阻值,称为暗电阻,此时在给定电压下流过的电流。
亮电流:
光敏电阻在某一光照下的阻值,称为该光照下的亮电阻,此时流过的电流。
光敏电阻的暗电阻越大,而亮电阻越小则性能越好。
也就是说,暗电流越小,光电流越大,这样的光敏电阻的灵敏度越高。
实用的光敏电阻的暗电阻往往超过1MΩ,甚至高达100MΩ,而亮电阻则在几kΩ以下,暗电阻与亮电阻之比在102~106之间,可见光敏电阻的灵敏度很高。
而本设计中在光感电路加入一个滑动电阻,用户可根据当地光线的实际情况来改变光感元件对光线的敏感程度,从而达到完美的控制目的。
光感执行部分主要包括一个直流电机和三个限位开关来实现。
当光敏电阻判断光线强度改变时,电机按相应方向转动。
以光线程度变强为例,电机向窗帘关合的方向运动,当绕绳碰到某一限位开关时,电机停止转动。
再进入另一光敏电阻的判断,如果还是超过设定的位置,电机继续以同方向转动,碰到行程开关停止。
1.3.2遥控功能的实现
遥控器使用方便,功能多。
目前已广泛应用在电视机、VCD、DVD、空调等各种家用电器中,且价格便宜,市场上非常容易买到。
如果能将遥控器上许多的按键解码出来,用作单片机系统的输入,则解决了常规矩阵键盘线路板过大、布线复杂、占用I/O口过多的弊病。
而且通过使用遥控器,操作时可实现人与设备的分离,从而更加方便使用。
红外线的是一种波长为950nm的光,超出人类的可视光谱范围,因此是不可见的。
这也是我们用它来做遥控的原因之一,另一个原因就是红外线很容易人工生成,成本低廉。
虽然人眼不能直接看到红外线,但是通过摄像机或者数码相机,我们就能在图片里看到它们。
不幸的是我们周围有很多红外源。
太阳是最大的红外源,其它的比如灯泡,蜡烛,中央加热系统,甚至是我们的身体都是红外源。
事实上,只要是发热的物体,就会发射红外线。
所以我们必须采取一些措施来防止我们的控制信号受到干扰,采用调制可以使我们的控制信号免受干扰。
通过调制,我们把红外线以特殊的频率发射,然后红外接收设施以相同的频率来接收,从而避免干扰。
第2章总体方案设计
2.1主控制系统CPU
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
概括的讲:
一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
单片机的最小系统只用了一片集成电路,即可进行简单运算和控制。
目前,单片机在民用和工业测控领域得到最广泛的应用。
彩电,冰箱,空调,录像机,VCD,遥控器,游戏机,电饭煲等无处不见单片机的影子,单片机早已深深地溶入我们每个人的生活之中。
单片机能大大地提高这些产品的智能性,易用性及节能性等主要性能指标,给我们的生活带来舒适和方便的同时,在工农业生产上也极大地提高了生产效率和产品质量。
当前国内外单片机的发展现状良好,我们根据单片机技术的先进性和稳定性制订了如下几种方案:
方案一:
STC单片机
STC公司的单片机主要是基于8051内核,是新一代增强型单片机,指令代码完全兼容传统8051,速度快8~12倍,带ADC,4路PWM,双串口,有全球唯一ID号,加密性好,抗干扰强.其中,STC公司推出了了STC89系列单片机,增加了大量的新功能,提高了51的性能,是MCS51家族中的佼佼者。
STC89系列单片机是MCS-51系列单片机的派生产品。
它们在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容,DIP40封装系列与8051为pin-to-pin兼容。
STC89系列单片机高速(最高时钟频率90MHz),低功耗,在系统/在应用可编程(ISP,IAP),不占用户资源。
方案二:
MOTOROLA单片机
MOTOROLA是世界上最大的单片机厂商。
品种全、选择余地大、新产品多是其特点,在8位机方面有68HC05和生级产品68HC08,68HC05有30多个系列,200多个品种,产量已超过20亿片。
8位增强型单片机68HC11也有30多个品种,年产量在1亿片以上。
生级产品有68HC12。
16位机68HC16也有十多个品种。
32位单片机的683XX系列也有几十个品种。
近年来,以PowerPC、Coldfire、M.CORE等为CPU,将DSP未为辅助模块集成的单片机也纷纷推出,目前仍是单片机的首选牌品。
MOTOROLA单片机特点之一是在同样速度下所用的时钟频率较Intel类单片机低得多,因而使得高频噪声低、抗干扰能力强,更适合用于工控领域及恶劣的环境。
MOTOROLA8位单片机过去的策略是以掩膜为主,最近推出OTP计划以适应单片机发展趋势,在32位机上,M.CORE在性能和功耗方面都胜过ARM7。
方案三:
Scenix单片机
Scenix单片机的I/O模块有新意。
I/O模块的集成与组合技术是单片机技术不可缺少的重要方面。
除传统的I/O功能模块如并行I/O、URT、SPI、I2C、A/D、PWM、PLL、DTMF等,新的I/O模块不断出现,如USB,CAN、J1850,最具代表性的是MOTOROLA32位单片机,它集成了包括各种通信协议在内的I/O模块,而Scenix单片机在I/O模块的处理上引入虚拟I/O的新概念。
Scenix采用了RISC结构的CPU,使CPU最高工作频率达50MHz。
运算速度接近50MIPS。
有了强有力的CPU,各种I/O功能便可以用软件的办法模拟。
单片机的封装采用20/28引脚。
公司提供各种I/O的库函数,用于实现各种I/O模块的功能。
这些用软件完成的模块包括多路UART、多种A/D、PWM、SPI、DTMF、FSK、LCD驱动等,这些都是通常用硬件实现起来也相当复杂的模块。
综合比较三个方案,方案一工具好用,DEMO易搞,成本偏低,所以此次选用的是AT89C52单片机。
这是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用Atmel公司高密度非易失性存储器技术制造,与工业80C52产品指令和引脚完全兼容。
同时具有8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。
另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
图2.189C52图
2.2窗帘结构安装及电机选择
2.2.1窗帘结构安装
家居窗帘不仅要美观,而且得低噪音,高稳定性。
因此采用在滑线上缚有一或二只永磁体,与之相对应有一或二只吊环是磁性材料制成,滑线上缚有永磁体,在封闭的帘杆内腔运行,而吊环全部套在帘杆外周或嵌进下部开的缝内,永磁体用磁力透过帘杆牵引吊环,这种新型电动窗帘滑线不外露,不会蒙尘和缠绕,可以电动手拉兼容。
图2.2窗帘结构示意图
2.2.2步进电机选择
步进电机是一种将电脉冲转化为角位移的执行机构。
通俗一点讲:
当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度。
通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;
同时也可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
目前,比较常用的步进电动机包括反应式步进电动机(VR)、永磁式步进电动机(PM)、混合式步进电动机(HB)等。
步进电动机和普通电动机的区别主要就在于其脉冲驱动的形式,因此,步进电动机多和现代的数字控制技术相结合。
但步进电动机在控制精度、速度变化范围、低速性能方面都不如传统闭环控制的直流伺服电动机;
所以主要应用在精度要求不是特别高的场合。
步进电机主要应用在数控机床制造领域,由于其不需要A/D转换,能够直接将数字脉冲信号转化成为角位移,所以一直被认为是最理想的数控机床执行元件。
型
号
峰值堵转
最大空载转数(r/min)
转矩(N.m)
电流(A)
电压(V)
功率(W)
GW31ZY-63
7.5
1.5
12
18
63
表2.3直流电机参数
本设计采用的是12V的来直流电机驱动,计算转数与扭矩如下:
按上表参数计算电机在9V下的扭矩,
N=最大空载转数×
(运行电压÷
峰值电压)=63×
(9÷
12)=47.25r/min
M=峰值堵转扭矩×
峰值电压)=7.5×
12)=5.625N.m
在9V的状态下,电机产生5.625的扭矩足以带动绕绳的转动。
2.3硬件总体方案
硬件设计的好坏决定整个方案的成功与否,所以在硬件设计时,在实现功能的情况下电路设计越简单越好,这样才能保证这个系统的稳定运行。
本文采用单片机AT89C52作为系统的核心控制器件,通过光电传感器采集数据(数字信号),经单片机根据接收到的信号来控制步进电机的转动方向及步数,并根据光线变化自动调整窗帘的开度。
2.3.1方案设计说明
考虑到自动窗帘的成本和巨大的市场空间,本文提出一种方案,应用光控原理工作,光亮在一定程度窗帘自动打开,光线变暗窗帘自动关闭,实现光控电动自动窗帘的设计,成本低,环保且方便使用。
实现框图如图2.4所示:
图2.4本设计实现的方框图
该系统具有抗干扰能力强、结构简单、性能稳定,成本低廉,利于推广等特点,能够满足智能家居需求,具有良好的市场应用前景.
2.3.2方案选择说明
论文设计的核心控制器选用的是AT89C52单片机,光线采集选用光电传感器ULN3330。
它输出单片机能读入数字信号,然后由L293D驱动芯片驱动步进电机转动,调节其转动角度。
电机选用比较容易进行角度调节的步进电机,单片机与步进电机之间的连接采用L293D驱动器,它是一种两相和四相步进电机专用驱动芯片。
2.3.3硬件方案选择说明
硬件电路绘图平台为PROTEL软件,所用元器件在其上绘出,例如AT89C52微控制器、电机驱动芯片L293D、42BYG系列步进电机、电阻、电容、按键、肖特基二极管、转换开关等。
逻辑框图如图2.5所示。
图2.5系统硬件电路设计
光检测模块
选用集成光电传感器ULN3330,当器件顶部受到大于50Lx[4]的光照时就输出高电平,负载上没有电流;
当光照不足45Lx时,器件就输出低电平,负载上有电流通过。
单片机模块
选用MCS-51单片机系列,AT89C52单片机。
步进电机的驱动模块
选用步进电机专用驱动芯片L293D,采用L293D,通过单片机的I/O输入改变芯片控制端的电平,即可以对电机进行正、反转、停止的操作。
步进电机选用
步进电机的步距角选用1.8度/步(四相电机)。
2.4软件方案设计说明(主控程序流程图)
软件开发平台为Keil软件,用C语言编写具体的程序代码。
主控程序流程图如图2.6所示。
图2.6主控程序流程图
第3章硬件电路设计
3.1光电传感器信号采集模块设计
3.1.1光电传感器ULN3330介绍
光电传感器按输出信号有开关型和模拟型,开关型用于转速测量、模拟开关、位置开关等;
模拟型用于光电式位移计、光电比色计等。
光电检测必须具备光源、被测物和光电元件。
ULN3330是美国摩托罗拉公司生产的集成光电传感器。
它是一种新颖的光电开关,将光敏二极管、低电平放大器、电平探测器、输出功率驱动器和稳压电路等五部分都集成在了一块1×
1.8(mm×
mm)的硅片上,形成一种具有驱动能力的光敏功率器件。
该器件可用于众多使用光敏器件的场合,使光敏器件的应用变得更简单、可靠。
光敏二极管的光敏区域约为1.1×
1.1(mm×
mm),峰值波长为880nm。
当ULN3330受到光照时,会产生微安数量级的光电流。
低电平放大器是一种低噪声小电流放大器,能对微安级的光电流进行放大、电平位移,最后输出可供电平探测器进行鉴别的电平。
电平探测器是由施密特电路构成的,它具有约20%的“滞后”特性。
输出功率驱动器是NPN中功率晶体管,最大可通过100mA的电流,可以直接驱动各种负载。
稳压电路可确保当电压在4~15V范围内变化时电路也能稳定地工作。
ULN3330接上电源与负载后,不需要其他元件就能工作。
当器件顶部受到大于50Lx的光照时,就输出高电平,负载上没有电流;
3.1.2传感器信号采集模块设计
由于光电传感器ULN3330直接输出数字信号,因而与单片机连接电路之间无需模数转换电路。
ULN3330控制电路基本思路:
光照强度
OUTPUT输出端
窗帘开合状态
E>
50LX
高电平1
打开
E<
45LX
低电平0
关上
表3.1光照强度与窗帘状态关系
下面两图即为光电传感器ULN3330模块电路连接图:
图3.2:
光电传感器的输出端
OUTPUT接单片机的P3.0口,输出端的高低电平就送到单片机的口,电源端接+12V的直流电压,VSS端接地。
当外界逐渐变亮,光电传感器件顶部受到大于50Lx的光照时,就输出高电平,经单片机后由驱动电路L293D驱动步进电机正转,窗帘打开,当光电传感器件顶部光照不足45Lx时,光电传感器件就输出低电平。
经单片机后由驱动电路L293D驱动步进电机反转,窗帘闭合。
图3.3:
用开关模拟光电传感器,开关一端接单片机的P3.0口,另一端为接地端,单片机上电后其端口为高电平,因而当开关断开时,P3.0口即为高电平,窗帘打开。
当开关闭合时,开关接地,P3.0口为低电平,窗帘闭合。
下图即为光电传感器ULN3330的电路连接图:
图3.2ULN3330与单片机的连线图
图3.3PROTUES中连线图
说明:
要用PROTUES软件仿真,因其中器件库中没有光敏这块,用开关替代,左图为光电传感器在单片机上的连接图,右图为用开关代替光电传感器在与单片机的连接图。
3.2单片机信号处理模块设计
3.2.1MCS-51单片机的结构
单片机全称单片微型计算机,顾名思义,它指的是一种单硅片上集成的微型计算机主要功能部件的集成芯片。
单片机的出现要归功与大规模集成电路技术的发展,就组织和功能而言,它如一个微型计算机系统,内部集成了中央处理器,随机数据存储器、只读程序存储器、定时器/计数器、输入输出(I/O)接口电路和串行通信接口等主要功能部件。
这里的51单片机指的是Intel公司的MCS-51系列单片机,属于这一系列的单片机芯片有许多种,如8051/8052、8031/8032、8752/8751等,他们的基本组成、基本性能、指令系统都是相同的。
(1)MCS-51单片机的内部结构
单片机是在一块芯片中继承了CPU、RAM、ROM、定时/计数器和多功能I/O接口等计算机所需要的基本功能部件的大规模集成电路,又称MCU。
51系列单片机内包含下列几个部件:
·
1个8为CPU。
1个片内振荡器及时钟电路。
4KBROM程序存储器。
128BRAM数据存储器。
可寻址64KB外部数据存储器和64KB外部程序存储器的控制电路。
32条可编程的I/O线(4个8位并行I/O接口)。
2个16位的定时/计数器。
1个可编程全双工串行接口。
5个中断源、2个优先级嵌套中断结构。
51系列单片机内部结构图如图3.3所示,各个功能部件由内部总线连接在一起。
程序存储器部分用ROM代替即为8051/8052;
用EPROM代替即为8751/8752;
若去掉ROM即为8031/8032;
用FLASHEPROM代替即为89C51/89S52。
基准频率源脉冲技术输入
外部中断控制并行I/O接口串行输入串行输出
图3.4MCS-51单片机内部结构框图
(2)引脚功能
有总线扩展的51单片机有44个引脚的方形封装形式和40个引脚的双列直插式封装形式,本文用40个引脚的双列直插式封装形式,40个引脚封装的引脚图如图3.4,各引脚的功能说明如下。
哥GND2
XTAL1,XTAL22
RESET1
EA/Vp1
ALE/PROG1
PSEN1
P0.0—P0.78
P1.0—P1.78
P2.0—P2.78
P3.0—P3.78
图3.5AT89C52单片机引脚图
GND:
接地端。
VCC:
电源端,接+5V。
XTAL1:
接外部晶体的一个引脚。
CHMOS单片机采用外部时钟信号时,外部时钟信号由此引脚接入。
XTAL2:
HMOS单片机采用外部时钟信号时,外部时钟信号由此引脚接入。
RST:
①复位信号输入。
②VCC掉电后,此引脚可接备用电源,低功耗条件下保持内部RAM中的数据。
ALE/RPOG:
①地址锁存允许。
当单片机访问外部存储器时,该引脚的输出信号ALE用于锁存P0端口的低8位地址。
ALE输出的频率为时钟振荡频率的1/6。
②对8751单片机片内EPROM编程时,编程脉冲由该引脚接入。
PSEN:
程序存储器允许。
输出读外部程序存储器的选通信号。
取指令操作期间,PSEN的频率为振荡频率的1/6;
但若此期间有访问外部数据存储器的操作时,则有一个机器周期中的PSEN信号将不出现。
EA/VPP:
①EA=0,单片机只访问外部程序存储器。
对8031单片机此引脚必须接地。
EA=1,单片机访问内部程序存储器。
对于内部有程序存储器的8XX51单片机,此引脚应接高电平,但若地址值超过4KB范围,单片机将自动访问外部程序存储器。
②在8751单片机内EPROM编程期间,此引脚接入21V编程电源VPP。
P0.0~P0.7:
P0数据/低八位地址复用总线端口。
具有双重功能:
①可以作为输入/输出口,外接输入/输出设备。
②在有外接存储器和I/O接口时常作为低8位地址/数据总线,即低8位地址与数据线分时使用P0口。
此低8位地址由ALE信号的下跳沿使它锁存到外部地址锁存器中,尔后,P0口出现数据信息。
P1.0~P1.7:
P1静态通用端口。
具有单一接口功能,P1口每一位都能作为可编程的输入或输出口线。
P2.0~P2.7:
P2高八位地址总线动态端口。
①作为输入/输出口使用,外接输入/输出设备。
②在有外接存储器和I/O接口时,作为系统的地址总线,输出高8位地址,与P0口低8位地址一起组成16位地址总线。
对于内部无程序存储器的单片机来说,P2口只作为地址总线使用,而不作为I/O接口。
P3.0~P3.7:
P3双功能静态端口,①可以作为输入/输出口,外接输入/输出设备。
②作为第二功能使用时,每一位功能定义如表3.6所示
单片机端口
外围电路
P0.0-P0.7,P2.0-P2.2
屏幕显示模块
P2.5-P2.7
电机驱动模块
P2.3-P2.4
光感模块
P1.0-P1.2,P1.3-P1.5
3×
3矩阵按键模块
P1.6-P1.7,P3.0
定位开关模块
P3.2
红外线
P3.3
温度模块
P3.7
蜂鸣器
表3.6P3口第二功能说明
(3)单片机本身的微小电路
图3.7单片机的微小系统连线图
上图为单片机的小系统,包含片内振荡电路和复位电路。
片内振荡电路:
通常外接一个晶振,两个电容,电容值取值范围15~45pf,取值范围晶振值0~24MHZ。
时钟电路为单片机产生时序脉冲,单片机所有运动与控制过程都是在统一的时序脉冲驱动下进行的,时钟电路好比人的心脏,如果人的心脏停止工作,则人就没有生命了,同样,如果单片机的时钟电路停止工作,那么单片机也就停止运行了。
复位电路:
当振荡器运行时,在此引脚上出现2个机器周期以上的高电平使单片机复位,一般在此引脚与VSS之间接一个下拉电阻,与VCC引脚之间接一个电容,单片