使用 NRF52832 芯片,通過(guò)藍(lán)牙低能耗技術(shù)構(gòu)建一個(gè)追蹤器
我一直想教導(dǎo)我兒子和女友的女兒學(xué)會(huì)設(shè)定目標(biāo)并堅(jiān)持到底的技巧。此外,我擅長(zhǎng)徒步旅行,而且我能看出我兒子對(duì)旅行非常感興趣,所以我想或許可以把這兩件事結(jié)合起來(lái),設(shè)計(jì)一個(gè)游戲,以圣誕節(jié)為借口來(lái)進(jìn)行。起初,我的計(jì)劃只是獨(dú)自一人用定制的 PCB 來(lái)完成這個(gè)追蹤游戲,使用的是 NRF52832 芯片,這個(gè)芯片已經(jīng)在我抽屜里放了好長(zhǎng)時(shí)間了,確切地說(shuō),差不多有 10 年以上了。實(shí)際上,我還有一些 Redbear Lab 的 NB-N2 模塊。這家公司已經(jīng)不再運(yùn)營(yíng)了,但我一直想找個(gè)好項(xiàng)目來(lái)使用它。
因此,其中一個(gè)模塊被設(shè)定為藍(lán)牙低功耗(BLE)信標(biāo),而另一個(gè)則作為追蹤器,它會(huì)根據(jù)接收信號(hào)強(qiáng)度指示(RSSI)值發(fā)出視覺(jué)警報(bào)。我從我的佳明 Instinct 手表中獲得了這個(gè)游戲的靈感,這款手表通過(guò)一個(gè)強(qiáng)度計(jì)幫助我確定手機(jī)的位置,即使手機(jī)發(fā)出的聲音警報(bào)也聽(tīng)不到的情況下,我也能夠追蹤到它。
所以,我設(shè)計(jì)了兩款電路板,一款做成手鐲的樣式送給我的兒子,另一款做成耳飾的樣式送給我女友的女兒。我覺(jué)得這樣還能作為一份貼心的個(gè)性化禮物送給我的女友。
但后來(lái)我發(fā)現(xiàn),盡管 MN-N2 模塊的尺寸為 10×18 毫米,但對(duì)于耳環(huán)來(lái)說(shuō)還是太大了。所以我不得不大膽嘗試,然后在 NRF52832-QFAA 芯片上使用芯片天線(xiàn)來(lái)完成這個(gè)設(shè)計(jì)。這對(duì)我而言是一個(gè)很大的技術(shù)突破,但我還是自己制作了 NRF24 天線(xiàn),并且之前它運(yùn)行得還算不錯(cuò)。所以我參考了參考設(shè)計(jì)及其支持論壇,這些論壇是 Nordic 非常出名的。最終我制作了一個(gè)包含三個(gè) 4 部分的印刷電路板。電路圖將在下面附上。
這個(gè)想法是將印刷電路板的連接部件剪開(kāi),去除多余的部分,然后用黃色硅線(xiàn)將它們連接起來(lái),讓它們垂下,這樣就能使它們像單獨(dú)的電路板一樣搖擺,而不是成為一個(gè)整體的印刷電路板。
但是,在這里,“沒(méi)有計(jì)劃能在與敵人初次接觸時(shí)幸存下來(lái)”這句話(huà)的含義得到了完美的體現(xiàn),因?yàn)槲业?PCBWay 貨物由于海關(guān)原因被聯(lián)邦快遞滯留了。所以不得不臨時(shí)應(yīng)變。于是我查看了我的庫(kù)存,找到了一些舊的定制 PCB 板,我用它們作為我于 2024 年 11 月初和 2025 年 4 月制作的“艾拉警報(bào)”項(xiàng)目的概念驗(yàn)證原型。從技術(shù)上講,我正在將廢品變成黃金。所以它配備了 esp32 和 LED。但我認(rèn)為僅靠這些還不夠,因?yàn)檫@次競(jìng)賽我還想保留那些關(guān)于調(diào)皮和乖巧的清單、在圣誕樹(shù)下尋找禮物的完整體驗(yàn)。所以這就是我最終的計(jì)劃。
另一種概念
制作一個(gè) 3D 打印的螺旋形圣誕樹(shù),并在螺旋上安裝 LED 燈。BLE 跟蹤器和信標(biāo)將被封裝在圣誕樹(shù)設(shè)計(jì)的外殼中。我可以使用可尋址 LED 將螺旋用作進(jìn)度條,以跟蹤善舉的情況。BLE 信標(biāo)將每隔 10 秒廣播信號(hào)。BLE 跟蹤器將監(jiān)聽(tīng)信標(biāo),并根據(jù) RSSI 值計(jì)算的距離來(lái)控制 LED 的亮度,距離越近速度越快。目前,我將通過(guò)樹(shù)上的按鈕來(lái)控制善舉的進(jìn)度,但如果時(shí)間允許,我將使用 BLE 自身來(lái)控制它。一旦進(jìn)度條完成,樹(shù)頂?shù)男切菍?huì)亮起并激活跟蹤器。然后,這個(gè)人可以去尋找我藏好的禮物的地點(diǎn)。實(shí)際上,禮物的鑰匙被保存在樹(shù)下。
案例設(shè)計(jì)
我只有不到一周的時(shí)間,所以首先我是在紙上設(shè)計(jì)了這個(gè)概念,并在 SolidWorks 軟件上制作了模型。然后用圓形管做成了 3D 打印品,管子呈螺旋狀。但我原本認(rèn)為很優(yōu)雅的螺旋形狀,最終卻變成了一個(gè)常見(jiàn)的棕色表情符號(hào)的樣子。這時(shí)我才意識(shí)到,我的機(jī)械工程思維完全凌駕于設(shè)計(jì)感之上。為什么?圓形截面在結(jié)構(gòu)上比矩形截面更穩(wěn)固,而且能呈現(xiàn)出更好的帶狀外觀。后來(lái)我在 Thingiverse 上也找到了一個(gè)螺旋結(jié)構(gòu)。我還是繼續(xù)自己重新設(shè)計(jì)了這個(gè)方案,但隨后 3D 打印過(guò)程出了問(wèn)題,導(dǎo)致材料被弄成了“意大利面狀”,我也沒(méi)有時(shí)間重新嘗試了。于是我就決定采用圓形管螺旋結(jié)構(gòu)。我把 LED 燈帶纏繞在其周?chē)?,并在頂部加上了一個(gè)星星裝飾。
代碼
我用于追蹤器和藍(lán)牙低功耗信標(biāo)所使用的印刷電路板配備了 ESP32、WS2812B、MCP73831(電池充電器)和 AP2112K(3.3V 低壓降穩(wěn)壓器)。我將使用這些元件。而 OLED、觸覺(jué)電機(jī)驅(qū)動(dòng)器和開(kāi)關(guān)我不會(huì)使用。正如我所說(shuō),這個(gè)印刷電路板是為另一個(gè)項(xiàng)目設(shè)計(jì)的,但在電源分配電路方面我犯了一個(gè)錯(cuò)誤,因此不得不進(jìn)行拼湊操作以確保電池充電正常。不過(guò),您仍然可以使用任何 Feather ESP32 板來(lái)重現(xiàn)這個(gè)設(shè)計(jì),使用普通 LED 而不是 RGB LED。
藍(lán)牙低功耗信標(biāo)代碼:
追蹤器代碼
“貝肯”廣告播放 1.5 秒,然后靜止 15 秒。追蹤器掃描 20 秒,然后靜止 10 秒。這樣既能節(jié)省電池電量,又能有意地延長(zhǎng)尋找禮物的時(shí)間,從而營(yíng)造出更多的期待感,提升用戶(hù)體驗(yàn)。
螺旋形圣誕樹(shù)電子裝置
對(duì)于螺旋樹(shù)的控制部分,由于時(shí)間有限,我使用了我上個(gè)項(xiàng)目中的印刷電路板,并且取得了非常出色的效果。
這就是該項(xiàng)目的最終照片。
圣誕樹(shù)下禮物的秘訣
嗯,當(dāng)時(shí)正在聽(tīng)《好、壞、丑》這張專(zhuān)輯。我喜歡里面的背景音樂(lè)。
結(jié)論
我非常高興能夠成功制作出一個(gè)非常粗糙但能正常運(yùn)行的項(xiàng)目模型,更重要的是,我還能夠?qū)⒆约号f的印刷電路板重新利用,賦予它新的生機(jī)。我仍然不喜歡那種有圓形橫截面的螺旋結(jié)構(gòu),會(huì)在對(duì)支撐結(jié)構(gòu)進(jìn)行仔細(xì)布置后重新打印出正確的樣式。也許我可以把它做成一條 DNA 或者是一盞普通的臺(tái)燈。
本文編譯自hackster.io





