图解物联网---物联网服务的系统开发
物聯網系統化就是應用傳感器等各類設備來形成一個持續解決問題的機制。也就是說,不只用傳感器進行測量,還通過對測量數據的監測和分析來發現能量損耗,預測機器故障,從而創造出新的信息和價值。
對物聯網服務而言,系統的主體是設備,因此在進行系統開發時,也有一些是設備方面需要留意的地方而
1、物聯網系統開發的問題
物聯網服務需要多方面的知識。除了在服務器端運行的應用程序外,還需要掌握構成設備的硬件、嵌入式軟件、連接設備與傳器的網關、無線通信技術和網絡等多方面的知識。
2、物聯網系統開發的特征
在開發物聯網服務時有一點不能忘記,即“物聯網服務是一種包含設備的服務”。
易于增加所管理設備的數量和設置地點的數量
物聯網服務由傳感器終端等多臺設備及集合這些設備的網關終端構成。
例如在辦公大樓或是商業樓層中,對溫度、濕度、二氧化碳濃度等進行環境感測時,樓層的場所不同,測量到的值也有差異,因此不能光感測樓層的某一處,還要對多個場所進行感測,這樣一來就需要在一個房間里設置數個傳感器終端。
設置在人們平時無法觸及的地方
辦公室和商業設施里的設備和網關大多都設置在平時人們無法觸及的屋頂或者墻壁等處,因此應用這些設備并不容易。如果要更換設置場所或變更終端內的軟件,不僅需要請求設備管理者進行更換,還需要與設置場所的管理人員協調日程,有些情況下還需要跟承包商進行協調。
存在無線通信部分
一般來說,相較有線通信而言,無線通信的通信品質較低,設備有可能會因為障礙物的設置等現場環境的變化而連接不上通信線路,線路也有可能會因為周邊無線電波的干擾而變得不穩定。
3、驗證假設階段
此階段進行的是效果驗證和技術驗證,效果驗證通過構建小規模的原型和導入服務來驗證,技術驗證的目的則是實現物聯網服務。
效果驗證是物聯網設備感測到的數據,分析創造出的信息是否擁有與成本相符的價值。技術驗證則針對的是構成物聯網服務的服務器和設備,尤其對于設備,一定要事先仔細驗證。因為物聯網服務的主體是由設備進行的感測和反饋,如果設備無法完成目標動作,那么系統本身也就不能成立。
在驗證假設階段需要謹慎地選擇傳感器終端等設備。我們將此階段的實施要點歸納為以下幾點。
選定設備
整理設備需求
調查、調配、試作設備,驗證設備的運行情況
設計設備的設置
設計設備的維修與使用
服務的原型開發與使用
選定運營商網絡
開發網關和服務器端系統的原型
從設備和系統的測試運行中提煉問題
驗證導入效果
驗證傳感器和驅動的導入效果
4、系統開發階段
此階段基于驗證假設環節的原型開發和驗證結果來調配在實際環境中將要用到的設備,以及進行服務器端系統的開發。特別是,在使用服務的過程中很有可能要追加設備和設置地點,或是涉及獲取數據的存儲容量和存儲時間等數據使用方面的內容,所以非常有必要跟多個利益相關方進行磋商。如果要把在事先驗證階段構建的原型按原樣擴大,那么就需要在事先驗證階段就預見原型在實際環境下的運行,確保系統的品質,設計出一個易于追加設備的系統。
5、維護應用階段
在物聯網服務的應用中,除了信息系統,還要運用并管理設置設備和網關終端。
如下所示,在應用管理設備的過程中不僅要監測和修復設備異常,如下所示,在應用管理設備的過程中不僅要監測和修復設備異常,
監測設備的狀態、變更設置、修理或更換設備
追加新設備
監測系統狀態
運用積累的數據
采集和應用數據
6、樓層環境監控系統
系統概要
首先要為大家介紹的是旨在提升以辦公室為主的職場環境的舒適度,對樓層環境進行監控的系統(圖5.4)
在房間里設置無線環境傳感器,實時采集數據,并將測量數據可視化,這就是監控負責的內容。可視化會成為我們根據測量結果來作出判斷的依據,如在Web 頁面上顯示數據,根據測量狀況控制LED 照明。
具體的監控內容如下所示。
● 測量樓層內的溫度以調整空調設置
● 測量不適指數以預防流感
● 測量二氧化碳濃度以防止注意力下降
● 測量廁所單間門口的排隊狀況以削減排隊上廁所的時間
測量樓層內的溫度以調整空調設置
辦公室的空調溫度夏天最好設置為28℃,冬天則設置在22℃為宜。然而即使設置在28℃,實際上有時室溫也會超過28℃而讓人感覺到熱,另外室溫也會根據座位的位置而有所不同,因此需要定量測量樓層環境的室溫,將測量結果可視化。
測量不適指數以預防流感
每年從深秋轉入初冬這段時期,都是一個流感多發的時期,員工有可能會患上流感。因此需要根據溫度和濕度計算出不適指數,由于這個指標與流感易感性之間有聯系,所以可以運用它持續監控不適指數,一旦超過閾值就發出警報,并要求予以應對。
測量二氧化碳濃度以防止注意力下降
從提升工作效率的觀點來看,二氧化碳濃度和人的注意力之間也存在著一定的關系。據美國研究團隊實驗認定,二氧化碳濃度超過1000 ppm時人的思考能力就會下降,達到2500 ppm 時思考能力則會明顯下降。此外,厚生勞動省A 制定的建筑物環境衛生管理基準也提倡房間內的二氧化碳濃度以不超過1000 ppm 為宜。因此我們用二氧化碳濃度傳感器來監控了房間中二氧化碳的濃度。在樓層和房間這種密閉空間內,人會不斷呼出二氧化碳,從而導致二氧化碳的濃度不斷上升。由測量值可知,二氧化碳的濃度會根據辦公室內的人數和換氣設備的運行情況而產生變化
(圖5.5)。因此二氧化碳濃度偏高時,監控系統就會提醒人們注意換氣。
測量廁所隔間的排隊狀況以削減排隊上廁所的時間
就改善職場環境方面,這里搜集了一些意見,其中有人抱怨男廁所隔間要排很久隊。停下工作(從座位上站起來)去上廁所時,如果所有廁所隔間都有人在用,就只能回到自己的座位上等會兒再去,這樣就白跑了一趟。就白跑這一趟倒無所謂,不過要是連續多次在座位和廁所之間往返,那就不僅浪費了很多時間,還會讓人感到壓力很大。如果先用開關傳感器來測量廁所的排隊狀態,再把廁所當前的排隊狀況反映到Web 上,同時相應控制LED 照明,這樣一來,不用打開瀏覽器就能實時從視覺上感知當前的廁所排隊狀況。這個機制能節省在座位和廁所之間往返所浪費的時間,減輕往返所帶來的壓力。
系統結構
本系統由環境傳感器等無線設備、網關以及中心服務器構成(圖5.6)。
設備終端包括傳感器終端、溫濕度傳感器終端、二氧化碳傳感器終端、開關門傳感器終端以及紅外線傳感器終端,驅動機器包括LED 照明。網關終端采集了各傳感器終端的數據,同時具備控制LED 照明的功能。
中心服務器由以下部分構成:消息隊列,負責接收從網關發來的傳感器數據;流處理部分,負責分解和處理接收到的數據;數據庫,負責積累數據。雖然業務應用程序已經跟數據庫實現了協作,但要做到用Web 頁面實時顯示,還需要用第2 章介紹的Publish/Subscribe 來連接數據庫。此外,流處理階段會把各個功能模塊化,監控傳感器數據,在一定條件下發出郵件通知等。
7、節能監控系統
系統概要
接下來要介紹是對形形色色的設備進行節能狀態監控的系統,其目的在于實現商業設施和辦公室節能(圖5.7)。
本系統除了在東京都內的幾十處場所設置了設備,還以西日本的辦公室為對象設置了各種環境傳感器,為實現各個設施的節能狀況可視化,并達到節能目的,還實施了改善措施。例如,在商業設施里的各種場所設置傳感器,測量樓層內局部區域的溫度、濕度、電力。基于測量的數據,可以提早發現樓層內是否過冷或過熱,同時還能通過耗電狀況可視化及其對策來實現節能目的。另外,還會在辦公室里測算樓層停留人數,并根據人數進行空調控制和換氣控制,以達到最舒適的狀態。
此外,為了橫向分析各處的測算數據,本系統還在不斷地將傳感器數據采集到云端的服務器環境上。本系統還能在用戶系統上對已采集的傳感器數據加以分析,實現每處設施的耗電量可視化,提醒辦公室員工注意,以及遠程自動控制空調機。
系統結構
本系統同5.3.1 節介紹的樓層環境監控系統相同,都是由各種環境傳感器終端,以及采集這些終端的網關,還有中心服務器構成的(圖5.8)。
傳感器終端方面使用了溫度傳感器終端、二氧化碳傳感器終端,以及氣壓傳感器和電力傳感器。
中心服務器由負責接收數據的數據接收部位,負責處理接收到的數據的處理部位,以及存儲數據的數據庫構成。就接收部位而言,網關終端到服務器之間的通信協議采用了HTTP 和Socket 等多種協議,一邊吸收這些協議彼此之間的差異,一邊與后續的數據處理部位協作。另外本系統從中心服務器處采集數據,并對設備發送控制命令,而已采集數據的分析則在用戶服務器的系統上進行。因此就要經由一道手續(即應用程序編程接口,Application Programming Interface,API)來獲取數據,
進行控制,以實現系統之間的協作。
應用管理方面,因為在本系統中,設備和網關設置在離管理者較遠的位置,所以使用了遠程設備管理功能。借助此功能,管理者不必趕到現場,就能在發生故障時確認網關的設置數值和日志信息,進行軟件更新。
8、設備
設備的選擇
在物聯網服務中,設備的選擇是至關重要的。根據設備的特征不同,有做得到也有做不到的事,所以事先一定要切實明確目的,選擇能夠幫助我們達成目的的設備。
傳感器的特征
然后,我們從各種傳感器中選擇了距離、開關門、運動(人體感知)這3 種傳感器,它們實時性強、簡單又便宜。我們采用這3 種傳感器進行了試驗,結果表明:人在廁所內的動作出乎意料地少,所以運動(人體感知)傳感器檢出率低,又因為距離傳感器只能測量點,所以很難選擇設置場所。至于開關門傳感器,它會在無人使用廁所時準確地開啟廁所門,在有人使用廁所時關閉廁所門,能夠實時且精確地檢測出廁所當前的使用狀況,所以最終我們決定使用開關門傳感器。
就這里的案例而言,為了能把傳感器終端設置在廁所門上,又基于無線接口和應用方面的考慮,我們選擇了帶有自主電源的傳感器終端。另外,這種傳感器終端具備可擴展性,當對象數量增加時,可以輕松進行追加。而且除了開關門傳感器,還具有溫濕度傳感器和紅外線傳感器等陣容,這種應用的靈活性也是其一大優勢。
測量誤差
在使用傳感器終端時,需要在理解傳感器使用的測量方法的基礎上,留意傳感器的測量誤差和錯誤判斷。例如在查看溫度傳感器終端的說明書時,環境規格和測量規格一欄里寫著:“周邊溫度:-10℃ ~+ 80℃;測量范圍:-10℃ ~+ 80℃;測量精確度:±0.5℃。”也就是說用這臺傳感器終端測定為25℃時,實際溫度則在24.5℃到25.5℃之間。因此在應用程序上使用測量得到的溫度數據時,要時刻提醒自己,這個數據存在測量誤差。
除了前面提到的傳感器,人體感知傳感器也可以檢測出人的存在,但并不是在任何狀態下都能夠檢測成功。像無源型紅外線傳感器等是通過紅外線來感知的,當感知范圍內有與周邊溫度不同的物體運動時,傳感器就會啟動(圖5.9)。因此,在感知范圍內,如果產生熱量(紅外線)的物體(人或動物)不運動,或是物體的動作太細微,無法傳達到感知軸時,傳感器就無法檢測出物體的存在。
因為每種傳感器的檢測機制都不同,所以大家不僅要選擇傳感器終端,還需要掌握傳感器終端內組裝的傳感器的機制,檢查其是否能成功對測量對象進行測量。
設備的設置
因為物聯網系統需要在各種各樣的場所設置小型設備,所以設置時還需要留意設置場所。在此就來講解一下設置設備時需要注意的內容,即設計配置、設置場所以及設置環境。
設計配置
通過改變設備和網關終端的配置設計,可以節省導入費用和應用成本。網關終端具有高性能,并配備多種多樣的功能(如連接運營商網絡的功能等),因此大多數情況下價格要比傳感器終端昂貴。除此之外,從應用方面來考慮,連接到服務器端系統的終端越多,系統在管理上就更費事兒。
因此,一般來說設計配置時都要盡量用傳感器終端構成的傳感器網絡來采集傳感器終端,同時盡力減少網關終端的數量(圖5.11)。但是傳感器終端輸出的無線電波較弱,在開闊無障礙的地方信號就比較好,而在房間和走廊之間這種存在鐵門的地方信號就難以通過。這種情況下就需要采用分割傳感器網絡來增加網關終端的方法。另外,在設計配置時要好好熟悉樓層地圖,事先整理好設備信息和設備位置信息。
參數設置
傳感器終端的數據獲取間隔越短,能夠采集到的數據也就越多。因此從使用傳感器終端的立場出發,人們往往會把感測間隔設置得較短。然而需要大家注意的是,感測間隔和數據的發送頻率還會影響維修的頻率。為了能在各種場所大批量設置,大體上物聯網設備都遵循著小型、無線通信、電池驅動的原則。近年來也不斷涌現出一批新型終端,例如“能量采集”(energy harvesting),這種終端具備自主電源,能實現設備自身發電。然而仍舊有大部分物聯網設備是靠電池驅動的。從耗電的角度來看,設備電池電量大部分都消耗在感測和無線發送數據上(圖5.12)。感測頻率越高,耗電也就越嚴重,這樣一來更換電池的頻率就會加快。因此各位需要考慮到更換電池的頻率,根據各種條件設計一個合適的感測及發送周期。
傳感器網絡的設置
使用傳感器終端的傳感器網絡時,需要規定讓傳感器網絡運行的參數。
這里需要注意傳感器網絡的網絡ID,也有人稱其為組ID 或者采用其他叫法,不過這些叫法指的都是專門識別傳感器網絡的ID。只要把所有的網絡ID 都設成相同值,就能夠減少初期導入或是追加和更換終端時的設置成本。然而如果存在數臺具備接收器的網關終端,這些接收器就會接收到同樣的數據,其結果就是傳感器端的數據會重復(圖5.13)。這種時候就需要采取一些應對措施,例如白名單方式,即在網關終端內讀取傳感器ID,只接收那些在允許接收名單里的傳感器數據。
如果給每個網關終端都分別設置一個ID,雖然可以避免數據重復,但每導入一次,就要設置一次傳感器終端,很費時間,而且還需要管理這些ID。
此外,剛才提到的樓層監控案例是把前面說的兩種方法組合起來進行管理的,即給每個網關終端設置不同的網絡ID,同時再通過設置白名單來防止非法訪問。
9、處理方式設計
應用和維護物聯網系統時,如果系統中有設備,那么往往會面對一些狀況,例如新設備追加、數據量增多、無線干擾等。如果在系統開發初期不對這些狀況加以考慮就進行設計,一旦遇上情況就難以擴展設備,事情就會變得非常棘手。因此,這里將基于物聯網系統的實際應用狀況,為大家說明事先應該掌握的處理方式。
●如何連接多種多樣的設備
●如何處理負載,應對容量增加
●分散功能
●提高系統結構的牢固性
如何連接多種多樣的設備
那么如何才能實現連接多種設備呢?處理的重點包括“分層化數據處理”及“在設備附近進行設備的相關處理”(圖5.15)。
具體來說就是在移交主處理時指定格式,并在上一輪處理中把接收到的數據轉換成規定的數據格式。這樣一來追加設備種類時就能不牽扯到共同處理的部分,只單獨擴展和開發與設備相關的部分即可。
打個比方,假設我們需要往網關上追加連接一個新的傳感器終端,此時我們不用擴展服務器上的接收和處理部分,只要在網關上識別新傳感器的格式就能夠進行存儲處理和感知處理。如果服務器端也在追加格式時進行了擴展開發,那么服務器端就會進行回歸測試,原本正常運行的數據處理進程也可能發生故障。
如何應對接收數據量的增多
由于很多設備會連接到物聯網服務的系統,所以通信量可能會增大。當發生終端數量增多、感測間隔變更這種情況時,不僅要在服務器方面做一些改善(例如改善傳感器終端的電池壽命,保證網關終端的性能),還要在服務器端的系統上做一些處理,以應對那些增多的接收數據。
討論接收和處理數據的方式
有一個方法能應付接收數據量的增多,就是把接收數據放入隊列里。
如果在接收數據的處理完成前,網關和接收服務器都一直連接著,那么由于連接時間長,到達的數據量就會增多或是處理就需要花費一定時間,連接的空間就會不足,也會處理不完接收數據。這種時候就不要在接收數據的處理完成后再向網關返回響應,而要在接收數據并將其放入隊列時返回響應,這樣一來就能處理大量的接收數據了(圖5.16)。那些存入隊列的接收數據會在之后被處理服務器從隊列中取出來進行處理。
這個方法的優點包括可以縮短網關端的等待時間,增多能夠處理的接收數據量。此外,處理部分中間又多了一道隊列工序,因此接收功能和處理功能的模塊性也得到了提升。這樣就便于根據隊列的容量增強處理服務器。
這個方法的缺點就是確認處理成功與否時需要再次進行訪問。即使接收數據出錯,處理服務器端處理失敗,網關端也不會收到失敗信息,因此就需要討論再次發送等辦法。
數據庫的選擇
因為數據庫負責積累接收到的數據,所以接收數據量增多意味著我們還需要在數據庫方面有所應對。具體來說就是提升數據庫積累處理大量數據的性能,確保用于積累數據的數據庫容量。
然而,物聯網服務連接著大量設備,我們很難明確其極限所在。再說,用一臺服務器處理,處理性能和容量方面也有限制。因此物聯網服務的數據庫在一般情況下(根據條件不同也會有所差異),需要具備可擴展性(易于向外擴展)、寫入速度以及數據庫模式的通用性。最后說的數據庫模式的通用性用于應對以下情況:在存儲多種設備的不同數據時,非結構化數據無法全部存入一開始設計的方案。
第2 章也介紹過數據庫。數據庫的類型多種多樣,有RDB、KVS、文檔型數據庫、圖形數據庫等,它們各自有著不同的特征。其中主流的數據庫有RDB 和分布式KVS,下面將通常會被比較的項目總結在了表5.3 中。
數據庫應用
一旦接收到的數據量增多,負責積累數據的存儲空間容量也就需要相應增大。此時大家需要注意從應用程序訪問數據庫的時間的增加。如果積累的數據量不多,那么獲取數據的時間和查找速度都不會有問題,但是如果積累的數據量變多,那么還可能會產生數據庫訪問速度變慢,應用程序變卡等問題(圖5.17)。
分散功能
開發物聯網系統時,多數情況下要把所有感測數據發送到中心,在中心內進行分析判斷,把所有執行命令的功能采集到服務器。但是如果換成大規模的物聯網系統,連接的終端數量可至上萬,在服務器進行接
收處理可能會來不及。這種情況就需要像前面說的那樣,在接收處理上下些工夫,還有就是把功能分散給設備及網關(圖5.18)。
提高系統結構的牢固性
因為物聯網系統大多用于無線通信,所以數據的可達性會降低。使用無線通信就意味著一旦通信路徑上設置有墻壁和大樓等障礙物,無線電波就可能會受到妨礙,通信也就有可能會連不上,沒準還會和周圍的無線電波互相干擾從而導致線路不穩。
特別是在驅動時要多加注意,如果驅動器只會按照外部發來的指令運行,那么一旦無線通信中斷,驅動器就會一直維持著上次運行結束時的狀態。舉個例子,假設通過控制LED 來反映人群的密度,當人群密度大時用紅色表示,人逐漸減少后就用藍色表示。但是由于無線電波狀態的惡化,當驅動器接不到讓其切換成藍色的命令時,LED 就會一直是紅色,顯示結果就會出現錯誤除此之外,在控制機器人時,如果機器人接到了動作指令后卻沒有接到停止指令,那么它就會一直動下去。如果是小孩子拿來玩的機器人玩具也就一笑置之了,但要是大型機器人就可能會傷人。因此打算使用這種通過通信來運行的驅動器前,要事先想到通信中斷時會發生的狀況,最好將其設計成執行完一條指令后就恢復原狀,或者是在信號中斷時有一個固定的動作(例如關閉LED,停止機器人的電機等)。
另外,就遠程控制而言,發出動作指令的一方基本沒法知曉這個動作是否真的被執行了,所以設計時要考慮到如何向指令方傳達動作執行結束的信息,或是如何用其他傳感器來獲取動作執行完畢的信息等。
10、網絡
提升通信效率
隨著物聯網系統的導入,通信成本也成為肉眼可見的數字被拿上了臺面。通信成本主要來源于使用運營商線路時的線路費用,這跟參加的套餐也有關系,不過總歸是用得越多費用也就越多的。
壓縮數據
另外,通過延長上傳傳感器數據的時間間隔,可以增加每個壓縮數據中包含的傳感器數據的數量,這樣一來就會比把數據先分割后再壓縮并發送更有效率,能更高效地把數據上傳到中心服務器。
選擇協議
通過選擇網關和服務器之間的通信協議,可以減輕給網關和服務器帶來的負擔,實現輕型通信,起到抑制通信量的作用。
HTTP 和MQTT,HTTP 協議的首部(header)比較大,而且每次發送數據都要發送一個數據包來連接/斷開TCP,因此發送的數據越多,數據總通信量也就越大(圖5.21)。而MQTT 的首部比較小,還能在維持TCP 連接的同時,進行下一次數據的收發,所以比起HTTP,它更能抑制數據總通信量。
11、安全性
安全性設計
風險分析
安全性設計的第一步是風險分析。關于風險分析的詳細內容,相關的專業書都有提到,這里就不再贅述。大家只要明白風險分析中要做的就是明確要守護的資產和會存在的威脅,根據不同的威脅來決定什么更重要,以及要先做什么。
多層防御
在風險分析之后,就該針對預想到的威脅討論安全性對策了。這個時候的重點就是多層防御這一思路(圖5.22)。
多層防御指的是在多個層面執行安全性對策,即使一個層面被破壞了,也能在別的層面上守住。例如給主機安裝最新版本的補丁以預防漏洞,這樣即使防火墻被侵入了,也能降低主機被人占據的風險,即使有人通過非法訪問盜走了文件,也能通過加密手段讓對方無法讀取文件內容,如此一來,我們就能從整體上提升安全性。
保護設備
在設備安全方面,從預防、檢測和應用的角度出發,可以采用以下的安全性對策。
預防
檢測
應用
保護服務器端系統
要想保護服務器端系統,除了對一般的業務和信息系統實施安全性對策以外,還需要針對因連接設備而引發的安全風險來制定對策。
網關設備的認證
在互聯網上公開服務時,系統有可能被系統管理對象以外的網關終端非法訪問。即使使用了專用線路,用戶也可能自己隨意設置網關終端。這種情況下由于存在非法網關終端,會發生處理負載增大,黑客利用安全漏洞進行非法訪問這類問題,這有可能會影響數據處理,導致無法正常處理來自其他正常網關終端的數據。
對付這些問題就要采用網關設備認證的方法了。網關設備認證,即只允許在中心獲得了認證的網關終端給中心發送數據,通過這種手段就能減少非法網關終端進行的訪問,方法有很多,我們在這里舉以下兩種為例。
●使用中心端事先給出的 ID、密碼及客戶端證書認證
●利用動態方法,即由服務器端的管理者確認從網關發來的連接要求,在
管理者已經確認連接要求的基礎上再批準連接不過如果網關上存有服務器的連接認證信息,那么大家不但要對設備自身執行安全性對策,同時還要記得討論認證信息的應用(圖5.24)。
數據流量的監測和制約
非法網關設備的連接,傳感器終端發送周期的變更,以及傳感器終端數量上的增加都可能導致服務器接收到的數據量急劇增多。當已認證的網關終端發來數據,而數據只能在中心端被接受及處理時,如果數據量增多,那么再繼續進行處理就會導致負載增大,還可能對其他的數據處理產生影響。為了應對這種情況,人們想出了控制流量這種辦法,即對接收的數據進行流量監測,如果出現流量異常的情況,就不繼續接收數據(圖5.25)
保護所采集數據的隱私
舉個例子,如果對家中的電量數據進行觀測,就會發現人不在家的時候耗電量會下降,人在家時耗電量則會上升。這類數據一方面可以幫助看管高齡人士,但另一方面,也發生過盜賊僅憑一臺傳感器就判斷出家里無人,從而實施盜竊的案例。因此,在構建物聯網系統時需要保護所采集數據的隱私(圖5.26)。
在信道上進行數據隱藏
如果在通信路徑上用明文(未加密的數據)進行通信,就會有可能被人偷看到通信的內容。特別是在網關至服務器之間,網關發送到中心的認證信息和傳感器數據的內容都可能被第三者竊取,因此需要大家多加防范。
為了防止數據從通信路徑泄露,需要采用像SSLA 和IPsecB 這些對信道加密的技術,對應用程序間的數據通信加密,對信道本身加密。除此之外,還可以利用設備運營商(通信服務業者)提供的專用網絡服務。
保護所感測數據的隱私
物聯網服務的應用和維護對象除了服務器上的系統以外,還包括設備和網關(表5.4)。應用方面包括監控設備和網關的連接狀態和通信狀態,以及設備自身的故障服務。維修方面則包括在系統發生故障時調查原因,以及增加設備種類的服務等。
日志設計
在檢測到故障后的故障調查過程中,日志是必不可少的。這就需要從數據經過的設備、網關、服務器的各個構成要素中分別獲取我們需要的每個主機操作系統和啟動應用程序上的日志。如圖5.27 所示,通過適當地輸出日志,就能夠順利剖析故障,確定故障的位置和原因。
特別是對于網關終端而言,由于它是服務器系統和傳感器網絡系統的分水嶺,所以成為了一把用來剖析系統故障的重要的利刃。如果將已連接的物聯網設備的信息、接收到的傳感器數據、線路的無線電波信息,以及發送到中心服務器的傳感器數據的狀態信息等保存成日志,就能在發生故障時順利確定故障原因,判斷是傳感器接收的問題,還是3G 線路連接的問題。
接下來要說的是服務器。一般情況下只要進行傳感器數據采集處理和設備的控制處理,各臺服務器中就會輸出日志。然而由于服務器端系統會接收到大量的傳感器數據,所以每次處理時輸出的日志體積都很大,眨眼間日志就溢出了。也有因設計問題而導致日志寫入失敗,從而應用程序停止的案例。因此在設計日志時,建議大家先考慮好物聯網系統特有的日志容量和存儲時間等因素。
設備及網關的遠程應用
在實際運用時就需要通過網絡來實現對設備的遠程管理功能(圖5.28)。遠程管理中包含遠程設置參數、遠程獲取日志、遠程上傳應用及固件等功能。
遠程管理的標準協議包括TR-069 和OMA LightweightM2M(LWM2M)等協議。在這些標準協議中,那些遠程管理設備時需要的功能決定著管理服務器和設備之間的通信手段的框架A。因為它是一個框架,所以實際上利用這些協議進行遠程管理時,就需要用到安裝了這個框架的中間件,再根據框架在設備和服務器上實現各項功能。
打個比方,TR-069 使用SOAP 在設備與服務器間進行通信,定義的方法有獲取能夠利用的方法、獲取及設置參數、重新啟動以及上傳等。要交換規定的通信,就要在利用中間件的基礎上令某些部分(例如讀取文件的具體路徑,以及用于重新啟動的命令等)依附于系統。
總結
以上是生活随笔為你收集整理的图解物联网---物联网服务的系统开发的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 易校园怎么解除挂失(汉典易字的基本解释)
- 下一篇: 什么是美篇