隆志遠,陳仁文,朱莉婭
(南京航空航天大學航空宇航學院,南京210016)
在對旋轉機械上的各種電氣參數(shù)進行測量時,需要將測量數(shù)據(jù)在旋轉機械的轉動部件(轉子)和固定部分(基座)之間進行傳遞。傳統(tǒng)的旋轉件上信號測量大都采用接觸式方案,這種方案普遍使用集流器實現(xiàn),存在著體積笨重、易受干擾、精度低、速度慢等缺點[1];而采用以紅外、射頻、激光為媒介的非接觸式測量方法則克服了上述缺陷,因而愈來愈受到重視。其中,采用專用芯片作為射頻收發(fā)模塊進行長距離傳輸被應用較多。例如,CC24系列的射頻芯片在無線傳感器的構建中得到應用;利用nRF2401射頻收發(fā)芯片的旋轉件無線數(shù)據(jù)采集系統(tǒng)已用于航空發(fā)動機轉子葉片的動態(tài)壓力測量中[2]。
紅外通信因其結構簡單,價格低廉、性能穩(wěn)定,在近距離、小角度、無障礙的中低速非接觸式測量系統(tǒng)中獲得了廣泛應用。目前,根據(jù) IrDA(Infrared Data Association,紅外數(shù)據(jù)協(xié)會)規(guī)范,紅外通信協(xié)議主要包括 SIR(Serial Infrared,串行紅外傳輸)、FIR(Fast Infrared,高速紅外傳輸)等方式。其中SIR方式通常需要在發(fā)送時對數(shù)據(jù)位進行3/16編碼調制,接收時再解調解碼還原出數(shù)據(jù)位,然后通過UART接口與上位機相連接以進行數(shù)據(jù)的傳輸,由于UART的極限速率為115 200 bit/s,所以限制了SIR方式的應用范圍,因而多用在遙控或者低速率場合。FIR方式則放棄了對UART的依賴,采用4PPM(Pulse Position Modulation,脈沖位置調制)編解碼方式進行紅外傳輸,將傳輸?shù)乃俾侍岣叩? Mbit/s,使得它可以被應用到較高速的場合。
本文介紹一種利用紅外器件與FPGA進行多路信號非接觸雙向傳輸?shù)姆桨浮K梃b數(shù)字同步通信的原理,通過在FPGA內部綜合出性能出色的同步數(shù)字接收電路實現(xiàn)了數(shù)據(jù)在2 Mbit/s速率下的穩(wěn)定雙向傳輸,大幅提升了傳輸速率,滿足了中低速情形下多路信號同步測量的需要,從而擴展了紅外通信在旋轉件測量領域的應用范圍。
整個系統(tǒng)包含兩部分:①位于旋轉側的紅外數(shù)據(jù)發(fā)射/接收電路板,實現(xiàn)對旋轉件上各路數(shù)據(jù)的采集、發(fā)送以及接收來自于固定側控制數(shù)據(jù);②位于固定側的紅外數(shù)據(jù)發(fā)射/接收電路板,實現(xiàn)數(shù)據(jù)的接收和發(fā)送以及與PCI總線的接口控制。為了便于敘述,將數(shù)據(jù)從旋轉側傳輸?shù)絇C機這一流向稱為上行通道;反之,稱為下行通道。由于雙向傳輸?shù)膶ΨQ性特點,下文將著重描述上行通道各環(huán)節(jié)的實現(xiàn)。
圖1 系統(tǒng)整體示意圖
為了保證數(shù)據(jù)的雙向傳輸,在旋轉板和固定板上都同軸、對稱地布置了紅外發(fā)射管HSDL 4420和紅外接收頭BPV22NF。在HSDL 4420受三極管驅動輸出情形下,紅外接收頭在0~9 cm,傾角小于24°的范圍內可以有效接收光信號。由于實驗平臺旋轉側與固定側的間距為6 cm左右,在考慮到紅外接收的距離和角度因素后,對它們在板上進行了如圖2所示的布置。內孔附近呈正三角形分布的器件對構成了數(shù)據(jù)上行通道;外圈則采用正八邊形分布的器件對構成數(shù)據(jù)下行通道,各圈內的器件都以并聯(lián)方式進行連接。內圈器件與外圈器件的間距為3 cm,在傾角為24°的范圍內可以避免同時傳輸時紅外光線間的相互干擾。這時,紅外信號就可以在旋轉側與固定側之間雙向傳輸,避免了相互間的干擾。
圖2 發(fā)射側和接收側的器件布置
值得一提的是,在高度一定的情況下,內圈與外圈的間距和各自所含的器件數(shù)目可以靈活地安排,這取決于紅外接收器件的接收角度以及對干擾的承受能力,甚至BPV22NF的數(shù)量可以減少到一個。
圖3示意了處于最危險位置時的發(fā)射管仍位于接收管的有效接收范圍內,故雙向傳輸時不會相互影響。
圖3 危險位置的情形
旋轉板上主要有信號采集和發(fā)送電路,主要是由FPGA來控制AD和數(shù)據(jù)并串轉換。它的作用是將從AD芯片MAX125進來的14 bit并行數(shù)據(jù)轉換為2 Mbit/s的串行數(shù)據(jù)流輸出,驅動紅外發(fā)光管HSDL 4400發(fā)送數(shù)據(jù)。
圖4 旋轉板上電路原理框圖
MAX125是一款支持多達4通道同步采集的AD芯片,具有14 bit精度,允許雙極性輸入,并行輸出,單通道最高采樣頻率為250 ksample/s。4通道同步采集時,每通道最高采樣速率為76 ksample/s[3]。
根據(jù)MAX125的器件手冊,它在第一次進行模數(shù)轉換前,需要事先進行配置以確定采樣的通道數(shù)目,默認情況下,MAX125只對通道1(CH1)信號進行轉換。在配置期間,CONVST保持高電平,在 CS、WR信號由低變高的同時,通過DATA引腳送出配置數(shù)據(jù)即可完成對MAX125工作方式的設置。此后,每次CONVST信號的由高變低都將啟動一次模數(shù)轉換。對于單通道采集工作方式,在3 μs后,MAX125將INT信號拉低,預示著此次轉換的結束。FPGA可以通過檢測INT信號的下降沿來對轉換好的數(shù)據(jù)進行讀取操作,數(shù)據(jù)將在RD的上升沿輸出。如果是多通道采集,則最多經(jīng)過4次讀脈沖就可將4個通道的轉換數(shù)據(jù)全部取走。
由于在接收側采用數(shù)字鎖相環(huán)[4]對數(shù)據(jù)流進行同步接收,所以在發(fā)送電路模塊,必須將采集到的數(shù)據(jù)按照一定的幀格式來串行發(fā)送,這樣才能在接收側經(jīng)過幀同步電路的檢測判別出有效數(shù)據(jù)的起始位置。如果將一幀的長度設計得過長,在FPGA綜合時將使幀同步輸出信號進位延遲加大,可能造成鎖存該信號時存在保持時間違規(guī),導致幀同步失敗;同時也會影響鎖相環(huán)進入鎖定狀態(tài)和退入捕獲狀態(tài)的時間。時序分析報告表明,合適的幀長度顯著減少了違規(guī)路徑的數(shù)量。
綜合考慮后,本設計中將發(fā)送幀的長度定為32 bit,即4 byte。第1個字節(jié)為巴克碼字“E4”,作為幀同步碼[5];第2 字節(jié)為填充字節(jié)“10101010”;第3、4字節(jié)的高兩位表示通道號(例如“00”表示通道1,“11”表示通道4),低14 bit為MAX125轉換輸出某通道的14 bit數(shù)據(jù)。之所以采用1和0交替是為了使鎖相環(huán)處于交替調整狀態(tài),避免當全0和全1時鎖相環(huán)出現(xiàn)失步的情形,這樣就可以確保PLL在判別后面的16 bit數(shù)據(jù)時不出現(xiàn)誤判。幀格式見下面圖5。
圖5 幀格式
值得指出的是,為了提高HSDL4400它的發(fā)射功率,可在FPGA輸出引腳加由三極管構成的驅動電路來提高光發(fā)射功率,進而可以增加紅外接收的距離。
由于接收側數(shù)字鎖相環(huán)的鎖定頻率為2 MHz,也就是可以捕捉2 Mbit/s的數(shù)字信號。為了適配2 Mbit/s的發(fā)送速率,在旋轉板上用 FPGA控制MAX125的采樣速率為64 ksample/s(2M/32=64 K)。由于發(fā)送板上的FPGA系統(tǒng)時鐘為16 MHz,所以需要對它進行分頻以得到2 M的時鐘。最后,通過serial引腳輸出串行數(shù)據(jù)。
圖6中control模塊內部含有一個狀態(tài)機,它依據(jù)AD的工作時序操縱MAX125進行64 ksample/s的連續(xù)采樣。parellel2serial模塊則實現(xiàn)了對14 bit量化數(shù)據(jù)封裝成幀及并串轉換的功能,其中cntout輸入信號用于與control模塊之間進行同步,以確保2 M時鐘對64 K時鐘的數(shù)據(jù)進行鎖存。devider8模塊實現(xiàn)8分頻功能,向parallel2serial模塊提供2 M時鐘。
圖6 FPGA內部AD控制和并串轉換原理框圖
固定側FPGA內的同步數(shù)字接收模塊用來取代低速紅外傳輸情形下的UART接口,它必須保證對2 Mbit/s的串行數(shù)據(jù)流進行正確地位判別和接收,這也是整個系統(tǒng)實現(xiàn)的一個難點。本設計充分利用FPGA觸發(fā)器、組合邏輯、嵌入式存儲塊(M4K)豐富,構建數(shù)字電路靈活,可反復配置的特點[6],將整個同步接收電路放在一塊主時鐘為16 MHz的FPGA內部實現(xiàn),極大地節(jié)省了外設器件。各模塊在FPGA內部的關系如圖7所示。
上行通道的主體部分包括位同步模塊[7]、幀同步模塊[8-9]、serial2parallel 模塊、control 模塊、雙端口RAM、緩沖FIFO以及PCI接口模塊。下行通道由PCI、雙端口RAM和control構成(圖中用虛線框標出)。
在數(shù)字通信系統(tǒng)中,常采用數(shù)字鎖相環(huán)(DPLL)來實現(xiàn)位同步時鐘的提取[10]。本方案中,在位同步模塊內實現(xiàn)了一個基于超前滯后相位比較原理的2 M時鐘數(shù)字鎖相環(huán)。利用對系統(tǒng)時鐘進行8分頻,可以得到一個與輸入碼元速率同頻的本地時鐘。通過與輸入碼元進行相位比較,超前滯后比較器對本地時鐘產(chǎn)生添加或扣除一個時鐘脈沖的動作,不斷調整本地時鐘的相位,直到與碼元相位誤差保持在一定范圍內,從而進入鎖定狀態(tài)。DPLL在完成對輸入碼流的同步鎖定后,便可以對每一個碼元的高低電平狀態(tài)進行正確的判別;同時,DPLL恢復出的時鐘為后續(xù)的幀同步模塊、control模塊、serial2parallel模塊提供了基準時鐘。
幀同步模塊則實現(xiàn)了自動捕捉碼流中的同步碼字,使接收側獲得每一幀信號的起始位置以正確地對數(shù)據(jù)進行分路緩存。由于幀同步字“E4”每隔32個位時鐘便出現(xiàn)一次,使得幀同步信號可以被周期地獲取,使本系統(tǒng)不易失鎖,具有穩(wěn)定的同步性能。
在位同步時鐘和幀同步信號作用下,serial-parallel模塊實現(xiàn)了在串行數(shù)據(jù)流中提取出每一幀后兩字節(jié)有效載荷的功能,并在control模塊控制下采用乒乓方式按64 kHz同步時鐘的節(jié)拍將數(shù)據(jù)存入到深度為512、位寬為16 bit的雙端口RAM中。當DPRAM有一半被寫滿時,數(shù)據(jù)在control控制下對雙端口的另一半進行寫入;與此同時,開啟req信號,允許PCI9054模塊以16 M頻率讀取剛被寫滿的DPRAM中的數(shù)據(jù),并將其寫入到深度為1 024,寬度為32 bit的FIFO中。待FIFO半滿后,向PCI9054模塊發(fā)半滿中斷信號HF,PCI9054模塊向PCI總線請求一次長度為512的32 bit DMA傳輸。在應用程序中,再對獲得的這1 024個采集數(shù)據(jù)進行通道區(qū)分和波形顯示和分析。
圖7中的LT1328是凌力爾特公司的一款支持FIR協(xié)議的紅外解碼芯片,SO8小外形封裝,靜態(tài)功耗極低,支持高達4 Mbit/s的通信速率,外加極少量的電容,就能將經(jīng)過PPM編碼或者NRZ編碼的光脈沖信號還原成反向的TTL電平輸出,可以與FPGA實現(xiàn)無縫連接,而不需要進行電平轉換。實驗觀察及結果表明,經(jīng)過LT1328轉換得到的TTL電平信號噪聲低,跳變沿陡峭,幅值穩(wěn)定,完全滿足DPLL對數(shù)字信號的要求。BPV22NF是推薦與LT1328搭配使用的紅外接收頭。
圖7 固定板上FPGA內部各模塊連接關系
由于在光信號發(fā)射側,已將2 Mbit/s的數(shù)據(jù)信號按照NRZ形式編碼并反向輸出驅動紅外發(fā)射管HSDL 4400。于是在接收側,經(jīng)過LT1328轉換后得到的信號就是數(shù)據(jù)原碼,可以直接使用。
兩塊板上都選用ALTERA公司EP2C5Q208型FPGA作為控制器。在靜態(tài)實驗中,用函數(shù)發(fā)生器產(chǎn)生的正弦波來模擬待測信號,利用FPGA內部自帶的邏輯分析儀SignalTap對需要考察的信號進行觀察。
從圖8中可以看到同步時鐘clk_bit的上升沿始終與輸入碼元保持同步,且當串行碼流中出現(xiàn)“11100100”時(對應圖8中框出的8個時鐘上升沿),會產(chǎn)生幀同步信號clk_fra;而圖9則顯示temp信號準確地鎖存了每幀后兩字節(jié)數(shù)據(jù)。隨后,這些數(shù)據(jù)會依次通過DPRAM、FIFO和PCI接口模塊傳遞給PC上的應用程序以用來顯示和分析[11-12]。在實驗中,只要DPLL進入鎖定狀態(tài),就會建立起穩(wěn)定的接收秩序,不會存在失鎖現(xiàn)象,直到停止數(shù)據(jù)采集。
圖8 檢出幀同步字“E4”
圖9 有效數(shù)據(jù)被正確鎖存
當需要將控制數(shù)據(jù)傳遞給旋轉板作驅動時,數(shù)據(jù)則沿著FPGA內部的下行通道進行傳輸,其過程與上行通道類似,只是在旋轉側FPGA中采用了更簡單和適合小數(shù)據(jù)量傳輸?shù)念愃朴诖诘漠惒浇邮諜C制,在此就不贅述了。
本文基于 ALTERA公司CycloneⅡ系列芯片EP2C5Q208和紅外收發(fā)器件,以及成熟的PCI總線,采用光信號同步傳輸?shù)姆绞綄崿F(xiàn)了一種輕便、多路、快速、穩(wěn)定的同步雙向信號傳輸系統(tǒng),滿足了對旋轉件上多路信號同步測量和雙向并行傳輸?shù)男枨?,而且適當調整鎖相環(huán)的工作參數(shù),可以使鎖定時鐘達到FIR協(xié)議規(guī)定的4 Mbit/s帶寬上限,因而在靜態(tài)或動態(tài)條件下紅外通信應用場合具有一定的參考價值。
[1]陳仁文.旋轉件非接觸信號傳輸中的通道特性研究[J].傳感器技術,2003,22(10):9 -12.
[2]卞春江,張?zhí)旌?,鄧志偉,等.面向旋轉構件的高速數(shù)據(jù)采集系統(tǒng)[J].傳感器技術,2004,23(11):53 -55.
[3]MAX125 Datasheet[R].
[4]胡春華,石玉.數(shù)字鎖相環(huán)路原理與應用[M].上海:上??萍汲霭嫔纾?990.
[5]韓紅霞,曹立華,劉帥師.基于FPGA的光纖通信系統(tǒng)中幀同步檢測設計[J].電光與控制,2006,13(04):90 -92.
[6]任敏,龐杰,胡慶.CPLD與FPGA器件性能特點與應用[J].傳感技術學報,2002,15(02):165 -168.
[7]范寒柏,陶杰,王欣.一種基于VHDL語言的全數(shù)字鎖相環(huán)的實現(xiàn)[J].電子技術應用,2009,35(04):63 -65.
[8]張景悅,王明磊,王瑩.基于FPGA的數(shù)字復接系統(tǒng)幀同步器設計與實現(xiàn)[J].國外電子元器件,2005,(5):4-6.
[9]王志,石江宏,周劍揚,等.同步數(shù)字復接的設計及其FPGA實現(xiàn)[J].電子技術應用,2005,31(04):77 -80.
[10]江黎,鐘洪聲.一種全數(shù)字時鐘數(shù)據(jù)恢復電路的設計與實現(xiàn)[J].通信技術,2008,41(11):1 -3.
[11]溫世杰,魯冬杰,陳曉冬,等.基于FPGA的數(shù)字超聲內窺鏡接收系統(tǒng)設計[J].傳感技術學報,2008,21(08):1329 -1332.
[12]方志強,段發(fā)階,張玉貴,等.非接觸式高速旋轉葉片振動測量新技術的研究[J].傳感技術學報,2007,20(04):937 -940.