版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于物聯(lián)網(wǎng)技術(shù)的家庭環(huán)境監(jiān)測(cè)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)摘要:在科學(xué)技術(shù)快速發(fā)展的今天,越來(lái)越多的生活和工作領(lǐng)域都融入了物聯(lián)網(wǎng)技術(shù)、信息管理技術(shù)。當(dāng)下社會(huì)人們逐漸習(xí)慣了更加舒適和智能的居家生活環(huán)境,同時(shí)對(duì)居住環(huán)境的智能化提出了更高的要求。從上世紀(jì)90年代到如今,物聯(lián)網(wǎng)技術(shù)從一開始在美國(guó)等發(fā)達(dá)國(guó)家開始逐漸向發(fā)展中國(guó)家發(fā)展,從誕生到發(fā)展再到在生活中應(yīng)用增加,實(shí)現(xiàn)了一個(gè)飛速的發(fā)展進(jìn)程。本文是基于現(xiàn)有物聯(lián)網(wǎng)智能家居監(jiān)控系統(tǒng)的基礎(chǔ)上,設(shè)計(jì)了一種基于物聯(lián)網(wǎng)的嵌入式室內(nèi)環(huán)境監(jiān)控系統(tǒng)(簡(jiǎn)稱“智能家居”)。我的設(shè)計(jì)的主要目標(biāo)有以下三個(gè)方面,其一是在使用者家中安裝本監(jiān)測(cè)系統(tǒng)后,對(duì)溫度進(jìn)行實(shí)時(shí)的監(jiān)控。如果家中的溫度超過(guò)限定溫度時(shí),觸發(fā)警報(bào)并通過(guò)手機(jī)app及時(shí)提醒用戶注意安全;其二是監(jiān)測(cè)用戶家中的干濕程度,一般是家中總體的干濕程度,細(xì)化分的話,也可以是用戶家中種植的植物附近的干濕程度(用戶可以自行設(shè)置或購(gòu)買智能花盆澆水),亦或是家用電器附近(防觸電),當(dāng)超過(guò)或低于一定程度時(shí),提醒用戶;其三是通過(guò)監(jiān)測(cè)家中某一氣體的濃度,比如可燃?xì)怏w等,當(dāng)其超過(guò)安全濃度時(shí)向用戶發(fā)送警報(bào),提升家中的安全系數(shù)。本次設(shè)計(jì)以學(xué)校的UP-Magic210嵌入式平臺(tái)為主要設(shè)備,以各類傳感器模塊為備用設(shè)備用來(lái)設(shè)計(jì)并實(shí)現(xiàn)一個(gè)系統(tǒng),方便監(jiān)測(cè)用戶家庭內(nèi)的環(huán)境,這次畢業(yè)設(shè)計(jì)讓我能把大學(xué)四年學(xué)習(xí)的知識(shí)得以運(yùn)用,讓我更加熟悉了軟硬件鏈接的有關(guān)操作,并了解了魔法師實(shí)驗(yàn)平臺(tái)和部分傳感器的情況。關(guān)鍵詞:物聯(lián)網(wǎng)工程;家庭環(huán)境;監(jiān)測(cè)系統(tǒng)目錄目錄1引言 61.1 研究背景及意義 61.1.1研究背景 61.1.2系統(tǒng)的開發(fā)意義 61.2 國(guó)內(nèi)外研究現(xiàn)狀 71.2.1 國(guó)外研究現(xiàn)狀 71.2.2 國(guó)內(nèi)研究現(xiàn)狀 71.3 研究?jī)?nèi)容及方法 81.3.1 研究?jī)?nèi)容 81.3.2 研發(fā)方法 81.4 系統(tǒng)開發(fā)技術(shù)路線 81.5 論文的組織結(jié)構(gòu) 92系統(tǒng)開發(fā)架構(gòu)及相關(guān)開發(fā)技術(shù)環(huán)境介紹 102.1系統(tǒng)軟件架構(gòu)概述 102.1.1MVP系統(tǒng)架構(gòu) 102.1.2MVP架構(gòu)應(yīng)用實(shí)例介紹 112.2系統(tǒng)硬件及協(xié)議介紹 122.3系統(tǒng)開發(fā)相關(guān)技術(shù)介紹 142.3.1.開發(fā)語(yǔ)言 142.3.2.AndroidSDK: 142.3.3.SQLite數(shù)據(jù)庫(kù): 142.3.4.開發(fā)的工具: 143系統(tǒng)需求分析 163.1系統(tǒng)功能需求分析 163.2非功能性需求分析 163.3環(huán)境需求分析 173.3.1運(yùn)行環(huán)境 173.3.2配置性能 173.3.3故障處理 174.1系統(tǒng)數(shù)據(jù)庫(kù)表整體結(jié)構(gòu)概述和設(shè)計(jì) 184.1.1數(shù)據(jù)庫(kù)整體結(jié)構(gòu)概念設(shè)計(jì) 184.2系統(tǒng)數(shù)據(jù)表分析與設(shè)計(jì) 184.2.1用戶表分析與設(shè)計(jì) 184.2.2設(shè)備表的分析與設(shè)計(jì) 195系統(tǒng)功能模塊設(shè)計(jì)與實(shí)現(xiàn) 205.1系統(tǒng)功能模塊的設(shè)計(jì) 205.1.1登錄注冊(cè)功能模塊 205.1.2系統(tǒng)設(shè)置功能模塊 215.1.3設(shè)備監(jiān)控模塊 215.2系統(tǒng)功能模塊的實(shí)現(xiàn) 215.2.1注冊(cè)登錄功能實(shí)現(xiàn) 215.2.2系統(tǒng)設(shè)置功能實(shí)現(xiàn) 235.2.3設(shè)備監(jiān)控功能實(shí)現(xiàn) 246總結(jié)與展望 25參考文獻(xiàn) 261引言研究背景及意義1.1.1研究背景在如今信息化時(shí)代,一方面智能家居系統(tǒng)已經(jīng)涉及到生產(chǎn)生活的方方面面。而另一方面,國(guó)內(nèi)居住環(huán)境的日益惡化,比方說(shuō)沙塵暴、霧霾、室內(nèi)裝修使用不好的油漆導(dǎo)致有害氣體殘留等問(wèn)題,這些都非常影響了家庭成員的生存安全、呼吸健康和舒適度。近年來(lái)基于物聯(lián)網(wǎng)技術(shù)的智能家居,智慧交通,智慧城市等項(xiàng)目的興起,使物聯(lián)網(wǎng)技術(shù)迎來(lái)了全面發(fā)展的時(shí)代。物聯(lián)網(wǎng)作為在現(xiàn)實(shí)生活與互聯(lián)網(wǎng)的鏈接,其中安裝有部分感知能力、處理能力和控制能力的各種終端感知設(shè)備,它借助網(wǎng)絡(luò)完成信息交互、處理和協(xié)調(diào)工作,以便實(shí)現(xiàn)大規(guī)模的物與人、物與物之間的數(shù)據(jù)交換。其最終目標(biāo)是借助物聯(lián)網(wǎng)技術(shù)完成人與物、物與物、所有的物體之間的相互通信和交流,從而更加方便地進(jìn)行識(shí)別、控制和管理等工作。它的有關(guān)技術(shù)在國(guó)防軍工、工業(yè)控制、公共設(shè)施、醫(yī)療協(xié)助、智能電網(wǎng)、環(huán)境監(jiān)測(cè)和智慧城市及交通等多方面具有非常大的發(fā)展前景。1.1.2系統(tǒng)的開發(fā)意義現(xiàn)實(shí)生活中有非常多的突發(fā)事故,通常突發(fā)事故給家庭成員的身心健康和財(cái)產(chǎn)安全帶來(lái)了極大的挑戰(zhàn)。如何預(yù)防此類突發(fā)事故成為困擾室內(nèi)居住人員多年的難題,因此系統(tǒng)地建立并預(yù)防煤氣中毒和家庭失火等突發(fā)型事故的室內(nèi)居住環(huán)境監(jiān)測(cè)系統(tǒng)成為當(dāng)務(wù)之急。為了解決室內(nèi)居住環(huán)境中的空氣污染問(wèn)題,可對(duì)引起空氣污染的指標(biāo)進(jìn)行采集,這些指標(biāo)主要包括可吸入顆粒物、甲醛、二氧化碳和苯系物等,可以通過(guò)室內(nèi)居住環(huán)境監(jiān)測(cè)系統(tǒng)對(duì)這些空氣指標(biāo)進(jìn)行監(jiān)測(cè)和預(yù)警,對(duì)物聯(lián)網(wǎng)終端設(shè)備采集到的海量數(shù)據(jù)進(jìn)行存儲(chǔ),以便能夠?qū)崟r(shí)監(jiān)測(cè)影響室內(nèi)居住環(huán)境指標(biāo),并對(duì)超標(biāo)的指標(biāo)進(jìn)行預(yù)警。更重要的是對(duì)室內(nèi)空氣中的一氧化碳、甲烷等可燃性氣體和煙霧進(jìn)行采集,預(yù)防發(fā)生煤氣中毒和家庭失火等突發(fā)事故,實(shí)時(shí)監(jiān)控這些影響家庭成員安全的居住指標(biāo),并及時(shí)對(duì)這些超標(biāo)的指標(biāo)進(jìn)行預(yù)警和報(bào)警。從而預(yù)防突發(fā)事故,保證室內(nèi)居住人員人身財(cái)產(chǎn)安全。同時(shí)還可以進(jìn)行溫濕度、光照等數(shù)據(jù)的監(jiān)測(cè),為用戶更加良好的居住環(huán)境提供便利??梢允褂脩粼诂F(xiàn)有基礎(chǔ)上獲得更加完善地環(huán)境數(shù)據(jù),生活更加舒心舒適。把物聯(lián)網(wǎng)技術(shù)利用在室內(nèi)居住環(huán)境監(jiān)測(cè)系統(tǒng)領(lǐng)域中,方便獲得實(shí)時(shí)、正確和變化中的監(jiān)測(cè)信息,完成室內(nèi)居住環(huán)境監(jiān)測(cè)系統(tǒng)的網(wǎng)絡(luò)智能控制。把物聯(lián)網(wǎng)技術(shù)用于將現(xiàn)有的室內(nèi)居住環(huán)境監(jiān)測(cè)系統(tǒng)進(jìn)行改進(jìn)或升級(jí),給人們的生活帶來(lái)方便和利益,已成為物聯(lián)網(wǎng)技術(shù)乃至整個(gè)信息時(shí)代發(fā)展的大趨勢(shì)。國(guó)內(nèi)外研究現(xiàn)狀國(guó)外研究現(xiàn)狀物聯(lián)網(wǎng)技術(shù)應(yīng)用于多個(gè)領(lǐng)域,家庭環(huán)境監(jiān)測(cè)是其中一種經(jīng)典的應(yīng)用實(shí)例。使用各類型傳感器感知外界數(shù)據(jù),并通過(guò)接口將數(shù)據(jù)傳輸?shù)娇蛻舳说囊环N有關(guān)技術(shù)因特爾的人員將多個(gè)傳感器連入互聯(lián)網(wǎng),對(duì)細(xì)因州"大鴨島"氣候進(jìn)行監(jiān)測(cè),第二年他們使用無(wú)入侵式和破壞式的方式完成了對(duì)敏感的野生動(dòng)物及其棲息地安裝監(jiān)測(cè)系統(tǒng)并進(jìn)行監(jiān)測(cè)。課題研究借用Netframework的技術(shù)設(shè)計(jì)的系統(tǒng)客戶端,從這方面看來(lái),很大程度上加強(qiáng)了程序的安全,結(jié)果令人失望--并沒(méi)有獲得理想的野生動(dòng)物的相關(guān)實(shí)時(shí)數(shù)據(jù)。韓國(guó)某所大學(xué)的一行人研發(fā)出了一種新型的檢測(cè)軟件,該軟件有一個(gè)Web客戶端,而且有無(wú)刷新的動(dòng)態(tài)采集技術(shù),把相關(guān)曲線的環(huán)境數(shù)據(jù)展現(xiàn)出來(lái),這個(gè)軟件的功能主要用Web端的申請(qǐng)模塊、數(shù)據(jù)儲(chǔ)存模塊、數(shù)據(jù)保護(hù)模塊來(lái)達(dá)到實(shí)時(shí)檢測(cè)的目的。葡萄牙馬德拉大學(xué)、英國(guó)的學(xué)者在葡萄牙薩洛蒂堡博物館展覽廳的適當(dāng)位置部署傳感器,利用無(wú)線網(wǎng)絡(luò)通信技術(shù)設(shè)計(jì)對(duì)博物館文物的環(huán)境安裝監(jiān)測(cè)系統(tǒng),收集溫度、濕度和光照強(qiáng)度指標(biāo)等信息。在該監(jiān)測(cè)系統(tǒng)的客戶端能夠?qū)崿F(xiàn)歷史數(shù)據(jù)的圖形化顯示,但不能對(duì)實(shí)時(shí)數(shù)據(jù)進(jìn)行圖形化顯示。Won-SukJang,WilliamM.Healy等人將無(wú)線傳感器網(wǎng)絡(luò)應(yīng)用到智能樓宇中,實(shí)現(xiàn)了樓宇環(huán)境的實(shí)時(shí)監(jiān)控與報(bào)警功能。主要采用無(wú)線傳感器節(jié)點(diǎn)對(duì)樓宇的通風(fēng)狀態(tài)、光照、空氣質(zhì)量等各項(xiàng)指祿進(jìn)行采集組網(wǎng),并將信息進(jìn)巧持久化處理與存儲(chǔ),通過(guò)節(jié)點(diǎn)的歷史信息來(lái)分析樓宇環(huán)境質(zhì)量。國(guó)內(nèi)研究現(xiàn)狀國(guó)內(nèi)對(duì)室內(nèi)居住環(huán)境監(jiān)測(cè)系統(tǒng)研究還停留在初級(jí)階段,目前室內(nèi)居住環(huán)境監(jiān)測(cè)系統(tǒng)應(yīng)用普及率不高。中國(guó)一些學(xué)者提出了采用物聯(lián)網(wǎng)檢測(cè)技術(shù)的室內(nèi)環(huán)境指標(biāo)參數(shù)監(jiān)測(cè)系統(tǒng),該系統(tǒng)將GPRS無(wú)線網(wǎng)絡(luò)應(yīng)用于室內(nèi)環(huán)境指標(biāo)監(jiān)測(cè)系統(tǒng),但沒(méi)有系統(tǒng)地分析物聯(lián)網(wǎng)用于室內(nèi)環(huán)境參數(shù)監(jiān)測(cè)系統(tǒng)??紤]到目前主要的監(jiān)測(cè)方法是有線傳輸數(shù)據(jù)進(jìn)行監(jiān)測(cè),還有人研究了物聯(lián)網(wǎng)技術(shù)領(lǐng)域內(nèi)的室內(nèi)環(huán)境參數(shù)在線監(jiān)測(cè)系統(tǒng)平臺(tái),以及物聯(lián)網(wǎng)技術(shù)的ZigBee無(wú)線網(wǎng)絡(luò),利用通信網(wǎng)絡(luò)提供室內(nèi)環(huán)境監(jiān)測(cè)服務(wù),但并沒(méi)有將物聯(lián)網(wǎng)和云存儲(chǔ)技術(shù)用于室內(nèi)環(huán)境在線監(jiān)測(cè)系統(tǒng)技術(shù),也沒(méi)有討論室內(nèi)環(huán)境參數(shù)與室內(nèi)環(huán)境舒適性之間的關(guān)系。國(guó)內(nèi)在室外環(huán)境監(jiān)測(cè)系統(tǒng)和室內(nèi)居住環(huán)境治理上有了一定的研究,而對(duì)室內(nèi)居住環(huán)境監(jiān)測(cè)系統(tǒng)方面的研究則很少。后來(lái)我國(guó)有人又對(duì)相關(guān)技術(shù)進(jìn)行理相應(yīng)的改造,通過(guò)大量部署的物聯(lián)網(wǎng)感知裝置,不斷完善相關(guān)技術(shù),為云計(jì)算服務(wù)平臺(tái)建立室外空氣質(zhì)量監(jiān)測(cè)預(yù)警系統(tǒng)提供數(shù)據(jù)收集功能,并整合物聯(lián)網(wǎng)技術(shù)。研究?jī)?nèi)容及方法研究?jī)?nèi)容本文主要的研究?jī)?nèi)容包括監(jiān)測(cè)用戶家中的溫度的高低、干濕程度、甲醛含量、光照強(qiáng)度、噪聲強(qiáng)度等問(wèn)題,并及時(shí)向用戶提供反饋,幫助用戶獲得一個(gè)更加舒適,安全的居住環(huán)境,同時(shí)也減輕了用戶的工作量。需要解決的主要問(wèn)題包含:數(shù)據(jù)的采集監(jiān)測(cè)、數(shù)據(jù)的存儲(chǔ)、向用戶提供反饋三方面,數(shù)據(jù)采集方面難點(diǎn)在于如何去采集用戶家中的這三項(xiàng)指標(biāo);數(shù)據(jù)監(jiān)測(cè)方面難點(diǎn)在于對(duì)于用戶家中的數(shù)據(jù)監(jiān)測(cè)的時(shí)長(zhǎng)間隔,如果長(zhǎng)時(shí)間處于監(jiān)測(cè)狀態(tài),那么能耗是一個(gè)必須要考慮到的問(wèn)題。另一方面如果間隔時(shí)間過(guò)長(zhǎng),又可能出現(xiàn)反饋不及時(shí)的現(xiàn)象;向用戶提供反饋方面則是通過(guò)什么樣的方式向用戶提供反饋。其中數(shù)據(jù)采集是主要問(wèn)題,是本課題的難點(diǎn)也是重點(diǎn)。在本課題開發(fā)的程序中,數(shù)據(jù)庫(kù)選擇的時(shí)MySQL的數(shù)據(jù)庫(kù)和Android原本配備的內(nèi)存極小的數(shù)據(jù)庫(kù)SQLite。MySQL這種數(shù)據(jù)庫(kù)普遍使用在存儲(chǔ)數(shù)據(jù)多的軟件上,存儲(chǔ)效果會(huì)較好等。研發(fā)方法(一)文獻(xiàn)研究法根據(jù)選定的畢業(yè)設(shè)計(jì)所研究的課題題目,去學(xué)校圖書館通過(guò)查找書籍、在網(wǎng)上搜索查閱相關(guān)的期刊文獻(xiàn)來(lái)分析課題需求以及后續(xù)工作如何展開。了解該系統(tǒng)應(yīng)該怎樣設(shè)計(jì)架構(gòu)、具備什么功能以及怎么實(shí)現(xiàn)等問(wèn)題(二)功能分析法通過(guò)前期的知識(shí)準(zhǔn)備,將要實(shí)現(xiàn)的功能列舉出來(lái),畫出功能模塊圖,數(shù)據(jù)流圖等,完成數(shù)據(jù)庫(kù)表的設(shè)計(jì),分析系統(tǒng)的可行性。最后形成軟件需求報(bào)告。(三)實(shí)驗(yàn)法在系統(tǒng)開發(fā)過(guò)程中,通過(guò)實(shí)驗(yàn)?zāi)M各個(gè)角色,對(duì)系統(tǒng)的可用性和完整性進(jìn)行評(píng)估,以確保系統(tǒng)有良好的用戶體驗(yàn)。系統(tǒng)開發(fā)技術(shù)路線當(dāng)下這個(gè)時(shí)候,系統(tǒng)的開發(fā)內(nèi)部整體的架構(gòu)分為C/S(客戶端/服務(wù)器)和另一個(gè)B/S(瀏覽器/服務(wù)器)兩種。C/S架構(gòu)中,客戶端將用戶請(qǐng)求提交給服務(wù)器,服務(wù)器接收到客戶端的數(shù)據(jù)后將處理后的結(jié)果再返回至客戶端,由客戶端將結(jié)果以特定的形式顯示給用戶,C/S架構(gòu)圖如圖1.1所示。圖1.1系統(tǒng)開發(fā)架構(gòu)圖C/S架構(gòu)通過(guò)利用兩端硬件的優(yōu)點(diǎn),可以將任務(wù)合理分配到客戶端與服務(wù)器來(lái)實(shí)現(xiàn),降低系統(tǒng)的通訊開銷,需要安裝專用的客戶端軟件。同時(shí),C/S架構(gòu)可以充分發(fā)揮客戶端終端設(shè)備的處理能力,很多工作可以在客戶端進(jìn)行處理再提交至服務(wù)器,可以降低服務(wù)器的負(fù)荷,提高響應(yīng)速度,對(duì)數(shù)據(jù)的儲(chǔ)存管理功能較為透明。C/S架構(gòu)擁有豐富的操作界面,具有更高的安全保證,通常運(yùn)用在局域網(wǎng)中,響應(yīng)速度更快。論文的組織結(jié)構(gòu)本文從軟件開發(fā)生命周期的角度闡述了系統(tǒng)開發(fā)過(guò)程,首先介紹了項(xiàng)目開發(fā)背景、意義及國(guó)內(nèi)外應(yīng)用現(xiàn)狀,然后簡(jiǎn)單介紹了系統(tǒng)的研究方法,以及系統(tǒng)開發(fā)的基本技術(shù)路線,再詳細(xì)介紹采用具體技術(shù)及開發(fā)工具,接著重點(diǎn)論述系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)、系統(tǒng)功能模塊的設(shè)計(jì)與實(shí)現(xiàn)過(guò)程,最后做系統(tǒng)測(cè)試以及總結(jié)和展望。共分為六部分,具體內(nèi)容安排如下:第一部分:引言。介紹系統(tǒng)開發(fā)背景及意義、國(guó)內(nèi)外應(yīng)用現(xiàn)狀、研究?jī)?nèi)容及方法,并概述系統(tǒng)開發(fā)技術(shù)路線以及論文組織結(jié)構(gòu)等內(nèi)容。第二部分:系統(tǒng)開發(fā)架構(gòu)及相關(guān)開發(fā)技術(shù)環(huán)境介紹。主要介紹開發(fā)系統(tǒng)用到的相關(guān)技術(shù)等,從開發(fā)實(shí)際所需情況分析,選擇適宜環(huán)境、工具等。第三部分:系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)。先對(duì)數(shù)據(jù)庫(kù)整體結(jié)構(gòu)設(shè)計(jì)進(jìn)行概述,再對(duì)各數(shù)據(jù)庫(kù)表進(jìn)行詳細(xì)分析并設(shè)計(jì)。第四部分:系統(tǒng)功能模塊設(shè)計(jì)與實(shí)現(xiàn)。從設(shè)計(jì)目標(biāo)、功能模塊設(shè)計(jì)等方面對(duì)系統(tǒng)進(jìn)行概要設(shè)計(jì)分析,并畫出了系統(tǒng)功能結(jié)構(gòu)圖,再介紹詳細(xì)的功能模塊,并實(shí)現(xiàn)。第五部分:系統(tǒng)測(cè)試。按照測(cè)試計(jì)劃對(duì)系統(tǒng)進(jìn)行測(cè)試。第六部分:參考文獻(xiàn)及結(jié)束語(yǔ)。羅列有關(guān)引用文件,并總結(jié)系統(tǒng)功能和優(yōu)點(diǎn),對(duì)軟硬件介紹及連接做出進(jìn)一步總結(jié),并對(duì)系統(tǒng)后續(xù)工作進(jìn)行展望。第七部分:致謝和附錄。對(duì)本篇論文提供過(guò)幫助的老師、同學(xué)和親人表示感謝,附錄中展示了我編寫的代碼及有關(guān)程序,便于老師批閱。2系統(tǒng)開發(fā)架構(gòu)及相關(guān)開發(fā)技術(shù)環(huán)境介紹2.1系統(tǒng)軟件架構(gòu)概述本課題研究的系統(tǒng)選擇的時(shí)MVP的架構(gòu),視圖層是在安卓六大布局的基礎(chǔ)上進(jìn)行研發(fā)的,選擇的是XML進(jìn)行設(shè)計(jì)相關(guān)的功能頁(yè)面。通過(guò)每一個(gè)模塊里面的Activity開始進(jìn)行控制層的開發(fā)。憑借SQLite數(shù)據(jù)庫(kù)和云數(shù)據(jù)庫(kù)當(dāng)做存儲(chǔ)庫(kù)。把系統(tǒng)在安卓操作系統(tǒng)的上面開展運(yùn)行,相關(guān)架構(gòu)如圖所示。2.1.1MVP系統(tǒng)架構(gòu)MVP體系結(jié)構(gòu)分為三個(gè)層次,活動(dòng)和片段被認(rèn)為是用于管理UI用戶界面的顯示層Presente是一個(gè)調(diào)用接口邏輯和請(qǐng)求Java的業(yè)務(wù)處理層,這是一個(gè)純的Java類,不涉及任何沒(méi)有關(guān)系的業(yè)務(wù)邏輯層,在Model層里有清晰的數(shù)據(jù)相關(guān)請(qǐng)求,數(shù)據(jù)源頭跟這三個(gè)層次的運(yùn)用順序是View優(yōu)于Presenter優(yōu)于Model,為了數(shù)據(jù)的安全絕對(duì)不可以反向進(jìn)行調(diào)用,而且不可跨級(jí)調(diào)用。用戶發(fā)送登錄請(qǐng)求,在View層首先進(jìn)行數(shù)據(jù)驗(yàn)證,然后在Activity中完成用戶名和密碼的驗(yàn)證,處理數(shù)據(jù)后,用DBUtil工具類操作數(shù)據(jù)庫(kù),將所需數(shù)據(jù)進(jìn)行層處理,然后進(jìn)入試行層系統(tǒng)的時(shí)序圖如圖所示。2.1.2MVP架構(gòu)應(yīng)用實(shí)例介紹大多數(shù)MVP模式的示例都使用登錄案例進(jìn)行介紹。因?yàn)檫@樣非常簡(jiǎn)單易用,而且可以呈現(xiàn)出MVP模式的特點(diǎn)。今天我們也以此例進(jìn)行學(xué)習(xí)。使用MVP的好處之一就是模塊職責(zé)劃分明顯,層次清晰。該例的結(jié)構(gòu)圖即可展現(xiàn)此優(yōu)點(diǎn)。從圖片中我們能夠發(fā)現(xiàn),MVP是有三個(gè)層次組成的,view層里面封裝了系統(tǒng)進(jìn)行登錄的一個(gè)抽象接口。然后在在對(duì)應(yīng)的登錄接口去實(shí)現(xiàn)接口:View層實(shí)現(xiàn)Presenter層需要調(diào)用的控件操作,方便Presenter層根據(jù)Model層返回的結(jié)果進(jìn)行操作View層進(jìn)行對(duì)應(yīng)的顯示。Presenter是用作Model和View之間交互的橋梁。從上圖的包結(jié)構(gòu)圖中可以看出,Presenter包含內(nèi)容:①接口,包含Presenter需要進(jìn)行Model和View之間交互邏輯的接口,以及上面提到的Model層數(shù)據(jù)請(qǐng)求完成后回調(diào)的接口。②接口實(shí)現(xiàn)類,即實(shí)現(xiàn)具體的Presenter類邏輯。當(dāng)Model層得到請(qǐng)求的結(jié)果,需要回調(diào)Presenter層,讓Presenter層調(diào)用View層的接口方法。登陸的Presenter的接口,實(shí)現(xiàn)類為L(zhǎng)oginPresenterImpl,完成登陸的驗(yàn)證,以及銷毀當(dāng)前view。由于presenter完成了二者的交互,那么肯定需要二者的實(shí)現(xiàn)類(通過(guò)傳入?yún)?shù)或者new)。presenter里面有個(gè)onSuccess,其在Presenter層實(shí)現(xiàn),給Model層回調(diào),更改View層的狀態(tài),確保Model層不直接操作View層。View和Model不直接交互,而是將“Presenter”用作View和Model之間的橋梁。其中,“Presenter”既包含對(duì)View層接口的引用,又包含對(duì)Model層的引用,而“View”層包含對(duì)“Presenter”層的引用。需要在View層界面中顯示特定數(shù)據(jù)時(shí),首先調(diào)用對(duì)Presenter層的引用,然后Presenter層調(diào)用Model層請(qǐng)求數(shù)據(jù),如果Model層數(shù)據(jù)加載成功,則調(diào)用Presenter層的回調(diào)方法通知加載Presenter層數(shù)據(jù),最后調(diào)用View。2.2系統(tǒng)硬件及協(xié)議介紹2.2.1UP-Magic210Linux價(jià)格便宜,性價(jià)比高,在X86、Alpha、Sparc、MIPS、PPC、MOTOROLA、NEC、ARM等硬件平臺(tái)上可以工作,可開源,或定制。介紹的硬件平臺(tái)基于ARM架構(gòu),是由于索契科技有限公司開發(fā)的up-magicwizards開發(fā)的一款面板,采用三星S5PV210嵌入式微處理器方便運(yùn)行l(wèi)inux2.6.x和Linux2.3.x內(nèi)核,支持QT/E、miniGUI等嵌入式圖形界面。它不僅適合作為計(jì)算機(jī)、軟件等方面的硬件。,也可參考PDA、智能手機(jī)和PMP的許多制造商和科研機(jī)構(gòu)來(lái)進(jìn)行設(shè)計(jì)。bochuangtechnology推出的嵌入式系統(tǒng)助手工具包UP-Magic210采用了基于Samsung的最新S5PV210嵌入式微處理器。S5PV210是32RISC微處理器,具備低成本、低耗電量及高效能等優(yōu)異品質(zhì),適用于行動(dòng)電話及廣泛的應(yīng)用程式開發(fā)。大腦皮層-A8核與ARM整合。S5PV210采用64位內(nèi)部總線結(jié)構(gòu),可為3G和3g通信服務(wù)提供卓越的性能。s50v210還包含許多強(qiáng)大的硬件,可提高各類任務(wù)執(zhí)行速度,例如音頻處理、動(dòng)態(tài)視頻處理、二維圖形、顯示和縮放等方面。它集成了多格式編解碼器(MFC's),并支持MPEG-1/2/4、H.263和H.264編碼和解碼以及VC1和Divx編碼和解碼。H/W編碼器支持NTSC和PAL模式下的實(shí)時(shí)視頻會(huì)議和電視輸出。對(duì)網(wǎng)絡(luò)監(jiān)聽有自己的設(shè)備(詳見說(shuō)明書三十一章)。其中我需要重點(diǎn)使用溫濕度傳感器、光照傳感器、紫外線傳感器、煙霧傳感器、大氣壓傳感器和網(wǎng)絡(luò)監(jiān)控協(xié)議等模塊,如果遇到突發(fā)狀況設(shè)備使用失靈,則可換用自行購(gòu)買的傳感器模塊代替。2.2.2通訊協(xié)議本系統(tǒng)的PC機(jī)、網(wǎng)關(guān)、協(xié)調(diào)器和節(jié)點(diǎn)采用統(tǒng)一的通信協(xié)議,數(shù)據(jù)都為小端模式,具體協(xié)議格式如下:位置位置信息長(zhǎng)度(字節(jié))數(shù)據(jù)信息備注0包頭20xAABB2長(zhǎng)度(Len)2長(zhǎng)度包括包頭和校驗(yàn)和4設(shè)備類型26網(wǎng)絡(luò)號(hào)20xFFFF8短地址2010命令111數(shù)據(jù)數(shù)據(jù)可變Len-1校驗(yàn)和累加和前10個(gè)字節(jié)為基本數(shù)據(jù),為固定內(nèi)容或者節(jié)點(diǎn)的對(duì)應(yīng)數(shù)據(jù),在之后的指令描述中,不在重復(fù)對(duì)基本的數(shù)據(jù)進(jìn)行說(shuō)明。具體節(jié)點(diǎn)如下表所示:位置位置信息長(zhǎng)度(字節(jié))數(shù)據(jù)信息備注10命令1211節(jié)點(diǎn)數(shù)1最多21個(gè)12節(jié)點(diǎn)列表數(shù)據(jù)節(jié)點(diǎn)數(shù)*7設(shè)備類型(2字節(jié))網(wǎng)絡(luò)號(hào)(2字節(jié))短地址(2字節(jié))在線狀態(tài)(1字節(jié))每個(gè)節(jié)點(diǎn)有7字節(jié)的信息Len-1校驗(yàn)和累加和采集類節(jié)點(diǎn)只有上行數(shù)據(jù),命令為0x1e,十進(jìn)制30。采集的數(shù)據(jù)說(shuō)明如下:節(jié)點(diǎn)名稱Data字段長(zhǎng)度說(shuō)明氣壓計(jì)2字節(jié)真實(shí)值放大10倍。[80.0-200.0]Kpa光照度2字節(jié)數(shù)據(jù)不放大。[0-65535]lx溫濕度4字節(jié)溫度和濕度各占2字節(jié),有符號(hào)類型,真實(shí)值放大10倍。溫度[-40.0-120.0]℃濕度[0.0-100.0]%RFID4字節(jié)卡ID,顯示的時(shí)候用十六進(jìn)制顯示HCHO&CO22字節(jié)數(shù)據(jù)不放大。CO2[400~5000]ppmHCHO[0~400]ppbO21字節(jié)真實(shí)值放大10倍。(0.0-25.0)%VOL噪聲2字節(jié)真實(shí)值放大10倍。[0.0-120.0]dB報(bào)警類節(jié)點(diǎn)只有上行報(bào)警指令,命令號(hào)為0x14,十進(jìn)制20。報(bào)警指令如下:AABB0D00E204D007000014003A收到命令號(hào)為0x14的數(shù)據(jù),表示節(jié)點(diǎn)報(bào)警,數(shù)據(jù)0x00可忽略。2.3系統(tǒng)開發(fā)相關(guān)技術(shù)介紹2.3.1.開發(fā)語(yǔ)言Android系統(tǒng)平臺(tái)的上層開發(fā)語(yǔ)言是主流的Java語(yǔ)言,強(qiáng)大的內(nèi)存管理和垃圾回收機(jī)制給開發(fā)者帶來(lái)了便利,使得開發(fā)者不必為系統(tǒng)的內(nèi)存管理而耗費(fèi)精力,能夠更專注于業(yè)務(wù)功能的開發(fā)。正是因?yàn)楸敬芜x用的是Java語(yǔ)言進(jìn)行開發(fā),因此我們還應(yīng)該配置Java開發(fā)運(yùn)行環(huán)境。本次課題研究的程序開發(fā)使用的是JDK1.8的版本。2.3.2.AndroidSDK:Android.SDK(softwaredevelopmentkit)是國(guó)外的谷歌公司相應(yīng)對(duì)應(yīng)Android開發(fā)研發(fā)的配套的開發(fā)工具包,可以幫助開發(fā)者更高效的完成開發(fā)工作。本次系統(tǒng)開發(fā)使用的是SDK21版本,對(duì)應(yīng)Android5.0版本,并且能夠?qū)Ω甙姹具M(jìn)行兼容。用到什么用到了什么作用2.3.3.SQLite數(shù)據(jù)庫(kù):SQLite是繼ACID之后的一個(gè)輕量級(jí)數(shù)據(jù)庫(kù)和關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),它包含在一個(gè)相對(duì)較小的C庫(kù)中。這個(gè)系統(tǒng)只需要在移動(dòng)安裝系統(tǒng)上運(yùn)行,不用聯(lián)網(wǎng)就可以使用,所以有Android系統(tǒng)自帶的SQLite數(shù)據(jù)庫(kù),而pocketSQLite也可以支持大量的數(shù)據(jù)存儲(chǔ),簡(jiǎn)單方便,不需要考慮網(wǎng)絡(luò)問(wèn)題就可以連接其他服務(wù)器的遠(yuǎn)程數(shù)據(jù)庫(kù)。2.3.4.開發(fā)的工具:AndroidStudio:他是一個(gè)集成了所有Android開發(fā)環(huán)境的開發(fā)工具,使用的范圍很廣,此工具有效避免了以前類似的Eclipse+ADT的復(fù)雜配置。簡(jiǎn)化了開發(fā)流程。具有代碼智能提示功能,提高了開發(fā)效率。AVDmanager:Android模擬器的管理工具,利用模擬器在Android系統(tǒng)上模擬軟件運(yùn)行,方便程序調(diào)試,使沒(méi)有Android珍奇器的開發(fā)人員也能完成Android應(yīng)用程序的開發(fā)。Sdkmanager:一種Sdk管理工具,用于管理AndroidSDK的更新和下載。SQLiteExpert:SQLite資料庫(kù)視覺化工具,可讓您更清楚地了解表格結(jié)構(gòu)的設(shè)計(jì)。BMOB:BMOB云是國(guó)內(nèi)第一個(gè)專注于移動(dòng)應(yīng)用程序服務(wù)器租賃云服務(wù)的平臺(tái),提供實(shí)時(shí)數(shù)據(jù)和文件存儲(chǔ)功能,使“云與端”應(yīng)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 滬科版八年級(jí)數(shù)學(xué)上冊(cè)專項(xiàng)素養(yǎng)綜合練(十)等腰三角形中作輔助線的六種常用方法課件
- 北師大版八年級(jí)生物上冊(cè)第5單元生物圈中的動(dòng)物和微生物第15章動(dòng)物的運(yùn)動(dòng)第2節(jié)第1課時(shí)骨和骨連結(jié)課件
- 七年級(jí)三種時(shí)態(tài)語(yǔ)法練習(xí)modification
- 部編版五年級(jí)上冊(cè)語(yǔ)文期中綜合檢測(cè)
- 五年級(jí)的品德與社會(huì)教育課件
- 2024年四川省安全員B證考試題庫(kù)附答案
- 管理會(huì)計(jì)與財(cái)務(wù)會(huì)計(jì)
- 河沙碎石采購(gòu)合同模板
- 第一課件教學(xué)網(wǎng)
- 租賃公租房合同模板
- 安全技術(shù)作業(yè)指導(dǎo)書
- 勞動(dòng)主題作文素材 課件24張 高中語(yǔ)文統(tǒng)編版必修上冊(cè)第二單元
- 小區(qū)突發(fā)事件應(yīng)急預(yù)案處理方案
- 高三家長(zhǎng)會(huì)班主任發(fā)言稿
- 繪畫心理學(xué)課件
- 國(guó)殤-完整版獲獎(jiǎng)?wù)n件
- 血管瘤和脈管畸形課件
- 消防栓月點(diǎn)檢表
- 關(guān)于職業(yè)技能鑒定成績(jī)復(fù)核的管理規(guī)定
- 部編版《蜀道難》課件(61張)
- 抖音公會(huì)掛靠合作協(xié)議(法務(wù)審核最新版)
評(píng)論
0/150
提交評(píng)論