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缺陷檢測中的應用
主站蜘蛛池模板: 91久久偷偷做嫩草影院电| 伊人福利视频| 国产丝袜无码精品| 欧美综合区自拍亚洲综合绿色| 3344在线观看无码| 国产成人精品视频一区二区电影| 18禁黄无遮挡免费动漫网站| 日本尹人综合香蕉在线观看 | 无码人妻热线精品视频| 暴力调教一区二区三区| 国产精品第页| 精品91视频| 视频二区亚洲精品| 亚洲第一福利视频导航| 国产精品尤物在线| 日韩在线第三页| 久久久久国产精品熟女影院| 亚洲精品卡2卡3卡4卡5卡区| 久久久久亚洲AV成人网站软件| 国产一区二区精品福利| 亚洲区一区| 国产91高跟丝袜| 亚洲成人77777| 欧美h在线观看| 免费无码又爽又刺激高| 亚洲国产系列| 日韩欧美色综合| 999国产精品| 国产a网站| 成人国产精品2021| 国产超薄肉色丝袜网站| 久久国产精品影院| 亚洲水蜜桃久久综合网站 | 国产成人免费手机在线观看视频| 国产女主播一区| 久久6免费视频| 性网站在线观看| 国产丝袜无码精品| 中文一区二区视频| 色综合天天操| 欧美a在线看| 女人18毛片水真多国产| 57pao国产成视频免费播放| 亚洲AⅤ综合在线欧美一区| 成人午夜免费观看| 一级毛片在线免费看| 亚洲娇小与黑人巨大交| 国模沟沟一区二区三区| 亚洲中文字幕久久无码精品A| www精品久久| 免费全部高H视频无码无遮掩| 婷婷综合缴情亚洲五月伊| 在线播放国产99re| 99热这里只有精品免费| 日本精品αv中文字幕| 中文字幕在线观看日本| 中文字幕日韩视频欧美一区| 久久性视频| 免费在线色| 国产黑丝一区| 欧美天天干| 亚洲区一区| 91精品国产自产在线老师啪l| 国产H片无码不卡在线视频| 国产精品一区二区不卡的视频| 91热爆在线| 天天视频在线91频| 欧美综合激情| 亚洲色图另类| 精品三级网站| 日韩在线网址| 国产精品成人一区二区不卡 | 国产欧美性爱网| 国产在线精品99一区不卡| 激情成人综合网| 国产成人av大片在线播放| 色哟哟国产精品| 欧美怡红院视频一区二区三区| 精品久久国产综合精麻豆| 无码中文字幕精品推荐| 欧美亚洲香蕉| 四虎国产在线观看|