智能遥控窗帘系统设计_第1页
智能遥控窗帘系统设计_第2页
智能遥控窗帘系统设计_第3页
智能遥控窗帘系统设计_第4页
智能遥控窗帘系统设计_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE吉林农业大学本科毕业设计论文题目:智能遥控窗帘系统设计学生姓名:专业年级:电子信息科学与技术指导教师:职称讲师吉林农业大学本科毕业设计PAGEI目录摘要 1Abstract: 11前言 11.1国内外的发展现状 12总体方案设计 22.1方案论证与比较 22.1.1直流电机驱动 22.1.2液晶显示 32.1.3无线遥控 52.280c51单片机 63系统设计 73.1总体设计 74.系统各功能模块设计 94.1无线发射接收功能模块 94.2直流电机驱动模块 114.3液晶显示模块 134.4无线遥控模块 184.4.1ShockBurstTM模式 194.4.2发送流程 194.4.3接收流程 194.4.4节能模式 204.4.5SPI接口配置 204.5风力传感器模块 214.6光传感器模块 224.7位置传感器模块 235软件设计 236系统调试 286.1自制光源调试 286.2风速测试 286.3光强度测试 297结论与展望 29参考文献 30致谢 30附录1 31附录2 33智能遥控窗帘系统设计学生:张连锋专业:电子信息科学与技术指导教师:宫鹤摘要:该系统为窗自动控制系统,可以根据各种条件手动或自动控制窗及窗帘的开度。利用无线遥控实现窗的开关及窗帘的开度的控制及实现开度显示(顺序实现窗帘的“全关-位置1-位置2-全开-位置2-位置1-全关”,每两种开度操作之间间隔一定时间,存储这个过程,可重复实现这个过程);利用光敏器件,根据不同的环境照度实现窗帘的四种开度。另外可增加温度﹑风力﹑雨水传感器,自动实现窗的开关。关键词:无线遥控液晶显示直流电机TheDesignofIntelligentRemoteControlCurtainSystemName:ZhanglianfengMajor:ElectronicInformationScienceandTechnologyTutor:GongHeAbstract:Thesystemfortheautomaticcontrolwindow,accordingtovariousconditionscanbemanualorautomaticcontrolwindowandthecurtainsopening.Therealizationoftheuseofwirelessremotecontrolswitchandthecurtainsofthewindowopeningofthecontrolandtheachievementofopeningshow(thecurtainordertoachieve"fulldraw-Position1-Position2–fulldrawback-Position2-Position1–fulldraw,"everytwoOpeningacertaintimeintervalbetweentheoperationandstorageofthisprocesscanrepeatthisprocesstoachieve)Theuseofphotosensitivedevices,accordingtotheenvironmenttoachieveilluminationofthefouropeningcurtain.Inadditiontoincreasethetemperature﹑wind﹑rainsensor,automaticallyswitchthewindow.Keywords:wirelessremotecontrolLCD1前言随着社会经济的发展和人们生活观念的改变,宽大窗户的办公和生活建筑越来越多,这种建筑结构美观,采光良好。但是,窗户的高度或者宽度超过4米以后手拉窗帘却比较困难.而现在的房地产开发商几乎却都没有为用户考虑这个问题,使一些高档住宅反而带来了生活上的不便.解决这个问题的方法是使用窗帘机。窗帘机是专门为高大的窗户设计的窗帘控制装置,根据功能不同可以分为电动、遥控、自动和智能等多种规格。电动窗帘机是通过窗帘机上的控制按键操作窗帘开合的一种最简单的窗帘机,仅仅解决了手拉窗帘的问题,可还需要人来近距离操作,电动窗帘机使一些超高、超宽窗帘的操作变得比较容易。但因为这种窗帘机技术含量低,基本上没有厂家作大规模工业化生产;遥控窗帘机可以远距离操作窗帘的开合,使用更为方便,主要品牌有福建龙岩的飞鸿牌,北京的龙华和广州的创明等,还有一些国外品牌的产品。自动窗帘机具有自动控制功能,使窗帘天亮自动打开,天黑自动关闭,使用更为方便。但笔者还没有在市场上见到产品。智能窗帘机同时具有手动、遥控和自动功能,可以满足用户各种情况下的使用要求,是一种更为先进的窗帘控制装置。各种窗帘机因为功能和价格的不同,用户可根据自己的要求选用。下面以兰州的奥兰AL-CK01智能窗帘机为例作简略的介绍。奥兰AL--CK01智能窗帘机和通用的槽型窗帘轨道配套,安装方便,体积小巧,工作可靠,可在各种使用窗帘的场合实现开关窗帘的自动控制、手动控制和红外遥控。1.1国内外的发展现状遥控电动窗帘在最近几年被广泛应用于高级智能公寓和私人别墅。随着高科技的进步,近年又出现了直线电机新技术,直线电机技术作为一项高新技术自问世以来,就受到社会各界广泛关注。并以它自身的技术特点迅速改变人们对传统事物的看法。电动窗帘的技术革新——磁驱直线电动窗帘机直线电机与传统旋转式电机相比在很多领域显示了无可比拟的优势。如机场的物流线、自动感应门、邮政分拣系统、上海的磁悬浮列车、计算机磁盘定位系统、离子加速器等,而将它应用在电动帘机方面则使该行业进入了一个新阶段——磁驱直线电动窗帘机,简直就是电动窗帘行业的新革命。磁驱直线电动窗帘机直接利用磁驱动的力量驱动电机进行往返动作,带动窗帘作来回往返运动实现窗帘的开合。运行中电机与轨道运行无接触,减少了机械故障,降低了噪音,确保了运行的可靠性,从而改变了人们对于传统电动窗帘机易发生故障,易脱位、不安全,不可靠、使用寿命短的认识。磁驱直线电动窗帘机与传统旋转式电机产品的区别在于它舍弃了大量复杂的机械传动机构(不用滑轮及钢丝绳组件及相应的定位装置),减少了大量易损部件。使之设计更紧凑、结构更合理、外观更精美、可靠性更好、安全性更高、使用寿命更长(达到50000次以上)。磁驱电动窗帘机利用了磁浮(驱)原理制作的运行机构,所以在运行时电机无噪音、轻便、快捷;这是传统产品所无法相比的,同时既可手控也可遥控,与手拉式窗帘机及传统电动窗帘机的易掉线、易卡位、易损坏等相比较,它的优势是不言而喻的,今后必将成为当今高档住宅、宾馆、智能大厦、多媒体中心、私家别墅等的首选自动化窗饰[1]。2总体方案设计2.1方案论证与比较2.1.永磁直流电动机是由一块或多块永磁体建立磁场的直流电动机,可以由改变电枢电压来方便地调速。具有体积小、效率高、结构简单、用铜量少等优点。一般情况下,永磁直流电动机不允许在额定电压下反接制动运行,否则会造成永磁体退磁;如确有必要作这种方式运行时,要加限流电阻,以限制电流过大。根据所用的永磁材料不同,永磁直流电动机分为铝镍钴永磁直流电动机、铁氧体永磁直流电动机和稀土永磁直流电动机。铝镍钴永磁直流电动机需要消耗大量的贵重金属、价格较高,但对高温的适应性好,用于环境温度较高或对电动机的温度稳定性要求较高的场合。铁氧体永磁直流电动机以廉价见长,且性能良好,广泛用于家用电器、汽车、玩具、电动工具等领域。用稀土永磁材料作磁极制的稀土永磁直流电动机,体积小且性能更好,但价格昂贵,主要用于航天、计算机、井下仪器等。但近些年出现了新一代稀土永磁直流电动机—钕铁硼永磁直流电动机,由于我国拥有世界80%以上蕴藏量的钕矿资源,因此在价格上具有得天独厚的优势,高性能钕铁硼永磁材料性价比大幅提升,使质优、价廉的钕铁硼永磁直流电动机在产业化生产中得到了广泛的应用,同时也促进永磁直流电动机的性能与结构迅速发展。一、选用永磁直流电动机的一般原则: (1)类型的选择宜优先选用效率高、价格便宜、温升低的铁氧体永磁直流电动机。只有当对性能要求严格、体积小、环境温度较高时才考虑选用铝镍钴永磁直流电动机或稀土永磁直流电动机。(2)合理选择电动机的功率电动机输出的最大功率是有限度的,如果电动机的功率选择过小,负载超过了电动机的额定输出功率就会发生电动机过载,过载时会出现电动机发热、振动、转速下降、声音异常等现象,严重过载时,将会烧毁电动机。而功率过大,则会造成经济浪费。因此合理选择电动机的功率是很重要的。(3)规格选择往往由于实际生产的产品规格不多,给选用产品增加困难。在选择产品规格时可考虑:在电源电压可调的场合,可按实际需要选择转矩、转速与产品相应的额定值接近的规格,通过改变电压得到所需转速;在电源电压固定的场合,如果没有适当规格的产品可供选用时,可先按转矩选择适当规格,而产品的电压与转速之间可作适当调整。二、永磁直流电动机在应用时应注意:(1)如果产品没有特别说明,一般情况下(例如铝镍钴永磁直流电动机或铁氧体永磁直流电动机)永磁直流电动机都不允许在额定电压下反接制动运行,否则会造成永磁体退磁;如确有必要作这种方式运行时,要加限流电阻,以限制电流过大。(2)按以下步骤对电机好坏进行初步的检查:首先检查电机的外观:应无划痕、碰伤和涂镀层脱落;然后转动转轴,应能灵活转动,无明显的卡壳现象。检查电动机的接线是否牢固,并通电运行。电动机在旋转的过程中应不存在着摩擦,其中最突出的是轴承摩擦。轴承磨损后会发出不正常声音,出现局部过热温升现象。(3)更换电刷时,要清理周围的电炭粉尘,并用酒精、汽油清洗换向器,换用新电刷时,要注意先进行空载磨合。(4)注意电动机因电流过大、温度变化及拆装时磁路开路而引起的永磁体退磁,尤其对于铝镍钴永磁电动机,拆装时要对永磁磁路进行磁短路保护,否则退磁后要另外充磁[2]。2.1.2液晶显示这里介绍的字符型液晶模块是一种用5x7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字、2行20个字等1602采用标准的16脚接口,其中:第1脚:VSS为地电源,第2脚:VDD接5V正电源第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第7~14脚:D0~D7为8位双向数据线。第15~16脚:空脚。

1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如图1所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码。图1中文字符代码与字符图形对应关系Figure1Chinesecharactercodeandcharactergraphicscorrespondingtotherelationship1602液晶模块内部的控制器共有11条控制指令,如表1所示,表11602液晶模块的11条控制指令Table11602LCDmodule11controlcommands指令RSR/WD7D6D5D4D3D2D1D0清显示0000000001光标返回000000001*置输入模式00000001I/Ds显示开/关控制0000001DCB光标或数字移位000001S/CR/L**置功能00001DLNF**置字符发生吃存贮器地址0001字符发生存贮器地址(AGG)置数据存贮器地址001显示数据存贮器地址(ADD)读忙标志或地址01BF计数器地址(AC)写数据到CGRAM或DDRAM10要写的数从CGRAM或DDRAM读数11读出的数据

DM-162液晶显示模块可以和单片机AT89C51直接接口,电路如图2所示。图2液晶模块与单片机AT89C51直接接口Figure2Single-chipLCDmodulewithadirectinterfaceAT89C51

液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符[6]。2.1.3无线遥控无线遥控,采用nRF905无线模块CRM905ANC,GFSK调制收发合一的方式传送数据多频道应用-兼容ETSI/FCC频道切换时间小于650us,接收灵敏度高达-100dBm,数据传输时需外接433MHz50欧天线。数据传输速率可达100kbps。工作电压必须控制在1.9-3.6V.nRF905单片无线收发器工作在433/868/915MHz的ISM频段由一个完全集成的频率调制器一个带解调器的接收器一个功率放大器一个晶体振荡器和一个调节器组成ShockBurst工作模式的特点是自动产生前导码和CRC可以很容易通过SPI接口进行编程配置。nRF905是挪威Nordic公司推出的单片射频发射器芯片,工作电压为1.9-3.6V,32引脚QFN封装(5mm×5mm),工作于433/868/915MHz3个ISM频道(可以免费使用)。nRF905可以自动完成处理字头和CRT(循环冗余码校验)的工作,可由片内硬件自动完成曼彻斯特编码/解码,使用SPI接口与微控制器通信,配置非常方便,其功耗非常低,以-10dBm的输出功率发射时电流只有11mA,在接收模式时电流为12.5mA。nRF905传输数据时为非实时方式,即发送端发出数据,接收端收到后先暂存于芯片存储器内,外面的MCU可以在需要时再到芯片中去取。nRF905一次的数据传输量最多为32B,由四种模式,通过单片机来配置,nRF905的两种工作模式和两种节能模式,分别为掉电模式、待机模式、ShockBurstTM接收模式和ShockBurstTM发送模式,这几种模式由外界CPU通过控制nRF905的3个引脚PWR_UP、TRX_CE和TX_EN的高低电平来决定,外界MCU通过SPI总线配置nRF905的内部寄存器,读写数据时必须把其置为待机或掉电模式,nRF905在待机模式时功耗为40μA,在掉电模式时功耗为2.5μA[3]。另一种无线数传模块是JZ863,是一种短距离无线数据传输产品,它体积小,功耗低,稳定性及可靠性极高,能方便为用户提供双向的数据信号传输、检测和控制。但是内部没有空闲模式与关机模式,不利于实现节能,所以选择nRF905。nRF905片内集成了电源管理、晶体振荡器、低噪声放大器、频率合成器功率放大器等模块,曼彻斯特编码/解码由片内硬件完成,无需用户对数据进行曼彻斯特编码,因此使用非常方便。2.280c51单片机80C51是INTEL公司MCS-51系列单片机中最基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它继承和扩展了MCS-48单片机的体系结构和指令系统。

80C51内置中央处理单元、128字节内部数据存储器RAM、32个双向输入/输出(I/O)口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。

此外,80C51还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。80C51有PDIP(40pin)和PLCC(44pin)两种封装形式。STC89C51可以代替AT89C51,功能更强,速度更快,寿命更长,价格更低。外型:40个引脚,双列直插DIP-40。STC89C51可以完成ISP在线编程功能,而AT89C51则不能。将AT89C51中的程序直接烧录到STC89C51中后,STC89C51就可以代替AT89C51直接工作(一般都不需要做任何改动即可正常工作)。STC推出的系列51单片机芯片是全面兼容其它51单片机的,而51单片机是主流大军,每一个高等院校、普通学校、网站、业余单片机培训都是以51单片机为入门教材的。STC89C51内部有EEPROM,可以在程序中修改,断电不丢失。还增加了两级中断优先级,等等[5]。3系统设计3.1总体设计通过控制直流永磁电机的参数,可实现电机的正转或反转,即窗帘的拉起或放下。由于本设计方案要求,系统可根据光照程度的不同(光源自制,由三个发光二极管组成,由单片机设定不同的发光方式),设定窗帘的开度不同,共四种位置(全开﹑位置一﹑位置二﹑全关),且由于系统中含有存储单元,四种位置可重复实现。该系统并且加入风力及雨水传感器,系统可根据传感器发回的数据,控制窗的开度。当风力达到一定参数时,窗会自动关闭,或当雨量达到设定值时,窗也自动关闭。此外,该且此系统外加无线遥控装置,可在一定范围内对窗及窗帘进行控制。单单片机无线收发窗帘电机无线收发窗帘电机位置传感器位置传感器雨水传感器雨水传感器窗户控制窗户控制光传感器光传感器风传感器风传感器单单片机键盘液晶显示键盘液晶显示无线无线收发图3.1总体设计框图Figure3.1Designdiagram4.系统各功能模块设计4.1无线发射接收功能模块nRF905在使用中,根据不同需要,其电路图不尽相同,图4.1所示为典型的应用原理图,该电路天线部分使用的是50Ω单端天线。在nRF905的电路板设计中,也可以使用环形天线,把天线布在PCB板上,这可减小系统的体积。nRF905通过SPI接口和微控制器进行数据传送,通过ShockBurstTM收发模式进行无线数据发送,收发可靠,使用方便,在工业控制、消费电子等各个领域都具有广阔的应用前景[4]。图4.1带有外部元件的nRF905Figure4.1withtheexternalcomponentsnRF905表2Nrf905快速参考数据Table2QuickreferencedataofNrf905参数数值单位最低工作电压1.9V最大发射功率10dBm最大数据传输率100kbps输出功率为-10dBm时工作电流11mA接收模式时工作电流12.5mA温度范围-40to+80℃典型灵敏度-100dBmPOWERDOWN模式时工作电流2.5uA引脚介绍表3:nRF905引脚Table3:thepinofnRF905引脚名称引脚功能描述1TRX_CE数字输入使nRF905处于发送或接收状态2PWR_UP数字输入工作状态选择3uPCLK时钟输出输出时钟4VDD电源电源正端5VSS电源电源地6CD数字输出载波检测7AM数字输出地址匹配8DR数字输出数据准备好9VSS电源电源地10MISOSPI输出SPI输出11MOSISPI输入SPI输入12SCKSPI时钟SPI时钟13CSNSPI片选SPI片选,低有效14XC1模拟输入晶振输入引脚115XC2模拟输出晶振输入引脚216VSS电源电源地17VDD电源电源正端18VSS电源电源地19VDD_PA输出电源给功率放大器提供1.8伏电压20ANT1射频天线接口121ANT2射频天线接口222VSS电源电源地23IREF模拟输入参考输入24VSS电源电源地25VDD电源电源正端26VSS电源电源27VSS电源电源地28VSS电源电源地29VSS电源电源地30VSS电源电源地31DVDD_1V2电源低电压正数字输出32TX_EN数字输入等于1,发送模式;等于0,接受模式nRF905有两种工作模式和两种节能模式。两种工作模式分别是ShockBurstTM接收模式和ShockBurstTM发送模式,两种节能模式分别是关机模式和空闲模式。nRF905的工作模式由TRX_CE、TX_EN和PWR_UP三个引脚决定,详见表4,应用电路图见图4.2。表4:nRF905工作模式Table4:nRF905themodeofnRF905PWR_UPTRX_CETX_EN工作模式0××关机模式10×空闲模式110射频接收模式111射频发送模式图4.2nRF905无线收发电路Figure4.2nRF905wirelesstransceivercircuit4.2直流电机驱动模块直流电机的驱动用的是L293D芯片,它是推拉4通道驱动带二极管,600mA输出电流每通道。2A峰值输出电流每通道(不可重复,估计将会损坏)。温度过高保护。逻辑"0"输入电压为1.5V,可以免除1.5V以下的干扰。L293D内置钳位二极管。L293D是单块集成电路,高电压,高电流,四通道驱动,设计用来接受DTL或者TTL逻辑电平,驱动感性负载(比如继电器,直流和步近马达),和开关电源晶体管。简单的使用是作为2个桥,一对通道连接起来有一个使能输入。分离的输入引脚提供某种逻辑,允许用低电压操作,并且还包括内置的钳位二极管[9]。这个设备适用于高达5KHz的开关应用。L293D是16引脚塑料封装,中间的4个引脚是短路的(为了散热)

图4.380C51与L293D连接电路Figure4.380C51withcircuitrytoconnectL293D图4.4L293D与直流电动机连接电路Figure4.4L293DconnectionwiththeDCmotorcircuit4.3液晶显示模块我们知道文本文件中每一个字符都是用一个字节的代码记录的。一个汉字是用两个字节的代码记录。在PC上我们只要打开文本文件就能在屏幕上看到对应的字符是因为在操作系统里和BIOS里都固化有字符字模。什么是字模?就代表了是在点阵屏幕上点亮和熄灭的信息数据。例如“A”字的字模:

01110○■■■○

10001■○○○■

10001■○○○■

10001■○○○■

11111■■■■■

10001■○○○■

10001■○○○■

上图左边的数据就是字模数据,右边就是将左边数据用“○”代表0,用“■”代表1。看出是个“A”字了吗?在文本文件中“A”字的代码是41H,PC收到41H的代码后就去字模文件中将代表A字的这一组数据送到显卡去点亮屏幕上相应的点,你就看到“A”这个字了。

刚才我说了想要在LCD1602屏幕的第一行第一列显示一个"A"字,就要向DDRAM的00H地址写入“A”字的代码41H就行了,可41H这一个字节的代码如何才能让LCD模块在屏幕的阵点上显示“A”字呢?同样,在LCD模块上也固化了字模存储器,这就是CGROM和CGRAM。HD44780内置了192个常用字符的字模,存于字符产生器CGROM(CharacterGeneratorROM)中,另外还有8个允许用户自定义的字符产生RAM,称为CGRAM(CharacterGeneratorRAM)。那么如何对DDRAM的内容和地址进行具体操作呢,下面先说说HD44780的指令集及其设置说明,请浏览该指令集,并找出对DDRAM的内容和地址进行操作的指令。共11条指令:清屏指令如图4.5所示图4.5清屏指令Figure4.5cleanscreeninstructions功能:<1>清除液晶显示器,即将DDRAM的内容全部填入"空白"的ASCII码20H;

<2>光标归位,即将光标撤回液晶显示屏的左上方;

<3>将地址计数器(AC)的值设为0。2.光标归位指令如图4.6所示图4.6光标归位指令Figure4.6placesthecursortothecommand功能:<1>把光标撤回到显示器的左上方;

<2>把地址计数器(AC)的值设置为0;

<3>保持DDRAM的内容不变。3.进入模式设置指令,如图4.7所示图4.7模式设置指令Figure4.7Setcommandmode功能:设定每次定入1位数据后光标的移位方向,并且设定每次写入的一个字符是否移动。参数设定的

情况如下所示:

位名

设置

I/D

0=写入新数据后光标左移

1=写入新数据后光标右移

S

0=写入新数据后显示屏不移动

1=写入新数据后显示屏整体右移1个字符4.显示开关控制指令如图4.8所示图4.8显示开关控制指令Figure4.8showsswitchcontrolcommands功能:控制显示器开/关、光标显示/关闭以及光标是否闪烁。参数设定的情况如下:

位名

设置

D

0=显示功能关

1=显示功能开

C

0=无光标

1=有光标

B

0=光标闪烁

1=光标不闪烁5.设定显示屏或光标移动方向指令如图4.9所示图4.9设定显示屏或光标移动方向指令Figure4.9Setthedirectionofthescreenormovethecursorcommands功能:使光标移位或使整个显示屏幕移位。参数设定的情况如下:

S/C

R/L

设定情况

0

0

光标左移1格,且AC值减1

0

1

光标右移1格,且AC值加1

1

0

显示器上字符全部左移一格,但光标不动

1

1

显示器上字符全部右移一格,但光标不动6.功能设定指令如图所示图4.10功能设定指令Figure4.10Setupinstructions功能:设定数据总线位数、显示的行数及字型。参数设定的情况如下:

位名

设置

DL

0=数据总线为4位

1=数据总线为8位

N

0=显示1行

1=显示2行

F

0=5×7点阵/每字符

1=5×10点阵/每字符7.设定CGRAM地址指令如图所示图4.11设定CGRAM地址指令Figure4.11InstructionSetCGRAMAddress功能:设定下一个要存入数据的CGRAM的地址。

8.设定DDRAM地址指令

图4.12设定DDRAM地址指令Figure4.12InstructionSetDDRAMAddress功能:设定下一个要存入数据的CGRAM的地址。9.读取忙信号或AC地址指令如图所示图4.13读取忙信号或AC地址指令Figure4.13toreadbusysignalorACaddresscommand功能:<1>读取忙碌信号BF的内容,BF=1表示液晶显示器忙,暂时无法接收单片机送来的数据或指令;

当BF=0时,液晶显示器可以接收单片机送来的数据或指令;

<2>读取地址计数器(AC)的内容。10.数据写入DDRAM或CGRAM指令一览如图图4.14数据写入DDRAM或CGRAM指令Figure4.14DDRAMorCGRAMdatawritecommand功能:<1>将字符码写入DDRAM,以使液晶显示屏显示出相对应的字符;

<2>将使用者自己设计的图形存入CGRAM。11.从CGRAM或DDRAM读出数据的指令一览如图图4.15从CGRAM或DDRAM读出数据的指令Figure4.15fromCGRAMorDDRAMreadinstructions功能:读取DDRAM或CGRAM中的内容。基本操作时序:读状态

输入:RS=L,RW=H,E=H

输出:DB0~DB7=状态字

写指令

输入:RS=L,RW=L,E=下降沿脉冲,DB0~DB7=指令码

输出:无

读数据

输入:RS=H,RW=H,E=H

输出:DB0~DB7=数据

写数据

输入:RS=H,RW=L,E=下降沿脉冲,DB0~DB7=数据

输出:无图4.1680C51与1602连接电路Figure4.1680C51connectionwiththe1602circuit4.4无线遥控模块图4.17无线控制电路Figure4.17WirelessControlcircuitnRF905有两种工作模式和两种节能模式。两种工作模式分别是ShockBurstTM接收模式和ShockBurstTM发送模式,两种节能模式分别是关机模式和空闲模式。nRF905的工作模式由TRX_CE、TX_EN和PWR_UP三个引脚决定。4.4.1ShockBurstTM模式与射频数据包有关的高速信号处理都在nRF905片内进行,数据速率由微控制器配置的SPI接口决定,数据在微控制器中低速处理,但在nRF905中高速发送,因此中间有很长时间的空闲,这很有利于节能。由于nRF905工作于ShockBurstTM模式,因此使用低速的微控制器也能得到很高的射频数据发射速率。在ShockBurstTM接收模式下,当一个包含正确地址和数据的数据包被接收到后,地址匹配(AM)和数据准备好(DR)两引脚通知微控制器。在ShockBurstTM发送模式,nRF905自动产生字头和CRC校验码,当发送过程完成后,数据准备好引脚通知微处理器数据发射完毕。由以上分析可知,nRF905的ShockBurstTM收发模式有利于节约存储器和微控制器资源,同时也减小了编写程序的时间。下面具体详细分析nRF905的发送流程和接收流程[7]。4.4.2发送流程典型的nRF905发送流程分以下几步:

A.

当微控制器有数据要发送时通过SPI接口,按时序把接收机的地址和要发送的数据送传给nRF905,SPI接口的速率在通信协议和器件配置时确定;

B.

微控制器置高TRX_CE和TX_EN,激发nRF905的ShockBurstTM发送模式;

C.

nRF905的ShockBurstTM发送:

l

射频寄存器自动开启;

2

数据打包(加字头和CRC校验码);

3

发送数据包;

4

当数据发送完成,数据准备好引脚被置高;

D.

AUTO_RETRAN被置高,nRF905不断重发,直到TRX_CE被置低;

E.

当TRX_CE被置低,nRF905发送过程完成,自动进入空闲模式。

ShockBurstTM工作模式保证,一旦发送数据的过程开始,无论TRX_EN和TX_EN引脚是高或低,发送过程都会被处理完。只有在前一个数据包被发送完毕,nRF905才能接受下一个发送数据包。4.4.3接收流程A.

当TRX_CE为高、TX_EN为低时,nRF905进入ShockBurstTM接收模式;

B.

650us后,nRF905不断监测,等待接收数据;

C.

当nRF905检测到同一频段的载波时,载波检测引脚被置高;

D.

当接收到一个相匹配的地址,地址匹配引脚被置高;

E.

当一个正确的数据包接收完毕,nRF905自动移去字头、地址和CRC校验位,然后把数据准备好引脚置高

F.

微控制器把TRX_CE置低,nRF905进入空闲模式;

G.

微控制器通过SPI口,以一定的速率把数据移到微控制器内;

H.

当所有的数据接收完毕,nRF905把数据准备好引脚和地址匹配引脚置低;

I.

nRF905此时可以进入ShockBurstTM接收模式、ShockBurstTM当正在接收一个数据包时,TRX_CE或TX_EN引脚的状态发生改变,nRF905立即把其工作模式改变,数据包则丢失。当微处理器接到地址匹配引脚的信号之后,其就知道nRF905正在接收数据包,其可以决定是让nRF905继续接收该数据包还是进入另一个工作模式。4.4.4节能模式nRF905的节能模式包括关机模式和节能模式。在关机模式,nRF905的工作电流最小,一般为2.5uA。进入关机模式后,nRF905保持配置字中的内容,但不会接收或发送任何数据。

空闲模式有利于减小工作电流,其从空闲模式到发送模式或接收模式的启动时间也比较短。在空闲模式下,nRF905内部的部分晶体振荡器处于工作状态。nRF905在空闲模式下的工作电流跟外部晶体振荡器的频率有关。器件配置所有配置字都是通过SPI接口送给nRF905。SIP接口的工作方式可通过SPI指令进行设置。当nRF905处于空闲模式或关机模式时,SPI接口可以保持在工作状态。4.4.5SPI接口配置

SPI接口由状态寄存器、射频配置寄存器、发送地址寄存器、发送数据寄存器和接收数据寄存器5个寄存器组成。状态寄存器包含数据准备好引脚状态信息和地址匹配引脚状态信息;射频配置寄存器包含收发器配置信息,如频率和输出功能等;发送地址寄存器包含接收机的地址和数据的字节数;发送数据寄存器包含待发送的数据包的信息,如字节数等;接收数据寄存器包含要接收的数据的字节数等信息[8]。射频配置射频配置寄存器和内容如表5所示:

表5:射频配置寄存器Table5:RFconfigurationregister名称位宽描述CH_NO9和HFREQ_PLL一起进行频率设置(默认值为001101100=108)HFREQ_PLL1使PLL工作于433或868/915MHz(默认值为0)‘0’-工作于433MHz频段;‘1’-工作于868/915MHz频段PA_PWR2输出功率(默认值为00),‘00’-10dBm;‘01’-2dBm;‘00’+6dBmRX_RED_PWR1接收方式节能端,该位为高时,接收工作电流为1.6mA,但同时灵敏度也降低AUTO_RETRAN1自动重发位,只有当TRX_CE和TXEN为高时才有效RX_AFW3接收地址宽度(默认值为100),‘001’-1btyeRX地址;‘100’-4btyeRX地址;TR_AFW3发送地址宽度(默认值为100),‘001’-1btyeRX地址;‘100’-4btyeRX地址;RX_PW6发送数据宽度(默认值为10000)‘000001’-1btye发送数据宽度‘000010’-2btye发送数据宽度…………‘100000’-32btye发送数据宽度TX_PW6接收数据宽度(默认值为10000)‘000001’-1btye发送数据宽度‘000010’-2btye发送数据宽度…………‘100000’-32btye发送数据宽度RX_ADDRESS32发送地址标识(默认值为E7E7E7E7)UP_CLK_FREQ2输出时钟频率(默认值为11)‘00’-4MHz;‘01’-2MHz;‘10’-1MHz;‘11’-500kHzUP_CLK_EN1输出时钟使能XOF3晶振频率端,必须与外部晶振频率向对应(默认值为100)‘000’-4MHz;‘001’-8MHz;‘010’-12MHz;‘011’-16MHz;‘100’-20MHz;CRC_EN1CRC校验使能端,高为使能,默认值为高CRC_MODE1CRC方式选择端,高为16位,低为8位,默认值为高射频寄存器的各位的长度是固定的。然而,在ShockBurstTM收发过程中,TX_PAYLOAD、RX_PAYLOAD、TX_ADDRESS和RX_ADDRESS4个寄存器使用字节数由配置字决定。nRF905进入关机模式或空闲模式时,寄存器中的内容保持不变[10]。4.5风力传感器模块通过风力使风车转动,在风车的前后安装上红外对发管,通过接收信号频率的变化,分析风力是否达到关窗的要求。当达到关窗的要求时,向单片机发送个信号,然后单片机控制窗户关闭。图4.18风力传感器电路Figure4.18Windsensorcircuit4.6光传感器模块利用无线遥控实现窗的开关及窗帘的开度的控制及实现开度显示(顺序实现窗帘的“全关-位置1-位置2-全开-位置2-位置1-全关”,每两种开度操作之间间隔一定时间,存储这个过程,可重复实现这个过程);利用光敏器件,根据不同的环境照度实现窗帘的四种开度,定位精度1%。图4.19光传感器电路Figure4.19LightSensorCircuit4.7位置传感器模块通过下落铁块产生的脉冲控制窗帘的位置,如图4.18所示为位置传感器图4.20位置传感器Figure4.20PositionSensor5软件设计1602显示程序的编写流程如图5.1所示:LCM初始化LCM初始化开始调用清除子程序调用写到LCM调用显示到LCM保护现场查表调用写到LCM恢复现场结束开始调节指针返回1602主程序显示子程序图5.1显示程序流程图Figure5.1Theflowchartshowstheprocedures智能窗帘的主程序流程图如5.2所示,分为遥控控制和智能自动控制两部分中断初始化中断初始化开始0号功能有效否3号功能有效否2号功能有效否1号功能有效否窗帘的示教显示YN关闭窗户NYYN打开窗户4号功能有效否全关闭窗帘YNY5号功能有效否N窗帘位于位置1Y6号功能有效否窗帘位于位置2NY7号功能有效否全打开窗帘YNN8号功能有效否智能YN图5.2窗户主程序流程图Figure5.2Flowchartofmainprogram智能窗帘机的智能自动控制程序流程图如图5.3所示,通过检测雨水、风的数据,判断是否关闭窗户;检测光照的强度信息判断窗帘是的开度。低功耗低功耗开始关闭所有中断清内存单元值初始化中断低功耗唤醒是否检测到雨水查询雨水信息是否开窗Y开窗NYN是否检测到风查询风信息是否开窗是否检测到光开窗YNYNY查询光信息根据光强选择窗帘位置N图5.3智能自动控制程序Figure5.3Intelligentautomaticcontrolprocedures放窗帘放窗帘开始是否有键按下停5秒继续停,反转停5秒继续停5秒继续到位置2否到位置3否到位置4否到位置3否到位置2否停5秒继续到位置1否结束YNYNNYNYNNYNY图5.4窗帘自动程序Figure5.4Automaticprocedurescurtains当想用遥控调整窗帘的位置的时候,可以按UP键或DOWN键控制窗帘上升或下降,程序的编写流程如图5.5所示。低功耗低功耗开始唤醒键按下否计数清零发当前窗状态显示当前窗位置UP键按下否COUNT+1COUNT—1ENTERNYYY根据菜单内容无线发射命令Y调用液晶显示调用液晶显示NNDOWN键按下否N图5.5遥控流程图Figure5.5Flowchartoftheremotecontrol串口中断开串口中断开开始清TI位清RI位将数据送到COMMAD置回归标志位中断返回图5.6无线接收流程图Figure5.6Flowchartofthewirelessreceiver6系统调试6.1自制光源调试R=8.2K调试结果如表6.1所示表6.1光源调试数据Table6.1Thedataofsourcedebugging高亮次亮普亮灭71H5BH41H00H7AH55H33H00H6FH50H3EH00H74H57H37H00H6EH61H33H00H75H54H30H00H70H52H3AH00H77H50H39H00H80H57H32H00H74H5EH35H00H根据数据显示(经多次验证),在自制光源呈高亮状态时,数据值在80H~6EH之间,光源呈次亮状态时,数据值在61H~50H之间,光源呈普亮状态时,数据值在41H~30H之间,而光源呈灭状态时,数据无变化,总是00H6.2风速测试单位:m/s公式:m=L*countv=m/60count:次数L:周长0.016m测试时间:60s表6.2风速测试数据Table6.2thetestdataspeed次数窗边第一次1.83m/s第二次2.12m/s第三次2.54m/s第四次2.43m/s第五次1.92m/s0级:0.0m/s~0.2m/s1级:0.3m/s~1.5m/s2级:1.6m/s~3.3m/s3级:3.4m/s~5.4m/s4级:5.5m/s~7.9m/s根据测试数据显示,风速基本在1.8m/s~3m/s之间,定义为二级微风。由于光耦元件的灵敏度的限制,规定当风速大于6m/s时,关窗。6.3光强度测试R=10k测试数据如表6.3所示表6.3光照数据Table6.3LightingData无遮光(V)纸遮(V)不透光遮(V)全亮2.431.221.13亮2个管2.401.111.03亮1个管2.360.980.9全灭2.330.90.87结论与展望转眼之间,学校生涯就这么结束了,好难忘,通过这次毕业设计,我对“春蚕到死丝方尽,蜡炬成灰泪始干”又有了更深的认识,好像每次在回望过去的时候,总要感叹一番光阴的流逝。现在的我也在做着这样的事:怎么,我的大学生活这么快就结束了?好像还是不久前才去学校联系的,现在我就坐在电脑前回想着我做毕业设计时的情况,写着我的毕业设计总结体会。但就是这短短几月的时间,留给我的却是无限充实的回忆。在做设计期间,自己画图,自己找资料,自己研究电路,很多工作都要自己完成。每一张图的成功出现,我都觉得自己比以前更自信了,更认为自己可以做的很好。资料自己在网上,图书馆寻找,感觉这段时间学到的东西比任何时候都多、都难以忘记。研究每个电路、每个电子器件、每个芯片,每天都能学到新东西,每天都是那么的快乐和自信,别人认为做别业设计是个负担,我认为是一种享受,是一次成长。参考文献[1]郭成林.智能遥控窗帘系统设计[J].山西电子技术,2006:6~7

[2]郭光立.光控自动窗帘[J].家庭电子,1999:55~56

[3]陈莉,王宇,张微微.自动启闭窗帘控制器的设计[J].科技情报开发与经济,2007:32~35

[4]瞿贵荣.电动窗帘红外遥控电路[J].家庭电子,2005:15~16

[5]廖威.基于单片机的窗帘升降器模拟装置的设计和实现[J].科技信息(科学教研),2007:50~53

[6]郭成林.AT89系列单片机与PC机之间的串行通信接口设计[J].山西电子技术,2008:66~70[7]郭光立.电动窗帘控制器[J].家庭电子,1999:40~45

[8]马向国,刘同娟.基于PIC单片机的无线射频遥控窗帘器[J].电子产品世界,2005:23~30

[9]陈大林,任祖平.基于单片机的步进电机控制器设计[J].伺服控制,2008:35~38

[10]廖桂华,王宜怀.单片机指令系统仿真研究与实现[J].军民两用技术与产品,2008:60~62致谢本毕业设计在选题及研究过程中得到宫老师的悉心指导。宫老师多次询问设计进程,并为我指点迷津,帮助我开拓设计思路,精心点拨、热忱鼓励。宫老师一丝不苟的作风,严谨求实的态度,踏踏实实的精神,不仅授我以文,而且教我做人,虽历时半年,却给以终生受益无穷之道。对宫老师的感激之情是无法用言语表达的。

感谢电子教研室各位老师对我的教育培养。他们细心指导我的学习与研究,在此,我要向诸位老师深深地鞠上一躬。在这半年多的时间里,宫老师给了我很多帮助,我也从他身上学到了很多东西。我的电路图的问题他一丝不苟的给我指出,教导我怎么改进,用的是什么原理,一次次的接触,就是我一次次的进步。附录1:电路图图纸附录2:程序清单;;;;;;;;;;;;;;;;;window;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;子程序说明;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;f0电机方向;;;;;;;;;;;;端口定义;;;;;;;;;;;;;;;;;;;;;;;;;;motor_in3equp2.1;IN4/OUT4接电机红线motor_in4equp2.2;IN3/OUT3接电机黑线motor_enequp2.0;使能端placeequp3.2;;;;;;;;;;;;;;;windowequp0.0TDATAEQUP2.4;;;;;;;;;;;;;;;CS549EQUP1.4;CS片选端DOUT549EQUP2.6CLK549EQUP2.7DATA549EQU31H;光信息DATA1EQU32H;三个光强DATA2EQU33HDATA3EQU34HDATAADEQU35H;光强COUNTEQU28H;当前窗帘位置0-3DCOUNTEQU37H;目的窗帘位置C0_COUNTEQU3BH;一号功能的计位置WINDLEQU38H;风的转数值windhEQU39HFLAGXEQU20h.0;定点暂停5S的标志位WINDOWSTUEQU20H.1;窗的状态RAINEQU20H.2;雨的状态RFFLAGEQU20H.3;无线有接收命令标志,0无效,1有效windflagequ20h.4;风检测启动标志rainflagequ20h.5;雨检测启动标志lightflagequ20h.6;光检测启动标志wendugaoflagequ21h.0fengdaequ21h.1shangequ3chxiaequ3dhshuruequ3ehc50msequ3fhc10sequ2ahgaoequ21h.2diequ21h.3haoequ21h.4commandequ30H;命令由默认为0,保持现状不做任何事;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;常数定义;;;;;;;;;;;;;;;;;;;;;;;;;;TEMPUPEQU23;;;;;;;;?????TEMPDOWNEQU23Hwinduphequ20hwindupLequ40hlight0equ67h;0级光强下限一般6e~80hlight1equ49h;1级光强下限一般61~50hlight2equ1ah;2级光强下限一般41~30h;3级光强(灭)00h;;;;;;;;;;;;;;;主程序;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ORG0000HLJMPSTARTORG0003H;placeLJMPINT0ORG000BH;dingshicaiji,,feng,guangLJMPTIME0ORG0013HLJMPINT1;yuorg001BHRETIORG0023HLJMPRECIEVEORG0030HSTART:MOVSP,#STACKBUFLCALLSETSTARTmain:CLRRFFLAGmova,commandcjnea,#10,mainn1mainn1:jncmainrlarlaadda,commandadda,commandmovdptr,#tabcomjmp@a+dptrljmpmaintabcom:;不做动作lcallc0_keepljmpmain;窗帘示教lcallc1_DEMONSTRATEljmpmain;关窗户lcallc2_w_closeljmpmain;开窗户lcallc3_w_openwljmpmain;全关窗帘lcallc4_c_closeljmpmain;窗帘1lcallc5_c_open1ljmpmain;窗帘2lcallc6_c_open2ljmpmain;全开窗帘lcallc7_c_openljmpmain;智能lcallc8_INTELLIGENTljmpmain;;;;;;;;不做动作;;;;;;;;;;c0_keep:;可定义低功耗nopret;;;;;;;;;窗帘示教;;;;;;;;;c1_DEMONSTRATE:movcommand,#0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论