物聯網平臺構架系列 (四):Amazon, Microsoft, IBM IoT 解決方案導論 之 平臺

最近研究了一些物聯網平臺技術資料,以做選型參考。腦子裏積累大量信息,便想寫出來做一些普及。作爲科普文章,力爭通俗易懂,不確保概念嚴謹性。我會給考據癖者提供相關英文鏈接,以便深入研究。

      —— 馮立超 HiwebFrank


4. 平 臺


    由於物聯網的地域分佈廣、設備數量衆多的特點,物聯網解決方案必須藉助公有云平臺來實現。

    物聯網解決方案須具備如下功能:

     - 從設備收集數據

     - 分析運行中的數據流

     - 存儲和查詢大型數據集

     - 實時和歷史數據可視化

     - 與後端業務系統集成

     - 管理設備


    我們用一個簡單的圖示來說明物聯網解決方案構架,下圖是微軟給出的一個與廠商無關的物聯網解決方案通用示意構架


wKioL1kQIPeQ_H3LAAF58_i1LmI598.png



    該簡化構架包括 設備連接數據處理與分析信息呈現 三個層面。

    該構架中,物聯網設備收集數據並與雲網關交互;雲網關使其它後端服務可以處理這些數據,從雲網關,數據提交給其它業務應用程序或儀表板操作人員及其它展示設備。


  • 設備連接

    如何讓設備安全可靠地連接到解決方案後端,是物聯網解決方案所面臨的巨大挑戰,相比於其它系統,物聯網設備有如下一些特點:

     - 通常是無人操作的嵌入式系統甚至是沒有操作系統的設備

     - 可能部署到物理訪問成本高昂的遠程位置等各種部署場景

     - 可能無法通過其他方式來與設備交互,而只能通過解決方案後端來訪問

     - 供電及運算資源可能都有限

     - 網絡連接可能不穩定、緩慢或高成本

     - 可能需要使用專屬、自定義或行業特定的應用層協議

     - 可以使用大量常見的硬件和軟件平臺來創建


    除上述特點之外,物聯網解決方案還必須考慮可擴展性、安全性和可靠性。傳統的技術如Web容器或消息傳送代理等不足以支撐這樣的需求。

    爲此,物聯網平臺廠商都提出自己的解決方法,如微軟的 Azure IoT Hub 及 Azure IoT SDK 等。關於 Azure IoT Hub 請參見上一講相關內容。


   有關設備連接的多種情況,微軟給出的概念構架圖如下:

wKioL1kQLGPwhDcVAAD3lUQol0I885.png


 

  • 數據處理與分析

    在物聯網解決方案中,數據處理與分析主要交由在公有云上的後端服務進行,包括設備數據篩選、彙總、路由到其他服務等等。後端服務主要負責如下工作:

     - 接收來自設備的大規模數據,並確定如何處理和存儲這些數據

     - 必要時可以從雲端向設備發送數據或指令

     - 設備註冊、預配置及安全連接控制

     - 跟蹤設備狀態並監控設備活動

     - 存儲和分析設備歷史數據,從而實現設備預見性維護

     - 與設備進行交互,實現反饋控制等


    當然,並不是所有的業務都必須交由雲端處理,例如一些必須及時響應的操作比如緊急剎車,這些處理及操作都必須在設備端直接進行;另外,設備也可以進行一些預處理,從而提高效率、降低數據傳輸量。


    爲此,設備本身應該具備一些處理能力。


    微軟的 Windows 10 IoT Core,提供了強大的設備端計算能力;

    而亞馬遜的 Greengrass,則使物聯網設備可以運行 AWS Lambda 函數、同步設備數據以及與其他設備安全通信,甚至無需連接互聯網。Greengrass 可確保物聯網設備快速響應本地事件、運行時採用間歇性連接,並最大程度地降低將物聯網數據傳輸到雲的成本。

    華爲的 LiteOS,則強調輕量級、低功耗(一個鈕釦電池用好幾年)、快速啓動(毫秒級)及響應(納秒級)、多種連接協議(廣域/局域)等特性。


    另外,一些物聯網設備,也可以通過完全自主研發的芯片,實現相關數據採集與處理。

    比如圖像火災監測設備,可以將圖像火災分析算法集成在設備芯片中,由設備芯片中的算法進行判斷,僅將是否發生火災的判定結果傳輸到雲端。

    而對於較複雜的圖像、或者誤判圖像,則將圖像數據及其設備端判定結果傳到雲端,通過機器學習,逐步改進算法,提高圖像處理能力,並通過物聯網對設備進行升級操作。


  • 信息呈現和業務連接

    信息呈現和業務連接層 用於展示和操控從設備收集的數據。它可讓用戶查看和分析從其設備收集的數據。 這些視圖可以採用儀表板或 BI 報表的格式,以顯示歷史數據和/或接近實時的數據。

    此層還可實現物聯網解決方案與現有業務應用程序的集成,以連接企業業務流程或工作流。 例如,圖像火災監測系統,在發現監測設備故障信息後,通過與維護服務商現有的運維計劃系統集成,可以預約工程師到現場進行檢查。


    下圖是微軟提供的一個物聯網工廠的應用界面樣例。

    在該界面中,儀表板左側展示了生產線細節信息。如儀表板左側第一條,提示機械臂嚴重警告,而在儀表板中部的模擬界面中,同樣用紅色標出機械臂警告位置。在右側的報警欄,列出不同時間點的警告信息,如機械臂溫度警告等。而在儀表板下方,則展示該條生產線的整體效率信息。


wKiom1kRQAnyu09zAAfhJdbLcFc737.gif    



  • 微軟物聯網解決方案構架

    下圖是微軟物聯網解決方案的較詳細的構架圖


wKioL1kQLsnxNfjCAAFRlHYzvbE992.png


    微軟的物聯網解決方案平臺,通過微軟的公有云 Azure 實現,即 微軟物聯網套件 Azure IoT Suite。設備通過 Azure IoT Hub 註冊和接入,然後可以使用微軟公有云 Azure 的各種強大的數據處理、存儲、分析、機器學習能力,構建所需的各類物聯網業務。


    微軟物聯網解決方案通常至少會使用到如下服務:

     - Azure IoT Hub: 該服務提供設備到雲和雲到設備的消息傳送功能,並充當雲和其他主要 IoT 套件服務的網關。 該服務使得可以從大量設備接收消息,並將命令發送給設備。 使用該服務,還能夠管理設備,例如,可以配置、重啓連接到 Azure IoT Hub 的設備,或對其執行恢復出廠設置操作。

     - Azure Stream Anzlytics: 流分析提供運行數據分析。 該服務處理傳入遙測數據、執行聚合以及檢測事件。 以及處理包含元數據或來自設備的命令響應的信息消息。 解決方案使用流分析來處理設備消息,並將這些消息傳送給其他服務。

     - Azure StorageAzure DocumentDB: Azure 存儲和 Azure DocumentDB 提供數據存儲功能。 解決方案使用 Blob Storage 來存儲設備遙測數據並使其可用於分析;使用 DocumentDB 來存儲設備元數據,以及啓用解決方案的設備管理功能。

     - Azure Web AppMicrosoft Power BI: 提供數據可視化功能。 藉助 Power BI 的靈活性,可以快速生成針對具體業務要求的交互式儀表板。



    微軟還給出了一些預配置解決方案和相關演示案例,有興趣的讀者可以點擊如下鏈接,通過實際操作了解上面截圖中的工廠物聯網使用場景:http://www.microsoftazureiotsuite.com/demos/connectedfactory 。


  • 亞馬遜物聯網解決方案構架

    而亞馬遜給出的構架如下圖所示:

wKiom1kQLR-BOugvAABEoYUCEZM958.png

    亞馬遜物聯網解決方案當然強調其公有云平臺 AWS,而最受其推崇的,自然是當下正熱的 Serverless 構架的 AWS Lambda。

    亞馬遜物聯網解決方案至少用到如下 AWS 服務:

     - Amazon Simple Storage Service:亞馬遜簡單存儲服務,簡稱 Amazon S3,提供可擴展的存儲服務。

     - Amazon DynamoDB:提供受管理的 NoSQL 數據庫服務。

     - Amazon Kinesis:提供大規模流數據實時處理能力。

     - AWS Lambda:在亞馬遜公有云平臺發佈運行自定義代碼。

       ZStack創始人張鑫的文章《Serverless,後端小程序的未來》 比較透徹地講解了 AWS Lambda 及 Serverless 的原理、構架、應用場景、優勢和不足,並講述了Serverless與PaaS的區別、與容器技術的區別及聯繫等,推薦一讀。

     - Amazon Simple Notification Service:亞馬遜簡單通知服務,簡稱 Amazon SNS,負責處理通知發送與接收。

     - Amazon Simple Queue Service:亞馬遜簡單隊列服務,簡稱 Amazon SQS,將數據存儲到隊列,由應用程序獲取。


    (看看人家,做那麼大的生意,本星球/本星系第一啊,啥都謙稱爲 Simple 簡單啥啥啥,另外,包括現在 IT 運維領域最重要的 SNMP 簡單網絡管理協議、電子郵件的 SMTP 簡單郵件傳輸協議......;看看我們,動輒 皇家、擎天、至尊,汗顏啊!慚愧啊!)


  • IBM 物聯網解決方案構架

    IBM 的物聯網解決方案名爲 Watson IoT Platform,(永遠的沃森)。其構架圖如下所示:
wKioL1kQLkDiCexMAADU7H1wLqA301.png


    IBM 物聯網解決方案基於 IBM 公有云平臺 Bluemix,涉及到的服務至少包括:

     - IBM Cloudant NoSQL DB:用於存儲和訪問設備數據。

     - IBM Message Hub:爲實時數據提供低延遲、可擴展的、高吞吐量的消息總線。

     - IBM Blockchain 集成:對於特定領域,可以集成 IBM 區塊鏈服務,以符合特定的商業規則要求。

     - 儀表板:利用 Bulemix 提供的數據可視化儀表板,可以可視化展示設備狀態數據,提供 BI 功能。


    IBM給出了一個簡單教程,可以快速搭建物聯網測試環境,可以參見https://console.ng.bluemix.net/docs/services/IoT/getting_started/quickstart/index.html#quickstart 



    本講是本系列文檔的核心,用了比較多的篇幅講了業界領先的廠商的物聯網平臺。下一講,我們探討安全。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章