電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>oneM2M電位器/按鈕/LCD與NodeMCU (ESP8266)

oneM2M電位器/按鈕/LCD與NodeMCU (ESP8266)

2022-11-15 | zip | 0.06 MB | 次下載 | 免費

資料介紹

描述

1.高層架構(gòu)

pYYBAGNxjUCAFY-8AADaeKHZ4z4209.png
?

2.先決條件

運行此演示需要以下工具。

  • 所選 oneM2M 平臺的運行時環(huán)境(參見第 3 節(jié)):
    - Java 運行時環(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.下載項目

從主存儲庫下載必要的資源:

https://github.com/oneM2M-教程

該存儲庫包括不同的項目:

  • 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 程序

您還需要實現(xiàn) oneM2M 平臺。存在不同的平臺,我們可以引用一些:

  • Eclipse OM2M :Java 中的開源實現(xiàn)(鏈接
  • ACME :Python 中的開源實現(xiàn)(鏈接
  • KETI Mobius :Node.js 中的開源實現(xiàn)(鏈接

對于本教程,將使用ACME實現(xiàn)。平臺的安裝、配置和運行請參考官方文檔。

https://github.com/ankraft/ACME-oneM2M-CSE

4.啟動oneM2M兼容的物聯(lián)網(wǎng)平臺

4.1。配置 IoT 平臺 (ACME)

默認(rèn)配置可用于本地演示。物聯(lián)網(wǎng)平臺將監(jiān)聽 8080 端口。每次重啟后數(shù)據(jù)庫都會重置。

如果需要,您可以通過編輯文件來更改物聯(lián)網(wǎng)平臺的配置:acme.ini ”。

4.2. 啟動 IoTPlatform (ACME)

物聯(lián)網(wǎng)平臺可以通過以下方式啟動:

python3 acme.py

您應(yīng)該在日志末尾看到“CSE 已啟動”。

4.3. 登錄 ACME 網(wǎng)頁界面

在瀏覽器中打開以下 URL 訪問 ACME IoT 平臺網(wǎng)頁界面:http: //127.0.0.1 :8080/

poYBAGNxjUKANJTJAAAe1SM5sNg023.png
?

使用默認(rèn)配置,輸入發(fā)起人“ CAdmin” ,然后輸入“ Connect

然后您將能夠看到 oneM2M 資源樹:

pYYBAGNxjUSAN69oAABlwkpL98w379.png
?

5. 連接您的物聯(lián)網(wǎng)設(shè)備

NodeMCU 源代碼位于“oneM2M-IoT-Device”文件夾中。

5.1。原理圖

使用以下組件將電位器、4 位顯示器、按鈕、LCD 顯示器連接到 NodeMCU 板:

  • 面包板
  • NodeMCU板
  • 電位器
  • 按鈕
  • 4 位 7 段顯示器 (TM1637)
  • 液晶顯示器 (2x16)
poYBAGNxjUeAeINZAAGiXmdmkZE991.png
?

5.2. 為 NodeMCU 開發(fā)設(shè)置 Arduino IDE

如果尚未安裝,請從以下鏈接下載并安裝 Arduino ID

注意:我們不建議在此演示中使用 Arduino Web 編輯器,因為不支持 NodeMCU 板。

插入時,如果未檢測到 NodeMCU 端口,則需要使用以下鏈接手動下載并安裝 USB 驅(qū)動程序:https ://github.com/nodemcu/nodemcu-devkit/tree/master/Drivers

5.3. 為 Arduino IDE 添加 NodeMCU 板支持

首先,打開 Arduino IDE,轉(zhuǎn)到“文件”>“首選項”條目。

在“其他板管理器 URL”文本框中復(fù)制以下 URL :

pYYBAGNxjUmAanmoAAA9oyLKnFM386.png
?

單擊“確定”關(guān)閉“首選項”對話框。

完成上述步驟后,進入“工具”>“Board:...” ,然后選擇“Board Manager”

pYYBAGNxjO6ASnWsAAB7mEamYSo463.png
?

輸入文本框esp8266,然后導(dǎo)航到“esp8266 by esp8266 community”并“安裝”Arduino 軟件。

pYYBAGNxjU-AM83WAAA3o3LZW-g630.png
?

轉(zhuǎn)到“工具”>“板...” ,然后選擇“NodeMCU 1.0”板。

完成上述所有過程后,您就可以使用 Arduino IDE 對 NodeMCU 板進行編程了。

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 平臺的 IP 地址:

  • String CSE_IP = "X.X.X.X";

5.6. 編譯 NodeMCU 草圖

單擊驗證按鈕以編譯草圖。

poYBAGNxjVGAHb8zAAAC4Izm5Rk201.png
?

編譯輸出:

pYYBAGNxjPSAVZiTAAAgqEmOl-w962.png
?

5.7. 將草圖上傳到NodeMU 板

單擊上傳按鈕將草圖上傳到 NodeMCU 板。

pYYBAGNxjVaAbxIgAAAC45AZZ4Y023.png
?

上傳輸出:

pYYBAGNxjPiABXw1AAAtwSd7TuA077.png
?

5.8. 使用串行監(jiān)視器調(diào)試代碼執(zhí)行

單擊按鈕打開 Arduino 串行監(jiān)視器以顯示 NodeMCU 控制臺。

poYBAGNxjVqAK7dYAAAF0n7TVOo475.png
?

然后在打開串行監(jiān)視器后從下拉列表中選擇 115200。

5.9. 在 ACME Web 界面上查看 IoT 設(shè)備資源

您應(yīng)該會看到“PotentiometerSensor”應(yīng)用實體資源,其中包含在 oneM2M Web 界面上創(chuàng)建的“DESCRIPTOR”和“DATA”容器。

您還應(yīng)該看到在 oneM2M Web 界面上創(chuàng)建的帶有“DESCRIPTOR”、“DATA”和“COMMAND”容器的“DisplayActuator”應(yīng)用程序?qū)嶓w資源。

pYYBAGNxjV2ACVARAAF44Y00td8154.png
?

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)用程序

您可以使用提供的兩個應(yīng)用程序之一:NodeJSPython

6.1。選項 A = NodeJS IoT 應(yīng)用程序

使用您喜歡的文本編輯器打開文件nodejs / config/default.json 。并編輯必要的配置參數(shù)。

設(shè)置 ACME 平臺的 IP 地址(變量“ monitorIP ”)。如果您在同一臺計算機上運行 ACME 平臺和應(yīng)用程序,則可以保留 localhost (127.0.0.1)。

6.1。選項 B = Python IoT 應(yīng)用程序

使用您喜歡的文本編輯器打開文件python/default.json 。并編輯必要的配置參數(shù)。

設(shè)置oneM2M平臺的IP地址(變量“monitorIP )。如果您在同一臺機器上運行 oneM2M 平臺和應(yīng)用程序,則可以保留 localhost (127.0.0.1)。

6.2. 啟動應(yīng)用程序

6.2. 選項 A = NodeJS IoT 應(yīng)用程序

在終端上,使用npm工具安裝以下 Node.js 模塊(安裝 Node.js 時默認(rèn)安裝):

> npm install express
> npm install request
> npm install body-parser
> npm install request
> npm install yargs
> npm install config

使用以下命令啟動 Node.js oneM2M IoT 應(yīng)用程序:

> node onem2m-monitor.js -s Potentiometer -a Display

6.2. 選項 B = Python IoT 應(yīng)用程序

在終端上,使用pip工具安裝以下 Python 模塊(可以在安裝 Python 時安裝):

> pip install requests
> pip install flask

使用以下命令啟動 Python oneM2M IoT 應(yīng)用程序:

> python onem2m-monitor.py -s Potentiometer -a Display

6.3. 在 ACME Web 界面上查看 IoT 應(yīng)用程序資源

您應(yīng)該會看到Monitor在 oneM2M Web 界面上創(chuàng)建的“ ”應(yīng)用程序?qū)嶓w (AE) 資源。還要檢查下訂閱資源的創(chuàng)建PotentiometerSensor/DATA

pYYBAGNxjV-AfiDrAAF_StiMUZw330.png
?

7. 示范

當(dāng)您改變電位器的位置時,它的值會直接復(fù)制到 4 位顯示器上。

當(dāng)您按下按鈕時,電位器的值會通過 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 屏幕上。

?
?
?
pYYBAGNxjWSAC1hgAAajmSw68uo180.jpg
?
1 / 3
?
poYBAGNxjWeAJypzAACS8KeyhdY742.jpg
?

8. 更進一步

如果您有第二個 NodeMCU,您可以將傳感器和執(zhí)行器拆分到兩個 NodeMCU 設(shè)備上。

8.1 架構(gòu)

poYBAGNxjWmAVbIGAAEdXxqOcLA712.png
?

8.2 原理圖

pYYBAGNxjW2AI5foAAIQQmVaaY8820.png
?

8.3 NodeMCU 草圖

您可以在文件夾中找到拆分為兩個新草圖的原始草圖代碼:

"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)用程序而無需進行任何更改 :-)


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學(xué)會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費