李炳臻,李 杰?,胡陳君,張澤宇,紀志敏
(1.中北大學(xué)電子測試技術(shù)重點實驗室,山西 太原 030051;2.蘇州中盛納米科技有限公司,江蘇 蘇州 215123)
隨著現(xiàn)代戰(zhàn)爭對于常規(guī)戰(zhàn)術(shù)武器要求的進一步提升,常規(guī)武器彈藥的“信息化、制導(dǎo)化”已經(jīng)越來越作為新設(shè)計趨勢。因此,實現(xiàn)低成本高精度的導(dǎo)航作戰(zhàn)平臺將愈來愈重要[1]。
傳統(tǒng)的常規(guī)戰(zhàn)術(shù)武器的導(dǎo)航系統(tǒng),其導(dǎo)航方式為單一的慣性導(dǎo)航,雖然慣性導(dǎo)航方式具有不需要與外界有任何信息交互,也不與外界進行能量交換,高度隱蔽和高度自主的特點,但是由于傳感器和算法自身難以規(guī)避的缺點,其導(dǎo)航精度隨解算時間的累加會將計算誤差不斷放大,無法提供長時間的可靠導(dǎo)航計算[2]。
隨著GPS 衛(wèi)星導(dǎo)航相關(guān)理論的完善和應(yīng)用的擴大,SINS/GPS 這種新型的組合導(dǎo)航系統(tǒng)得到廣泛的應(yīng)用,它彌補了傳統(tǒng)的慣性導(dǎo)航計算誤差隨時間積累的問題,也解決了衛(wèi)星導(dǎo)航系統(tǒng)在高動態(tài)環(huán)境中定位經(jīng)常失鎖的問題,提高了導(dǎo)航系統(tǒng)的更新速率、導(dǎo)航精度和抗干擾能力[3]。
本文針對目前常規(guī)武器制導(dǎo)化的趨勢,設(shè)計了一種新的彈載組合導(dǎo)航系統(tǒng),它可以完成對前端模擬信號(IMU 慣性單元)和數(shù)字信號(GPS 定位信息)的采集,同時擁有強大的導(dǎo)航解算能力,體積小,速度快,計算能力強,能夠較為準確地算出彈體位置和姿態(tài)信息,可以在較為復(fù)雜的彈載環(huán)境下使用,滿足大多數(shù)常規(guī)武器的作戰(zhàn)需求[4-6]。
組合導(dǎo)航系統(tǒng)平臺硬件設(shè)計采用“FPGA+DSP”的方案,即以FPGA 作為核心控制器,DSP 為解算模塊,包含電源模塊、信號調(diào)理模塊、A/D 轉(zhuǎn)換模塊,數(shù)據(jù)存儲模塊等組成,系統(tǒng)總體結(jié)構(gòu)見圖1。
圖1 系統(tǒng)總體結(jié)構(gòu)
組合導(dǎo)航系統(tǒng)硬件平臺的工作流程為,主控模塊FPGA,通過控制A/D 轉(zhuǎn)換器等完成前端模擬和數(shù)字信號的采集,將數(shù)據(jù)編幀預(yù)處理后,傳給DSP數(shù)據(jù)解算模塊,由DSP 模塊對前端采集的數(shù)據(jù)按照組合導(dǎo)航算法,進行解算,對IMU 慣性數(shù)據(jù)和GPS定位信息進行組合導(dǎo)航后,再將解算后的數(shù)據(jù)信息回傳給FPGA 主控模塊,在FPGA 將數(shù)據(jù)存儲的同時,將得到的部分關(guān)鍵姿態(tài)信息傳送給遙測模塊,由遙測模塊將數(shù)據(jù)發(fā)送給控制大廳。
組合導(dǎo)航平臺采取自供電的方式,采用16.8 V鋰電池供電,通過TI 公司的LTM8022 穩(wěn)壓芯片,將16.8 V 電壓降壓為穩(wěn)定的5 V 電壓后供其他模塊使用。同時,考慮到工作環(huán)境的特殊性,為對抗復(fù)雜環(huán)境下的電磁干擾,保障前端數(shù)據(jù)采集電路的采集精度,供電模塊部分將數(shù)字電源和模擬電源隔離,16.8 V 轉(zhuǎn)5 V 電路見圖2。
圖2 16.8 V 轉(zhuǎn)5 V 電路
由于其他模塊的供電要求,需要電源模塊提供1.2 V 與3.3 V 的電壓,選擇TI 公司的TPS70345 型芯片,同時考慮到 DSP 芯片采用的是TMS320C6748,其上電有順序有嚴格的要求,上電順序必須依次為1.2 V-1.8 V-3.3 V 的順序,所以在FPGA 上電工作后,通過控制TI 公司的LP5907-1.8和LP5907-3.3 來滿足DSP 的上電要求,主控芯片電路圖見圖3。
圖3 主控芯片供電電路
組合導(dǎo)航平臺前端采集電路采集數(shù)據(jù)來自IMU慣性測量單元的加速度計信息,將其輸出的模擬電壓值轉(zhuǎn)換為數(shù)字信號。
模擬信號采集模塊是由信號調(diào)理模塊和A/D轉(zhuǎn)換器組成,信號調(diào)理模塊是將輸入的電壓信號進行濾波,放大,增加其驅(qū)動能力,使得采集更為精確;A/D 轉(zhuǎn)換模塊則是直接將模擬量轉(zhuǎn)換為數(shù)字量,因此它直接決定了組合導(dǎo)航計算的精確度。
信號調(diào)理模塊采用TI 公司的OPA4340 型信號調(diào)理芯片,具有寬帶寬增益和高輸入阻抗的特性,擁有非常良好的直流特性,可以有效降低前端模擬信號傳輸過程中的損耗,確保其驅(qū)動能力,可以對慣性傳感器輸出電壓0.5 V~4.5 V 進行信號調(diào)理。
A/D 轉(zhuǎn)換模塊選用TI 公司的ADS8365 型芯片,該芯片支持六路采集,擁有16 位的采樣精度,最高允許5 MHz 的時鐘輸入,每個通道的轉(zhuǎn)換時間僅為4 μs,轉(zhuǎn)換后的數(shù)字信號可以進行高速并行傳輸,完全能夠滿足導(dǎo)航系統(tǒng)對前端傳感器的采集要求。A/D 轉(zhuǎn)換器電路設(shè)計見圖4。
圖4 A/D 轉(zhuǎn)換器電路設(shè)計
來自GPS 導(dǎo)航系統(tǒng)的定位信息為數(shù)字信號,在可能存在較強電磁干擾的環(huán)境下,其傳輸方式為差分串型傳輸,采用固定波特率,接口電平標準為RS-422 電平,而FPGA 的端口為TTL 電平標準,需要設(shè)計轉(zhuǎn)換差分轉(zhuǎn)單端電平的電路,完成電平轉(zhuǎn)換。
電平轉(zhuǎn)換芯片采用MAX3490,該型號芯片支持同時進行422 信號的輸入輸出,通道間相互隔離,電路設(shè)計見圖5。
圖5 電平轉(zhuǎn)換電路
組合導(dǎo)航系統(tǒng)除了控制前端采集電路,還要對采集回來的數(shù)據(jù)做預(yù)處理,編幀,傳輸,存儲等較為復(fù)雜的操作,因此核心處理器必須具有較為強大的功能,經(jīng)過綜合考慮,選擇賽靈思公司的XC6SLX16-CSG324 芯片芯片作為主控芯片。
該芯片體積小,功耗低,價格相對較為便宜,可批量生產(chǎn),支持多種接口協(xié)議,配合HDL 語言進行開發(fā),完全滿足作為組合導(dǎo)航系統(tǒng)主控模塊的設(shè)計需求;XC6SLX16-CSG324 擁有豐富的硬件資源,有232 個I/O 端口、2 278 個SLICE 資源、14 579 個邏輯單元、576 KB 的緩存,擁有十分優(yōu)良的硬件性能。
雖然FPGA 擁有非常豐富的邏輯資源,但是組合導(dǎo)航的運算量極大,如果單純靠FPGA 內(nèi)部硬件資源搭建,計算速度和資源占用率都無法滿足設(shè)計要求,因此擁有豐富乘法器資源的DSP 成為數(shù)據(jù)解算模塊的最佳選擇。
考慮到設(shè)計要求的實時性、小型化、低成本、工作環(huán)境等因素,DSP 芯片選擇 TI 公司的TMS320C6748 型芯片,其主頻率高達375 MHz,,可同時執(zhí)行8 條指令,完全滿足計算需求以及在彈載環(huán)境下工作。
并且該型號DSP 擁有一個通用并行接口,可用來與其他設(shè)備并行傳輸通信,并且該接口的控制信號少,并行通道UPP 的工作時鐘是其主頻(375 MHz)的四分之一,滿足數(shù)據(jù)傳輸需求,因此本文用它來做數(shù)據(jù)解算模塊,實現(xiàn)與FPGA 進行數(shù)據(jù)通信。
在設(shè)計中,存儲模塊有兩部分,一部分用作DSP回傳解算后的數(shù)據(jù)存儲芯片,另一部分是DSP 程序以及相應(yīng)組合導(dǎo)航諸元的程序存儲模塊。因此,數(shù)據(jù)存儲必須使用下電不丟失,長期工作穩(wěn)定類型的存儲芯片。
組合導(dǎo)航系統(tǒng)解算數(shù)據(jù)量大,更新快,導(dǎo)航周期短,所以必須快速寫入存儲器,不能有丟幀少數(shù)據(jù)的情況。因此,數(shù)據(jù)存儲模塊和程序存儲模塊均選用三星公司的K9K8GU0M 型NANDFLASH 作為存儲器,其頁編程時間僅僅200 μs,寫入時間遠遠小于DSP 內(nèi)置算法的計算周期,完全滿足解算需求,存儲模塊電路圖見圖6。
圖6 存儲模塊電路圖
系統(tǒng)通過FPGA 控制AD8365 完成對模擬信號的采集。采集系統(tǒng)上電后,給A/D 芯片復(fù)位信號,完成系統(tǒng)的同步初始化。然后由FPGA 控制模塊,對AD8365 發(fā)出指令HLODX,其為低電平觸發(fā)。收到指令的AD8365 開始對輸入的六路輸入電壓信息進行一次轉(zhuǎn)換,A/D 轉(zhuǎn)換完成后,A/D 內(nèi)部下拉EOC 引腳,提示主控芯片完成轉(zhuǎn)換[13]。
FPGA 收到AD8365 的提示信號后,F(xiàn)PGA 發(fā)送RD 指令,完成轉(zhuǎn)換數(shù)據(jù)的讀取,完成一次完整的數(shù)據(jù)轉(zhuǎn)換過程。AD8365 工作時序,見圖7。
圖7 AD8365 工作時序圖
前端采集數(shù)據(jù),既有相對頻率較高的慣性傳感器數(shù)據(jù),又有更新速度較慢的GPS 定位信息。因此,必須采用合理的方式,將速度不同的數(shù)據(jù)信息進行處理后傳輸[7]。
考慮到后端DSP 處理的要求,系統(tǒng)采用編幀的方式,即在FPGA 內(nèi)部對所有的前端采集數(shù)據(jù)進行數(shù)據(jù)編幀預(yù)處理,以更新頻率較高的慣性數(shù)據(jù)為基礎(chǔ)頻率,同時也將收到的GPS 數(shù)據(jù)編幀,在GPS 數(shù)據(jù)后增加標志位作為更新標志字,“0”為更新,“1”為未更新。
在每一幀數(shù)據(jù)的前面增加幀頭“EB90”作為區(qū)分不同幀的標志,每一幀幀頭后添加累加的幀計數(shù)作為連續(xù)性判斷標志,同時為了防止在FPGA 和DSP 數(shù)據(jù)傳輸過程中發(fā)生數(shù)據(jù)丟失或者數(shù)據(jù)失真的情況,在每一幀數(shù)據(jù)的結(jié)尾增加數(shù)據(jù)校驗和,即前面所有有效的數(shù)據(jù)累加和的低八位。這樣,該幀數(shù)據(jù)進入DSP 后,DSP 可以通過對校驗和對接收數(shù)據(jù)進行判斷,確保接收數(shù)據(jù)的準確性和解算精度,編幀格式見圖8。
圖8 編幀格式
當FPGA 將數(shù)據(jù)傳輸給DSP 后,DSP 把根據(jù)上一幀慣性數(shù)據(jù)和GPS 定位數(shù)據(jù)通過組合導(dǎo)航算法得到的組合導(dǎo)航解算信息加在該幀后面,回傳給FPGA。接著,對剛得到的這一幀數(shù)據(jù)做解算,完成一次完整的數(shù)據(jù)傳輸,使FPGA 不僅可以得到完整的傳感器的原始數(shù)據(jù),還可以得到導(dǎo)航解算姿態(tài)信息,將其存儲到Nandflsh 中[8-10]。
DSP 與FPGA 的數(shù)據(jù)傳輸是通過DSP 內(nèi)置專門的并行端口UPP 來對外完成并行高速數(shù)據(jù)的傳輸,其擁有獨立的數(shù)據(jù)緩存通道來緩存外部的傳輸數(shù)據(jù)。UPP 有兩個獨立的通道,為通道A,通道B,并且只有數(shù)量極少的控制線,配置靈活,支持SDR(單倍數(shù)據(jù)率),DDR(雙倍數(shù)據(jù)率),UPP 通道信號說明見表1。
表1 UPP 通道信號說明
系統(tǒng)采用A 通道作為DSP 的并行數(shù)據(jù)接收通道,其時鐘是由FPGA 提供。用通道B 作為DSP 的輸出通道,輸出DSP 解算后的數(shù)據(jù),時鐘由DSP 內(nèi)部提供。通道A 和通道B,均為8 位,且都通過UPP接口內(nèi)部的DMA 緩存區(qū),傳輸過程見圖9。
圖9 FPGA 與DSP 通信示意圖
為保證數(shù)據(jù)發(fā)送的連續(xù)性,解決不同芯片間的跨時鐘域傳播問題,在FPGA 主控模塊內(nèi)部設(shè)計兩個獨立的FIFO,數(shù)據(jù)發(fā)送FIFO 接收經(jīng)過編幀后的數(shù)據(jù),數(shù)據(jù)接收FIFO 接收DSP 導(dǎo)航解算信息。當數(shù)據(jù)發(fā)送FIFO 接收的數(shù)據(jù)到達一定的閾值后,F(xiàn)PGA 的發(fā)送模塊開始發(fā)送數(shù)據(jù)給DSP 的通道A,同時給DSP 一個高電平信號,直到該幀數(shù)據(jù)發(fā)送結(jié)束。當導(dǎo)航解算完成后,DSP 通過通道B 發(fā)送數(shù)據(jù)給FPGA,通道A 和通道B 之間相互獨立,這樣數(shù)據(jù)的發(fā)送和接收不受影響,整個數(shù)據(jù)傳輸系統(tǒng)達到動態(tài)平衡。
數(shù)據(jù)存儲模塊是由FPGA 主控模塊完成寫操作,將DSP 回傳的數(shù)據(jù)信息全部存儲,方便事后對彈體的姿態(tài)位置信息進行分析處理。
組合導(dǎo)航解算后的姿態(tài)信息從UPP 接口回到FPGA 內(nèi)部后,進入FIFO 中緩存,再由FLASH 寫入程序從FIFO 中讀出,存入FLASH 中,因為該型號FLASH 的頁編程時間遠遠小于解算數(shù)據(jù)的時間,所以FLASH 控制器讀FIFO 時鐘的速度遠遠大于DSP給的寫入時鐘,保持了動態(tài)平衡,維持了數(shù)據(jù)的穩(wěn)定[11-12]。
在該型號FLASH 上彈使用前,需進行相應(yīng)的壞塊檢測,確保存儲器的每一個數(shù)據(jù)塊的工作狀態(tài),將其壞塊信息寫入程序中,當寫入時先判斷寫入地址的壞塊情況,再寫入該地址,系統(tǒng)上電后,F(xiàn)LASH 工作流程見圖10。
圖10 存儲模塊工作流程
彈載組合導(dǎo)航系統(tǒng)硬件平臺的方案可行性驗證是通過制造出實物后,將實物直接連接前端的IMU慣性測量裝置,以及GPS 衛(wèi)星導(dǎo)航板卡,得到相應(yīng)數(shù)據(jù)信息,進行驗證的。
整個組合導(dǎo)航系統(tǒng)板卡采用六層PCB 布板,這大大提升了器件的布板效率,提升了板卡的性能,縮小了版卡面積,最后實際布板面積為62 mm×40 mm,實際板卡設(shè)計見圖11。
圖11 組合導(dǎo)航板卡實物圖
組合導(dǎo)航算法融合了慣性導(dǎo)航算法和衛(wèi)星導(dǎo)航算法,因此,為保證其精度,首先需要對慣性傳感器進行標定,得到相應(yīng)的加速度計和陀螺零位,以及標度因數(shù),通過三軸轉(zhuǎn)臺對加速度計標定后得到的結(jié)果,見圖12。
圖12 三軸加速度計標定后結(jié)果
為確保GPS 信號質(zhì)量,使其保持自然收星狀態(tài),實物測試是在室外進行,系統(tǒng)上電后,如果正常工作,會將相關(guān)數(shù)據(jù)按照編幀格式存儲在系統(tǒng)存儲模塊中。系統(tǒng)下電后,將配套的讀數(shù)盒連接到存儲模塊,然后通過計算機內(nèi)置上位機,讀出數(shù)據(jù)信息,判斷數(shù)據(jù)情況。
經(jīng)過室外靜態(tài)采集數(shù)據(jù)后,通過上位機按照事先定義好的編幀信息,將數(shù)據(jù)分離,從而得到的慣組陀螺儀數(shù)據(jù)Y軸信息,慣性組件整體處于靜止狀態(tài),陀螺儀的整體輸出在零位附近,這說明慣性數(shù)據(jù)采集正常,陀螺儀Y軸數(shù)據(jù)見圖13。
圖13 陀螺儀Y 軸數(shù)據(jù)
數(shù)據(jù)解算分離后,得到GPS 初始定位信息,以及組合導(dǎo)航解算后的相應(yīng)姿態(tài)位置信息,GPS 定位高程與DSP 內(nèi)部進行組合導(dǎo)航解算高程對比結(jié)果,見圖14。
圖14 GPS 定位數(shù)值與組合導(dǎo)航解算高程對比圖
數(shù)據(jù)測量地點在西昌,測量所在地海拔在1 795 m,經(jīng)過數(shù)據(jù)對比,可以看出,組合導(dǎo)航處理后的數(shù)據(jù)并沒有與GPS 定位數(shù)值完全一樣,而是圍繞GPS 數(shù)據(jù)波動,這是組合導(dǎo)航算法融合GPS 數(shù)據(jù)和IMU 慣性數(shù)據(jù)進行計算的結(jié)果。
且為了模擬真實的實驗環(huán)境,在實驗中不斷中斷GPS 信號,讓GPS 模塊重新定位,完成信號失鎖重補的過程,模擬彈上可能出現(xiàn)的環(huán)境。通過表2可以看出,在400s 內(nèi)的上電過程中,定位高程與當?shù)貙嶋H高程的誤差精度絕對值最大在3%以內(nèi),滿足設(shè)計要求。完全可以保證設(shè)備在彈載環(huán)境下,即便無法收到穩(wěn)定的GPS 定位信息,也可以在短期內(nèi)根據(jù)純慣性算法完成可靠的數(shù)據(jù)解算。
表2 GPS 定位數(shù)值與組合導(dǎo)航計算高程與實際高程對比
基于以上組合導(dǎo)航系統(tǒng)硬件平臺的室外實際上電測試,其數(shù)據(jù)采集前端工作正常,組合導(dǎo)航解算模塊工作正常,F(xiàn)PGA 與DSP 之間數(shù)據(jù)傳輸穩(wěn)定,DSP解算功能正常,數(shù)據(jù)存儲模塊功能正常。
本文針對彈載環(huán)境下的組合導(dǎo)航硬件平臺進行詳細的介紹,該平臺可以在高過載環(huán)境下,滿足小體積、大容量、高速度的要求。通過FPGA 對前端數(shù)據(jù)采集模塊的控制,以及與DSP 解算模塊的并行數(shù)據(jù)通信,完成了采集和解算數(shù)據(jù)的存儲,為彈體姿態(tài)和定位信息的后期理論分析,提供了非??煽康臄?shù)據(jù)保障。同時,該系統(tǒng)具有很強的移植性,除了彈載環(huán)境,還可廣泛用于商業(yè)航天,深海探測等極端環(huán)境下的數(shù)據(jù)采集以及姿態(tài)計算。