關(guān) 閉

新聞中心

EEPW首頁 > 工控自動化 > 設(shè)計(jì)應(yīng)用 > 基于TinyOS平臺的RSSI定位系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

基于TinyOS平臺的RSSI定位系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

作者: 時(shí)間:2013-04-25 來源:網(wǎng)絡(luò) 收藏

3.1 總體實(shí)驗(yàn)思路
信標(biāo)節(jié)點(diǎn):負(fù)責(zé)發(fā)送包含自身位置的數(shù)據(jù)包到盲節(jié)點(diǎn)。盲節(jié)點(diǎn):負(fù)責(zé)接收信標(biāo)節(jié)點(diǎn)發(fā)來的數(shù)據(jù)包,提取出信標(biāo)節(jié)點(diǎn)的坐標(biāo)值,并從數(shù)據(jù)包中獲得值,在此基礎(chǔ)上計(jì)算出自身的坐標(biāo)值,并將計(jì)算出的結(jié)果發(fā)送到基站節(jié)點(diǎn)?;竟?jié)點(diǎn):負(fù)責(zé)接收所有能夠聽見的數(shù)據(jù)包,并將其轉(zhuǎn)發(fā)到XServe,最后顯示到XSniffer界面中,如圖3所示。

本文引用地址:http://m.butianyuan.cn/article/159403.htm

g.JPG


圖3中,后5位數(shù)據(jù)是自行定義的,發(fā)送給2號節(jié)點(diǎn)的5位數(shù)據(jù)中,前3位是接收到的3個(gè)已知節(jié)點(diǎn)值,后兩位是計(jì)算出的盲節(jié)點(diǎn)坐標(biāo)值,為便于顯示,最后兩位數(shù)據(jù)分別擴(kuò)大了10倍,實(shí)際值應(yīng)當(dāng)縮小10倍。發(fā)送給5號節(jié)點(diǎn)的數(shù)據(jù)是信標(biāo)節(jié)點(diǎn)自身的坐標(biāo)值。
3.2 具體思路
3.2.1 信標(biāo)節(jié)點(diǎn)
實(shí)驗(yàn)中采用3個(gè)信標(biāo)節(jié)點(diǎn),首先分別指定各節(jié)點(diǎn)的ID,以便能夠從XSniffer界面中觀察出每個(gè)節(jié)點(diǎn)發(fā)送的數(shù)據(jù)。信標(biāo)節(jié)點(diǎn)在實(shí)驗(yàn)中起著關(guān)鍵的作用,只有保證信標(biāo)節(jié)點(diǎn)與盲節(jié)點(diǎn)之間進(jìn)行正常通信,才可以得到可信的盲節(jié)點(diǎn)位置坐標(biāo)。具體思路如下:(1)定義一個(gè)緩存區(qū),用于存儲自身的坐標(biāo)值。(2)設(shè)置一個(gè)定時(shí)器,計(jì)時(shí)發(fā)送出緩存區(qū)中的數(shù)據(jù)到盲節(jié)點(diǎn),指定紅色led燈亮,并通過XSniffer界面觀察發(fā)送數(shù)據(jù)是否正確。(3)數(shù)據(jù)發(fā)送成功,指定綠色led燈亮。
3.2.2 盲節(jié)點(diǎn)
實(shí)驗(yàn)?zāi)康氖菧y出盲節(jié)點(diǎn)的位置,因此盲節(jié)點(diǎn)是實(shí)驗(yàn)的目標(biāo)節(jié)點(diǎn)。首先指定其ID,以便在XSniffer界面中讀取數(shù)據(jù)。其次要保證能夠正常接收并提取信標(biāo)節(jié)點(diǎn)發(fā)送的數(shù)據(jù),才可以得到可信的自身位置坐標(biāo)。具體思路如下:(1)定義接收和發(fā)送兩個(gè)緩存區(qū)及其對應(yīng)的變量指針。(2)設(shè)置4個(gè)不同的計(jì)時(shí)器,第1個(gè)計(jì)時(shí)器時(shí)間到,通過變量指針將接收緩存區(qū)中的數(shù)據(jù)復(fù)制到發(fā)送緩存區(qū)中。第2和第3個(gè)計(jì)時(shí)器時(shí)間到,重復(fù)上述操作。第4個(gè)計(jì)時(shí)器時(shí)間到,利用發(fā)送緩存區(qū)中數(shù)據(jù)計(jì)算出盲節(jié)點(diǎn)坐標(biāo)值。(3)將盲節(jié)點(diǎn)的坐標(biāo)值發(fā)送到基站,并通過XServe到XSni ffer界面讀取數(shù)據(jù)。
3.2.3 基站節(jié)點(diǎn)
基站節(jié)點(diǎn)用于接收信標(biāo)節(jié)點(diǎn)和盲節(jié)點(diǎn)發(fā)送的數(shù)據(jù),并將數(shù)據(jù)向上傳送,使得實(shí)驗(yàn)者能夠明確每個(gè)節(jié)點(diǎn)發(fā)送的數(shù)值。具體實(shí)現(xiàn)思路如下:(1)定義一個(gè)緩存區(qū),用來存儲接收到的數(shù)據(jù)。(2)利用接收函數(shù)接收可以聽到的信號。(3)將接收到數(shù)據(jù)通過串口傳送到XServe,通過XServe將數(shù)據(jù)顯示到XSniffer界面中。

4 實(shí)驗(yàn)結(jié)果及數(shù)據(jù)分析
(1)兩個(gè)信標(biāo)節(jié)點(diǎn)放置在坐標(biāo)軸上,另外一個(gè)隨機(jī)放置。信標(biāo)節(jié)點(diǎn)的坐標(biāo)設(shè)為(0,2),(4,0),(6,6),盲節(jié)點(diǎn)坐標(biāo)如表1和表2所示。

h.JPG



評論


相關(guān)推薦

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

關(guān)閉