2017年6月份的時候曾寫過一篇微軟、百度和阿里三大公司的物聯網平臺文章《微軟百度阿里三大物聯網雲平臺探析》,當時中美貿易戰還沒有開始打,亞馬遜和微軟的雲平臺正如日中天,其物聯網平臺也已經初步佈局完畢,無論是平臺的完善度,還是技術的領先性,國內廠商都難以比肩。
- 國內各大物聯網平臺一覽
那個時候國內廠商,百度推出物聯網平臺的時機最早,架勢也最大,其天工開物智慧物聯網平臺,包括物接入 IoT Hub、物解析 IoT Parser 和物管理 IoT Device等板塊,其物聯網平臺設計理念已經和亞馬遜物聯網平臺一樣,已經支援物模型等相關功能,有屬性,有事件和服務。阿里雲則相對低調,僅推出了物聯網開發套件,重點在資料接入,支援將資料通過MQTT協議送入雲平臺,由客戶自行解析裝置傳送到雲平臺的資料。而騰訊早在2014年就釋出QQ物聯,號稱連線一切,不過還是發力微信,重點在於人的連線。而此時的華為也推出了物聯網平臺OceanConnect,不過有些猶抱琵琶半遮面,反而把為電信所做的天翼雲物聯網平臺推到了前臺,一時讓人有些分不清,天翼雲物聯網平臺和OceanConnect到底有什麼區別。
如今一晃三年多過去了,三年前低調的物聯網平臺小弟--阿里雲物聯網平臺,一晃成為國內物聯網平臺領域的領先者(對這段歷史感興趣的網友可以看看我以前發表的文章《阿里雲物聯網之路》),而率先在物聯網平臺發力的百度,卻偏安一隅,在天工物聯網平臺之外,釋出了物聯網核心套件 ,竟然有點類似阿里雲三年前釋出的物聯網開發套件,真是三年一個輪迴。而後發力的騰訊,幾乎複製了一個阿里雲物聯網平臺,其產品建立,裝置生成等操作習慣和阿里物聯網平臺幾乎別無二致,基本上學會了阿里雲物聯網平臺,再上手騰訊物聯網平臺則毫無學習壓力。而華為物聯網平臺方面改變的力度則更大,重新發布了華為IoTDA資料接入平臺,和以前的OceanConnect一刀兩斷,不再相容。華為從善如流,其物聯網平臺的主要要素基本上和阿里雲物聯網平臺近乎一致了(去年和華為物聯網平臺總架構師線下交流,其就曾表示華為當下物聯網平臺做的友好性相對不好,從阿里又挖了一些人來繼續完善華為的物聯網平臺。記得2018年初次和華為合作的時候,那個時候阿里反而經常去華為挖人,這又是一個風水輪流轉的例子),不過為了表達自己的別具一格,構建產品物模型的時候,增加了一個服務ID的概念,一個產品可以有多個服務ID,每個服務ID下再分別構建“物模型”。這一點京東的物聯網平臺倒是和華為類似,一個物型別下有多個物模型。另外值得一提的是,中移動的OneNET平臺其操作習慣和阿里雲物聯網平臺也非常一致,平臺上相關關鍵詞的命名也基本一樣。
- 國內各大物聯網平臺比較
目前來看,國內幾大領先的物聯網平臺,其標準組成越來越趨於一致,基本都有如下幾大部分構成。
元件項 |
阿里雲 |
華為 |
騰訊雲 |
中移動 |
小程式平臺 |
支付寶、淘寶、天貓等全家桶 |
快應用 |
微信 + 騰訊連連 |
|
物聯網應用平臺 |
IoT Studio 飛燕智慧家庭 飛鳳物聯平臺 飛象工業互聯 |
|
騰訊物聯網開發平臺(非常類似阿里飛燕平臺) |
應用定製 |
資料接入平臺 |
物聯網開發平臺 |
華為IoTDA |
騰訊物聯網通訊 |
OneNET物聯平臺 |
嵌入式OS |
AliOS Things |
LiteOS |
Tencent Tiny OS |
OneOS |
邊緣計算 |
邊緣計算系統 邊緣一體機 |
華為KubeEdge |
騰訊5G邊緣計算 |
OneEdge 5G邊緣計算 |
晶片模組 |
平頭哥晶片系列 |
海思物聯網晶片 |
|
各種通訊模組 |
私有化部署 |
支援 |
支援 |
|
|
具體到物聯網資料接入平臺,各個公司的相似性則會更大,無論是平臺介面,還是接入文件說明,還是除錯方式和介面,甚至是API介面的定義都有非常類似(就有人曾分析過阿里和騰旭的C SDK除了各種定義相似外,版本維護的節奏都一致,說不清是一女二嫁,還是彼此參考)。
下面我們僅從“物模型”的角度去進行對比,參見下表:
專案 |
阿里雲 |
華為 |
騰訊雲 |
京東 |
物模型 |
物模型 |
產品模型+服務ID |
資料模板 |
物型別+物模型 |
產品 |
產品/產品祕鑰
|
產品/產品ID |
產品/子產品 |
物型別/物型別標識 |
裝置 |
閘道器裝置 直連裝置 子裝置 |
閘道器裝置 直連裝置 非直連裝置
|
閘道器 裝置 子裝置 |
直連裝置 連線代理裝置 非直連裝置 |
裝置鑑權 |
三元組: 產品祕鑰 裝置名稱 裝置祕鑰 |
二元組: 裝置ID 裝置祕鑰 |
三元組: 產品ID 裝置名稱 裝置祕鑰 |
一元組: 裝置ID |
屬性 |
屬性 |
屬性 |
屬性 |
屬性Key 物型別·屬性 |
事件 |
事件 |
【無】 |
事件 |
事件 |
方法 |
服務 |
命令 |
行為 |
方法 |
注:中移動OneNET和阿里雲物聯網平臺基本一樣,僅產品祕鑰的名稱為產品ID
從以上的比較我們可以看出,各大物聯網平臺有完全趨同的勢頭,這對物聯網開發者來說是一件好事,學習各大物聯網平臺的代價沒有那麼大了,各平臺的切換的代價似乎也沒有那麼高了。但是對各大物聯網平臺廠商來說,不一定是好事,這意味著,他們已經進入了競爭非常激烈的“戰國”時代。
- 物聯網平臺競爭進入戰國時代
盤點各大物聯網平臺,你會發現,不同廠家各有各自的優勢。阿里雲做物聯網平臺不算早,但是最堅決,在2018年3月的深圳雲棲大會上就宣佈:“阿里巴巴全面進軍 IoT,IoT 是阿里雲巴巴集團繼電商、金融、物流、雲端計算之後一條新的主賽道”。三年多時間,讓阿里雲物聯網平臺發展到一個新的高度,也成為了物聯網平臺行業的標杆。這不僅讓走了一程的華為改弦易轍,物聯網平臺接入重新趨同於阿里物聯網平臺,更讓追隨者騰訊,幾乎完全相容阿里雲物聯網平臺的操作習慣。並且相對於其他物聯網平臺公司,由於阿里雲一直在物聯網平臺上深耕,所以平臺功能也是最為完善的。但是華為,騰訊絕對不可小覷,華為硬體和AI實力超群,基於端而衍生的物聯網平臺應用未來可期。而騰訊坐擁當前流量最大的移動應用微信,又在2019年末推出物聯網小程式 — 騰訊連連,號稱連線一切的騰訊,距離目標的達成似乎也不會太遠。目前物聯網的發展遠不到終局,最終鹿死誰手,花落誰家,還為未可知。
- 物件導向 vs 程式導向
從DOS時代走過來的人學習C/C++語言等程式設計開發,對程式導向不會陌生,隨著開發的程式越來越複雜,和使用者的互動越來越多,物件導向的開發方法成為我們程式設計開發的指導思想。屬性,事件,方法,類,介面成為我們理解程式世界的關鍵詞。同樣作為物聯網開發來說,以前的DTU(串列埠轉網路裝置)通訊的時代就是程式導向開發的時代,而如今的智慧閘道器,智慧裝置直接對接物聯網平臺則是完全的進入了物件導向的物聯網開發時代,阿里,華為,騰訊,京東、OneNET等物聯網平臺的趨同已經深深的說明了這一點。
我幾年前在《為行業SaaS雲平臺,提供物聯網接入服務》的PPT中,專門寫了一頁,再論“組態式”物模型接入優勢的內容,這裡我們可以結合當下主流物聯網平臺都已經支援的“物模型”模式,可以更深地理解我說的如下這些內容:
“邏輯物模型”:在設計物模型的時候,一定基於工藝邏輯本身,設計“物模型”,不一定和具體的硬體實體進行一一對應。有了“邏輯物模型”這種設計思想,基於“組態式”接入就有了如下幾個優勢:
- 底層硬體可以隨意更換,有可能是整合若干功能的“複合”裝置,也可能是單一功能的裝置,甚至是閘道器實現的虛擬裝置。
- 可以適配底層硬體不同的各種現場,甚至是多級通訊方式各不相同的現場,讓“雲端”徹底對底層裝置和底層裝置連線方式無感。
- 可以即時隨“邏輯物模型”的擴充套件而擴充套件。比如我們可從一臺裝置的控制器獲取裝置本身的一些狀態和引數,但是有時候想額外獲取裝置之外,且和裝置相關的資料,比如想知道裝置的電流或電壓,想知道裝置震動係數,想知道裝置啟或停。我們可以額外新增相關的感測器來獲取這些資料。雲端“邏輯物模型”可以增加這些屬性,底層裝置組態可以方便把這些資料成為新“邏輯物模型”的屬性,隨時可快速打通雲和端的資料傳遞。
正因為我們一直相信這種開發方式一定會深入人心,所以我們基於YFIOs®資料組態(完全物件導向的方式,免程式碼或少程式碼實現物聯網接入)更容易接入到物聯網雲平臺,並且以更容易理解和操作的方式接入物聯網平臺。我們的物聯網接入硬體和物聯網接入系統和各大物聯網雲平臺一起,為各大行業的SaaS廠商奠定了更堅實的物聯網硬體接入基礎。