文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.174664
中文引用格式: 楊志剛,,劉繼文. 基于手機的建筑用窗遠程開關(guān)控制系統(tǒng)的研究[J].電子技術(shù)應(yīng)用,2018,,44(5):82-84,,88.
英文引用格式: Yang Zhigang,Liu Jiwen. Research on remote control system of building windows based on mobile phone[J]. App-
lication of Electronic Technique,,2018,,44(5):82-84,88.
0 引言
隨著中國社會的快速繁榮發(fā)展,,人們的住房水平要求隨著生活水平的不斷提高也在不斷上升,??茖W(xué)技術(shù)和互聯(lián)網(wǎng)技術(shù)的快速發(fā)展又極大促進了我國建筑業(yè)朝著智能化方向的發(fā)展[1]。窗戶是建筑必不可缺少的構(gòu)成部分,,與人們?nèi)粘I罨顒酉⑾⑾嚓P(guān)[2],。目前,大多數(shù)建筑的窗戶還是以手動方式控制開關(guān),,這種傳統(tǒng)的手動開關(guān)窗戶日漸無法滿足現(xiàn)代人們的日常需求[3],,如突遇雷雨大風(fēng)天氣,,而家中又恰好沒人,無法及時關(guān)閉門窗[4],;早晨匆匆上班忘記開窗更新室內(nèi)空氣等,。因此人們迫切需要一種可以遠程控制的窗戶來滿足生活中的需求。
1 系統(tǒng)總體設(shè)計
1.1 系統(tǒng)總體構(gòu)架
系統(tǒng)主要由3部分組成:手機終端,、主控制器和電動開窗器,。手機終端用于遠程控制窗戶和顯示窗戶實時運動狀態(tài),提供直觀的人機交互界面,;主控制器用來接收來自手機的指令信息,、控制電動開窗器開關(guān)窗戶及把窗戶運動狀態(tài)信息反饋到手機上,因此是整個系統(tǒng)的核心,;電動開窗器直接與窗戶連接,,控制著窗戶的開關(guān)。系統(tǒng)總體結(jié)構(gòu)圖如圖1所示,。手機終端首先把指令消息發(fā)送到服務(wù)器上,,服務(wù)器再把指令消息經(jīng)互聯(lián)網(wǎng)發(fā)送到家里路由器,由路由器傳遞給主控制器,,主控制器根據(jù)指令消息完成相應(yīng)控制動作,。
1.2 主控制器設(shè)計方案
窗戶要實現(xiàn)遠程控制需要一個用于控制窗戶開關(guān)的控制器。該控制器起著控制窗戶和遠程連接的作用,,為系統(tǒng)的核心,。3種常用于控制窗戶的控制器如下。
(1)單片機控制:單片機是一種集成電路芯片,,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器(CPU),、隨機存儲器(RAM)、只讀存儲器(ROM),、多種I/O口和中斷系統(tǒng),、定時器/計數(shù)器等功能集成到一塊硅片上構(gòu)成的一個小而完善的微型計算機系統(tǒng),在工業(yè)控制領(lǐng)域廣泛應(yīng)用,。其優(yōu)點:經(jīng)濟實惠,,成本相對較低;缺點:不易擴展,,對環(huán)境依賴性強,,開發(fā)周期長。用單片機制作的主控板,,由于受制板工藝,、布局結(jié)構(gòu)、器件質(zhì)量等因素的影響導(dǎo)致抗干擾能力差,故障率高,。
(2)PLC控制:PLC(可編程邏輯控制器)是專門為在工業(yè)環(huán)境下應(yīng)用而設(shè)計的數(shù)字運算操作電子系統(tǒng),。它采用一種可編程的存儲器,在其內(nèi)部存儲執(zhí)行邏輯運算,、順序控制,、定時、計數(shù)和算術(shù)運算等操作的指令,,通過數(shù)字式或模擬式的輸入輸出來控制各種類型的機械設(shè)備或生產(chǎn)過程[5],。其優(yōu)點:抗干擾能力強,故障率低,,易于設(shè)備的擴展,,便于維護,開發(fā)周期短,;缺點:成本相對單片機高,。
(3)Arduino控制:Arduino是一款便捷靈活、方便上手的開源電子原型平臺,,由一個歐洲開發(fā)團隊于2005年冬季開發(fā),。Arduino在開發(fā)之初就明確了其應(yīng)用環(huán)境,設(shè)計了開源開放的平臺[6],。其擁有豐富的接口,、簡便的編程環(huán)境、極大的自由度,、標準化的接口模式,、極高的可擴展性,是目前較為流行的電子互動平臺[7],。由于該板為開源硬件,,因此市面上出現(xiàn)了許多與之功能匹配的擴展板和兼容板方便選擇使用。本系統(tǒng)選用了一種Arduino兼容板——ESPDuino板,。該板既與Arduino相兼容而又在其基礎(chǔ)上增加了連接網(wǎng)絡(luò)功能,,具有使用更方便、價格便宜的特點,。
2 系統(tǒng)硬件設(shè)計與選用
系統(tǒng)的硬件采用模塊化設(shè)計,,本系統(tǒng)的硬件主要由手機終端、主控制器,、電動開窗器和窗戶組成,。
2.1 手機終端選用
手機終端選用Android系統(tǒng)。Android手機現(xiàn)在已經(jīng)成為市場占有率最高的移動操作系統(tǒng),,具有高度的開源性,,拓展性非常高,這點使得其他手機系統(tǒng)不能與其相比[8],。相比于其他系統(tǒng),,Android系統(tǒng)開發(fā)更容易,幾乎沒有什么門檻,,因此,,可以很快地開發(fā)出自己的程序。
2.2 主控制器
主控制器是整個硬件系統(tǒng)的核心,,一方面負責(zé)接收來自手機終端指令消息并控制開窗器來控制窗戶的開關(guān),;另一方面把窗戶的運動狀態(tài)反饋給手機。主控制器電路圖如圖2所示,。主控制器主要由主控板,、紅外對射式傳感器和無線發(fā)射模塊組成。
2.2.1 主控板
主控板選用的是四博智聯(lián)科技有限公司生產(chǎn)的ESPDuino板,。該板是該公司基于ESP8266-13而開發(fā)的,,與Arduino UNO相兼容。該板采用ESP-WROOM-02貼片式WiFi模塊,,相對于傳統(tǒng)的Arduino板,,不僅省去了外接WiFi模塊布線的麻煩和費用,而且還使得系統(tǒng)運行更加可靠,、體積更小,,在與網(wǎng)絡(luò)連接使用中具有廣泛的應(yīng)用。
2.2.2 紅外傳感器的選用
本系統(tǒng)選用分離式紅外對射式計數(shù)傳感器,。該傳感器為NPN常閉型,,即有遮擋時輸出低電平信號,無遮擋時輸出高電平信號,。發(fā)射管工作電壓為5 V,,工作電流為40 mA,接收管工作電壓為3~5.5 V,,工作電流為100 mA,,可方便與開發(fā)板連接。其2~20 cm的有效檢測距離,、2 ms的快速反應(yīng)時間,,使其在系統(tǒng)中具有良好的應(yīng)用。
2.2.3 無線發(fā)射模塊的選用
無線模塊具有體積小,、傳輸距離遠等優(yōu)點,,廣泛應(yīng)用在生活中各個領(lǐng)域。本系統(tǒng)選用的無線模塊工作頻率為433 MHz,。433 MHz無線收發(fā)模塊為短距離無線通信模塊,,由于該模塊的成本低、睡眠模式約為1 μA的電流消耗、小尺寸封裝和較少的外接引腳,,使得其在物聯(lián)網(wǎng)無線通信中被廣泛使用,。該模塊還具有靈敏度高、繞射性能好,、功耗低,、穿透力強等特點。
2.3 電動開窗器的選用
電動開窗器選用的是上海鍇蔻電子科技有限公司的KK-LT-300電動鏈條開窗器,。其工作電壓為直流24 V,,工作電流為1 A,推拉力為400 N,,行程距離為400 mm,,速度為7 mm/s。其具有超負荷過載保護設(shè)計,;開關(guān)窗時噪音低,,雙層金屬鏈片設(shè)計,運行時更穩(wěn)定,、順暢,。開窗器直接與窗戶連接,通過鏈條的伸縮來控制窗戶的開關(guān),。
3 系統(tǒng)程序設(shè)計
從手機終端發(fā)出控制指令到窗戶執(zhí)行指令,,是依靠系統(tǒng)程序來完成的。系統(tǒng)程序是整個系統(tǒng)的核心,,其程序流程圖如圖3所示,。手機APP采用消息隊列遙測傳輸(Message Queuing Telemetry Transport,MQTT)傳輸協(xié)議發(fā)送指令消息到服務(wù)器上,,服務(wù)器打包消息通過互聯(lián)網(wǎng)訪問到家里路由器,,路由器經(jīng)WiFi方式把消息傳遞給主控制器,主控制器解析指令消息后經(jīng)無線發(fā)射模塊發(fā)送到電動開窗器的接收模塊,,控制電動開窗器的運行進而控制窗戶的開關(guān),。同時紅外計數(shù)傳感器不斷對電動開窗器鏈條節(jié)數(shù)計數(shù)采集并依次發(fā)送到服務(wù)器上,服務(wù)器收到數(shù)據(jù)再一一推送給手機終端作為反饋信息,。該系統(tǒng)程序主要包括兩部分:手機APP軟件程序設(shè)計和控制器的程序設(shè)計,。
3.1 手機APP軟件程序設(shè)計
手機APP的設(shè)計采用的是Java編程語言,開發(fā)環(huán)境為Android Studio,。Android Studio是谷歌推出的新的Android手機集成開發(fā)工具,,用于Android手機應(yīng)用程序的開發(fā)和調(diào)試。手機APP的設(shè)計一方面用于發(fā)送指令消息,;另一方面用來接收反饋信息并更新,。手機APP程序發(fā)送指令消息和接收反饋消息采用的是MQTT傳輸協(xié)議,,其工作過程如下。當點擊“打開”按鈕時,,指令消息以MQTT協(xié)議的方式先發(fā)送到服務(wù)器上,,服務(wù)器把指令消息經(jīng)互聯(lián)網(wǎng)發(fā)送到家里路由器,指令消息經(jīng)路由器推送到主控制器上,,主控制器依據(jù)指令消息控制電動開窗器運行、鏈條伸出,,進而打開窗戶,。同時,紅外傳感器不斷采集數(shù)據(jù),,并經(jīng)原鏈路反饋給手機終端,,手機終端數(shù)據(jù)以1%的速度遞增,直到100%或收到“暫?!敝噶钕⑼V构ぷ?。反之,當點擊“關(guān)閉”按鈕時,,手機終端數(shù)據(jù)以1%的速度遞減,,直到0%或收到“暫停”指令消息停止工作,。因此,,該手機終端控制程序的設(shè)計使得人們對開關(guān)窗運行狀態(tài)更加清楚、直觀,,而且也使得人們更加方便地根據(jù)實際情況控制開窗的大小,。
3.2 主控制器程序設(shè)計
主控制器的核心是ESPDuino板,程序編程采用的是Arduino IDE開發(fā)環(huán)境,,編程語言為C/C++,。主控制器的程序功能是:一方面用于接收來自手機終端指令消息并控制著電動開窗器執(zhí)行相應(yīng)動作;另一方面把紅外傳感器對電動開窗器采集的數(shù)據(jù)反饋給手機,。主控制器流程圖如圖4所示,。主控制器收到手機終端發(fā)送的指令消息后進行解析,根據(jù)解析的指令消息控制電動開窗器鏈條的伸縮,,進而控制窗戶的打開,、關(guān)閉動作。同時紅外計數(shù)傳感器對電動開窗器鏈條節(jié)數(shù)計數(shù)采集,,并把采集的數(shù)據(jù)轉(zhuǎn)換為開窗大小反饋到手機終端實時顯示,。
4 運行結(jié)果
打開手機網(wǎng)絡(luò)連接,使手機連接到網(wǎng)絡(luò),。運行手機終端控制應(yīng)用程序,,當點擊“打開”按鈕后,,電動開窗器鏈條伸出打開窗戶,同時手機終端開始接收紅外傳感器對電動開窗器采集的數(shù)據(jù),,并在手機終端控制界面上顯示數(shù)值的累加變化,。當點擊“暫停”按鈕后,,電動開窗器停止運行工作,,手機終端控制界面上的數(shù)值也停止累加,保持不變,。當點擊“關(guān)閉”按鈕后,,電動開窗器鏈條收回關(guān)閉窗戶,手機終端控制界面上的數(shù)值不斷減少,,直到電動開窗器運行結(jié)束,,關(guān)閉窗戶,手機界面值為0%,。該程序在運行中穩(wěn)定,、可靠和反應(yīng)迅速,并且還可直觀地顯示出窗戶的開關(guān)狀態(tài),。
5 結(jié)論
本文設(shè)計的建筑用窗遠程開關(guān)控制系統(tǒng)打破了傳統(tǒng)開窗模式,,實現(xiàn)了用手機遠程控制建筑用窗的開關(guān),解決了人們生活中無法遠程開關(guān)窗戶的問題,。該系統(tǒng)不僅實現(xiàn)了窗戶的遠程控制,,而且能在手機終端實時顯示窗戶的運動狀態(tài)及開窗大小,使人們對窗戶的控制更清楚,、直觀,。
參考文獻
[1] 孫光宇,張玲玲.Android物聯(lián)網(wǎng)開發(fā)從入門到實踐[M].北京:清華大學(xué)出版社,,2015.
[2] 何國淵,,廖志飛,楊太任,,等.基于IAP15F2K61S2單片機的多傳感器新型智能窗控制系統(tǒng)[J].機床與液壓,,2015,43(8):148-151.
[3] 王超,,林百順,,馮開屏,等.物聯(lián)網(wǎng)智能窗戶系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機時代,,2016(7):12-15.
[4] 谷佳燁,,肖慧榮,陳自波.基于GSM控制的智能窗設(shè)計[J].科技廣場,,2014(7):253-256.
[5] 廖常初.PLC編程及應(yīng)用[M].北京:機械工業(yè)出版社,,2014.
[6] 崔陽,,張維華,白云峰.一種基于Arduino的智能家居控制系統(tǒng)[J].電子技術(shù)應(yīng)用,,2014,,40(4):123-125.
[7] EVANS M,NOBLE J,,HOCHENBAUM J.Arduino實戰(zhàn)[M].況琪,,譯.北京:人民郵電出版社,2014.
[8] 李瑞奇.Android開發(fā)實戰(zhàn):從學(xué)習(xí)到產(chǎn)品[M].北京:清華大學(xué)出版社,,2017.
作者信息:
楊志剛,,劉繼文
(大連交通大學(xué) 機械工程學(xué)院,遼寧 大連116028)