狠狠做深爱婷婷久久一区,欧美日韩国内,久久麻豆精品传媒,久久久一区一区二区,色鬼伦理片,99视频精品久久,久久精品国产久久久久久,久久久伦理电影一区二,磁力天堂河北彩花

新聞中心

EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 利用BLE和Wi-Fi三角定位進(jìn)行實(shí)時(shí)室內(nèi)追蹤

利用BLE和Wi-Fi三角定位進(jìn)行實(shí)時(shí)室內(nèi)追蹤

作者: 時(shí)間:2025-12-25 來源: 收藏

室內(nèi)GPS使用困難?學(xué)習(xí)如何利用構(gòu)建DIY系統(tǒng)。準(zhǔn)確追蹤人、寵物或機(jī)器人,并在設(shè)備上實(shí)時(shí)查看位置。

室內(nèi)導(dǎo)航在許多應(yīng)用領(lǐng)域變得越來越重要——從可穿戴設(shè)備、室內(nèi)追蹤系統(tǒng)到寵物活動(dòng)監(jiān)測。它在家庭自動(dòng)化和機(jī)器人等領(lǐng)域也發(fā)揮著關(guān)鍵作用。問題是GPS在室內(nèi)根本不好用。雷達(dá)和激光雷達(dá)等技術(shù)可以解決這個(gè)問題,但它們成本高昂且日常使用時(shí)往往不切實(shí)際。

這時(shí),一個(gè)更簡單且經(jīng)濟(jì)的解決方案就派上用場了:。這些方法允許通過使用信號(hào),將其信號(hào)強(qiáng)度(RSSI,接收信號(hào)強(qiáng)度指示器)轉(zhuǎn)換為距離信息,實(shí)現(xiàn)實(shí)時(shí)室內(nèi)定位。

在典型的設(shè)置中,我們?cè)诜块g或建筑的天花板或角落放置三個(gè)或更多錨點(diǎn)或信標(biāo)。通過持續(xù)分析這些信標(biāo)之間的信號(hào)強(qiáng)度,系統(tǒng)可以估算人員或物體在空間內(nèi)的準(zhǔn)確位置。

為了實(shí)現(xiàn)這一點(diǎn),我們可以使用小型、緊湊的BLE或Wi-Fi板。一個(gè)很好的例子是Indusboard,它內(nèi)置了Wi-Fi,還有加速度計(jì)和磁力計(jì)。這不僅有助于追蹤移動(dòng),還提供實(shí)時(shí)方向信息。

信標(biāo)數(shù)量取決于你希望系統(tǒng)的準(zhǔn)確度以及你愿意花費(fèi)多少。在很多情況下,使用四個(gè)信標(biāo)效果更好。

將Indusboard單元放置在房間的四個(gè)天花板角落,而非墻上,可以提高準(zhǔn)確性并控制成本。只需對(duì)代碼做些微調(diào),這種設(shè)置甚至可以幫助估算房間的深度和高度。

實(shí)時(shí)室內(nèi)追蹤

圖1。室內(nèi)定位的網(wǎng)頁界面

在繼續(xù)之前,讓我們先了解三角測量方法是什么,以及它如何用于房間或房屋內(nèi)部的實(shí)時(shí)監(jiān)控和追蹤,甚至跨多層樓。

什么是三角測量法,它是如何使用的?

三角測量方法通過利用來自多個(gè)固定點(diǎn)的Wi-Fi或藍(lán)牙信號(hào)的角度和信號(hào)強(qiáng)度,精確確定物體的位置。

對(duì)于室內(nèi)追蹤,我們?cè)O(shè)置了特殊的接收器——如Wi-Fi、藍(lán)牙或超寬頻錨點(diǎn)——能夠檢測來自設(shè)備信號(hào)的到達(dá)角度(AoA)。通過沿這些角度方向畫線,線條交匯點(diǎn)顯示設(shè)備的精確位置。

由于該方法依賴幾何結(jié)構(gòu)而非僅限信號(hào)強(qiáng)度,因此更準(zhǔn)確且穩(wěn)定,非常適合在建筑物、倉庫或工廠內(nèi)部導(dǎo)航和跟蹤。

如何計(jì)算Wi-Fi三角定位?

假設(shè)你在房間的已知位置有3個(gè)WiFi信標(biāo)(例如角落分別在(0,0)、(5,0)、(2.5,4)米)。你的手機(jī)(標(biāo)簽)會(huì)從每個(gè)(-60、-70、-65 dBm)接收RSSI。

  1. RSSI轉(zhuǎn)換為距離:使用類似“距離=10^(參考RSSI-測量RSSI)/(10 * 路徑損耗因子)”這樣的公式。

    • 參考RSSI(A):1米波段信號(hào)(例如,-59 dBm,測試)。

    • 路徑損耗(n):室內(nèi)信號(hào)的衰落方式(例如2.5)。

    • 示例:RSSI -60:距離 = 10^((-59 – (-60)) / (10*2.5)) = 10^(1/25) ≈ 1.1米。

    • 對(duì)所有3個(gè)都做:d1=1.1m,d2=2.5m,d3=1.8m。

  2. 繪制圓圈(三邊形):想象每個(gè)信標(biāo)周圍的圓圈,半徑為距離。

    • 圓1:中心(0,0),半徑1.1米。

    • 圓2:中心(5,0),半徑2.5米。

    • 圓3:中心(2.5,4),半徑1.8米。

    • 你的位置是它們交匯的地方(通常一點(diǎn))。

  3. 求交數(shù)學(xué):對(duì)每個(gè)圓使用公式 (x – x1)^2 + (y – y1)^2 = d1^2。

    • 相減對(duì)以求解x/y:例如,x = (d1^2 – d2^2 + x2^2 – x1^2) / (2*(x2 – x1)) + y 項(xiàng)。

    • 對(duì)于多層(3D):加Z,使用第四信標(biāo)或最小二方(平均最佳擬合)。

    • 示例結(jié)果:(2.0, 2.0)m。像Python/Excel這樣的工具可以計(jì)算。

圖2。定位與計(jì)算的三邊測量方法

圖2。定位與計(jì)算的三邊測量方法

所需硬件:

組成部分數(shù)量描述
IndusBoard Coin V25最小的硬幣大小鍵盤帶Wi-Fi
3.3伏電池1鋰聚合物/離子電池
USB-C 線纜1動(dòng)力/編程

室內(nèi)追蹤的逐步編碼

這里,我們需要?jiǎng)?chuàng)建兩個(gè)獨(dú)立的代碼:一個(gè)用于發(fā)送Wi-Fi信號(hào)并作為Wi-Fi熱點(diǎn)的錨點(diǎn)/信標(biāo),另一個(gè)用于接收這些信號(hào)的標(biāo)簽。

錨點(diǎn)/信標(biāo)應(yīng)放置在房間的墻壁或天花板上——分別在兩側(cè)或不同樓層,具體取決于你是否想要多層定位系統(tǒng)。標(biāo)簽會(huì)貼在寵物的項(xiàng)圈、人的脖子上或機(jī)器人底盤上。這些標(biāo)簽將作為接收器,收集錨點(diǎn)所有Wi-Fi網(wǎng)絡(luò)的信號(hào),并利用前述三角測量方法計(jì)算位置。最后,位置信息可以實(shí)時(shí)顯示在網(wǎng)頁上。

錨/信標(biāo)代碼

錨代碼方面,我們使用 ESP-NOW 庫。該庫允許多個(gè)ESP設(shè)備直接通信,無需互聯(lián)網(wǎng)連接或外部Wi-Fi路由器。它甚至可以創(chuàng)建自己的連接網(wǎng)絡(luò)。

在代碼中,每個(gè)錨點(diǎn)應(yīng)擁有唯一的設(shè)備ID(1、2、3、4等),以便標(biāo)簽識(shí)別它正在通信的錨點(diǎn),并確定每個(gè)ID的距離。接下來,為每個(gè)信標(biāo)設(shè)置廣播地址,并通過ESP-NOW發(fā)送數(shù)據(jù)。

代碼準(zhǔn)備好后,上傳到工業(yè)板上每個(gè)錨點(diǎn)。你需要至少3個(gè)錨點(diǎn),但建議4個(gè)以提升精度。對(duì)于多層定位,你可以修改標(biāo)簽代碼以包含樓層層級(jí)數(shù)據(jù),但本例中我們重點(diǎn)關(guān)注單一房間定位。

ESP-NOW的節(jié)目主播和標(biāo)簽

圖3。Code snippet for beacon/Ancor device


除了使用 ESP-NOW外,我們還需要配置 Wi-Fi 的接入點(diǎn)模式,使每個(gè)錨點(diǎn)都能作為熱點(diǎn)使用。這使我們能夠連接網(wǎng)絡(luò)并實(shí)時(shí)查看位置數(shù)據(jù),實(shí)現(xiàn)在同一網(wǎng)絡(luò)上的持續(xù)追蹤。

Indusboard Coin內(nèi)置磁力計(jì)加速度計(jì),幫助實(shí)時(shí)測量移動(dòng)速度和方向。磁力計(jì)用于獲取方向數(shù)據(jù)和旋轉(zhuǎn)度,使系統(tǒng)能夠確定精確的方向。這使得定位和定位系統(tǒng)更加準(zhǔn)確和安全,提供精準(zhǔn)的定位和實(shí)時(shí)追蹤,從而使我們的室內(nèi)定位系統(tǒng)更加先進(jìn)。

室內(nèi)追蹤的逐步編碼

圖4。代碼片段標(biāo)簽

關(guān)于標(biāo)簽代碼,我們還創(chuàng)建了另一個(gè)版本,當(dāng)Indusboard信標(biāo)放置在房間天花板的角落時(shí),不僅可以確定物體的二維位置,還能確定物體的深度和高度。

3D室內(nèi)定位

圖5。3D室內(nèi)定位

測試

現(xiàn)在,使用3.3V電池或通過Indusboard Coin背面的JST連接器為錨點(diǎn)供電。將每個(gè)錨點(diǎn)放置在房間的角落,如圖6所示。

接著,給標(biāo)簽供電并根據(jù)需要安裝:比如作為人的項(xiàng)圈、寵物的項(xiàng)圈,或者固定在機(jī)器人上——基本上任何你想追蹤的東西都可以。將你的筆記本電腦或手機(jī)連接到標(biāo)簽設(shè)備的Wi-Fi熱點(diǎn)。

打開瀏覽器,輸入IP地址192.168.4.1。你現(xiàn)在可以實(shí)時(shí)查看數(shù)據(jù),包括移動(dòng)方向、房間內(nèi)位置以及每個(gè)信標(biāo)/錨點(diǎn)的距離。界面上的綠點(diǎn)會(huì)隨著標(biāo)簽移動(dòng)而移動(dòng),讓你實(shí)時(shí)追蹤它。

實(shí)時(shí)室內(nèi)追蹤,支持BLE、Wi-Fi三角定位和Indusboard

圖6。,支持BLE、Wi-Fi三角定位和Indusboard



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉
饶阳县| 丹寨县| 镇安县| 翁源县| 浦城县| 惠东县| 鸡东县| 湖口县| 荆门市| 临颍县| 巴林右旗| 凤城市| 曲松县| 临安市| 阿尔山市| 江阴市| 余姚市| 浦江县| 阿拉善盟| 高平市| 巧家县| 铜陵市| 若尔盖县| 囊谦县| 东海县| 九寨沟县| 尤溪县| 外汇| 敦化市| 万源市| 壤塘县| 张掖市| 卓资县| 左贡县| 宜兰县| 镇安县| 沁阳市| 齐河县| 江安县| 开封市| 桐柏县|