FPGA在新型激光光幕靶中的應用
摘要:結合坐標采集和處理在新型激光光幕靶中的應用,針對傳統(tǒng)激光光幕靶處理器I/O緊缺、處理速度慢、存在錯報、漏報,無法測試子彈連發(fā)坐標等問題,提出了一種以FPGA為核心的坐標采集和處理系統(tǒng)的設計方法。設計中采用了自頂向下的設計方法,將該系統(tǒng)依據邏輯功能劃分為3個模塊,并在ISE 14.1和Modelsim中進行設計、編譯、仿真,最后的仿真結果表明該系統(tǒng)能夠很好地采集到子彈的坐標。
關鍵詞:FPGA;激光光幕靶;坐標采集;Modelsim
彈丸的彈著點坐標測量是武器系統(tǒng)中不可缺少的一項重要指標,也是各種武器研制、試驗和驗收必須測試的重要參數。目前國內外測坐標方法很多,光電測坐標法以其測試精度高、可靠性好、成本低廉等優(yōu)點常成為眾多測坐標方案的首選,但傳統(tǒng)的光電測坐標系統(tǒng)在坐標采集和處理方面也有不足之處。文獻是目前國內應用的比較先進的測坐標系統(tǒng),但是沒有具體提到信號采集和處理的方法。文獻實現(xiàn)了示靶、檢靶、自動報靶的一體化,但在信號的處理方面有些不足。文獻和文獻是用單片機實現(xiàn)數據采集和處理,由于坐標精度的要求越來越高,要求光電傳感器的間隔要足夠小,因此需要較多的光電傳感器。單個單片機I/O口少,需要多個單片機協(xié)同工作才可以組成完整的采集系統(tǒng),系統(tǒng)結構復雜,而且子彈速度快,單片機頻率低,實時性不是很好。文獻是復雜可編程器件(CPLD)和單片機相結合的方式。文獻是現(xiàn)場可編程邏輯器件(FPGA)和單片機相結合的方式。文獻是用FPGA構成數據采集系統(tǒng),但和文獻一樣,當靶面較大時,都需要幾個其設計的采集處理單元拼接起來才能組成整個的采集處理系統(tǒng)。
針對這些問題,在新型激光光幕靶中采用了單片F(xiàn)PGA與并轉串模塊相結合,采集和處理相獨立的方式,充分發(fā)揮了FPGAI/O口眾多,響應速度快的特點。具有結構簡單、安全可靠的優(yōu)點,大大降低了成本,進一步增加了系統(tǒng)應用的靈活性。
1 新型激光光幕靶原理簡介
激光光幕靶是光電靶中的一種,它主要由激光系統(tǒng)和計算機系統(tǒng)組成。如圖1所示,在前靶面(粗線光幕所在平面)的左下腳和與它平行的后靶面(細線光幕所在平面)的右下腳分別安裝一個發(fā)光角度為90°扇形的大功率線狀激光器。半導體激光器發(fā)出的激光束分別被玻璃柱透鏡擴散成一個扇形光幕。由于前靶面和后靶面的距離為1 cm,所以可以認為這2個90度扇形激光光幕在同一個平面相互交叉組成一個大面積矩形光幕。子彈無論從哪個區(qū)域穿過激光光幕,都會遮擋住投射在某個或某幾個光電二極管上的光線,當子彈穿過時至少有2排光電二極管陣列中的光電二極管會接收到信號。信號轉換電路將光電二極管接收到的信號轉換為數字信號,最后經采集處理后找到等效彈著點對應的光電二極管的標號,由此可以算出子彈穿過靶時的坐標。
2 數據采集處理方法
根據靶面的大小以及光電二極管的間距,可以算出需要的光電二極管的數量,若以1mx1m靶,光電二極管間隔2.5 mm來算,四邊大約需要4x400=1 600個光電二極管。不管是單片機還是CPLD、FPGA,都沒有這么多I/O,需要幾片拼接起來才能實現(xiàn)這么多I/O的采集。在本系統(tǒng)中采用并轉串的方式,減少了需要的I/O數量.如80:1,則只需要大約20x3=60個I/O即可,則只要一塊FPGA芯片就可以滿足整個系統(tǒng)的要求。通過調整并轉串的比例,在同一時鐘的情況下,并轉串的比例越小,F(xiàn)PGA對所有光電二極管陣列采集一次的周期就越短。如圖2所示,光電二極管的光照狀態(tài)經信號調理后變成FPGA可以識別的‘0’和‘1’信號。由FPGA控制并轉串的時鐘和移位、置數控制信號,采集到的信號經移位由高到低串行輸入給FPGA,F(xiàn)PGA先由串轉并模塊保存為光電二極管陣列對應位數的信號,經處理,若判斷為有子彈穿過,則將等效的坐標值上傳給上位機處理顯示。由于采用采集和處理相獨立的方式,F(xiàn)PGA每隔5.34μs就采集一次數據,采集到有效數據就保存,F(xiàn)PGA按順序處理并上傳數據,避免了錯報、漏報的情況,此外,由于處理速度比較快,完全可以滿足子彈連發(fā)坐標采集的要求。
3 器件選型及依據
3.1 FPGA的選擇及依據
FPGA是英文Field Programmable Gate Array的縮寫,即現(xiàn)場可編程門陣列。本系統(tǒng)采用了Xilinx公司生產的Spartan 3E系列的XC3S500E型FPGA芯片。Spartan 3E是Xilinx公司性價比較高的FPGA芯片,本系統(tǒng)中XC3S500E采用了3.3 V電源供電,時鐘頻率為50 MHz,其系統(tǒng)門數為50萬個,slice數目為4 656個,分布式RAM容量為73 kB,專用乘法器數為20個,DCM數目為4個,最大可用I/O數為232個,完全能滿足系統(tǒng)的需要。
3.2 并轉串芯片選擇及依據
若子彈出膛時的初速約為1 000 m/s,彈頭長約2.5cm。激光靶激光束寬2 mm,容易算出激光束被子彈遮擋的時間為:(25+2)/1 000 000=0.000 027 s=27μs,即光電二極管要采集的信號的頻率為1/27 MHz=37 037 Hz。根據奈奎斯特(Nyquist)采樣定理,采樣頻率應≥74 074 Hz,而在本系統(tǒng)中采樣頻率為187 265.92 Hz,約為37 037 Hz的5倍,滿足要求。
74LS165是八位移位寄存器(并行輸入,互補串行輸出),F(xiàn)m(最大時鐘頻率)為35 MHz。其工作原理:當移位/置數控制端(SH/LD)為低電平時,并行數據(A—H)被置入寄存器。當移位/置數控制端(SH/LD)為高電平時,并行置數功能被禁止,將鎖存的八位置數信號從高到低移位串行輸出。通過級聯(lián)11塊74LS165,就可以實現(xiàn)88:1的并轉串比例,由于是由FPGA控制74LS165級聯(lián)塊的時鐘和移位置數工作狀態(tài),最終又串行輸入給FPGA,可以保證時序。若一個光電二極管陣列由88個光電二極管組成,則要級聯(lián)11塊74LS165,要把一個光電二極管陣列的所有光電二極管狀態(tài)數據給FPGA需要89(88+1移位置數控制信號)個clkout,在本系統(tǒng)中1個clkout的周期是60 ns,則總時間t=89x60ns=5.34μs,約是子彈穿過時間的1/5。由于采用的是并行采集,各個光電二極管陣列是獨立的,但又可看成是同一復制體,F(xiàn)PGA每隔5.34μs就可以采集到靶上所有光電二極管陣列的數據,實時性較好。
評論