首页 基于单片机的自动开关窗设计_毕业设计

基于单片机的自动开关窗设计_毕业设计

举报
开通vip

基于单片机的自动开关窗设计_毕业设计基于单片机的自动开关窗设计_毕业设计 题 目: 基于单片机的自动开关窗设计 姓 名: xxx 专 业: 电子信息工程 班 级: 电信N09 学 号: 20094567942 指导教师: xxxx 导师职称: 年 月 日 诚 信 声 明 我声明~所呈交的论文是本人在老师指导下进行的研究工作及取得的研究成果。据我查证~除了文中特别加以标注和致谢的地方外~论文中不包含其他人已经发表或撰写过的研究成果~也不包含为获得,,,,,,或其他教育机构的学位或证书而使用过的材料。我承诺~论文中的所有内容均真实、可...

基于单片机的自动开关窗设计_毕业设计
基于单片机的自动开关窗设计_毕业设计 题 目: 基于单片机的自动开关窗设计 姓 名: xxx 专 业: 电子信息工程 班 级: 电信N09 学 号: 20094567942 指导教师: xxxx 导师职称: 年 月 日 诚 信 声 明 我声明~所呈交的论文是本人在老师指导下进行的研究工作及取得的研究成果。据我查证~除了文中特别加以标注和致谢的地方外~论文中不包含其他人已经发 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 或撰写过的研究成果~也不包含为获得,,,,,,或其他教育机构的学位或证书而使用过的 材料 关于××同志的政审材料调查表环保先进个人材料国家普通话测试材料农民专业合作社注销四查四问剖析材料 。我承诺~论文中的所有内容均真实、可信。 论文作者签名: 签名日期: 年 月 日 I 授 权 声 明 学校有权保留送论文交的原件~允许论文被查阅和借阅~学校可以公布论文的全部或部分内容~可以影印、缩印或其他复制手段保存论文~学校必须严格按照授权对论文进行处理~不得超越授权对论文进行任意处置。 论文作者签名: 签名日期: 年 月 日 II 基于单片机的自动开关窗设计 摘 要 随着科学技术的飞速发展,更多改善人们生活环境和提高生活质量的高科技 产品将会进入了人们的日常生活。同时,科技的进步带动了社会的快速发展,使 得人们的生活节奏也加快了,在快节奏的生活下人们总会因各种各样的原因忘记 一些琐事,因此智能化的家具是社会发展必然的选择。目前家庭中的许多电器都 已被贴上看智能化的标签,例如热水器、洗衣机、空调等,为提高人们的生活质 量做出了贡献。但让人感到遗憾的是家庭生活中重要的组成部分——窗户,却迟 迟没有跟上社会快速发展的步伐。现在应用最广泛的窗户采用的任然是最原始的 ——人工关闭的方式,不具备自动防雨、防雾等人性化的功能。本次设计的自动 开关窗户系统能通过其数据检测传感电路不断循环检测室外湿度及烟雾浓度,当 室外湿度达到一定时(下雨时)窗户自动关闭,防止潮湿空气或雨水进入房间; 当室外烟雾达到一定值时窗户自动关闭。 关键词:单片机,自动窗,传感器 Microcontroller-based automatic switch window design Abstract With the rapid development of science and technology, more to improve people's living environment and High-tech products will improve the quality of life into the daily lives of people. At the same time, the advancement of technology has led to the rapid development of society, so people also accelerated the pace of life in the fast-paced life, there will always be due to a variety of reasons to forget some of the chores, intelligent furniture is the inevitable choice for social development. Many electrical appliances in the family have been affixed point of view intelligent labels, such as water heaters, washing machines, air conditioning, to make a contribution to improve people's quality of life. It is regrettable that important parts of family life - windows, have been slow to keep up with the rapid pace of development of the community. Is the most primitive to the most widely used windows any contingent - artificial closed, do not have automatic rain, fog and other user-friendly features. The design of the automatic switch windows system through its data detection sensor III circuit continuous cycle detection outdoor humidity and smoke concentration, when the outdoor humidity reaches a certain time (when it rains) windows automatically shut down to prevent moist air or rain to enter the room; when the out door smoke windows closed automatically when a certain value is reached. Keywords: MCU, Automatic window, Sensor IV 目录 摘 要.......................................................................................................................... III Abstract ........................................................................................................................ III 1 绪论............................................................................................................................ 1 1.1课题的背景 ...................................................................................................... 1 1.2课题的意义 ...................................................................................................... 1 1.3自动窗发展现状 .............................................................................................. 2 2设计的任务与特点 ..................................................................................................... 3 2.1本设计的主要任务 .......................................................................................... 3 2.2本设计的特点 .................................................................................................. 3 3 自动窗的构成及各模块 ............................................................................................ 4 3.1 自动窗的构成 ................................................................................................. 4 3.2单片机 .............................................................................................................. 4 3.3步进电机及其驱动 .......................................................................................... 8 3.4 DHT11传感器 .................................................................................................. 9 3.5 MQ-2烟雾传感器 ............................................................................................ 9 3.6 ADC0832 ......................................................................................................... 10 3.7 LCD1602液晶显示 ........................................................................................ 11 4 软件设计 .................................................................................................................. 11 4.1 主程序流程图 ............................................................................................... 11 4.2 各部分子程序 ............................................................................................... 12 4.2.1 湿度检测 ............................................................................................ 12 4.2.2 LCD1602显示 ..................................................................................... 13 5系统组装及调试 ....................................................................................................... 15 5.1组装步骤 ........................................................................................................ 15 5.2 整体原理图 ................................................................................................... 15 5.3 元器件清单 ................................................................................................... 15 5.4焊接及 注意事项 软件开发合同注意事项软件销售合同注意事项电梯维保合同注意事项软件销售合同注意事项员工离职注意事项 ............................................................................................ 16 5.4.1焊接前处理 ......................................................................................... 16 5.4.2 焊接 .................................................................................................... 16 结束语.......................................................................................................................... 16 参考文献 ...................................................................................................................... 17 附录.............................................................................................................................. 19 V 附录1 系统仿真图 .............................................................................................. 19 附录2 焊接图 ...................................................................................................... 20 附录3 程序 .......................................................................................................... 20 VI 基于单片机的自动开关窗设计 1 绪论 1.1课题的背景 我国的改革开放,经济的飞速发展,使得人们物质生活水平不断提高,人们对生活中各种用品的要求也越来越高,例如不仅希望拥有舒适、温馨的住所和汽车,而且对其安全性、智能性等方面也提出了更高的要求。现在的自动控制系统已经为我们的生活提供许多便利,在生活的各方面,人们迫切的需要一种智能的家庭自动开关窗系统,能够根据不同的天气进行开关工作,例如在下雨或起雾时,能够自动识别,实现自动关窗行为,以便人们能更好的工作学习,与此同时也保证了生活的舒适性和财产的安全性。于是在社会各阶层中,各种场所中智能窗系统的开发和制作日益被科研单位和生产厂家所重视。现在市场上也出现了各种各样的自动开关窗,但多由于其可靠性差、造价高或使用复杂而难以推广。随着电子通讯技术的快速发展,单片机以其具有价格低、体积小、集成度高、性价比高等优点已在工业控制、智能仪表、数据采集以及各种家用电器等方面得到了广泛应用。 1.2课题的意义 随着我国经济的飞速发展和人民生活水平的逐渐提高, 人们更加重视生活环境是否较好室内的空气是否清新,时常的开窗通风换气也成为人们共同的生活习惯. 可是在当今较快的生活节奏中,人们经常会忘记关窗,一旦逢刮风下雨,便开始担心,这严重影响正常的工作和学习。 现在市场上的自动关窗装置固然品种功能多样,但主要应用在一些较为高档建筑和各种公共场所,并且主要的都是和窗框一起定制,费用比较高与此同时不管是老的还是新建的住房事先安装的基本都是手动推拉窗,基本没有人愿意把已安装好的窗户拆掉,更换成多功能自动窗。 综上所述,本课题希望开发一种在普通窗户的基础上改进的自动关窗装置,该装置装有湿度传感器,烟雾传感器,每当下雨或出现较浓的雾时,窗户便自动关闭, 解除用户的后顾之忧,让生活变得更加美好。 1 嘉兴学院南湖学院毕业设计 1.3自动窗发展现状 一种能使室内冬暖夏凉,又不影响光照亮度的“智能窗户”,最近由美国伯克利劳伦斯国家实验所研发成功。住进这种房屋,即使你没有安装空调,也不会在炎夏热得汗流浃背,在严冬冻得瑟瑟发抖了。 智能窗户的关键,是使用了一种合成的氧化铟锡纳米晶体新材料。这种材料既能作为涂层涂于窗户玻璃表面,也可作为液体溶剂注入窗户双层玻璃的夹层之中。这种纳米晶体对光和热的传播,可以通过电压来调节:在严寒天气,可见光和近红外光都可以通过,从而使热量进入房间;而在酷暑季节,施加微弱电流可使窗户依然能够传播可见光,却会阻挡近红外光,从而避免太阳的热量进入房间。此外,锡还另外带有电荷,当施加电压时,纳米晶体里电子的密度会发生改变,从而使得所吸收的红外光的量也随之改变,于是房间始终保持适宜的温度。 与此有异曲同工之妙的,是英国工程师弗雷德里克?麦基发明的一种全部由双层玻璃构成的智能窗户。玻璃夹层中充满水而不是空气。溶于水中的一种化学物质,能将阳光中的红外线能量和热量吸收掉,但不影响可见光的通过。玻璃夹层中的水是通过一台热交换器循环的。热交换器可以使水中的热量存储起来,也可以使之冷却,以便根据室外气温的变化,合理地加以利用。据介绍,这样动态性地改变红外光和热量的吸收,是一项重大技术创新。上述新型智能窗户的问世,不仅能够使居住者感到十分舒适,而且可以减少普通窗户带来的能耗和花费——仅就美国建筑业而言,这笔花费每年大约为400亿美元。 韩国研究人员研制出一种新型智能窗户,窗玻璃能根据室外温度不同变黑或变透明,起到隔绝热量或增加室内光线的作用。研究团队在美国化学学会主办的杂志中说,这种智能窗户有助节省能源。 该智能窗户由韩国电子技术研究所的林浩苏和崇实大学的曹郑浩、金株勇共同研制。研究人员说,这种智能窗户可以在“夏季模式”与“冬季模式”间自由转换。夏季室外温度高,智能窗户会变暗,以“反射大部份太阳光,防止建筑内部受阳光照射而过热”;冬季室外温度低,智能窗户的玻璃会变得透明,以接收太阳带来的免费热量,“通过吸收太阳能,让房间保持温暖”。智能窗户由完全不透明状态转变成几乎完全透明状态用时很短,只需要几秒钟时间。智能窗户应用范围广,写字楼和住宅楼均能使用。 英国材料专家斯蒂芬莫里斯说,如果新型智能窗户真能迅速在不透明和透明之间转换,那么它将为能源节约带来福音。“这将意味着,光线能更快进入室内,这会减少房子的热量损失或者夏天时让房间更凉爽,”莫里斯说。 2 基于单片机的自动开关窗设计 2设计的任务与特点 2.1本设计的主要任务 对自动窗户功能进行设计,相应的硬件和系统软件设计,并做出控制系统,从而达到设计的目的:能够显示设定值与当前值;当室外湿度和烟雾值大于设定值时,通过电机的动作实现关窗;当小于设定值时实现开窗;按键可以对设定值进行调整,同时也可实现手动开关窗户。 2.2本设计的特点 本系统主要由多个传感器的传感信号处理器芯片和单片机AT89C52、电机驱动芯片以及显示电路等组成,具有以下特点: 可靠性高:高可靠性是系统应用的前提。在系统设计的每一个环节,都应该将高可靠性作为首要的设计准则,系统一旦失去了可靠性也就失去了产品的生命力。因此,针对系统在具体使用过程中可能存在的情况根据理论原理对系统的设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 深刻论证严格把关。 性能价格比高:此自动关窗系统具有体积小、速度快、功耗低等特点,并且集成了丰富的硬件资源,具有很高性价比。在设计硬件时,尽量地做到简化设计,减少元器件的使用数量,提高复用度。 功能完备,操作简便,高度人性化:强大、完备的功能将受到更多用户的欢迎,显著增加产品在市场上的竞争力。实现功能完备的同时,系统的操作使用上,尽量做到简单、方便,高度的人性化。比如说设防时只需要拨动一个按键就可以,系统状态全面直观,一目了然。 模块化设计:根据本系统是用于自动关窗的这一应用目的,系统尽量使用模块化设计,实现模块化积木式组合与拆分的功能,便于以后的升级换代,减少二次投资,可以满足家庭使用的重要性和复杂度以及使用对象对功能和价格的选择。 3 嘉兴学院南湖学院毕业设计 3 自动窗的构成及各模块 3.1 自动窗的构成 本控制系统主要由 AT89C52 单片机组成的中央控制器,驱动电路,湿度传感器,烟雾传感器,1602显示电路, 数据检测电路等组成。其系统结构框图如图3.1所示。 中 驱动器 湿度传感器 检测电路 央 控 显示电路 驱动器 烟雾传感器 制 器 驱动器 步进电机 图 3.1 系统结构框图 3.2单片机 89C52是一个低电压,高性能CMOS 8位单芯片微型计算机,包含了8k 字节的可反复擦写的闪速只读程序存储器和256 字节的随机存取数据存储器(RAM),它采用ATMEL公司的高密度、非挥发性存储技术生产,与工业 80C51 单芯片微型计算机的指令与引脚完全兼容,片内置通用8位中央处理器和闪速存储单元,89C52单片机在电子行业中有着广泛的应用。 89C52主要功能特性 1) 兼容MCS51指令系统 2) 8kB可反复擦写闪速只读存储器; 3) 32个双向的I/O口; 4) 256x8比特内部随机存储器; 5) 有3个16位的可编程定时/计数器中断; 4 基于单片机的自动开关窗设计 6) 时钟频率0-24兆赫兹; 7) 2个串行中断,可编程UART串行通道; 8) 2个外部的中断源,共8个中断源; 9) 2个读写中断口线,3级加密位; 10)有低功耗空闲状态和掉电模式,能将软件设置成睡眠状态并能将其唤醒; 11)有PDIP、PQFP、TQFP及PLCC等几种封装形式,以便能够适应不同产品的需求。 89C52管脚功能及管脚电压管脚图如图3.2所示: 图3.2 AT89C52管脚功能及管脚电压管脚图 89C52为8 位通用微处理器,采用工业 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 的C51内核,在内部功能及管脚排布上与通用的89C51 相同,其主要用于会聚调整功能的控制。其特点包括主IC的内部寄存器,RAM和外部接口的初始化数据融合,收敛调节控制,收敛测试图控制,红外遥控信号的接收和解码和红外主板和CPU通信的功能组件。其主要管脚有:XTAL1(19 脚)和XTAL2(18 脚)为专门为产生时钟振荡信号设立端口,外接12兆赫兹晶振。RST/Vpd(9 脚)为引导内部复位输入端口,在外部与电阻电容组成复位电路。VCC(40 脚)和VSS(20 脚)为电源端口,分别接+5V电源和接地。P0~P3 为可编程的通用I/O 脚,其功能用途由软件定义,在本次设计中,P0 端口(32~39 脚)和P2 端口(21~28 脚)被定义为1602显示器的功能实现控制端口,分别与1602显示器相应的功能管脚相连,10~13 脚定义为按键输入端, 12 脚、27 脚及28 脚定义为握手信号的功能端口,连接主板单片机的相应功能端,用于检测当前制式,会聚调整状态进入的控制功能。 P0 口是一组8 位漏极开路型双向I/O 口, 也即地址/数据的总线复用口。当其作为输出口时,每位驱动8 个双极型逻辑集成电路,对其 写“1”时,可当做高阻抗输入端来使用。在访问外部的数据或者程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问的这段时间内启动内部上拉电阻。在Flash 编程时,P0 口接收指令字节,而在程序校正检验时,输出指令字节,校正检验时,要求外接电阻并上拉。 5 嘉兴学院南湖学院毕业设计 P1 是一个带有内部上拉电阻的8 位双向通行的I/O 口, P1输出的缓冲级可以驱动(即吸收或输出电流)4 个双极型逻辑集成电路。对其写“1”,通过内部自带的上拉电阻把端口拉到高电平,这时可作输入口。当作输入口使用时,因为内部有上拉电阻,当某个引脚被外部信号拉低时会输出一个电流(IIL)。与89C51 不同的是,P1.0 和P1.1 还可以分别当做定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX)见表3.1,在闪存编程和程序校正检验期间,P1 接收低8 位的地址。 端口引脚 第二功能 P1.0 T2(定时/计数器2外部计数脉冲输入),时钟输出 P1.1 T2EX(定时/计数2捕获/重装载触发和方向控制) 表3.1 P1第二功能表 P2 是内部含有上拉电阻的8 位双向通行的I/O 口,P2输出的缓冲级可以驱动(即吸收或输出电流)4 个双极型逻辑集成电路。对其写“1”,通过自带的上拉电阻将端口拉到高电平,这时可将其作输入口,当作为输入口来使用时,因为内部有上拉电阻,当外部信号引脚被拉低时会输出一个电流(IIL)。在访问外部的程序memory或16 位地址的外部数据memory时,P2 口送出高8 位的地址数据。在访问8 位地址的外部的数据存储器(如实现MOVX @RI 指令)时,P2 口输出P2 锁存器中的内容。在Flash 编程或校验时,P2则接收高位地址和一些控制信号。 P3 是拥有内部上拉电阻的8 位双向I/O 口。P3 输出的缓冲级可以驱动4 个双极型逻辑集成电路。对其写入“1”时,通过内部上拉电阻拉将电平变成高电 时,被外部器件拉低电平的P3 口将用内部上拉电阻来平并可作为输入端口。这 输出电流(IIL)。P3 口除了作为普通的I/O 口线外,更重要的是它的第二作用见表3.2,P3 口还可以接收一些用于闪速存储器编程和程序校正检验的控制信号。 端口引脚 第二功能 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(外部的数据memory写选通) P3.7 RD(外部的数据memory读选通) 表3.2 P3口第二功能表 RST 复位输入端口。在振荡器进行工作时,只要RST引脚出现两个及以上机 6 基于单片机的自动开关窗设计 器周期的高电平就将单片机复位。 ALE/PROG 当访问外部的程序memory或者数据memory时,ALE输出的脉冲信号就用于锁存地址的低8 位字节。通常情况下,ALE以时钟的振荡频率的1/6固定的输出脉冲信号,因此它可用于对外输出时钟信号或用于定时。特别注意的是:每当在访问外部数据memory时将会跳过一个ALE 脉冲。对闪存存储器编程期间,这个引脚还被当做输入编程的脉冲(PROG)。如果有必要,可以通过对SFR区中的8EH 单元的D0 位进行置位,可禁止ALE 进行操作。这个位置位以后,只有一条MOVX 指令和MOVC指令才能够将ALE 启动。另外,这个引脚会被稍微拉高,在单片机执行外部的程序时,应该将ALE 禁止位设置为无效。 PSEN 程序储存使能(PSEN)输出是外部程序存储器的读选通脉冲信号,当AT89C52 由外部程序memory取指令(或数据)时,在一个机器周期中PSEN 有两次是有效的,即输出两个脉冲信号。与此同时,当访问外部数据memory,就会跳过两次PSEN脉冲信号。 EA/VPP 外部访问允许。如果想要使CPU 只是访问外部的程序存储器(地址为0000H—FFFFH),那么EA 端必须为低电平(接地)。如EA端接Vcc端,CPU 就会执行内部程序memory中的指令。 闪存存储器编程时,该引脚加上+12V 的编程允许电源Vpp,当然这必须是该器件是使用12V 编程电压Vpp。 XTAL1 振荡器反相放大器的及内部时钟发生器的输入端。 XTAL2 振荡器反相放大器的输出端。 在AT89C52 片内memory中,80H-FFH 的共128 个单元是SFR并不是所有的地址都被定义,从80H—FFH只有一小部分是被定义的,还有一部分并没有被定义。对于那些没有被定义的单元进行读写操作是无效的,不仅读出的数据是不确定的,而且写入的数据也将被丢失。这些地址单元在将来的使用中可能会有新的功能,在这种情况下,复位后这些地址单元中数据总是为“0”。 AT89C52 有256 个Bit的内部RAM,80H-FFH 高128 个Bit与SFR地址是相同的,但物理上它们是独立的。 当一条指令访问的地址为7FH 以上的内部单元时,指令中所用到的寻址方式是有区别的,也即寻址方式决定是访问高128 字节RAM 还是访问SFR。 ?定时器0和定时器1: AT89C52的定时器0和定时器1 的工作方式与AT89C51 相同。 7 嘉兴学院南湖学院毕业设计 3.3步进电机及其驱动 借助单片机AT89C51实现对四相步进电机的控制时,需要通过单片机的I/O端口输出具有一定时序的方波信号作为步进电机的控制信号,但如果只是靠这个TTL电平还是不能直接驱动电机。如果想用74LS373对电机进行驱动,那么必须要有许多寄存器的配合才能够驱动电机,因此考虑使用ULN2003芯片来驱动步进电机。 ULN2003是一种高电压、大电流的达林顿陈晶体管。每一对达林顿都串联一个2.7K的基极电阻,在5V工作电压下与TTL和CMOS电路直接相连,可以直接处理需要标准逻辑缓冲器来处理的数据。ULN2003的灌电路可达500mA,并且在关态是能够承受50V的电压,可在高负载电流下并行输出运行。 电机驱动的关键要点就是准确控制电机旋转的角度。在进行程序设计时需要根据系统中各传感器检测的信息判断电机方向,以更好的起动相应的所需要转动方向子程序。正转和反转控制程序根据控制脉冲序列的要求,使用相应的系统模型,并确定是否大幅度转向,使用改变脉冲宽度的方式来调节电机的转速。 在应用程序的设计中将电机的控制方法形成控制模型,并将该模型用数据表形式保存在程序存储器中,这样程序在使用过程就能直接使用。一般都是用逻辑电路来对步进电机进行脉冲控制,单片机控制电机时,电机的运行方式、方向及转速通常可以通过编写相应的程序由I /O口输出脉冲信号来决定。为了能够提高电机转动角度的准确性,采用减速比为1: 9 0的减速齿轮构成的传动机构,也就是当角度改变90?时,外部所能看到到的设备才转动1?。对四相步进电机驱动的程序设置按八拍工作方式进行设置,按照流程图分别设置各个子程序,然后根据不同情况分别调用。 图3.3 电机驱动原理图 8 基于单片机的自动开关窗设计 3.4 DHT11传感器 DHT11数字温湿度传感器是一款复合传感器。它利用特殊的数字模块采集技术和温湿度传感技术,以保证其具有较高的可靠性与优异的长久稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件。因此该传感器具有优良的品质、响应速度快、较强的抗干扰能力、成本低性能好等优点。采用单总线串行接口,使系统变得简便而快捷。超小的体积、极低的功耗,具有20米以上的传输能力,使其成为普通的应用乃至最为苛刻的应用中最佳的选择。产品采用 4 针单排的引脚封装形式,在使用中方便连接,其管脚如表3.3所示。 管脚 名称 功能 1 VDD 供电 3,5.5VDC 2 DATA 串行数据,单总线 3 NC 空脚,请悬空 4 GND 接地,电源负极 表3.3 DHT11管脚表 DHT11采用的电源为 3,5.5V。传感器在得电后,要等待 1s 以达到稳定的状态。电源(VDD,GND)之间可利用一个100nF 的电容,用以去耦滤波。 DATA 用于中央处理器与 DHT11之间的信息传送和通讯,一次通讯周期4ms左右,数据由小数部分和整数部分两部分组成,具体传送格式如下说明.操作流程如下: 一次完整的数据总长度为40字节,高位数据先出。数据格式:8字节湿度整数部分 字节湿度小数部分数据+8字节温度整数部分数据+8字节温度小数部分数数据+8 据+8字节的校正检验和。正确的数据它的校验和数据等于“8字节湿度整数部分数据+8字节湿度小数部分数据+8字节温度整数部分数据+8字节温度小数部分数据”的结果的最后8位。 用户单片机发出一次启动指令后,DHT11将从低耗能状态变换成高速状态,当单片机的启动指令结束后,DHT11发送出响应信号,送出40字节的数据,并进行一次信号的采集.此状态下,DHT11只有在接收到启动信号时才会进行一次温湿度的采集工作,如果没有接收到信号,DHT11不会主动进行数据的采集.采集数据后自动转换到低速状态。 3.5 MQ-2烟雾传感器 MQ-2气体传感器所使用的气敏材料是在清洁空气中电导率较低的SnO2。当 9 嘉兴学院南湖学院毕业设计 放置传感器环境的空气中含有可燃气体时,传感器的导电率将会跟随空气中所含有的可燃气体浓度的变化而变化。这种气体传感器可以测出多种危险气体,是一中符合不同场所应用的成本低效果理想的传感器,其基本测试电路如图3.4所示。 图3.4 烟雾传感器测试电路图 该传感器的电压有加热电压(VH)和工作电压(VC)两部分组成。其中 VH用于对传感器进行加热使其能够正常的工作。而VC是作用于检测与其串联的外部电阻(RL)上的电压(VRL)。这种传感器具有一定的极性, VC只能使用直流电源供电。为了使传感器能的各项性能更好,需要选择恰当的RL值。 3.6 ADC0832 ADC0832 是一种 8 位分辨率、双通道 A/D 转换芯片。由于它具有较小的体积, 兼容性强,成本低性能好而受到普遍的欢迎。学习并使用 ADC0832 可是使我们了解 A/D 转换器的原理,有助于我们单片机技术水平的提高。 0832 为 8 位分辨率 A/D 转换芯片,可以适应一般的模拟量转换要求。芯片A/D的转换时间仅为 32μS,通过双输出数据检验,以减少转换过程中数据误差。它的使能输入端是独立的,使多个器件的连接和中央处理器的控制更加便捷。 通常情况下 ADC0832 有4根数据线与单片机的接口相连接。当ADC0832 处于空闲时其 CS 输入端应该是高电平状态,在这种情况下芯片被禁止使用,其它脚的电平可以任意。在将要进行 A/D 转换时,须先将 CS 使能端的电平变为低而且要一直维持这种低电平状态等到转换完全才可改变。这种状态下芯片开始了模数转换工作,与此同时由中央处理器向转换芯片时钟输入端 CLK 输入时钟脉冲,DO/DI 端则使用 DI 端输入通道功 能选择的数据信号。在第 1 个时钟脉冲的下沉之前 DI 端必须是高电平,表示启始信号。在第 2、3 个脉冲下沉之前 DI 端应输入 2 位数据用于选择通道功能。 10 基于单片机的自动开关窗设计 3.7 LCD1602液晶显示 1602液晶显示,它是一种专门用来显示简单数据的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此所以它不能很好地显示图形(用自定义CGRAM,显示效果也不好)。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶,管脚如图3.5所示。 图3.5 1602管脚图 1602的管脚功能如下: 第1脚:VSS为接地端。 第2脚:VCC为+5V电源端。 第3脚:V0用来调节对比度,为了更好的显示字符可以连接一个10K的滑动变阻器来进行对比度的调节。 第4脚:RS=1是使用数据寄存器,RS=0时就选择指令寄存器 第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。 第6脚:E(或EN)端为使能端,高电平(1)时读取信息,负跳变时执行指令。 第7,14脚:D0,D7为8位双向数据端。 第15,16脚:或空脚背景电源。15脚背光正极,16脚背光负极。 4 软件设计 4.1 主程序流程图 本系统的单片机使用了ATMEL公司的低功耗单片机STC89C52。主程序中仅完成了系统的初始化和开始的显示部分,然后就进入待机模式。当产生中断时,单 11 嘉兴学院南湖学院毕业设计 片机被唤醒并执行相应的中断服务子程序,从中断子程序返回后,系统又进入到待机模式。整个程序的设计使系统在绝大多数时间都处于最低功耗状态。 整个系统软件需要对温度传感器DHT11、MQ-2烟雾传感器、窗户控制系统进行管理。温度传感器DHT11为数字式温度传感器,直接与单片机的串口连接来读取温度,MQ-2烟雾传感器需要通过ADC0832转换芯片与单片机连接。以上所有模块均在主程序中完成初始化过程,系统流程图如图4.1所示。 开始 系统初始化 中断初始化 传感器数据读取 N 大于设定值 Y 处理 结束 图4.1 主程序流程图 4.2 各部分子程序 4.2.1 湿度检测 DHT11子程序是结合它的用户使用资料编写,主要完成的是初始化DHT11,从DHT11中读出一个字节的数据,向DHT11中写入一个字节的数据,配置DHT11包括警报湿度上限和下限、湿度转换的精度,读出Scrachpad存储器中的九个字节的数据,读出Rom中的64位Code值,对读出的Scrachpad数据进行CRC校验,然后根据读出的数据得到测量出的十进制温度值,流程图如图4.2所示。 12 基于单片机的自动开关窗设计 开始 ROM指令 读取温湿度 N CRC校验 Y 储存温度 结束 图4.2温度读取流程图 DHT11数据的CRC校验。为了解决单总线串行传输数据可能引起的错误,DHT11内部具有产生CRC校验码电路,这样编程时可以通过对读出的数据进行CRC校验码,并用这个校验码和获得的数据的最后一个字节比较,若两者相同则证明数据传送没有错误,从而验证通信过程中数据传输的正确性,使采集温度信号的可靠性得到保证。 CRC检验的求法。M为一个k位长的信息帧。P为n+1位预先确定的用来生成校验码的二进制序列其最高位和最低位必须为1,DS18B20中使用的序列为:P , 1 0011 0001。F为,位FCS,即校验码序列。T为k,,位被传输的帧。因为F是接在M信息帧之后的,因此T=M ? 2 n (2 n 为2的n次方)中,M ? 2 , 相当于M左移,位,后面添,个零。设M ? 2 , 除以P的商和余数分别是Q和R,则有M ? 2 , =P ? Q+R即M ? 2 , /P=Q+R/P若设T=M ? 2 , +R,则T定能被整除。因为按模2的加减运算相当于异或运算,故有T/P=(M ? 2 , +R)/P=(M ? 2 , )/P+R/P =Q+R/P+R/P=Q这样一来,校验码序列F就是M ? 2 [4], 除以P的余数R。通过计算可以得到 256个用于CRC检验的数据。 4.2.2 LCD1602显示 LCD显示程序最主要的部分就在发送命令和发送数据这两个基础程序。通过LCD的数据手册,可知LCD时序图如表4.1所示。 13 嘉兴学院南湖学院毕业设计 读状态 输入 RS=L,R/W=H,E=H 输出 D0~D7=状态字 写指令 输入 RS=L,R/W=L,D0~D7=状态字,E=高脉冲 输出 无 读数据 输入 RS=H,R/W=H,E=H 输出 D0~D7=数据 写数据 输入 RS=H,R/W=L,D0~D7=状数据,E=高脉冲 输出 无 表4.1 LCD12864基本操作状态表 1. 读操作时序 根据LCD12864控制器的数据手册,可以通过流程图来得知LCD读取数据和写入数据的时序及流程。如图4.3所示。 图4.3 LCD12864读操作时序 2. 写操作时序如图 图4.4 LCD12864写操作时序 LCD写操作包括写数据和写命令两个部分构成,当RS=0时,为写命令,当RS=1时为写数据。 14 基于单片机的自动开关窗设计 5系统组装及调试 5.1组装步骤 将之前各个模块的原理图组合最终形成整体的原理图,根据整体原理图进行 实际电路的连接与调试。 1. 形成整体的原理图,并对其进行完善。 2. 对万能板进行检查,是否存在问题。 3. 清点所需要的器件及工具,是否完全。 4. 将各器件进行焊接,形成实际电路板。 5. 对电路板进行调试,解决存在的问题。 5.2 整体原理图 见附录1 5.3 元器件清单 器件名称 数量 万能板 1 单片机 1 LCD1602 1 ULN2003 1 步进电机 1 ADC0832 1 MQ-2烟雾传感器 1 发光二极管 1 电源 1 12M晶振 1 1K电阻 2 10K变阻器 2 电容 3 按键 5 导线 若干 15 嘉兴学院南湖学院毕业设计 5.4焊接及注意事项 5.4.1焊接前处理 1.检查电烙铁通电后是否正常,是否有良好的接地。 2.检查器件焊接部位的氧化层,若存在氧化层可用小刀刮去焊接部位表面的氧化层,使其露出金属光泽。电路板可用细纱纸将铜箔打光后,涂上一层松香酒精溶液。 3.对元件镀锡,进行以上处理后对器件和引线镀锡。可将引线蘸一下松香后,将带锡的电烙铁头压在引线上,并转动引线,即可使引线均匀地镀上一层很薄的锡层。导线焊接前,应将绝缘外皮剥去,再经过上面两项处理。如果导线内不是是多股金属丝,经过处理后应先拧在一起,然后再镀锡。 5.4.2 焊接 1.握持电烙铁的方法。 通常握持电烙铁的方法有握笔法和握拳法两种。 (1)、握笔法。适用于轻巧型的烙铁如30W的内热式。它的烙铁头是直的,头端锉成一个斜面或圆锥状的,适宜焊接面积较小的焊盘,本设计制作所采用的方法。 (2)、握拳法。适用于功率较大的烙铁,在本设计的制作过程中采用的是小功率的烙铁因此不采用这种方法。 2.在印刷电路板上焊接引线的几种方法。 (1)、直通剪头。引线直接穿过通孔,焊接时使适当的锡熔化在焊盘上方让其均匀地分布在沾锡的引线四周,形成一个圆锥体模样,等到它冷却凝固后,将过长的引线剪去。 (2)、直接埋头。将引线通过焊孔并路出一定的长度,用熔化的焊锡把引线头固定在焊点里面。这种焊点像半球形,需要注意的是焊点是否存在虚焊。 结束语 通过此次毕业设计让我知道了只有能够将理论与实际结合在一起那才是真正学到的。这次的毕业设计通过各种途径搜集相关资料、查找各种器件、进行组装与调试和撰写论文对我来说是一次非常难得的经历和很好的锻炼机会,可以说此次设计已经囊括了大学期间大部分的知识,从选题到定稿,从理论到实践需要 16 基于单片机的自动开关窗设计 将所学的专业知识都结合起来才能完成。这不仅是我更加深入的了解了之前所学的知识,而且还学到了很多之前未接触的知识。对于我来说这不仅仅是一次毕业设计,更重要的是在过程中提高了我各方面的能力,让我在以后的工作中能够有更好的表现。 回顾起此次毕业设计,至今我仍感慨万分,可以说得是苦多于甜。在整个过程中遇到很多问题,发现了自己许多的不足之处,如在焊接器件时不够仔细出现了器件正负极错误,出现虚焊或粘连的情况。通过此次设计更好的了解了单片机系统的设计方法,知道了各种器件的功能及使用注意事项。掌握了 Professional软件,学会了湿度传感器和烟雾传感器的使用方法,掌握了电机驱动的方法。 参考文献 [1] 王煜东. 《传感器应用电路400例》,M,. 北京:中国电力出版社,2008. [2] 王化祥,张淑英. 《传感器原理及应用》第三版. 天津:天津大学出版社,2007.2. [3] 曾光宇. 《现代传感器技术与应用基础》,M,. 北京:北京理工大学出版社,2001:30—63. [4] 负图. 《新型传感器集成电路应用手册(下)》,M,. 北京:人民邮电出版社,2009.9. [5] 卿太全.《最新传感器选用手册》[M]. 北京:中国电力出版社,2009.7. [6] 邓学欣, 檀润华. 智能窗的概念设计,J,. 河北工业大学学报,2003(1). [7] 秦曾煌. 《电子技术》第六版,M,. 北京:高等教育出版社,2004:80—103. [8] 赵新民. 《智能仪器原理及设计》,M,. 哈尔滨:哈尔滨工业大学出版社, 1995. [9] 高洪志. 《MCS-51单片机原理及应用技术教程》[M]. 北京:人民邮电出版社,2009.4. [10] 王幸之,钟爱琴,王雷,王闪. 《AT89系列单片机原理与接口技术》[M]. 北京:北京航空航天大学出版社,2004.9. [11] 李朝青. 《单片机原理及接口技术》第三版. 北京:北京航空航天大学出 17 嘉兴学院南湖学院毕业设计 版社,2006.12. [12] 徐爱钧、彭爱华. 《单片机高级语言C51应用程序设计》,M,. 北京:北 京工业出社, 1999. [14] 李刚、林凌、王焱 . 《新概念单片机教程》,M,. 天津:天津大学出版社, 2004. [15] 康华光,陈大钦,张林. 《电子技术基础模拟部分》第五版. 北京:高等 教育出版社,2006.1. [16] 康华光,邹寿彬. 《电子技术基础数字部分》第五版. 北京:高等教育出 版社,2006.1. [17] Goldman JM, Petterson MT, Kopotic RJ, Barker SJ.Masimosignal extraction pulse oximetry[J].J Clin Monit Comput.2000;16(7):7 5-83. [18] D. Tulone. On the feasibility of global time estimation under isolation conditions in wireless sensor networks. 18 基于单片机的自动开关窗设计 附录 附录1 系统仿真图 19 嘉兴学院南湖学院毕业设计 附录2 焊接图 附录3 程序 #include #include #include #define uchar unsigned char #define uint unsigned int #define ulong unsigned long sbit rs=P2^0; sbit rd=P2^1; sbit lcden=P2^2; 20 基于单片机的自动开关窗设计 sbit menu=P2^5; sbit add=P2^4; sbit dec=P2^3; sbit open=P2^6; sbit close=P2^7; #define tl 0xba; #define th 0x3c; #define MOTORSTEP P1 //宏定义,定义P1口为步进电机驱动端口 uchar bai,shi,ge,dava2,dsflj,kval,lofl; uint sudu; uchar count0,second,zhenzhuan,fanzhuan,timeflg,opensw,closesw,keysw; uint adc; uint upsmong,uphum; void delay(uint z); void write_rvalue(); uchar code logo1[]= "Welcome to use "; uchar code logo2[]="window system "; uchar code logo3[]="Temp=85oC HU=85% "; uchar code logo4[]="Smog= ppm "; uchar code logo5[]="window open "; uchar code logo6[]="window close "; uchar code logo7[]="UPSmog= ppm "; uchar code logo8[]="UP-Hum= % "; uchar code logo9[]="Please input... "; uchar code logo10[]="Please wait... "; 21 嘉兴学院南湖学院毕业设计 void delaymoto() //步进电机每一步间延迟函数 { uint y=sudu; while(y--); } uchar code FFW[]={0x01,0x03,0x02,0x06,0x04,0x0c,0x08,0x09}; //步进电机驱动值数组 uchar code REV[]={0x09,0x08,0x0c,0x04,0x06,0x02,0x03,0x01}; //步进电机驱动值数组 uchar num1 [5] = {0x00,0x00,0x00,0x00,0x00}; //空气湿度 uchar num2 [5] = {0x00,0x00,0x00,0x00,0x00}; //空气温度 uchar num3 [5] = {0x00,0x00,0x00,0x00,0x00}; //烟雾 uchar num4 [5] = {0x00,0x00,0x00,0x00,0x00}; void delaylog(uint z)//延时函数 { uint x,y; for(x=z;x>0;x--) for(y=500;y>0;y--); } void delay(uint z)//延时函数 { uint x,y; for(x=z;x>0;x--) 22 基于单片机的自动开关窗设计 for(y=10;y>0;y--); } void SETP_MOTOR_FFW() //反转 { uint i=0; for(i=0;i<8;i++) //8步一个循环 { MOTORSTEP=FFW[i]; //取值赋给P1驱动口 delaymoto(); } } void SETP_MOTOR_REV() //正转 { uint i=0; for(i=0;i<8;i++) //8步一个循环 { MOTORSTEP=REV[i]; //取值赋给P1驱动口 delaymoto(); } } void write_com(uchar com) { rs=0; lcden=0; P0=com; delay(5); lcden=1; delay(5); 23 嘉兴学院南湖学院毕业设计 lcden=0; } void write_date(uchar date) { rs=1; lcden=0; P0=date; delay(5); lcden=1; delay(5); lcden=0; } void init1602() { uchar num; rd=0; lcden=0; write_com(0x38); write_com(0x0c); write_com(0x06); write_com(0x01); write_com(0x80); for(num=0;num<16;num++) { write_date(logo1[num]); delay(2); } write_com(0x80+0x40); for(num=0;num<16;num++) { write_date(logo2[num]); 24 基于单片机的自动开关窗设计 delay(2); } delaylog(200); //*************************************************** write_com(0x80); for(num=0;num<16;num++) { write_date(logo6[num]); delay(2); } write_com(0x80+0x40); for(num=0;num<16;num++) { write_date(logo10[num]); delay(2); } } void init() { TMOD = 0x01; EA = 1; TH0=0X3C; TL0=0XB0; EA=1; ET0=1; TR0=1; } 25 嘉兴学院南湖学院毕业设计 void keyscn() { uchar num; if(keysw==1) { if(opensw==1) { if(open==0) { write_com(0x80); for(num=0;num<16;num++) { write_date(logo5[num]); delay(2); } write_com(0x80+40); for(num=0;num<16;num++) { write_date(logo10[num]); delay(2); } 26 基于单片机的自动开关窗设计 closesw=1; delay(10); if(open==0) { while(!open); zhenzhuan=1; fanzhuan=0; second=0; keysw=0; } } } if(closesw==1) { if(close==0) { write_com(0x80); for(num=0;num<16;num++) { write_date(logo6[num]); delay(2); } write_com(0x80+40); for(num=0;num<16;num++) { write_date(logo10[num]); delay(2); } 27 嘉兴学院南湖学院毕业设计 delay(10); if(close==0) { while(!close); zhenzhuan=0; fanzhuan=1; second=0; keysw=0; } } } } if(menu==0) { lofl=1; delay(10); if(menu==0) { while(!menu); dsflj=0; kval++; } } if(kval==1) { num4[4]=upsmong; 28 基于单片机的自动开关窗设计 write_rvalue(); if(lofl==1) { write_com(0x80); for(num=0;num<16;num++) { write_date(logo7[num]); delay(2); } write_com(0x80+40); for(num=0;num<16;num++) { write_date(logo9[num]); delay(2); lofl=0; } } if(add==0) { delay(10); if(add==0) { while(!add); upsmong++; num4[4]=upsmong; write_rvalue(); 29 嘉兴学院南湖学院毕业设计 if(upsmong==250) {upsmong=0;} } } if(dec==0) { delay(10); if(dec==0) { while(!dec); upsmong--; num4[4]=upsmong; write_rvalue(); if(upsmong==0) {upsmong=250;} } } } if(kval==2) { 30 基于单片机的自动开关窗设计 num4[4]=uphum; write_rvalue(); if(lofl==1) { write_com(0x80); for(num=0;num<16;num++) { write_date(logo8[num]); delay(2); } write_com(0x80+40); for(num=0;num<16;num++) { write_date(logo9[num]); delay(2); lofl=0; } } if(add==0) { delay(10); 31 嘉兴学院南湖学院毕业设计 if(add==0) { while(!add); uphum++; num4[4]=uphum; write_rvalue(); if(uphum==100) {uphum=0;} } } if(dec==0) { delay(10); if(dec==0) { while(!dec); uphum--; num4[4]=uphum; write_rvalue(); if(uphum==0) {uphum=100;} } } } 32 基于单片机的自动开关窗设计 if(kval==3) { kval=0; dsflj=1; lofl=1; if(lofl==1) { write_com(0x80); for(num=0;num<16;num++) { write_date(logo4[num]); delay(2); } write_com(0x80+40); for(num=0;num<16;num++) { write_date(logo3[num]); delay(2); } lofl=0; } 33 嘉兴学院南湖学院毕业设计 } } void setmoto() { char num; if(zhenzhuan==1) { dsflj=0; SETP_MOTOR_REV(); if(second==10) { zhenzhuan=0; dsflj=1; opensw=0; closesw=1; keysw=1; write_com(0x80); for(num=0;num<16;num++) { write_date(logo4[num]); delay(2); } write_com(0x80+40); for(num=0;num<16;num++) { write_date(logo3[num]); delay(2); } 34 基于单片机的自动开关窗设计 } } if(fanzhuan==1) { dsflj=0; SETP_MOTOR_FFW(); if(second==10) { fanzhuan=0; dsflj=1; opensw=1; closesw=0; keysw=1; write_com(0x80); for(num=0;num<16;num++) { write_date(logo4[num]); delay(2); } write_com(0x80+40); for(num=0;num<16;num++) { write_date(logo3[num]); delay(2); } } } 35 嘉兴学院南湖学院毕业设计 } TEMPHRDSPLAY() //显示空气温湿度函数 写入1602 { num1[4]=U8T_data_H; //温度高8位,即是整数部分 num1[1]=num1[4]/10; //整数十位 num1[0]=num1[4]%10; //整数个位 write_com(0x80+0x40+5); //显示温度 write_date(0x30+num1[1]); write_date(0x30+num1[0]); num2[4]=U8RH_data_H; //湿度高8位,即是整数部分 num2[3]=num2[4]/10; //整数十位 num2[2]=num2[4]%10; //整数个位 //显示湿度 write_com(0x80+0x40+13); write_date(0x30+num2[3]); write_date(0x30+num2[2]); } SMOGDSPLAY() //显示空气温湿度函数 写入1602 { num3[4]=adc; //温度高8位,即是整数部分 num3[0]=num3[4]%10; //显示ge位 num3[1]=num3[4]%100/10; //显示shi位 num3[2]=num3[4]%1000/100;//显示百位 write_com(0x80+5); //显示温度 write_date(0x30+num3[2]); write_date(0x30+num3[1]); 36 基于单片机的自动开关窗设计 write_date(0x30+num3[0]); } void write_rvalue() { num4[0]=num4[4]%10; //显示ge位 num4[1]=num4[4]%100/10; //显示shi位 num4[2]=num4[4]%1000/100;//显示百位 write_com(0x80+7); //显示温度 write_date(0x30+num4[2]); write_date(0x30+num4[1]); write_date(0x30+num4[0]); } void main()//主函数 { init(); init1602(); sudu=200; zhenzhuan=0; fanzhuan=1; dsflj=1; uphum=75; upsmong=100; opensw=1; closesw=1; 37 嘉兴学院南湖学院毕业设计 keysw=1; if(fanzhuan==1) { dsflj=0; SETP_MOTOR_FFW(); if(second==10) { fanzhuan=0; dsflj=1; opensw=1; closesw=0; } } //adc=125; while(1)//大循环 { keyscn(); setmoto(); if (dsflj==1 ) { RH(); TEMPHRDSPLAY(); 38 基于单片机的自动开关窗设计 adc = ADC0832(0,0); //差分模式,CH0-CH1 SMOGDSPLAY(); if(closesw==1) { second=0; if(adc>upsmong && U8RH_data_H>uphum ) { fanzhuan=1; } } if(opensw==1) { second=0; if(adc
本文档为【基于单片机的自动开关窗设计_毕业设计】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_633423
暂无简介~
格式:doc
大小:230KB
软件:Word
页数:54
分类:企业经营
上传时间:2017-12-20
浏览量:89