1. 程式人生 > >物聯網開發?只會 JS 的你一樣能行!

物聯網開發?只會 JS 的你一樣能行!

原文連結

摘要: 配合 AliOS Things 的 TinyEngine 引擎和 Link Develop 的 Bone.js 框架,網際網路開發者無需掌握其他程式語言,即可無縫快速切入物聯網開發。

上篇文章 簡單闡述了嵌入式開發者和網際網路開發者通過阿里雲 IoT 平臺產品無縫切入物聯網開發的路徑,不少開發者表示躍躍欲試。本篇文章提供一個開發實戰供網際網路開發者參考,沒錯,全流程只有你熟悉的 Javascript,什麼 C&JAVA,通通閃開。

一、Demo概述

本例使用已移植 AliOS Things 的 Developer Kit 開發板作為開發硬體,實現板載溫溼度感測器上報 Link Develop 雲端,並通過 Web App 展示。

二、開發流程

0. 環境配置

AliOS Things 是阿里雲 IoT 下的、面向 IoT 領域的、高可伸縮的物聯網作業系統,針對網際網路開發者的需求,內建了 JavaScript 引擎 —— [email protected],讓以往依賴 C/C++ 才可以進行的物聯網開發亦可以使用 Javascript 語言完成。同時 Tinyengine 進行了語法的精簡,使資源相對緊張的嵌入式裝置亦能執行 JS 應用。

使用 Tinyengine 進行裝置端開發首先需要進行環境配置,具體步驟:

  1. 安裝 Node.js (版本 >= 6.4.0,涉及前端開發,建議 >= 8.9.0)
  2. 安裝be-cli工具,支援串列埠和網路更新 app.bin:npm i be-cli -g -P

    如果執行上述全域性安裝之後執行 `be` 還提示找不到命令,則執行下面命令得到 Nodejs 的模組安裝路徑

    npm prefix -g將輸出的全域性安裝路徑加入的環境變數的 Path 條目中即可。

  3. Windows 使用者專屬:安裝 Python 軟體、Visual Studio 軟體及 AliOS 外掛,之後安裝 硬體 USB 驅動
  4. 安裝 Git 並下載 AliOS Things 原始碼:git clone [email protected]:alibaba/AliOS-Things.git

環境配置之後我們正式步入開發:

1. 雲端開發

之後,新建專案(專案名任意)—— 裝置開發 —— 新增產品 —— 所屬分類選擇『其他』,通訊方式選擇 WiFi ,資料格式選擇Alink——完成。

接著在產品詳情內選擇『新增自定義功能』,新增如下功能設定:

完成後選擇『裝置開發』標籤頁 —— 新增除錯裝置,記錄下裝置三元組。

2. 裝置端開發

使用編譯器開啟 AliOS Things 原始碼目錄,開啟 AliOS-Things/framework/tinyengine/samples/app/lcd_shtc1_mqtt/device.js 檔案,修改『裝置三要素』為上步中獲取的測試裝置『裝置三元組』,之後儲存。

使用終端編譯示例應用:be -p samples/app/lcd_shtc1_mqtt

將開發板連線至電腦並執行:be connnect

最後燒錄編譯後的 bin 檔案至裝置:be push app.bin

重啟裝置,裝置啟動後會自動載入並執行index.js這個檔案,同時上報資料至 Link Develop 平臺。

3. Web App 開發

為幫助大家快速上手,這裡使用了新版 Link Develop 平臺自帶的視覺化 Web App 搭建功能,只需拖入溫溼度計元件並連線資料即可。

Jietu20180725_195755_2x

配合 AliOS Things 的 TinyEngine 引擎和 Link Develop 的 Bone.js 框架,網際網路開發者無需掌握其他程式語言,即可無縫快速切入物聯網開發,也彰顯了阿里雲 IoT 平臺的包容性和獨創性。各位網際網路開發者,趕緊丟掉猶豫,上手試試吧!