阿里IOT
設備接入指南
一個設備要介入阿里云物聯網平臺分蓖,主要包含三個主要步驟:
接入云平臺:主要在云平臺上進行產品定義(設備的屬性欧啤、事件等)
設備端開發(fā):基于阿里云IOT提供的AliOS或者SDK進行設備端開發(fā)霹菊,建立阿里云連接通道
設備上下行調試:在云平臺上申請測試設備的三元組(可以理解為該設備上云的身份賬號)状婶,將其寫入設備端鸭巴,就可以進行設備和云端的上下行調試,確保設備能夠連上云平臺巡通。
設備調試通過后尘执,就可以在云平臺上批量申請三元組,進行設備批量生產扁达。
1. 接入云平臺
現阿里云IOT根據用戶的需求不同正卧,提供不同的云平臺蠢熄,您可以根據自身的產品定位選擇適合您的云平臺:
阿里云物聯網平臺
適合用戶
: 軟件開發(fā)者跪解、硬件開發(fā)者、有一定軟硬件開發(fā)能力的方案商/設備廠商
平臺特點
:物聯網平臺是阿里云面向物聯網領域開發(fā)人員推出的 通用設備管理平臺,提供各種基礎能力叉讥,旨在幫助開發(fā)者搭建數據通道窘行,方便終端和云端進行雙向通信,設備廠商需要自己開發(fā)設備管理的手機APP或者web頁面图仓。
智能生活開放平臺
適合用戶
: 家電產品方案商/設備廠商罐盔、硬件開發(fā)者
平臺特點
:針對生活領域的物聯網平臺,基于物聯網平臺進行了擴展救崔,目標是解決家電設備快速智能化的問題惶看,提供了手機APP端的設備入網、控制SDK六孵。平臺特有功能包含:APP配置及開發(fā)纬黎、項目管理、量產管理劫窒、服務中心本今、運營中心等功能
工業(yè)互聯網平臺
適合用戶
: 工業(yè)領域的方案商/設備廠商、熟悉組態(tài)軟件的開發(fā)者
平臺特點
:針對工業(yè)領域的物聯網平臺主巍,將互聯網技術冠息,云技術進行重新封裝,降低用戶在生成工業(yè)物聯網應用時的學習成本孕索,提高開發(fā)效率逛艰,使工業(yè)用戶可以快速地在平臺上完成包括設備資產管理、遠程運維檬果、生產管理等一系列工業(yè)互聯網應用的開發(fā)瓮孙,并一鍵發(fā)布應用到互聯網環(huán)境中,實現一站式的應用開發(fā)與發(fā)布选脊。
1.1 接入流程
盡管平臺提供的服務不同杭抠,但各平臺在設備接入流程上,大同小異恳啥。目前您可以根據以下流程在您選擇的云平臺中完成接入設備的操作偏灿,后續(xù)我們會逐步統(tǒng)一各個云平臺的接入流程和體驗抛虫。詳見鏈接
2. 設備端開發(fā)
為了能夠快速的將設備接入阿里云Iot平臺并且能夠對設備進行遠程控制和管理瘟斜,阿里云提供兩種方法進行設備接入:基于AliOS Things 進行設備接入、基于Link Kit SDK 進行設備的接入的方式磕瓷。
2.1 基于AliOS Things 進行設備接入
設備廠商可以選用經過阿里云IoT認證過的模組/芯片進行產品開發(fā)硝桩,由于認證過的模組/芯片已實現對模組/芯片的對接沿猜、支持將設備連接到阿里云IoT云平臺,設備廠商可以避免硬件適配的時間與人力成本碗脊,將精力關注于產品的業(yè)務功能開發(fā)啼肩。
點擊查詢 - 阿里云Iot已認證的模組/芯片
同時,您也可以不依賴聯網模塊,完全自主的開發(fā)一款自帶連接阿里云IoT功能的物聯網設備祈坠。在您的開發(fā)過程中AliOS Things將為您提供包括調度內核害碾,常用中間件以及豐富的應用組件的支持,使您的設備開發(fā)事半功倍赦拘。AliOS Things以開源的方式提供給用戶使用慌随,您可以到如下的代碼倉庫獲得相應源碼:
點擊獲取 - AliOS Things 物聯網操作系統(tǒng)
2.2 基于Link Kit SDK 進行設備接入
對于不適合移植AliOS的應用場景,阿里云IoT提供設備端接入SDK(Link Kit SDK)用于將設備快速接入阿里云IoT平臺躺同,請 點擊此處 獲取更多Link Kit SDK的介紹阁猜,以及Link Kit SDK的 開發(fā)過程。
由于設備的運行環(huán)境不同蹋艺,Link Kit SDK提供了多種語言版本蹦漠,客戶可以基于自己期望采用的開發(fā)語言進行設備接入.
2.2.1 C 語言Link Kit SDK
設備上運行的操作系統(tǒng)類型繁多,常見的諸如Linux车海、FreeRTOS笛园、Windows等,C Link Kit SDK定義了硬件接口抽象層侍芝,廠商將這些接口抽象層適配到嵌入式設備的操作系統(tǒng)后研铆,Link Kit SDK可以在相應的操作系統(tǒng)上運行。
嵌入式設備上軟件結構示意圖如下所示:
- 廠商需要實現Link Kit SDK HAL的適配州叠,然后進行產品功能的開發(fā)
- 對于使用嵌入式Linux進行設備開發(fā)的廠商棵红,SDK中包含一份基于ubuntu的HAL實現,設備廠商可以參考
3.設備上下行調試
開發(fā)完成之后你可以進行設備上下行調試來測試設備是否與云端正常通信咧栗。如果通信正常逆甜,恭喜您已經將設備成功地接入了阿里云IOT平臺。
云平臺名 | 操作說明 |
---|---|
阿里云物聯網平臺 | 上線設備 |
智能生活開放平臺 | 設備調試 |
工業(yè)互聯網平臺 | 查看設備數據 |
4.其他資料
4.1 平臺詳細介紹
如果您還有更多需求可以參考各個平臺的詳細說明文檔致板。
云平臺名 | 說明文檔 |
---|---|
阿里云物聯網平臺 | 文檔入口 基礎版快速入門 高級版快速入門 |
智能生活開放平臺 | 文檔入口 快速入門 |
工業(yè)互聯網平臺 | 文檔入口 |
4.2 芯片/模組合作伙伴
我們邀請芯片商或模組商成為阿里云IOT模組/芯片合作伙伴交煞,這樣可以享受更多商業(yè)機會。詳情請見芯片模組合作伙伴計劃
您的角色 | 認證流程 |
---|---|
模組商 | IoT模組認證流程介紹 阿里云Link測試認證服務在線申請 |
芯片商 | 集成AliOS-Things 阿里云Link測試認證服務在線申請 |
其余SDK 詳情見 ?? 阿里云IOT - 開發(fā)者社區(qū)
設備技術認證流程詳見 ?? 阿里云IOT技術認證
小米IOT
平臺概況
小米IoT開發(fā)者平臺面向智能家居斟或、智能家電素征、健康可穿戴、出行車載等領域萝挤,開放智能硬件接入御毅、智能硬件控制、自動化場景怜珍、AI技術端蛆、新零售渠道等小米特色優(yōu)質資源,與合作伙伴一起打造極致的物聯網體驗酥泛。
平臺現已向以下類型的開發(fā)者開放合作——
- 智能硬件企業(yè):企業(yè)希望自己的智能硬件支持小愛同學控制今豆、支持米家APP控制侈沪、支持與米家智能硬件互聯互通。
- 智能硬件方案商:企業(yè)希望將智能硬件接入小米IoT平臺作為解決方案提供給自己的客戶晚凿;同時,優(yōu)秀的方案商也有機會成為平臺的認證方案商瘦馍,平臺會引薦有研發(fā)資源支持需要的智能硬件企業(yè)歼秽。
- 語音AI平臺:企業(yè)希望其語音AI服務的智能家居技能支持控制小米智能家居。
- 酒店/公寓/地產企業(yè):企業(yè)希望其智慧化項目引入小米智能家居情组。
注:小米IoT開發(fā)者平臺當前僅面向中國大陸地區(qū)的企業(yè)開放燥筷,暫未面向個人開發(fā)者開放。
技術方案
小米IoT開發(fā)者平臺為智能硬件的接入提供兩類技術方案:
方案一:設備直連接入
設備直連接入院崇,即智能硬件通過嵌入小米智能模組或集成SDK的方式直接連接到小米IoT平臺肆氓。該方案適用于以下開發(fā)者(任一條件):
- 新產品接入,同時無自有智能云底瓣、或相對缺少產品智能化經驗谢揪。
- 希望產品與米家APP在體驗上深度集成,用戶可使用米家APP完成從配網添加到控制管理的全部操作捐凭。
- 希望產品在小米眾籌平臺或小米有品中銷售拨扶。
- 希望產品接入后獲得合作推廣資源(如營銷、運營等)茁肠。
方案二:云對云接入
云對云接入患民,即開發(fā)者自有智能云與小米IoT平臺對接,其智能硬件連接自有智能云后垦梆,也間接實現了與小米IoT平臺的接入匹颤。該方案適用于以下開發(fā)者:
- 已有自己的智能云和智能家居APP,產品主要在自有APP中進行添加和管理托猩,但希望同時能被小愛同學印蓖、米家APP控制,或者希望與小米IoT平臺的其他智能硬件實現互聯互通京腥。
- 希望產品接入后獲得合作推廣資源(如營銷另伍、運營等)。
應用接入
針對開發(fā)者的應用(包括APP绞旅、Web摆尝、AI、云)希望控制已接入小米IoT平臺的智能硬件因悲,平臺提供Open API或SDK供應用進行調用堕汞。
接入流程
智能硬件接入流程
Step 1:成為開發(fā)者
開發(fā)者需先在小米IoT開發(fā)者平臺遞交企業(yè)開發(fā)組申請,已審核通過的企業(yè)即成為平臺的開發(fā)者晃琳,可獲得平臺的開發(fā)使用權限讯检。
Step 2:創(chuàng)建產品
對于擬接入平臺的產品琐鲁,建議開發(fā)者先行規(guī)劃產品功能和技術方案,并根據產品規(guī)劃在平臺創(chuàng)建產品人灼。成功創(chuàng)建產品過后可獲得產品在平臺的唯一標識等參數围段,用于產品開發(fā)使用。
Step 3:研發(fā)產品
完成產品創(chuàng)建后投放,即可按照開發(fā)文檔引導進行配置奈泪、開發(fā)、調試工作灸芳。
針對直連接入產品涝桅,開發(fā)者可視產品功能和性能需要選用對應的小米智能模組或設備SDK,產品開發(fā)內容主要包括固件開發(fā)和米家APP擴展程序開發(fā)烙样。
針對云接入產品冯遂,產品開發(fā)內容主要是在自有智能云上按小米IoT設備通信標準與自有協(xié)議進行適配。
Step 4:認證產品
產品在開發(fā)過程中僅支持有限數量的小米賬號進行開發(fā)和調試使用(即開發(fā)測試人員)谒获。若開發(fā)者希望產品上線被全部用戶所使用蛤肌,需向平臺申請產品上線并提交相關檢驗用材料。
平臺的檢驗內容主要涉及與平臺相關的軟件和物料部分批狱,包括平臺配置寻定、米家擴展程序、設備固件等精耐,也會包括整體的用戶交互體驗狼速;但對于硬件本身的質量、包材質量卦停、與平臺無關的軟件功能等不在平臺的檢驗范圍之內向胡,由開發(fā)者自行保證。
Step 5:發(fā)布產品
對于已通過平臺檢驗的產品惊完,平臺會與開發(fā)者就產品簽訂商務協(xié)議僵芹,并將產品相關配置正式上線。同時小槐,平臺會向產品正式授權使用“已接入米家 / works with mijia”商標拇派,該商標代表該產品可以通過米家APP或小愛同學控制,可用于產品的包裝凿跳、說明書件豌、電商頁面、宣傳物料等地方控嗜。
在完成產品上線相關事宜后茧彤,產品即可在市場上進行銷售和推廣。
注:智能硬件需要以直連接入的方式接入平臺后疆栏,方可具備上架小米眾籌或小米有品等渠道的資質曾掂;最終產品是否可成功入駐上述渠道惫谤,以有品團隊的選品評估結論為準,可詳見入駐有品珠洗。
應用接入流程
Step 1:成為開發(fā)者
由于應用需要開通小米賬號授權服務溜歪,開發(fā)者除了需成為小米IoT開發(fā)者平臺的企業(yè)開發(fā)者外,還需注冊成為小米開放平臺的企業(yè)開發(fā)者许蓖。
Step 2:創(chuàng)建應用
開發(fā)者先在小米開放平臺創(chuàng)建應用并開通賬號服務蝴猪,應用信息會自動同步至小米IoT開發(fā)者平臺,開發(fā)者繼續(xù)申請并獲得IoT平臺的權限后蛔糯,便可獲得權限使用Open API或SDK。
Step 3:研發(fā)應用
開發(fā)者可按照開發(fā)文檔引導進行配置窖式、開發(fā)蚁飒、調試工作。
Step 4:發(fā)布應用
開發(fā)者在開發(fā)階段萝喘,平臺對Open API有使用頻率和次數的限制淮逻。在應用開發(fā)完畢后,開發(fā)者需向平臺申請上線應用并與平臺簽訂商務協(xié)議阁簸。
在完成應用上線相關事宜后爬早,應用即可在市場上進行發(fā)布和推廣。
注:該步驟主要面向控制其他企業(yè)開發(fā)組硬件的應用启妹。針對控制自己企業(yè)開發(fā)組的硬件的應用(如將自有硬件對接Alexa)筛严,暫無需經過該步驟。
開放能力
** 2.1 智能硬件直連接入**
智能硬件以硬件直連的方式接入小米IoT開發(fā)者平臺饶米,即硬件中嵌入小米智能模組或集成設備SDK桨啃。
小米智能模組中已內置標準的設備SDK,且將功能接口封裝為串口通信指令格式檬输。適合于自帶MCU的照瘾、控制功能相對簡單的智能硬件,開發(fā)者可直接使用MCU對接小米智能模組丧慈,并按照標準格式通過串口向模組上報或拉取數據析命。
設備SDK適合于帶操作系統(tǒng)的、控制功能相對復雜的智能硬件逃默,也適合無MCU鹃愤、直接在模組中開發(fā)功能的智能硬件,SDK中已實現設備配網完域、賬號綁定昼浦、云端通信、OTA等功能筒主,開發(fā)者只需調用接口并實現硬件自身的功能邏輯即可关噪。
注:智能硬件與平臺進行信令及數據交換的數據格式需為Json格式鸟蟹。
硬件交互體驗
用戶可直接使用米家APP添加設備,針對Wi-Fi和藍牙設備使兔,還可使用米家APP為設備進行配網或配對建钥,詳見 《硬件配網綁定》。
整個添加設備的過程均為米家APP的通用功能虐沥,無需開發(fā)者開發(fā)熊经。開發(fā)者負責開發(fā)的部分只有對應產品的控制界面部分(即米家APP擴展程序),詳見 《米家APP控制》欲险。
硬件開發(fā)類型
針對開發(fā)者不同的硬件開發(fā)類型镐依,平臺提供對應的技術和資料支持:
IP設備
包括Wi-Fi類智能硬件和3/4G智能硬件。
RTOS設備
- MCU + 小米Wi-Fi模組
適用于配有MCU天试、控制功能相對簡單的Wi-Fi類智能硬件槐壳,開發(fā)者只需在MCU按照與模組的標準串口通信格式進行功能開發(fā)和信令傳遞即可。
小米Wi-Fi模組當前包括Wi-Fi單模模組和Wi-Fi藍牙雙模模組兩類模組喜每,目前在售型號請詳見《模組采購》务唐。
- 基于設備SDK(RTOS版本)開發(fā)
適用于未配有MCU、利用模組實現硬件自身的功能邏輯的設備带兜,或者已配有MCU枫笛、但還需在模組進行二次開發(fā)才可以實現預期需要的設備(如MCU通過串口傳輸的數據還需再加工格式才可以上報)。該模式下刚照,開發(fā)者可下載對應模組的SDK進行二次開發(fā)刑巧。
注:現階段暫未開放設備SDK,建議優(yōu)先使用“MCU + 小米Wi-Fi模組”的開發(fā)方式无畔。
Android設備
基于設備SDK(Android版本)開發(fā)海诲,適用于Android系統(tǒng)的智能硬件。
注:內測中檩互。
Linux設備
基于設備SDK(Linux版本)開發(fā)特幔,適用于Linux系統(tǒng)的智能硬件。
Linux SDK下載請詳見《Linux SDK》闸昨。
注:內測中
藍牙BLE設備
基于設備SDK(BLE版本)開發(fā)蚯斯,適用于BLE類型的智能硬件,不支持傳統(tǒng)藍牙類型的饵较。
芯片品牌 | 芯片型號 | SDK |
---|---|---|
Nordic | 51/52 | https://github.com/MiEcosystem/mijia_ble/tree/Nordic |
Dialog | DA14585 | https://github.com/MiEcosystem/mijia_ble/tree/Dialog |
NXP | QN908x / QN902x | https://github.com/MiEcosystem/mijia_ble/tree/NXP |
Cypress | 20706 | https://github.com/MiEcosystem/mijia_ble/tree/cypress |
ST | BlueNRG-1/2 | https://github.com/MiEcosystem/mijia_ble/tree/ST |
Silicon Labs | BG13 | https://github.com/MiEcosystem/mijia_ble/tree/Silabs |
平臺提供兩類BLE協(xié)議拍嵌,MI Beacon(藍牙廣播協(xié)議,負責發(fā)現和公共事件通報) 和MI Ble Service(藍牙連接協(xié)議循诉,負責數據傳輸)横辆,分別詳見《MI Beacon 介紹》和《MI Ble Service 介紹》。
BLE設備的具體技術接入方案可詳見SDK README文檔茄猫。SDK完整使用需通過申請獲取lib文件狈蚤。申請請發(fā)送BLE SDK使用申請郵件困肩,詳見《開發(fā)者反饋指引》。
硬件接入流程
- 創(chuàng)建產品
- 定義產品功能
- 配置功能物料
- 開發(fā)硬件
- 開發(fā)米家APP擴展程序
- 配置自動化
- 配置消息推送
- 上線產品
以上流程適合一般智能硬件的開發(fā)接入脆侮。特殊類型的智能硬件(如智能音箱)的開發(fā)接入亦符合一般智能硬件的開發(fā)接入過程锌畸,僅在部分步驟中可能或增加、或省略一些操作靖避。
詳見 ?? 智能硬件直連接入創(chuàng)建產品
2.2 智能硬件云接入
智能硬件以云對云方式接入小米IoT開發(fā)者平臺潭枣,即開發(fā)者自有智能云與小米IoT平臺對接,其智能硬件連接自有智能云后幻捏,也間接實現了與小米IoT平臺的接入盆犁。
注:現階段針對云對云方式接入的產品暫先支持小愛同學進行控制,后續(xù)陸續(xù)會支持米家APP控制和與其他智能硬件互聯互通篡九。
該方式適用于符合以下條件的開發(fā)者(第三方廠商):
- 擬接入MIOT平臺的智能硬件為IP聯網硬件谐岁,即Wi-Fi類硬件、2-4G類硬件瓮下、網關+子設備類硬件(如Zigbee設備)等翰铡;
- 擁有自己的云(服務器)钝域,且云的穩(wěn)定性和可靠性較好讽坏,擬接入MIOT平臺的自有智能硬件連接到自己的云;
- 擁有自己的APP例证,支持對自有智能硬件進行配網和添加路呜;
- 擁有獨立的用戶賬號體系(非使用微信登錄等第三方開放賬號),且賬號體系支持Oauth 2.0協(xié)議對外授權织咧。OAuth登錄頁面需要有針對移動端進行適配胀葱。
硬件交互體驗
用戶可通過以下任一方式實現將設備添加到小愛同學可控制設備列表里。
小愛音箱APP
用戶購買并拿到設備后笙蒙,先使用開發(fā)者自有APP進行配網和添加綁定抵屿;然后,用戶只需在小愛音箱APP中綁定在開發(fā)者自有APP的賬號捅位,即可將自有APP中的設備添加到小愛同學可控制設備列表中轧葛。
注:當前支持Android版小愛音箱APP,iOS版即將推出艇搀。
米家APP
用戶購買并拿到設備后尿扯,先使用開發(fā)者自有APP進行配網和添加綁定;然后焰雕,用戶只需在米家APP中綁定在開發(fā)者自有APP的賬號衷笋,即可將自有APP中的設備添加到小愛同學可控制設備列表中。
注:由于該功能近期剛推出矩屁,當前功能入口和界面還會隨功能演進和推廣進行進一步完善和調整辟宗,以保證用戶的實際使用體驗爵赵。
硬件接入流程
- 配置參數
- 創(chuàng)建產品
- 定義產品功能
- 適配平臺協(xié)議
- 上線產品
智能硬件云接入見 ?? 智能硬件云接入
小米 平臺相關SDK ?? 下載地址
平臺完整智能詳見 ?? 小米IOT開發(fā)指南