设计与开发

基于单片机的智能窗 基于单片机的智能窗控制系统设计方案

小编 2024-10-12 设计与开发 23 0

基于单片机的智能窗控制系统设计方案

一、引言

随着电子技术的不断发展, 家庭中的许多电器设备如彩电、冰箱、空调等都已贴上了智能化的标签, 为提高人们的生活质量做出了贡献。但遗憾的是, 居室的眼睛---窗户, 却迟迟未跟上时代的步伐。即使是在众多的智能化生活小区, 我们都可以发现, 几乎所有的窗户的管理仍然处在原始管理方式, 与电子技术毫不沾边, 更不用说智能化了。如果使窗户具有一定的智能, 如下雨则自动关、室内有害气体超标则自动开、有盗贼入内则自动报警等, 就会给人们的居家生活带来诸多方便, 从而进一步提高人们的生活质量。

沿着这样的思路, 我们设计了以AT89C51单片机为中央控制器的智能窗控制系统。

该控制系统能通过其数据检测传感电路不断循环检测室内温度、湿度、有害气体(如媒气) 浓度等环境参数,然后与由控制键盘预置的参数临界值相比较, 从而作出开/关窗、转动/停止换气扇、降/升温(湿) 等判断, 再结合窗状态检测电路所检测到的窗状态, 发出一系列的控制命令, 完成下雨则自动关窗、室内有害气体超标则自动开窗(同时转动换气扇) 、恒温(湿) 等自动控制功能。人们还可通过控制键盘, 直接控制窗户的开/关、换气窗的转/停、温(湿) 的升/降、选择所显示参数的种类等。

二、系统组成和部分电路设计

本控制系统主要由AT89C51单片机组成的中央控制器, 数据检测传感电路,A/D 转换器, 窗驱动控制接口电路、窗驱动电路等组成。其系统框图如图一所示。

图1 系统框图

中央控制器

中央控制器以美国ATMEL 公司的AT89C51单片机为核心。

1. AT89C51 单片机系统具有设计简单、性能可靠、功耗低等优点。它为用户预留下足够的软、硬件资源, 可供用户进行再开发应用。该系统除内部已有的4K Flash 存储器外, 还可以扩展选址64KROM区和64KRAM区, 供用户使用。用户在系统开发时, 可以将自己的数据块和程序段、数据表, 以若干控制子程序、数据块形式存放于AT89C51 单片机的扩展ROM或RAM区中, 以便系统工作时重复使用和反复调用。由于本应用系统主要用于温度、湿度、有害气体识别、防盗安全的定点和多点测试, 片内4K Flash 存储器已能满足系统设计要求。

2. AT89C51 单片机机有三级程序存储器加密。利用该功能可防止别人非法复制程序, 从而保护知识产权。

3. AT89C51 单片机还为用户预置了P0、P1、P2、P3 四个并行I/O 口, 为该系统的数据采集和控制提供了足够的端口资源。

4. AT89C51 单片机还为用户提供一组全双工串行数据传输端口, 可用于单片机系统间的远程数据信息交换。

本系统采用P0 数据采集、控制端口, 完成控制信息的采集和控制功能。

P110~P113 作为窗状态检测端口, 完成对窗状态(即窗是否移到边框) 的检测。

数据检测传感电路

数据检测传感电路由四个部分组成: 1) 温度传感电路; 2) 湿度传感电路; 3) 有害气体传感电路; 4) 红外防盗传感电路。

为了讨论问题方便, 我们以温度传感电路为例进行分析。通常, 在自然情况下, 窗户的开关与生活环境和人体的舒适度有关, 温度的测试是该系统设计的关键。为了较好地测出温度参数, 我们选用集成温度传感器AD590(可测-55~+150 ℃) , 其温度检测完全可以满足要求。基本电路如图二所示。

图2 基本电路

A/D 转换器

为了便于与AT89C51 单片机相连接, 同时又有利于系统设计, A/D 转换器选用了ADC0809.其分辨率为8 位,不必进行零点和满度调整。单一电源( + 5V) 供电, 模拟量输入范围0 -5V.转换速度取决于芯片的时钟频率。

时钟频率范围为10 -500KHZ.ADC0809 有八路模拟量输入, 在本系统中只用4 路输入, 即可完成温度等4 种被测模拟量的A/D 转换。利用单片机对FOH口的数据写启动A/D 转换器, A/D 转换结束ADC0809 的EOC 向AT89C51 发出中断请求信号, CPU 再响应中断请求信号, 通过对FOH 口的读操作, 读取转换结果并送到被测量的相应存储区。

在重新选择被测量(修改各相关指针) , 并再次启动A/D 转换后中断返回。A/D 转换器电路如图三所示。

图3 A/D 转换器电路

窗驱动电路

我们可以根据驱动信号与所控对象的关系, 将窗驱动电路分解为: 移窗驱动电路; 换窗驱动电睡; 窗锁驱动电路; 温度调节驱动电路; 湿度调节驱动电路; 换气扇驱动电路; 报警驱动电路等, 分别用它们去控制1 个对象。

窗状态检测电路

可考虑采用4 个开关型磁敏器件。外窗、内窗所对应的左、右墙框各1 个。在外窗、内窗的左、右边上与磁敏器件相对应的地方各贴上一小片磁铁。当小磁铁随窗户的移动而移近相对应的磁敏器件时, 该磁敏器件的输出信号从高电平变为低电平, 表示窗户已移到相应边上。

键盘输入及显示电路

可采用Intel 公司生产的8279 通用可编程键盘显示器接口芯片。利用8279 , 可实现对键盘显示器的自动扫描,并识别键盘上闭合键的键号, 大大节省单片机对键盘显示器的操作时间, 从而减轻单片机的负担。该键盘输入及显示电路具有显示稳定, 程序简单, 不会出现误动作等优点。

对于控制键盘, 可考虑采用微动开关制作并安装在窗户的固定边框上。通过控制键盘, 用户不但可设置各环境参数的临界值, 还可随意选择所显参数的种类, 并直接控制窗户的开/关、换气扇的转/停、温(湿) 的升/降等。

三、软件设计

该控制系统的软件主要由一个主程序和两个中断服务程序等所组成。

主程序

主程序的主要作用是在系统复位后对系统进行初始化, 如设置8279、ADC0809 等的工作方式和初始状态, 设置各中断的优先级别并开中断, 以及首次启动A/D 转换等, 然后向8279 循环送显示字符。

读键值中断服务程序

读键值中断服务程序的主要作用是在AT89C51 响应

中断(有键按下则产生该中断) 后, 读出键值, 并根据键值从P0 口依序发出相应的控制命令字, 完成相应的控制功能。该中断应设为高优先级。

循环检测及A/D 转换中断服务程序

该中断服务程序的主要作用是在AT89C51 响应

中断(A/D 转换结束时EOC 引脚输出高电平, 从而产生该中断) 后, 将A/D 转换结果送相应存储区, 然后判断该转换结果是否在上、下限值之间, 并根据判断结果依序发出相应的控制命令字, 完成相应的控制、报警功能。然后重新选择被转换量, 再次启动A/D 转换后返回主程序。

该中断应设为低优先级。并设为电平触发方式。

程序流程图如下:

图4 程序流程图

基于手机的建筑用窗远程开关控制系统的研究

0 引言

随着中国社会的快速繁荣发展,人们的住房水平要求随着生活水平的不断提高也在不断上升。科学技术和互联网技术的快速发展又极大促进了我国建筑业朝着智能化方向的发展[1]。窗户是建筑必不可缺少的构成部分,与人们日常生活活动息息相关[2]。目前,大多数建筑的窗户还是以手动方式控制开关,这种传统的手动开关窗户日渐无法满足现代人们的日常需求[3],如突遇雷雨大风天气,而家中又恰好没人,无法及时关闭门窗[4];早晨匆匆上班忘记开窗更新室内空气等。因此人们迫切需要一种可以远程控制的窗户来满足生活中的需求。

系统主要由3部分组成:手机终端、主控制器和电动开窗器。手机终端用于远程控制窗户和显示窗户实时运动状态,提供直观的人机交互界面;主控制器用来接收来自手机的指令信息、控制电动开窗器开关窗户及把窗户运动状态信息反馈到手机上,因此是整个系统的核心;电动开窗器直接与窗户连接,控制着窗户的开关。系统总体结构图如图1所示。手机终端首先把指令消息发送到服务器上,服务器再把指令消息经互联网发送到家里路由器,由路由器传递给主控制器,主控制器根据指令消息完成相应控制动作。

1.2 主控制器设计方案

窗户要实现远程控制需要一个用于控制窗户开关的控制器。该控制器起着控制窗户和远程连接的作用,为系统的核心。3种常用于控制窗户的控制器如下。

(1)单片机控制:单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器(CPU)、随机存储器(RAM)、只读存储器(ROM)、多种I/O口和中断系统、定时器/计数器等功能集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。其优点:经济实惠,成本相对较低;缺点:不易扩展,对环境依赖性强,开发周期长。用单片机制作的主控板,由于受制板工艺、布局结构、器件质量等因素的影响导致抗干扰能力差,故障率高。

(2)PLC控制:PLC(可编程逻辑控制器)是专门为在工业环境下应用而设计的数字运算操作电子系统。它采用一种可编程的存储器,在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,通过数字式或模拟式的输入输出来控制各种类型的机械设备或生产过程[5]。其优点:抗干扰能力强,故障率低,易于设备的扩展,便于维护,开发周期短;缺点:成本相对单片机高。

(3)Arduino控制:Arduino是一款便捷灵活、方便上手的开源电子原型平台,由一个欧洲开发团队于2005年冬季开发。Arduino在开发之初就明确了其应用环境,设计了开源开放的平台[6]。其拥有丰富的接口、简便的编程环境、极大的自由度、标准化的接口模式、极高的可扩展性,是目前较为流行的电子互动平台[7]。由于该板为开源硬件,因此市面上出现了许多与之功能匹配的扩展板和兼容板方便选择使用。本系统选用了一种Arduino兼容板——ESPDuino板。该板既与Arduino相兼容而又在其基础上增加了连接网络功能,具有使用更方便、价格便宜的特点。

2 系统硬件设计与选用

系统的硬件采用模块化设计,本系统的硬件主要由手机终端、主控制器、电动开窗器和窗户组成。

2.1 手机终端选用

手机终端选用Android系统。Android手机现在已经成为市场占有率最高的移动操作系统,具有高度的开源性,拓展性非常高,这点使得其他手机系统不能与其相比[8]。相比于其他系统,Android系统开发更容易,几乎没有什么门槛,因此,可以很快地开发出自己的程序。

2.2 主控制器

主控制器是整个硬件系统的核心,一方面负责接收来自手机终端指令消息并控制开窗器来控制窗户的开关;另一方面把窗户的运动状态反馈给手机。主控制器电路图如图2所示。主控制器主要由主控板、红外对射式传感器和无线发射模块组成。

2.2.1 主控板

主控板选用的是四博智联科技有限公司生产的ESPDuino板。该板是该公司基于ESP8266-13而开发的,与Arduino UNO相兼容。该板采用ESP-WROOM-02贴片式WiFi模块,相对于传统的Arduino板,不仅省去了外接WiFi模块布线的麻烦和费用,而且还使得系统运行更加可靠、体积更小,在与网络连接使用中具有广泛的应用。

2.2.2 红外传感器的选用

本系统选用分离式红外对射式计数传感器。该传感器为NPN常闭型,即有遮挡时输出低电平信号,无遮挡时输出高电平信号。发射管工作电压为5 V,工作电流为40 mA,接收管工作电压为3~5.5 V,工作电流为100 mA,可方便与开发板连接。其2~20 cm的有效检测距离、2 ms的快速反应时间,使其在系统中具有良好的应用。

2.2.3 无线发射模块的选用

无线模块具有体积小、传输距离远等优点,广泛应用在生活中各个领域。本系统选用的无线模块工作频率为433 MHz。433 MHz无线收发模块为短距离无线通信模块,由于该模块的成本低、睡眠模式约为1 μA的电流消耗、小尺寸封装和较少的外接引脚,使得其在物联网无线通信中被广泛使用。该模块还具有灵敏度高、绕射性能好、功耗低、穿透力强等特点。

2.3 电动开窗器的选用

电动开窗器选用的是上海锴蔻电子科技有限公司的KK-LT-300电动链条开窗器。其工作电压为直流24 V,工作电流为1 A,推拉力为400 N,行程距离为400 mm,速度为7 mm/s。其具有超负荷过载保护设计;开关窗时噪音低,双层金属链片设计,运行时更稳定、顺畅。开窗器直接与窗户连接,通过链条的伸缩来控制窗户的开关。

3 系统程序设计

从手机终端发出控制指令到窗户执行指令,是依靠系统程序来完成的。系统程序是整个系统的核心,其程序流程图如图3所示。手机APP采用消息队列遥测传输(Message Queuing Telemetry Transport,MQTT)传输协议发送指令消息到服务器上,服务器打包消息通过互联网访问到家里路由器,路由器经WiFi方式把消息传递给主控制器,主控制器解析指令消息后经无线发射模块发送到电动开窗器的接收模块,控制电动开窗器的运行进而控制窗户的开关。同时红外计数传感器不断对电动开窗器链条节数计数采集并依次发送到服务器上,服务器收到数据再一一推送给手机终端作为反馈信息。该系统程序主要包括两部分:手机APP软件程序设计和控制器的程序设计。

3.1 手机APP软件程序设计

手机APP的设计采用的是Java编程语言,开发环境为Android Studio。Android Studio是谷歌推出的新的Android手机集成开发工具,用于Android手机应用程序的开发和调试。手机APP的设计一方面用于发送指令消息;另一方面用来接收反馈信息并更新。手机APP程序发送指令消息和接收反馈消息采用的是MQTT传输协议,其工作过程如下。当点击“打开”按钮时,指令消息以MQTT协议的方式先发送到服务器上,服务器把指令消息经互联网发送到家里路由器,指令消息经路由器推送到主控制器上,主控制器依据指令消息控制电动开窗器运行、链条伸出,进而打开窗户。同时,红外传感器不断采集数据,并经原链路反馈给手机终端,手机终端数据以1%的速度递增,直到100%或收到“暂停”指令消息停止工作。反之,当点击“关闭”按钮时,手机终端数据以1%的速度递减,直到0%或收到“暂停”指令消息停止工作。因此,该手机终端控制程序的设计使得人们对开关窗运行状态更加清楚、直观,而且也使得人们更加方便地根据实际情况控制开窗的大小。

3.2 主控制器程序设计

主控制器的核心是ESPDuino板,程序编程采用的是Arduino IDE开发环境,编程语言为C/C++。主控制器的程序功能是:一方面用于接收来自手机终端指令消息并控制着电动开窗器执行相应动作;另一方面把红外传感器对电动开窗器采集的数据反馈给手机。主控制器流程图如图4所示。主控制器收到手机终端发送的指令消息后进行解析,根据解析的指令消息控制电动开窗器链条的伸缩,进而控制窗户的打开、关闭动作。同时红外计数传感器对电动开窗器链条节数计数采集,并把采集的数据转换为开窗大小反馈到手机终端实时显示。

4 运行结果

打开手机网络连接,使手机连接到网络。运行手机终端控制应用程序,当点击“打开”按钮后,电动开窗器链条伸出打开窗户,同时手机终端开始接收红外传感器对电动开窗器采集的数据,并在手机终端控制界面上显示数值的累加变化。当点击“暂停”按钮后,电动开窗器停止运行工作,手机终端控制界面上的数值也停止累加,保持不变。当点击“关闭”按钮后,电动开窗器链条收回关闭窗户,手机终端控制界面上的数值不断减少,直到电动开窗器运行结束,关闭窗户,手机界面值为0%。该程序在运行中稳定、可靠和反应迅速,并且还可直观地显示出窗户的开关状态。

5 结论

本文设计的建筑用窗远程开关控制系统打破了传统开窗模式,实现了用手机远程控制建筑用窗的开关,解决了人们生活中无法远程开关窗户的问题。该系统不仅实现了窗户的远程控制,而且能在手机终端实时显示窗户的运动状态及开窗大小,使人们对窗户的控制更清楚、直观。

参考文献

[1] 孙光宇,张玲玲.Android物联网开发从入门到实践[M].北京:清华大学出版社,2015.

[2] 何国渊,廖志飞,杨太任,等.基于IAP15F2K61S2单片机的多传感器新型智能窗控制系统[J].机床与液压,2015,43(8):148-151.

[3] 王超,林百顺,冯开屏,等.物联网智能窗户系统的设计与实现[J].计算机时代,2016(7):12-15.

[4] 谷佳烨,肖慧荣,陈自波.基于GSM控制的智能窗设计[J].科技广场,2014(7):253-256.

[5] 廖常初.PLC编程及应用[M].北京:机械工业出版社,2014.

[6] 崔阳,张维华,白云峰.一种基于Arduino的智能家居控制系统[J].电子技术应用,2014,40(4):123-125.

[7] EVANS M,NOBLE J,HOCHENBAUM J.Arduino实战[M].况琪,译.北京:人民邮电出版社,2014.

[8] 李瑞奇.Android开发实战:从学习到产品[M].北京:清华大学出版社,2017.

作者信息:

杨志刚,刘继文

(大连交通大学 机械工程学院,辽宁 大连116028)

相关问答

下雨天窗户自动关闭 是人工 智能 吗?

1、实现功能不难,目前非智能方式及智能方式都可以实现,这个取决于布置方案及产品成本。2、现有市场传感器一般采用PCB薄铜栅格或者湿度感应模块,这个的采用也...

c51 单片机 编程?

南邻更可念,布破冬未赎。白毛浮绿水,红掌拨清波。窗含西岭千秋雪,门泊东吴万里船。月下飞天镜,云生结海楼。月出惊山鸟,时鸣春涧中.千山鸟飞绝,万径人...

老师们有谁知道在线等!HP850nm光模块设计,850nm光模块哪家...

基于AT89c51的智能电动窗帘设计摘要:随着人类社会的发展,人们的生活水平的提高和高科技的发展,已经影响到人们生活的方方面面,改变了人们生活习惯,...

谁知道:门窗厚度测量仪推荐哪家?

[回答]超声波测厚仪是根据超声波脉冲反射原理来进行厚度测量的,当探头发射的超声波脉冲通过被测物体到达材料分界面时,脉冲被反射回探头通过精确测量超声...

电动窗帘电路设计原理是怎样的_门窗

[回答]电动窗帘的工作原理主要是依靠一个电机来实现窗帘在滑轨上滑动,而来回的功能实现靠的就是电机的正反转。它通过一个电机来带动窗帘延着轨道来回运...

玻璃门电锁用哪种好_门窗

[回答]亲,要看你装的位置,一般门中间装的话磁力感应电锁比较好,不容易坏哦。电插锁是一种电子控制锁具,通过电流的通断驱动“锁舌”的伸缩以达到锁门和开...

氯化镁晶体结构及详解? – 960化工网问答

[1]方佩敏.新编传感器原理•应用•电路详解.第二版.北京:电子工业出版社,1999:23-68[2]王晓明,曾红.单片机教程.第一版.沈阳:东北大学出版社,2001:50-90[3]...

汽车obd 接口安装升窗器对车有影响吗?

[回答]obd升窗器会有隐患的。这种自动关窗器的缺点也比较明显,当第一扇窗在5秒钟已关闭到位的情况下,关闭控制器无法判断,仍然继续给车窗电机供电,如此一...

继电器的原理是什么?(求大神解答)谢谢?

继电器是电力电子、工控自动化、通信等行业常用的一种机械式开关,通过弱电可以控制强电,应用广泛。下面和大家分享继电器的组成部分、工作原理、使用方法以及继...

21款crv一键升窗设置方法是?

[回答]按住开关,直到车窗移动到所需位置。闭窗器的种类如下:1。时控型:需要拆开原车方向盘下的仪表护板和驾驶座门板,找一些相关的电线,包括原车车窗中控...

猜你喜欢