基于Si1000的無線傳輸模塊的研究與設(shè)計_第1頁
基于Si1000的無線傳輸模塊的研究與設(shè)計_第2頁
基于Si1000的無線傳輸模塊的研究與設(shè)計_第3頁
基于Si1000的無線傳輸模塊的研究與設(shè)計_第4頁
基于Si1000的無線傳輸模塊的研究與設(shè)計_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、    基于si1000的無線傳輸模塊的研究與設(shè)計    陳珺 周元元摘要:由于有線通信系統(tǒng)傳輸距離短、架設(shè)成本高等問題,無線通信系統(tǒng)成為當(dāng)今的研究熱點。本文設(shè)計了一種基于si1000的無線傳輸模塊,完成了串口收發(fā)、無線收發(fā)和參數(shù)在線配置等功能。通過實驗證明,該無線傳輸模塊具有良好的穩(wěn)定性和可靠性,能夠?qū)まr(nóng)業(yè)、智能家居等數(shù)據(jù)采集傳輸應(yīng)用提供一定的參考價值。關(guān)鍵詞:si1000;無線傳輸;數(shù)據(jù)采集:tp212 :a :1007-9416(2018)06-0034-03隨著無線技術(shù)、微電子及嵌入式計算技術(shù)的進(jìn)步,無線傳感器網(wǎng)絡(luò)的研究及應(yīng)用得到了迅猛的發(fā)展。

2、相比傳統(tǒng)的有線數(shù)據(jù)傳輸系統(tǒng),采用無線方式具有布線少、成本低、功耗低,且靈活性好、擴(kuò)展性強等的優(yōu)點。在無線傳感器網(wǎng)絡(luò)中,最典型的應(yīng)用模式就是在特定的網(wǎng)絡(luò)區(qū)域中,部署一定數(shù)量的的傳感器節(jié)點,收集數(shù)據(jù)信息并經(jīng)過中繼節(jié)點多跳傳輸?shù)絽R聚節(jié)點,再由匯聚節(jié)點把信息處理結(jié)果傳送到后臺管理控制端1。本文采用silicon labs公司生產(chǎn)的si1000片上系統(tǒng)作為主控芯片,在集成開發(fā)環(huán)境silicon laboratories ide中進(jìn)行編譯,研究并設(shè)計了實現(xiàn)收發(fā)功能一體的無線傳輸模塊。配合pc中基于visual basic所設(shè)計的上位機(jī)程序,可以通過軟件進(jìn)行各種功能參數(shù)的配置,可實現(xiàn)多節(jié)點數(shù)據(jù)采集并傳輸?shù)墓?/p>

3、能。1 基本設(shè)計1.1 硬件平臺si1000是完全集成的混合信號片上系統(tǒng),內(nèi)部除了高性能、超低功耗的cip-51內(nèi)核的8位c8051f9xx系列單片機(jī),還集成了大量的外設(shè),比如240-960mhz的ezradiopro系列無線收發(fā)芯片si4432。它自帶發(fā)送與接受fifo達(dá)到64字節(jié),可傳輸超長幀,數(shù)據(jù)原始速率范圍從0.123 kbps到256kbps;發(fā)射功率最高可達(dá)20dbm,靈敏度達(dá)-121dbm,通信距離長達(dá)兩公里,是同類產(chǎn)品的數(shù)倍;內(nèi)置發(fā)送、接收、待機(jī)、休眠四種模式,其中休眠模式又為低功耗提供了便利2;基于fsk、gfsk和ook的調(diào)制方式和微功率發(fā)射,采用高效前向糾錯信道編碼技術(shù),

4、提高了數(shù)據(jù)抗突發(fā)干擾和隨機(jī)干擾的能力3。因為價格低廉,si1000片上系統(tǒng)提供了目前業(yè)界最高性價比的單芯片無線通信解決方案,只需少量元器件和較小的電路板尺寸即可組建高性能的無線通信系統(tǒng)4。1.2 軟件介紹硬件平臺選用的silicon labs公司的si1000,那么無線傳輸模塊的集成開發(fā)環(huán)境也是選用的silicon laboratories ide。ide只是一個集成開發(fā)環(huán)境,必須有相關(guān)的工具鏈(tool chain)支持才能編譯,所以調(diào)試程序還需要keil的c51編譯器、連接器bl51、匯編語言編輯器a51等,這里選擇keil uvision4。keil uvision4安裝完畢后,還需要進(jìn)

5、入ide的界面,選擇project->tool chain integration,待彈出對話框,單擊browse按鈕,更換a51、c51和bl51的目錄(換成keilc51bin即可),如此才可正常工作,這里不再詳細(xì)分解過程。通過ide軟件編寫相關(guān)程序,在編譯通過后生成hex文件,然后使用仿真器將hex文件下載到芯片。因為keil uvision4的在線調(diào)試功能并不能很好地支持si1000射頻模塊的在線調(diào)試,所以在進(jìn)行調(diào)試的時候用串口uart將信息發(fā)到pc上,通過串口調(diào)試助手顯示數(shù)據(jù)進(jìn)行結(jié)果驗證。1.3 網(wǎng)絡(luò)拓?fù)浼巴ㄐ艆f(xié)議無線傳感器網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)類型一般分為三種:星型、樹型和網(wǎng)狀結(jié)構(gòu)。

6、本文采用樹型結(jié)構(gòu)網(wǎng)絡(luò)拓?fù)?,由一個中心節(jié)點、若干終端節(jié)點和若干中繼節(jié)點構(gòu)成。其中,中心節(jié)點位于系統(tǒng)核心,維護(hù)著整個系統(tǒng)的路由信息,同終端節(jié)點交互應(yīng)用層業(yè)務(wù)數(shù)據(jù);中繼節(jié)點完成無線鏈路的接力,本身不產(chǎn)生或消費應(yīng)用層業(yè)務(wù)數(shù)據(jù);終端節(jié)點完成具體的業(yè)務(wù)功能,它產(chǎn)生或消費應(yīng)用層業(yè)務(wù)數(shù)據(jù),同時也兼有中繼節(jié)點的功能4。如圖1所示間接通信的協(xié)議棧。如若沒有中繼節(jié)點,那么中心節(jié)點與終端節(jié)點直接通信。2 系統(tǒng)通信協(xié)議實現(xiàn)本系統(tǒng)主要實現(xiàn)三個功能:串口收發(fā)、無線收發(fā)和參數(shù)配置。下面先對程序的總體流程設(shè)計做個闡述,再主要就三個功能進(jìn)行介紹。2.1 總體設(shè)計si1000芯片內(nèi)置功能模塊均編成獨立的函數(shù)由主程序進(jìn)行調(diào)用。主要有

7、: 初始化程序、無線發(fā)送程序、無線接收程序、串口收發(fā)中斷程序等等。2.1.1 主程序:main.c首先關(guān)閉watchdog,然后初始化系統(tǒng)時鐘、pca、spi、端口、串口、定時器0、在線配置默認(rèn)數(shù)據(jù)、在線配置等;使能總中斷,初始化無線配置及參數(shù),打開接收功能;再通過配置pca來啟動watchdog。while循環(huán)里面,串口一直在等待數(shù)據(jù),如果有數(shù)據(jù)了,就進(jìn)入uart_mac_rx()進(jìn)行處理;如果處理后需要發(fā)送數(shù)據(jù),將有相應(yīng)的數(shù)據(jù)包發(fā)送標(biāo)志;如果數(shù)據(jù)包發(fā)送標(biāo)志為1,發(fā)送數(shù)據(jù)、亮燈,啟動發(fā)送定時標(biāo)志以等待第二個數(shù)據(jù)包;如果數(shù)據(jù)包發(fā)送標(biāo)志為2且在等待時間以內(nèi)(說明包比較長要分成兩個包發(fā)送),發(fā)送數(shù)

8、據(jù)、亮燈;如果無線接收到數(shù)據(jù),數(shù)據(jù)存入緩存區(qū),且進(jìn)入link_layer()進(jìn)行處理;如若轉(zhuǎn)發(fā)數(shù)據(jù)發(fā)送標(biāo)志為1,同樣發(fā)送數(shù)據(jù)、亮燈,啟動轉(zhuǎn)發(fā)定時標(biāo)志以等待第二個數(shù)據(jù)包;如果轉(zhuǎn)發(fā)數(shù)據(jù)發(fā)送標(biāo)志為2且在等待時間以內(nèi)(說明包比較長要分成兩個包發(fā)送),發(fā)送數(shù)據(jù)、亮燈;最后watchdog。2.1.2 中斷:interrupt.c有三個中斷,分別是定時器0,串口0和無線收發(fā)。其中串口0有接收數(shù)據(jù)和發(fā)送數(shù)據(jù)之分,同樣無線收發(fā)也有接收數(shù)據(jù)與發(fā)送數(shù)據(jù)之分。2.1.3 mac層數(shù)據(jù)處理:mac.c首先uart_mac_rx(),串口收到數(shù)據(jù)將在這個函數(shù)里面存入緩存區(qū),并進(jìn)入uart_protocol()處理;ua

9、rt_protocol()主要是針對串口轉(zhuǎn)換碼的問題來將串口數(shù)據(jù)轉(zhuǎn)成無線數(shù)據(jù),以及對長包進(jìn)行分包處理;link_layer(),通過無線接收數(shù)據(jù)包的不同地址來確定數(shù)據(jù)將是通過串口向上傳送或者轉(zhuǎn)發(fā)或者回送路經(jīng);uart_mac_tx(),即通過串口向上傳送,同樣是針對串口轉(zhuǎn)換碼的問題來將無線數(shù)據(jù)轉(zhuǎn)成串口數(shù)據(jù),以及對接收的兩個包進(jìn)行拼裝處理;network_ layer()則是轉(zhuǎn)發(fā)處理,根據(jù)路由表確定下一設(shè)備的地址,對ttl進(jìn)行減法運算等,如果本設(shè)備已經(jīng)是目的地址,還要進(jìn)入uart_mac_tx()將數(shù)據(jù)發(fā)往串口;route_process(),若收到的數(shù)據(jù)包中pd為1,則通過對路由表進(jìn)行一系列的

10、處理回送路由信息。2.1.4 參數(shù)在線配置:frame_configuration.c首先是haimingma_generat(),對接收到的要求讀取的在線配置幀進(jìn)行海明碼的校驗,以及回送在線配置幀進(jìn)行海明碼的計算。再是參數(shù)在線配置config_online(),分為讀取模塊操作和配置模塊操作。其中讀取模塊后返回的數(shù)據(jù)與本身flash的不太一樣,因為有個返回標(biāo)志位的不同導(dǎo)致了整個校驗位的不同。配置模塊操作更復(fù)雜一點,因為要根據(jù)配置的參數(shù)來設(shè)置無線參數(shù)。2.1.5 無線參數(shù)配置:ppphy.c和ppphy_const.c關(guān)于無線參數(shù)初始化、無線收發(fā)以及寄存器的讀寫操作等,還有初始化的常數(shù)值。2.

11、1.6 全局變量:global_val.c整個程序定義的全局變量。2.2 串口收發(fā)只要是使用無線通信來和外界聯(lián)系,首先想到的就是uart,它是一種很常用的通訊方式,所有的處理器、控制器上,基本都帶有uart功能;只要是實現(xiàn)uart的收發(fā)功能,必不可少的要做波特率發(fā)生器。即利用芯片上的定時器timer1,根據(jù)波特率時鐘的計算來做串口的初始化,具體可見函數(shù)void uart0_init (void)。這里串口接收數(shù)據(jù)用的中斷法,利用串口中斷服務(wù)子程序isr來完成。如果串口上收到數(shù)據(jù),那么會調(diào)用中斷向量,中斷向量把程序指針指到相應(yīng)的isr中。對接收到的數(shù)據(jù)在isr中進(jìn)行操作,將接收數(shù)據(jù)存入uart_

12、mac_rx()的緩存區(qū),并進(jìn)入uart_protocol()進(jìn)行處理,主要是針對串口轉(zhuǎn)換碼的問題將串口數(shù)據(jù)轉(zhuǎn)成無線數(shù)據(jù)以及對數(shù)據(jù)長幀進(jìn)行分包。完成后程序指針會跳回中斷前的地方繼續(xù)進(jìn)行剛才被中斷的事件。同理,要通過串口將數(shù)據(jù)往上層傳送,即進(jìn)入函數(shù)uart_mac_tx(),同樣是針對串口轉(zhuǎn)換碼的問題將無線數(shù)據(jù)轉(zhuǎn)成串口數(shù)據(jù),以及對接收的兩個數(shù)據(jù)幀進(jìn)行拼裝組合成一個數(shù)據(jù)長幀。rs-232是個人計算機(jī)上的異步傳輸標(biāo)準(zhǔn)接口之一,由電子工業(yè)協(xié)會所制定。本協(xié)議無線模塊就通過rs232接口同pc交換報文,為了定義報文邊界和流控,定義了幾個換碼指令,如esc 01(0x1b 0x01):幀開始標(biāo)志;esc 0

13、2(0x1b 0x02):幀結(jié)束標(biāo)志,同時作為偽后一幀的開始標(biāo)志;esc 05(0x1b 0x05):表示ll-pdu數(shù)據(jù)中出現(xiàn)了一個“0x1b”,此時串口上數(shù)據(jù)應(yīng)為“0x1b 0x1b”。2.3 無線收發(fā)傳感器節(jié)點間在無線信道通信的幀格式見表1。其中幀開始和幀結(jié)束是串口轉(zhuǎn)換指令。目的id是一個字節(jié)的目的地址,其中“0”為空地址,“255”為廣播地址。節(jié)點從節(jié)點從物理層(無線信道)收到數(shù)據(jù)報文后,首先判斷目的id字段是否為本節(jié)點地址或廣播地址,如果是,則將數(shù)據(jù)交由上層協(xié)議處理,否則丟棄報文。route list是源節(jié)點到目的節(jié)點經(jīng)過的路徑,設(shè)置這一條目是為了方便后面章節(jié)的數(shù)據(jù)信息轉(zhuǎn)發(fā)策略測試;

14、“0”表示路徑結(jié)束。ft是指數(shù)據(jù)報文承載的上層協(xié)議類型。若為1,表示簇頭的聲明,此時data中的數(shù)據(jù)為grid_id、ch_id;若為2,則為路由的轉(zhuǎn)發(fā),此時data中的數(shù)據(jù)為源節(jié)點承載的任意數(shù)據(jù);其他保留。2.4 參數(shù)配置和實驗操作通過串口在線配置模塊參數(shù)或者讀出相應(yīng)的參數(shù),如頻段、網(wǎng)絡(luò)id、地址類型、本地地址、目的地址、空中速率以及發(fā)射功率等。如表2所示配置幀格式。操作時,首先完成引腳連接,包括電源、地、rx、tx等引腳;打開串口調(diào)試助手或者超級終端對模塊進(jìn)行參數(shù)配置;配置成功后串口將會回送fc,如果失敗,回送fd,如圖2所示。圖2中的數(shù)據(jù)所示,這是一個基本的默認(rèn)配置:頻段為430m,頻點

15、0,地址類型8位,本地id為0x01,目的id為0xff表示廣播,空中速率50k,發(fā)射功率為20dbm。因通常的無線參數(shù)均使用默認(rèn)配置,其中的頻段頻點、空中速率、發(fā)射功率并不需要頻繁改動,本人使用vb做了一個小型的參數(shù)在線配置軟件,可以直接打開這個軟件配置工作頻率、網(wǎng)絡(luò)id、無線地址以及串口選擇,如圖3所示。配置結(jié)束可以進(jìn)行無線數(shù)據(jù)的采集和收發(fā),如圖4所示節(jié)點回送匯聚節(jié)點信息。3 結(jié)語本文基于si1000無線片上系統(tǒng)研究的無線傳輸模塊,為通用透明傳輸模塊,能適應(yīng)任何標(biāo)準(zhǔn)或非標(biāo)準(zhǔn)的用戶協(xié)議,自動過濾掉空中產(chǎn)生的假數(shù)據(jù),實現(xiàn)所收即所發(fā)。標(biāo)準(zhǔn)配置支持300mhz到900mhz的各個頻段,可設(shè)置不同串

16、口波特率,自定義格式,傳輸超長數(shù)據(jù)幀,編程靈活,滿足多種通信組合方式。實驗證明,該模塊工作可靠、穩(wěn)定,具有易擴(kuò)展性、低功耗等優(yōu)點,適合戶外不方便布線的數(shù)據(jù)采集和傳輸,對工業(yè)、智能家居等數(shù)據(jù)采集傳輸應(yīng)用具有一定的參考價值。參考文獻(xiàn)1李旭凱,王文娟.基于無線串口模塊的文件傳輸系統(tǒng)設(shè)計j.計算機(jī)與網(wǎng)絡(luò),2018,(07):62-71.2美國silicon labs公司.si4430-31-32datasheet.2009.3美國silicon labs公司.si100-16-16datasheet.2010.4劉化君,劉傳清.物聯(lián)網(wǎng)技術(shù)m.北京:電子工業(yè)出版社,2010:1-50.5陳珺.無線傳感網(wǎng)

17、絡(luò)路由協(xié)議的研究與實現(xiàn)d.南京:南京郵電大學(xué),2013.abstract:due to the defects of high cost and short transmission distance in wire communication system, wireless communication system has become a current research hotspot. a wireless transmission module based on si1000 is proposed in this paper. serial port send and receive software program design,serial port online configuration and wireless send and receive are the emphases of this letter. the results o

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論