基于單片機的無線傳感器網(wǎng)絡(luò)節(jié)點制作及組網(wǎng)設(shè)計方案
1. 引言
早在上世紀(jì)70年代,就出現(xiàn)了采用點對點傳輸、連接傳感控制器而構(gòu)成的傳感器網(wǎng)絡(luò)雛形,我們把它歸之為第一代傳感器網(wǎng)絡(luò)。隨著相關(guān)學(xué)科的不斷發(fā)展和進(jìn)步,傳感器網(wǎng)絡(luò)同時還具有了獲取多種信息信號的綜合處理能力,并通過與傳感器控制器的相聯(lián),組成了有信息綜合和處理能力的傳感器網(wǎng)絡(luò),這是第二代傳感器網(wǎng)絡(luò)。到了20世紀(jì)90年代后期,隨著傳感器技術(shù)的發(fā)展,智能傳感器采用現(xiàn)場總線連接傳感控制器構(gòu)成局域網(wǎng),這就是第三代傳感器網(wǎng)絡(luò)?,F(xiàn)在,傳感器網(wǎng)絡(luò)以無線傳感器網(wǎng)絡(luò)為標(biāo)志,它正處于研究和發(fā)展的階段,我們稱之為第四代傳感器網(wǎng)絡(luò)。無線傳感器網(wǎng)絡(luò)是新一代的傳感器網(wǎng)絡(luò),可以應(yīng)用在軍事:環(huán)保,醫(yī)療以及空間探索等許多領(lǐng)域,可以說它具有非常廣泛的應(yīng)用前景。
2. 無線傳感器網(wǎng)絡(luò)硬件設(shè)計
2.1 無線傳感器網(wǎng)絡(luò)模型
無線傳感器網(wǎng)絡(luò)節(jié)點以自組織形式構(gòu)成多跳級中繼的分級結(jié)構(gòu)網(wǎng)絡(luò),這不同于基于傳統(tǒng)無線網(wǎng)絡(luò)的無基礎(chǔ)設(shè)施網(wǎng),通過在監(jiān)測區(qū)域內(nèi)設(shè)置多個傳感器節(jié)點(簡稱節(jié)點),由各節(jié)點自行協(xié)調(diào)并迅速組建通信網(wǎng)絡(luò),按照一定原則進(jìn)行工作任務(wù)劃分以獲取監(jiān)測區(qū)域物理信息。我們所說的網(wǎng)絡(luò)的自組織特性是指當(dāng)節(jié)點失效或新節(jié)點加入時網(wǎng)絡(luò)能夠自適應(yīng)重新組建,個別節(jié)點即使出現(xiàn)問題也不會影響全局,即網(wǎng)絡(luò)中的各節(jié)點除具備數(shù)據(jù)采集功能外兼有數(shù)據(jù)轉(zhuǎn)發(fā)實現(xiàn)多跳的路由功能。
2.2 無線傳感器網(wǎng)絡(luò)節(jié)點的構(gòu)成
典型的無線傳感器網(wǎng)絡(luò)節(jié)點由電源,數(shù)據(jù)獲取單元DAU,數(shù)據(jù)處理單元DPU,數(shù)據(jù)發(fā)送和接受單元DRSU組成。數(shù)據(jù)獲取單元由傳感器進(jìn)行監(jiān)測區(qū)域內(nèi)待測對象的信息采集; 數(shù)據(jù)處理單元實現(xiàn)數(shù)據(jù)的分析、處理和存儲等功能; 數(shù)據(jù)發(fā)送和接受單元負(fù)責(zé)低功耗短距離節(jié)點間通信; 電源單元選取小型化、高容量的電池,以確保節(jié)點的長壽命和微型化。具體節(jié)點設(shè)計如下圖所示
2.2.1 數(shù)據(jù)發(fā)送和接收單元
數(shù)據(jù)發(fā)送和接收單元采用國內(nèi)生產(chǎn)的STR系列微功率無線射頻通信模,其主要特點是: (1)最大發(fā)射功率10mW。(2)高抗干擾能力和低誤碼率。(3)傳輸距離遠(yuǎn)。在視距情況下,天線高度>2米,可靠傳輸距離可達(dá)300-400m(BER=1200bps)。(4)雙串口,3種接口方式。STR系列提供2個串口3種接口方式,COM1為TTL電平UART接口。COM2由用戶自定義為標(biāo)準(zhǔn)的RS-232/RS-485口。
2.2.2 數(shù)據(jù)處理單元
數(shù)據(jù)處理單元采用集成度高、功能豐富、超低功耗的8位單片機-AT89S系列單片機。豐富的片內(nèi)外設(shè)、節(jié)能、多種工作模式和對C語言程序設(shè)計的支持,使得Atmel89S系列單片機非常適合于應(yīng)用在嵌入式系統(tǒng)中。Atmel89S系列單片內(nèi)部集成看門狗、兩個16位定時器/計數(shù)器、一個串行通信接口,32條輸入輸出線,帶有4KB Flash和128B內(nèi)存。其作用是實現(xiàn)對數(shù)據(jù)處理,包括以下功能:
?。?) 控制無線傳輸模塊,為其提供兩條單向傳輸線(串行口)進(jìn)行數(shù)據(jù)傳輸;
?。?) 實現(xiàn)了對傳感器的數(shù)據(jù)采集,把傳感器傳入的數(shù)據(jù)作為輸入進(jìn)行處理后輸出相應(yīng)的控制信號;
(3) 對傳輸數(shù)據(jù)的處理,如檢錯校驗,使得傳輸?shù)男屎涂煽啃源蟠筇岣撸?/P>
(4) 與上位機進(jìn)行通信,執(zhí)行相應(yīng)的命令并且具有對數(shù)據(jù)和命令轉(zhuǎn)發(fā)的功能;
?。?) 自動監(jiān)測的功能,在沒有相應(yīng)命令執(zhí)行期間,能自動執(zhí)行監(jiān)測并向上位機發(fā)送信號,告知上位機檢測區(qū)域的狀況。
2.2.3 數(shù)據(jù)獲取單元
數(shù)據(jù)獲取單元采用國內(nèi)廠家生產(chǎn)的MQ系列的CO濃度傳感器-采用高低溫循環(huán)檢測方式低溫檢測一氧化碳,傳感器的電導(dǎo)率隨空氣中一氧化碳?xì)怏w濃度的增加而增大,高溫清洗低溫時吸附的雜散氣體。使用簡單的電路即可將電導(dǎo)率的變化轉(zhuǎn)換為與該氣體濃度相對應(yīng)的輸出信號。此傳感器對一氧化碳的靈敏度高,這種傳感器可檢測多種含一氧化碳的氣體,是一款適合多種應(yīng)用的低成本傳感器。它不但對一氧化碳具有很高的靈敏度和良好的選擇性,而且具有使用壽命長和高穩(wěn)定性的優(yōu)點。
2.2.4 電源
電源部分我們采用5V供電,控制器部分我們集成電壓轉(zhuǎn)換電路,直接可以接入220V居民用電網(wǎng)絡(luò)當(dāng)中,這樣增強了此網(wǎng)絡(luò)傳感器系統(tǒng)的便捷性。
2.3 數(shù)據(jù)匯集點
我們所設(shè)計的傳感器網(wǎng)絡(luò)要想把內(nèi)部信息與外部網(wǎng)絡(luò)進(jìn)行交換,必須通過數(shù)據(jù)匯集點,它接收下位機傳輸?shù)臄?shù)據(jù)并進(jìn)行校驗以驗證數(shù)據(jù)的正確性,再增加特定的數(shù)據(jù)幀,以使外部網(wǎng)絡(luò)能夠識別我們所傳送的數(shù)據(jù),然后把數(shù)據(jù)發(fā)送給我們要進(jìn)行數(shù)據(jù)交換的網(wǎng)絡(luò),同時它也接收可識別的外部網(wǎng)絡(luò)所傳入的信息,并對信息進(jìn)行解析,把它變成本網(wǎng)絡(luò)可識別的命令和數(shù)據(jù)。我們所設(shè)計的數(shù)據(jù)匯集點可由上位PC機與無線通信適配單元組成,也可以單獨增加匯集點,在網(wǎng)絡(luò)傳輸數(shù)據(jù)不是很復(fù)雜的情況下我們選擇前者。
3.無線傳感器網(wǎng)絡(luò)軟件設(shè)計
由于我們采用的微處理器支持C語言,這就大提高了軟件設(shè)計開發(fā)的工作效率。傳感器節(jié)點的工作流程圖(我們采用中斷接收,查詢發(fā)送,增加傳輸效率)如圖3所示。上位機作為控制中心必須具備網(wǎng)絡(luò)喚醒、數(shù)據(jù)處理、網(wǎng)絡(luò)維護(hù)等功能。上位機的軟件程序流程圖(采用查詢方式進(jìn)行數(shù)據(jù)傳輸)如圖4所示。
4.網(wǎng)絡(luò)通信協(xié)議的設(shè)計
在無線傳感器網(wǎng)絡(luò)設(shè)計當(dāng)中,通信協(xié)議的設(shè)計很大程度上決定了我們設(shè)計的成敗,第一步我們要考慮如何設(shè)計切實可用的幀結(jié)構(gòu);第二步為了增強網(wǎng)絡(luò)傳輸?shù)目煽啃?,我們要采用糾錯的措施,并且還要有握手信號以便使上位機和所有節(jié)點能相互通信,下位機可以主動呼叫上位機,告知其監(jiān)測區(qū)域的情況任何,上位機能根據(jù)監(jiān)測數(shù)據(jù)發(fā)命令告訴下位機采取什么樣的動作。
4.1 幀結(jié)構(gòu)設(shè)計
無線通信中,由于外部環(huán)境干擾,通信誤碼率很高,因此通信協(xié)議的設(shè)計對保證通信的可靠性十分重要。對于通信協(xié)議而言,最重要的就是幀結(jié)構(gòu)的設(shè)計,可以復(fù)雜可以簡單,但要與我們所設(shè)計系統(tǒng)要達(dá)到的目標(biāo)相符合,這里我們采用了6字節(jié)作為一幀數(shù)據(jù),包括:起始字節(jié),地址字節(jié),命令字節(jié),校驗字節(jié)和結(jié)束字節(jié)。
4.2 糾錯和握手信號設(shè)計
對于無線通信而言,提高通信可靠性的另一方面就是對傳輸數(shù)據(jù)進(jìn)行檢錯。為了高效無差錯傳輸數(shù)據(jù),
必須對數(shù)據(jù)進(jìn)行檢錯,當(dāng)傳輸距離較遠(yuǎn)或采用無線傳輸時,這就更為重要了。我們這里綜合考慮采用按位計算CRC碼的方法進(jìn)行糾錯, 從性能和開銷上考慮,采用CRC校驗算法遠(yuǎn)優(yōu)于奇偶校驗和算術(shù)和校驗等方法。
5.總結(jié)
本文作者創(chuàng)新點: 第一,最大的創(chuàng)新點在于軟件設(shè)計的中繼功能,這在工程實際應(yīng)用領(lǐng)域意義重大,因為中繼的功能是使我們所設(shè)計的系統(tǒng)能夠在不利于通信的環(huán)境下進(jìn)行安全可靠的通信,當(dāng)監(jiān)測中心因為環(huán)境或距離的原因不能夠和某些節(jié)點通信時,可以采用中繼功能,使一些通信良好的節(jié)點作為中繼節(jié)點進(jìn)行信息轉(zhuǎn)發(fā),從而保證整個網(wǎng)絡(luò)可靠的進(jìn)行通信。第二,是把無線傳感器網(wǎng)絡(luò)應(yīng)用于工業(yè)監(jiān)控系統(tǒng),以前的監(jiān)控節(jié)點一般都是獨立工作的,不能組網(wǎng)?,F(xiàn)在利用無線傳感器網(wǎng)絡(luò)使監(jiān)控系統(tǒng)組網(wǎng),大大加強了監(jiān)控效果;第三,為了保證通信的安全可靠性我們采用了較為復(fù)雜的校驗算法CRC;第四,充分利用了單片機的多機通信的功能,很好的完成了組網(wǎng),監(jiān)控的功能,成本很低,可以說性價比很高。
歡迎轉(zhuǎn)載,信息來自維庫電子市場網(wǎng)()