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