歡迎您光臨本站 登入註冊首頁

概述

   現代測控系統需要採集感測器所獲取的數據,並將採集得到的數據傳送到主機進行數據分析和處理。但是隨著數據採集應用範圍的不斷拓展,在有些場合,如高腐蝕性環境、現場無法實現……

    現代測控系統需要採集感測器所獲取的數據,並將採集得到的數據傳送到主機進行數據分析和處理。但是隨著數據採集應用範圍的不斷拓展,在有些場合,如高腐蝕性環境、現場無法實現明線連接等許多條件下,採用傳統的數據傳輸通道即通過有線連接傳輸採集己經不能滿足需要,這時採用無線數據傳輸就顯示出巨大的優勢,無線數據傳輸不受地理環境、氣候、時間等的限制,具有廣闊的應用前景。
    nRF401單片射頻集成電路是Nordic公司研製的單片UHF單片射頻集成電路,內部集成了性能優異的鏡像頻率抑制電路,工作在433MHzISM(Industrial,Scientific and Medical)頻段。它採用FSK調製解調技術,抗干擾能力強,並採用PLL頻率合成技術,頻率穩定性好,發射功率最大可達10dBm,接收靈敏度最大為-105dBm,數據傳輸速率可達20Kbps,上作電壓在+3--5V之間。nRF401單片射頻集成電路所需外圍元件較少,並可自接連接單片機串口。因其成本低,一致性好等特點,本設計採用nRF401單片射頻集成電路來設計無線數據傳輸模塊。
    在接收模式中,nRF401單片射頻集成電路被配置成傳統的外差式接收機,所接收的射頻調製的數字信號被低雜訊放大器放大,經混頻器變換成中頻,放大、濾波後進人解調器,解調后變換成數字信號輸出(DOUT端)。在發射模式中,數字信號經DIN端輸人,經鎖相環和壓控振蕩器處理後進人到發射功率放大器射頻輸出。南於採用了晶體振蕩和PLL合成技木,頻率穩定性極好,採用FSK調製和解調,抗干擾能力強。本文在設計的大前提下,簡化系統設計,在接收端,將數據採集的部分簡化為鍵盤的輸人數據,並對數據進行簡化編碼,通過單片機的控制將數據發送到NRF401,再通過PCB天線將數據發送出去,而接收端將數據接收之後單片機將數據傳送到ISD1420晶元上,發出聲音,此部分是簡化原來的電腦接收數據分析的部分。如需對系統擴充,只需在原電路的基礎上加入相應的外圍電路即可實現更高級的功能。作為數字控制通信系統,整個無線數據採集系統的設計分為硬體設計和軟體設計兩個方面。

1 系統的硬體設計
    系統的硬體設計圍繞發揮處理器功能進行,主要是外圍通信控制電路設計問題。
1.1 系統總體工作原理及硬體模塊化設計
    系統的工作原理是:首先用按鍵輸人信號,送到單片機進行初步處理,對要傳輸的信號進行編碼,然後利用NRF401無線數據傳輸晶元通過無線方式將有效數據發送給接收端,接收端在接收到有效數據後用單片機并行口將數據送入ISD1420,繼而ISD1420通過對信號的處理髮出聲音。系統為了滿足安全可靠,有足夠抗干擾能力,經濟合理,方便使用的設計要求,採用了模塊化設計思想。採用模塊化設計可以使系統結構清晰,不僅容易設計也容易管理和修改,方便系統測試和調試,有助於提高系統的可靠性和可修改性,同時,模塊化設計也有助於系統開發的組織管理。基於上述模塊化思想,現將系統分為以下3個模塊:
1)數據採集編碼模塊;
2)無線通信模塊;
3)ISD語音晶元發音模塊。

1.2 數據採集編碼模塊部分的硬體設計
    數據採集編碼模塊在單片機的控制下主要完成對鍵盤輸出的現場信號進行接收編碼,然後通過串口發送到NRF401晶元上發射。
1.2.1 單片機的選取
    本測控系統對數據採集模塊控制以及與NRF401收發晶元的介面選用單片機AT89C51完成。Atmel公司的AT89C51單片機,是一種低功耗、高性能的、片內含有4KB Flash ROM的8位CMOS單片機,其輸出指令與MCS-51兼容,工作電壓範圍為2.7-6V,8位數據匯流排。
1.2.2 串列口應用
    系統中,AT89C51串列口工作於方式3,即一幀11位的非同步通信格式:1位起始位,8位數據位“低位在前”,1位可編程數據位,1位停止位。發送前,由軟體設置第9位數據(TB8)作奇偶校驗位,將要發送的數據寫入SBUF,啟動發送過程。串列口能自動把TB8取出,裝入到第9位數據的位置,再逐一發送出去。接收時,置SCON中的REN為1,允許接收。當檢測到RXD (P3.0)端有“1”到“0”的跳變(起始位)時,開始接收9位數據,送人移位寄存器((9位)。當滿足RI=0且SM2=0或接收到的9位數據為1時,前8位數據送入SBUF,第9位數據送入SCON中的RB8}置RI為1;否則,這次接收無效,不置位RI。串口方式3的波特率由定時器T1的溢出率與SMOD值同時決定:方式3波特率=T1溢出率//n,當SMOD=O時,n=32;SMOD=1時,n=16。T1溢出率取決於T1的計數速率(計數速率二fosc/12)和 預置的初值。
    定時器T1用作波特率發生器,工作於模式2(自動重裝初值),設TH1和TL1定時計數初值為x,則每過“28-X”個機器周期,T1就會發生一次溢出。
1.2.3 無線通信模塊的硬體設計
    系統的無線通信模塊是用單片機控制無線收發晶元NRF401進行無線數據傳輸,NRF401是一個為433MHz的ISM頻段設計的真正單片UHF無線收發晶元,它採用了FSK調製解調技術。NRF401最高工作速率能達到20k,發射功率可以調整,最大發射功率是10dBm。其性能顯著,特點是所需要的外圍器件少而且設計比較方便,在該晶元內集成了高頻發射、高頻接收、PLL合成、FSK調製/解調、參量放大、功率放大、頻道切換等功能。本系統的無線通信模塊在單片機的控制下分為發送和接收兩部分,其中發送部分是由單片機在採得數據以後通過單片機串列口送到模塊由模塊發送,而接收部分是由模塊接收到數據以後,由單片機控制通過通用串列匯流排發送給計算機。
1.2.4 天線的設計
    天線介面設計為差分天線,以便於使用低成本的PCB天線,NRF401還具有待機模式,這樣可以更好的省電和高效。NRF401的工作電壓範圍可以在2.7-5V。
    天線對無線傳輸設備的性能有著很大的影響,系統中,ANTI和ANT2是NRF401接收時的輸入,以及發送時功率輸出器的輸出。連接到nRF401的天線是以差分的方式連接的,在天線端的負載阻抗是400Ω。
    圖1為應用差分天線方式的設計圖。功率放大器的輸出是兩個開路輸出三極體,配置成差分配對方式,功率放大器的VDD必須通過集電極負載。由於採用差分環型天線,VDD必須通過環型開線的中心輸人。調整圖中RF偏壓電阻R3可以調節輸出發射功率,其最大可達10dbm。
 
1.2.5 發射和接收頻率的問題
    為了獲得最好的RF性能,發射和接收頻率都不能超過70*10-6(30kHz),這就要求晶體的穩定度不低於±35*10-6,頻率的差異將會導致接收機靈敏度產生12dB/頻程的損失。例如一個20 *10-6 的頻率精度和在溫度範圍內±25*10-6 穩定度的晶體,最大的頻率誤差將會超過±45*10-6。如果發射機和接收機工作在不同的溫度環境,在最差的情況下兩邊的誤差將會超過90*10-6,其結果將會導致接收機靈敏度下降將近5dB。
1.2.6 NRF401外圍電路設計
    本系統的無線通信模塊在單片機的控制下分為與發送和接收兩部分,其中發送部分是由單片機在採得數據以後通過單片機串列口送到模塊由模塊發送,而接收部分是由模塊接收到數據以後,由單片機控制通過通用串列匯流排發送給計算機。這兩部分的連接示意圖如圖2所示。 圖2無線通信模塊發送部分示意圖無線接收模塊部分NRF401和AT89C51的連線與發射端是相同的。
 
1.2.7 ISD語音晶元發音模塊
    ISD1420系列內置了若干操作模式,可用最少的外圍器件實現最多的功能。操作模式也由地址端控制;當A7和A6都為1時,其它地址端置高就選擇某個(或某幾個)模式。因為操作模式和直接定址互相排斥。操作模式可由微控制器,也可由硬體實現。使用操作模式有兩點注意:1)所有操作最初都是從0地址,即存儲空間的起始端開始。後續操作根據所選用的模式可從其它的地址開始。此外,A4模式中,當電路由錄轉為放時地址計數器複位為0,而由放轉為錄則不複位。2)當控制信號(/PLAYL、/PLAYE或/REC)變低,同時A6和A7為高時,執行操作模式。這種操作模式一直有效,除非控制信號再次由高變低,晶元重新鎖存當前的地址/模式端電平,然後執行相應操作見表1。
   
  A0(信息檢索)一快速跳過信息而不必知道其確切的地址。控制端每輸入一個低脈衝,內部地址計數器就跳到下一條信息。此模式僅用於放音,通常與A4同時使用A1(EOM刪除),使分段信息變為一條信息,僅在信息最後留一個EOM標誌。此模式完成後,錄入的所有信息就作為一條連續的信息。A3(信息循環)一循環重放位於存儲空間起始處的那條信息。一條信息可以完全佔滿存儲空間,那麼循環就從頭至尾進行。給/PLAYE發低脈衝后循環開始,給/PLAYL發低脈衝后循環結束。A4(連續定址)一正常操作中,重放遇到WOM標誌時,地址計數器會複位。A4模式禁止地址計數器複位,使得信息可連續錄入或重放。當晶元既非錄音又非放音時,將A4短暫拉低可使地址計數器複位為0。A2、A5末用。
    放音時,根據需播放的語音內容,找到相應的語音段起始地址,並通過口線送出。再將P/R端設為高電平,PD端設為低電平,並讓/CE端產生一負脈衝啟動放音,這時單片機只需等待ISD1420的信息結束信號,即/EOM 的產生。信號為一負脈衝,在負脈衝的上升沿,該段語音才播放結束,所以單片機必須要檢測到/EOM 的上升沿才能播放第二段,否則播放的語音就不連續,而且會產生啪啪聲,這一點在編製軟體時一定要注意。下面給出了錄取5段語音信息的錄音程序和對這5段語音進行組合播放的源程序(均可直接拷貝使用)。播放時,可根據實際情況組合回放。實際需要時,可對該程序進行擴充。

2 系統的軟體設計
     本系統的軟體設計分為兩大部分,即無線發射部分控制軟體設計和無線接收部分控制軟體設計。

2.1 無線發射部分控制軟體設計。
    系統無線發射部分控制軟體設計包括數據採集、數據編碼、單片機串列傳輸、軟體監控4個軟體設計部分。其中數據採集的軟體設計是控制轉換現場信號為數字信號並進行數據的初步處理。數據編碼軟體設計是為了降低數據傳輸誤碼率,採用CRC循環編碼設計。單片機串列傳輸軟體設計是實現單片機串口對NRF401晶元傳輸數據。

2.2 數據採集的軟體設計
    數據採集的軟體設計實現的功能主要是鍵盤數據採集到單片機的數據進行初步處理。囚為除了鍵盤輸入,沒有其他輸入外設,所以可以採用掃描的方法進行鍵盤信號輸入,接線方法選擇線反轉法。接收方的最終結果是在接收端接收到數據后發出相應的聲音,類似與按1鍵就發音:“當前按鍵1”,因為發音晶元是按照發音段將發音“1”,“2”, ,“當前按鍵”分別儲存到ISD1420晶元當中去的,所以要把相應的發音數據段段號與發射按鍵編碼對應起來,在不考慮無線通道與編碼的相匹配的前提下,將發音的數據段段號直接賦值成為按鍵的編碼大大減輕了發送端與接收端的軟體設計難度。
    單片機串列傳輸的軟體設計因為在NRF401沒有接收發射數據的時候,從這塊晶元上面發射的是一些隨機的數據,所以在發射的過程中在軟體設計中加入了起始幀,目的是來告知接收晶元什麼時候接收到的是真正的按鍵數據。經過查詢資料可知,數據幀中出現ffh,aah,55h的幾率較低,故數據幀加入大小為3幀的起始幀,分別是ffh,aah,55h。最終發射程序(略)。

2.3 無線接收部分控制軟體設計
    無線接收部分控制軟體設計包括單片機串列接收軟體設計、單片機與計算機通信軟體設計、計算機應用軟體設計3部分。
2.3.1 單片機串列接收的軟體設計
    單片機串列接收軟體設計是控制單片機串口接收無線接收模塊收到的數據,然後將該數據傳輸到單片機內部處理。這部分軟體設計開始時先將RI清零,配置NRF401晶元為接收狀態,然後再等待數據的接收,在接收時先接收數據塊長度位元組,然後再一幀幀地接收,數據接收後進行數據校驗,如果數據校驗錯誤,就進行錯誤處理,否則程序返回。
2.3.2 單片機與計算機串口通信軟體設計
    這部分程序完成單片機與計算機數據的通信,單片機設置波特率為9600bit,8位數據位,1位起始位。採用中斷方式傳送和接收數據。T1設置為工作方式2,串列口設置為工作方式3。程序開始時要先保護現場以免中斷程序影響系統正在使用的寄存器值,然後設置串口通信的波特率以及數據存儲指針,這時就等待中斷準備傳送數據到計算機,數據發送也是先發送數據塊長度,然後再發送數據,當整個數據發送完畢則中斷返回,繼續執行系統的其它程序。
2.3.3 最終接收數據發聲程序
    在數據接收時先驗證是否是起始的那3幀,如果是,再將其中的數據提取出來,發送到ISD1420晶元上控制發聲。接收端程序(略)。


[admin via 研發互助社區 ] nRF401晶元在無線遙控系統中的應用已經有2517次圍觀

http://cocdig.com/docs/show-post-44735.html