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