一種基于FPGA的遠(yuǎn)程加電系統(tǒng)設(shè)計與實現(xiàn)
衛(wèi)星發(fā)射基地測控系統(tǒng)在武器試驗及航天器發(fā)射任務(wù)中主要承擔(dān)目標(biāo)跟蹤、測量、控制任務(wù)。隨著近年來試驗任務(wù)呈現(xiàn)常態(tài)化、高密度的態(tài)勢,對測控設(shè)備的遠(yuǎn)程操控能力及信息化方面均提出了更高的要求,眾多學(xué)者也在進(jìn)行相關(guān)研究。文獻(xiàn)論述了我國航天發(fā)射任務(wù)的組織體制和指揮模式,提出了我國航天發(fā)射場組織指揮模式發(fā)展需求。文獻(xiàn)通過加強(qiáng)網(wǎng)絡(luò)硬件建設(shè)、數(shù)據(jù)標(biāo)準(zhǔn)化建設(shè)和數(shù)據(jù)環(huán)境重建,實現(xiàn)了靶場各陣地間信息的互聯(lián)互通。文獻(xiàn)探討了新型遠(yuǎn)程監(jiān)控模式,初步設(shè)計了物理結(jié)構(gòu)、監(jiān)控體制和信息交換方式,文獻(xiàn)分析了新一代測控站遠(yuǎn)程監(jiān)控系統(tǒng)應(yīng)具有的優(yōu)勢及特點,并探討了適合我國國情的測控站遠(yuǎn)程監(jiān)控技術(shù)。
本文引用地址:http://cafeforensic.com/article/201610/308360.htm設(shè)備遠(yuǎn)程加電是實現(xiàn)遠(yuǎn)程操控的基本功能之一。本文主要闡述了集串口收發(fā)、狀態(tài)異常處理、指令代碼處理和時鐘產(chǎn)生功能于一體的加電控制板設(shè)計思路及實現(xiàn)方法,以加電控制板為核心設(shè)計加電控制終端,并由加電控制終端、加電控制單元和加電控制軟件形成了遠(yuǎn)程加電系統(tǒng)。
1 遠(yuǎn)程加電系統(tǒng)設(shè)計思想
遠(yuǎn)程加電系統(tǒng)主要由位于遠(yuǎn)程操控機(jī)房的遠(yuǎn)控計算機(jī)、位于測控設(shè)備機(jī)房內(nèi)的加電主控機(jī)箱及設(shè)備各機(jī)柜端的加電單元組成。在遠(yuǎn)程控制計算機(jī)上運(yùn)行遠(yuǎn)程加電應(yīng)用軟件,遠(yuǎn)程控制計算機(jī)通過網(wǎng)絡(luò)與控制機(jī)箱進(jìn)行命令交互,向控制機(jī)箱發(fā)送加電及斷電指令,并控制加電單元進(jìn)行加斷電動作,同時接收控制機(jī)箱上報的各加電單元的加電狀態(tài)。加電單元繼電器通過控制機(jī)箱24 V輸出電壓控制220 V電源的通斷,從而實現(xiàn)機(jī)柜的加斷電功能。遠(yuǎn)程加電系統(tǒng)的原理如圖1所示。
2 遠(yuǎn)程加電系統(tǒng)設(shè)計與實現(xiàn)
2.1 加/斷電交互協(xié)議設(shè)計
控制板通過專用的RS-232接口芯片經(jīng)NPORT與控制計算機(jī)通信,根據(jù)收到的加斷電指令輸出相應(yīng)的“高、低”電平信號,來控制接口板上的繼電器通斷狀態(tài),使接口板輸出24 V直流信號。接口板主要由繼電器驅(qū)動電路、狀態(tài)檢測接口電路等組成,根據(jù)控制板輸送的控制信號狀態(tài),接通或斷開24 V輸出電壓信號,進(jìn)而控制加電單元的加電狀態(tài),同時根據(jù)加電單元反饋的狀態(tài),轉(zhuǎn)換成控制板可接收處理的電平,并送入控制板處理。
控制計算機(jī)發(fā)出的加/斷電指令PowerONorOFF分為單個加/斷電指令和選擇加/斷電指令。例如“00000001”表示對第1路繼電器進(jìn)行加電;“00001000”表示對第4路繼電器進(jìn)行加電;“00000101”表示連續(xù)對第1路和第3路繼電器進(jìn)行加電;“10001000”表示連續(xù)對第4路和第8路繼電器進(jìn)行加電。一鍵加電/斷電可看做選擇加/斷電的特殊情況,執(zhí)行此命令時控制板將根據(jù)繼電器的地址,由低往高,依次加載指令,每個加載過程之間的相隔時間由控制板來控制,間隔為2 s,共需16 s即可執(zhí)行完畢。
加/斷電操作時首先由控制計算機(jī)軟件按需選擇繼電器,經(jīng)加電軟件產(chǎn)生相應(yīng)的指令代碼C1和C2,其中C1是C2的反代碼。然后分別發(fā)送C1和C2,其之間需要一定的時間間隔。指令代碼C1取反后再發(fā)送的目的是為了提高數(shù)據(jù)傳輸?shù)目煽啃?,避免一些線路上的固定故障??刂瓢褰邮盏街噶詈?,對C1和C2進(jìn)行故障檢驗,若C1是C2的反代碼,則寄存接收指令,更新指令寄存器,否則判定出現(xiàn)異常。在接收指令的同時,控制板將當(dāng)前的繼電器狀態(tài)定時返回至主機(jī),時間間隔為1 s??刂瓢咫娐放c控制計算機(jī)的數(shù)據(jù)交互過程,如圖2所示。
若控制板上報的狀態(tài)與指令狀態(tài)不符,則有3種故障情況:(1)指令接收有錯。(2)指令接收正確,但繼電器加載失敗。(3)指令接收正確,但繼電器加載成功,狀態(tài)上報出現(xiàn)故障。若是第二種故障,則需檢查控制子板與繼電器的運(yùn)行情況。而其他情況,則可通過重新發(fā)送指令進(jìn)行糾正。
2.2 遠(yuǎn)程加電系統(tǒng)控制板設(shè)計
2.2.1 硬件設(shè)計環(huán)境
在對芯片性能充分了解的基礎(chǔ)上,根據(jù)項目的實際需求選定X3CS200芯片進(jìn)行設(shè)計。Xilinx公司生產(chǎn)的Spartan 3系列FPGA性價比高、性能穩(wěn)定,該系列FPGA結(jié)構(gòu)包括可配置邏輯塊、輸入/輸出模塊、BlockRAM模塊、乘法器模塊以及數(shù)字時鐘管理模塊,其可廣泛應(yīng)用于各種電子設(shè)計。Xilinx X3CS200擁有20萬門電路、30 kbit的分布式RAM容量、216 kbil,的Block RAM容量。
設(shè)計中使用的ISE開發(fā)工具為ISE7.1,綜合工具為Synplify/Synplify Pro,利用仿真工具M(jìn)odelsim進(jìn)行行為級仿真和時序仿真、調(diào)試工具為ChipScope Pro。
2.2.2 遠(yuǎn)程加電系統(tǒng)控制板關(guān)鍵模塊設(shè)計
遠(yuǎn)程加電機(jī)箱的核心是加電控制板,加電控制板可分為串口收發(fā)模塊、狀態(tài)異常處理模塊、指令代碼處理模塊、LED顯示模塊、按鍵模塊和時鐘產(chǎn)生模塊,其電路結(jié)構(gòu)如圖3所示。
指令處理模塊主要完成加/斷電指令的識別、延遲和輸出處理等工作。指令輸入Rsin為8 bit,每位對應(yīng)一路繼電器的加/斷電開關(guān),“1”表示加電,“0”表示斷電。
在接收到指令經(jīng)判斷指令無誤后,使能信號CheckRight有效,從最低位開始對指令進(jìn)行掃描加載。首先延遲2 s后,將Rsin(0)輸出到PowerONorOFF(0),然后間隔2 s,輸出Rsin(1)到PowerONorOFF(1),對第二路進(jìn)行加/斷電操作,依此類推,直到8路繼電器的加/斷電操作完成,輸出掃描結(jié)束標(biāo)示位Smark有效,使指令處理模塊回復(fù)等待狀態(tài)后,再將清零掃描結(jié)束標(biāo)示位Smark。指令處理模塊的指令處理流程,如圖4所示。
指令處理模塊電路結(jié)構(gòu)中,LSB表示D寄存器輸出的最低位,MSB表示D寄存器輸出的最高位。圖中省略了D寄存器的時鐘信號和復(fù)位信號的輸入,信號sel由2 s控制器產(chǎn)生,用于D寄存器的使能信號。其中,2 s控制器是該模塊的核心部分,指令處理模塊電路如圖5所示。
2 s控制器的電路結(jié)構(gòu)如圖6所示,該控制器主要包含計數(shù)器和移位寄存器兩部分。計數(shù)器的輸入時鐘為1 kHz,計數(shù)范圍0~1 999。因此,在使能信號Counter有效的情況下,計數(shù)器每隔2 000×0.001=2 s,輸出一個高電平脈沖en2s,脈沖寬度為0.001 s。信號en2s既是清零計數(shù)器,又是使能移位寄存器,且還作為選擇信號,控制寫入移位寄存器的值。移位寄存器包含8個1位寄存器,初始值為00h,Smark=0,信號en2s每產(chǎn)生一個高電平脈沖,移位寄存器即移位一次,并寫入1個1。
從時序圖如圖7所示,當(dāng)移位8次后,移位寄存器的值sel為FFh,信號Smark=1,同時拉低信號counten和checkright,拉高信號Den,在Smark的作用下,移位寄存器依次寫入0,經(jīng)8個周期后,回復(fù)控制器的等待狀態(tài),然后Smark=0。當(dāng)時鐘頻率為1 kHz時,完成一次加/斷電指令的加載,需8×2+8×0.001≈16 s,在這16 s時間內(nèi),指令處理模塊處于忙狀態(tài),不再響應(yīng)其他請求。
2.3 遠(yuǎn)程加電系統(tǒng)軟件設(shè)計
采用Visual C++面向?qū)ο蟮姆椒ㄔO(shè)計了遠(yuǎn)程加電軟件,實現(xiàn)了加電狀態(tài)監(jiān)視和遠(yuǎn)程控制功能。遠(yuǎn)程加電軟件界面循環(huán)刷新并監(jiān)視人機(jī)交互動作,檢測到加電指令后首先判斷對應(yīng)機(jī)柜當(dāng)前的加/斷電狀態(tài)。若已加電則給出了提示信息;若未加電則發(fā)送加電指令在2 s后并檢測加電狀態(tài);若仍處于未加電狀態(tài),則循環(huán)發(fā)送加電指令直至加電成功。斷電指令采取相同的處理策略。
為了避免對設(shè)備進(jìn)行誤動作意外加電或斷電,在加電開關(guān)上部有一個加電使能選擇框,選擇后才能進(jìn)行加電和斷電操作,否則加斷電按鈕不使能。一鍵加斷電命令下達(dá)后由控制板控制對所有分機(jī)依次加斷電操作。遠(yuǎn)程加電控制軟件流程,如圖8所示。
2. 4 系統(tǒng)測試
遠(yuǎn)程加電系實現(xiàn)后對其進(jìn)行了測試,測試環(huán)境溫度為20~22 ℃,相對濕度為50%~54%,每套加電系統(tǒng)的8個加電單元功率負(fù)載均約8 kW。遠(yuǎn)程加電系統(tǒng)每個單元從下達(dá)指令至加電單元執(zhí)行后狀態(tài)上報的最大響應(yīng)時間為2 s,最小響應(yīng)時間為1.5 s,指令響應(yīng)平均時間為1.737 s。故滿足響應(yīng)時間2 s的指標(biāo)要求。
3 結(jié)束語
開發(fā)的基于FPGA航天測控設(shè)備遠(yuǎn)程加電系統(tǒng)設(shè)計緊湊、硬件結(jié)構(gòu)簡單可靠。PC機(jī)軟件采用Visual C++6.0編制,人機(jī)接口友善,且操作方便。因此,本系統(tǒng)具有較強(qiáng)的使用價值,已在部分遙測設(shè)備和光測設(shè)備上得到了應(yīng)用。
評論