如何檢測靜止人體:從零接線到參數(shù)調(diào)優(yōu))
LD2410 24GHz 雷達(dá)如何檢測靜止人體從零接線到參數(shù)調(diào)優(yōu)【免費(fèi)下載鏈接】ld2410An Arduino library for the Hi-Link LD2410 24Ghz FMCW radar sensor.項(xiàng)目地址: https://gitcode.com/gh_mirrors/ld/ld2410坐在客廳里燈滅了。 紅外PIR傳感器只對運(yùn)動有反應(yīng)靜止的人對它完全隱形。 LD2410 是一個(gè) 24GHz 雷達(dá)存在檢測模塊FMCW頻率調(diào)制連續(xù)波是它發(fā)射并接收微波來測距的方式。 這個(gè)倉庫里的 Arduino 庫把串口協(xié)議包成了幾個(gè) C 調(diào)用適合用 ESP32 或 Arduino 做“人是否在場”判斷的你。 照做一遍你能把它接上、跑通并完成調(diào)參。雷達(dá)為什么看得到靜止的你原理與紅外對比三句話講清 LD2410 解決什么問題以及 PIR 為什么做不到。它發(fā)射微波再接收回波像蝙蝠一樣。 通過回波的頻移算出距離。 6 米范圍被分成 8 個(gè)距離門每門 0.75 米逐個(gè)門上報(bào)能量。 人完全不動也在持續(xù)產(chǎn)生回波所以能報(bào)出“靜止目標(biāo)”。 PIR 靠溫差工作人一靜止溫差消失它就瞎了。對比項(xiàng)傳統(tǒng) PIR 紅外LD2410 雷達(dá)靜止人體檢測不到可檢測含距離與能量環(huán)境干擾怕陽光直射、穿堂風(fēng)、溫差微波不怕光線輸出內(nèi)容只有開關(guān)量距離cm 能量 0~100覆蓋范圍通常 10~12 米最遠(yuǎn) 6 米8 門 × 0.75 米距離精度無約 1 個(gè)門0.75 米適合分區(qū)判斷三步接線并跑通第一個(gè) LD2410 程序按下面三步走接上電 5 分鐘內(nèi)能看到第一次“人在場”輸出。第一步接線以 ESP32 為例模塊 轉(zhuǎn)接板 ESP32 USB 線準(zhǔn)備就齊了。LD2410 引腳ESP32 引腳說明VCC5V供電電流 ≥200mAGNDGNDUART TxGPIO 32交叉接到對方 RxUART RxGPIO 33交叉接到對方 TxOUT可不接直出電平不想讀串口就接它裸模塊引腳是 1.27mm 間距比常用排針小一半。 配轉(zhuǎn)接板后就是標(biāo)準(zhǔn) 0.1 英寸排針可直接插杜邦線。第二步安裝庫Arduino IDE 的庫管理器里搜ld2410安裝即可。 也可以git clone https://gitcode.com/gh_mirrors/ld/ld2410放到 libraries 目錄。注意開發(fā)板需要兩路硬件串口。 一路 Serial 接串口監(jiān)視器一路 Serial1 接雷達(dá)。 ESP8266 只有一路硬件串口對應(yīng)示例改用 SoftwareSerial256000 的波特率對它偏緊別無選擇再用。第三步最小驗(yàn)證程序下面的程序只做兩件事建立連接然后每秒打印一次 in/out。 預(yù)期效果上傳后串口監(jiān)視器115200先打印 OK之后每秒一行 in/out揮手靠近就會變成 in。#include ld2410.h ld2410 radar; void setup() { Serial.begin(115200); Serial1.begin(256000, SERIAL_8N1, 32, 33); delay(500); Serial.println(radar.begin(Serial1) ? OK : FAIL); } void loop() { radar.read(); Serial.println(radar.presenceDetected() ? in : out); delay(1000); }radar.begin()默認(rèn)會等雷達(dá)應(yīng)答返回 false打印 FAIL說明沒連上。 完整示例見 examples/basicSensor/basicSensor.ino。調(diào)優(yōu) LD24104 個(gè)關(guān)鍵參數(shù)掌握檢測范圍調(diào)完這 4 個(gè)檢測范圍、離場延時(shí)、局部盲區(qū)都由你說了算。默認(rèn)參數(shù)就能檢測到成年人場景不合再調(diào)。 每個(gè)配置調(diào)用最多阻塞 100ms 等雷達(dá)確認(rèn)別放進(jìn)高頻循環(huán)。參數(shù)調(diào)用何時(shí)該調(diào)調(diào)完有何變化最遠(yuǎn)門setMaxValues(m, s, t)房間小想擋掉窗戶門號 × 0.75 米之外不再上報(bào)無人時(shí)長 第 3 參秒人走后關(guān)燈太快或太慢人離開后“在場”狀態(tài)延長 N 秒距離門靈敏度setGateSensitivity(g, mv, st)某段距離太靈或太鈍每門獨(dú)立閾值能量低于它忽略100該門致盲工程模式requestStartEngineeringMode()想看每門能量分布雷達(dá)輸出更多數(shù)據(jù)本庫暫未解析下面兩行把檢測限制在 3 米內(nèi)、人離開后 5 秒才報(bào)空返回 true 說明雷達(dá)已接受設(shè)置。if (radar.setMaxValues(3, 3, 5)) Serial.println(range set); radar.setGateSensitivity(3, 60, 60);提醒部分設(shè)置需要requestRestart()才生效。調(diào)好之后的兩個(gè)真實(shí)玩法存在感應(yīng)照明接繼電器或智能開關(guān)用presenceDetected()或 OUT 引腳觸發(fā)。 配合 5 秒無人時(shí)長人在屋中轉(zhuǎn)燈不閃人離開后準(zhǔn)時(shí)關(guān)。單點(diǎn)檢測把第 3、4 門靈敏度設(shè)為 20其余門設(shè)為 100只檢測 2.25~3.75 米的區(qū)域適合門口或某個(gè)置物區(qū)。避坑清單最常見的 5 次翻車 begin() 返回 falseTX/RX 接反或波特率不對。查雷達(dá) TX→GPIO32、RX→GPIO33串口 256000-8-N-1。數(shù)據(jù)錯(cuò)亂、斷幀用了 SoftwareSerial。256000 對軟件串口偏高換兩路硬件串口的板子。設(shè)置看似不生效部分參數(shù)要重啟才生效調(diào)用requestRestart()后重新begin()。距離總差一段雷達(dá)只按門0.75 米報(bào)距離屬正常當(dāng)分區(qū)用別當(dāng)尺子用。靜止目標(biāo)一直為 true0.1.1 之前的庫有字段錯(cuò)位 bug升級庫版本。收尾從 in/out 打印到場景定制一句話總結(jié)把 PIR 換成 LD2410照明系統(tǒng)就有了“人靜止也還在場”的能力。 下一步先用 basicSensor 示例打印一天看你在乎的門上能量值長什么樣再針對性調(diào)參。 交互式示例 setupSensor 能試遍所有配置命令協(xié)議細(xì)節(jié)查 docs/HLK-LD2410C_protocol.md。 現(xiàn)在就去通電從打印 in/out 開始吧 【免費(fèi)下載鏈接】ld2410An Arduino library for the Hi-Link LD2410 24Ghz FMCW radar sensor.項(xiàng)目地址: https://gitcode.com/gh_mirrors/ld/ld2410創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考