基于FPGA的數(shù)字量變換器測試系統(tǒng)設計
0 引言
在飛行器發(fā)射試驗中,常用遙測系統(tǒng)獲取其內部各系統(tǒng)的工作狀態(tài)參數(shù)和環(huán)境數(shù)據(jù),為評定飛行器的性能及故障分析提供依據(jù)。數(shù)字量變換器作為遙測系統(tǒng)彈上的重要設備,它的主要功能是控制接收彈上的各種飛行參數(shù)。變換器性能的優(yōu)劣將直接影響遙測結果,對飛行器研制和試驗過程中試驗數(shù)據(jù)的測試產(chǎn)生很大影響,將關系到飛行器試驗的成敗和以后飛行器性能的改進和提高。在飛行器的研制過程中,多次試驗和考核是非常重要的。對數(shù)字量變換器做出準確、客觀、可靠地評價是其生產(chǎn)過程中的關鍵環(huán)節(jié),而這一環(huán)節(jié)只能由變換器測試系統(tǒng)來完成。可編程邏輯器件(FPGA)以其高速、可重構、設計靈活、開發(fā)費用低、I/O引腳和內部資源豐富的等優(yōu)點,在近代測試系統(tǒng)中贏得了越來越廣泛的應用。本文以FPGA為邏輯控制中心設計的測試系統(tǒng),主要是對數(shù)字量變換器進行單元測試,在其實際研制和調試過程中發(fā)揮了關鍵的作用。
1 系統(tǒng)總體設計
1.1 技術指標
(1)測試系統(tǒng)能夠在工作前對系統(tǒng)本身的各部分電路和通信接口進行檢測,進而確定測試系統(tǒng)是否能正常工作。
(2)能夠為數(shù)字量變換器提供25V、28V、31V三檔直流工作電壓,電流驅動能力大于等于1A.
(3)能夠模擬彈上設備產(chǎn)生幅度為8~10V的計算機字信號及相應的移位脈沖信號;產(chǎn)生128路28V指令信號;產(chǎn)生所需的勤務信號(包括幀同步信號和碼同步信號);能夠接收經(jīng)變換器變換回傳的字長為32位、幅度為5V的計算機字數(shù)碼和指令數(shù)碼信號,并在上位機上顯示。
1.2 系統(tǒng)結構和工作原理
系統(tǒng)設計時,采用模塊化設計的思想,按照技術指標設計各個功能模塊,通過各模塊之間的協(xié)調配合完成系統(tǒng)的測試任務。系統(tǒng)的整體結構框圖如圖1所示,整個系統(tǒng)由計算機、USB芯片F(xiàn)T245、兩片F(xiàn)PGA、輸出電源電壓控制模塊、計算機字信號發(fā)送模塊、勤務信號發(fā)送模塊、計算機字數(shù)碼與指令數(shù)碼接收模塊和指令信號發(fā)送模塊組成。模塊化設計能夠使在進行系統(tǒng)調試和硬件編程時,簡單、快速的定位并解決問題。
測試系統(tǒng)通過USB芯片F(xiàn)T245實現(xiàn)硬件電路和上位機的通信,包括上位機給FPGA 控制命令的下發(fā)與數(shù)據(jù)的上傳。
硬件電路選用XILINX公司的XC3S200-208和XC2S100-208兩片F(xiàn)PGA 作為系統(tǒng)的邏輯控制中心,其中XC3S200-208作為主控芯片,主要實現(xiàn)對上位機的命令接收和判斷,進而產(chǎn)生和發(fā)送計算機字信號,接收計算機字數(shù)碼和指令數(shù)碼并編幀、上傳數(shù)據(jù)至上位機;XC2S100-208作為從控制芯片,完成128路指令信號的發(fā)送;兩片F(xiàn)PGA 之間采用串行通信的方式發(fā)送控制命令來實現(xiàn)通訊。另外,通過上位機軟件可以實現(xiàn)向系統(tǒng)發(fā)送復位或停止命令,這樣能夠減少硬件的功耗并提高測試系統(tǒng)的工作效率。
2 系統(tǒng)各模塊功能實現(xiàn)
2.1 USB接口模塊實現(xiàn)
USB具有成本低、通用性好、連接簡單、支持熱拔插等特點,而從系統(tǒng)實際的速率傳輸要求出發(fā),設計采用通用USB接口芯片F(xiàn)T245BM 實現(xiàn)與上位機的通信。FT245BM 主要的功能是在內部邏輯的作用下實現(xiàn)數(shù)據(jù)串/并雙向轉換,它的最大傳輸速率可以達到1M/s.FT245BM 免去了復雜的固件編程及驅動程序的編寫,能夠簡化USB的接口設計,為系統(tǒng)節(jié)省設計時間。
FT245BM 具體電路設計如圖2所示。
FT245BM 的8位數(shù)據(jù)線D7~D0、讀信號RD、寫信號WR、發(fā)送使能TXE、接收數(shù)據(jù)完畢信號RXF與FPGA連接,來完成兩者的通信。計算機通過應用程序、動態(tài)鏈接庫的有效配合將控制命令信號發(fā)送到FT245BM,FPGA利用與之相連的I/O口接收下發(fā)的控制命令或是發(fā)送上傳的測試數(shù)據(jù)。
2.2 輸出電源電壓控制模塊實現(xiàn)
由于需要為被測數(shù)字量變換器提供3檔工作電壓25V、28V、31V,在電源模塊輸出端連接三種不同阻值的電阻,就可以實現(xiàn)3種電壓的切換,實現(xiàn)控制的電路如圖3所示。
圖中VCON+,VCON-為電源模塊的輸入電壓,R25、R26、R27三組電位器用來調節(jié)電阻。25VCON、31VCON分別與FPGA的I/O相連,是FPGA給出的控制信號,電路中三極管的作用是利用其電流放大來增加信號的驅動能力。通過FPGA對控制命令的判斷來實現(xiàn)3檔電壓的控制。此外,系統(tǒng)的默認及復位的輸出電壓為28V.
2.3 計算機字信號發(fā)送模塊實現(xiàn)
由于要求計算機字和移位脈沖的幅值都為8~10V,所以電路中采用運算放大器電路對FPGA輸出的信號進行放大來獲取所需幅值的信號。計算機字信號發(fā)送電路如圖4所示。
為了滿足輸出信號的精度和電流驅動能力的要求,本模塊中采用AD公司的運放AD811來設計電路。此運算放大器是高速運放,采用雙電源供電,2500V/us是其最高轉換速率,具有較低的電流、電亞噪聲。設計中采用同相放大電壓串聯(lián)型負反饋電路,輸出電壓穩(wěn)定并且反饋效果好。電路中R83的接地是為了盡量減小由于偏置電流引起的電壓失調,其阻值等于R22和R60的并聯(lián)阻值,為R22//R60=666Ω。[!--empirenews.page--]
2.4 勤務信號發(fā)送模塊實現(xiàn)
計算機字信號和指令信號都有相應的勤務信號來滿足時序要求,一般勤務信號就是指幀、碼同步信號,對其他信號的產(chǎn)生和接收起到時序基準同步的作用。指令勤務信號的電路原理如圖5所示。計算機字勤務信號與其原理相同。根據(jù)系統(tǒng)的信號輸出要求,即幀、碼同步信號的幅值和電流驅動能力的要求,采用非門芯片SN5405J作為驅動電路來滿足設計要求。
2.5 數(shù)碼接收模塊實現(xiàn)測試系統(tǒng)需要接收經(jīng)變換器處理之后的信號,變換器以數(shù)碼方式回傳給測試系統(tǒng),包括計算機數(shù)碼和指令數(shù)碼,兩者的接收原理相同。設計采用光耦隔離的方式對數(shù)碼信號進行接收,其電路原理圖如圖6所示。
光電耦合器采用TI公司的HCPL-2631,它具有電絕緣能力和抗干擾能力,并且能有效的抑制各種噪聲和尖峰脈沖干擾。它的兩個輸入端分別接收計算機字數(shù)碼和指令數(shù)碼,其中在光耦輸入端連接的二極管作用是用來防止信號反跳造成內部二極管燒壞。
2.6 指令信號發(fā)送模塊實現(xiàn)
指令信號是指一種斷開或閉合的開關量信號。此模塊的128路指令信號全部采用光耦繼電器來實現(xiàn),依據(jù)參數(shù)要求選擇AQY210作為控制開關的器件,它的特點是耐高壓,反應速度快,使用時間長。其單路指令信號發(fā)送電路原理如圖7所示。
由于指令信號的路數(shù)比較多,如果FPGA 的I/O口輸出直接驅動AQY210,勢必會增加FPGA的功耗。因此采用三極管對FPGA的輸出信號進行電流放大來提高控制信號的驅動能力。本設計采用NPN 型三極管3DK103,圖中3order1是FPGA的輸出信號,其為‘0’時,三極管截止;其為‘1’時,三極管處于電流放大,流經(jīng)光繼電器發(fā)光管的電流13mA足以使AQY210導通。
3 系統(tǒng)FPGA的邏輯實現(xiàn)
系統(tǒng)主控FPGA采用的晶振是10M 和32.768M,10M的晶振經(jīng)過FPGA內部分頻后來產(chǎn)生系統(tǒng)全局時鐘信號及幀同步信號,32.768M 的晶振來產(chǎn)生碼同步信號;從控FPGA也通過10M 晶振來提供系統(tǒng)時鐘。系統(tǒng)在上電穩(wěn)定后,F(xiàn)PGA就會產(chǎn)生并發(fā)送幀同步信號(周期為25ms,脈寬為25μs),在25μs脈沖信號之后發(fā)送幀同步信號,信號的產(chǎn)生都是通過內部的計數(shù)器來實現(xiàn)的;且計算機字碼同步信號8個脈沖信號為一組、共4組,指令碼同步信號共16組。在時序上,計算機字信號的第1組碼同步信號和指令信號的第16組碼同步信號對齊。變換器在幀同步信號的上升沿的觸發(fā)下,會向測試系統(tǒng)發(fā)送請求脈沖。當系統(tǒng)收到請求脈沖信號后,通過控制FPGA延時20ms,產(chǎn)生移位脈沖信號和計算機字信號共同發(fā)送給變換器。在時序上,移位脈沖信號的下降沿和計算機字每位的正中間對齊。通過對從控FPGA 的邏輯控制實現(xiàn)指令信號的發(fā)送。FPGA對上位機的命令信號解碼后,將指令控制信號寄存在內部寄存器中,主控FPGA 通過串行通信的方式將寄存器中的命令發(fā)送給從控FPGA.發(fā)送時一組數(shù)據(jù)為10位,包括1個起始位、8個有效數(shù)據(jù)位和1個停止位,F(xiàn)PGA對串行數(shù)據(jù)解串,并重新編幀后將指令信號輸出至FPGA 相應的I/O.數(shù)碼的接收,都是先將數(shù)碼信號編幀后存入FPGA的內部寄存器,再通過USB將數(shù)據(jù)上傳至上位機。
4 系統(tǒng)測試結果
通過對系統(tǒng)的反復測試,來保證系統(tǒng)設計的可靠性。圖8為上位機發(fā)送計算機字全為AAH時測到的波形,通道1是幀同步信號,通道2是數(shù)字量變換器發(fā)送來的計算機字請求信號,通道3是移位脈沖信號,通道4是系統(tǒng)發(fā)送的計算機字信號。
圖9是系統(tǒng)接收計算機數(shù)碼測的波形,通道1是幀同步信號,通道2是計算機字請求信號,通道3是碼同步信號,通道4是計算機字數(shù)碼信號。
因為指令信號是以并行方式發(fā)送的,所以不涉及到時序波形的問題。圖10是指令信號都發(fā)送55H 時,接收指令數(shù)碼測得的波形。圖中通道1是幀同步信號,通道2是碼同步信號,通道3是指令數(shù)碼信號??梢钥闯鲂盘柕男Ч麧M足設計要求而且精度較高。
5 結束語
該測試系統(tǒng)充分利用FPGA強大的內部邏輯功能和與外圍硬件電路的設計,來達到系統(tǒng)的測試功能。通過測試系統(tǒng)和數(shù)字量變換器的聯(lián)試,驗證了系統(tǒng)各項的輸出,對數(shù)字量變換器的性能做出權衡性的檢測。