,
(1.西南科技大學 智能機器人創(chuàng)新實踐班,四川 綿陽 621010;2.西南科技大學 工程技術中心, 四川 綿陽 621010)
隨著經(jīng)濟社會的不斷發(fā)展,科學技術的日益進步,尤其是電子信息技術、控制技術的迅猛發(fā)展,社會信息化程度不斷提高。各類智能化設備已經(jīng)被廣泛應用于人們的日常生活、工作、以及學習的各個領域中來,對人們的生活習慣以及工作方式產(chǎn)生了重大影響。信息化社會在改變人們生活習慣和工作方式的同時,也對我們的傳統(tǒng)住宅提出了挑戰(zhàn)。智能家居系統(tǒng)的概念應運而生,并逐步進入到普通家庭之中,目前已被人們廣泛接受[1-2]。
智能家居系統(tǒng)以住宅為平臺,通過依托廣泛的高度集成自動化控制功能,旨在營造一個高效,舒適,安全,便利的居住環(huán)境。而在傳統(tǒng)住宅中,針對諸如燈光照明系統(tǒng)等一系列用電設備的控制,普遍采用傳統(tǒng)開關控制結構。傳統(tǒng)開關控制結構作為一種用電設備控制的基礎手段,其控制功能相對單一,且必須人為手動操作,頻繁操作過于繁瑣,因此在面對新一代智能家居系統(tǒng)對于大量多功能、高精度的自動化控制需求時,設計一種具有聯(lián)合信息數(shù)據(jù)監(jiān)測,控制響應功能的智能開關控制器,用以取代傳統(tǒng)開關控制結構,作為智能家居系統(tǒng)自動控制功能實現(xiàn)的重要組成部分,以解決傳統(tǒng)開關控制結構在控制過程中存在的功能單一,操作繁瑣,缺乏控制精度以及靈活性等弊端就顯得十分必要。
針對上述問題,提出了基于ARM和WIFI通信的智能開關控制器的設計與應用實現(xiàn)方法;一方面以WIFI無線通信技術為基礎,用戶可以通過使用Android智能手機或平板電腦等移動智能終端與該控制器的無線通信模塊進行WIFI熱點連接,借助設備上的客戶端軟件選擇接收查看由智能開關控制器發(fā)送來的傳感器監(jiān)測數(shù)據(jù),也可以利用該客戶端軟件實現(xiàn)對被控設備如燈光照明系統(tǒng)等家居用電設備的實時無線遙控,包括控制被控設備工作狀態(tài)開關,對被控設備設置定時開關,以及開啟智能控制模式等相關功能,其中智能控制模式通過利用環(huán)境數(shù)據(jù)監(jiān)測模塊的各個傳感器,對被控設備的運行環(huán)境進行實時監(jiān)測,使智能開關控制器能夠準確的判斷當前被控設備的運行環(huán)境狀況,進而由該控制器根據(jù)程序設定自動輸出控制信號,以驅動輸出響應模塊自動對被控設備做出相應的響應[3-4]。
除此之外另一方面使用TFT液晶顯示屏構建用戶交互模塊,將控制器及其運行環(huán)境狀況等相關信息進行實時動態(tài)顯示,內容豐富,界面友好,進一步提升了用戶體驗;
通過實驗驗證,提出的基于ARM和WIFI通信的智能開關控制器的設計與應用,實現(xiàn)了針對被控設備的智能動態(tài)控制要求,系統(tǒng)運行穩(wěn)定,達到了智能控制的目的,具有廣泛的應用前景。
本文設計提出的智能開關控制器由電源模塊、無線通信模塊、環(huán)境數(shù)據(jù)監(jiān)測模塊、核心控制模塊、用戶交互顯示模塊、輸出響應模塊以及Android移動客戶端共7部分組成,其總體設計框圖見圖1。
基于ARM的核心控制模塊是整個控制器的核心部分,負責管理整個網(wǎng)絡結構,包括對各傳感器模塊以及WIFI通信模塊的實時動態(tài)數(shù)據(jù)進行接入處理,并根據(jù)程序設定執(zhí)行相應操作。此外,還負責驅動用戶交互顯示模塊的TFT液晶顯示屏幕,向用戶直觀的顯示各個傳感器的數(shù)據(jù)信息以及該智能開關控制器與其被控設備的運行狀態(tài)信息。
Android移動客戶端軟件通過安裝在用戶所擁有的Android智能手機或平板電腦等移動智能終端設備上,使得用戶的終端設備在與該智能開關控制器的無線通信模塊進行WIFI熱點連接后,可以通過該客戶端軟件接收查看由智能開關控制器發(fā)送來的傳感器監(jiān)測數(shù)據(jù),也可以通過其選擇執(zhí)行不同的控制功能,并將相應的控制信息通過WIFI無線網(wǎng)絡發(fā)送至控制器的核心控制模塊,進而由核心控制模塊根據(jù)程序設定實現(xiàn)對被控設備即家居燈光照明系統(tǒng)等用電設備的實時無線遙控功能。
環(huán)境數(shù)據(jù)監(jiān)測模塊負責對該智能開關控制器被控設備的運行環(huán)境狀況進行監(jiān)測分析。通過各個傳感器模塊獲取被控設備所處環(huán)境的溫度、濕度、光強、以及紅外等相關信息。
輸出響應模塊作為該智能開關控制器控制功能實現(xiàn)的執(zhí)行結構,其由多路光耦隔離繼電器驅動電路構成,將智能開關控制器接入被控對象設備的供電電路中,通過施加脈沖信號觸發(fā)繼電器驅動電路,從而實現(xiàn)對被控對象諸如家居燈光照明系統(tǒng),電視,空調,電熱水器等用電設備的智能自動控制功能。
圖1 總體設計框圖
該智能開關控制器的硬件平臺采用嵌入式結構設計,其組成架構如圖2所示。
圖2 硬件平臺架構意圖
以意法半導體公司開發(fā)的基于ARM Cortex-M3架構的STM32f103ZET6芯片作為微處理器,聯(lián)合ESP8266WIFI無線通信模塊,通過與STM32f103ZET6微控芯片的USART串口通道進行連接,從而實現(xiàn)無線數(shù)據(jù)傳輸功能。采用DHT11溫、濕度傳感器模塊,HC-SR501人體紅外監(jiān)測傳感器模塊,以及YL-38光敏傳感器模塊,分別用來對該智能開關控制器被控設備運行環(huán)境的溫度、濕度、紅外、以及光強等相關信息進行監(jiān)測分析。采用TFT顯示屏幕將該控制器的相關數(shù)據(jù)信息進行顯示,方便用戶使用。采用多路帶光耦隔離的繼電器驅動電路對被控用電設備進行自動響應控制,實現(xiàn)該控制器的自動電路控制功能。
STM32f103ZET6微控芯片,是由意法半導體公司開發(fā)的一種基于ARM Cortex-M3架構的32位微處理器[5]。最高工作頻率為72 Mhz,內置512 KB的高速Flash存儲器以及64 KB的SRAM,擁有豐富的I/O端口和聯(lián)接到兩條APB總線的外設,擁有多達3個12位的ADC、以及11個定時器其中包含4個通用16位定時器和2個PWM定時器,除此之外還包含豐富的標準和先進通信接口,多達2個I2C接口、3個SPI接口、2個I2S接口、1個SDIO接口、5個USART接口、一個USB接口和一個CAN接口。
電源模塊采用Mini-USB接口[6],經(jīng)由外部的電源適配器與其相連接,從而實現(xiàn)電源的穩(wěn)定供給。Mini-USB接口具有顯著的防誤差性能,其體積相比標準USB接口更小巧,目前已被廣泛應用于各類移動設備以及相關電子產(chǎn)品中。除此之外還采用了ASM1117正向低壓降穩(wěn)壓器,其具有固定輸出和可調輸出兩個版本,固定輸出版本有1.5 V、1.8 V、2.5 V、2.85 V、3.0 V、3.3 V、5.0 V等多個型號,且具有較高的精度。ASM1117內部還集成了過熱保護和限流電路,本電源模塊采用該穩(wěn)壓器實現(xiàn)了3.3 V的電壓輸出。
WIFI模塊采用ESP8266芯片實現(xiàn)無線數(shù)據(jù)傳輸,ESP8266是一款由樂鑫ESpressif設計的超低功耗的串口WIFI透傳模塊,擁有業(yè)內極富競爭力的封裝尺寸和超低能耗技術,專為移動設備和物聯(lián)網(wǎng)應用設計,可廣泛應用于智能電網(wǎng)、智能交通、智能家具、手持設備、工業(yè)控制等領域[7]。ESP8266芯片共有3種工作模式(分別為1.AP模式2.TCP模式3.AP&TCP模式)。本智能開關控制器的無線通信功能通過使用模式1,即將ESP8266芯片配置為AP熱點來實現(xiàn)。將整個硬件平臺通過該模塊與Android客戶端實現(xiàn)直接互聯(lián),當Android客戶端連接至該WIFI熱點后,便可以通過APP來實現(xiàn)對該智能開關控制器的相應操作。WIFI模塊硬件電路如圖3所示
圖3 WIFI模塊硬件電路
溫、濕度傳感器選用DHT11模塊,該傳感器是一款含有已校準數(shù)字信號輸出的溫濕度復合傳感器。傳感器本身包括一個電阻式感濕元件和一個NTC測溫元件,并與一個高性能MCU相連接,每個DHT11模塊均在極為精確的濕度校驗室中進行過準確度校準,校準系數(shù)以及相關參數(shù)存儲在內置的OTP內存中[8]。在實際運行時,傳感器會在檢測信號的處理過程中要調用這些校準系數(shù),因此該傳感器具有響應速度塊,抗干擾能力強等優(yōu)點,具有良好的可靠穩(wěn)定性。
由于需要分析環(huán)境的光線強度等級,進而對照明系統(tǒng)等用電設備進行自適應控制。故采用YL-38光敏電阻傳感器模塊,經(jīng)由STM32f103ZET6微控芯片內置的高精度ADC對傳感器測得光線強度電信號進行采樣,并將采集到的電信號進行A/D模數(shù)轉換,再根據(jù)程序設定的光強等級閾值,將轉換后得到的光線強度數(shù)字信號與閾值進行比較,從而能夠準確的得到環(huán)境的光線強度等級。
采用HC-SR501熱釋電人體紅外線感應模塊,由于人體自身發(fā)射出的紅外線其波長范圍在9~10 μm之間,而熱釋電探測元件的探測波長范圍為0.2~20 μm,故需經(jīng)由紅外濾光片對多余光譜進行濾光,使得最終傳感器的探測波長范圍被收縮至7~10 μm[9]。因此可以對人體紅外線進行實時監(jiān)測并將其轉換成電信號輸出,從而實現(xiàn)了對人體活動進行探測的功能。
采用3.2寸TFT型LCD液晶顯示屏幕。這一類材質的顯示屏幕具有低功耗、高響應度、高亮度、高對比度等優(yōu)點,因而被廣泛應用于各類主流電子顯示設備上[10]。該屏幕的顯示分辨率為320×240,內置ILI9341顯示控制芯片以及TSC2046觸摸控制芯片,支持16位并行FSMC總線接口驅動。通過借助該液晶顯示屏幕來構建用戶交互顯示終端,在增強用戶的直觀感受,方便用戶使用的同時,進一步提升了用戶體驗。
由于需要根據(jù)STM32f103ZET6核心控制芯片發(fā)出的觸發(fā)信號,對被控用電設備進行自動響應控制,且觸發(fā)信號電壓值最高為5 V,而被控用電設備的電路電壓為市電220 V,故設計采用多路帶光耦隔離的繼電器驅動電路來實現(xiàn)此功能[11]。其硬件電路如圖4所示。
圖4 繼電器模塊硬件電路圖
由圖可知,由于采用了光耦隔離單元,當高電平控制信號從信號輸入端輸入后,光電耦合器內部的發(fā)光二極體就會因通過電流而發(fā)光,光敏元件在受到光照后產(chǎn)生電流,促使光敏三極管導通。從而引發(fā)前一級電路進行導通。電磁繼電器內部線圈流過電流,使得其可以驅動銜鐵的動 靜觸點進行吸合,從而實現(xiàn)對被控用電設備的自動響應控制功能。由于光電耦合器的輸入回路與輸出回路之間沒有電氣聯(lián)系,也沒有共地,故其可起到很好的安全保障作用,即使當外部設備出現(xiàn)故障,甚至輸入信號線短接時,也不會損壞儀表。
本文設計提出的智能開關控制器的軟件系統(tǒng)是基于ARM嵌入式平臺開發(fā)而來的,其配套移動客戶端軟件基于Android智能操作系統(tǒng)進行開發(fā)。
該智能開關控制器的主要應用功能有:
1) 自動電路控制,作為智能開關控制器的核心功能,通過STM32f103ZET6核心控制芯片對繼電器驅動電路施加觸發(fā)信號,再由驅動電路做出響應以此實現(xiàn)對被控設備的自動電路控制功能。
2) 智能無線控制,借助WIFI無線通信技術實現(xiàn)了該智能開關控制器的硬件平臺與智能手機或平板電腦等智能移動終端的互通互聯(lián),用戶僅需要通過移動客戶端軟件即可對該智能開關控制器進行相關操作;
3) 定時開關,借助STM32f103ZET6核心控制芯片內置的高精度RTC時鐘,控制器通過調用RTC中斷服務程序獲取準確的系統(tǒng)時間,用戶可通過移動客戶端軟件設置被控設備的開啟時間以及關閉時間。
4)智能控制模式,基于自動電路控制功能,通過STM32f103ZET6核心控制芯片對環(huán)境數(shù)據(jù)監(jiān)測模塊各個傳感器的數(shù)據(jù)進行采集分析,判斷當前情景,并根據(jù)程序自動對被控設備進行控制。
當該智能開關控制器系統(tǒng)上電后,首先由核心控制芯片根據(jù)系統(tǒng)程序,對各硬件模塊依次進行功能初始化,此時用戶交互顯示模塊的TFT液晶顯示屏會顯示用戶歡迎界面,當初始化配置完成后顯示屏上會顯示運行界面。用戶可以在初始化配置完成后,通過Android智能手機等移動終端,與該智能開關控制器的WIFI熱點信號進行連接,使用配套的客戶端軟件對智能開關控制器的功能以及運行模式進行選擇,從而實現(xiàn)對被控設備的智能自動控制功能。智能開關控制器主程序流程如圖5所示。
WIFI無線通信,是該智能開關控制器的核心功能即智能無線控制功能實現(xiàn)的技術基礎。在本文所提出的硬件平臺設計中,WIFI無線通信模塊采用的是ESP8266芯片。ESP8266屬于串口型WIFI,采用TCP/IP協(xié)議進行無線數(shù)據(jù)傳輸,其共有3種工作模式(分別為1.AP模式 2.TCP模式 3.AP&TCP模式)。本智能開關控制器的無線通信功能通過使用模式1,即將ESP8266芯片配置為AP熱點來實現(xiàn)。其配置核心代碼如下:
//將WIFI模塊配置為AP模式
ESP8266_Net_Mode_Choose (AP );
//配置AP模式下WIFI模塊的IP地址
ESP8266_CIPAP (macUser_ESP8266_TcpServer_IP );
//建立WIFI熱點(名稱、密鑰、加密方式)
ESP8266_BuildAP (macUser_ESP8266_BulitApSsid,macUser_ESP8266_BulitApPwd,macUser_ESP8266_BulitApEcn ) ;
//使能WIFI熱點可以由多個設備連接
ESP8266_Enable_MultipleId (ENABLE );
//使能WIFI熱點的服務器模式,配置網(wǎng)絡端口號、超時時間
ESP8266_StartOrShutServer (ENABLE,macUser_ESP8266_TcpServer_Port,macUser_ESP8266_TcpServer_OverTime );
……
通過配置熱點名稱、加密方式、密鑰、以及開放的IP地址和網(wǎng)絡端口號,完成WIFI模塊的初始化。STM32f103ZET6核心控制芯片將可通過對與WIFI模塊相連接的串口通道進行循環(huán)監(jiān)聽,讀取接收到由移動客戶終端設備發(fā)送過來的數(shù)據(jù)內容,并根據(jù)接收到的不同命令語句,選擇執(zhí)行相應的操作。除此之外,各個傳感器所測得相關數(shù)據(jù)參數(shù),以及該智能開關控制器與被控設備的運行狀態(tài)等相關信息也可以通過對應的串口通道由WIFI熱點發(fā)送至移動客戶端,并在客戶端軟件上進行實時顯示。
圖5 智能開關控制器主程序流程圖
基于本文設計提出的智能開關控制器其所具有的自動電路控制功能,在實驗中對于該控制器實際應用過程中的智能情景拓展方面,設計提出了針對家居燈光照明系統(tǒng)的智能控制模式。該智能控制模式借助光敏傳感器、人體紅外監(jiān)測傳感器等構成的環(huán)境數(shù)據(jù)監(jiān)測模塊,對被控設備當前所處環(huán)境狀況進行數(shù)據(jù)采集??刂破魍ㄟ^分析采集到的環(huán)境數(shù)據(jù),針對不同的環(huán)境光線強度,自動控制照明系統(tǒng)的燈組工作數(shù)量,實現(xiàn)燈光亮度的自適應功能。除此之外,當環(huán)境光線較為昏暗時,若人體紅外監(jiān)測傳感器監(jiān)測到有用戶進入到室內,并在室內活動時,燈光將自動亮起為用戶提供照明,若監(jiān)測到用戶離開室內,室內無人活動時,燈光將自動熄滅。
用戶可通過使用Android客戶移動端軟件,點擊相應控件來選擇開啟或關閉該模式。智能開關控制器通過串口通道,讀取ESP8266 WIFI模塊上接收到的字符串指令,與程序預先設定的指令”CMD_AUTO_”比較是否一致。若一致則進一步檢測該條指令的后綴標志位是否為1或0。若為1則使能定時器TIM5,并執(zhí)行對應中斷服務程序,開啟該智能控制模式,反之則失能相應定時器,關閉該智能控制模式。
在對應的中斷服務程序中,通過調用光敏傳感器模塊子程序,獲取光線強度模擬量,并將模擬量值送入ADC進行模數(shù)轉換,轉換后得到的光線強度AD值其有效范圍為0~100,對應不同的光強等級。再將其與45進行比較,若環(huán)境光線昏暗,其光強AD值小于45,則使能人體紅外監(jiān)測傳感器模塊進行感應觸發(fā),若環(huán)境光線充足,其光強AD值大于45,則失能人體紅外監(jiān)測傳感器模塊并不再進行感應觸發(fā)。通過對觸發(fā)信號進行輸入捕獲,以此來驅動輸出響應電路對燈光照明系統(tǒng)進行自動控制。該智能控制模式程序流程圖以及中斷服務程序流程分別見圖6和圖7。
圖6 智能控制模式程序流程圖
圖7 TIM5中斷服務流程圖
根據(jù)本文提出的方案,成功設計出了一種基于ARM和WIFI通信的智能開關控制器,并在實驗中將其應用于家居燈光照明系統(tǒng)中。
將該智能開關控制器與照明系統(tǒng)電路連接配置好以后,用戶便可以通過Android智能手機與該智能開關控制器的WIFI熱點信號進行連接。在輸入正確的密鑰,連接成功后,用戶便可以通過手機上的移動客戶端軟件對智能開關控制器的被控設備進行遠程無線遙控,包括控制照明系統(tǒng)燈組的開關,控制照明系統(tǒng)燈光亮度,設定定時開關,以及開啟智能控制模式等功能。除此之外用戶還可以在線下的用戶交互顯示模塊上通過TFT液晶顯示屏上顯示的數(shù)據(jù)內容,了解到當前智能開關控制器所在室內的環(huán)境狀況信息,包括溫度、濕度、環(huán)境光線強度、以及系統(tǒng)實時時間(由STM32f103ZET6微控芯片內置的RTC時鐘實時授時,保證計時精度以及準確度)。除此之外還有智能開關控制器當前開放的WIFI熱點網(wǎng)絡名稱,密鑰,服務器端開放的IP地址,以及網(wǎng)絡端口號等相關信息,方便用戶使用,進一步提高了用戶體驗度。其應用效果如圖8所示。
圖8 智能開關控制器應用效果圖
實驗結果表明,根據(jù)本文提出的方案所設計的智能開關控制器實際運行狀態(tài)穩(wěn)定,系統(tǒng)響應迅速。借助WIFI熱點無線網(wǎng)絡,該智能開關控制器的實測最大有效控制距離可以達到50 m以內。在保證智能開關控制器與客戶移動終端之間的無線網(wǎng)絡穩(wěn)定連接的前提下,該智能開關控制器能夠準確的接收由客戶移動終端發(fā)出的相關控制命令,并能夠根據(jù)程序設定,針對不同的命令語句,實現(xiàn)實驗中對于家居燈光照明系統(tǒng)的相關控制功能。
本文提出了一種基于ARM和WIFI通信的智能開關控制器的設計與應用實現(xiàn)方法,可以實現(xiàn)對家居燈光照明系統(tǒng)等用電設備的智能自動控制功能,解決了傳統(tǒng)開關控制結構在控制過程中存在的功能單一,操作繁瑣,缺乏控制精度以及靈活性等弊端。該智能開關控制器以WIFI無線通信技術為基礎,用戶可以通過Android客戶移動端對智能開關控制器的各個功能進行實時無線控制。實驗結果表明,該智能開關控制器具有結構簡單、操作簡便、響應迅速、控制功能多樣化等優(yōu)點,充分滿足了新一代智能家居系統(tǒng)對于大量多功能、高精度的自動化控制需求,可以廣泛的應用于各類智能自動化控制結構中,尤其是智能家居系統(tǒng)控制結構單元,在下一步研究中,將以該智能開關控制器為基礎,拓展其在智能家居控制等相關方向上的智能化應用。