文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2017.04.019
中文引用格式: 楊建. 一種船用雷達模擬器控制板的設(shè)計與實現(xiàn)[J].電子技術(shù)應(yīng)用,2017,43(4):72-75.
英文引用格式: Yang Jian. Design and implementation of a marine radar simulator control board[J].Application of Electronic Technique,2017,43(4):72-75.
0 引言
船用雷達訓(xùn)練過程中采用的方法一般采用實裝訓(xùn)練、模擬器訓(xùn)練和半實裝訓(xùn)練。實裝訓(xùn)練雷達一般都安裝在實驗室樓頂上端[1],在周圍建筑物影響下,目標回波與真實的海上回波差別很大,針對性不強,并且訓(xùn)練中雷達輻射大量的大功率電磁波,不僅形成資源浪費,且對人體有傷害。模擬器訓(xùn)練可以在不輻射電磁波的情況下較好地提供接近真實雷達的海上回波,但學(xué)生都是用鼠標控制雷達的各種操作,與真實的操作面板差異很大,不利于學(xué)生的操作訓(xùn)練。半實裝訓(xùn)練是采用雷達顯示器真機和取代收發(fā)機的信號發(fā)生器相結(jié)合的方式,避免了天線輻射,但由于信號發(fā)生器存儲容量有限,只能存儲某一岸線和碼頭的回波,雷達回波單一[2],效果并不理想。鑒于以上存在的問題,本文提出一種新的船用雷達訓(xùn)練方式,用與真雷達一樣的操作面板去控制軟件雷達模擬器工作,完成雷達的各種功能訓(xùn)練。軟件模擬器技術(shù)比較成熟,使用中只要設(shè)計合適的接口即可,因此,本文的核心是設(shè)計一款控制軟件雷達模擬器的操作控制板,本板以單片機為核心,結(jié)合A/D采樣器,把按鍵、電位器等功能轉(zhuǎn)化為二進制代碼,通過USB接口與電腦交換數(shù)據(jù)。所以,控制板的硬件和軟件設(shè)計是重點工作。設(shè)計完成的控制板可實現(xiàn)絕大多數(shù)類型的船用雷達操作訓(xùn)練,實現(xiàn)模擬雷達的功能,提供接近真機的操作體驗,具有很好的便攜性,且升級方便。
1 硬件系統(tǒng)設(shè)計
模擬器控制板要能完成雷達操作所需的各種控鈕、按鍵及狀態(tài)顯示標志,并要設(shè)計與計算機通信的硬件電路。
1.1 硬件框圖設(shè)計
船用雷達模擬器控制框圖如圖1所示。電位器電路包括雨雪、海浪、增益和調(diào)諧等電路,由于電位器產(chǎn)生的是連續(xù)的模擬電壓信號,必須經(jīng)過A/D采樣后變換成數(shù)字信號,經(jīng)單片機送給PC完成對模擬器軟件的控制;按鍵電路是雷達相關(guān)功能的開關(guān),使其工作在高低電平,完成相應(yīng)的工作,為了提高接口程序的穩(wěn)定性和降低程序的復(fù)雜度,通過與門電路設(shè)計使按鍵掃描工作在中斷方式;電源主要為單片機、電位器、門電路等各種芯片提供工作電源;晶振作為振蕩元件,給單片機和USB接口芯片提供合適的工作時鐘。
1.2 單片機硬件電路設(shè)計
現(xiàn)在的雷達面板一般有12~21個按鍵、4~6個電位器。因此在對單片機選型時,首先考慮其管腳是否夠用和有無自帶A/D采樣器,其次考慮性價比,因此選取STC12C5A60S2 芯片。它是宏晶公司生產(chǎn)的單時鐘/機器周期(1T)的單片機,是高速/低功耗/超強抗干擾的新一代8051單片機,指令代碼完全兼容傳統(tǒng)8051,但速度快8~12倍。內(nèi)部集成MAX810專用復(fù)位電路、2路PWM、8路高速10位A/D 轉(zhuǎn)換,這些特點保證了面板硬件電路簡單實用。其電路如圖2所示。
單片機電路設(shè)計時,重點注意以下問題:(1)外部晶振頻率的選擇。為了使定時器T1的初值設(shè)置為整數(shù),便于產(chǎn)生USB串口通信精確的波特率,這里選取的晶振頻率為11.059 2 MHz;(2)電源上必須設(shè)置一個開關(guān),為單片機下載程序時使用,原因是STC12C5A60S2必須斷電后重新加電才能把程序下載到單片機內(nèi)部;(3)設(shè)置開機復(fù)位電路,由于單片機內(nèi)部的特殊功能寄存器控制各個功能部件正常工作,因此單片機工作時需要復(fù)位控制,并且只能從外部進行[3];(4)注意把外部0中斷連接到與門終端,用于按鍵掃描控制。為了便于閱讀,本電路端口連接全部使用網(wǎng)絡(luò)標號。
1.3 USB接口電路設(shè)計
USB(Universal Serial Bus)是一種通用的串行總線技術(shù),通過PCI總線和PC的內(nèi)部系統(tǒng)數(shù)據(jù)線連接,實現(xiàn)數(shù)據(jù)的傳送,具有即插即用功能,支持熱插拔[4]。利用STC12C5A60S2上的串行通信引腳TXD和RXD,通過PL2303HX或CH340芯片來實現(xiàn)串口轉(zhuǎn)USB口的電路??紤]性價比及實用性,本文采用Prolific公司推出的串口轉(zhuǎn)USB接口的轉(zhuǎn)換芯片PL2303HX來實現(xiàn)單片機的串口轉(zhuǎn)USB接口的電路。USB接口電路如圖3所示。PL2303HX轉(zhuǎn)換電路并不復(fù)雜,外圍只需幾個電阻和電容就可實現(xiàn)單片機與接PC之間的通信。
從圖3中看出,PL2303HX的TXD和RXD引腳分別與單片機的P3.0和P3.1連接,就可完成單片機串口與USB口的轉(zhuǎn)換,但是注意這兩根線一定要做成差分處理。PL2303HX外部12 MHz晶振為自己提供工作時鐘,外圍兩個電容為起振電容;為了防止信號在端口附近產(chǎn)生反射現(xiàn)象,在D-和D+兩個端口上分別接上一個阻值為27 Ω的終端匹配電阻,D+端接一個1.5 kΩ的上拉電阻,實現(xiàn)枚舉功能。此控制板采用USB直接供電,因此在USB供電輸出端需要C、C15兩個電容對電源濾波處理,發(fā)光二極管D2主要監(jiān)測USB供電是否正常。
1.4 按鍵及電位器電路設(shè)計
按鍵電路的功能是按下相關(guān)鍵后控制PC上模擬器軟件執(zhí)行相應(yīng)的功能,如POWER鍵按下后,模擬器軟件開始執(zhí)行開機的工作,面板出現(xiàn)蜂鳴聲,屏幕上出現(xiàn)倒計時。因此,在鍵按下后,輸出一個低電平給單片機,單片機通過掃描確定POWER鍵按下,然后送給PC一個二進制代碼,如FF0101AA。所以在設(shè)計硬件電路時,要用簡單實用的電路來實現(xiàn)需要的功能。按鍵電路如圖4所示,當S1沒有按下時,POWER端通過上拉電阻接到電源,因此POWER端的電壓為高電平(+5 V),當S1按下時,S1的“1”端和“4”端導(dǎo)通,POWER端接地,輸出為低電平;當S1松開時,“1”和“4”端斷開,POWER端恢復(fù)為高電平。由于單片機采用中斷對按鍵處理,因此POWER端還要通過與門與單片機外部0中斷(INTN0)連接。
電位器電路是控鈕電路,調(diào)整旋鈕產(chǎn)生連續(xù)模擬電壓信號去控制雷達功能的變化。由于單片機不識別模擬信號,因此需要把電壓信號進行采樣控制,為了節(jié)省成本,采用了單片機自帶的A/D采樣器,因此,只需要把變化的電壓送到單片機的P0口就可以了。電路如圖5所示,由于模擬器軟件界面顯示變化一般可達十幾到幾十種,因此,設(shè)計給P0口模擬電壓的大小要按式(1)進行計算:
式中,ADC_CONTR[7:0]代表采樣結(jié)果,Vin代表輸入電壓,Vcc指工作電壓,此處為5 V。考慮到模擬軟件的升級,此處送給P0的電壓控制在0~2 V,即可較好地滿足需求。
其他按鍵電路和電位器電路設(shè)計大致相同,這里就不再重復(fù)。
2 系統(tǒng)軟件設(shè)計
面板要把針對面板的各種操作轉(zhuǎn)換為代碼去控制PC上模擬器軟件工作。因此,面板接口程序不僅要完成單片機與電腦之間的通信,還要完成按鍵掃描程序、ADC采樣等程序的設(shè)計。
2.1 按鍵程序設(shè)計
獨立式按鍵性能穩(wěn)定,單片機上的可用I/O口足夠用,因此采用中斷方式的獨立式按鍵接口電路,任何一個按鍵按下時,都會觸發(fā)外部零中斷,由中斷入口處用一跳轉(zhuǎn)指令進入按鍵查詢子程序,確定具體按鍵號,通過USB串口送代碼給PC。
開始階段要設(shè)置具體的起始地址、中斷入口地址和各種寄存器的初始狀態(tài),然后等待中斷,中斷到來后執(zhí)行查詢和數(shù)據(jù)傳遞等功能,程序流程如圖6所示。
面板按鍵是機械觸點按鍵,在觸點的閉合和斷開瞬間會出現(xiàn)抖動,從而使電信號出現(xiàn)抖動,這可能會導(dǎo)致系統(tǒng)多次執(zhí)行中斷程序,因此按鍵需要消抖處理,按鍵抖動的時間長短與開關(guān)的機械特性有關(guān),一般為5~10 ms[5]。程序設(shè)計時要做2次消抖處理:一是按鍵閉合消抖,當查詢某一按鍵按下時,延時10 ms后,檢查信號是否為低電平,如果為低電平,送32位數(shù)給PC,否則重新掃描;二是按鍵松開消抖,方法同按鍵閉合消抖處理一樣,這里就不再重復(fù)。當POWER鍵按下時傳送給PC的數(shù)據(jù)就是FF3101AAH,F(xiàn)F表示單片機過來的是有效數(shù)據(jù),31表示執(zhí)行的是開關(guān)機功能,01無具體意義,AA代表有效數(shù)據(jù)結(jié)束。其他按鍵按下時傳遞的數(shù)據(jù)都是32位,只是中間的功能代表值有差異。
2.2 ADC采樣程序設(shè)計
利用STC12C5A60S2單片機自帶的采樣速度可達250 kHz的8路A/D轉(zhuǎn)換器,能方便地把模擬電壓信號進行量化,由于只有4個電位器,所以只用了P1.0~P1.3口。在程序設(shè)計時需注意以下幾個問題:一是要用STC單片機擴展的特殊功能寄存器,需要先聲明特殊功能寄存器的地址,如ADC控制寄存器聲明方式:ADC_CONTR EQU 0BCH;二是要按照STC技術(shù)手冊的要求,打開外部模擬通道P1.0~P1.3口,設(shè)置ADC_CONTR寄存器,適當延時,等內(nèi)部電源穩(wěn)定再進行A/D轉(zhuǎn)換。ADC中斷轉(zhuǎn)換軟件程序流程圖如圖7所示。
控制板工作時,ADC每次采樣傳送到PC的數(shù)據(jù)也是32位,如TUNING電位器傳送的數(shù)據(jù)可能是FF0040AAH,F(xiàn)F和AA代表的數(shù)據(jù)和上述相同,00代表的是模擬通道P1.0,40代表的P1.0通道模擬電壓信號的采樣值。
2.3 USB串口通信程序設(shè)計
串口通信主要包括USB串口驅(qū)動程序、串口通信及波特率初始化和發(fā)送數(shù)據(jù)子程序。USB串口驅(qū)動子程序可從Prolific公司網(wǎng)站下載,安裝后直接使用,當單片機系統(tǒng)與PC主機系統(tǒng)通過USB通信線連接起來后,PC將這個USB接口看成是一個COM口(RS232全雙工異步串行通信接口),此端口號是PC自動分派的,不是每臺都一樣,使用時記住串口號即可。
串口通信采用串行口工作方式1的發(fā)送接收方式,通信雙方不需要時鐘同步,發(fā)送方和接收方都有自己的移位脈沖,通過設(shè)置共同的波特率來實現(xiàn)同步。具體步驟為:(1)初始化串口,設(shè)置SCON以及PCON寄存器;(2)初始化寄存器,設(shè)置波特率。匯編程序子程序如下所示。
INIT_UART:MOV TMOD, #20H;設(shè)置定時器/計數(shù)器1,工作于模式2
MOV TH1, #0FAH
MOV TL1, #0FAH;波特率4 800 b/s
SETB TR1; 啟動定時器/計數(shù)器1
MOV PCON, #0;設(shè)SMOD為0
MOV SCON, #40H;設(shè)置串行通信工作于方式1,不允許接收
RET
此程序可根據(jù)實際需求,重置TH1和TL1的數(shù)值更新波特率大小。傳送數(shù)據(jù)子程序設(shè)計流程為:(1)將發(fā)送的數(shù)據(jù)送入串口緩沖寄存器;(2)硬件自動發(fā)送數(shù)據(jù),發(fā)送結(jié)束后,TI置1;(3)軟件對TI進行清零,以發(fā)送下一數(shù)據(jù)。具體程序如下所示:
SEND_DATA: MOV SBUF, A;送A的值到SBUF
JNB TI, $;等數(shù)據(jù)傳送
CLR TI;置TI為零
RET
3 實驗結(jié)果
將制作好的控制板通過串口與電腦進行連接,設(shè)置好波特率,通過串口軟件查看按鍵和電位器傳遞的數(shù)據(jù),結(jié)果與設(shè)計結(jié)果完全一致,證明了設(shè)計的正確性。圖8是通過增益電位器控制雷達屏幕的顯示,很好地控制了軟件模擬器的工作,達到了預(yù)期效果。
4 結(jié)語
通過單片機將雷達面板上的各種模擬操作轉(zhuǎn)換成二進制代碼去控制軟件模擬器工作,具有靈活性大、逼真度高的特點。根據(jù)船用導(dǎo)航雷達操作控制板的特點,本文設(shè)計出了基于STC12C5A60S2單片機的船用雷達操作控制板,并對硬件和軟件設(shè)計進行了詳盡的介紹。本板經(jīng)測試表明性能穩(wěn)定,現(xiàn)已在某一軍用雷達模擬訓(xùn)練器上投入使用,效果良好。
參考文獻
[1] 童雪娟,馮明奎,傅鳳歧.基于單片機的航海雷達信號仿真[J].系統(tǒng)仿真技術(shù),2015(1):52-56.
[2] 尹勇,劉秀文,李志華.采用真雷達顯示器的航海雷達模擬器的關(guān)鍵技術(shù)[J].系統(tǒng)仿真技術(shù),2007(3):1014-1017.
[3] 楊建,鄧志清,高峰.基于FPGA的多功能雷達信號處理板硬件系統(tǒng)設(shè)計[J].艦船電子對抗,2011(12):52-56.
[4] 文治洪,胡文東,李曉京,等.基于PL2303的USB接口設(shè)計[J].電子設(shè)計工程,2010(1):32-34.
[5] 姜志海,黃玉清,劉連鑫.單片機原理及應(yīng)用[M].北京:電子工業(yè)出版社,2013.
作者信息:
楊 建
(解放軍鎮(zhèn)江船艇學(xué)院,江蘇 鎮(zhèn)江212003)