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

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

3天內(nèi)不再提示

如何利用ESP-NOW 技術(shù)實(shí)現(xiàn)高效物聯(lián)網(wǎng)通信

海闊天空的專欄 ? 來源:Lashley Wang ? 作者:Lashley Wang ? 2025-01-26 17:33 ? 次閱讀

作者:Lashley Wang

物聯(lián)網(wǎng)應(yīng)用急促發(fā)展, 市場(chǎng)需要一種高效、低成本的解決方案, 本期將為你詳細(xì)探討ESP-NOW技術(shù)在物聯(lián)網(wǎng)應(yīng)用中的應(yīng)用,包括其技術(shù)特點(diǎn)、適用場(chǎng)景以及如何利用它實(shí)現(xiàn)多設(shè)備之間的高效無線通訊。

本系列第三集,依然是我們的老朋友DFRobot 高級(jí)工程師夏青(Rockets Xia)給大家講解。


主講嘉賓:

Rockets Xia
夏青(Rockets Xia),DFRobot高級(jí)工程師,蘑菇云創(chuàng)客空間共同創(chuàng)始人

夏青經(jīng)常活躍于國內(nèi)外創(chuàng)客社區(qū)。從2008起開始致力推廣創(chuàng)客文化,促進(jìn)創(chuàng)客運(yùn)動(dòng)在中國的發(fā)展,2010年與中國創(chuàng)客教父李大維等打造國內(nèi)首個(gè)創(chuàng)客空間"新車間"。2013年在DFRobot和浦軟集團(tuán)的支持下建設(shè)蘑菇云創(chuàng)客空間。作為蘑菇云創(chuàng)客空間共同創(chuàng)始人,經(jīng)常鼓勵(lì)和推動(dòng)社區(qū)創(chuàng)客項(xiàng)目的推進(jìn)。作為DFRobot高級(jí)工程師,積極致力于推動(dòng)人工智能、物聯(lián)網(wǎng)等先進(jìn)技術(shù)在創(chuàng)客及創(chuàng)客教育領(lǐng)域的落地和推廣。

本期首先介紹了ESP-NOW,這是一種由[樂鑫公司] 定義的無連接WiFi通信協(xié)議,類似于低功耗的2.4GHz無線連接。ESP-NOW在通信前需要對(duì)設(shè)備進(jìn)行配對(duì),配對(duì)完成后連接是安全、點(diǎn)對(duì)點(diǎn)且持久的,適合于多設(shè)備的低功耗低延遲數(shù)據(jù)傳輸。但同時(shí)也與傳統(tǒng)WiFi不同,ESP-NOW不需要路由器或接入點(diǎn),而是通過設(shè)備MAC地址進(jìn)行識(shí)別和通訊。

圖片來源:DFRobot(圖片來源:DFRobot)

接下來,我們來看一看由 [DFRobot] 提供的[Beetle ESP32-C3] 。它不僅支持 ESP-NOW 通信,還具備低功耗和小尺寸的優(yōu)勢(shì)。

圖片來源:DFRobot(圖片來源:DFRobot)

Beetle ESP32-C3 在僅有硬幣大小的體積上,引出了多達(dá) 13 個(gè) I/O 口,同時(shí)主控板還集成鋰電池充電管理功能,可以直接連接鋰電池,不需要外圍模塊。

圖片來源:DFRobot(圖片來源:DFRobot)

圖片來源:DFRobot(圖片來源:DFRobot)

Beetle ESP32-C3 配套的擴(kuò)展板在未增加太大體積的情況下,引出了更多的接口,在制作項(xiàng)目時(shí)焊接更加方便。板載的GDI顯示屏接口,解決使用屏幕時(shí)的接線煩惱。Beetle ESP32-C3 支持Wi-Fi和Bluetooth 5 (LE)雙模通訊,并且擁有詳細(xì)的示例[教程] ,通過教程可以輕松地使用控制器的無線功能,連接物聯(lián)網(wǎng)平臺(tái)。

圖片來源:DFRobot(圖片來源:DFRobot)

DFRobot 的 Beetle 系列開發(fā)板以其小巧且功能強(qiáng)大的設(shè)計(jì)著稱,非常適合空間有限的項(xiàng)目。無論在性能還是靈活性方面,相信它們都能夠完美滿足大家的需求。

接下來介紹基于Beetle ESP32-C3開發(fā)板的運(yùn)動(dòng)按鈕項(xiàng)目。Beetle ESP32-C3具有小尺寸、低功耗、支持WiFi和藍(lán)牙等優(yōu)點(diǎn), 非常適合該項(xiàng)目。項(xiàng)目包括4個(gè)運(yùn)動(dòng)按鈕、WS2812燈帶、蜂鳴器等組件,通過ESP-NOW實(shí)現(xiàn)設(shè)備間的同步和交互。項(xiàng)目設(shè)計(jì)了3種游戲模式: 打地鼠、接力和擊鼓傳花, 可以用于多人游戲或智能家居控制等應(yīng)用場(chǎng)景。

圖片來源:DFRobot(圖片來源:DFRobot)

圖片來源:DFRobot(圖片來源:DFRobot)

圖片來源:DFRobot(圖片來源:DFRobot)

硬件組裝完成后,進(jìn)入編程環(huán)節(jié)。首先我們將使用 Arduino IDE 來編寫和上傳代碼。如果你習(xí)慣使用其他編程環(huán)境,也可以選擇自己熟悉的工具和代碼。選取 Arduino 中的 ESP-NOW 的示例代碼,我們來看看 ESP-NOW 的能力到底怎么樣。

圖片來源:DFRobot(圖片來源:DFRobot)

上傳燒錄以后我們就可以看到,發(fā)射和接收信息的延時(shí)是 2~4 ms 左右,單向傳播的延時(shí)約為 2 ms 左右,相當(dāng)于 1/100 秒,速度非常快。

圖片來源:DFRobot(圖片來源:DFRobot)

確保每個(gè)設(shè)備都能正常識(shí)別和通信后,接下來就可以進(jìn)入下一步的功能實(shí)現(xiàn)。為了方便大家理解,這里用腦圖的方式將程序結(jié)構(gòu)做了梳理,供大家參考。

圖片來源:DFRobot(圖片來源:DFRobot)

現(xiàn)在和大家簡(jiǎn)單說下游戲規(guī)則的設(shè)置。在現(xiàn)有的程序里預(yù)設(shè)了三個(gè)模式,可以用短按來選擇,長(zhǎng)按 3 秒來確認(rèn)選擇。需要切換的時(shí)候,隨時(shí)可以用長(zhǎng)按來進(jìn)入菜單。

模式 1 是打地鼠模式,這個(gè)模式下,我們的程序會(huì)隨機(jī)在 4 個(gè)運(yùn)動(dòng)按鈕上出現(xiàn)紅色的信號(hào),需要在最短時(shí)間內(nèi)按下,才能獲得成績(jī)。

圖片來源:DFRobot(圖片來源:DFRobot)

模式 2 是接力模式,在這個(gè)模式下,每按一次運(yùn)動(dòng)按鈕上出現(xiàn)綠色按鈕,下一個(gè)運(yùn)動(dòng)按鈕就會(huì)變成另外一個(gè)顏色,也就是說你需要依次按動(dòng)按鈕,這個(gè)時(shí)候就是接力模式。

圖片來源:DFRobot(圖片來源:DFRobot)

模式 3 是擊鼓傳花模式,進(jìn)入此模式時(shí) 4 個(gè)按鈕依次循環(huán)亮藍(lán)燈,按下帶屏幕的主按鈕,此時(shí)亮藍(lán)燈的那個(gè)按鈕,就是被選中的“天之驕鈕”了。

圖片來源:DFRobot(圖片來源:DFRobot)

在這個(gè)項(xiàng)目中,按鈕的狀態(tài)將通過 ESP-NOW 實(shí)時(shí)同步到所有設(shè)備,LED 和蜂鳴器會(huì)根據(jù)按鈕狀態(tài)作出相應(yīng)的反饋。此外,此項(xiàng)目還可以展示不同的游戲模式,比如多人對(duì)戰(zhàn)或合作模式,讓大家看到這個(gè)項(xiàng)目在實(shí)際應(yīng)用中的各種可能性和互動(dòng)方式。

運(yùn)動(dòng)按鈕項(xiàng)目不僅可以用于簡(jiǎn)單的游戲和互動(dòng),還可以擴(kuò)展到其他領(lǐng)域,比如智能家居控制器、物聯(lián)網(wǎng)項(xiàng)目等。歡迎大家發(fā)揮創(chuàng)意,探索 ESP-NOW 和 DFRobot 開發(fā)板的更多可能性。無論是改進(jìn)現(xiàn)有項(xiàng)目,還是開發(fā)新的應(yīng)用,這些技術(shù)都能為你帶來無限的創(chuàng)作空間。

這就是本期的所有內(nèi)容啦,感謝大家觀看,希望大家可以從中獲得有用的信息和靈感。下一期我們會(huì)進(jìn)一步介紹 ESP32 另外一個(gè)高階玩法,《ESP32在邊緣計(jì)算使用 tinyML 項(xiàng)目的應(yīng)用》,歡迎大家關(guān)注。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 通信
    +關(guān)注

    關(guān)注

    18

    文章

    6069

    瀏覽量

    136339
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2913

    文章

    44915

    瀏覽量

    376329
  • ESP
    ESP
    +關(guān)注

    關(guān)注

    0

    文章

    186

    瀏覽量

    34055
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    請(qǐng)問esp-now如何實(shí)現(xiàn)靠近配對(duì)?

    請(qǐng)問esp-now 如何實(shí)現(xiàn)靠近配對(duì)?
    發(fā)表于 06-11 07:08

    使用ESP32-C3的藍(lán)牙進(jìn)行傳感器數(shù)據(jù)上傳,ESP-NOW協(xié)議的功耗能滿足需求嗎?

    1.使用ESP32-C3的藍(lán)牙進(jìn)行傳感器數(shù)據(jù)上傳,期望使用紐扣電池供電,ESP-NOW協(xié)議的功耗能滿足需求嗎 2.使用ESP-now協(xié)議的設(shè)備能否和手機(jī)藍(lán)牙或其他未使用ESP-NOW協(xié)
    發(fā)表于 07-01 07:22

    請(qǐng)問esp-now如何確定消息是否加密?

    我的項(xiàng)目打開和關(guān)閉設(shè)備,不一定登錄到 WiFi。所以我認(rèn)為 esp-now 值得一試。出于安全原因,我需要加密,以便未經(jīng)授權(quán)的發(fā)件人無法打開/關(guān)閉我的設(shè)備。我的理解是我需要
    發(fā)表于 07-09 07:14

    請(qǐng)問esp-now的安全模型是什么?

    嘗試使用 esp-now 開發(fā)一些東西。 似乎,發(fā)送者和接收者在通信之前無法就一些共同的秘密達(dá)成一致。只要發(fā)送方知道接收方的MAC地址,發(fā)送方就可以隨時(shí)向接收方發(fā)送數(shù)據(jù)。 我試過
    發(fā)表于 07-10 06:48

    ESP-NOW技術(shù)DIY

    ESP-NOW技術(shù)DIY
    發(fā)表于 07-20 07:08

    【視頻】聯(lián)網(wǎng)通信技術(shù)總結(jié)

    大家下午好!今天來為大家進(jìn)行聯(lián)網(wǎng)通信技術(shù)總結(jié),視頻為一個(gè)系列,請(qǐng)持續(xù)關(guān)注,會(huì)持續(xù)進(jìn)行更新!有問題留言交流!上期回顧:stm32 uart硬件實(shí)現(xiàn)及深入探討4
    發(fā)表于 10-20 14:42

    ESP-NOW喚醒無法接收數(shù)據(jù)是怎么回事?

    軟件版本IDF-4.4, 硬件ESP32S2程序先初始化ESP-NOW,啟動(dòng)定時(shí)light-sleep, 喚醒后無法收到另外一個(gè)機(jī)子發(fā)送的ESP-NOW的數(shù)據(jù),確定有喚醒,因?yàn)樵趩拘押蟠蛴≥敵隽?/div>
    發(fā)表于 02-20 07:37

    在兩臺(tái)esp32-c3上進(jìn)行esp-now通信測(cè)試,無法將數(shù)據(jù)發(fā)送出去是為什么?

    我在兩臺(tái)esp32-c3上進(jìn)行了esp-now通信測(cè)試,雙方都可以正常收發(fā)數(shù)據(jù)。但是將其中一個(gè)配網(wǎng)接入路由器的wifi后,聯(lián)網(wǎng)的設(shè)備只能接收另一臺(tái)未
    發(fā)表于 04-13 08:57

    Esp-now喚醒時(shí)間如何變得更短?

    我的 esp-01 需要大約 150 毫秒才能打開并接收一些數(shù)據(jù),然后再次進(jìn)入睡眠狀態(tài)。我正在使用 esp-now。 我可以讓它在更短的喚醒時(shí)間內(nèi)工作嗎?
    發(fā)表于 05-11 07:59

    ESP-NOW技術(shù)的介紹和使用方式及示例代碼資料免費(fèi)下載

    本文介紹了樂鑫自主研發(fā)的ESP-NOW技術(shù),說明了使用方式并提供了示例代碼包括了:1.ESP-NOW技術(shù)簡(jiǎn)介,2.ESP-NOW使用方式,3
    發(fā)表于 03-15 08:00 ?59次下載
    <b class='flag-5'>ESP-NOW</b><b class='flag-5'>技術(shù)</b>的介紹和使用方式及示例代碼資料免費(fèi)下載

    聯(lián)網(wǎng)通信技術(shù)

    聯(lián)網(wǎng)通信技術(shù)說明。
    發(fā)表于 03-22 14:57 ?20次下載
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)通信</b><b class='flag-5'>技術(shù)</b>

    ESP8266相互通訊(ESP-NOW

    辦法,可以用一個(gè)ESP8266模塊作為一個(gè)總的控制,就像一個(gè)管家,來和其他ESP8266通訊,來實(shí)現(xiàn)我們想要的功能。先說一下ESP-NOW,它是Espressif開發(fā)的一種協(xié)議,它使多
    發(fā)表于 12-29 19:33 ?10次下載
    <b class='flag-5'>ESP</b>8266相互通訊(<b class='flag-5'>ESP-NOW</b>)

    ESP-NOW無線通信ESP32學(xué)習(xí)之旅-Arduino版

    、WiFi、LoRa、NB-IoT等,本教程將重點(diǎn)介紹樂鑫科技開發(fā)的另一種無線通訊協(xié)議:ESP-NOW,通過 本教程的學(xué)習(xí),你將了解到如何將 ESP-NOW 技術(shù)應(yīng)用到我們的 DIY 項(xiàng)目中。
    發(fā)表于 05-30 09:55 ?0次下載
    <b class='flag-5'>ESP-NOW</b>無線<b class='flag-5'>通信</b>之<b class='flag-5'>ESP</b>32學(xué)習(xí)之旅-Arduino版

    啟明云端為你盤點(diǎn):樂鑫 ESP-NOW 無線通信方案到底厲害在哪里

    ESP-NOW是樂鑫定義的基于數(shù)據(jù)鏈路層的無線通信協(xié)議,可與 Wi-Fi 和 Bluetooth LE 共存,既能實(shí)現(xiàn)穩(wěn)定的設(shè)備連接和控制,也能作為獨(dú)立的輔助模塊,為系統(tǒng)提供設(shè)備配網(wǎng)、調(diào)試和固件升級(jí)等功能。
    的頭像 發(fā)表于 09-16 14:22 ?3538次閱讀
    啟明云端為你盤點(diǎn):樂鑫 <b class='flag-5'>ESP-NOW</b> 無線<b class='flag-5'>通信</b>方案到底厲害在哪里

    樂鑫低功耗方案 | ESP-NOW

    在日益發(fā)展的聯(lián)網(wǎng)世界中,無線通信已成為互聯(lián)各種設(shè)備和系統(tǒng)的關(guān)鍵技術(shù)。在智能家居、工業(yè)自動(dòng)化、醫(yī)療衛(wèi)生、城市公共設(shè)施等領(lǐng)域,無線通信是解決這
    的頭像 發(fā)表于 10-21 08:03 ?2294次閱讀
    樂鑫低功耗方案 | <b class='flag-5'>ESP-NOW</b>