南京大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)系 劉繼元
?
基于樹莓派的物聯(lián)網(wǎng)應(yīng)用
南京大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)系 劉繼元
【摘要】隨著社會(huì)經(jīng)濟(jì)的發(fā)展,互聯(lián)網(wǎng)也已經(jīng)接入了千家萬(wàn)戶,物聯(lián)網(wǎng)概念逐漸興起。文章主要討論了通過(guò)樹莓派實(shí)現(xiàn)的物聯(lián)網(wǎng)的應(yīng)用場(chǎng)景如家庭、企業(yè)和社會(huì)組織等,也討論了物聯(lián)網(wǎng)發(fā)展面臨的挑戰(zhàn)與可行的解決方案。
【關(guān)鍵詞】樹莓派;物聯(lián)網(wǎng);智能家居
互聯(lián)網(wǎng)是當(dāng)今信息社會(huì)信息傳播的主要載體,隨著互聯(lián)網(wǎng)對(duì)社會(huì)的影響日漸加深,把現(xiàn)實(shí)中的實(shí)物接入互聯(lián)網(wǎng),使其信息化的想法便自然而然的誕生了。人們通過(guò)電子標(biāo)簽將真實(shí)的物體接入網(wǎng)絡(luò),這樣就能通過(guò)網(wǎng)絡(luò)統(tǒng)一地對(duì)設(shè)備進(jìn)行集中管理、控制,最終對(duì)收集來(lái)大數(shù)據(jù)進(jìn)行分析處理,更能使許多重大改變成為可能,如更精準(zhǔn)的局部天氣預(yù)測(cè)、犯罪防治和疾病監(jiān)控等。市面上有很多廉價(jià)易得的設(shè)備可以實(shí)現(xiàn)物聯(lián)網(wǎng)的需求,而且實(shí)現(xiàn)起來(lái)非常簡(jiǎn)便,如 Arduino、樹莓派等。本文主要介紹的是基于樹莓派所實(shí)現(xiàn)的物聯(lián)網(wǎng)。
樹莓派(英語(yǔ):Raspberry Pi)是英國(guó)的樹莓派基金會(huì)開(kāi)發(fā)的小型電腦,其最初目的是為學(xué)校的計(jì)算機(jī)教育提供廉價(jià)的設(shè)備,但是因?yàn)樗阋说膬r(jià)格,信用卡般的大小和強(qiáng)大的性能,迅速被極客所看中,在其基礎(chǔ)上搭建了各種平臺(tái)以實(shí)現(xiàn)他們的創(chuàng)意。對(duì)于物聯(lián)網(wǎng)應(yīng)用,樹莓派的優(yōu)勢(shì)可以分為兩大方面:硬件方面和軟件方面。
1.1硬件優(yōu)勢(shì)
樹莓派目前已發(fā)展到第三代,因此在這里用最新的樹莓派3的B版來(lái)介紹樹莓派的硬件優(yōu)勢(shì)。眾所周知,硬件設(shè)備是一切的基礎(chǔ),一切創(chuàng)意均無(wú)法脫離硬件來(lái)實(shí)現(xiàn)。而樹莓派設(shè)計(jì)之初是作為一臺(tái)變成用個(gè)人電腦所設(shè)計(jì)的,所以有相當(dāng)強(qiáng)大的性能。樹莓派3的CPU 為1.2GHz的64位4核的ARM Cortex-A53,相比于第一代樹莓派性能提升了十倍,而其他的物聯(lián)網(wǎng)設(shè)備一般鮮有搭載主頻超過(guò)600MHz 的CPU。強(qiáng)大的處理器性能使得樹莓派具有更強(qiáng)的數(shù)據(jù)處理能力,能夠流暢地執(zhí)行的多線程任務(wù),從而滿足用戶的多種需求。樹莓派提供100M網(wǎng)口和4個(gè)USB 2.0接口,使其能夠輕松地接入數(shù)據(jù)網(wǎng)絡(luò),而第三代樹莓派更是集成了Wi-Fi芯片和藍(lán)牙芯片,這更為樹莓派接入無(wú)線網(wǎng)絡(luò),搭建物聯(lián)網(wǎng)提供了便利。作為一個(gè)物聯(lián)網(wǎng)設(shè)備,其還提供了大量的GPIO針腳和SPI總線用于連接各式傳感器和電機(jī)等并對(duì)其進(jìn)行編程,提供了攝像頭和TFT顯示器接口,有HDMI視頻接口和3.5英寸音頻接口等,不一而足。此外,還有很多商家推出了擴(kuò)展板為其提供更加豐富的功能。綜上所述,樹莓派擁有著非常強(qiáng)勁的性能和多種多樣的接口,而其價(jià)格并不昂貴,所以完全能夠勝任物聯(lián)網(wǎng)硬件平臺(tái)這一任務(wù)。
1.2軟件優(yōu)勢(shì)
任何平臺(tái)的勝出都脫離不開(kāi)軟件的支持,而樹莓派最大的優(yōu)勢(shì)正是軟件上的 。到目前為止樹莓派社區(qū)中發(fā)布的操作系統(tǒng)版本已經(jīng)達(dá)到幾十種,包括Fedora,Ubuntu Mate,Windows IoT等,而作為其官方默認(rèn)推薦的操作系統(tǒng) Raspbian 是開(kāi)源Linux操作系統(tǒng)的發(fā)行版Debian的分支,其軟件庫(kù)里的軟件包數(shù)量已經(jīng)超過(guò)了35萬(wàn),已經(jīng)形成了一個(gè)生態(tài)系統(tǒng)。這其中自然包括對(duì)Python、Java、C等廣泛應(yīng)用的語(yǔ)言的支持,這無(wú)疑為后續(xù)的物聯(lián)網(wǎng)軟件開(kāi)發(fā)提供了便利。
任何物聯(lián)網(wǎng)的應(yīng)用都是需要與具體的場(chǎng)景相結(jié)合的,不同的應(yīng)用場(chǎng)景可能需要不同的物聯(lián)網(wǎng)接入方式,而樹莓派作為一個(gè)簡(jiǎn)易通用的物聯(lián)網(wǎng)接入,更適合那些小型的應(yīng)用場(chǎng)景,例如家庭、企業(yè)研發(fā)展示和社會(huì)組織等。
2.1家庭應(yīng)用
目前而言,大公司所生產(chǎn)的智能家居設(shè)備大多價(jià)格昂貴而且功能相對(duì)簡(jiǎn)陋,而基于樹莓派所自定義的智能家居在這種情況下便成為了可行的替代。
家庭的物聯(lián)網(wǎng)首先可以應(yīng)用于室內(nèi)環(huán)境的監(jiān)控,室內(nèi)環(huán)境的監(jiān)控自然包括可以安裝攝像頭進(jìn)行視頻監(jiān)控,例如安裝了攝像頭和開(kāi)源軟件motion之后,樹莓派可以錄制監(jiān)控畫面的變化,motion提供事件腳本允許用戶自定義發(fā)現(xiàn)畫面時(shí)的動(dòng)作,這樣這些異常就可以通過(guò)郵件、軟件推送等形式通知業(yè)主,從而達(dá)到防盜的目的。室內(nèi)環(huán)境監(jiān)控也包括亮度、溫度、濕度、空氣質(zhì)量傳感器獲得的數(shù)據(jù)等,這些數(shù)據(jù)將用于接下來(lái)的智能家居的自動(dòng)化控制。例如,可以通過(guò)溫度傳感器獲得的家庭的溫度來(lái)判斷是否需要開(kāi)啟空調(diào),同理也可以監(jiān)測(cè)濕度控制加濕器,監(jiān)測(cè)空氣質(zhì)量來(lái)啟動(dòng)空氣凈化器等,在其基礎(chǔ)上,更可以結(jié)合上面提到的視頻監(jiān)控,從而達(dá)到有人的時(shí)候才開(kāi)始工作的節(jié)能這一目標(biāo)。
基于樹莓派的自定義家居更能滿足個(gè)性化需求。筆者曾基于樹莓派搭建了一個(gè)家用小車型機(jī)器人,可以跟著使用手機(jī)等無(wú)線設(shè)備的人移動(dòng),提供更好的Wi-Fi信號(hào)。大致的構(gòu)造是將樹莓派置于一個(gè)四電機(jī)小車上,小車的電機(jī)由L298N電機(jī)驅(qū)動(dòng)板驅(qū)動(dòng),樹莓派的GPIO對(duì)驅(qū)動(dòng)板進(jìn)行控制。因?yàn)槭褂玫氖菢漭啥?,所以需要額外的無(wú)線網(wǎng)卡,然后通過(guò)無(wú)線網(wǎng)卡完成家里無(wú)線寬帶的橋接。在這之后就可以編寫程序,識(shí)別接入這個(gè)小車AP的無(wú)線信號(hào)的強(qiáng)弱,根據(jù)信號(hào)強(qiáng)弱自主移動(dòng),實(shí)現(xiàn)信號(hào)的最優(yōu)化。之后還加裝了紅外傳感器用于避障,攝像頭用于遠(yuǎn)程監(jiān)控,這樣就打造了一個(gè)簡(jiǎn)易的小車機(jī)器人。
2.2企業(yè)應(yīng)用
在物聯(lián)網(wǎng)時(shí)代,線上與線下相結(jié)合成為了企業(yè)需要認(rèn)真考慮的重要問(wèn)題。樹莓派可以幫助企業(yè)打造新型的產(chǎn)品,作為一個(gè)小型的可接入網(wǎng)絡(luò)的硬件實(shí)體,為線上與線下相結(jié)合提供了可能,憑借其靈活性和可擴(kuò)展性成為物聯(lián)網(wǎng)產(chǎn)品研發(fā)的助力。通過(guò)樹莓派,企業(yè)可以容易地驗(yàn)證設(shè)計(jì)方案,便捷地做出試驗(yàn)作品,這使得產(chǎn)品在研發(fā)階段的時(shí)間成本大大地降低了 。
對(duì)于不生產(chǎn)物聯(lián)網(wǎng)設(shè)備的企業(yè),同樣也可作為企業(yè)展示的一部分使用。樹莓派擁有體積小易于布置的特點(diǎn),可以為企業(yè)搭建可以移動(dòng)的展示平臺(tái)。例如汽車經(jīng)銷商在車展上可以通過(guò)樹莓派所搭建的系統(tǒng)來(lái)追蹤試乘試駕車,記錄行車參數(shù),同時(shí)為試駕人員進(jìn)行語(yǔ)音通知提醒、車輛介紹等,每個(gè)樹莓派接入互聯(lián)網(wǎng)之后有自己唯一的IPv6地址用以區(qū)分,而樹莓派發(fā)回來(lái)的信息只需要一臺(tái)筆記本電腦就可以進(jìn)行統(tǒng)合。在一臺(tái)車輛出售后,這些樹莓派也可以簡(jiǎn)單地移動(dòng)到另一臺(tái)車輛上繼續(xù)服務(wù)。
2.3社會(huì)組織應(yīng)用
教育組織自然可以利用樹莓派進(jìn)行相關(guān)的計(jì)算機(jī)科學(xué)普及教育活動(dòng),這是樹莓派的本業(yè)就不再贅述了。此外,樹莓派還可以被環(huán)境保護(hù)組織用于環(huán)境的監(jiān)控,并通過(guò)這些小型氣象站獲得的信息更精確的進(jìn)行天氣預(yù)測(cè),目前也有很多關(guān)于用樹莓派搭建氣象站的相關(guān)文獻(xiàn)。
樹莓派也可以被社會(huì)福利機(jī)構(gòu)所用于社區(qū)服務(wù),例如現(xiàn)在隨著社會(huì)的老齡化,空巢老人已經(jīng)成為了一個(gè)急需解決的社會(huì)熱點(diǎn)問(wèn)題,當(dāng)獨(dú)居老人發(fā)生意外,社區(qū)很難及時(shí)發(fā)現(xiàn),因此社區(qū)需要一個(gè)對(duì)空巢老人的護(hù)理方案。樹莓派是這一問(wèn)題的一種可行的解決方案,樹莓派可以作為一個(gè)護(hù)理者進(jìn)駐老人家中,將老人的住所接入互聯(lián)網(wǎng),通過(guò)語(yǔ)音識(shí)別和視頻圖像分析實(shí)時(shí)守護(hù)老人。在平時(shí)老人可以與樹莓派進(jìn)行語(yǔ)音交互,老人通過(guò)語(yǔ)音想樹莓派發(fā)出指示,樹莓派幫助老人管理老人不擅長(zhǎng)操作的高科技電子產(chǎn)品,而當(dāng)老人出現(xiàn)意外時(shí),樹莓派可以通過(guò)圖像識(shí)別及時(shí)發(fā)現(xiàn)異常狀態(tài),并通知到社區(qū)中心,使得老人獲得及時(shí)的救助 。
物聯(lián)網(wǎng)作為一個(gè)發(fā)展中的事物,尚有很多亟待改善的地方。在筆者看來(lái),物聯(lián)網(wǎng)目前主要有下面三個(gè)方面的問(wèn)題:可靠性問(wèn)題、安全問(wèn)題以及標(biāo)準(zhǔn)不統(tǒng)一問(wèn)題。
3.1可靠性問(wèn)題
可靠性是物聯(lián)網(wǎng)需要解決的重要問(wèn)題,不解決可靠性問(wèn)題,物聯(lián)網(wǎng)設(shè)備永遠(yuǎn)無(wú)法被市場(chǎng)所認(rèn)可。對(duì)于個(gè)人電腦上軟件的不穩(wěn)定性,因?yàn)闆](méi)有直接的損失人們大可以一笑置之,而物聯(lián)網(wǎng)設(shè)備則有所不同,物聯(lián)網(wǎng)與將實(shí)物接入了網(wǎng)絡(luò),所以一旦發(fā)生問(wèn)題可能會(huì)即時(shí)地影響人們周圍的環(huán)境,例如曾經(jīng)多次發(fā)生過(guò)Nest讓家里變成冰窖的事故。Nest是美國(guó)的一款智能恒溫器,能夠自動(dòng)學(xué)習(xí)人們?cè)O(shè)定溫度的習(xí)慣從而代替人們來(lái)調(diào)溫度,然而這款產(chǎn)品曾多次出現(xiàn)故障導(dǎo)致錯(cuò)誤的溫度調(diào)整,發(fā)生一覺(jué)醒來(lái)房間變成冰窖或者變成火爐的事故 。智能家居看起來(lái)很美好,但是容錯(cuò)率極低,非常小的失敗就足以摧毀人們的使用信心 。
物聯(lián)網(wǎng)設(shè)備的可靠性應(yīng)該向交通工具看齊,并且全部依靠程序自己解決是十分危險(xiǎn)的,故需要能夠便捷切換到備用手動(dòng)解決方案。前文所提到的Nest恒溫器為了外觀設(shè)計(jì)上的流暢美觀減少了實(shí)體按鈕,所以導(dǎo)致解決問(wèn)題會(huì)變得繁瑣,為了重啟Nest需要九步操作。如果一個(gè)智能設(shè)備的故障率高于其他同類非智能設(shè)備,解決故障的難度又高于非智能同類設(shè)備,那這款智能家具還不應(yīng)該投入市場(chǎng)。現(xiàn)階段而言,智能設(shè)備的故障率想要低于同類非智能設(shè)備還很難做到,但是至少應(yīng)該讓人能夠便捷地接管失控的設(shè)備,即可以作為同類的非智能設(shè)備使用,以恒溫器為例的話就是應(yīng)該要做到能夠手動(dòng)調(diào)節(jié)開(kāi)關(guān)、溫度、風(fēng)速等而不會(huì)被程序自動(dòng)更改。
3.2安全性問(wèn)題
人們能通過(guò)物聯(lián)網(wǎng)獲取更多的信息,然而這些信息的失竊必然會(huì)帶來(lái)極大損失。黑客可能通過(guò)物聯(lián)網(wǎng)設(shè)備來(lái)獲取地理位置,監(jiān)控視頻資料等隱私信息,甚至可能侵入設(shè)備,最終造成無(wú)法預(yù)料的損失,所以網(wǎng)絡(luò)安全也是物聯(lián)網(wǎng)發(fā)展的重中之重。
目前的物聯(lián)網(wǎng)設(shè)備管理過(guò)于分散,各個(gè)廠家的設(shè)備均要直接接入互聯(lián)網(wǎng),終歸有質(zhì)量差強(qiáng)人意易被攻破的,所以筆者認(rèn)為安全問(wèn)題的一個(gè)基本解決思路就是將物聯(lián)網(wǎng)設(shè)備統(tǒng)合之后在本地進(jìn)行管理,盡量減少不必要的互聯(lián)網(wǎng)接入。如果需要互聯(lián)網(wǎng)接入也應(yīng)該由本地的控制中心統(tǒng)一接入的,從而將分散的安全問(wèn)題集中起來(lái),只需要加強(qiáng)接入網(wǎng)絡(luò)的控制中心的安全防御即可。因此,筆者認(rèn)為使用路由器充當(dāng)智能家居的控制中心是一個(gè)很好的選擇,路由器是所有智能設(shè)備網(wǎng)絡(luò)的核心,智能路由器近幾年也在逐漸發(fā)展,所以這一解決方案有很強(qiáng)的可行性。但目前智能路由器仍不具備較強(qiáng)的實(shí)用性,可以暫時(shí)將控制中心同互聯(lián)網(wǎng)分離開(kāi)來(lái),由路由器充當(dāng)?shù)谝粚臃阑饓?,而其他設(shè)備如樹莓派在路由器后充當(dāng)控制中心,在其上增加完善的安全防御措施,并統(tǒng)合管理其他物聯(lián)網(wǎng)設(shè)備。
3.3標(biāo)準(zhǔn)不統(tǒng)一問(wèn)題
標(biāo)準(zhǔn)不統(tǒng)一是指當(dāng)前物聯(lián)網(wǎng)設(shè)備接入網(wǎng)絡(luò)的方式各不相同,設(shè)備標(biāo)記方法也不同,進(jìn)行通信的方式更是千差萬(wàn)別,這無(wú)疑為物聯(lián)網(wǎng)設(shè)備的統(tǒng)一控制增加了難度,從而降低了系統(tǒng)整體的安全性和可維護(hù)性。對(duì)于標(biāo)記方法,通過(guò)IPv6地址對(duì)物聯(lián)網(wǎng)設(shè)備進(jìn)行統(tǒng)一編制是一個(gè)很好的選擇,IPv6技術(shù)正在慢慢普及,其地址的數(shù)量足夠?yàn)樗形锫?lián)網(wǎng)設(shè)備分配唯一的地址。而對(duì)于通信標(biāo)準(zhǔn)這一點(diǎn),雖然已經(jīng)有一些組織和公司發(fā)布了自己的協(xié)議,但是大多是自說(shuō)自話,得到相對(duì)廣泛應(yīng)用的也只有ZigBee這些網(wǎng)絡(luò)層協(xié)議,所以只能寄希望于權(quán)威組織能夠早日發(fā)布應(yīng)用層的協(xié)議標(biāo)準(zhǔn),解決目前的各個(gè)廠家各自為戰(zhàn)的混亂局面,為用戶減輕管理負(fù)擔(dān)。
本文對(duì)基于樹莓派的物聯(lián)應(yīng)用場(chǎng)景進(jìn)行了論述并簡(jiǎn)要的分析了當(dāng)前物聯(lián)網(wǎng)所面臨的挑戰(zhàn)與可能的解決方案。根據(jù)分析,基于樹莓派的物聯(lián)網(wǎng)可以適應(yīng)多種應(yīng)用場(chǎng)景,能夠滿足用戶個(gè)性化的物聯(lián)網(wǎng)需求。而對(duì)于物聯(lián)網(wǎng)的前景,其雖面領(lǐng)諸多挑戰(zhàn),但是可以預(yù)見(jiàn)這些是能夠預(yù)防或者解決。相信在將來(lái)物聯(lián)網(wǎng)一定會(huì)得到普及,推動(dòng)社會(huì)信息化,提高社會(huì)生產(chǎn)力。
參考文獻(xiàn)
[1]Maksimovi? M, Vujovi? V, Davidovi? N, et al. Raspberry Pi as Internet of things hardware: performances and constraints[J].design issues, 2014,3:8.
[2]Jain S, Vaibhav A, Goyal L. Raspberry Pi based interactive home automation system through E-mail[C]//Optimization, Reliabilty, and Information Technology (ICROIT), 2014 International Conference on. IEEE,2014:277-280.
[3]徐子豪,張騰飛.基于語(yǔ)音識(shí)別和無(wú)線傳感網(wǎng)絡(luò)的智能家居系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2012,20(1):180-182.
[4]劉強(qiáng),崔莉,陳海明.物聯(lián)網(wǎng)關(guān)鍵技術(shù)與應(yīng)用[J].計(jì)算機(jī)科學(xué),2010,6.
[5]嚴(yán)萍,張興敢,柏業(yè)超等.基于物聯(lián)網(wǎng)技術(shù)的智能家居系統(tǒng)[J].南京大學(xué)學(xué)報(bào):自然科學(xué)版,2012, 48(1):26-32.
劉繼元(1995—),男,遼寧沈陽(yáng)人,南京大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)系大學(xué)本科在讀,研究方向:計(jì)算機(jī)工程。
作者簡(jiǎn)介: