在市場上,基于物聯網的應用類型可謂林林總總,其中包括:智慧城市、農田管理、大型工廠、居家房屋、以及汽車駕駛等方面。在此,我們重點關注消費類物聯網應用,畢竟此類移動應用最需要定位服務。而在農業和企業業務等其他領域,物聯網設備可能并不需要移動接口。它們可以直接連接到云端,并且通過Web應用來進行管理。總的說來,需要移動接口來連接設備的消費應用領域包括:
智能家居
汽車相關
衛生保健
農業管理
兒童和寵物護理
如您所見,連接設備的種類正在爆炸式地增長,而移動應用也逐漸成為各種物聯網設備的連接點,發揮著各種控制性的作用。因此在本文中,我們將和您探討如何全面規劃和準備那些面向未來的物聯網應用程序。
一、智能連接產品可以做什么?
通常,智能連接產品具有監視,控制,優化和自治四方面的職能。其中,監視功能往往是產品控制、優化和自治的基礎。
監視:智能連接產品可以通過傳感器和外部數據源,全面地掌控產品的運行狀況和外部環境。據此,智能產品可以及時警告用戶、以及維護人員有關環境與性能方面的變化。
控制:我們可以通過內置于設備中,或駐留在產品云端的遠程命令、或算法,來控制智能連接的產品。
優化:基于那些來自智能連接產品的監視數據,我們可以通過各種前所未有的方式來最大化產品的性能。同時,我們也可以將算法、以及分析更新到使用的產品中,以大幅提高數據的輸出、使用率和有效性。
自治:我們將前面提到的監視、控制和優化等功能合并到一起,就可以使智能連接產品達到前所未有的自治水平。
二、您應了解的物聯網應用開發知識
您也許會問:我們該如何開發物聯網應用程序呢?其實,這一般取決于我們的產品創意。對于智能家居應用、以及互聯網汽車應用而言,它們的功能側重點顯然會有所不同。在開始進行物聯網應用開發之前,讓我們首先來了解一下物聯網系統的標準結構。
通常,物聯網系統會包含如下四個主要部分:
硬件
軟件
云
連接性
1. 硬件
物聯網系統使用到的硬件包括:用于遠程儀表板、控制服務器、路由或橋接設備、以及傳感器的設備。這些設備管理著諸如:系統激活、操作規范、安全性、通信和檢測等方面的基本任務和功能,以支持特定的管控目標和操作。
2. 傳感器
物聯網中最關鍵的硬件當屬傳感器。這些設備包括:能源模塊、電源管理模塊、射頻(RF)模塊、以及感應模塊。其中,射頻模塊是通過其信號處理、WiFi、ZigBee、藍牙、無線電收發器、雙工器和BAW,來管理通信的。傳感器的類型包括如下幾種:
溫度感應器
壓力傳感器
接近傳感器
加速度計和陀螺儀傳感器
紅外傳感器
光學傳感器
氣體傳感器
煙霧感應器
3. 軟件
無論是運行在Web上,還是在移動設備上,物聯網系統的軟件往往是基于云端,且主要用于管理和調節與其相連接的所有IoT設備的儀表板。這些儀表板通過收集來自傳感單元的信息,以提供給如下組件:
移動應用
Web應用程序
自定義儀表板
4. 云
顯然,云是物聯網最重要的創新之一。其最大好處在于用戶不需要自行構建物理設施,便可實現數據與信息的保存。
5. 連接性
物聯網系統通過不同類型的網絡協議,保持著前端設備與后臺管理系統的數據連接。
6. 藍牙
藍牙是使用最為廣泛的近距離無線技術之一。通過配對,您可以用它來快速地將各種前端設備,包括那些可穿戴技術,與應用程序相連接。
7. ZigBee
專為工業物聯網開發的ZigBee運行在2.4 GHz頻段。它對于通常在建筑物或工業站點之間以微速率傳輸的數據而言,是一種完美的選擇。
8. 射頻識別
它利用磁場來識別物體。通常而言,簡短多樣的超高頻識別碼的有效半徑為10厘米;而遠程超高頻則可達到200毫米。
9. LoRaWAN
遠程廣域定位網絡(Long Ranged Wide Location Network,LoRaWAN)是針對大型物聯網的定位網絡之一。它能夠為數百萬個低功耗設備提供強大的網絡資源。許多智慧城市的應用都會用到該協議。
三、物聯網的挑戰
在真正著手開發物聯網應用之前,您同樣需要了解該行業目前尚未解決的各種挑戰。
1. 安全與隱私
我們在此談論的安全性不僅是網絡安全性,還包括物聯網應用中涉及的所有組件的安全性。由于應用程序通過網絡連接了各種軟、硬件元素,而大量的數據在各種聯網設備的傳輸過程中,勢必會將個人隱私信息帶到網絡各處。
此外,我們在開發物聯網應用時應當考慮如下關鍵問題:
數據交換安全性:客觀信息從物聯網傳感單元和前端設備傳輸到系統之中,然后被保存到云端。那么我們需要在應用開發的過程中,確保嚴格遵循數據文件的相關加密協議。
物理安全性:由于物聯網前端設備不再是傳統的物理管控范圍內,我們很難對其進行實時檢測,因此很可能會出現被篡改、甚至被替換的情況。
云存儲安全性:雖然云存儲的方式有效地保障了數據的可用性,但是我們很難保證云服務對于物聯網系統的訪問權限和授權是否到位。
隱私更新:在獲取數據方面,物聯網設備始終需要遵循特定的法律法規。例如:所有的健身追蹤設備都需要根據HIPAA的準則來收集用戶信息,以確保信息的私密性。
2. 連接挑戰
為了提供有價值的前端信息,我們對于物聯網應用的一項重要要求就是數據傳輸的實時性。然而,由于設備所處的環境十分復雜,我們需要調用物聯網相關傳感單元來監視、處理、提供數據與信息。例如,對于智能汽車而言,由于它們需要在快速移動的過程中保持聯網的狀態。因此,我們在開發應用之前需要對設備、功能和特性等方面進行全面的考慮。
3. 硬件和設備的跨平臺兼容性
由于針對物聯網領域的技術正在蓬勃地發展之中,因此,開發人員需要確保能無縫地集成各種軟、硬件的功能,并保障運行的效率、設備的更新、以及錯誤的修復。
4. 數據收集與處理
由于物聯網應用程序涉及到大量的信息,而且這些信息中往往會涉及到隱私與安全,因此物聯網應用開發團隊需要配備專業的數據分析人員,事先針對目標環境,以及數據的收集、處理與存儲方式進行良好的規劃與準備。
四、如何開發物聯網應用
1. 選擇平臺
您可以在充分了解的平臺特征與費用的前提下,從如下優秀應用開發平臺中選取適合自己的一款:
HomeKit
Android Things
ThingWorx
Xively
Ubidots
Azure IoT Suite
IBM Watson
Oracle IoT
Kaa
上述平臺各有不同的特性和側重點,物聯網開發人員可以使用不同平臺與程序,將不同供應商的設備連接到一個統一的系統之中。例如:被稱為Android Points的Google物聯網平臺,就能夠支持多家廠商的設備,并且可以連接到不同的低能耗傳感器上。
2. 選擇硬件
如果您不想為物聯網項目自行生產硬件的話,那么就需要從其他設備廠商那里選購設備。在滿足項目需求的前提下,我們應當選擇那些值得信賴的廠商所提供的傳感單元,以保證高質量的連接精度和可靠性。
通常,開發人員可以從基于微控制器的電路板、片上系統(SOC)板、單板計算機(SBC)、以及專用于智能藍牙和WiFi的電路板之中進行選擇。下面是一些比較常見的開發板:
Arduino Uno
Raspberry Pi
Intel Edison
Udoo Neo
LightBlue Bean
Adafruit Flora
Tessel
Particle Photon
Mediatek Linkit One
C.H.I.P
3. 事先考慮可擴展性
如今無論是產品的推出速度,還是迭代速度都發展得十分迅速,物聯網領域亦然。為了保持應用的向后兼容性,您在開發過程中應當盡量保持可擴展性,以應對將來在數據體量、以及設備數量上的增長。顯然,現有的云技術也非常適合于應用的擴展。
4. 注意安全
由于大量連接設備同處一套網絡之中,因此物聯網應用在一定程度上非常容易遭受數據泄露的威脅。此外,由于人們最常用到物聯網設備的地方是他們的住所、汽車、以及醫院,因此攻擊一旦發生,個人隱私以及敏感信息更會暴露無遺。
以下便是一些我們在使用安全工具來構建物聯網應用時,值得借鑒的兩個方面。
仔細選擇硬件供應商與平臺:那些能夠為其硬件設備提供配套軟件程序的供應商,往往有著更好的安全態勢,同時也意味著更少的軟件漏洞。因此,對于物聯網應用而言,您應當選擇那些值得信賴、且有著良好信譽的硬件方案和平臺提供商。他們通常能夠提供相應的檢查工具、并持續進行更新。
對應用程序綜合采取優秀的安全實踐:對于那些無論是存儲在本地設備上,還是存放或傳輸在云端的數據,我們都應當做好應用級別的數據加密、文件混淆(obfuscation)、兩因素身份驗證、以及訪問控制,以確保只有授權用戶才能安全地使用物聯網應用與設備。與此同時,我們還應當通過VPN等方式,來保護數據傳輸的信道與網絡。
原文標題:IoT App Development: Impact, Challenges, and Process,作者:Akash Takyar
評論