黃 鑫,林 偉
(福州大學 物理與信息工程學院,福建 福州 350000)
基于機智云的智能晾衣控制系統
黃 鑫,林 偉
(福州大學 物理與信息工程學院,福建 福州 350000)
以Android 手機為人機交互終端,以STMicroelectronics的STM32F103C8T6為核心控制終端,基于機智云平臺,設計了一套用戶通過互聯網就能有效地對家中晾衣架進行操作的嵌入式智能控制系統,避免人不在家時,衣物被淋濕的問題。該系統具備手動、自動兩種控制模式實現對晾衣架的合理控制,并且,一旦控制端與服務器失去連接,將自動切換至自動模式工作。控制端采用FreeRTOS實時操作系統,在實時性方面表現良好,同時具有高穩定性,能穩定地與機智云服務器進行通信。
嵌入式;FreeRTOS;機智云;STM32
晾曬衣物是日常生活的一部分,目前,市面上有多種多樣的晾衣架,包括手動和電動等。但大部分的電動“智能”晾衣,還依然需要用戶站在旁邊,按下按鈕進行操作,對用戶而言僅僅只是省力[1]。因此,如何通過Internet,實現智能控制和遠程控制具有現實的意義[2]。機智云是面向開發者的一個全自動智能硬件開發平臺(PaaS)[3],本文依托于該平臺,設計了一套通過手機APP,對家中的晾衣架進行遠程控制的系統。
智能晾衣控制系統以STM32F103C8T6單片機為核心控制器,通過光強傳感器、雨滴傳感器、溫度傳感器、濕度傳感器等采集環境數據,進行分析處理后,再通過PWM方式控制電機的運行狀態來實現將晾衣架伸出陽臺,或者收回陽臺。同時將當前環境數據及晾衣架狀態通過ESP8266 WiFi模塊上傳至機智云服務器,用戶端通過APP可以實時獲取到該狀態,并且用戶可在自動控制與手動控制間任意地進行切換,實現對整個系統的有效控制。圖1為智能晾衣控制系統的原理框圖。

圖1 系統結構框圖
2.1主控制器模塊
智能晾衣控制系統的主控制器采用STMicroelectronics公司生產的cotex-M3系列的STM32F103C8T6微控制器。其擁有高達20 KB的SRAM及64 KB的閃存程序存儲器,完全能夠滿足本系統的控制要求;其具有低功耗的特性,工作電壓采用3.3 V,能有效地驅動絕大部分現有模塊器件,適合嵌入式控制端;具有豐富的GPIO口及多種常用外設,如:UART (Universal Asynchronous Receiver/Transmitter, 通用異步收發傳輸器)、SPI(Serial Peripheral Interface,串行外設接口)、I2C(Inter-Integrated Circuit,串行總線)、定時器、AD、DA等,能與各類傳感器進行良好的交互。
微控制器的時鐘,由8 MHz的晶振組成的震蕩電路向微控制器輸入,STM32F103C8T6再通過PLL(鎖相環)倍頻至72 MHz作為系統時鐘,并通過分頻等為外設提供不同的時鐘。
2.2環境數據采集模塊
智能控制終端的溫濕度采集采用DHT11溫濕度傳感器模塊。電阻式感濕元件與NTC測溫元件很好地被集成進了該溫濕度傳感器中,并由內嵌的一個微控制器對感濕元件與測溫元件采集到的數據進行解析。DHT11濕度精度為±5%RH,溫度為±2℃,能夠將檢測到的環境溫濕度,通過其DATA數據引腳,以數字形式向外輸出。在與STM32F103C8T6微控制器的硬件連接中,需要將溫濕度傳感器的DATA引腳通過5 kΩ的上拉電阻進行上拉,以提高驅動力。如圖2。

圖2 溫度傳感器連接
光強數據由TSL2560傳感器獲取。作為性能優良的第二代周圍環境光強度傳感器,能夠為晾衣控制系統采集到足夠精度的環境光強數據。其內部結構框圖如圖3所示。通道0和通道1各連接著一個光敏二極管,其中通道0的光敏二極管對可見光和紅外線都能靈敏地感知到,而通道1則僅僅能對紅外線靈敏地感知到。流過光敏二極管的電流經過積分式A/D轉換器的積分,被轉化成了數字量,并且,轉換結束后其結果被存入相應的寄存器中。整個積分、轉換過程完成后,A/D積分轉換器將重復進行下一轉換過程。STM32F103C8T6可通過I2C總線協議對其寄存器進行訪問,從而獲取光強強度。

圖3 TSL2560內部結構圖
雨滴采集部分由雨滴傳感器獲取,其AO模擬量輸出口輸出雨滴收集板上的雨滴量對應的模擬值,將其AO口與STM32F103C8T6的AD的輸入引腳相連接,通過AD轉換后的數字量,即可獲取到雨滴數據。
2.3電機驅動電路
STM32F103C8T6采用脈沖寬度調制(Pulse Width Modulation, PWM),對直流電機進行控制。PWM控制方式相比于模擬電流控制,具有功耗低、抗噪能力強等特點。PWM信號由STM32F103C8T6的GPIOA0引腳輸出,輸入到電機的正極,微控制器的GPIOA1引腳與電機的負極連接,控制電機的正轉及反轉。當GPIOA1引腳向外輸出低電平時,控制器產生的PWM信號使電機正向運轉,反之,GPIOA1引腳輸出高電平時,電機反向運轉,從而達到控制晾衣架伸出與收回的功能。
2.4WiFi通信電路
通信模塊采用的是由樂鑫公司開發的ESP8266無線WiFi模塊,該模塊高度集成了射頻 balun、天線開關、過濾器、低噪放大器、功率放大器和電源管理模塊,同時內嵌了32位的 Tensilica L106單片機,能夠運行在最高可達160 MHz的時鐘下,具有16 位 RSIC和極低的運行功耗。能夠使用實時操作系統,并且只有20% 的 MIPS被它的WiFi 協議棧所使用,用戶可對剩余的80%進行開發與編程。其還能夠通過配置寄存器實現3種不同的運行模式:深度睡眠模式、睡眠模式和激活模式,使得能對其功耗更好地進行控制。本控制系統通過STM32F103C8T6的UART1與ESP8266模塊進行數據交互,實現數據由控制端上傳至機智云平臺的服務器,并從機智云平臺服務器獲取相應的控制信息。
3.1控制程序設計

圖4 系統流程圖
控制程序將采用FreeRTOS實時操作系統,該系統是一個輕量級的、可搶占的實時操作系統,提供了任務管理、互斥鎖、信號量、消息隊列等功能,任務由系統輪詢進行調度,分別具有就緒態、運行態、掛起狀態等。每個任務都具有優先級,當系統調度時,已經處于就緒態的高優先級的任務會優先被系統調用執行,從而保證了緊急任務的實時性。本系統的流程框圖如圖4。
當控制板開機運行時,首先執行FreeRTOS實時操作系統的初時化,緊接著初始化各個外設,然后將系統運行的任務創建出來,最終執行任務,此時,FreeRTOS實時操作系統會根據設定的參數,對任務進行相應的調度執行。其中,通信協議處理任務為最高優先級,它負責處理從機智云服務器端接收到的請求,包括心跳、控制指令、系統狀態查詢、重啟MCU、在線升級等。
對于外設的控制,需要根據其datasheet來編寫相應的驅動實現對其正確的訪問控制[4]。
對于對時序要求較高的模塊(如DHT11溫濕度傳感器模塊)進行控制時,本控制系統在操作該類前,讓FreeRTOS進入臨界量狀態(關閉所有中斷),以保證時序的準確性。執行完成后,需要退出臨界量狀態,使系統恢復至原狀態,才能實時響應外界中斷。
3.2機智云平臺設置
機智云平臺提供了面向控制端及Android手機APP的應用程序編程接口(Application Programming Interface,API),開發者能夠很輕松地進入機智云平臺的開發者中心,添加本控制系統的外設的設備節點,平臺則會自動生成相應的通信協議,按照此通信協議,即可與機智云平臺進行數據交互,從而達到通過Internet即可在遠程對本晾衣系統進行方便的控制。圖5是在機智云平臺后臺獲取到的設備運行數據情況。

圖5 服務器后臺數據
3.3手機APP程序設計
手機APP端采用機智云平臺提供的SDK包進行二次開發,開發者只需對Active進行修改[5],即可為用戶提供友好的界面,提高用戶體驗。在需要提供額外后臺功能時,可對后臺進行改動。圖6為本系統開發的APP界面。humi 后面的數值表示控制板上傳的環境濕度,temperature 后面的數值為環境溫度,light為光強,三者都為只讀狀態,由控制板上傳數據。motor開關為晾衣控制開關,當處于開啟狀態時,晾衣架將伸出,關閉時,晾衣架將在電機控制下縮回。is_automatic 為自動手動切換按鈕,開啟時,控制
板將自動根據環境數據進行判別,決定是否晾衣,關閉時,為手動模式,可由用戶進行控制。

圖6 APP界面圖
本晾衣控制系統依托機智云平臺,通過Android手機APP與用戶交互,以STM32F103C8T6為控制板主控芯片,實現了通過Internet網絡對家中的晾衣架控制系統的有效控制,具備自動、手動兩種模式,縱使用戶身在異地,依然能夠對家中的晾衣架進行控制,使得衣物免遭雨淋。并且,一旦控制端與網絡失去連接,該系統將自動切換至自動控制模式,保證了系統的安全性與穩定性。經過測試,系統控制效果良好,能實時地響應用戶端的控制指令來驅動電機,環境數據采集準確。手動模式下實時性高,自動模式下自動分析控制準確,滿足日常使用。斷網測試時,能正確執行異常處理,切換至自動模式。
[1] 劉偉,楊中良,朱思言,等.基于網絡遠程控制的自動晾衣系統設計[J].周口師范學院學報,2016,33(5):75-77.
[2] 張永剛,王斌.物聯網技術在智能家居中的應用[J].智能建筑與城市信息,2012(2):27-30.
[3] 勒川.從平臺布局邁步生態搭建機智云3.0及Gokit3正式發布[J].中關村,2015(10):73.
[4] 李長有,王文華.基于DHT11溫濕度測控系統設計[J].機床與液壓,2013,41(13):107-108.
[5] 張旭輝.基于安卓系統的APP開發技術探析[J].電子制作,2016(14):34.
The intelligent clothes-drying control system based on the GizWits
Huang Xin, Lin Wei
(College of Physics and Information Engineering, Fuzhou University, Fuzhou 350000, China)
Using the Android phone as the man-machine interaction terminal, the STM32F103C8T6 which is producted by STMicroelectronics as the core of the control terminal, based on the GizWits platform, this paper designed a smart control system which can help users to operate the drying racks usefully through the Internet. Avoided the clothes are wetted when users are not at home. And it will automatically switch to automatic mode when disconnect with the Server. The control terminal uses the FreeRTOS as operating system, it has a good performance in real-time control and stability. It can communicate with the GizWits server steadily.
embedded; FreeRTOS; GizWits; STM32
TP272
A
10.19358/j.issn.1674- 7720.2017.19.026
黃鑫,林偉.基于機智云的智能晾衣控制系統[J].微型機與應用,2017,36(19):90-92.
2017-04-09)
黃鑫(1992-),男,碩士研究生,主要研究方向:嵌入式。林偉 (1968-), 男,碩士,副研究員,主要研究方向:敏感材料與器件、集成電路設計。