王紅光,穆 強(qiáng),劉 博
(北京空間飛行器總體設(shè)計(jì)部,北京 100094)
本文介紹了一種在衛(wèi)星地面測試階段通過標(biāo)準(zhǔn)CPCI機(jī)箱配置數(shù)據(jù)傳輸模塊實(shí)現(xiàn)衛(wèi)星數(shù)據(jù)傳輸?shù)膽?yīng)用方法,將1553B總線接口介入星載數(shù)據(jù)網(wǎng)絡(luò),直接獲取衛(wèi)星多系統(tǒng)的下行數(shù)據(jù),實(shí)時(shí)性顯示數(shù)據(jù),彌補(bǔ)了遠(yuǎn)距離測控通信信道余量和容量的不足,對(duì)于數(shù)據(jù)變化快的數(shù)據(jù)能夠?qū)崟r(shí)采集和傳送,提高了數(shù)據(jù)獲取的速率。同時(shí),將RS-422接口與星載設(shè)備直連模式,完成上行數(shù)據(jù)注入及指令發(fā)送和數(shù)據(jù)下行,保證了數(shù)據(jù)信息的快捷傳送,保證高可靠的數(shù)據(jù)通信和安全性要求,可以縮短測試過程中應(yīng)急響應(yīng)時(shí)間。
該種數(shù)據(jù)傳輸方式保證了遙控及遙測信道的信息快速、可靠傳送,減少延時(shí)傳送帶來的漏判等情況,對(duì)于多個(gè)分系統(tǒng)或者子系統(tǒng)協(xié)同測試的情況下,發(fā)現(xiàn)問題后能夠迅速定位,作為排查問題的方式,對(duì)于有效載荷等數(shù)據(jù)量大的終端數(shù)據(jù)下行,為其提供了上、下行信道及其它系統(tǒng)間信息交換的快速通道,遙測更新速率快,在地面電性能綜合測試時(shí)作為判讀手段,提高了測試效率。
本系統(tǒng)采用上、下位機(jī)的網(wǎng)絡(luò)結(jié)構(gòu),上位機(jī)采用通用計(jì)算機(jī),配置雙網(wǎng)卡接收下位機(jī)數(shù)據(jù),同時(shí)作為數(shù)據(jù)處理和分析計(jì)算機(jī),下位機(jī)由CPCI工控計(jì)算機(jī)及數(shù)據(jù)傳輸模塊組成。上位機(jī)運(yùn)行主控監(jiān)視、顯示軟件,下位機(jī)遠(yuǎn)程運(yùn)行工控系統(tǒng)軟件及數(shù)據(jù)傳輸模塊嵌入式軟件,如圖1所示。
圖1 數(shù)據(jù)傳輸應(yīng)用系統(tǒng)關(guān)系圖
在本系統(tǒng)中,所有采集的原始數(shù)據(jù)由工控機(jī)按照協(xié)議格式存儲(chǔ)。數(shù)據(jù)傳輸模塊作為CPCI從設(shè)備將采集的衛(wèi)星數(shù)據(jù)傳送至CPCI主設(shè)備,進(jìn)行組幀、打包并通過以太網(wǎng)發(fā)送至上位機(jī),由上位機(jī)按照網(wǎng)絡(luò)協(xié)議發(fā)送至遠(yuǎn)程終端用戶進(jìn)行顯示、數(shù)據(jù)分析、處理以及故障診斷,同時(shí)可完成打印和存檔操作等,或者根據(jù)用戶需求遠(yuǎn)程設(shè)置1553B總線接口工作模式,完成總線接口控制、監(jiān)聽、仿真,實(shí)現(xiàn)數(shù)據(jù)定制傳輸和狀態(tài)控制。
數(shù)據(jù)傳輸模塊裝載在下位工控機(jī)中,通過以太網(wǎng)由上位機(jī)遠(yuǎn)程控制實(shí)現(xiàn)在線測試,控制完成1553B接口的BCMTRT多種功能轉(zhuǎn)換,進(jìn)行不同功能模擬的動(dòng)態(tài)設(shè)置,充分利用并節(jié)省硬件資源,完成1553B總線在線控制、監(jiān)聽和仿真功能,該3種功能的轉(zhuǎn)換通過上位機(jī)根據(jù)需求而進(jìn)行工作模式的切換設(shè)置。
-總線控制器(BC),由上位機(jī)控制啟動(dòng)與被測RT端串行總線通訊,檢驗(yàn)RT總線通訊數(shù)據(jù)的正確性。
-遠(yuǎn)置終端(RT),模擬一個(gè)或多個(gè)連接在總線終端上的數(shù)據(jù)特性,可以靈活的進(jìn)行遠(yuǎn)程終端的模擬,模擬31個(gè)遠(yuǎn)置終端,按照1553B總線遠(yuǎn)置終端的特性進(jìn)行數(shù)據(jù)設(shè)置,上位機(jī)可以對(duì)仿真的RT終端的任何數(shù)據(jù)進(jìn)行修改,并可根據(jù)總線通訊協(xié)議對(duì)仿真的RT地址、子地址和接收/發(fā)送信息有選擇的顯示。
-總線監(jiān)視器(MT),監(jiān)聽所有或部分總線終端通訊信息流,由上位機(jī)控制監(jiān)聽終端的操作,并傳輸及顯示其監(jiān)聽到的數(shù)據(jù)。
同時(shí)具有多種數(shù)據(jù)采集傳輸功能,完成外部1553B總線接口和多路RS-422接口數(shù)據(jù)傳輸,并通過以太網(wǎng)將獲取的1553B總線原始數(shù)據(jù)及下位機(jī)工作狀態(tài)信息發(fā)送至上位機(jī)。2種接口均為通用接口標(biāo)準(zhǔn)規(guī)范,采用1553B雙余度結(jié)構(gòu)多路傳輸數(shù)據(jù)總線,設(shè)計(jì)為變壓器耦合接口方式,接口電路與被測件隔離,保證電氣接口的安全性,RS-422總線是一種平衡通信接口,差分傳輸方式可實(shí)現(xiàn)數(shù)據(jù)遠(yuǎn)距離傳輸,采用雙線傳輸提高了抗共模干擾的能力。
按照衛(wèi)星系統(tǒng)應(yīng)用的需求,可靠性和安全性是重點(diǎn)考慮的因素,在本系統(tǒng)中,工控機(jī)采用低電壓隔離供電方式,將220 V交流電壓轉(zhuǎn)換為直流24 V電壓再供給工控機(jī),實(shí)現(xiàn)電源供電隔離,保證被測設(shè)備安全性。
數(shù)據(jù)傳輸模塊是基于CPCI接口的標(biāo)準(zhǔn)板卡,數(shù)據(jù)傳輸模塊板卡插裝在4U或者6U的CPCI工控機(jī)箱中,板卡尺寸為233.35 mm×166 mm,主要實(shí)時(shí)接收外部1553B串行數(shù)據(jù)總線數(shù)據(jù)和RS-422串行總線數(shù)據(jù)并進(jìn)行傳輸,硬件模塊主要由中央控制器、CPCI總線控制器、FPGA、1553B總線控制器、RS-422總線控制器、雙口RAM等組成。中央控制器完成外部數(shù)據(jù)流的接收與處理,雙口RAM用于暫存數(shù)據(jù),實(shí)現(xiàn)原始數(shù)據(jù)與狀態(tài)設(shè)置等數(shù)據(jù)交換,各專用接口芯片配置應(yīng)用寄存器和數(shù)據(jù)緩存區(qū)等,由軟件設(shè)置狀態(tài)信息,F(xiàn)PGA芯片實(shí)現(xiàn)邏輯控制及時(shí)序匹配。數(shù)據(jù)傳輸模塊硬件結(jié)構(gòu)如圖2。
圖2 數(shù)據(jù)傳輸模塊硬件結(jié)構(gòu)框圖
為了適應(yīng)數(shù)據(jù)傳輸速率的需要中央控制器選用W77E58控制器芯片,系統(tǒng)時(shí)鐘12 MHz,片內(nèi)程序區(qū)為32 K字節(jié),該芯片運(yùn)行速度為傳統(tǒng)8051系列的1.5~3倍。中央控制器接外部中斷源,以接收外部中斷方式控制數(shù)據(jù)接收。外部配置8 K字節(jié)RAM區(qū)和8 K字節(jié)PROM區(qū)。所有控制管腳接FPGA芯片管腳上,根據(jù)使用需要,在FPGA內(nèi)部通過編程對(duì)各個(gè)功能管腳進(jìn)行靈活處理和使用。
數(shù)據(jù)傳輸模塊與上位機(jī)的數(shù)據(jù)交互通過標(biāo)準(zhǔn)化的CPCI總線來實(shí)現(xiàn),CPCI接口可采用可編程邏輯器件或者專用CPCI總線接口芯片完成,考慮開發(fā)的復(fù)雜性和系統(tǒng)的穩(wěn)定性,采用低成本和通用的商用接口芯片,CPCI總線控制器芯片選用PCI9052接口芯片,該芯片是PLX技術(shù)公司開發(fā)的PCI協(xié)議從模式接口芯片,是低成本、低功耗器件,可以完成局部總線到PCI總線的快速轉(zhuǎn)換,擴(kuò)展適配板卡,部分引腳可直接連接到2 mm密度針孔連接器上,另有AD0~AD31、C/BE0#~C/BE3#、PAR、FRAME#、IRDY#、STOP#、LOCK#、IDSEL、DEVSEL#、PERR#、SERR#以及RST#管腳接10歐姆的排阻匹配信號(hào),以避免信號(hào)的干擾。
CPCI總線控制器包含一個(gè)上電時(shí)自動(dòng)加載配置信息的串行EEPROM接口,配置芯片選用ATMEL的93LC46B(64×16 bitEEPROM)器件,內(nèi)部具有上電、掉電數(shù)據(jù)保護(hù)電路,可使存儲(chǔ)的數(shù)據(jù)不丟失,采用燒寫串行EEPROM方法,使用芯片燒寫器將數(shù)據(jù)寫入93LC46B,燒寫內(nèi)容為初始化配置參數(shù)以及地址空間信息,包括CPCI配置寄存器參數(shù),生產(chǎn)商ID、器件ID號(hào)、類碼子系統(tǒng)ID號(hào)和子系統(tǒng)生產(chǎn)商ID號(hào)等。
FPGA主要完成對(duì)各接口的邏輯和時(shí)序控制。包括地址譯碼、數(shù)據(jù)鎖存、讀寫時(shí)序控制電路、時(shí)鐘分頻及復(fù)位控制電路,實(shí)現(xiàn)與CPCI高速總線間的數(shù)據(jù)通信。FPGA可迅速而靈活的修改和進(jìn)行資源配置,方便了設(shè)計(jì)人員的配置,減少了邏輯器件,節(jié)省了板卡空間,在FPGA管腳排布上盡量將所有的功能管腳連接到FPGA上,在FPGA內(nèi)部對(duì)不使用的管腳進(jìn)行處理。FPGA芯片選用Altera公司生產(chǎn)的FLEX10K20QC208,該芯片能夠提供20萬門電路,F(xiàn)PGA功能如圖3所示。
圖3 FPGA功能框圖
在FPGA調(diào)試階段,采用JTAG測試口下載FPGA調(diào)試程序,在JTAG配置引腳接上拉1 K歐姆電阻,調(diào)試結(jié)束后,采用燒寫器寫入程序到EPROM芯片,固化FPGA程序,系統(tǒng)啟動(dòng)時(shí)按照時(shí)序自動(dòng)從EPROM中讀取FPGA的配置數(shù)據(jù)。
采用符合GJB 289A-1997《數(shù)字式時(shí)分制指令/響應(yīng)型多路傳輸數(shù)據(jù)總線》規(guī)范的標(biāo)準(zhǔn)1553B總線接口,1553B總線電路一般由總線控制器、總線控制電路、總線供電電路、電阻選址網(wǎng)絡(luò)(可根據(jù)測試需要將總線配置成RT終端模式,通過電阻網(wǎng)絡(luò)配置相應(yīng)遠(yuǎn)置終端)、隔離變壓器電路、總線接插件等部分組成。
1553B總線是一種雙倍冗余總線結(jié)構(gòu),所有的節(jié)點(diǎn)都同時(shí)連結(jié)在兩條總線上,但只有一條總線工作,另一條作為備份,在正常情況下A總線工作,B總線為備份,當(dāng)A總線出現(xiàn)故障的情況下,總線控制器自動(dòng)啟動(dòng)B總線工作[1]。總線控制器內(nèi)部RAM的容量為4K字,設(shè)計(jì)零等待工作方式,軟件需要讀2次完成一次總線RAM或寄存器的操作。與8位CPU芯片連接的總線控制器,將總線控制器的16位數(shù)據(jù)的高8位和低8位分別與CPU的8位數(shù)據(jù)相連,同時(shí)將數(shù)據(jù)寬度模式選擇引腳(16/8/B)接地,設(shè)置總線控制器為8位傳輸模式[2]。CPU的A0地址位接高低位選擇引腳(M/LSB)。這樣,CPU讀寫總線內(nèi)部緩存數(shù)據(jù)時(shí),就可以分別對(duì)總線控制器16位數(shù)據(jù)的高、低數(shù)據(jù)段進(jìn)行操作。8位模式工作方式下,讀取數(shù)據(jù)前總線控制器內(nèi)部對(duì)數(shù)據(jù)進(jìn)行鎖存,鎖存后分別讀取高8位與低8位數(shù)據(jù)。在設(shè)計(jì)時(shí)考慮信號(hào)完整性或者隔離設(shè)計(jì),減少干擾源造成數(shù)據(jù)誤鎖存的問題。
需要注意的是1553B總線控制器芯片一些輸入信號(hào)比較敏感,需作特殊處理。復(fù)位輸入信號(hào)為TTL電平形式,抗干擾能力較差,一個(gè)很窄的毛刺就會(huì)造成芯片復(fù)位,為了減少系統(tǒng)信號(hào)干擾則需要對(duì)該信號(hào)進(jìn)行處理,一般對(duì)地加小容量的電容,減少信號(hào)干擾的風(fēng)險(xiǎn),總線控制器的SELECT、STRBD、MEM/REG、RD/WR信號(hào)比較敏感,為了防止有干擾信號(hào)輸入,需要在輸入端進(jìn)行處理,通過串聯(lián)電阻或者并聯(lián)電容的方式對(duì)線上干擾進(jìn)行濾除,避免振鈴的出現(xiàn),對(duì)于總線控制的長線時(shí)鐘信號(hào)輸入應(yīng)進(jìn)行整形,采用加斯密特觸發(fā)器或者串聯(lián)電阻的方式避免信號(hào)線上振鈴的影響。
鑒于總線消息發(fā)送時(shí)對(duì)模擬供電的需求較大,即發(fā)送消息時(shí)需要的電流變大造成模擬供電電壓下降,總線控制器模擬供電應(yīng)與邏輯供電以及其他數(shù)字電路供電有良好的隔離,采取的做法是在電路設(shè)計(jì)中將模擬供電直接連接到電源輸出端,邏輯供電以及其他數(shù)字電路供電可以通過限流模塊連接到電源輸出,可以有效減少電壓臨界造成的系統(tǒng)不穩(wěn)定情況。以總線接口芯片BU61580為例,接口電路見圖4。
RS-422數(shù)據(jù)信號(hào)采用差分傳輸方式,它使用一對(duì)雙絞線平衡傳輸,有效降低信號(hào)傳輸?shù)母蓴_程度,硬件包含各4路RS-422發(fā)送通道和接收通道,采用點(diǎn)對(duì)點(diǎn)的配置方式,包含4個(gè)差分發(fā)送器和4個(gè)差分接收器。
考慮接收端的隔離保護(hù)和數(shù)據(jù)穩(wěn)定接收,在接收端需要端接電阻和偏置電阻,端接電阻要求其阻值等于傳輸電纜的特性阻抗,端接電阻接在傳輸電纜的最遠(yuǎn)端[3]。偏置電阻的阻值需要根據(jù)端接電阻的阻值設(shè)計(jì),根據(jù)RS-422的通信協(xié)議,每次數(shù)據(jù)傳輸均以低電平開始,因此接收器在發(fā)送器輸出禁止的情況下,應(yīng)保證接收端RX+、RX-之間的電平大于200 mV。為此,需要在RX+、RX-端分別設(shè)置上拉和下拉的偏置電阻。為保護(hù)發(fā)送端不受大電流損傷,在發(fā)送端正負(fù)線上均串聯(lián)隔離電阻。隔離電阻的選取還要考慮與端接電阻阻抗匹配的問題,通常1 KΩ的端接電阻,選取510 Ω左右的隔離保護(hù)電阻。
該電路允許通過CPCI接口進(jìn)行讀寫操作,同時(shí)允許中央控制器對(duì)其進(jìn)行讀寫,完成數(shù)據(jù)的傳輸。選用的雙口RAM芯片為IDT71342,該芯片為4 K字節(jié)雙口RAM,同時(shí)具有8個(gè)地址的SEMPHORE存儲(chǔ)空間,提供獨(dú)立的控制端口,允許異步讀寫訪問,邏輯控制避免同時(shí)讀寫同一地址產(chǎn)生沖突造成數(shù)據(jù)錯(cuò)誤。
數(shù)據(jù)傳輸模塊板卡所有器件均采用單一直流+5 V供電,利用底板CPCI接插件+5 V電源供電,在電源輸入端加電容去耦,保證供電穩(wěn)定性。
為了方便驗(yàn)證模塊工作狀態(tài)及進(jìn)行故障診斷,設(shè)置了FPGA工作狀態(tài)指示燈、CPU工作狀態(tài)指示燈等,并以不同頻度閃爍判定模塊是否正常工作,將晶振分頻后驅(qū)動(dòng)指示燈閃爍。
衛(wèi)星與地面設(shè)備交互系統(tǒng)的應(yīng)用軟件包括上位計(jì)算機(jī)軟件、下位工控機(jī)軟件和數(shù)據(jù)傳輸模塊嵌入式軟件組成。
上位計(jì)算機(jī)應(yīng)用軟件由測試控制、數(shù)據(jù)處理顯示軟件、遙測格式比對(duì)軟件等組成,通過視窗操作界面控制和顯示。
下位工控機(jī)軟件完成與上位機(jī)的網(wǎng)絡(luò)通訊功能,以及控制數(shù)據(jù)傳輸模塊數(shù)據(jù)采集和按照相應(yīng)協(xié)議實(shí)施總線控制、總線監(jiān)聽和總線終端數(shù)據(jù)模擬等功能。工控系統(tǒng)主模塊控制軟件運(yùn)行在VXworks操作系統(tǒng)下,VXworks操作系統(tǒng)主要功能在于提供應(yīng)用軟件所需的各種進(jìn)程調(diào)度原語、進(jìn)程間通信原語和底層硬件驅(qū)動(dòng)程序,工控機(jī)控制軟件工作流程如圖5。
圖5 下位工控機(jī)控制軟件工作流程圖
數(shù)據(jù)傳輸模塊軟件實(shí)現(xiàn)外部數(shù)據(jù)接收并將數(shù)據(jù)分塊存儲(chǔ)于雙口RAM中,下位機(jī)工控軟件定期查詢雙口RAM區(qū)中數(shù)據(jù)狀態(tài),并通過以太網(wǎng)將數(shù)據(jù)傳送至遠(yuǎn)程計(jì)算機(jī),同時(shí)下位機(jī)工控軟件通過CPCI接口向中央控制器發(fā)出復(fù)位、中斷等功能信號(hào),控制數(shù)據(jù)傳輸模塊從設(shè)備工作,數(shù)據(jù)傳輸模塊軟件實(shí)現(xiàn)流程如圖6所示。
應(yīng)用這套測試系統(tǒng)在某深空領(lǐng)域衛(wèi)星的測試環(huán)境中實(shí)現(xiàn)了1553B總線協(xié)議的動(dòng)態(tài)模擬,增強(qiáng)了仿真的靈活性和真實(shí)性,RS-422接口的應(yīng)用使得上下行數(shù)據(jù)及時(shí)更新,是衛(wèi)星狀態(tài)控制的便捷途徑,提高了測試應(yīng)急響應(yīng)時(shí)間,從而保證了測試的安全性,數(shù)據(jù)傳輸實(shí)時(shí)性好,該系統(tǒng)已經(jīng)在多個(gè)衛(wèi)星綜合測試階段及外場試驗(yàn)中長期穩(wěn)定工作。
本文討論了基于CPCI總線的衛(wèi)星和地面設(shè)備交互實(shí)現(xiàn)方法,采用CPCI工控機(jī)作為數(shù)據(jù)傳輸模塊的安裝載體,且工控機(jī)對(duì)環(huán)境適應(yīng)范圍較寬,安全性高,并可適應(yīng)特殊環(huán)境下的長期應(yīng)用;采用標(biāo)準(zhǔn)的模塊板卡使用方便、靈活,便于拆卸和安裝;該數(shù)據(jù)傳輸模塊采用FPGA代替分立元件,采用表貼窄封裝器件等措施減小了印制板面積,節(jié)省了布局空間;采用專用總線接口控制芯片,通用性好,開發(fā)周期短、成本低;同時(shí)根據(jù)用戶使用環(huán)境可靈活定制功能,將監(jiān)視到的數(shù)據(jù)分類存儲(chǔ)和傳輸。該方案選用開放式標(biāo)準(zhǔn)、模塊化設(shè)計(jì),便于維護(hù),可移植性好,該數(shù)據(jù)傳輸方法經(jīng)工程實(shí)現(xiàn)和驗(yàn)證,通過進(jìn)一步的分析和驗(yàn)證,模塊運(yùn)行穩(wěn)定可靠,滿足用戶使用需求,并經(jīng)過多種衛(wèi)星測試系統(tǒng)上推廣應(yīng)用,取得了良好效果。
[1] 史林鋒,王斌永,何志平,等.基于FPGA和BU-65170的1553B遠(yuǎn)程終端設(shè)計(jì)與實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2013,36:(14):65-69.
[2] 郭廷源,牛躍華,王紅光. 基于單片機(jī)的1553B總線數(shù)據(jù)交換設(shè)備設(shè)計(jì)[J].計(jì)算機(jī)測量與控制,2013,21(1):195-196,199.
[3] 牛思先,向 征.基于RS-422/485的串行異步通訊接口設(shè)計(jì)和應(yīng)用[J].計(jì)算機(jī)工程與設(shè)計(jì) 2007,28(10):2472-2474.