資料介紹
描述
1.高層架構(gòu)
2.先決條件
運(yùn)行此演示需要以下工具。
-
所選 oneM2M 平臺(tái)的運(yùn)行時(shí)環(huán)境(參見第 3 節(jié)):
- Java 運(yùn)行時(shí)環(huán)境 (JRE >= 1.8),如果你使用Eclipse OM2M
- Python 3 環(huán)境,如果你使用ACME
- NodeJS 環(huán)境,如果你使用KETI Mobius - Arduino IDE 1.8.9(或更高版本)
- 您最喜歡的用于開發(fā) IoT 應(yīng)用程序的 IDE
- 物聯(lián)網(wǎng)應(yīng)用程序的Node.js 環(huán)境或Python 環(huán)境
- 郵遞員(可選)
3.下載項(xiàng)目
從主存儲(chǔ)庫下載必要的資源:
該存儲(chǔ)庫包括不同的項(xiàng)目:
- oneM2M-IoT-Device : NodeMCU Sketch(es)
- oneM2M-IoT-Application :用 Node.js 和 Python 編寫的物聯(lián)網(wǎng)應(yīng)用程序
- oneM2M-IoT-Device-Simulator :用于模擬各種物聯(lián)網(wǎng)傳感器和執(zhí)行器的 Node.js 程序
您還需要實(shí)現(xiàn) oneM2M 平臺(tái)。存在不同的平臺(tái),我們可以引用一些:
- Eclipse OM2M :Java 中的開源實(shí)現(xiàn)(鏈接)
- ACME :Python 中的開源實(shí)現(xiàn)(鏈接)
- KETI Mobius :Node.js 中的開源實(shí)現(xiàn)(鏈接)
對(duì)于本教程,將使用ACME實(shí)現(xiàn)。平臺(tái)的安裝、配置和運(yùn)行請(qǐng)參考官方文檔。
https://github.com/ankraft/ACME-oneM2M-CSE
4.啟動(dòng)oneM2M兼容的物聯(lián)網(wǎng)平臺(tái)
4.1。配置 IoT 平臺(tái) (ACME)
默認(rèn)配置可用于本地演示。物聯(lián)網(wǎng)平臺(tái)將監(jiān)聽 8080 端口。每次重啟后數(shù)據(jù)庫都會(huì)重置。
如果需要,您可以通過編輯文件來更改物聯(lián)網(wǎng)平臺(tái)的配置:“ acme.ini ”。
4.2. 啟動(dòng) IoTPlatform (ACME)
物聯(lián)網(wǎng)平臺(tái)可以通過以下方式啟動(dòng):
python3 acme.py
您應(yīng)該在日志末尾看到“CSE 已啟動(dòng)”。
4.3. 登錄 ACME 網(wǎng)頁界面
在瀏覽器中打開以下 URL 訪問 ACME IoT 平臺(tái)網(wǎng)頁界面:http: //127.0.0.1 :8080/
使用默認(rèn)配置,輸入發(fā)起人“ CAdmin” ,然后輸入“ Connect ”
然后您將能夠看到 oneM2M 資源樹:
5. 連接您的物聯(lián)網(wǎng)設(shè)備
NodeMCU 源代碼位于“oneM2M-IoT-Device”文件夾中。
5.1。原理圖
使用以下組件將電位器、4 位顯示器、按鈕、LCD 顯示器連接到 NodeMCU 板:
- 面包板
- NodeMCU板
- 電位器
- 按鈕
- 4 位 7 段顯示器 (TM1637)
- 液晶顯示器 (2x16)
5.2. 為 NodeMCU 開發(fā)設(shè)置 Arduino IDE
如果尚未安裝,請(qǐng)從以下鏈接下載并安裝 Arduino ID
注意:我們不建議在此演示中使用 Arduino Web 編輯器,因?yàn)椴恢С?NodeMCU 板。
插入時(shí),如果未檢測到 NodeMCU 端口,則需要使用以下鏈接手動(dòng)下載并安裝 USB 驅(qū)動(dòng)程序:https ://github.com/nodemcu/nodemcu-devkit/tree/master/Drivers
5.3. 為 Arduino IDE 添加 NodeMCU 板支持
首先,打開 Arduino IDE,轉(zhuǎn)到“文件”>“首選項(xiàng)”條目。
在“其他板管理器 URL”文本框中復(fù)制以下 URL :
單擊“確定”關(guān)閉“首選項(xiàng)”對(duì)話框。
完成上述步驟后,進(jìn)入“工具”>“Board:...” ,然后選擇“Board Manager”
輸入文本框“esp8266” ,然后導(dǎo)航到“esp8266 by esp8266 community”并“安裝”Arduino 軟件。
轉(zhuǎn)到“工具”>“板...” ,然后選擇“NodeMCU 1.0”板。
完成上述所有過程后,您就可以使用 Arduino IDE 對(duì) NodeMCU 板進(jìn)行編程了。
5.5. 配置 NodeMCU 草圖
在您的 Arduino IDE 中打開草圖“ NodeMCU_PotentiometerSensor-DisplayActuator.ino ”。
設(shè)置你的WIFI參數(shù)
-
char* WIFI_SSID = "FILL_THE_WIFI_SSID";
-
char* WIFI_PSWD = "FILL_THE_WIFI_PSWD";
在您的網(wǎng)絡(luò)中設(shè)置 ACME IoT 平臺(tái)的 IP 地址:
-
String CSE_IP = "X.X.X.X";
5.6. 編譯 NodeMCU 草圖
單擊驗(yàn)證按鈕以編譯草圖。
編譯輸出:
5.7. 將草圖上傳到NodeMU 板
單擊上傳按鈕將草圖上傳到 NodeMCU 板。
上傳輸出:
5.8. 使用串行監(jiān)視器調(diào)試代碼執(zhí)行
單擊按鈕打開 Arduino 串行監(jiān)視器以顯示 NodeMCU 控制臺(tái)。
然后在打開串行監(jiān)視器后從下拉列表中選擇 115200。
5.9. 在 ACME Web 界面上查看 IoT 設(shè)備資源
您應(yīng)該會(huì)看到“PotentiometerSensor”應(yīng)用實(shí)體資源,其中包含在 oneM2M Web 界面上創(chuàng)建的“DESCRIPTOR”和“DATA”容器。
您還應(yīng)該看到在 oneM2M Web 界面上創(chuàng)建的帶有“DESCRIPTOR”、“DATA”和“COMMAND”容器的“DisplayActuator”應(yīng)用程序?qū)嶓w資源。
6. 連接您的 IoT 應(yīng)用程序
電位器監(jiān)控和顯示管理應(yīng)用源碼以NodeJS和Python提供。文件夾中提供了源代碼:
-
"oneM2M-IoT-Application/nodejs/onem2m-monitor.js"
-
"oneM2M-IoT-Application/python/onem2m-monitor.py"
6.1。配置應(yīng)用程序
您可以使用提供的兩個(gè)應(yīng)用程序之一:NodeJS或Python
6.1。選項(xiàng) A = NodeJS IoT 應(yīng)用程序
使用您喜歡的文本編輯器打開文件nodejs / config/default.json 。并編輯必要的配置參數(shù)。
設(shè)置 ACME 平臺(tái)的 IP 地址(變量“ monitorIP ”)。如果您在同一臺(tái)計(jì)算機(jī)上運(yùn)行 ACME 平臺(tái)和應(yīng)用程序,則可以保留 localhost (127.0.0.1)。
6.1。選項(xiàng) B = Python IoT 應(yīng)用程序
使用您喜歡的文本編輯器打開文件python/default.json 。并編輯必要的配置參數(shù)。
設(shè)置oneM2M平臺(tái)的IP地址(變量“monitorIP ” )。如果您在同一臺(tái)機(jī)器上運(yùn)行 oneM2M 平臺(tái)和應(yīng)用程序,則可以保留 localhost (127.0.0.1)。
6.2. 啟動(dòng)應(yīng)用程序
6.2. 選項(xiàng) A = NodeJS IoT 應(yīng)用程序
在終端上,使用npm工具安裝以下 Node.js 模塊(安裝 Node.js 時(shí)默認(rèn)安裝):
> npm install express
> npm install request
> npm install body-parser
> npm install request
> npm install yargs
> npm install config
使用以下命令啟動(dòng) Node.js oneM2M IoT 應(yīng)用程序:
> node onem2m-monitor.js -s Potentiometer -a Display
6.2. 選項(xiàng) B = Python IoT 應(yīng)用程序
在終端上,使用pip工具安裝以下 Python 模塊(可以在安裝 Python 時(shí)安裝):
> pip install requests
> pip install flask
使用以下命令啟動(dòng) Python oneM2M IoT 應(yīng)用程序:
> python onem2m-monitor.py -s Potentiometer -a Display
6.3. 在 ACME Web 界面上查看 IoT 應(yīng)用程序資源
您應(yīng)該會(huì)看到Monitor
在 oneM2M Web 界面上創(chuàng)建的“ ”應(yīng)用程序?qū)嶓w (AE) 資源。還要檢查下訂閱資源的創(chuàng)建PotentiometerSensor/DATA
7. 示范
當(dāng)您改變電位器的位置時(shí),它的值會(huì)直接復(fù)制到 4 位顯示器上。
當(dāng)您按下按鈕時(shí),電位器的值會(huì)通過 WiFi 發(fā)送到遠(yuǎn)程 CSE。然后將該值通知給監(jiān)控應(yīng)用程序。
根據(jù)接收到的值,監(jiān)視器應(yīng)用程序?qū)⑼ㄟ^ CSE 向 LCD 屏幕發(fā)送特定消息。
如果該值低于 512 (分別高于 512 ),則監(jiān)視器應(yīng)用程序?qū)l(fā)送“Value is LOW” (分別為“Value is HIGH” )以顯示在 LCD 屏幕上。
8. 更進(jìn)一步
如果您有第二個(gè) NodeMCU,您可以將傳感器和執(zhí)行器拆分到兩個(gè) NodeMCU 設(shè)備上。
8.1 架構(gòu)
8.2 原理圖
8.3 NodeMCU 草圖
您可以在文件夾中找到拆分為兩個(gè)新草圖的原始草圖代碼:
"oneM2M-IoT-Device/PotentiometerSensor_DisplayActuator"
NodeMCU 1(僅限傳感器)
-
"PotentiometerSensor/PotentiometerSensor.ino"
NodeMCU 2(僅限執(zhí)行器)
-
"DisplayActuator/DisplayActuator.ino"
8.4 物聯(lián)網(wǎng)應(yīng)用
感謝 oneM2M 標(biāo)準(zhǔn),您可以使用相同的 IoT 應(yīng)用程序而無需進(jìn)行任何更改 :-)
- NodeMCU ESP8266啟用AJAX的Web服務(wù)器
- DIY PCB ESP8266 NodeMCU電源
- esp8266 nodeMCU arduino開發(fā)環(huán)境
- NodeMCU ESP8266開發(fā)入門
- Hello World, 來自ESP8266和NodeMCU的問候
- ESP8266-NodeMCU項(xiàng)目(二):ESP8266-NodeMCU+bl
- ESP8266(NodeMCU)建立最簡單的網(wǎng)頁
- Esp8266(NodeMCU)連接阿里云服務(wù)器
- NODEMCU學(xué)習(xí)筆記-01 esp8266 WIFI殺手 源碼上傳版 0次下載
- Arduino-ESP8266 NodeMCU的UDP通信
- ESP8266 nodemcu使用arduino編程點(diǎn)亮OLED測試
- 【物聯(lián)網(wǎng)】基礎(chǔ)篇 ESP8266-NodeMCU學(xué)習(xí)一
- 5、ESP8266 NodeMCU 數(shù)字輸入和數(shù)字輸出
- ESP8266-NodeMCU
- ESP8266 Nodemcu學(xué)習(xí)心得②
- ESP8266紅外信號(hào)收發(fā)實(shí)驗(yàn) 2013次閱讀
- ESP8266硬件 4865次閱讀
- ESP8266/ESP32自動(dòng)下載原理 4741次閱讀
- 如何使用按鈕式數(shù)字電位器的可調(diào)電壓輸出設(shè)計(jì) 2957次閱讀
- 如何使用ESP8266制作可配置的Web服務(wù)器 1.3w次閱讀
- 如何利用ESP8266制作一個(gè)簡單的四軸飛行器 5117次閱讀
- 如何使用ESP8266開發(fā)板制作光強(qiáng)度檢測器 4305次閱讀
- ESP8266上運(yùn)行代碼如何實(shí)現(xiàn) 3039次閱讀
- 如何利用ESP8266實(shí)現(xiàn)智能手表的設(shè)計(jì) 3369次閱讀
- STM32系列設(shè)計(jì),ESP8266聯(lián)網(wǎng)授時(shí)時(shí)鐘 8097次閱讀
- esp8266中文資料匯總(esp8266引腳圖_與單片機(jī)連接_串口wifi實(shí)例) 22.5w次閱讀
- esp8266固件如何升級(jí)_ESP8266WIFI模塊固件升級(jí) 4.2w次閱讀
- ESP8266 Wi-Fi到底傳多遠(yuǎn)_esp8266 wifi信號(hào)強(qiáng)度測距 5.2w次閱讀
- esp8266 at指令集詳解 14.3w次閱讀
- esp8266串口wifi實(shí)例 1.9w次閱讀
下載排行
本周
- 1A7159和A7139射頻芯片的資料免費(fèi)下載
- 0.20 MB | 55次下載 | 5 積分
- 2PIC12F629/675 數(shù)據(jù)手冊(cè)免費(fèi)下載
- 2.38 MB | 36次下載 | 5 積分
- 3PIC16F716 數(shù)據(jù)手冊(cè)免費(fèi)下載
- 2.35 MB | 18次下載 | 5 積分
- 4dsPIC33EDV64MC205電機(jī)控制開發(fā)板用戶指南
- 5.78MB | 8次下載 | 免費(fèi)
- 5STC15系列常用寄存器匯總免費(fèi)下載
- 1.60 MB | 7次下載 | 5 積分
- 6模擬電路仿真實(shí)現(xiàn)
- 2.94MB | 4次下載 | 免費(fèi)
- 7PCB圖繪制實(shí)例操作
- 2.92MB | 2次下載 | 免費(fèi)
- 8零死角玩轉(zhuǎn)STM32F103—指南者
- 26.78 MB | 1次下載 | 1 積分
本月
- 1ADI高性能電源管理解決方案
- 2.43 MB | 452次下載 | 免費(fèi)
- 2免費(fèi)開源CC3D飛控資料(電路圖&PCB源文件、BOM、
- 5.67 MB | 141次下載 | 1 積分
- 3基于STM32單片機(jī)智能手環(huán)心率計(jì)步器體溫顯示設(shè)計(jì)
- 0.10 MB | 137次下載 | 免費(fèi)
- 4A7159和A7139射頻芯片的資料免費(fèi)下載
- 0.20 MB | 55次下載 | 5 積分
- 5PIC12F629/675 數(shù)據(jù)手冊(cè)免費(fèi)下載
- 2.38 MB | 36次下載 | 5 積分
- 6如何正確測試電源的紋波
- 0.36 MB | 19次下載 | 免費(fèi)
- 7PIC16F716 數(shù)據(jù)手冊(cè)免費(fèi)下載
- 2.35 MB | 18次下載 | 5 積分
- 8Q/SQR E8-4-2024乘用車電子電器零部件及子系統(tǒng)EMC試驗(yàn)方法及要求
- 1.97 MB | 8次下載 | 10 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935121次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420062次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233088次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191367次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183335次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73810次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評(píng)論
查看更多