采用主從方式實(shí)現點(diǎn)對多點(diǎn)的無(wú)線(xiàn)數傳設計
摘要:針對無(wú)線(xiàn)傳輸容易發(fā)生頻段沖突,數據丟包等現象,采用主從分布式、雙無(wú)線(xiàn)收發(fā)芯片、跳頻技術(shù)及隨機延時(shí)的思想實(shí)現點(diǎn)對多點(diǎn)的無(wú)線(xiàn)數傳系統設計,提高無(wú)線(xiàn)數據傳輸的準確性、實(shí)時(shí)性和可靠性。該系統由單片機、主無(wú)線(xiàn)模塊和從無(wú)線(xiàn)模塊等組成,具有成本低廉,實(shí)現簡(jiǎn)單等優(yōu)點(diǎn)。
關(guān)鍵詞:主從分布式;點(diǎn)對多點(diǎn);無(wú)線(xiàn)數據傳輸;跳頻技術(shù)
0 引言
隨著(zhù)嵌入式技術(shù)、集成電路、自動(dòng)化控制及無(wú)線(xiàn)通信技術(shù)的迅速發(fā)展,各種終端設備之間的聯(lián)系已經(jīng)從電線(xiàn)與接口的束縛解放了出來(lái)。無(wú)線(xiàn)通信技術(shù)與有線(xiàn)通信技術(shù)相比,有成本低、攜帶方便、不必穿墻鉆孔布線(xiàn)、搭建網(wǎng)絡(luò )簡(jiǎn)單快捷等優(yōu)點(diǎn)。特別是在有線(xiàn)網(wǎng)絡(luò )不通暢或由于現場(chǎng)環(huán)境因素的限制不便架設線(xiàn)路的情況下,使用無(wú)線(xiàn)通信技術(shù)進(jìn)行數據采集、傳輸顯得更加實(shí)用、高效、快捷。
無(wú)線(xiàn)設備間的互連操作隨處可見(jiàn),其核心問(wèn)題是設備間通信。如何實(shí)現一個(gè)接收端與多個(gè)發(fā)送端之間的數據傳輸以及如何更有效的解決無(wú)線(xiàn)通信時(shí)的防碰撞問(wèn)題,本文采用主從分布式、雙無(wú)線(xiàn)收發(fā)芯片、跳頻技術(shù)及隨機延時(shí)的思想實(shí)現點(diǎn)對多點(diǎn)的無(wú)線(xiàn)數傳系統設計,提高無(wú)線(xiàn)數據傳輸的準確性、實(shí)時(shí)性和可靠性。
1 系統的基本結構
點(diǎn)對多點(diǎn)無(wú)線(xiàn)數傳系統的結構框圖如圖1所示,由一臺主無(wú)線(xiàn)模塊和多個(gè)從無(wú)線(xiàn)模塊構成,可以實(shí)現無(wú)線(xiàn)數據的雙向傳輸。每個(gè)從無(wú)線(xiàn)模塊都有獨立的CPU,與主無(wú)線(xiàn)模塊的通信互不影響,不會(huì )因某個(gè)無(wú)線(xiàn)模塊的故障而使整個(gè)系統失去控制,不僅能提高系統的可用性,更便于維護。
主無(wú)線(xiàn)數傳模塊:負責將外圍設備或PC的測控(查詢(xún)和設置)指令發(fā)送給從無(wú)線(xiàn)數傳模塊,并對外圍設備返回的應答數據(正常數據)或外圍設備主動(dòng)上傳的報警數據(異常數據)進(jìn)行適當處理(校驗、拆包、組包等),通過(guò)RS 232總線(xiàn)或RS 485總線(xiàn)傳給外圍設備或PC。
從無(wú)線(xiàn)數傳模塊:負責將主無(wú)線(xiàn)數傳模塊傳送來(lái)的測控指令通過(guò)RS 232總線(xiàn)或RS 485總線(xiàn)傳給外圍設備,及將外圍設備的應答數據或報警數據傳送給主無(wú)線(xiàn)數傳模塊傳。
2 系統的硬件設計
無(wú)線(xiàn)數傳系統的硬件框圖如圖2所示,本系統采用目前比較流行的低功耗、抗干擾能力強、誤碼低的射頻收發(fā)芯片CC1100,51單片機處理器,RS 232總線(xiàn)/RS485總線(xiàn),電源模塊,撥碼開(kāi)關(guān)等研制無(wú)線(xiàn)數傳模塊。為避免PC機與多外圍設備或外圍設備之間的數據碰撞,采用一主多從模式,并在主無(wú)線(xiàn)模塊上接兩片射頻收發(fā)芯片,其中一片用于正常數據的傳輸,另一片用于異?;驁缶瘮祿膫鬏?,保證數據傳輸的準確性與可靠性。而從無(wú)線(xiàn)模塊上只接一片射頻收發(fā)芯片,兼顧正常和異常數據的傳輸。
3 系統的軟件設計
3.1 單片機通信程序設計
在點(diǎn)對多點(diǎn)的無(wú)線(xiàn)數傳系統中,無(wú)線(xiàn)通信軟件設計特別重要,軟件設計的好壞直接關(guān)系到數據通信的準確性及實(shí)時(shí)性、系統的可靠性等。采用KeilC、匯編語(yǔ)言及C語(yǔ)言相結合開(kāi)發(fā)。用匯編語(yǔ)言編寫(xiě)部分與硬件相關(guān)的程序代碼,最大限度地發(fā)揮硬件的功能,能夠根據特定的應用,而對代碼做優(yōu)化處理,從而提高程序的運行速度。軟件開(kāi)發(fā)的主體部分用C語(yǔ)言編寫(xiě)程序代碼,如頻率的設置、資源/重要變量的初始化、數據的解析處理等,具有項目開(kāi)發(fā)周期短、可讀性強、可移植性好等特點(diǎn)。
為了避免同頻干擾的問(wèn)題,系統采用時(shí)分技術(shù)將系統主無(wú)線(xiàn)數傳模塊與任一從無(wú)線(xiàn)模塊之間的通信采用時(shí)分的方式分開(kāi),每個(gè)從無(wú)線(xiàn)數傳模塊都有一個(gè)獨立的ID(地址),采用帶地址碼的數據幀發(fā)送數據或命令。
評論