基于物联网的窗帘控制系统设计毕业设计(34页).doc
-
资源ID:37163887
资源大小:304KB
全文页数:33页
- 资源格式: DOC
下载积分:15金币
快捷下载
会员登录下载
微信登录下载
三方登录下载:
微信扫一扫登录
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
|
基于物联网的窗帘控制系统设计毕业设计(34页).doc
-基于物联网的窗帘控制系统设计毕业设计-第 25 页题 目 基 于 物 联 网 的 窗 帘 控 制 系 统 设 计 学生姓名 杜 秀 秀 学号 1113024105 所在学院 物 理 与 电 信 工 程 学 院 专业班级 通 信 工 程 专 业 1103 班 指导教师 薛 转 花 _ 完成地点 物理与电信工程学院实验室 2015年6月5日毕业设计任务书院(系) 物理与电信工程学院 专业班级 通信1103 学生姓名 杜秀秀 一、毕业设计题目 基于物联网的窗帘控制系统设计 二、毕业设计工作自 2015 年 1 月 10 日 起至 2015 年 6 月 20 日止三、毕业设计进行地点: 物理与电信工程学院通信工程系实验室 四、毕业设计内容要求:设计目的与意义:物联网(Internet of Things,缩写IOT)是一个基于互联网、传统电信网等信息承载体,让所有能够被独立寻址的普通物理对象实现互联互通的网络。通过物联网可以对机器、设备、人员进行集中管理和智能控制,对于基于物联网的窗帘控制系统的研究是非常必要的。本次设计要求学生根据所学知识完成基于物联网的窗帘控制系统设计,提高学生分析问题、解决问题的能力。 其具体要求如下: 1要求自选方案完成基于物联网的窗帘控制系统设计; 2要求采用软、硬结合的方式完成系统电路的设计; 3要求室内温度、亮度等环境条件实现对窗帘的控制; 4. 要求完成系统硬件电路的搭建和系统整体测试,实现对窗帘的智能控制功能。 毕业论文要求: 1论文撰写要求格式规范,设计思路清晰,条理清楚; 2外文翻译要求翻译语句通顺流畅,用词恰当; 3. 论文内容准确无误,用A4纸张打印。 进程安排如下: 2015年1月10日-3月15日: 查资料,调研,确定方案,并按时在系统中提交开题报告。 2015年3月16日-4月25日:对系统硬件电路进行模块化设计,采用编程语言进行软件编程,完成硬件电路的软件仿真;在系统中提交外文翻译;完成中期检查报告。 2015年4月26日5月20日:进行系统硬件电路搭建、调试和测试,完成毕业设计验收。 2015年5月21日-5月31日:完成毕业设计任务,并在系统中提交最终论文。 2015年6月1日-6月15日: 毕业设计答辩。 指 导 教 师 系(教 研 室) 通信工程系 系(教研室)主任签名 批准日期 接受设计任务开始执行日期 学生签名 基于物联网的窗帘控制系统设计杜秀秀(陕西理工学院 物理与电信工程学院 通信工程专业 2011级3班,陕西 汉中 723000)指导教师:薛转花摘要随着科技的进步,各种电信和互联网新技术推动了人类文明的极大发展。与普通家居相比,智能家居不仅具有传统的居住功能,而且提供舒适安全、高品位且宜人的家庭生活空间。本课题设计了一种集温控、光控于一体的窗帘控制系统。本系统电路采用单片机STC89C52RC作为主控芯片,以DS18B20作为温控采集传感器,TORCH-LDR作为光敏电阻模块,结合外围的LCD1602显示屏,实时显示当前的温度、光强及其控制值等模块组成。系统软件采用C语音编程和KEIL软件编译下载。经实验证明,该窗帘控制系统可以实现当温度低于设定值时,窗帘关闭;高于设定值时,窗帘打开。当温度、光强都高于设定值,窗帘关闭等功能。关键词单片机;窗帘控制系统;液晶显示Design of curtains control system based on the internet of thingsDu Xiuxiu (Grade 2011,Class3,Major of Communication Engineering ,Dept of Electrinics and Information Engineering Shaanxi University of Technology,Hanzhong 723000,Shanxi)Tutor:Xue Zhuanhua Abstract With the progress of science and technology, development of new telecom and Internet technology to promote the great of human civilization. Compared with ordinary household, smart home not only has the traditional residential function, providing safe, high quality and comfortable living space. This topic has designed a kind of integrated temperature control, electric control curtain system. The system circuit adopts SCM STC89C52RC as a main control chip, DS18B20 as temperature acquisition sensors, TORCH - LDR as electric resistance module, combined with peripheral LCD1602 display, real-time display the current modules, such as temperature, light intensity.System software adopts C programming and KEIL compiler to download. Experiments show that the curtain control system can realize when the temperature is lower than the set value, the curtains closed,Higher than the set value, the curtain opened. When the temperature and light intensityare higher than the set value, the curtain closed. Keywords SCM; curtain control systems; LCD display目 录1.引言12.方案论证及选择32.1方案一:基于单片机的窗帘控制系统设计32.2方案二:基于ZigBee的窗帘控制系统设计42.3方案选择53. 硬件电路的设计63.1 单片机最小系统设计63.2 温度采集电路设计73.3 光强采集电路设计8 3.4 步进电机驱动电路设计93.5 开关电路设计103.6 显示电路设计113.7 系统整体原理图114. 系统软件设计124.1 软件设计思路124.2 软件设计流程图134.2.1 主程序流程图134.2.2步进电机驱动流程图144.3 软件调试144.3.1 KEIL软件的组成介绍144.3.2 KEIL开发和调试系统软件流程155. 系统硬件电路调试及结果分析205.1 系统硬件电路搭建205.2 系统硬件电路调试205.3 系统硬件电路测试结果216. 总结与展望246.1 总结246.2 展望24致谢25参考文献26附录A 英文文献原文27附录B 英文文献译文33附录C 系统源程序37附录D Proteus 仿真图51附录E 系统整体原理图52附录F 元器件清单531.引言物联网,即“The Internet of Things”,简称IOT。物联网指通过信息传感设备,按照约定的协议,把任何物品与互联网连接起来,进行信息交换和通信,以实现智能化识别、定位、跟踪、监控和管理的一种网络。它是在互联网基础上延伸和扩展的网络1。物联网的概念有狭义和广义之分。狭义物联网即"联物",基于物与物间通信,实现"万物网络化"。广义物联网即"融物",是物理世界与信息世界的完整融合,形成现实环境的完全信息化,实现"网络泛在化"1,并因此改变人类对物理环境的理解和交互方式。 物联网具有以下的基本特征2: (1)全面感知:通过射频识别、传感器、二维码、GPS卫星定位等相对成熟技术感知、采集、测量物体信息; (2)可靠传输:通过无线传感器网络、短距无线网络、移动通信网络等信息网络实现物体信息的分发和共享; (3)智能处理:通过分析和处理采集到的物体信息,针对具体应用提出新的服务模式,实现决策和控制智能。 在生活中具有以下的应用方式: (1)仓储管理:当今RFID技术正在为供应链领域带来一场巨大的变革,以识别距离远,快速,不易损坏,容量大等条码无法比拟的优势,简化繁杂的工作流程,有效改善供应链的效率和透明度。托盘是供应链中最基础也是最主要的货物单元,它已经广泛应用于生产、仓储、物流、零售等各个供应链环节。 (2)智能交通:智能交通系统需要多样化的媒介信息采集,多种渠道的信息通信和交互、统一的信息平台和丰富的业务应用。智能交通系统的底层信息采集之后需要进行综合处理以提供给智能交通系统的应用层使用3。 (3)医学应用:医学中的"感"、"知"、"行"。"感"就是数据采集和信息获得,比如连续监测高血压患者的人体特征参数、周边环境信息、感知设备和人员情况等4。"知"特指数据分析,如,高血压患者连续的血压值测到之后,计算机会自动分析出他的血压状况是否正常,如果不正常,就会生成警报信号,通知医生知晓情况,调整用药,加以处理,这就是"行"。 (4)安全管理:随着识别技术的发展,人们对智能化系统的要求在不断的提高。采用先进的RFID射频识别技术,对进出单位大门、危险区域的人员和车辆实现自动读卡识别。只要身上带卡就可以实现免掏卡自动识别、自动开门4,把卡放车上可以自动开启道闸。同时还可以支持自动进行人数(车辆数)统计、行动轨迹跟踪和定位。 (5)环境保护:物联网与环保设备的融合能够实现对生活环境中各种污染源及污染治理各环节关键指标的实时监控。在重点排污企业排污区域安装无线传感设备,可以实时监测企业排污数据,及时发现污染源,防止突发性环境污染事故的产生。现代的物联网智能化离不开运算和控制单元,本系统采用89C52作为主控器件,单片机应用系统由硬件和软件组成。硬件由单片机扩展的存储器、输入/出设备以及各种实现单片机系统控制要求的接口电路和有关的外围电路芯片或部件组成;软件由单片机应用系统实现其特定控制功能的各种工作程序和管理程序组成5。在单片机应用系统开发的过程中,应不断调整软、硬件,协调地进行软、硬件设计,以提高工作效率,当系统硬件和软件紧密配合、协调一致,就可以组成高性能的单片机应用系统。本课题完成了单片机应用系统其开发过程的系统的总体设计、硬件设计、软件设计和系统调试,根据开发的实际需要,相互协调、交叉,有机的进行。物联网智能家居的控制设计和应用,可以说主要采用的途径就是通过互联网的方式,来对其进行连接,通过互相连接的形式,让一些家庭通信设备以及日常的电器设备进行自动的控制与管理,形成一种在家庭内部的网络环境中,通过一个系统的形式,来对其进行统一的管理和控制。以毕设为例,在窗帘控制系统设计过程中,将生活中人的一些需求如不同温度、亮度环境下对窗帘系统的开、关状态得以实现,使人们的生活质量提高,生活更舒心幸福。在物联网智能家居环境中,无论你是否在家都可以利用远程设备来对家中的电器,如对窗帘轻松做出相关的控制。若是出门在外,还能够通过电话、手机或者互联网连线家中的智能终端,及时了解到家中窗帘的开、关状态,并且随时监控到家中的一切状况。如果是天气变冷(变暖)了,低于/高于设置的温度范围,则可以通过手机远程控制来实现窗帘的关(开)。同时如果室内的光亮强度过暗(过亮)了,低于/高于设置的亮度范围,则可以通过远程控制来实现窗帘的开(关)。总而言之,窗帘系统控制是智能家居的一小部分,而智能家居是一个多功能、综合性的系统,在未来的生活中将得到更广泛的应用。2.方案论证及选择2.1方案一:基于单片机的窗帘控制系统设计温度输入控 制传感器 传感器 单片机 A/D转换液晶显示屏示屏 LCD1602 窗帘系统光强输入控制传感器 传感器 单片机图2. 1 窗帘控制系统总体设计图工作原理:通过DS18B20温度传感器对当前实时温度进行检测、采集,TCHOR-LDR光敏电阻对当前光强进行实时检测、采集,用ADC0832双通道AD转换信号,它能够对两路模拟信号进行模数转换,将得到的数字信号传输给单片机,最后将实时温度、光强及其设定范围显示在显示屏上,达到自动窗帘控制的目的。单片机的种类较多,各种型号的MCU都有其一定的适用范围,因此在选用时要加以比较,合理选择,以获得最佳的可靠性以及性价比。一般来说在选取单片机时可以综合以下几个方面考虑:性能、运行速度、存储器、I/O口、串行接口、工作电压、定时/计数器、模数转换功能、功耗、抗干扰性、封装形式、保密性6等,除了以上的一些的还有一些最基本的比如:工作温度范围、中断源的优先级和数量、单片机内有无时钟振荡器、有无上电复位功能、有无低电压检测功能等5。在开发的过程中单片机还受到:编程器、开发工具、开发成本、技术支持和服务等因素影响。利用单片机丰富的I/O端口和灵活的编程设计和其准确的控制,实现窗帘控制功能。在单片机的外围电路外接液晶显示屏,外接显示屏用于显示作用。温度、光强传感器AD转换电路 单片机开关按键步进电机显示部件 图 2.2 单片机控制模式结构图2.2方案二:基于ZigBee的窗帘控制系统设计电源模块JTAG模口CC2530无线收发微控制器模块开关量驱动模块 过零信号检测模块图 2.3 窗帘控制系统总体设计图 工作原理:智能窗帘控制器由5 个模块组成,1).CC2530无线收发为控制其模块,该模块负责采集无线控制信号、输出与客户操作动作相对应的控制信号并可以ZigBee智能网关交互信息,利用其接受到的用户指令窗帘转换的相关信息6;2).电源模块,主要负责将输入的电转换成电路各模块及其元器件工作点电压;3).过零信号检测模块主要是检测电的过零点信号,并将检测到的过零点信号输入到CC2530微控制器模块中供其使用7;4).开关量驱动模块由3 个按键组成,按下后产生一个低电平信号,CC2530微控制器检测此触发信号后并判断其是开窗帘信号还是关窗帘信号亦或是停止运行信号,驱动可控导通节点,实现窗帘正反转;5).JTAG模块用于微控制器模块中的程序进行更新,方便以后的升级。 过零检测程序 端口初始化 微控制器模块作为系统的核心模块,主要完成检测过零信号、发出驱动信号、检测案件信号与ZigBee智能网管通信等工作。当系统执行过零检测信号后,将检测到的过零时间点作为延时定时器的起点,系统一直检测是否有按键消息或者来自ZigBee智能网关接收的控制信号。如果检测到该类信号,将控制可控硅的导通,窗帘电机开关动作。 开始 结束 驱动电机是否检测到按键信号或来自ZigBee控制信号否是图 2.4 ZigBee控制模式流程图2.3方案选择方案一可以利用单片机内部的控制只读存储器和随机存储器及其丰富的引脚资源,外接液晶显示屏等实现温度、光强数据的传输处理和显示功能,通过与温度传感器、光敏传感器、AD转换模块及指令来完成数据的传输。单片机可扩展性强,体积小,实用性强,功能齐全,而且设计起来比较简单,就具备可用实验室的条件,硬件比较容易实现。方案二的好处是设计以微控制器为核心模块较为简单,但是在过零检测、驱动信号检测中容易出现偏差,且对ZigBee技术的掌握有限,经过综合考虑此次设计采用方案一。3. 硬件电路的设计3.1 单片机最小系统设计 单片机最小系统由复位电路和晶振电路组成,电路图设计如图3.1。图3.1 单片机最小系统电路图图中STC89C52RC单片机采用DIP40封装的STC89C52RC型单片机,该系列单片机完全兼容传统8051单片机,且支持ISP功能,与传统8051单片机相比下载调试程序极为方便。STC89C52RC单片机是宏晶科技推出的一种高性能CMOS8位、低功耗的微控制器,具有8K在系统实时可编程Flash存储器5。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,具有灵活的8位CPU和在系统实时可编程Flash,使得STC89C52能够给各类嵌入式控制系统提供稳定有效、高灵活性的完整方案。其具备如下标准功能:512 Byte RAM,8k Byte Flash,32位I/O 口线,内置有4K Byte的EEPROM,具有看门狗专用定时器,3个16位定时器/计数器,MAX-810专用复位电路,4个外部中断,一个7向量4级实时中断结构5,全双工通信串行口。而且STC89C52RC最低可降至0Hz进行静态逻辑操作,可自由选择节电方式,且支持2种软件控制的掉电模式。空闲模式下的CPU将停止工作,仅允许串口、RAM、中断、定时器/计数器保持工作。在掉电保护模式下,将振荡器震荡脉冲屏蔽,把RAM中的内容保存,整个单片机停止工作,一直等到下一次硬件复位或中断到来。该型号单片机最高运作频率为35MHz,有6T和12T可选6。指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。单片机最小系统包括复位电路和晶振电路两部分。其中复位电路为上图9管脚所连接的电路,该电路具有两种复位方式,分别是上电复位和手动按K1键复位,10uF的瓷片电容在接通时充电并导通,在充电后断开,470电阻防止上电时发生短路的现象。晶振电路为上图18、19管脚图所连接的电路,外接振荡器的输入输出端口,图中晶振采用12MHz无源晶振,起振电容使用两个220pF电容,其作用是帮助晶振在起振是振动更加稳定,其具体数据是根据查阅相关数据手册而来。3.2 温度采集电路设计 温度采集电路由DS18B20温度传感器组成,电路图设计如图3.2。图3.2 温度采集电路DS18B20是美国DALLAS公司推出的一款将温度测量和A/D转换为一体的数字温度传感器。与其它温度传感器相比,超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强7,使得DS18B20更受欢迎。图3.3 DS18B20管脚图DS18B20的外形如一个三极管,只有3根外部引脚,结构非常的简单。其中VDD接电源,GND接地,另一根DQ线是数字下行输入输出脚。DS18B20具有两种供电模式:寄生电源供电模式和外部电源供电模式。当为寄生电源供电模式时,VDD引脚和GND引脚相连,通过数据线对其供电。当为外部电源供电模式时,VDD外接电源,GND端接地6,本次毕设采用外界电源供电模式供电。DQ外接10k的上拉电阻,并与STC89C52的P3.2端口相连。达到温度控制检测、采集的目的。其具有以下技术特性: (1)采用独特的1-Wire7(单总线)技术。仅需一条接口线就可以实现与未处理器的数据传输,控制起来方便简单。 (2)具有多点测温能力。因为DS18B20内部有64位ROM编码,所以多个DS18B20可以同时接到一条数据线上,实现多点测温的功能11。 (3)采用COMS技术,耗电量低,体积小。 (4)测量精度分为0.5,0.25,0.125,0.0625四种,可以通过编程选择合适的测量精度,测温范围为-55 +125。 (5)测量精度可以根据实际需要自行设定。通过软件编程可以设定912位二进制温度值输出。 (6)具有非易失性温度上下线8(TH,TL)。TH和TL分别为温度上线和下线,用户可以根据实际要求自行设定,并通过搜索命令识别出超出的温度范围。3.3 光强采集电路设计 光强采集电路由LDR光敏电阻和ADC0832模数转换芯片组成,电路图设计如图3.4。图3.4光强采集电路设计 图3.4中由光敏电阻和ADC0832转换模块以及滑动电阻器等组成。滑动变阻器的作用是调节电流,通过改变电离子的多少,使光敏电阻得阻值发生变化共同达到光强控制窗帘系统的目的。1)介绍光敏电阻。光敏电阻的阻值随着照明的亮度而改变,在暗处时,其阻值变高,可以升到1M或者更高。光线照在LDR时,光能源上升,电离子增多更有利于电流传输,电阻值下降8。在明亮的光线下,电阻值有可能降到100以下。初制成的光敏电阻,由于体内机构工作不稳定,以及电阻体与其介质的作用还没有达到平衡,所以性能是不够稳定的。但在人为地加温、光照及加负载情况下,经一至二周的老化,性能可达稳定。光敏电阻在开始一段时间的老化过程中,有些样品阻值上升,有些样品阻下降,但最后达到一个稳定值后就不再变了8,这就是光敏电阻的主要优点。光敏电阻的工作原理:在黑暗的环境下,它的阻值很高;当受到光照并且光辐射能量足够大时,光导材料禁带中的电子受到能量大于其禁带宽度Eg 的光子激发,由价带越过禁带而跃迁到导带,使其导带的电子和价带的空穴增加,电阻率变小。 当光照射到光电导体上时,若光电导体为本征半导体材料,而且光辐射能量又足够强,光导材料价带上的电子将激发到导带上去,从而使导带的电子和价带的空穴增加9,致使光导体的电导率变大。为实现能级的跃迁,入射光的能量必须大于光导体材料的禁带宽度Eg,即 (3-1)式中和入射光的频率和波长。 2)介绍ADC0832。ADC0832为8 位分辨率A/D转换芯片,其最高分辨率可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在05V之间。芯片转换时间仅为32us,据有双数据输出可作为数据效验,以减少数据误差,转换速度快且稳定性强。独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。通过DI数据输入端,可以轻易的实现通道功能的选择。 ADC0832管脚接口说明9如下:(1)CS:片选使能,低电平芯片使能。(2)CH0:模拟输入通道0,或作为IN+/-使用。 (3)CH1:模拟输入通道1,或作为IN+/-使用。(4)GND:芯片参考0电位,接地。(5)DI:数据信号输入,选择通道输入。(6)DO:数据信号输出,转换数据输出。(7)CLK:芯片时钟输入。(8)Vcc/REF:电源输入及参考电压输入。 单片机对ADC0832的控制原理:正常情况下ADC0832与单片机的接口应为4 条数据线,分为CS、CLK、DO、DI。但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的。所以电路设计时可将DO、DI并连在一根数据线上使用。当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用。CLK和DO/DI的电平可任意。当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。在第一个时钟脉冲下沉之前DI端必须是高电平,表示启动信号。在第2、3个脉冲下沉之前DI端应输入2 位数据用于选择通道功能9。当此2 位数据为“1”、“0”时,只对CH0进行单通道转换。当2位数据为“1”、“1”时,只对CH1进行单通道转换。当2位数据为“0”、“0”时,将CH0作为正输入端IN+,当2位数据为“0”、“1”时,CH0作为负输入端IN-,CH1作为正输入端IN+进行输入到第3 个脉冲的下沉之后DI端的输入电平就失去输入作用,此后DO/DI端则开始利用数据输出DO进行转换数据的读取。从第4个脉冲下沉开始由DO端输出转换数据最高的DATA7,随后每一个脉冲下沉DO端输出下一位数据。直到第11个脉冲时发出最低位数据DATA0,一个字节的数据输出完成。也正是从此位开始输出下一个相反字节的数据,即从第11个字节的下沉输出DATA010。随后输出8位数据,到第19脉冲时数据输出完成,也标志着一次A/D转换的结束。最后将CS置于高电平禁用芯片,直接将转换后的数据进行处理就可以了。3.4 步进电机驱动电路设计 步进电机驱动电路是由步进电机和ULN2003A驱动芯片组成,电路图设计如图3.5。 图 3.5 ULN2003A驱动芯片电路图步进电机为一种数字伺服执行元件,具有结构简单、运行可靠、控制方便、控制性能好等优点,广泛应用在数控机床、机器人、自动化仪表等领域11。为了实现步进电机的简易运动控制,一般以单片机作为控制系统的微处理器,通过步进电机专用驱动芯片实现步进电机的速度和位置定位控制。单片机在本次试验中对步进电机而达到对转角方位控制的方法。本次测控系统是以单片机位控制中心的,如下将介绍步进电机控制系统。步进电机控制系统主要由脉冲分配器,功率驱动电路,步进电机几部分构成的。步进电机控制系统的方框图以及其控制系统的电路图如下图所示。 脉冲控制器 功率驱动电路 步进电机负载脉冲信号图3.6步进电机控制系统框图单片机输出步进脉冲后,再由脉冲分配电路按事先确定的顺序控制各相的通断。本设计由软件完成脉冲分配工作,不仅使线路简化,成本下降,而且可根据应用系统的需要,灵活地改变步进电机的控制方案。软件控制脉冲将在软件设计部分说明。步进电机功率驱动电路工作在较大脉冲电流状态,采用光电耦合器将单片机与步机电机隔离可以避免单片机与步进电机功率回路的共地干扰,防止强功率的干扰信号反串进主控系统12。此外,万一驱动电路发生故障,也不致让功放中较高的电压串入单片机而使其损坏。电压驱动是步进电机控制中最为简单的一种驱动电路,它在本质上是一个单间的反相器。它最大的特点是结构简单,工作效率低。而且它的外接电阻要消耗相当一部分能量,这样会影响电路的稳定性。3.5 开关电路设计 开关电路设计如图3.7。图3.7 开关电路图设计 如图是三个开关按键,分别与单片机的P1.2、P1.3、P1.4接口相连接,为开关1、2、3。复位开关4连接在单片机的复位端口RST端。开关在单片机应用系统中能实现向单片机输入数据,传送命令等功能,是人工干预单片机的主要手段。本设计中采用的4个按鍵开关。其中S4是复位键,在程序出错或者有失误操作的时候可按下复位键来恢复其初始工作状态。其中S1为打开按键,有三种可调模式:模式1:设定光强阈值,模式2:设定温度阈值,模式0开始正常工作模式。S2设定温度/光强阈值增加键。S3为设定温度/光强值减少键。获取按键开关信息的方法有2种,我们经常用到的是扫描法。在扫描法中,用来检测按键开关状态。按键的触点闭合和断开时均会产生抖动,这时触点的逻辑电平是不稳定的,如果不妥善处理,将会引起按键命令的错误执行或重复执行。一般消除抖动采用软件方法来解决,将在软件部分介绍这点。3.6 显示电路设计显示电路是由LCD1602芯片组成,电路图设计如图3.8。图 3.8 LCD1602显示屏显示屏采用LCD1602字符型液晶,1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它有若干个5X7 或者5X11等点阵字符位组成14,每个点阵字符位都可以显示一个字符。每位之间有一个电距的间隔,每行之间也有间隔起到了字符间距和行间距的作用,液晶屏在使用前需要进行清屏等初始化操作。LCD1602采用标准的16位接口,其管脚图说明15如下:(1)第1脚:VSS为电源地。(2)第2脚:VDD接5V电源正极。(3)第3脚:V0为液晶显示器对比比度调整端,接正电源时对比度最弱,接地时电源对比度最高。对比度过高时,可使用一个10K的电位器进行调整。(4)第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。(5)第5脚:RW为读写信号线,高电平1时进行读操作,第电平0时进行写操作。(6)第6 脚:E(或E N)端为使能端。(7)第714脚:D0D7位8位双数据端。(8)第1516脚:空脚或背灯电源。15脚背光正极,16脚背光负极。 3.7 系统整体原理图 系统主要由以上单片机最小系统、温度采集电路、光强采集电路、步进电机驱动电路、开关电路和显示电路六个部分电路组成,整体电路原理图见附录E。4. 系统软件设计4.1 软件设计思路单片机智能窗帘设计是由显示模块、开关按键模块、温度采集模块、光强采集模块、电机驱动模块。设计思路主要是温度采集模块、光强采集模块控制步进电机的正转与反转;同时按键可以设置温度,光强度来控制窗帘,在LCD1602上显示温度,光强度值,电机跑的数值。当实时光度比设置的光度小情况下:当实时的温度大于设置的温度时,窗帘打开,绿灯亮,电机正转。当实时的温度小于设置的温度时,窗帘关闭,红灯亮,电机反转。在实时光度比设置的光度大情况下:窗帘肯定是窗帘关闭,指示灯红灯亮。 程序的设计主要分为主程序和开关扫描子程序、LCD显示子程序、温控子程序、光控子程序等。根据硬件设计的功能要求,源程序主要分为以下几个部分:(1)开关扫描子程序开关扫描程序包括对开关按键的扫描,先判断是否有键按下,当有键按下时,先判断哪种模式,在确定之后,用延时来消除按键抖动。这时触点的逻辑电平是不稳定的,如不妥善处理,将会引起开关命令的错误执行或者重复执行。当无开关按下时,则循环执行开关扫描、保持开关扫描。(2)LCD显示子程序LCD显示子程序主要负责将键盘上的数字键和功能键的传输经MCU处理后入送入LCD,使其显示不同的字符串提示用户处于何种状态,该如何继续操作,使用户知道自己当前所进行的操作。 (3) 温控子程序 DS18B20首先进行的是当前实时温度的扫描监测,采集的温度模拟量通过A/D转换,变成数字温度显示。然后与设定温度相比较,决定窗帘的打开与关闭。当设定温度超过上限时,数值从0开始依次增加。(4) 光控子程序光控是由光敏电阻来对光强进行监测与采集的,由于采集的光强值很小,用光控制子程序将其转换成与100有关的数值,然后进行读取与显示。(5)ULN2003A驱动子程序 由于STC89C52RC型单片不具备硬件SPI总线功能,因此要通过I/O口的时序变化模拟SPI总线协议与NRF24L01进行通信,该部分程序是底层驱动程序,直接对寄存器等进行操作,可根据MCU指令发送1-32字节数据。(6)主程序 对各个功能子程序进行调用,统一协调安排单片机工作。4.2 软件设计流程图4.2.1 主程序流程图 图4.1 系统电路主流程图图4.1是软件设计思路的主流程图,实时温度、光强与设定阈值相比较,判定是否达到打开/关闭窗帘门限,然后执行开/关命令。最后实现打开/关闭窗帘。源程序见附录C。4.2.2步进电机驱动流程图 图4.2步进电机工作流程图在上面所示的流程图中,清楚的展现了窗帘控制系统执行过程中具体设计操作的软件流程的过程,整体设计分为数据监测、采集及控制设计两部分。具体流程各个功能如何工作、各个部分如何进行选择实现,