徐曉榮
(中國電子科技集團第三十八研究所 安徽合肥 230088)
隨著雷達功能的不斷增強,雷達的各個子系統(tǒng)的復雜性也不斷提高,發(fā)射機作為雷達系統(tǒng)的重要組成部分,其狀態(tài)的好壞將直接影響系統(tǒng)性能的發(fā)揮[1]。傳統(tǒng)的發(fā)射機顯控系統(tǒng)(單元)功能比較簡單,一般采用小規(guī)模電路并用LED進行開關機、故障狀態(tài)等基本功能的顯示,因此存在較多的缺陷:a.發(fā)射機的各種工作參數(shù)不能實時監(jiān)測;b.歷史信息無法回溯;c.不具備自動檢測和故障診斷。
為解決上述缺陷,本文提出了一種基于微處理器(MCU)的發(fā)射機顯示控制系統(tǒng)的軟硬件設計方法,顯控系統(tǒng)采用具有HMI(Human Machine Interface,HMI)功能的觸摸屏(智能顯示終端)作為輸入輸出作為界面終端,通過人機界面,實現(xiàn)發(fā)射機的開關機操作控制,能夠?qū)崟r顯示發(fā)射機各種工作參數(shù)和運行狀態(tài);采用RS232/422或RJ45接口,通過一定的接口協(xié)議,實現(xiàn)發(fā)射機的遠程控制和參數(shù)的調(diào)整;顯控系統(tǒng)能夠自動監(jiān)測和記錄發(fā)射機的工作過程,通過故障診斷功能,實現(xiàn)故障定位。
行波管發(fā)射機需要監(jiān)測的主要參數(shù)和顯示的工作狀態(tài)見表1所示。
工作參數(shù)主要包括行波管的各級電壓和電流、工作時間、溫度等;工作狀態(tài)包括開關機和故障狀態(tài)等信息。
顯控系統(tǒng)組成主要包括:前端多路A/D、微處理器、實時時鐘、溫度監(jiān)測電路、非易失性存儲器、RS232/422及RJ45接口、電源處理和智能顯示終端等。
表1 監(jiān)測的主要參數(shù)和狀態(tài)
顯控系統(tǒng)的智能顯示終端采用具有HMI功能的觸摸屏實現(xiàn),集智能化、信息化、人性化友好操作于一體的人機界面是系統(tǒng)和用戶之間進行交互和信息交換的媒介。通過HMI,可以完成MCU與操作者之間友好的交互,負責用戶的操作輸入、設備的參數(shù)設定與修改以及在線實時監(jiān)控等[2],是一種使用戶操作簡單、提高效率、維護方便以及服務增值等自動控制最佳解決方案之一。
顯控系統(tǒng)的硬件組成見圖1所示。
圖1 顯控系統(tǒng)硬件組成框圖
為了實現(xiàn)發(fā)射機的遠程控制和數(shù)據(jù)的雙向傳輸,顯控系統(tǒng)通過RS232/422串口或RJ45網(wǎng)絡接口,采用一定的通訊協(xié)議實現(xiàn)與智能終端、發(fā)射機監(jiān)控或者上位機進行通訊;前端A/D采用串行多路模數(shù)轉換器,MCU在系統(tǒng)時鐘的控制下,將送到A/D轉換器的行波管的各級采樣電壓、電流信號分時轉換,并將數(shù)據(jù)進行處理后通過RS232串口發(fā)送到智能顯示終端進行顯示;顯控系統(tǒng)采用非易失性FLASH存儲器記錄、存儲發(fā)射機的工作過程和歷史信息;采用實時時鐘芯片作為系統(tǒng)運行的時鐘;溫度監(jiān)測采用專用的溫度采集芯片。
由于整個程序主要為實現(xiàn)顯示終端進行各種參數(shù)顯示和控制,顯示終端采用具有HMI功能液晶觸摸屏,方便各種參數(shù)輸出顯示和界面切換。
液晶觸摸屏作為人機界面的輸入輸出設備,用戶程序分為兩個部分來進行開發(fā);
·產(chǎn)品算法功能的實現(xiàn),比如數(shù)據(jù)采集、外設控制等,例如A/D、溫度采集、數(shù)據(jù)存儲等;
·人機交互實現(xiàn),借助液晶顯示屏的HMI來完成。
由于液晶顯示屏的HMI只通過串口與用戶程序“溝通”,屬于相對獨立的系統(tǒng),而且HMI處理的是“隨機”事件,而產(chǎn)品算法功能處理的是相對“固定”的事件,所以用戶程序設計可按照下面的架構來安排,提高開發(fā)效率,保證整個程序運行流暢,實現(xiàn)程序可靠運行[3]。
a.采用前后臺程序架構,把應用程序放在前臺,使用查詢、掃描的方式來處理,把和硬件直接打交道的程序,比如串口通信、A/D轉換等程序,放在后臺,用中斷方式處理;
b.前后臺程序通過存儲器(全局變量)來進行數(shù)據(jù)交換;
c.前臺程序通過后臺“消息”來觸發(fā);
d.使用一個定時器產(chǎn)生內(nèi)部時序協(xié)調(diào)不同應用程序;
e.所有應用程序按照功能設計成獨立的子程序,并在前臺程序中處于并行的位置,以方便調(diào)試和移植。
整個程序軟件架構框如下圖2所示。
圖2 顯控系統(tǒng)軟件程序架構
友好的人機界面是功能實現(xiàn)和信息交互的關鍵[4]。由于需要顯示的參數(shù)類別和功能不同,因此為了實現(xiàn)界面的直觀、友好和易于操作,設計時考慮采用多個界面,每個界面顯示某一類功能,通過界面上的軟觸摸按鍵,實現(xiàn)不同界面之間的切換。
根據(jù)前文的分析,行波管發(fā)射機的界面根據(jù)需要可設計為五個主要部分:
◇參數(shù)顯示界面 顯示行波管發(fā)射機工作時的各種電壓、電流、溫度等參數(shù);
◇狀態(tài)顯示界面 顯示行波管發(fā)射機工作的狀態(tài)信息,包括開關機和故障信息;
◇歷史信息界面 顯示發(fā)射機工作過程中發(fā)生的故障(包括故障名稱、發(fā)生的時間等)和發(fā)射機的運行時間等信息;
◇系統(tǒng)設置界面 進行各種參數(shù)的設置,包括時間日期的調(diào)整、開機密碼的設定和修改、發(fā)射機的參數(shù)設定(在本控工作時,可設定發(fā)射機調(diào)制脈沖的工作頻率、工作脈寬等信息);
◇主界面 可進入到其他顯示界面。
每個界面上放置觸摸按鍵,通過按鍵可在不同界面之間實現(xiàn)切換操作,發(fā)射機的界面切換的對應關系如圖3所示。
圖3 發(fā)射機界面及互相切換示意圖
為使顯示界面更為友好,根據(jù)顯示終端的實際尺寸,采用photoshop等軟件繪制出主界面圖形和其他相關界面圖形,并使用相應的HMI開發(fā)工具,將這些圖形下載到顯示終端的存儲區(qū)內(nèi),主程序?qū)⑼ㄟ^串口和HMI進行通訊,根據(jù)命令調(diào)用相應的界面圖形并將各類數(shù)據(jù)和狀態(tài)等信息在界面上進行顯示。圖4是已完成的一個界面圖形,圖5是已完成好的行波管發(fā)射機顯示控制系統(tǒng)的實物。
MCU程序設計采用結構化、系統(tǒng)化的設計方法,編程語言采用C語言,與MCU相關的各個硬件部分的程序設計成獨立的子程序,在主程序內(nèi)可方便調(diào)用。
微處理器(MCU)程序采用中斷的方式完成與行波管發(fā)射機主監(jiān)控以及顯示終端的通訊,控制A/D采樣、采集溫度、控制系統(tǒng)時鐘芯片;并將采集到的數(shù)據(jù)通過串口發(fā)送給顯示終端;將重要的信息(故障發(fā)生情況、工作時間等)存儲在存儲芯片內(nèi)。界面中的軟按鍵將被定義成不能的數(shù)值,用戶通過按鍵切換界面,顯示各種采樣數(shù)據(jù)、發(fā)射機的運行狀態(tài)和故障等信息。
發(fā)射機還可通過RJ45接口通過約定的通訊協(xié)議與其他控制終端進行通訊,實現(xiàn)遙控遙測。
結合顯控的具體功能以及顯示終端的數(shù)據(jù)傳輸,下面給出觸摸屏和MCU通訊的串口中斷函數(shù)和主程序的部分程序。
發(fā)射機顯示控制的接口必須符合雷達系統(tǒng)規(guī)定的內(nèi)部傳輸協(xié)議,包括數(shù)據(jù)傳輸?shù)膬?nèi)容與格式。
為保證數(shù)據(jù)傳輸?shù)恼_性,數(shù)據(jù)編碼采用16進制格式,一幀數(shù)據(jù)8個字節(jié),起始字符為0xAA,第7個字節(jié)為奇偶校驗碼,最后一位為結束符0x0D(見表2所示)。
表2 數(shù)據(jù)編碼格式
CRC=Data[0]^Data[1]^Data[2]^Data[3]^Data[4]^Data[5]
與發(fā)射機主監(jiān)控的通訊采用定時查詢的方式,每隔2s時間查詢一次發(fā)射機的狀態(tài)。發(fā)送查詢碼格式見表3,接收的回碼格式見表4所示。
表3 發(fā)送查詢碼格式
表4 接收到的狀態(tài)故障碼
碼0、1和2不同的BIT位代表發(fā)射機不同的狀態(tài),其含義可根據(jù)需要自行定義。
行波管發(fā)射機中高/低頻電路、高/低壓電路、模擬/數(shù)字電路并存,而且是高密度組裝,電磁環(huán)境復雜,顯控系統(tǒng)中的數(shù)字電路部分易受干擾[5]。因此要保證整個系統(tǒng)能可靠地工作,在設計中須采取一些措施,通過硬件、軟件兩方面的配合使系統(tǒng)達到高可靠性的目的。
a.接口處理 顯控與外界的通訊接口采用光耦進行隔離;供電電源采用隔離的二次電源系統(tǒng)[6];各種取樣信號采用屏蔽雙絞線并在輸入端加濾波電容進行平滑和濾波;
b.接地和屏蔽 顯控系統(tǒng)電路板采取多層布板技術,內(nèi)電層采用大面積接地方法減小阻抗;數(shù)字地和模擬地通過磁環(huán)或磁珠相連,減小互擾;整個系統(tǒng)采用金屬屏蔽盒進行屏蔽,減小空間干擾[7];
c.軟件措施 在程序中采取一些冗余設計,對于條件控制系統(tǒng),將控制條件的一次采樣、處理、控制輸出改為循環(huán)采樣,實時刷新控制輸出;設計軟件看門狗,保證系統(tǒng)中信息存儲、運算和傳輸?shù)母呖煽啃訹8]。
現(xiàn)代雷達發(fā)射機的顯示控制技術正朝著數(shù)字化方向發(fā)展,智能化、可視化、信息化是未來的基本要求,基于MCU的發(fā)射機顯控設計,硬件電路采用系統(tǒng)化設計方法,具有很好的擴展性、可維護性和可重復利用性;軟件設計以C語言編程規(guī)范為依據(jù),使其更加標準化、規(guī)范化和通用化。
[1]王姣,楊峰,梁波.雷達自動檢測系統(tǒng)中的虛擬儀器技術研究[J].彈箭與制導學報,2009,29(6):206-207.
[2]李世偉,鄭萍,邵子惠,劉軍,任芳,任鳳娟.基于HMI與PLC的變頻調(diào)速系統(tǒng)的設計[J].現(xiàn)代電子技術,2008(19):105-106.
[3]迪文科技.迪文HMI用戶軟件開發(fā)指南Ver 3.0.北京迪文科技公司,2011,08.
[4]錢錳,王輝,馮旭東,蔣敏玉.新型雷達發(fā)射機控制臺顯示控制技術的研究[J].電子工程師,2008,34(3):1 -2.
[5]徐曉榮.X波段無人機載SAR發(fā)射機的設計[J].雷達與對抗,2005(4):37-38.
[6]王強,李東芳,榮大偉.CAN總線嵌入式系統(tǒng)在發(fā)射機中的應用[J].現(xiàn)代雷達,2007,29(7):73-74.
[7]榮大偉.真空管雷達發(fā)射機監(jiān)控系統(tǒng)系統(tǒng)化設計[J].火控雷達技術,2011,40(2):64 -65.
[8]吳興純,趙金燕,楊秀蓮,楊燕云.單片機運用系統(tǒng)的軟件抗干擾技術研究與分析[J].電子設計工程,2011,19(16):35 -36.