呢個教學係以下嘅一部分: WiFi LoRa 32 教程
所有与Heltec WiFi LoRa 32相关的视频都通过此群组进行关联。其他视频的链接位于本文下方。
由13英里(21公里)外开启设备——终极离网LoRa项目,搭配WiFi LoRa 32!
想像吓可以喺你偏遠嘅小屋開水泵、喺幾英里外開閘門、或者喺工場開暖爐——全部唔使Wi-Fi、唔使流動數據計劃、亦都唔使任何月費。呢個就係LoRa(長距離)技術嘅威力。喺呢個項目入面,我哋會用Heltec Wi-Fi LoRa 32模組嚟整一個安全、離網嘅遙控系統。我哋會整一個發射器,將安全訊號發送到接收器,距離遠達13英里(21公里),然後觸發繼電器去控制你揀嘅任何裝置。
呢個指南會帶你行完整個過程,由喺堅固外殼入面組裝硬件,到上載程式碼,再進行真實環境嘅距離測試。呢個唔單止係實驗室實驗;佢係一個適用於多種應用嘅實用方案。
- 遙距農業:喺中央位置開動灌溉水泵或者溫室風扇。
- 物業出入:當你接近時開關車庫門或者遙距閘門。
- 離網自動化:控制小屋、船或者露營車入面嘅燈光、暖爐或者其他電器。
- 保安系統:喺遠處啟動或者關閉保安警報或者攝像系統。
- 野生動物監測:喺遠處觸發相機陷阱或者非致命驅趕裝置。
呢個項目嘅核心係Heltec Wi-Fi LoRa 32 V3模組,我哋會將佢裝喺一個專業嘅Meshnology N32外殼入面,配備3000mAh電池,真正做到便攜。我哋會探討繼電器同蜂鳴器嘅接線、解釋必要嘅程式碼配置,仲會教你點樣設定一個唔會干擾其他LoRa裝置嘅安全連結。最終成果係一個自給自足、強勁嘅遙距開關,完全免費運作,距離遠到傳統Wi-Fi或者藍牙方案根本做唔到。
硬件同零件
要整呢個項目,你需要以下零件。核心物品通常可以喺Meshnology嘅套件入面搵到,咁樣會簡化組裝過程。
- 2x Heltec Wi-Fi LoRa 32 V3模組:主要嘅微控制器,內置LoRa、Wi-Fi同藍牙。(影片00:23位置)
- 2x Meshnology N32外殼:一個堅固、專業嘅外殼,專為容納Heltec模組同大容量電池而設計。(影片02:00位置)
- 2x 3000mAh 3.7V LiPo電池:提供持久、便攜嘅電力,適合離網操作。(影片02:14位置)
- 1x 繼電器模組:一個5V繼電器模組,用嚟開關你嘅高功率負載(例如摩打、燈或者水泵)。
- 1x 蜂鳴器(可選):一個5V有源蜂鳴器,用嚟提供聲音反饋,由2N2222晶體管驅動。
- 1x 2N2222晶體管(可選):一個NPN晶體管,用嚟安全驅動蜂鳴器。
- 1x 1kΩ電阻(可選):一個限流電阻,用喺晶體管嘅基極。
- 2x 高增益天線:用嚟最大化傳輸距離同接收靈敏度。(影片04:35位置)
- 各種電線同連接器:用嚟做必要嘅連接。
安裝Heltec ESP32開發板
將呢個路徑加入你Arduino IDE嘅偏好設定,好似影片入面咁做:https://resource.heltec.cn/download/package_heltec_esp32_index.json
所需程式庫
你一定要安裝 Robojax_HeltecLoRa32 函式庫。喺呢篇文章下面嘅連結下載佢。
喺上載任何程式碼之前,用Arduino IDE安裝呢個ZIP函式庫。
接線指南
呢個項目涉及兩個獨立電路:發射器同接收器。兩者嘅接線都好簡單。如果你用緊Meshnology外殼,你需要鑽一個細窿嚟將繼電器或者蜂鳴器嘅電線引到外面。影片示範咗一個整齊嘅組裝,但核心連接如下:
發射器:發射器用Heltec模組上內置嘅用戶按鈕。控制信號唔需要外部接線。只要確保喺開機之前連接好天線就得。
接收器:接收器嘅GPIO 4引腳用嚟控制繼電器或者蜂鳴器。接線如下所示。請注意,繼電器同ESP32係隔離嘅,所以你需要一個獨立電源嚟供電畀繼電器嘅負載電路。
繼電器連接:
- 將Heltec模組嘅3.3V引腳連接到繼電器模組嘅VCC引腳(或者如果你需要穩定嘅5V,就接升壓轉換器嘅正極輸入)。
- 將Heltec模組嘅GND引腳連接到繼電器模組嘅GND引腳。
- 將Heltec模組嘅GPIO 4引腳連接到繼電器模組嘅IN(信號)引腳。(影片14:54位置)
蜂鳴器連接(用晶體管):ESP32嘅GPIO引腳唔可以提供足夠電流直接驅動蜂鳴器。晶體管充當開關嚟保護微控制器。(影片16:47位置)
- 將3.3V引腳連接到蜂鳴器嘅正極(+)端子。
- 將蜂鳴器嘅負極(-)端子連接到2N2222晶體管嘅集電極。
- 將晶體管嘅發射極連接到GND引腳。
- 將晶體管嘅基極連接到1kΩ電阻嘅一端。
- 將電阻嘅另一端連接到GPIO 4引腳。
程式碼解釋
呢個項目嘅程式碼喺Robojax Heltec LoRa 32函式庫入面提供。你需要喺Arduino IDE入面安裝呢個函式庫同必要嘅板支援套件。設定過程喺影片入面有詳細講解。安裝好函式庫之後,你可以開啟範例草圖:發射器用Relay_Secure_TX_Sample,接收器用Relay_Secure_RX。(影片26:12位置)
發射器同接收器嘅程式碼頂部都有幾個用戶可配置嘅變數,你一定要設定好先可以確保正常通訊。呢啲變數係令項目喺你嘅特定設定下正常運作嘅關鍵。
// 用戶可設定變數
// ============================
bool debug = false; // 設為 true 可以啟用 Serial Monitor 輸出
// 發射器設定
const int userPin = 0; // 用戶按鈕嘅 GPIO 引腳
String relayOnText = "繼電器開啟"; // 顯示屏上顯示嘅文字
String relayOffText = "繼電器關閉"; // 顯示屏上顯示嘅文字
// 接收器設定
const int relayPin = 4; // 連接到繼電器或晶體管嘅 GPIO 引腳
int relayOnDuration = 3000; // 繼電器喺「Sample」代碼中保持開啟嘅時間(毫秒)
// 安全設定(兩個裝置必須完全一致)
String securityKey = "your_secret_key"; // 用於安全通訊嘅共享密鑰
String secret = "your_secret"; // 另一個用於增加安全性嘅密鑰
// LoRa 設定(兩個裝置必須完全一致)
#define LORA_FREQUENCY 915.0 // 頻率(MHz)(例如:歐洲用 868.0,美國用 915.0)
int power = 20; // 發射功率(dBm)(2 到 20)
// ============================
以下係每個設定嘅作用:
debug:當設為true時,代碼會將詳細資訊打印到 Arduino IDE 嘅 Serial Monitor。呢個對排查問題好有用,但正常操作時應該設為false以節省電力。userPin(發射器):呢個定義咗連接按鈕嘅 GPIO 引腳,你撳呢個掣就會發送信號。預設值係0,即係 Heltec 模組上嘅內置用戶按鈕。relayPin(接收器):呢個係輸出信號嚟控制繼電器或晶體管嘅 GPIO 引腳。預設值係4。如果你將繼電器連接到其他引腳,就一定要改呢個值。relayOnDuration(接收器):呢個用喺「Sample」代碼入面。佢決定收到信號之後繼電器保持開啟幾耐。例如,設為1000就會令繼電器開啟 1 秒。呢個對「瞬間」動作(例如開門)好有用。「Toggle」示例代碼會忽略呢個設定,每次撳掣都會切換狀態。securityKey同secret:呢啲係你 LoRa 連結嘅密碼。發射器同接收器上面必須完全一樣。咁樣可以防止未經授權嘅人控制你嘅裝置。(影片 27:19 有講)LORA_FREQUENCY:呢個設定無線電頻段。兩個裝置必須一樣,而且喺你嘅國家要合法(例如:歐洲用 868 MHz,北美用 915 MHz)。(影片 27:36 有講)power:呢個設定發射功率(dBm)。2係低功率,用嚟測試;20係最大功率,可以達到最遠距離。(影片 27:43 有講)
發射器代碼主要有三種類型:Sample、Toggle 同 Momentary。「Sample」代碼會將繼電器開啟一段設定嘅時間。「Toggle」代碼每次撳掣都會切換繼電器嘅狀態(開/關)。「Momentary」代碼只會喺按住按鈕期間開啟繼電器。揀一個最適合你應用嘅。
實際項目同示範
喺影片入面,創作者分兩個階段示範呢個項目。首先,一個實驗室測試顯示系統可以正常運作,用繼電器控制摩打,同時用晶體管驅動蜂鳴器。繼電器同蜂鳴器成功由發射器電路板切換開關,證明咗基本功能同安全通訊連結都冇問題。
第二個階段更加犀利,係真實世界嘅距離測試。發射器放咗喺湖邊嘅三腳架上,接收器就帶到 13.04 英里(20.98 公里)外一個視線清晰嘅地方。影片顯示接收器顯示緊由遠處傳嚟嘅電壓值,成功喺超過 21 公里嘅距離接收到數據。呢個證實咗呢個項目可以免費控制好遠距離嘅裝置,完全唔需要依賴任何現有基建。
章節
- [00:00] 離網 LoRa 控制簡介
- [01:01] 項目概述同系列介紹
- [01:57] 開箱同檢查硬件
- [04:56] 了解 Heltec 模組同天線
- [07:57] 組裝 Meshnology N32 外殼
- [13:56] 接駁繼電器同蜂鳴器電路
- [19:41] 最終組裝同外殼修改
- [21:51] 安裝所需軟件同程式庫
- [26:12] 設定發射器代碼
- [28:46] 設定接收器代碼
- [30:02] 現場示範:控制繼電器同蜂鳴器
- [33:06] 真實世界 13 英里距離測試同總結
呢個教學係以下嘅一部分: WiFi LoRa 32 教程
- 使用Heltec WiFi LoRa 32 V3透過DHT22傳送溫度到1.4公里
- 13英里20公里冇WiFi?LoRa點樣將電壓傳到癲咗嘅距離!(Heltec WiFi LoRa 32 V3)
- 13英里21公里外嘅遙距門警報系統 用LoRa – 完全離網!(Heltec WiFi LoRa 32 V3)
- 由幾里外控制Servo摩打!Heltec WiFi LoRa 32 V3 Arduino教學(TX)
- DIY遙控繼電器項目:13英里無Wi-Fi/無SIM Heltec LoRa 32模組
- How to Use the Heltec LoRa CubeCell Development Board HTCC-AB01
Common Course Links
Common Course Files
資源與參考資料
-
外部
-
外部
-
外部
-
外部Purchase a WiFi LoRa 32 V3 from AliExpresss.click.aliexpress.com
-
外部Purchase a WiFi LoRa 32 V3 from AliExpress-2s.click.aliexpress.com
-
外部
-
外部Purchase Wi-Fi LoRa 32 from Meshnologymeshnology.com
文件📁
其他文件
-
Robojax Heltec LoRa 32 V3 Library 1.0 - 2025-05-20This is library for Heltec WiFi LoRa 32 V3. It contains the example codes for projects. Please watch video for instructions on how to install it.
Robojax_HeltecLoRa32_1.0-20250520.zip0.09 MB -
Heltec WiFi LoRa 32 V3 Schematic Diagram (V3.1)
Heltec_WiFiLoRAV3_Schematic_Diagram.pdf0.18 MB