資料介紹
描述
所以你想構(gòu)建一個(gè)很酷的 -AI-ML 東西,但你沒有整天坐下來(lái)為你的模型制作數(shù)據(jù)樣本。好吧,自動(dòng)化那件事我的朋友。
我這樣做是為了在 Edge Impulse 中為我的模型獲取更好的數(shù)據(jù)。我將它連接到Github 存儲(chǔ)庫(kù)中的示例代碼的溫度傳感器,但這只是一個(gè)示例,EdgeImpulse.py 模塊可以在您的項(xiàng)目中單獨(dú)使用您的傳感器。
獲取代碼
在新目錄中刪除此命令:
git clone https://github.com/cameronbunce/ESP32-Edge-Impulse.git
邊緣脈沖
您需要在 上創(chuàng)建一個(gè)Edge Impulse 帳戶并為初學(xué)者克隆我的項(xiàng)目(或者如果您已經(jīng)熟悉 Edge Impulse,可以隨意創(chuàng)建自己的項(xiàng)目)。對(duì)于您自己的項(xiàng)目,您將獲得自己的 API 密鑰。從項(xiàng)目主頁(yè)單擊頂部的鍵。單擊右側(cè)的“添加新的 API 密鑰”。給它起一個(gè)傻乎乎的名字,然后選擇“Ingestion”的角色,點(diǎn)擊“Create”并復(fù)制這個(gè)key。將此密鑰粘貼到您本地的 secret_stub.py 副本中并將其另存為 secret.py,然后返回 API 密鑰下方的 HMAC 密鑰的 API 頁(yè)面。這也包含在您制作的新秘密文件中,它用于簽署您上傳到 API 的文件。
硬件設(shè)置
從通用的 ESP32 開始,如果您愿意,可以使用面包板、穿孔板或定制 PCB。將 DS18B20 傳感器連接到 Vcc 和 Gnd,并使用 4.7k 歐姆上拉電阻將數(shù)據(jù)連接到 ESP32 引腳 2。您可以更改它,但此處的代碼中使用了 Pin 2。我們將在下面查看您可以更改的位置。
軟件設(shè)置
我為最新的 Pip3 版本更新了 Python3,并下載了 esptool.py 和 adafruit-ampy。如果您沒有類似的東西,您可能還需要 Thonny 或 Mu。
pip3 install esptool pip3 install adafruit-ampy
我正在使用來(lái)自https://micropython.org/download/esp32/的每晚構(gòu)建的 MicroPython,因?yàn)樗幸粋€(gè)內(nèi)置的包管理器,我們將使用它。我在此使用的文件是 esp32-20221220-unstable-v1.19.1-782-g699477d12.bin 但可能有更新的文件可用。
我們首先清理電路板,我的 Mac 將我的設(shè)備稱為 tty.usbserial-0001,但你的可能會(huì)有所不同。通過終端使用 `ls /dev | 檢查這個(gè) grep tty` 在連接你的開發(fā)板之前和之后。
?
esptool.py --chip esp32 -p /dev/tty.usbserial-0001 erase_flash
?
然后我們將 MicroPython 的固件寫入設(shè)備。
?
esptool.py --chip esp32 -p /dev/tty.usbserial-0001 --baud 460800 write_flash -z 0x1000 esp32-20221220-unstable-v1.19.1-782-g699477d12.bin
?
現(xiàn)在我們需要上網(wǎng)。您可以將所有命令都輸入到 Mu REPL 窗口中,這是一種很好的學(xué)習(xí)方式,但我們可以在這里做一件事,讓我們的未來(lái)更輕松。如果您在上面開始填寫您的 secret.py 文件,那么您現(xiàn)在要填寫其余部分。否則,現(xiàn)在我們需要一個(gè)名為 secret.py 的文件中的 ssid 和密碼部分并加載到 ESP32 上。所以制作你的 secret.py 文件并至少填寫:
?
ssid = "MySSID" password = "Sup3r5ecr3tP4ssword"
?
并使用 ampy 將該文件提交給董事會(huì)
?
ampy -p /dev/tty.usbserial-0001 put /path/to/secret.py
?
現(xiàn)在在 Mu 中,您可以將以下內(nèi)容粘貼到選項(xiàng)卡中,打開 REPL,然后按運(yùn)行。您的 ESP32 將使用存儲(chǔ)在秘密文件中的 SSID 和密碼連接到您的家庭網(wǎng)絡(luò),然后它將使用該連接使用 mip(它是 pip 的 Micropython 版本)下拉 HMAC 庫(kù)。HMAC 是我們將用來(lái)對(duì)上傳到 Edge Impulse 的消息進(jìn)行簽名的庫(kù)。
?
import network, mip, secret wlan = network.WLAN(network.STA_IF) wlan.active(True) if not wlan.isconnected(): wlan.connect(secret.ssid, secret.password) while not wlan.isconnected(): pass mip.install('hmac')
?
使用完整的 secret.py 文件,并將 DS18B20 傳感器連接到 Pin 2,EdgeImpluse_DS18B20_example.py在 Tests and Examples 文件夾中查看。在第 16 行,我們看到以下內(nèi)容。
?
import json, time, hmac, hashlib import ubinascii, network, ds18x20, onewire, secret import urequests as requests from machine import Pin, WDT debug = True SensorPin = 2 # a DS18B20 attached on pin 2
?
如果您使用了不同的引腳,您可以將 SensorPin 連接到您使用的引腳。調(diào)試消息將打印到串行接口,因此您可以觀察以這種方式上傳的任何問題。有了那個(gè)集合,我們將把它放在板上,但將它重命名為main.py以便板子運(yùn)行。
?
ampy -p /dev/tty.usbserial-0001 put EdgeImpluse_DS18B20_example.py main.py
?
完成后(`ampy...put...` 對(duì)我來(lái)說需要大約 16 秒),您可以在 Mu 中打開 REPL 并觀察出現(xiàn)的調(diào)試消息。一個(gè)樣本是10個(gè)讀數(shù),間隔10秒,上傳也需要一點(diǎn)時(shí)間,所以程序運(yùn)行一個(gè)周期在2分鐘左右。它不循環(huán)。
如果您的上傳沒有出現(xiàn)錯(cuò)誤,并且數(shù)據(jù)顯示在 Edge Impulse 中,那么您就可以開始使用存儲(chǔ)庫(kù)的主目錄了。
LongRunning.py在 ESP32 上使用深度睡眠來(lái)節(jié)省電池電量,并在需要時(shí)間隔一整天讀取讀數(shù)。讓我們看看在哪里可以找到這些時(shí)期的控件。
?
interval = 600000 # 10 minutes SensorPin = 2 ReadingBatch = 145 # 24 hours of readings with interval = 10 minutes being 144
?
SensorPin跟以前一樣,就是沒有debug?我們將任何重要消息寫入 ESP32 上的閃存。當(dāng)我們將處理器置于深度睡眠狀態(tài)時(shí),我們必須確保我們需要的任何信息都在閃存中,因此傳感器讀數(shù)和消息(“未找到 SSID”或來(lái)自 API 的任何非 200 響應(yīng))在寫入文件之前我們?nèi)ニX。它們巧妙地稱為message.txt和values.json并且應(yīng)該允許我們上傳數(shù)據(jù),即使我們?cè)诂F(xiàn)場(chǎng)用完電池或拉電。
?
ampy -p /dev/tty.usbserial-0001 put DS18B20Reader.py ampy -p /dev/tty.usbserial-0001 put EdgeImpulse.py ampy -p /dev/tty.usbserial-0001 put LongRunning.py main.py
?
請(qǐng)注意:深度睡眠中的 ESP32 設(shè)備確實(shí)沒有響應(yīng)。
如果你需要中斷程序來(lái)恢復(fù)它,你會(huì)想要阻止它返回到main.py ,所以將以下代碼放在 Mu 或 Thonny 中并重新啟動(dòng)設(shè)備。按 Control-C 跳轉(zhuǎn)到 REPL,然后運(yùn)行:
?
import os os.remove("main.py")
?
然后您可以檢查消息并查看正在發(fā)生的情況并根據(jù)需要進(jìn)行更新。DevLog.md文件中提供了其他故障排除和我到目前為止的整個(gè)過程。
您現(xiàn)在擁有一臺(tái)自動(dòng)數(shù)據(jù)饋送機(jī)來(lái)構(gòu)建更好的 ML 模型。發(fā)揮你的力量,成就非凡。
?
- 瑪麗亞機(jī)器人開源硬件
- 華夫餅機(jī)器人開源硬件
- 機(jī)器人開源硬件
- 手勢(shì)控制機(jī)器人開源硬件
- 開源硬件-警燈
- AirBits開源硬件
- 導(dǎo)航機(jī)器人開源硬件
- 音箱開源硬件分享
- microBit Bus(機(jī)器人汽車)開源硬件
- HBus開源硬件
- 樂高機(jī)器人開源硬件
- 門鈴開源硬件
- 線跟隨機(jī)器人開源硬件
- 開源硬件機(jī)器人設(shè)計(jì)
- 主流的開源硬件有哪些詳細(xì)資料說明
- 負(fù)壓產(chǎn)生電路分析 2785次閱讀
- 安信可小安派-Knob旋轉(zhuǎn)編碼器驅(qū)動(dòng)板簡(jiǎn)介 600次閱讀
- 安派-Eyes-DU開發(fā)板的參數(shù)說明 646次閱讀
- 用小安派開源硬件制作一個(gè)桌面天氣站 1007次閱讀
- 使用開源硬件的烹飪過程 1500次閱讀
- 尋找開源硬件成功的觸發(fā)器 755次閱讀
- dfrobotDFRobot Bluno M3控制器簡(jiǎn)介 1996次閱讀
- 源創(chuàng)通信BPI-M1+ 開源硬件開發(fā)板介紹 2811次閱讀
- 源創(chuàng)通信開源智能路由器 MTK 7623N 介紹 3078次閱讀
- 源創(chuàng)通信Banana PI BPI-M1單板電腦介紹 3052次閱讀
- 關(guān)于FPGA在開源方面的探索淺析 3864次閱讀
- 基于Altium Designer的OSHw開源項(xiàng)目 3738次閱讀
- 三大主流開源硬件對(duì)比:Arduino vs BeagleBone vs Raspberry Pi 6657次閱讀
- 11個(gè)機(jī)器學(xué)習(xí)開源項(xiàng)目 2829次閱讀
- 開源硬件究竟有多“Open”?看完這個(gè)你就清楚了 7124次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多