物聯網平台系列 - 開源技術平台


物聯網正在快速發展。許多組織和公司推出了各自的開源技術平台,這里對幾個影響力比較大的平台做一下介紹。
 
AllJoyn
 
AllJoyn是一個由Allseen聯盟贊助的開源軟件框架,基於鄰近感應,支持互操作性,各種設備都可以直接相互查找、連接和通信,而無需借助中間服務器。
 
- 許可協議:Apache2.0、BSD
- 開發語言:C,C ++,OBJ-C,Java
- 系統平台:Arduino,Linux,Android,iOS,Windows,Mac
- 硬件平台:MCU、ARM、PC
- 最小硬件:無
- 開發板支持:無
- 通信協議:無
- 通信技術:無線網絡連接,以太網,串口,電源線(PLC)
- 安全性:同行對等加密(AES128)和身份驗證(PSK,ECDSA)
- 設備聯動:無
 

           

 
IoTivitiy
 
IoTivity 是由 Open Interconnect Consortium (OIC) 組織資助的一個開源的軟件框架,用於無縫的支持設備到設備的互聯,主要為了滿足物聯網開發的需要。構建物聯網的生態系統,使得設備和設備之間可以安全可靠的連接。而 IoTivity 通過提供一系列框架和服務來加速設備的互聯應用開發。
 
- 許可協議:Apache 2.0
- 開發語言:C,C++,Java
- 系統平台:Linux、Arduino
- 硬件平台:ARM
- 最小硬件:無
- 開發板支持:Arduino、RaspberryPi、ARTIK、MinnowBoardMax、Intel Edison
- 通信協議:UDP+CoAP
- 通信技術:不限
- 安全性:Secure Resource Manager
- 設備聯動:無
 

 

Apache Mynewt
 
Apache Mynewt是由Apache Software Foundation孵化支持的開源項目。是一個為32位微控制器(MCU)設計的組合式操作系統,目標是為各種不能運行Linux的高端微控制器帶來類似Linux的功能。
 
- 許可協議:Apache 2.0
- 開發語言:C
- 系統平台:Apache Mynewt
- 硬件平台:MCU
- 最小硬件:無
- 開發板支持:STM32-E407
- 通信協議:HTTPD、CoAP
- 通信技術:Wi-Fi、IPv6/6LoWPAN、BLE4.2
- 安全性:無
- 設備聯動:無
 

 

 
The Thing System
 
The Thing System是一組軟件組件和協議的集合,用來實現物聯網各種設備間的決策問題。其中的管家(steward)軟件使用node.js編寫,移植和擴展都很方便,既可以在筆記本上運行,也可以安裝到Raspberry Pi這樣的單板上。
The Thing System由The Thing社區維護,社區的兩位創辦人為Alasdair Allan和Marshall t. Rose。
 
- 許可協議:無
- 開發語言:JavaScript
- 系統平台:不限
- 硬件平台:PC、ARM
- 最小硬件:無
- 開發板支持:Raspberry Pi, the Raspberry Pi B+ 和BeagleBone Black
- 通信協議:無
- 通信技術:不限
- 安全性:無
- 設備聯動:聯動
 

 

IoT.js
 
IoT.js平台是三星的物聯網開發框架,使用JerryScript引擎來運行JavaScript代碼,使用libuv庫來實現異步I/O。JerryScript是一個適用於嵌入式設備的小型JavaScript引擎。
 
- 許可協議: Apache 2.0
- 開發語言: JavaScript
- 系統平台: RTOS、Linux
- 硬件平台:MCU
- 最小硬件:200K FLASH,64K RAM
- 開發板支持:Raspberry Pi 2, ST board
- 通信協議:無
- 通信技術:不限
- 安全性:無
- 設備聯動:無
 

 

Brillo
 
Brillo 是Google推出的一個輕量級的,開放的,可擴展的,基於 Android,為適應物聯網設備低功耗、低資源占用的特性而定制的系統。 Brillo 系統與 Weave 協議(一個開放的,支持各種搜索,配置和認證功能的標准化通信協議)協同工作。
 
- 許可協議:BSD
- 開發語言:Android開發
- 系統平台:Brillo
- 硬件平台:ARM, Intel x86, MIPS-based MCU
- 最小硬件:128MB FLASH,32MB RAM
- 開發板支持:Intel Edison、Qualcomm Dragonboard 410c
- 通信協議:Weave
- 通信技術:不限
- 安全性:無
- 設備聯動:設備間可以自己互動
    
 
MicroPython
 
Micro Python運行在微控制器上的Python。遵守MIT協議。由劍橋大學的理論物理學家喬治·達明設計。和Arduino類似,但Micro Python更強大。
MicroPython由Kickstarter上的一個眾籌項目資助。
 
- 許可協議:MIT協議
- 開發語言:Python
- 系統平台:MicroPython
- 硬件平台:ARM
- 最小硬件:1 MB FLASH,192 KB RAM
- 開發板支持:pyboard
- 通信協議:無
- 通信技術:Wi-Fi
- 安全性:無
- 設備聯動:無
 
 
NodeMCU
 
NodeMCU 是一款開源快速硬件原型平台,包括固件和開發板,用幾行簡單的Lua腳本就能開發物聯網應用。
 
- 許可協議:無
- 開發語言:Lua
- 系統平台:NodeMCU
- 硬件平台:MCU
- 最小硬件:4MB FLASH,35KB RAM
- 開發板支持:NodeMCU
- 通信協議:無
- 通信技術:Wi-Fi
- 安全性:無
- 設備聯動:無
 
 
總結:
 
以下從硬件兼容、主流通信技術支持程度、社區成熟度、開發板支持等方面做個總結。
- AllJoyn是最早開源的平台,也是聯盟廠商最多的,業界影響力比較大,社區也比較完善;WiFi和BLE都支持?對開發板支持不太好,不太適合個人開發者原型開發,適合廠商作為前沿研究方向;
- IoTivitiy從架構設計上來看最接近現有的實現方式,適合整合現有的設備以及雲端,對開發板的支持也比較好,但是看起來社區成熟度不高;
- Apache Mynewt的設計中對未來各種物聯網的通信方式的兼容性很好,目標是未來物聯網設備的主流系統,目前仍處早期,開發板支持不好;
- The Thing System是唯一一個志在實現設備聯動策略的系統,而且對開發板支持很好;
- IoT.js是三星開放的用JavaScript開發的物聯網平台,目前的嵌入式設備JavaScript還不會是主流,但是可以作為未來前沿研究方向;
- Brillo是Google的開放平台,兼容多數設備,但對硬件配置要求比較高,開發板支持也不太好;
- MicroPython和NodeMCU都屬於比較小眾的物聯網平台,比較適合做未來技術儲備;
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM