999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于STM32和Android的智能家居系統設計

2018-10-09 03:00:42朱向慶鄧浩欣李嘉寶朱萬鴻何昌毅鐘創平
電子設計工程 2018年18期
關鍵詞:單片機界面檢測

朱向慶,鄧浩欣,李嘉寶,朱萬鴻,何昌毅,鐘創平

(嘉應學院電子信息工程學院,廣東梅州514015)

智能家居系統集電子信息、自動控制、計算機、通信技術等于一體,與傳統家居相比,它能從各方面提高人們的生活質量[1-2]。家居核心設備智能化,終端配套技術的不斷成熟和品牌化,物聯網、移動互聯網技術的飛速發展,特別是以人為本的健康電子興起,進一步促進智能家居的發展。在功能設定方面,智能家居從以往簡單的近程安防監控,逐漸過渡到遠程監控與自動控制,并往智能化方向發展[3]。

目前,我國市場上有很多功能各異的智能家居產品,但是不少產品在追求功能強大的同時,造成價格高企,不利于推廣應用。為此,設計一套高性價比,集空氣質量、溫度、氣壓和光強檢測,家居設備自動控制,遠程Android應用程序與手機短消息監控等功能于一體的智能家居系統。

1 系統的硬件結構

本系統硬件結構如圖1所示,它以STM32F407ZGT6微控制器為核心,包含EEPROM存儲器、SRAM存儲器、Flash存儲器、煙霧及可燃氣體(液化氣、甲烷、酒精等)傳感器、有害氣體(氨、硫化物、苯等)傳感器、光敏電阻、PM2.5粉塵傳感器、數字溫度傳感器、氣壓傳感器、Wi-Fi無線模塊、GSM模塊、4.3寸TFT電容觸摸屏、步進電機、直流電機、繼電器、蜂鳴器、LED燈及數碼管等。

STM32F407ZGT6是意法半導體公司(ST公司)推出的一款以ARM Cortex-M4為內核的32位微控制器[4],擁有 210DMIPS,高達1MB Flash ROM,192kB SRAM,4kB備用RAM,17個TIM(定時器),3個12位ADC,2個12位DAC,以及15個通信接口(3個I2C,4個USART/UART,3個SPI,2個I2S,2個CAN及1個SDIO),多達140個具有中斷功能的I/O端口,可滿足系統要求。

圖1 硬件系統框架

1.1 存儲器的擴展

因為STM32單片機要運行μC/OS-III操作系統,存儲圖片數據,所以必須擴展系統的Flash ROM、RAM等存儲器。通過SPI接口連接華邦(Winbond)公司生產的W25Q128,可擴展16 MB的Flash ROM。

STM32單片機使用FSMC(Flexible Static Memory Controller,可變靜態存儲控制器)I/O口連接SRAM芯片IS62WV51216,該芯片由ISSI公司生產,容量為512 K字。

為了擴展EEPROM,STM32單片機使用I2C總線連接AT24C256。該芯片由Atmel公司生產,容量為32 kB,其特點是可在線電擦寫,掉電后數據不丟失。

1.2 空氣質量的檢測

煙霧及可燃氣體傳感器MQ2和有害氣體檢測模塊MQ135輸出的模擬電壓傳輸至STM32單片機的ADC引腳,單片機將采集到的模擬電壓轉換成數字量,再進行相應處理,達到對煙霧、可燃氣體和有害氣體的檢測。

系統使用兩個Sharp公司生產的GP2Y1051AU型二代傳感器分別檢測室內外PM2.5。PM2.5檢測模塊采用標準的串口通信,其TXD引腳連接STM32的RXD引腳,單片機通過公式轉換,得到相應的室內外PM2.5濃度值。

1.3 光照度、溫度及氣壓的檢測

光敏電阻MG5528與固定電阻的串聯分壓值送到STM32單片機的ADC引腳,單片機根據讀取的ADC值即可計算出周圍環境的光照度,進而采用脈沖寬度調制(PWM),改變PWM輸出的占空比,通過ULN2803自動調節燈光的亮度。

單片機與DS18B20數字溫度傳感器通過單總線(1-Wire)通信,實現對環境溫度的檢測[5]。

同時,單片機通過I2C通信協議與BMP180氣壓溫度模塊進行通信,達到對氣壓和溫度的檢測[6]。

1.4 無線通信接口

為了完成與遠程云服務器、手機的通信,單片機通過串口連接Wi-Fi模塊ESP8266和GSM模塊SIM900A。Wi-Fi模塊內置樂鑫信息科技公司的ESP8266EX芯片[7,8],它內含一個完整且自成體系的Wi-Fi網絡解決方案,能夠獨立運行,也可作為從機搭載于其他主機運行。

GSM模塊SIM900A用于給遠程手機發送短消息,它是一款尺寸緊湊的GSM/GPRS模塊,采用SMT封裝,基于STE(意法愛立信)的單芯片案,使用ARM926EJ-S架構,性能強大,可以低功耗實現語音、SMS、數據和傳真信息的收發[9-10]。

1.5 輸入輸出接口

系統使用ALIENTEK公司推出的4.3寸TFT電容觸摸屏實現人機交互,該觸摸屏有FSMC和SPI兩種接口。FSMC總線連接液晶控制器ILI9341,以輸出圖像;SPI總線銜接觸摸屏控制器TCS2046,以達到觸摸輸入數據。

STM32單片機使用I/O口連接2個復合管驅動器ULN2803,它可驅動步進電機、直流電機、繼電器、LED燈和蜂鳴器,電機和繼電器用于開關窗戶、抽風機、空氣凈化器或其他家電設備。

STM32單片機使用I/O口連接7段數碼管譯碼器74LS48,用于驅動共陰數碼管,顯示空調預設溫度。

2 軟件設計與實現

為了移植方便,以及提高開發速度,STM32單片機運行固件由C語言編寫,運行μC/OS-III操作系統,使用Keil uVision5軟件編譯,通過J-LINK Utility軟件將生成的機器碼文件燒錄到單片機。智能手機APP使用Java語言設計,并通過eclipse軟件編譯生成可安裝的APK文件。

2.1 μC/OS-III系統任務設計

μC/OS-III是一個基于ROM運行、可裁剪、搶占式、實時多任務內核,具有高度可移植性,具有μC/OS-II不支持的時間片輪轉法[11-12],特別適合于32位微處理器和控制器。μC/OS-III系統初始化后,建立圖2所示五個任務。程序開始運行后,初始化外設與各功能模塊,初始化μC/OS-III,然后創建任務1,開啟多任務環境。

2.1.1 任務1程序設計

任務1首先開啟RTC(Real-Time Clock,實時時鐘),初始化emWin圖形庫,接著創建信號量與任務2~5,最后掛起,不再執行。

圖2 μC/OS-III系統各任務流程

2.1.2 任務2程序設計

任務2負責設置和更新emWin顯示,執行完畢后掛起15 ms。emWin圖形界面包括主界面、設置界面、Wi-Fi掃描界面、Wi-Fi連接界面和服務器界面。

主界面顯示家居系統的整體運行狀況,設置界面用于配置各家電工作參數、傳感器報警門限等。

Wi-Fi掃描界面用于發現周圍Wi-Fi,掃描完成進入Wi-Fi連接界面,輸入密碼后可連接至遠程云服務器。

服務器界面用于輸入遠程云服務器的IP地址和端口,修改完成會將設置保存在EEPROM內。

2.1.3 任務3程序設計

任務3負責觸摸屏和數碼管顯示。首先用觸摸屏顯示emWin設置好的界面;接著對數碼管進行動態掃描,并控制其顯示空調設定溫度;最后任務掛起15 ms。

2.1.4 任務4程序設計

任務4負責檢測各傳感器。在程序開始時對ADC、串口等外設進行初始化,進入μC/OS-III系統后,按圖3所示流程,依次對煙霧與可燃氣體濃度、有害氣體濃度、室內外PM2.5濃度、氣壓、光照度及溫度進行檢測。當室內PM2.5、MQ2和MQ135檢測到的數據超標時,啟動蜂鳴器報警。如果檢測結果有異常,再根據其數值控制窗戶、抽風機、空氣凈化器等設備,以改善家居環境;最后任務掛起500 ms。

2.1.5 任務5程序設計

任務5負責與Wi-Fi模塊和GSM模塊交換數據。進入μC/OS-III系統后,若Wi-Fi模塊已正確連接以太網,系統執行圖4所示Wi-Fi信息發送程序,將采集到的數據和當前家居設備的狀態發送至遠程云服務器。當遠程Android應用程序要控制家居時,也通過云服務器轉發數據給Wi-Fi模塊,由其傳輸給單片機。

當出現緊急情況,需要報警時,則依據圖5所示流程,通過GSM模塊發送短消息至用戶手機,及時提醒使用者。STM32單片機都是通過AT命令控制Wi-Fi模塊和GSM模塊,進行數據收發。

圖4 ESP8266遠程信息發送程序流程

圖5 GSM模塊發送報警短消息程序流程

2.2 遠程服務器

遠程監控工作框架如圖6所示,遠程服務器采用騰訊公司的騰訊云云服務器(Cloud Virtual Machine,CVM),它提供可擴展的計算容量,且擁有公網唯一IP,理論上在任何地方只要能連接因特網,即可與其進行通信。通過騰訊云CVM,可以在短時間內快速啟動任意數量的云服務器,即時部署應用程序,并支持使用者自定義的一切資源,如CPU、內存、硬盤、網絡和安全等[13]。騰訊云CVM使用Linux Ubuntu系統,利用Socket和雙進程分別完成對8001和9999端口的監聽,其中8001為智能手機連接端口,9999為家居系統連接端口。

圖6 遠程監控工作框架

2.3 Android APP程序設計

智能手機Android應用程序開發環境包括JDK(Java Development Kit,Java開發工具包)、Android SDK(Software Development Kit,軟件開發包)、Eclipse和 ADT(Android Development Tools)插件。在安裝Android開發環境時,首先須要安裝支持Java程序開發和運行的JDK,還需要有 JRE(Java Runtime Environment,Java運行環境)的支持;Android SDK是Android開發工具包,它提供Android相關的API;Eclipse是IBM公司開發的一種基于Java語言編寫,開放源代碼,可擴展的集成開發工具;ADT是Google專門為Eclipse開發的一個插件,用來輔助開發[14-20]。

打開應用程序后會自動使用Socket連接遠程服務器,監聽遠程服務器發送的信息,解析并顯示于屏幕。圖7(a)為手機上的Android應用程序主界面,用于顯示家居系統整體工作狀態;進入圖7(b)所示設置頁面后,可修改各家居系統工作參數,點擊保存會將所有參數以指令形式發送給云服務器。云服務器進程接收到指令后,將指令發送至管道,另一進程接收管道內容并將數據發送至家居系統,完成數據的交互。

圖7 Android端應用程序

3 實驗結果

研究過程中,采用先模型驗證,后實物制作的方法。圖8為系統硬件模型,它采用KT紙板做外觀材料,電路固定于模型底部,各傳感器和電器露出于模型外,以便觀察。

實驗證明,系統能夠正常檢測并自動調節家居環境溫度、光照度、空氣質量等,使用者可通過智能手機遠程監控家居狀況;有異常時,家居系統也會發送手機短消息以告知使用者。

圖8 系統硬件模型

4 結束語

研究表明,通過糅合現有的傳感檢測技術、自動控制技術等,借助現有的GSM網絡、互聯網和云服務器,結合Wi-Fi短距離無線通信,操作者可通過Android智能手機遠程對家居環境狀況進行實時監控。實驗證明系統性能良好,實時性高,安全可靠,成本低廉,其包含的核心技術經過企業消化后,能直接投入市場,可望產生積極的社會效應和社會效益,推動現代化智能家居的發展。

猜你喜歡
單片機界面檢測
“不等式”檢測題
“一元一次不等式”檢測題
“一元一次不等式組”檢測題
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
人機交互界面發展趨勢研究
小波變換在PCB缺陷檢測中的應用
主站蜘蛛池模板: 喷潮白浆直流在线播放| 国产在线小视频| 成人午夜视频免费看欧美| 久久久久久高潮白浆| 国产成人a在线观看视频| 亚洲成AV人手机在线观看网站| A级全黄试看30分钟小视频| 国产肉感大码AV无码| 久久熟女AV| 四虎国产永久在线观看| 亚洲人成高清| 台湾AV国片精品女同性| 十八禁美女裸体网站| 亚洲精品视频免费| 欧美日韩在线观看一区二区三区| 91www在线观看| 幺女国产一级毛片| 青青草国产免费国产| 婷婷午夜天| 国产无人区一区二区三区| 日韩中文欧美| 国产在线精品香蕉麻豆| 日韩中文字幕亚洲无线码| 91精品小视频| 不卡无码h在线观看| 精品久久久久久中文字幕女| 色香蕉网站| 在线观看亚洲人成网站| 99视频在线看| 香蕉久久国产超碰青草| 91啦中文字幕| 狠狠做深爱婷婷综合一区| 中文成人无码国产亚洲| a毛片基地免费大全| 国产精品久久久久婷婷五月| 国产第一页亚洲| av无码一区二区三区在线| 亚洲一级色| 国产精品无码一区二区桃花视频| 亚洲A∨无码精品午夜在线观看| 欧美不卡在线视频| 国产91色在线| 69av在线| 午夜无码一区二区三区| 日韩一区二区三免费高清| 日韩在线第三页| 天天激情综合| 欧美日本在线观看| 国产午夜不卡| 久久黄色免费电影| 日韩欧美综合在线制服| 国产一级妓女av网站| YW尤物AV无码国产在线观看| 黄色不卡视频| 中文字幕乱码二三区免费| 人妻丰满熟妇av五码区| 亚洲午夜综合网| 国产97色在线| 午夜不卡福利| 青青草一区二区免费精品| 欧美日韩精品一区二区视频| 农村乱人伦一区二区| 女同久久精品国产99国| 国产欧美在线观看精品一区污| AV在线天堂进入| 亚洲福利一区二区三区| 2048国产精品原创综合在线| 2021精品国产自在现线看| 国产精品无码AⅤ在线观看播放| a级毛片视频免费观看| 少妇露出福利视频| 久久精品人人做人人爽电影蜜月| 国产精品一老牛影视频| 国产亚洲欧美在线专区| 欧美福利在线| 97国产在线视频| 又黄又湿又爽的视频| 91福利一区二区三区| 国产亚洲精品va在线| 99精品高清在线播放| 国产精欧美一区二区三区| 亚洲—日韩aV在线|