遥控窗帘的设计
[摘 要]随着电子技术和自动化技术的发展,人们对生活质量的要求越来越高。本设计根据社会发展的需要,采用AT89C51单片机系统来控制窗扇,利用P1和P3口的特殊功能,根据其不同的控制模式,实现半制动控制,自动控制,定时控制的相互转换,实现窗扇自动开关。
关键词: 单片机,编码, 定时控制,步进电机
Design of remote control curtain
[Abstract]With the development of electronic technology and automation technology, people on the quality of life of the increasingly high demand. This design according to the needs of social development, using AT89C51 single-chip microcomputer system to control the window, using the special function of P1 and P3, according to its different mode of control, realize the brake control, automatic control, mutual conversion timing control, automatic switch model.
Key words: Single chip microcomputer,Coding, Timing control, Stepper motor
毕业论文(设计)原创性声明
本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。
作者签名: 日期:
毕业论文(设计)授权使用说明
本论文(设计)作者完全了解**学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。学校可以公布论文(设计)的全部或部分内容。保密的论文(设计)在解密后适用本规定。
作者签名: 指导教师签名:
日期: 日期:
注 意 事 项
1.设计(论文)的内容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
3)其它
目 录
第一章 绪
论........................................................11
1.1. 设计背景和意义以及主要任
务.............................11
1.2设计的要求..............................................11
第二章 方案设计....................................................12
2.1 控制器智能项
目..........................................12
2.2 系统的总体架构计
划......................................12
第三章 硬件电路的设计..............................................13
3.1 AT89C51单片机的介绍.....................................13
3.2 本设计的相关电路的介
绍..................................13
3.2.1 晶振电
路............................................13
3.2.2 复位电
路............................................13
3.2.3 时钟电
路............................................13
3.2.4 电源电
路............................................13
3.2.5 步进电
机............................................13
3.3.6 键盘和显示接口电
路..................................13
第四章 软件程序设计................................................14
4.1 软件开发环境选
择........................................14
4.2 主程
序..................................................14
4.3 主程序软件的设
计........................................14
4.4 其它功能程序的设
计......................................14
4.4.1 键盘程序的设
计....................................14
4.4.2 定时程序的设
计....................................14
4.4.3 步进电机的程序设
计................................14
4.4.4 定时程序的设
计....................................14
第五章 系统的调试和运行............................................15
5.1 软件调
试................................................15
5.2 PCB图..................................................15 小
结 ..............................................................16
致
谢 ..............................................................17 参考文
献...........................................................18
第一章 绪论
1.1.设计背景和意义以及主要设计任务
随着社会经济的发展和人们生活水平的改变,宽大窗户的办公和生活建筑越来越多。这种建筑结构美观,采光良好。但是,窗户的高度或者宽度超过4
米以后手拉窗帘却比较困难。而现在的放地产商几乎却都没有为用户考虑这个问题,使一些高档住宅反而带来了生活上的不便,解决这个问题的方法是使用窗帘机。
窗帘机是专门为高大的窗户设计的窗帘控制装置,根据功能不同可以分为智能、遥控、自动和智能等多种规格。智能窗帘机是通过窗帘机上的控制按键操作窗帘开合的一种最简单的窗帘机,仅仅解决了手动窗帘的问题,可还需要人来近距离操作,智能窗帘使一些超高、超宽窗帘的操作变得比较容易。但是因为这种窗帘技术含量低,基本没有厂家作大规模工业化生产;遥控窗帘机可以远距离操作窗帘的开合,使用更为方便,自动窗帘机具有自动控制功能,可以满足用户各种情况下的使用要求。随着新科技和自动化的发展,传感器的使用数量越来越大,功能越来越强,各种传感器都已经标准化和模块化,这为智能家居控制控制系统的设计提供极大的方便。
智能家居是利用先进的计算机技术、网络通讯技术、综合布线技术、依照人体工程学原理,融合个性需求,将与家居生活有关的各个子系统如安防、灯光控制、窗帘控制、煤气阀控制、信息家电、场景联动、地板采暖等有机地结合在一起,通过网络化综合智能控制和管理,实现“以人为本”的全新家居生活体验。
在设计系统时,面对各种检查对象和大量控制单元,需要利用各种标准和MCU进行连接,在通过MCU进行数据处理,实现实时监控。而此时采用单片机来实现智能家居控制系统不仅具有采集控制方便,简单,灵活等优点,而且大幅度提高采各模块和芯片的协调性,从而大大提高系统的利用性。此系统设计正是利用AT89C51单片机的优点,顺利的完成了本设计的要求。并且实现了定时和自动控制功能,为控制家居设备提供了良好的基础。
随着自动窗帘热潮在世界范围内的日渐兴起,随着中国电子技术的飞速发展、人们生活水平的不断提高以及智能电子技术在生活中的广泛应用,自动窗帘已经成为未来家居装饰潮流发展的最新方向,在不久的将来,没有自动窗帘系统的住宅肯定不合潮流。从目前的发展趋势来看,在未来的20年时间里,自动窗帘行业将成为中国的主流行业之一,其市场的发展前景是非常广阔的。
本设计的主要任务主要是通过单片机实现窗扇的多项智能控制,完成单
片机应用系统其开发过的系统的总体设计,软件设计和系统调试。
1.2设计的要求
(1) 进一步熟悉和掌握单片机的内部结构和工作原理,了解单片机应用系统设计的基本方法和步骤
(2)掌握单片机仿真软件Proteus,protel,keil的使用方法;
(3)掌握键盘和显示器在的单片机控制系统中的应用。
(4)掌握撰写课程设计报告的方法。
第二章 方案设计
智能窗帘控制器总体方案设计是确定能够满足设计要求的总体方案的环节。本章从系统功能需求出发,规划并确定了系统的总体结构,并在此基础上
考虑了系统的可扩展性及可实现性。
2.1 控制器智能项目
随着人民生活水平的不断提高,人们对家庭生活舒适性的需求越来越强烈,窗帘作为每个家庭生活中最必须的家居用品之一,自然也需要满足人民更舒适性的需求。窗帘最基本的作用无非是保护业主的个人隐私以及遮阳挡尘等功能,但传统的窗帘您必须手动去开关,每天早开晚关也是挺麻烦的,特别是别墅或复式房的大窗帘,比较长,而且重,用时需要很大的力才能开关窗帘,特别不方便;于是智能窗帘应运而生。现有的智能窗帘都可以自动开关闭窗帘,到了时间自动控制窗帘的开关,可以根据光的但是他们也有些缺点。窗帘控制器的自动开关如何让窗帘能够开关自如,停机的时间是否到位。
智能窗帘主要有以下几大功能:(1)手动控制:该功能使智能窗帘具有手动正传、手动反转 和手动停止的功能。而且增加了工作状态指示,电机工作在正传、反转和停止状态的时候,数码管均有不同工作状态指示。(2)半自动手动控制:半自动手动控制是在需要关闭或打开窗帘的时候,只需要人工按一下“正转”或“反转”按键后,窗帘到位自动停止。(4) 时间自动控制:根据设置输入的开启或关闭时间,来控制窗帘的关闭和打开。
窗帘的正转、反转和停止功能可由单片机输出信号来控制步进电机的运转以实现。时间自动控制可以由定时器来控制。
2.2 系统总体架构计划
整个智能窗户控制系统包括微处理器、电机驱动电路等模块组成。整个系统框图如图2-1所示。
图2-1 系统框图
智能窗帘控制器的总体结构框图如图2-2所示。
图2-2 智能窗帘控制器结构框图
首先给电路加上电源,在通过时钟电路来定好时间,到了设定的时间自动的复位来开闭窗扇。在通过信号的传输到单片机控制器,来实现电机的运行与停止。显示部件用来显示智能窗帘控制器的各种状态信息。键盘是主要的输入设备,控制单片机的各种参量。
第三章 系统硬件设计
整个系统的硬件接线图如图3-1所示。
R
图3-1 系统总硬件接线图
总体硬件电路图包括单片机外围电路,键盘/显示接口电路,步进电机控制电路等模块。单片机外围电路提供各模块所需的5V电源和时钟模块;单片机的P2口控制步进电机的运行从而控制窗帘的升降。显示和键盘让人机交换变得更容易。以上各模块组成了智能窗帘控制器的总体电路。 3.1 AT89C51单片机的介绍
AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash
Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图3-2 AT89S51单片机引脚图
AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
VCC:供电电压。 GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器
能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示: 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(计时器0外部输入) P3.5 T1(计时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 3.2 本设计的相关电路的介绍 3.2.1晶振电路
电路中的晶振即石英晶体震荡器。由于石英晶体震荡器具有非常好的频率稳定性和抗外界干扰的能力,所以,石英晶体震荡器是用来产生基准频率的。通过基准频率来控制电路中的频率的准确性。同时,它还可以产生振荡电流,向单片机发出时钟信号。
图3-3是单片机的晶振电路。电路中的电容C1和C2的典型值通常选择为30PF左右,该电容的大小会影响振荡电路频率的高低、振荡器的稳定性和起振的快速性。晶体振荡频率的范围通常在1.2~12MHz。晶体的频率越高,系统的时钟频率越快,单片机的运行速度越快。但反过来,运行速度对于存储器的速度要求就越高,对印刷电路板的工艺要求也就越高,即要求线间的寄生电容要小。晶体和电容应该尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证振荡器稳定、可靠地工作。AT89C51常选择振荡频率12MHz的石英晶体。
10113029
[***********][1**********]728
V
图3-3 单片机晶振电路图
3.2.2复位电路
复位是单片机的初始化操作,只需要给AT89C51的复位引脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可以使AT89C51复位。复位时,单片机初始化为0000H,从0000H单元开始执行程序。除了进入系统的正常初始化之外,当程序运行错误(如程序跑飞)或操作错误使系统处于锁死状态时,也需要复位键使RST脚为高电平,使AT89C51摆脱“跑飞”或“死锁”状态而重新启动。图3-4是复位电路图。
10113029
[***********][1**********]728
图3-4 复位电路图
3.2.3时钟电路
本设计需要窗帘在给定的时间自动开和关,所以需要用到定时器,而为了保证单片机与外界时钟一致,要用到一个实时时钟电路。这里使用DS12887实时时钟芯片来完成这项功能。
DS12887是DALLAS公司生产的实时日历时钟芯片,其主要功能包括非易失性时日历时钟、报警器、百年历、可编程中断、方波发生器和114字节的非易失静态RAM。使用DS12887时应注意以下几点:Vcc正常情况下为5V,当Vcc降至4.25V时,所有的输入被忽略,输出为高阻状态,Vcc降至3V时,外部电源被关断,内部锂电池为实时时钟和RAM供电,在断电情况下,时钟继续运行,其中的数据可保存十年以上不会丢失。DS12887有两种工作时序,即MOTOROLA和INTEL时序,由MOT引脚的电平指定,当MOT引脚为高电平时选择MOTOROLA时序,当MOT引脚为低电平时选择INTEL时序,图中选为INTEL时序,这时芯片的DS引脚接系统的读信号/RD,R/W引脚接系统的写信号/WR。AS引脚用于分离数据地址总线AD7-AD0上的地址和数据信息,连接到MCU的ALE引脚。RESET引脚的信号对日历时钟和RAM没有影响,但它影响DS12887的命令和状态寄存器的内容,在图中直接将RESET连至Vcc,这样可以保证DS12887在进入或退出电源失效状态时,其工作状态不受RESET引脚的影响。DS12887有一个可编程输出方波引脚SQW,从该引脚可以输出频率为2Hz-256Hz的方波,在系统中正是利用此引脚输出周期为125MS的方波,作为MCU外部中断/INT0的中断源实现周期性中断,每当中断发生时,MCU读一二次输入口,检查电表是否转过一圈,在整点时还要采一次
三相电流和电压。除此之外,DS12887内部还有128字节的RAM的单元,其中前10个字节用于存放日历时钟信息,字节0为秒,字节2为分,字节4为时,字节6为星期,字节7为日,字节8为月,字节9为年,字节0AH-0DH用作控制和状态寄存器,剩下的114字节为用户RAM,所有的这128字节都是掉电非易失性的。
图3-5 时钟电路图
DS12887时钟芯片和AT89C5l单片微机的接口电路如图3-5所示。模式选择脚MOT接地, DS12887时钟芯片的AS端口和AT89C51单片机的AIE端直接相联;而DS、R/W 读写控制线与单片机的RD/WR控制线制线相连;DS12887的高位地址由AT89C51单片机的P2.7端口来片选,则DS12887的高8位地址定为7FH,而其低8位则由芯片内部各单元的地址来决定(00H-3FH);DS12887的中断输出端IQR和AT89C51的外部中断INT0端相联,给单片机提供中断信号;DS12887的SQW端与89C5I的TO端相连。 3.2.4 电源电路
单片机工作需要使用5V电压,因此需要给单片机设计电源电路。图3-6是单片机的电源电路。它采用LM7805三端集成稳压器,可输出+5V的直流电压供电。
CC
图3-6 电源电路图
3.2.5步进电机
步进电机为一种数字伺服执行元件,具有结构简单、运行可靠、控制方便、控制性能好等优点,广泛应用在数控机床、机器人、自动化仪表等领域。为了实现步进电机的简易运动控制,一般以单片机作为控制系统的微处理器,通过步进电机专用驱动芯片实现步进电机的速度和位置定位控制。
单片机在本次试验中对步进电机的控制从而达到对转角和位移的控制的方法。本次设计采用两个型号为130HZ308-450的三相反应式步进电机对旋转角度和位移进行控制,该步进电机力矩大、耐负载冲击、精度高。
其步距角为1.2°,即 N=1.2°,即本次设计的测控系统对回转台转角的控制精度可以达到1.2°。步进电机的驱动电路是根据控制信号工作的。而本次测控系统是以单片机位控制中心的,下面将介绍步进电机控制系统。
步进电机控制系统主要由脉冲分配器,功率驱动电路,步进电机几部分构成的。步进电机控制系统的方框图如图3-8所示:
图3-8 步进电机控制系统方框图
图3-9 步进电机控制系统电路图
如图3-9所示,是步进电机控制系统的电路图。
单片机输出步进脉冲后,再由脉冲分配电路按事先确定的顺序控制各相的通断。本设计由软件完成脉冲分配工作,不仅使线路简化,成本下降,而且可根据应用系统的需要,灵活地改变步进电机的控制方案。软件控制脉冲将在软件设计部分说明。
步进电机功率驱动电路工作在较大脉冲电流状态,采用光电耦合器将单片机与步机电机隔离可以避免单片机与步进电机功率回路的共地干扰,防止强功率的干扰信号反串进主控系统。此外,万一驱动电路发生故障,也不致让功放中较高的电压串入单片机而使其损坏。
步进电机的驱动电路有很多种,但最为常见的就是用单电压驱动,双电压驱动,斩波驱动,细分驱动等。但电压驱动是步进电机控制中最为简单的一种驱动电路,它在本质上是一个单间的反相器。它最大的特点是结构简单,工作效率低。而且它的外接电阻要消耗相当一部分能量,这样会影响电路的稳定性。双电压驱动电路是采用两种电源电压,缺点在于在高低电压连接处电流出现谷点,这样必然引起力矩在谷点处下降,不易于电机的正常运行。对于斩波驱动则可以克服这种缺点,并且还可以提高步进电机的效率。从提高效率的角度来看这是一个很好的驱动电路,它可以用较高的电源电压,同时无需外接电阻来限定额定电流和减少时间常数。但由于其波形顶部呈现锯齿形波动,所以产生较大的电磁噪声。细分驱动是用脉冲电压来供电的,对于一个电压脉冲,转子就可以转动一步。本设计采用的是恒频脉宽调制细分驱动电路,电路图如3-10所示。
遥控窗帘的设计
[摘 要]随着电子技术和自动化技术的发展,人们对生活质量的要求越来越高。本设计根据社会发展的需要,采用AT89C51单片机系统来控制窗扇,利用P1和P3口的特殊功能,根据其不同的控制模式,实现半制动控制,自动控制,定时控制的相互转换,实现窗扇自动开关。
关键词: 单片机,编码, 定时控制,步进电机
Design of remote control curtain
[Abstract]With the development of electronic technology and automation technology, people on the quality of life of the increasingly high demand. This design according to the needs of social development, using AT89C51 single-chip microcomputer system to control the window, using the special function of P1 and P3, according to its different mode of control, realize the brake control, automatic control, mutual conversion timing control, automatic switch model.
Key words: Single chip microcomputer,Coding, Timing control, Stepper motor
毕业论文(设计)原创性声明
本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。
作者签名: 日期:
毕业论文(设计)授权使用说明
本论文(设计)作者完全了解**学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。学校可以公布论文(设计)的全部或部分内容。保密的论文(设计)在解密后适用本规定。
作者签名: 指导教师签名:
日期: 日期:
注 意 事 项
1.设计(论文)的内容包括:
1)封面(按教务处制定的标准封面格式制作)
2)原创性声明
3)中文摘要(300字左右)、关键词
4)外文摘要、关键词
5)目次页(附件不统一编入)
6)论文主体部分:引言(或绪论)、正文、结论
7)参考文献
8)致谢
9)附录(对论文支持必要时)
2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:
1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写
2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画
3)毕业论文须用A4单面打印,论文50页以上的双面打印
4)图表应绘制于无格子的页面上
5)软件工程类课题应有程序清单,并提供电子文档
5.装订顺序
1)设计(论文)
2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订
3)其它
目 录
第一章 绪
论........................................................11
1.1. 设计背景和意义以及主要任
务.............................11
1.2设计的要求..............................................11
第二章 方案设计....................................................12
2.1 控制器智能项
目..........................................12
2.2 系统的总体架构计
划......................................12
第三章 硬件电路的设计..............................................13
3.1 AT89C51单片机的介绍.....................................13
3.2 本设计的相关电路的介
绍..................................13
3.2.1 晶振电
路............................................13
3.2.2 复位电
路............................................13
3.2.3 时钟电
路............................................13
3.2.4 电源电
路............................................13
3.2.5 步进电
机............................................13
3.3.6 键盘和显示接口电
路..................................13
第四章 软件程序设计................................................14
4.1 软件开发环境选
择........................................14
4.2 主程
序..................................................14
4.3 主程序软件的设
计........................................14
4.4 其它功能程序的设
计......................................14
4.4.1 键盘程序的设
计....................................14
4.4.2 定时程序的设
计....................................14
4.4.3 步进电机的程序设
计................................14
4.4.4 定时程序的设
计....................................14
第五章 系统的调试和运行............................................15
5.1 软件调
试................................................15
5.2 PCB图..................................................15 小
结 ..............................................................16
致
谢 ..............................................................17 参考文
献...........................................................18
第一章 绪论
1.1.设计背景和意义以及主要设计任务
随着社会经济的发展和人们生活水平的改变,宽大窗户的办公和生活建筑越来越多。这种建筑结构美观,采光良好。但是,窗户的高度或者宽度超过4
米以后手拉窗帘却比较困难。而现在的放地产商几乎却都没有为用户考虑这个问题,使一些高档住宅反而带来了生活上的不便,解决这个问题的方法是使用窗帘机。
窗帘机是专门为高大的窗户设计的窗帘控制装置,根据功能不同可以分为智能、遥控、自动和智能等多种规格。智能窗帘机是通过窗帘机上的控制按键操作窗帘开合的一种最简单的窗帘机,仅仅解决了手动窗帘的问题,可还需要人来近距离操作,智能窗帘使一些超高、超宽窗帘的操作变得比较容易。但是因为这种窗帘技术含量低,基本没有厂家作大规模工业化生产;遥控窗帘机可以远距离操作窗帘的开合,使用更为方便,自动窗帘机具有自动控制功能,可以满足用户各种情况下的使用要求。随着新科技和自动化的发展,传感器的使用数量越来越大,功能越来越强,各种传感器都已经标准化和模块化,这为智能家居控制控制系统的设计提供极大的方便。
智能家居是利用先进的计算机技术、网络通讯技术、综合布线技术、依照人体工程学原理,融合个性需求,将与家居生活有关的各个子系统如安防、灯光控制、窗帘控制、煤气阀控制、信息家电、场景联动、地板采暖等有机地结合在一起,通过网络化综合智能控制和管理,实现“以人为本”的全新家居生活体验。
在设计系统时,面对各种检查对象和大量控制单元,需要利用各种标准和MCU进行连接,在通过MCU进行数据处理,实现实时监控。而此时采用单片机来实现智能家居控制系统不仅具有采集控制方便,简单,灵活等优点,而且大幅度提高采各模块和芯片的协调性,从而大大提高系统的利用性。此系统设计正是利用AT89C51单片机的优点,顺利的完成了本设计的要求。并且实现了定时和自动控制功能,为控制家居设备提供了良好的基础。
随着自动窗帘热潮在世界范围内的日渐兴起,随着中国电子技术的飞速发展、人们生活水平的不断提高以及智能电子技术在生活中的广泛应用,自动窗帘已经成为未来家居装饰潮流发展的最新方向,在不久的将来,没有自动窗帘系统的住宅肯定不合潮流。从目前的发展趋势来看,在未来的20年时间里,自动窗帘行业将成为中国的主流行业之一,其市场的发展前景是非常广阔的。
本设计的主要任务主要是通过单片机实现窗扇的多项智能控制,完成单
片机应用系统其开发过的系统的总体设计,软件设计和系统调试。
1.2设计的要求
(1) 进一步熟悉和掌握单片机的内部结构和工作原理,了解单片机应用系统设计的基本方法和步骤
(2)掌握单片机仿真软件Proteus,protel,keil的使用方法;
(3)掌握键盘和显示器在的单片机控制系统中的应用。
(4)掌握撰写课程设计报告的方法。
第二章 方案设计
智能窗帘控制器总体方案设计是确定能够满足设计要求的总体方案的环节。本章从系统功能需求出发,规划并确定了系统的总体结构,并在此基础上
考虑了系统的可扩展性及可实现性。
2.1 控制器智能项目
随着人民生活水平的不断提高,人们对家庭生活舒适性的需求越来越强烈,窗帘作为每个家庭生活中最必须的家居用品之一,自然也需要满足人民更舒适性的需求。窗帘最基本的作用无非是保护业主的个人隐私以及遮阳挡尘等功能,但传统的窗帘您必须手动去开关,每天早开晚关也是挺麻烦的,特别是别墅或复式房的大窗帘,比较长,而且重,用时需要很大的力才能开关窗帘,特别不方便;于是智能窗帘应运而生。现有的智能窗帘都可以自动开关闭窗帘,到了时间自动控制窗帘的开关,可以根据光的但是他们也有些缺点。窗帘控制器的自动开关如何让窗帘能够开关自如,停机的时间是否到位。
智能窗帘主要有以下几大功能:(1)手动控制:该功能使智能窗帘具有手动正传、手动反转 和手动停止的功能。而且增加了工作状态指示,电机工作在正传、反转和停止状态的时候,数码管均有不同工作状态指示。(2)半自动手动控制:半自动手动控制是在需要关闭或打开窗帘的时候,只需要人工按一下“正转”或“反转”按键后,窗帘到位自动停止。(4) 时间自动控制:根据设置输入的开启或关闭时间,来控制窗帘的关闭和打开。
窗帘的正转、反转和停止功能可由单片机输出信号来控制步进电机的运转以实现。时间自动控制可以由定时器来控制。
2.2 系统总体架构计划
整个智能窗户控制系统包括微处理器、电机驱动电路等模块组成。整个系统框图如图2-1所示。
图2-1 系统框图
智能窗帘控制器的总体结构框图如图2-2所示。
图2-2 智能窗帘控制器结构框图
首先给电路加上电源,在通过时钟电路来定好时间,到了设定的时间自动的复位来开闭窗扇。在通过信号的传输到单片机控制器,来实现电机的运行与停止。显示部件用来显示智能窗帘控制器的各种状态信息。键盘是主要的输入设备,控制单片机的各种参量。
第三章 系统硬件设计
整个系统的硬件接线图如图3-1所示。
R
图3-1 系统总硬件接线图
总体硬件电路图包括单片机外围电路,键盘/显示接口电路,步进电机控制电路等模块。单片机外围电路提供各模块所需的5V电源和时钟模块;单片机的P2口控制步进电机的运行从而控制窗帘的升降。显示和键盘让人机交换变得更容易。以上各模块组成了智能窗帘控制器的总体电路。 3.1 AT89C51单片机的介绍
AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash
Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除1000次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
图3-2 AT89S51单片机引脚图
AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
VCC:供电电压。 GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器
能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为低八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示: 口管脚 备选功能 P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(计时器0外部输入) P3.5 T1(计时器1外部输入) P3.6 /WR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 3.2 本设计的相关电路的介绍 3.2.1晶振电路
电路中的晶振即石英晶体震荡器。由于石英晶体震荡器具有非常好的频率稳定性和抗外界干扰的能力,所以,石英晶体震荡器是用来产生基准频率的。通过基准频率来控制电路中的频率的准确性。同时,它还可以产生振荡电流,向单片机发出时钟信号。
图3-3是单片机的晶振电路。电路中的电容C1和C2的典型值通常选择为30PF左右,该电容的大小会影响振荡电路频率的高低、振荡器的稳定性和起振的快速性。晶体振荡频率的范围通常在1.2~12MHz。晶体的频率越高,系统的时钟频率越快,单片机的运行速度越快。但反过来,运行速度对于存储器的速度要求就越高,对印刷电路板的工艺要求也就越高,即要求线间的寄生电容要小。晶体和电容应该尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证振荡器稳定、可靠地工作。AT89C51常选择振荡频率12MHz的石英晶体。
10113029
[***********][1**********]728
V
图3-3 单片机晶振电路图
3.2.2复位电路
复位是单片机的初始化操作,只需要给AT89C51的复位引脚RST加上大于2个机器周期(即24个时钟振荡周期)的高电平就可以使AT89C51复位。复位时,单片机初始化为0000H,从0000H单元开始执行程序。除了进入系统的正常初始化之外,当程序运行错误(如程序跑飞)或操作错误使系统处于锁死状态时,也需要复位键使RST脚为高电平,使AT89C51摆脱“跑飞”或“死锁”状态而重新启动。图3-4是复位电路图。
10113029
[***********][1**********]728
图3-4 复位电路图
3.2.3时钟电路
本设计需要窗帘在给定的时间自动开和关,所以需要用到定时器,而为了保证单片机与外界时钟一致,要用到一个实时时钟电路。这里使用DS12887实时时钟芯片来完成这项功能。
DS12887是DALLAS公司生产的实时日历时钟芯片,其主要功能包括非易失性时日历时钟、报警器、百年历、可编程中断、方波发生器和114字节的非易失静态RAM。使用DS12887时应注意以下几点:Vcc正常情况下为5V,当Vcc降至4.25V时,所有的输入被忽略,输出为高阻状态,Vcc降至3V时,外部电源被关断,内部锂电池为实时时钟和RAM供电,在断电情况下,时钟继续运行,其中的数据可保存十年以上不会丢失。DS12887有两种工作时序,即MOTOROLA和INTEL时序,由MOT引脚的电平指定,当MOT引脚为高电平时选择MOTOROLA时序,当MOT引脚为低电平时选择INTEL时序,图中选为INTEL时序,这时芯片的DS引脚接系统的读信号/RD,R/W引脚接系统的写信号/WR。AS引脚用于分离数据地址总线AD7-AD0上的地址和数据信息,连接到MCU的ALE引脚。RESET引脚的信号对日历时钟和RAM没有影响,但它影响DS12887的命令和状态寄存器的内容,在图中直接将RESET连至Vcc,这样可以保证DS12887在进入或退出电源失效状态时,其工作状态不受RESET引脚的影响。DS12887有一个可编程输出方波引脚SQW,从该引脚可以输出频率为2Hz-256Hz的方波,在系统中正是利用此引脚输出周期为125MS的方波,作为MCU外部中断/INT0的中断源实现周期性中断,每当中断发生时,MCU读一二次输入口,检查电表是否转过一圈,在整点时还要采一次
三相电流和电压。除此之外,DS12887内部还有128字节的RAM的单元,其中前10个字节用于存放日历时钟信息,字节0为秒,字节2为分,字节4为时,字节6为星期,字节7为日,字节8为月,字节9为年,字节0AH-0DH用作控制和状态寄存器,剩下的114字节为用户RAM,所有的这128字节都是掉电非易失性的。
图3-5 时钟电路图
DS12887时钟芯片和AT89C5l单片微机的接口电路如图3-5所示。模式选择脚MOT接地, DS12887时钟芯片的AS端口和AT89C51单片机的AIE端直接相联;而DS、R/W 读写控制线与单片机的RD/WR控制线制线相连;DS12887的高位地址由AT89C51单片机的P2.7端口来片选,则DS12887的高8位地址定为7FH,而其低8位则由芯片内部各单元的地址来决定(00H-3FH);DS12887的中断输出端IQR和AT89C51的外部中断INT0端相联,给单片机提供中断信号;DS12887的SQW端与89C5I的TO端相连。 3.2.4 电源电路
单片机工作需要使用5V电压,因此需要给单片机设计电源电路。图3-6是单片机的电源电路。它采用LM7805三端集成稳压器,可输出+5V的直流电压供电。
CC
图3-6 电源电路图
3.2.5步进电机
步进电机为一种数字伺服执行元件,具有结构简单、运行可靠、控制方便、控制性能好等优点,广泛应用在数控机床、机器人、自动化仪表等领域。为了实现步进电机的简易运动控制,一般以单片机作为控制系统的微处理器,通过步进电机专用驱动芯片实现步进电机的速度和位置定位控制。
单片机在本次试验中对步进电机的控制从而达到对转角和位移的控制的方法。本次设计采用两个型号为130HZ308-450的三相反应式步进电机对旋转角度和位移进行控制,该步进电机力矩大、耐负载冲击、精度高。
其步距角为1.2°,即 N=1.2°,即本次设计的测控系统对回转台转角的控制精度可以达到1.2°。步进电机的驱动电路是根据控制信号工作的。而本次测控系统是以单片机位控制中心的,下面将介绍步进电机控制系统。
步进电机控制系统主要由脉冲分配器,功率驱动电路,步进电机几部分构成的。步进电机控制系统的方框图如图3-8所示:
图3-8 步进电机控制系统方框图
图3-9 步进电机控制系统电路图
如图3-9所示,是步进电机控制系统的电路图。
单片机输出步进脉冲后,再由脉冲分配电路按事先确定的顺序控制各相的通断。本设计由软件完成脉冲分配工作,不仅使线路简化,成本下降,而且可根据应用系统的需要,灵活地改变步进电机的控制方案。软件控制脉冲将在软件设计部分说明。
步进电机功率驱动电路工作在较大脉冲电流状态,采用光电耦合器将单片机与步机电机隔离可以避免单片机与步进电机功率回路的共地干扰,防止强功率的干扰信号反串进主控系统。此外,万一驱动电路发生故障,也不致让功放中较高的电压串入单片机而使其损坏。
步进电机的驱动电路有很多种,但最为常见的就是用单电压驱动,双电压驱动,斩波驱动,细分驱动等。但电压驱动是步进电机控制中最为简单的一种驱动电路,它在本质上是一个单间的反相器。它最大的特点是结构简单,工作效率低。而且它的外接电阻要消耗相当一部分能量,这样会影响电路的稳定性。双电压驱动电路是采用两种电源电压,缺点在于在高低电压连接处电流出现谷点,这样必然引起力矩在谷点处下降,不易于电机的正常运行。对于斩波驱动则可以克服这种缺点,并且还可以提高步进电机的效率。从提高效率的角度来看这是一个很好的驱动电路,它可以用较高的电源电压,同时无需外接电阻来限定额定电流和减少时间常数。但由于其波形顶部呈现锯齿形波动,所以产生较大的电磁噪声。细分驱动是用脉冲电压来供电的,对于一个电压脉冲,转子就可以转动一步。本设计采用的是恒频脉宽调制细分驱动电路,电路图如3-10所示。