亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于TouchGFX和FreeRTOS的智能家居解決方案*

        2018-09-07 02:31:52,,
        關(guān)鍵詞:視圖底層智能家居

        ,,

        (中國(guó)礦業(yè)大學(xué) 信息與控制工程學(xué)院,徐州 221116)

        引 言

        智能家居即(Smart Home),也被稱為智能化住宅、感知住宅等[1],是現(xiàn)代電子技術(shù)、自動(dòng)化技術(shù)、嵌入式系統(tǒng)及通信技術(shù)相結(jié)合的產(chǎn)物。

        目前,智能家居控制系統(tǒng)面臨著諸多問(wèn)題:首先是價(jià)格昂貴,維護(hù)成本高[2],不利于產(chǎn)品的普及和推廣;其次行業(yè)無(wú)統(tǒng)一標(biāo)準(zhǔn)[2],各個(gè)廠商提供的解決方案質(zhì)量參差不齊,兼容性差;再次裝置靈活性不高,安裝拆卸以及維護(hù)困難,無(wú)法做到循環(huán)多次使用;此外,實(shí)時(shí)性不高,無(wú)法全方位穩(wěn)定地實(shí)現(xiàn)一定區(qū)域內(nèi)對(duì)家電和環(huán)境的監(jiān)測(cè)。本文針對(duì)以上問(wèn)題,提出了一套完整的解決方案。

        1 相關(guān)技術(shù)

        1.1 LPCXpresso5460X介紹

        LPCXpresso板由恩智浦、Code Red Technologies、Embedded Artists共同研制[3],其中LPCXpresso54608器件性能優(yōu)越,板載CMSIS-DAP/SEGGER J-Link,兼容MCUXpresso IDE和其他通用的工具鏈(如Keil和IAR),除了標(biāo)準(zhǔn)的LPCXpresso V3功能外,該板適用于一般工業(yè)控制、智能家居系統(tǒng)等多種環(huán)境[4],還提供了一整套外設(shè)接口:

        ① 272×480彩色液晶電容觸摸屏;

        ② UART和SPI端口;

        ③ 多種擴(kuò)展選項(xiàng),包括Arduino UNO和PMod;

        ④ 128 Mb Micron MT25QL128 Quad-SPI閃存;

        ⑤ 16 MB MT48LC8M16A2B4 SDRAM;

        ⑥ 數(shù)字麥克風(fēng)接口;

        ⑦ 全尺寸SD/MMC卡插槽;

        ⑧ 集成了板載10/100 Mbps以太網(wǎng)MAC。

        1.2 TouchGFX

        TouchGFX是一個(gè)用C ++編寫的軟件框架,可以在低功耗硬件上開發(fā)嵌入式圖形用戶界面(Graphic User Interface, GUI)應(yīng)用程序。 TouchGFX嵌入式GUI技術(shù)優(yōu)化了小型硬件平臺(tái)(如ARM Cortex-M微控制器的利用率,能夠在更少的MCU負(fù)載下實(shí)現(xiàn)更快速的圖像更新[5]。

        TouchGFX應(yīng)用程序遵循分層模型,如圖1所示,一個(gè)TouchGFX應(yīng)用構(gòu)建于TouchGFX Core層和OSAL/HAL層的預(yù)構(gòu)建庫(kù)或源代碼之上。最頂層的Application層由開發(fā)人員來(lái)開發(fā)。HAL層用于特定目標(biāo)板的移植,其中包括用于特定微控制器、DMA、觸摸屏設(shè)備的標(biāo)準(zhǔn)驅(qū)動(dòng)程序以及可用于多種評(píng)估板的板級(jí)支持包。此外,TouchGFX框架還為目標(biāo)板提供OSAL層,以支持特定嵌入式實(shí)時(shí)操作系統(tǒng)。

        圖1 TouchGFX結(jié)構(gòu)圖

        1.3 FreeRTOS

        TouchGFX應(yīng)用構(gòu)建在嵌入式實(shí)時(shí)操作系統(tǒng)之上,采用嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS)可以更合理、更有效地利用CPU的資源,簡(jiǎn)化應(yīng)用軟件的設(shè)計(jì),縮短系統(tǒng)開發(fā)時(shí)間,更好地保證系統(tǒng)的實(shí)時(shí)性和可靠性[5]。

        在一個(gè)TouchGFX應(yīng)用中,至少要求一個(gè)線程用于GUI的渲染和刷新,兩個(gè)信號(hào)量用于控制對(duì)框架中心的資源的訪問(wèn)。TouchGFX可以通過(guò)實(shí)現(xiàn)oswrapper類來(lái)運(yùn)行幾乎所有的主流操作系統(tǒng)[5],其中FreeRTOS是實(shí)時(shí)操作系統(tǒng)內(nèi)核,具有以下特點(diǎn):

        ① 簡(jiǎn)單而功能強(qiáng)大,內(nèi)核只有3個(gè).c文件,提供功能包括任務(wù)管理、時(shí)間管理、信號(hào)量、消息隊(duì)列、內(nèi)存管理,可基本滿足較小系統(tǒng)的需要[6]。

        ② 完全免費(fèi),源碼公開、可移植、可裁減、調(diào)度策略靈活。

        ③ 大量開發(fā)者使用,并保持高速增長(zhǎng)趨勢(shì)。

        ④ 文檔齊全,F(xiàn)reeRTOS的創(chuàng)始人RichardBarry編寫了大量的移植代碼和配套文檔[7]。

        2 硬件架構(gòu)

        2.1 系統(tǒng)總體架構(gòu)

        系統(tǒng)的輸入信號(hào)主要有以下幾種:

        ① 溫濕度信號(hào):溫度形式有多種,最常見為氣溫、水溫以及體表溫度;濕度信號(hào)通常為空氣相對(duì)濕度。

        ② 聲音信號(hào):主要來(lái)源于人和其他動(dòng)物,此外還有環(huán)境中的各種聲音。

        ③ 紅外信號(hào):主要來(lái)源于人和其他動(dòng)物,可以作為區(qū)分人和動(dòng)物跟外界的標(biāo)志信號(hào),也可以作為通信和控制信號(hào)。

        ④ 化學(xué)信號(hào):如可燃?xì)怏w,可用于預(yù)判和監(jiān)測(cè)室外內(nèi)火情的標(biāo)志信號(hào)。

        ⑤ 震動(dòng)信號(hào):用于監(jiān)測(cè)一定范圍內(nèi)的環(huán)境震動(dòng),可用于輔助判斷外來(lái)侵入者。

        ⑥ 視覺(jué)(頻)信號(hào):應(yīng)用較為廣泛,可用于監(jiān)控室內(nèi)外的畫面情況,但較為昂貴。

        ⑦ 觸覺(jué)(點(diǎn)擊)信號(hào):系統(tǒng)提供圖形用戶接口進(jìn)行人機(jī)交互,接收來(lái)自用戶的點(diǎn)擊。

        輸入到系統(tǒng)中的模擬信號(hào)經(jīng)過(guò)A/D轉(zhuǎn)換,和其他數(shù)字信號(hào)輸入到控制系統(tǒng)中,經(jīng)過(guò)MCU執(zhí)行相應(yīng)調(diào)度程序和算法,再提供對(duì)應(yīng)的輸出信號(hào),使得智能家居做出相應(yīng)的動(dòng)作,其中輸出接口主要有以下幾種:

        ① PWM接口:控制電機(jī)/舵機(jī)的正反向轉(zhuǎn)動(dòng),根據(jù)PWM驅(qū)動(dòng)極性之不同,所用的PWM接口數(shù)不同。

        ② 通信接口:UART/I2C用于程序下載調(diào)試以及接口端口數(shù)據(jù)值讀取。

        ③ I/O接口:多路,用于功能執(zhí)行和狀態(tài)顯示等。

        ④ 定時(shí)器接口:用于測(cè)量外界有關(guān)信號(hào)脈沖讀取。

        根據(jù)系統(tǒng)輸入輸出信號(hào)及系統(tǒng)原理,設(shè)計(jì)出系統(tǒng)總體框圖如圖2所示。

        圖2 系統(tǒng)總體框圖

        2.2 系統(tǒng)整體電路

        根據(jù)系統(tǒng)功能設(shè)計(jì)的電路主要包括燈光/彩燈控制WS2812BS、門窗控制、電機(jī)驅(qū)動(dòng)、防盜模式、防火模式、節(jié)能模式等。防盜模式通過(guò)震動(dòng)傳感器實(shí)現(xiàn),防火模式通過(guò)DHT11與MQ-2共同實(shí)現(xiàn),節(jié)能模式通過(guò)HCSR501實(shí)現(xiàn)。

        3 軟件設(shè)計(jì)

        3.1 軟件設(shè)計(jì)模式

        由于系統(tǒng)頂層GUI采用TouchGFX框架,采用C++寫成;而底層LPCXpresso54608采用C語(yǔ)言寫成,為了使得系統(tǒng)上下層銜接得當(dāng),采取分層架構(gòu)來(lái)實(shí)現(xiàn)系統(tǒng)的低耦合和高內(nèi)聚。

        實(shí)現(xiàn)示意圖如圖3所示,系統(tǒng)軟件總體采用一種典型的模型-視圖分離設(shè)計(jì)模式,稱之為MVP架構(gòu)。其中,M代表Model,為模型(層);V代表View,為視圖(層);P代表Presenter,為控制(層)。對(duì)于每個(gè)采用本架構(gòu)的應(yīng)用來(lái)說(shuō),其中只有一個(gè)Model,但是有很多對(duì)View和Presenter,其中每一對(duì)View和Presenter對(duì)應(yīng)一個(gè)屏幕。

        圖3 實(shí)現(xiàn)示意圖

        Model(模型層)負(fù)責(zé)處理整個(gè)應(yīng)用UI的狀態(tài),并且還需要和系統(tǒng)的其余部分(后端)通信,以獲取UI層從后端所獲取的信息。在這種應(yīng)用場(chǎng)景下,Model相當(dāng)于是整個(gè)系統(tǒng)的入口,當(dāng)Model發(fā)生改變時(shí),當(dāng)前的Presenter會(huì)接收到Model改變的消息,這個(gè)過(guò)程是通過(guò)應(yīng)用中的ModelListener即模型監(jiān)聽器來(lái)完成的。

        View(視圖層)負(fù)責(zé)放置和重繪UI層的圖形元素。View能夠獲取用戶事件,比如說(shuō)點(diǎn)擊事件,并且根據(jù)時(shí)間作出反應(yīng),通常來(lái)講是將事件轉(zhuǎn)移給本視圖的Presenter。當(dāng)Presenter要求View做出改變時(shí),View還能響應(yīng)來(lái)自Presenter的應(yīng)答。

        Presenter(控制層)負(fù)責(zé)編排模型和視圖,處理與UI元素相關(guān)的邏輯。一是在模型中發(fā)生更改時(shí),通知Presenter,Presenter采取相應(yīng)的操作同步視圖; 二是在視圖中發(fā)生更改時(shí),通知Presenter,Presenter采取相應(yīng)措施來(lái)同步模型。

        但是要實(shí)現(xiàn)實(shí)際功能,需要和底層硬件進(jìn)行銜接。Model層提供了和底層硬件銜接的接口。特定的目標(biāo)板如LPCXpresso54608使用C語(yǔ)言,可獨(dú)立實(shí)現(xiàn)特定的功能,比如傳感器數(shù)據(jù)的采集,此時(shí)只要在Model中實(shí)現(xiàn)特定的函數(shù)接口,便可在FreeRTOS中注冊(cè)和創(chuàng)建任務(wù)設(shè)置優(yōu)先級(jí)等流程,即可實(shí)現(xiàn)前后端的銜接。下載特定的板級(jí)支持包,配置、編譯等一系列操作之后,即可將程序下載至特定的目標(biāo)板上運(yùn)行,從而達(dá)到系統(tǒng)預(yù)定功能。系統(tǒng)軟件設(shè)計(jì)模式和總體架構(gòu)圖如圖4所示。

        圖4 系統(tǒng)軟件設(shè)計(jì)模式和總體架構(gòu)圖

        3.2 系統(tǒng)軟件功能

        系統(tǒng)軟件的主要功能包括:

        ① 人手點(diǎn)擊觸屏LCD事件監(jiān)聽,觸摸屏控件回調(diào)函數(shù)處理。

        ② 從UI到底層:視圖層事件經(jīng)過(guò)控制層和模型層,映射為給予底層元器件信號(hào)和動(dòng)作執(zhí)行。

        ③ 從底層到UI:底層元器件狀態(tài)改變,通過(guò)接口與模型層通信和控制層處理,來(lái)更新UI。

        ④ FreeRTOS根據(jù)任務(wù)優(yōu)先級(jí)來(lái)進(jìn)行任務(wù)調(diào)度以及消息傳輸。

        ⑤ LPCXpresso54608和擴(kuò)展板之間的接口通信。

        ⑥ 擴(kuò)展板對(duì)各個(gè)傳感器信號(hào)的采集處理,對(duì)于上層指令執(zhí)行以及狀態(tài)回傳。

        無(wú)論是從UI到底層,還是從底層到UI,在中間操作系統(tǒng)的支持和任務(wù)調(diào)度之下,整個(gè)系統(tǒng)構(gòu)成一個(gè)閉環(huán)模式,確保了各個(gè)模塊之間消息和事件的暢通,保證工作的實(shí)時(shí)有序。

        4 實(shí)現(xiàn)與評(píng)估

        國(guó)家統(tǒng)計(jì)局2016年統(tǒng)計(jì)數(shù)據(jù)表明,中國(guó)人均住房建筑面積為40.8平方米[8]。以一家三口的小康之家為例,40.8×3=122.4平方米,常見于當(dāng)前房市三室兩廳一衛(wèi)戶型,如圖5所示。以此構(gòu)建實(shí)物模型來(lái)模擬真實(shí)場(chǎng)景下的智能家居控制。

        圖5 模型設(shè)計(jì)和制作

        以此實(shí)物模型為基礎(chǔ),進(jìn)行相關(guān)部件的安裝以及線路的布置。依據(jù)設(shè)計(jì)功能,設(shè)計(jì)用戶交互軟件(如圖6所示),實(shí)現(xiàn)了如圖3所示的功能。

        圖6 系統(tǒng)軟件界面

        經(jīng)過(guò)分析評(píng)估,本系統(tǒng)具有以下特色:基于32位ARM內(nèi)核,標(biāo)準(zhǔn)統(tǒng)一,功能專一,同時(shí)兼具擴(kuò)展性,兼容性好;主控系統(tǒng)和擴(kuò)展系統(tǒng),體積小巧,功能強(qiáng)大;成本低廉,超低功耗,真正做到價(jià)格可控,利于向大眾普及推廣;采用FreeRTOS,系統(tǒng)實(shí)時(shí)性高;系統(tǒng)接口豐富,靈活性高,安裝拆卸以及維護(hù)容易,便于二次開發(fā)和升級(jí); 具有良好的系統(tǒng)交互功能,可帶給用戶友好的使用體驗(yàn)。

        結(jié) 語(yǔ)

        猜你喜歡
        視圖底層智能家居
        航天企業(yè)提升采購(gòu)能力的底層邏輯
        基于Zigbee的無(wú)線通信技術(shù)在智能家居中的應(yīng)用
        電子制作(2018年1期)2018-04-04 01:48:28
        5.3 視圖與投影
        視圖
        Y—20重型運(yùn)輸機(jī)多視圖
        SA2型76毫米車載高炮多視圖
        關(guān)于智能家居真正需求的探討
        智能家居更貼心
        回到現(xiàn)實(shí)底層與悲憫情懷
        基于LD3320的智能家居控制
        河南科技(2014年7期)2014-02-27 14:11:13
        欧美一区二区三区久久综| 日本高清在线播放一区二区| 国产乱人精品视频av麻豆网站| 亚洲av无码久久精品色欲| 极品美女扒开粉嫩小泬| 3亚洲日韩在线精品区| 激情视频在线观看好大| 日本中国内射bbxx| 特级毛片a级毛片免费播放| 狼色在线精品影视免费播放| 日本一区二区三区四区在线视频| 久久精品国产清自在天天线| 亚洲国产精品久久久久秋霞1 | 全球av集中精品导航福利| 亚洲an日韩专区在线| 香蕉蜜桃av一区二区三区| 日本熟妇人妻xxxx| 欧美巨大性爽| 人妻无码AⅤ中文系列久久免费| 三级日本理论在线观看| 亚洲av片在线观看| 欧美激情二区| 午夜黄色一区二区不卡| 午夜天堂一区人妻| 人妻少妇av中文字幕乱码| 婷婷五月亚洲综合图区| 午夜视频一区二区三区四区| 轻点好疼好大好爽视频| 四虎影视亚洲精品| 日韩一区二区三区天堂| 无码人妻久久一区二区三区免费丨 | 国产一区二区三区视频地址| 人人爽久久涩噜噜噜丁香| 亚洲国产一区在线二区三区| 亚洲一区二区三区麻豆| 真实的国产乱xxxx在线| 欧美日韩中文国产一区| 精品少妇后入一区二区三区| 国产99一区二区三区四区| 国产99视频精品免视看9| 午夜无码熟熟妇丰满人妻|