王 亭 趙紅超
(海軍航空工程學(xué)院七系,山東 煙臺(tái) 264001)
慣導(dǎo)系統(tǒng)是測(cè)量空間參數(shù)和運(yùn)動(dòng)參數(shù)的慣性傳感器系統(tǒng),它是導(dǎo)彈控制系統(tǒng)的重要組成部分。彈載計(jì)算機(jī)采集慣導(dǎo)系統(tǒng)的空間、運(yùn)動(dòng)參數(shù),并進(jìn)行制導(dǎo)控制、姿態(tài)控制等控制算法的運(yùn)算,得到控制量并輸出給舵系統(tǒng)或伺服系統(tǒng),完成對(duì)導(dǎo)彈的姿態(tài)、彈道的控制。因此,彈載計(jì)算機(jī)是導(dǎo)彈控制系統(tǒng)中的控制中樞[1-2]。
本文構(gòu)建了一套超聲速導(dǎo)彈的半實(shí)物仿真系統(tǒng)[3]。其中,彈載計(jì)算機(jī)是自行研制的設(shè)備,它以DSP TMS320F240PQ 為中央處理器[4-5];選用云海公司的YH-7000VG型慣導(dǎo)作為慣性測(cè)試設(shè)備,放置在三軸轉(zhuǎn)臺(tái)上;采用德國Dspace仿真機(jī)來實(shí)時(shí)模擬導(dǎo)彈的空間位置和運(yùn)動(dòng)狀態(tài),并控制轉(zhuǎn)臺(tái)轉(zhuǎn)動(dòng),以帶動(dòng)慣導(dǎo)轉(zhuǎn)動(dòng)。YH-7000VG慣導(dǎo)敏感轉(zhuǎn)臺(tái)的轉(zhuǎn)動(dòng)角度、角速度、加速度等運(yùn)動(dòng)參數(shù)被送入彈載計(jì)算機(jī)。彈載計(jì)算機(jī)采集這些數(shù)據(jù)后進(jìn)行處理,作為控制算法的輸入?yún)?shù)。實(shí)時(shí)數(shù)據(jù)通信技術(shù)是導(dǎo)彈半實(shí)物仿真系統(tǒng)的一項(xiàng)關(guān)鍵技術(shù),為此,本文研究了慣導(dǎo)和彈載計(jì)算機(jī)之間數(shù)據(jù)通信的工程化電路設(shè)計(jì)、設(shè)備之間的線路連接、設(shè)備通信內(nèi)部配置、DSP通信軟件編程方法、數(shù)據(jù)轉(zhuǎn)換等技術(shù)內(nèi)容。
YH-7000慣導(dǎo)系統(tǒng)有慣性測(cè)量單元(inertial measurement unit,IMU)和垂直陀螺(vertical gyro,VG)這兩種型號(hào),屬于高性能空間角度和運(yùn)動(dòng)參數(shù)測(cè)量裝置。
本半實(shí)物仿真系統(tǒng)采用的是YH-7000VG。
YH-7000VG的工作電源采用單一的直流供電方式,供電電壓范圍為8~24 VDC。在設(shè)備21芯插座的第6針為VDC+輸入,11、15針為Ground電源地輸入。
YH-7000VG慣導(dǎo)能夠測(cè)量滾動(dòng)角和俯仰角的角度參數(shù)、XYZ三個(gè)方向的轉(zhuǎn)動(dòng)角速度以及這三個(gè)方向的運(yùn)動(dòng)加速度等數(shù)據(jù)。
YH-7000VG慣導(dǎo)的串行口通信的數(shù)據(jù)格式為數(shù)據(jù)包形式,一個(gè)數(shù)據(jù)包為23 B的數(shù)據(jù)。數(shù)據(jù)的輸出有兩種方式:一種是模擬量輸出,可供彈載計(jì)算機(jī)采用ADC進(jìn)行數(shù)據(jù)采集;另一種是高速串行口通信方式[6-7],即慣導(dǎo)和彈載計(jì)算機(jī)通過 RS-232 串行口相聯(lián),進(jìn)行數(shù)據(jù)交換。模擬量輸出方式需要彈載計(jì)算機(jī)具備八通道同步的高速、高分辨率ADC數(shù)據(jù)采集通路,這就增加了彈載計(jì)算機(jī)的復(fù)雜性,且模擬信號(hào)易受到電磁干擾。因此,本系統(tǒng)采用第二種方式,即高速串行口通信方式。YH-7000VG的RS-232接口信號(hào)的定義如表1所示。
表1 接口信號(hào)定義Tab.1 Definition of the interfacing signals
1.2.1 通信波特率的選擇
彈載計(jì)算機(jī)的控制運(yùn)算周期定為T=10 ms,它主要包括:數(shù)據(jù)采集時(shí)間T1、控制算法運(yùn)算時(shí)間T2和控制輸出時(shí)間T3。因此,必須滿足:T1+T2+T3<T。通過實(shí)際運(yùn)行測(cè)試發(fā)現(xiàn),T2+T3的最長時(shí)間為5.1 ms。因此,要求 T1不大于4.9 ms。
YH-7000VG的串行口通信協(xié)議為:一個(gè)停止位,八個(gè)有效數(shù)據(jù)位和一個(gè)停止位。默認(rèn)波特率為38400 bit/s,但傳輸一個(gè)數(shù)據(jù)包需要8.6 ms,數(shù)據(jù)刷新率為115 Hz,這顯然不能滿足系統(tǒng)的需要。為此,選擇其最快的數(shù)據(jù)傳輸速率,即115200 bit/s的波特率,傳輸一個(gè)數(shù)據(jù)包需要 4.6 ms,數(shù)據(jù)刷新率為 210 Hz,此時(shí),T1+T2+T3=9.7 ms,滿足系統(tǒng)需要。
1.2.2 慣導(dǎo)的波特率設(shè)置
YH-7000VG慣導(dǎo)的波特率設(shè)置可以通過彈載計(jì)算機(jī)給其發(fā)送相應(yīng)的控制命令進(jìn)行設(shè)置。由于YH-7000VG的默認(rèn)波特率為38400 bit/s,因此彈載計(jì)算機(jī)也需要首先設(shè)置自己的波特率為38400 bit/s,然后在此狀態(tài)下向慣導(dǎo)發(fā)控制命令。彈載計(jì)算機(jī)向慣導(dǎo)發(fā)控制命令的步驟如下。
①復(fù)位YH-7000VG:彈載計(jì)算機(jī)發(fā)送“R”命令,復(fù)位YH-7000VG;
②暫停YH-7000VG:彈載計(jì)算機(jī)發(fā)送“P”命令,暫停YH-7000VG的數(shù)據(jù)發(fā)送;
③設(shè)置YH-7000VG新的波特率:彈載計(jì)算機(jī)發(fā)送“B2”命令,設(shè)置 YH-7000VG的通信波特率為115200 bit/s;
④彈載計(jì)算機(jī)設(shè)置本身的波特率為115200 bit/s,這和YH-7000VG的波特率一致,就可以控制慣導(dǎo)設(shè)備,與其進(jìn)行數(shù)據(jù)通信;
⑤啟動(dòng)YH-7000VG發(fā)送測(cè)試數(shù)據(jù),彈載計(jì)算機(jī)發(fā)送“C”命令,啟動(dòng)YH-7000VG按115200 bit/s的波特率、210 Hz的數(shù)據(jù)刷新頻率連續(xù)發(fā)送運(yùn)動(dòng)參數(shù)數(shù)據(jù)包。
我們研制的超聲速導(dǎo)彈半實(shí)物仿真系統(tǒng)的結(jié)構(gòu)框圖如圖1所示。
圖1 半實(shí)物仿真系統(tǒng)結(jié)構(gòu)框圖Fig.1 Structure diagram of half-practicality simulation
圖1中,彈載計(jì)算機(jī)的功能是用來實(shí)時(shí)接收YH-7000VG慣導(dǎo)輸出的運(yùn)動(dòng)參數(shù),并以此進(jìn)行相關(guān)控制算法的計(jì)算,計(jì)算的結(jié)果通過DAC輸出送給Dspace仿真機(jī)。彈載計(jì)算機(jī)的結(jié)構(gòu)框圖如圖2所示。
圖2 彈載計(jì)算機(jī)結(jié)構(gòu)框圖Fig.2 Structure diagram of missile-borne computer
圖2中,JTAG接口是 DSP的仿真接口;DSP TMS320F240PQ由高效率的CMOS技術(shù)所研制,具有運(yùn)算速度快的特點(diǎn)。
為實(shí)現(xiàn)更快的計(jì)算速度,采用定點(diǎn)式的運(yùn)算方式。TMS320F240PQ內(nèi)部具有程序存儲(chǔ)器Flash 32 kB,作為用戶程序代碼固化;544 b的內(nèi)部RAM,作為數(shù)據(jù)存儲(chǔ)器[8]。
設(shè)計(jì)過程中,系統(tǒng)另擴(kuò)展兩片高速RAM CY7C1021-15ZC,作為數(shù)據(jù)存儲(chǔ)器和調(diào)試期間用戶程序運(yùn)行區(qū)域。DAC轉(zhuǎn)換器件采用BB公司的12位轉(zhuǎn)換器DAC7545。為了使模擬輸出具有雙極性,還設(shè)計(jì)了信號(hào)調(diào)制電路。
由于DSP的串行口信號(hào)是TTL電平,而本文采用的YH-7000VG的串行口信號(hào)是標(biāo)準(zhǔn)的RS-232電平。為了使這兩種信號(hào)兼容,設(shè)計(jì)了RS-232串行口電平驅(qū)動(dòng)電路。串行口的電平驅(qū)動(dòng)采用MAXIM的MAX232CPE,其最大信號(hào)傳輸速率為120 kB/s,因此能滿足波特率為115200 bit/s的信號(hào)傳輸要求。RS-232串行口電平驅(qū)動(dòng)電路如圖3所示。
圖3 串行口電平驅(qū)動(dòng)電路Fig.3 Electronic driving circuit of serial port
彈載計(jì)算機(jī)的軟件功能是結(jié)合系統(tǒng)的硬件完成對(duì)YH-7000VG慣導(dǎo)的工作方式設(shè)置,并與其進(jìn)行高速數(shù)據(jù)通信,接收其運(yùn)動(dòng)參數(shù),進(jìn)行數(shù)據(jù)轉(zhuǎn)換,然后進(jìn)行控制算法的計(jì)算和結(jié)果輸出。軟件設(shè)計(jì)流程圖如圖4所示。
圖4 軟件設(shè)計(jì)流程圖Fig.4 Flowchart of software design
彈載計(jì)算機(jī)軟件程序分為DSP工作初始化程序、YH-7000VG的工作方式設(shè)置程序、慣性運(yùn)動(dòng)參數(shù)接收程序、三個(gè)通道控制算法解算程序和解算結(jié)果輸出程序。DSP控制算法程序的功能是結(jié)合硬件電路實(shí)現(xiàn)從仿真機(jī)接收控制算法需要的參數(shù),然后進(jìn)行導(dǎo)彈控制算法的解算,并將解算的結(jié)果輸出,完成一個(gè)控制周期的運(yùn)算,直到飛行仿真結(jié)束。此部分程序采用DSP-C語言編寫,結(jié)構(gòu)、語句和數(shù)據(jù)結(jié)構(gòu)符合標(biāo)準(zhǔn)C語言。通過DSP仿真器對(duì)軟件進(jìn)行調(diào)試。DSP仿真器利用計(jì)算機(jī)的USB接口和仿真器連接,仿真器通過JTAG接口與彈載計(jì)算機(jī)的DSP仿真口連接。
DSP的工作電路采用11.0592 MHz的外頻晶振,設(shè)置DSP的時(shí)鐘寄存器 CLKCR0=0XC3,CLKCR1=0XCA,則彈載計(jì)算機(jī) DSP的系統(tǒng)工作時(shí)鐘 clksys=DSP的SCI波特率設(shè)置寄存器,其中,BAUD為擬設(shè)置的波特率。由于系統(tǒng)要用到兩個(gè)波特率:38400 bit/s和115200 bit/s,因此對(duì)應(yīng)的BRR分別為26和8。系統(tǒng)程序調(diào)用子程序INIT_RSINT來設(shè)置波特率,程序語句如下:
在上電復(fù)位的狀態(tài)下,彈載計(jì)算機(jī)按以下順序向YH-7000VG慣導(dǎo)發(fā)送設(shè)置命令,編程如下:① DSP設(shè)置本身的波特率38400 bit/s:INIT_RSINT(38400);② 向YH-7000VG發(fā)復(fù)位命令:SCITXBUF=‘R’;longwait(1);③ 發(fā)暫停數(shù)據(jù)輸出命令:SCITXBUF=‘P’;longwait(1);④設(shè)置YH-7000VG新的波特率:SCITXBUF=‘B’;while((SCICTL2 & 0x80)!=0x80){};SCITXBUF=‘2’;longwait(1);⑤ 設(shè)置 DSP新的通信波特率:INIT_RSINT(115200);⑥ 發(fā)連續(xù)數(shù)據(jù)輸出命令:SCITXBUF=‘C’;longwait(1)。此時(shí),YH-7000VG慣導(dǎo)就連續(xù)以115200 bit/s的波特率、210 Hz的數(shù)據(jù)刷新率向彈載計(jì)算機(jī)發(fā)送導(dǎo)彈運(yùn)動(dòng)數(shù)據(jù)。
彈載計(jì)算機(jī)進(jìn)行數(shù)據(jù)接收與變換的程序如下:
本文簡單介紹了YH-7000VG慣導(dǎo)的應(yīng)用性能設(shè)置,設(shè)計(jì)并實(shí)現(xiàn)了基于DSP TMS320F240PQ的彈載計(jì)算機(jī)和YH-7000VG慣導(dǎo)系統(tǒng)之間的高速數(shù)據(jù)通信。試驗(yàn)運(yùn)行表明,彈載計(jì)算機(jī)采集YH-7000VG慣導(dǎo)的運(yùn)動(dòng)參數(shù)準(zhǔn)確完整、可靠性高,數(shù)據(jù)通信的傳輸無誤碼,完全滿足某超聲速導(dǎo)彈半實(shí)物仿真系統(tǒng)的需要。
[1]周小剛,佘嬙,錢培賢.地面計(jì)算機(jī)串并行通訊[J].國外電子測(cè)量技術(shù),2005(5):47-49.
[2]白云,黃孝文,趙俊峰.捷聯(lián)慣導(dǎo)半實(shí)物仿真測(cè)試系統(tǒng)研究[J].航天控制,2010,28(3):56 -58.
[3]耿東平,王正平,郝磊.導(dǎo)彈制導(dǎo)控制系統(tǒng)半實(shí)物仿真系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].飛行力學(xué),2008,26(5):75 -78.
[4]黃英哲,黃勝源.TMS320F240原理與C語言控制應(yīng)用實(shí)習(xí)[M].北京:中國水利水電出版社,2003.
[5]吳愛華,茅靖峰.TMS320F240DSP與點(diǎn)陣字符型液晶顯示模塊的接口設(shè)計(jì)[J].南通工學(xué)院學(xué)報(bào):自然科學(xué)版,2004,3(1):73 -75.
[6]郭京蕾,吳勇.DSP和PC機(jī)的串行通信[J].計(jì)算機(jī)工程與設(shè)計(jì),2004,25(3):475 -477.
[7]陸超芬.DSP與計(jì)算機(jī)串行通信設(shè)計(jì)及編程研究[J].中國科技信息,2010(1):114-115.
[8]相里坤.TMS320F24x系列芯片串行接口的設(shè)計(jì)與擴(kuò)展[J].無線電工程,2008,38(8):52-54.