劉葉楠,陳超波,張 峰
(西安工業(yè)大學(xué) 電子信息工程學(xué)院,西安710021)
隨著現(xiàn)代軍事科技的不斷發(fā)展,以計(jì)算機(jī)為核心的智能控制系統(tǒng)得到了廣泛的應(yīng)用,各種空中目標(biāo)在不斷的創(chuàng)新, 現(xiàn)代攻擊戰(zhàn)術(shù)可謂日新月異,這些對(duì)現(xiàn)代防空系統(tǒng)提出了更高要求[1];火炮作為中低空防空體系中主要力量, 在新的作戰(zhàn)形式下,需要不斷的改進(jìn),應(yīng)該具有抗惡劣環(huán)境、強(qiáng)實(shí)時(shí)性、高可靠性和高安全性等特點(diǎn)[2];火炮隨動(dòng)系統(tǒng)是典型的伺服系統(tǒng),其動(dòng)態(tài)性能與靜態(tài)性能直接影響了武器系統(tǒng)的作戰(zhàn)能力[3]。因此在通過多方面、多角度的研究、探討與總結(jié),綜合了國(guó)內(nèi)外相應(yīng)控制系統(tǒng)的特點(diǎn)之后,決定采用一種新型的基于CAN 總線的火炮隨動(dòng)系統(tǒng),該系統(tǒng)主要用于完成對(duì)火炮狀態(tài)的檢測(cè)和向炮臺(tái)控制系統(tǒng)下達(dá)操作指令,實(shí)現(xiàn)對(duì)火炮方位和高低的準(zhǔn)確控制以及火炮狀態(tài)的顯示功能[4-5]。
火炮系統(tǒng)控制臺(tái)主要由信號(hào)采集模塊、ARM 處理器模塊、信息存儲(chǔ)模塊、通信模塊、液晶顯示模塊、鍵盤輸入模塊組成。系統(tǒng)通過信號(hào)采集模塊采集火炮狀態(tài)的相關(guān)參數(shù),將采集的信息傳輸?shù)紸RM 處理器模塊,處理后的數(shù)據(jù)一方面通過信息存儲(chǔ)模塊實(shí)現(xiàn)對(duì)數(shù)據(jù)的存儲(chǔ)功能,另一方面通過通信模塊實(shí)現(xiàn)遠(yuǎn)程的信息傳輸和對(duì)火炮狀態(tài)的遠(yuǎn)程監(jiān)控和調(diào)整;液晶顯示模塊主要用來顯示火炮的控制模式、電機(jī)的位置、射速及射擊長(zhǎng)度的設(shè)定值[6-7];鍵盤輸入模塊主要是對(duì)相關(guān)參數(shù)進(jìn)行修改,保證系統(tǒng)最優(yōu)的工作狀態(tài)[8];CAN 總線驅(qū)動(dòng)模塊負(fù)責(zé)單片機(jī)與炮控驅(qū)動(dòng)器的通信,完成數(shù)據(jù)的交換與命令的傳輸[9-10]?;鹋谙到y(tǒng)整體結(jié)構(gòu)如圖1所示。
圖1 火炮系統(tǒng)整體結(jié)構(gòu)框圖Fig.1 Overall structure block diagram of artillery system
核心處理器作為整個(gè)系統(tǒng)控制的核心部分,是整個(gè)火炮控制系統(tǒng)的關(guān)鍵,確定了核心處理器的型號(hào)才能夠?qū)ο到y(tǒng)外圍的電路進(jìn)行設(shè)計(jì)。綜合多方面的考量之后, 為了能夠準(zhǔn)確地控制火炮的方位,本系統(tǒng)選用ARM 處理器作為核心處理器[11]。
ARM 處理器STM32 具有數(shù)據(jù)處理速度快、功耗低和性能高等優(yōu)點(diǎn),本系統(tǒng)選用STM32F103 作為核心處理器。STM32F103 的工作頻率高達(dá)72 MHz,內(nèi)部嵌有中斷控制器, 采用尾鏈的方式進(jìn)行中斷,以達(dá)到降低CPU 周期的問題[12]。
CAN(controller area network)是ISO 國(guó)際標(biāo)準(zhǔn)化的串行通信協(xié)議[13],CAN 控制器工作于多主方式,網(wǎng)絡(luò)中的各節(jié)點(diǎn)都可根據(jù)總線訪問優(yōu)先權(quán)(取決于報(bào)文標(biāo)識(shí)符)采用無損結(jié)構(gòu)的逐位仲裁的方式競(jìng)爭(zhēng)向總線發(fā)送數(shù)據(jù), 且CAN 協(xié)議廢除了站地址編碼,而代之以對(duì)通信數(shù)據(jù)進(jìn)行編碼,這可使不同的節(jié)點(diǎn)同時(shí)接收到相同的數(shù)據(jù),這些特點(diǎn)使得CAN 總線構(gòu)成的網(wǎng)絡(luò)各節(jié)點(diǎn)之間的數(shù)據(jù)通信實(shí)時(shí)性強(qiáng),并且容易構(gòu)成冗余結(jié)構(gòu),提高系統(tǒng)的可靠性和系統(tǒng)的靈活性[14-15]。CAN 具有的完善的通信協(xié)議可由CAN 控制器芯片及其接口芯片來實(shí)現(xiàn),從而大大降低系統(tǒng)開發(fā)難度, 縮短了開發(fā)周期,CAN 總線是具有通信速率高、容易實(shí)現(xiàn)、且性價(jià)比高等諸多特點(diǎn)的一種已形成國(guó)際標(biāo)準(zhǔn)的現(xiàn)場(chǎng)總線。本文基于CAN 總線驅(qū)動(dòng)模塊,采用點(diǎn)對(duì)點(diǎn)的通信模式,負(fù)責(zé)單片機(jī)與炮控驅(qū)動(dòng)器的通信,完成數(shù)據(jù)的交換與命令的傳輸[16]。
處理器電路包括STM32F103 芯片引腳連接和外圍電路設(shè)計(jì), 主要包括位電路,JTAG 接口電路、外部晶振電路、去耦電路圖等。ARM 處理器電路如圖2所示。
圖2 處理器電路圖Fig.2 Processor circuit diagram
芯片的供電引腳19、32、48、64 接3.3 V 電壓。ARM 處理器中的引腳16(PA2)、引腳17(PA3)分別為串行發(fā)送口、 串行接收口,CAN 驅(qū)動(dòng)模塊的串行接收口(P0.09)、串行發(fā)送口(P0.08)。其外圍電路包括JTAG 接口電路、復(fù)位電路、外部晶振電路、去耦電路,如圖3所示。
圖3 處理器外圍電路Fig.3 Processor peripheral circuit
CAN 總線由于采用了許多新技術(shù)及其獨(dú)特的設(shè)計(jì), 與一般的通信總線相比,CAN 總線的數(shù)據(jù)通信具有突出的可靠性、實(shí)時(shí)性和靈活性。為了進(jìn)一步提高系統(tǒng)的抗干擾能力, 在CAN 控制器引腳CANTX、CANRX 和收發(fā)器PCA82C250 之間并不是直接相連,而是通過由高速光耦6N137 構(gòu)成的隔離電路后再與PCA82C250 相連,這樣就可以很好地實(shí)現(xiàn)總線上各節(jié)點(diǎn)的電氣隔離。這部分增加了節(jié)點(diǎn)的復(fù)雜性,但它卻提高了節(jié)點(diǎn)的穩(wěn)定性和安全性。CAN控制器電路如圖4所示。
在STM32F103 與CAN 總線接口部分也采用了一些安全和抗干擾措施,PCA82C250 的CANH 和CANL 引腳各自通過一個(gè)120 Ω 的電阻與CAN 總線相連, 電阻可起到一定的限流作用, 從而保護(hù)PCA82C250 免受過流的沖擊。在CANH 和CANL 與地之間各自接一個(gè)0.1 μF 的小電容,可以起到濾除總線上的高頻干擾和防電磁輻射的作用。
該液晶模塊有8 條數(shù)據(jù)線和3 條控制線。設(shè)計(jì)中選擇用端口P5 作為數(shù)據(jù)線,P4.3 接控制引腳RD,P4.4 接控制引腳WR,P4.5 接控制引腳RS,P4.6 接控制引腳A0。液晶顯示接口電路設(shè)計(jì)如圖5所示。
圖4 CAN 控制器電路Fig.4 CAN controller circuit
信號(hào)采集模塊采集到火炮的相關(guān)信息之后,將采集的信息傳輸?shù)紸RM 處理器,ARM 處理器對(duì)接收的數(shù)據(jù)進(jìn)行相關(guān)處理,處理后的數(shù)據(jù)一方面通過信息存儲(chǔ)模塊實(shí)現(xiàn)對(duì)數(shù)據(jù)的存儲(chǔ)功能,另一方面通過通信模塊實(shí)現(xiàn)遠(yuǎn)距離信息傳輸,最后通過LCD 顯示出來,軟件程序包括主程序、初始化子程序、按鍵掃描子程序、數(shù)據(jù)存儲(chǔ)程序、CAN 通信子程序、顯示子程序。ARM 處理器實(shí)現(xiàn)對(duì)信號(hào)采集模塊采集到的火炮狀態(tài)信息進(jìn)行處理和調(diào)整,顯示子程序的功能是將信號(hào)采集模塊采集到的火炮狀態(tài)信息和調(diào)整結(jié)果顯示在顯示屏上,按鍵子程序設(shè)置PA0 按鍵主要是起到緊急開關(guān)的作用, 當(dāng)出現(xiàn)緊急情況時(shí),可以通過按鍵控制火炮狀態(tài)。
圖5 液晶顯示接口電路設(shè)計(jì)Fig.5 Design of LCD interface circuit
主程序是整個(gè)系統(tǒng)正常工作的核心。主程序工作流程如下:系統(tǒng)開啟之后,主程序調(diào)用初始化子程序,完成對(duì)系統(tǒng)的初始化,完成系統(tǒng)初始化及開啟中斷之后,系統(tǒng)調(diào)用鍵盤掃描子程序,判斷是否有按鍵按下,如果有按鍵按下,系統(tǒng)就可以設(shè)定相應(yīng)的變量值,之后系統(tǒng)按照設(shè)定的值驅(qū)動(dòng)火炮程序和信號(hào)采集程序;如果沒有任何按鍵按下,系統(tǒng)則會(huì)對(duì)之前的數(shù)據(jù)進(jìn)行存儲(chǔ),同時(shí)通過顯示模塊將火炮的相關(guān)信息顯示出來。系統(tǒng)主程序流程如圖6所示。
本系統(tǒng)采用定時(shí)中斷的方式對(duì)按鍵狀態(tài)進(jìn)行查詢。該方式與傳統(tǒng)的方行列掃描方式相比較有明顯的優(yōu)勢(shì),它既可以利用軟件程序進(jìn)行消抖,還能有效的避免了由通信沖突引起的數(shù)據(jù)丟失問題,提高了系統(tǒng)的穩(wěn)定性,極大地節(jié)省了CPU 資源,提高了掃描效率。鍵盤掃描具體流程如圖7所示。
本系統(tǒng)ARM 處理器以CAN 通信的方式與火炮驅(qū)動(dòng)器進(jìn)行數(shù)據(jù)傳輸。當(dāng)開啟中斷之后,ARM 處理器與驅(qū)動(dòng)器建立連接, 系統(tǒng)便可以讀取數(shù)據(jù),并通過串口發(fā)送數(shù)據(jù), 當(dāng)數(shù)據(jù)讀取并發(fā)送結(jié)束之后,系統(tǒng)就會(huì)退出中斷。CAN 通信流程如圖8所示。
圖6 主程序流程Fig.6 Main program flow chart
圖7 鍵盤掃描流程圖Fig.7 Keyboard scanning flow chart
在完成系統(tǒng)整體方案設(shè)計(jì)的基礎(chǔ)之上,根據(jù)系統(tǒng)所搭建的軟硬件平臺(tái),對(duì)所設(shè)計(jì)的火炮隨動(dòng)系統(tǒng)主要從數(shù)據(jù)采集功能,數(shù)據(jù)處理功能及遠(yuǎn)程通信功能這3 個(gè)方面進(jìn)行功能測(cè)試。測(cè)試結(jié)果表明,火炮隨動(dòng)系統(tǒng)不僅可以實(shí)現(xiàn)自檢功能、位置信息的采集與存儲(chǔ)功能,還可以對(duì)火炮進(jìn)行相關(guān)參數(shù)設(shè)置以及對(duì)火炮的控制功能,并且能夠應(yīng)用于實(shí)際的工程項(xiàng)目。
圖8 CAN 通信流程圖Fig.8 CAN communication flow chart
本系統(tǒng)主要是以嵌入式技術(shù)為基礎(chǔ),設(shè)計(jì)了一套火炮隨動(dòng)系統(tǒng)。硬件部分包括信息采集模塊電路、 信息存儲(chǔ)模塊電路、 通信模塊電路、ARM 處理器、LCD 顯示模塊等。軟件部分主要包括主程序、鍵盤掃描子程序、顯示程序等。該系統(tǒng)提高信號(hào)信息采集模塊完成對(duì)火炮狀態(tài)信息的采集, 在ARM 處理器模塊完成對(duì)信息的處理,在LCD 顯示屏顯示相關(guān)信息,并實(shí)現(xiàn)對(duì)火炮狀態(tài)的控制。系統(tǒng)測(cè)試結(jié)果表明:①該系統(tǒng)完成對(duì)火炮狀態(tài)的檢測(cè)和炮臺(tái)控制系統(tǒng)下達(dá)操作指令,實(shí)現(xiàn)對(duì)火炮方位和高低的準(zhǔn)確控制以及火炮狀態(tài)的顯示功能;②基于嵌入式技術(shù)開發(fā)的火炮隨動(dòng)系統(tǒng)具有安全性高、可靠性強(qiáng)和穩(wěn)定性好等特點(diǎn); ③以ARM 處理器作為核心處理器具有處理速度快等優(yōu)點(diǎn)。
本系統(tǒng)以ARM 處理器為平臺(tái)進(jìn)行了系統(tǒng)軟硬件平臺(tái)的搭建,不僅可以實(shí)現(xiàn)自檢功能,位置信息的采集與存儲(chǔ)功能,還可以對(duì)火炮進(jìn)行相關(guān)參數(shù)設(shè)置以及對(duì)火炮的控制功能。系統(tǒng)安全性高、可靠性強(qiáng)。
聲明
最近社會(huì)上有一些機(jī)構(gòu)和個(gè)人,冒充《自動(dòng)化與儀表》編輯部收取文章發(fā)表版面費(fèi),本刊特在此作如下聲明:《自動(dòng)化與儀表》雜志的網(wǎng)站為www.zdhyyb.com,投稿郵箱為zdhyyb@vip.sina.com,其他的網(wǎng)站和郵箱地址,均與本編輯部無關(guān),請(qǐng)作者提高警惕,謹(jǐn)防上當(dāng)!
《自動(dòng)化與儀表》編輯部