基于WiFi和RFID定位技術(shù)的電子標(biāo)簽定位算法
但是在實(shí)際應(yīng)用中,由于測(cè)量誤差的存在,三個(gè)圓交于一點(diǎn)的情況很難存在。而這是經(jīng)常的事情,這會(huì)導(dǎo)致方程無解,無法定位出待測(cè)目標(biāo)的位置。
本文引用地址:http://m.butianyuan.cn/article/148152.htm2.3本文采用的算法
本方案中,我們采用的定位算法是基于接收信號(hào)強(qiáng)度的算法(即LANDMARC算法),并在LANDMARC算法的后面利用三邊定位算法,使其更準(zhǔn)確。
實(shí)驗(yàn)前在某公司大樓的走道和三間房?jī)?nèi)各安置每隔3 m固定一個(gè)電子標(biāo)簽(參考標(biāo)簽),在該層樓的東南兩北角各放置一個(gè)AP.做好上位機(jī)與下位機(jī)的無線通信(軟件程序的服務(wù)器和客戶端的連接)。
實(shí)驗(yàn)進(jìn)行時(shí),當(dāng)待測(cè)標(biāo)簽進(jìn)入到AP(4個(gè))的范圍內(nèi),開始接收到待測(cè)標(biāo)簽發(fā)出的信號(hào)場(chǎng)強(qiáng),并傳入上位機(jī)。同時(shí)也接收各個(gè)參考標(biāo)簽在各個(gè)AP的信號(hào)場(chǎng)強(qiáng),并傳入上位機(jī)。
定位算法則把待測(cè)標(biāo)簽在4個(gè)AP(AP1,AP2,AP3,AP4)上的場(chǎng)強(qiáng)建立成一個(gè)場(chǎng)強(qiáng)矢量,同時(shí)參考標(biāo)簽也建立成場(chǎng)強(qiáng)矢量。通過LANDMARC算法即通過比較待測(cè)標(biāo)簽場(chǎng)強(qiáng)矢量與參考標(biāo)簽場(chǎng)強(qiáng)矢量的歐氏距離,找出3個(gè)歐氏距離最小的參考標(biāo)簽,并得知3個(gè)參考標(biāo)簽的具體位置(在實(shí)驗(yàn)前期,參考標(biāo)簽放置時(shí)已經(jīng)有記錄)。對(duì)于3個(gè)參考點(diǎn),不用再根據(jù)信號(hào)的強(qiáng)度來決定其半徑,而是3個(gè)以參考點(diǎn)為圓心,以最近參考標(biāo)簽之間的距離(以確定每隔幾米放置一個(gè)參考標(biāo)簽)的3/4長(zhǎng)度為半徑做3個(gè)圓,這樣3個(gè)圓兩兩相交的可能性會(huì)增加。
由于3個(gè)圓很難在同一個(gè)點(diǎn)相交,所以對(duì)于3個(gè)圓之間的關(guān)系有3種:◆3個(gè)圓兩兩相交,并且3個(gè)圓有公共區(qū)域;◆3個(gè)網(wǎng)兩兩相交,但沒有公共區(qū)域;◆3個(gè)圓不相交。
具體關(guān)系如下:①當(dāng)3個(gè)圓有公共區(qū)域時(shí),則公共區(qū)域必然有3個(gè)交點(diǎn),以3個(gè)交點(diǎn)作三角形,則待測(cè)標(biāo)簽的坐標(biāo)即是三角形內(nèi)心坐標(biāo)。
②當(dāng)兩兩相交無公共區(qū)域時(shí),必然有兩兩公共區(qū)域。取兩圓相交區(qū)域的兩個(gè)交點(diǎn)的連線的中點(diǎn),然后以這3個(gè)中點(diǎn)做三角形,其內(nèi)心就是待測(cè)標(biāo)簽內(nèi)心坐標(biāo)。
③3個(gè)圓不相交時(shí)舍棄,接受下一組最近3個(gè)參考標(biāo)簽,若3次還沒有找到相交情況,即用3個(gè)參考標(biāo)簽做的位置做三角形,其內(nèi)心就是待測(cè)標(biāo)簽的位置。
本算法的優(yōu)勢(shì)為在原來LANDMARC算法的定位精度上,再進(jìn)行三角定位,進(jìn)一步提高定位精度。同時(shí),以參考標(biāo)簽之間的距離來進(jìn)行進(jìn)一步的三角定位,可以減少額外的計(jì)算,并且可以減少由于參考標(biāo)簽場(chǎng)強(qiáng)的變化帶來的重復(fù)測(cè)量。
結(jié)語
本文主要討論了基于信號(hào)強(qiáng)度算法和基于非測(cè)距的三邊算法,同時(shí)對(duì)LANDMARC算法進(jìn)行了進(jìn)一步的改進(jìn)。由相關(guān)實(shí)驗(yàn)結(jié)果得出:該算法可以達(dá)到定位精度在1.5 m左右的誤差,該方案適合廣泛運(yùn)用。
評(píng)論