• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于ARM的導(dǎo)引頭軟件設(shè)計(jì)研究

    2019-09-10 12:44:52郭家歡
    河南科技 2019年11期
    關(guān)鍵詞:導(dǎo)引頭

    郭家歡

    摘 要:針對導(dǎo)引頭低成本、小型化的要求,本文設(shè)計(jì)了基于ARM單片機(jī)的導(dǎo)引頭軟件設(shè)計(jì)方案,詳細(xì)介紹了軟件各功能模塊劃分、軟件架構(gòu)、軟件執(zhí)行方案以及軟件的可靠性設(shè)計(jì)。結(jié)果表明,該軟件各功能模塊運(yùn)行正常,實(shí)現(xiàn)了復(fù)雜導(dǎo)引頭時(shí)序控制以及信息處理算法,滿足導(dǎo)引頭的各功能和性能要求。

    關(guān)鍵詞:ARM;導(dǎo)引頭;軟件架構(gòu)

    中圖分類號:TJ765.331文獻(xiàn)標(biāo)識碼:A文章編號:1003-5168(2019)11-0034-03

    Abstract: To satisfy the seeker needs of low-cost and small-volume, this paper introduced one designing scheme of software based on ARM, introduced the fuction module constitute、the software architecture、the implementation scheme of software and the reliability design of software. The result of verification shows that the operation of this software is normal, it realizes the complicated arithmetic of seeker sequence and information processing, and satisfy the needs of seeker function and performance.

    Keywords: ARM; seeker ; software architecture

    導(dǎo)引頭通常采用單DSP、多DSP或DSP+FPGA的信息處理平臺,系統(tǒng)結(jié)構(gòu)復(fù)雜、體積大、成本高,無法滿足某些領(lǐng)域低成本、小型化的特殊需求。針對低成本、小型化需求,導(dǎo)引頭設(shè)計(jì)了低成本的信息處理平臺,本文針對該信息處理平臺設(shè)計(jì)了一套導(dǎo)引頭軟件設(shè)計(jì)方案。

    1 系統(tǒng)總體設(shè)計(jì)

    導(dǎo)引頭采用的ARM單片機(jī)為意法半導(dǎo)體公司(ST)生產(chǎn)的基于ARM Cortex-M3系列的STM32F103ZET6,工作主頻為72MHz,內(nèi)置512KB FLASH和64KB RAM,包含3個ADC、2個DAC、12通道DMA控制器、112個快速I/O端口、11個定時(shí)器和13個通信接口。導(dǎo)引頭信息處理平臺接口如圖1所示。導(dǎo)引頭軟件運(yùn)行在ARM單片機(jī)上,與導(dǎo)引頭其他部分配合實(shí)現(xiàn)對目標(biāo)探測、識別、目標(biāo)方位計(jì)算、門限電壓控制以及與外部設(shè)備通信等功能。

    2 軟件架構(gòu)設(shè)計(jì)

    一方面,導(dǎo)引頭軟件接收飛控發(fā)送的控制指令,控制導(dǎo)引頭工作時(shí)序;另一方面,導(dǎo)引頭根據(jù)接收到的探測信號進(jìn)行目標(biāo)識別,采集目標(biāo)信號,計(jì)算目標(biāo)方位信息,并控制門限電壓。根據(jù)導(dǎo)引頭軟件完成主要功能,將導(dǎo)引頭軟件劃分為系統(tǒng)初始化、數(shù)據(jù)通信、信號采集校正、目標(biāo)識別、目標(biāo)方位計(jì)算以及門限控制6個功能模塊,具體功能模塊劃分如圖2所示[1]。

    2.1 系統(tǒng)初始化模塊設(shè)計(jì)

    系統(tǒng)初始化模塊包括單片機(jī)外設(shè)初始化和系統(tǒng)狀態(tài)及變量初始化兩個子模塊。其中,單片機(jī)外設(shè)初始化子模塊主要完成單片機(jī)外設(shè)的初始化配置,包括定時(shí)器、D/A、USART、DMA以及相關(guān)GPIO管腳。

    ①定時(shí)器初始化配置。該配置完成定時(shí)器時(shí)鐘頻率設(shè)置、定時(shí)器計(jì)數(shù)模式設(shè)置、定時(shí)器輸出通道設(shè)置以及定時(shí)器中斷使能設(shè)置。②D/A初始化配置。該配置完成D/A觸發(fā)模式設(shè)置、D/A輸出緩存使能以及D/A轉(zhuǎn)換使能設(shè)置。③USART初始化配置。該配置主要完成串口工作模式、串口波特率、串口數(shù)據(jù)位總數(shù)、數(shù)據(jù)校驗(yàn)位、終止位以及串口中斷使能設(shè)置[2]。④DMA初始化配置。該配置主要包括外設(shè)寄存器地址、數(shù)據(jù)存儲器地址、傳輸?shù)臄?shù)據(jù)量、數(shù)據(jù)傳輸方向、外設(shè)和存儲器的增量模式、外設(shè)和存儲器的數(shù)據(jù)寬度和是否產(chǎn)生中斷以及DMA通道使能。⑤GPIO管腳配置。該配置主要包括GPIO管腳值、GPIO管腳最大輸出速率以及GPIO管腳工作狀態(tài)設(shè)置。

    系統(tǒng)狀態(tài)及變量初始化完成系統(tǒng)時(shí)鐘配置、中斷向量優(yōu)先級設(shè)置、全局變量初始化。系統(tǒng)時(shí)鐘配置包括完成系統(tǒng)嘀嗒時(shí)鐘配置以及單片機(jī)外設(shè)的時(shí)鐘使能設(shè)置。STM32F103ZET6芯片每個中斷向量優(yōu)先級設(shè)置分為占先優(yōu)先級和從優(yōu)先級。高占先優(yōu)先級的中斷可打斷當(dāng)前主程序和低占先優(yōu)先級中斷,即實(shí)現(xiàn)搶占;占先優(yōu)先級相同時(shí),不同從優(yōu)先級中斷同時(shí)到來時(shí),高從優(yōu)先級中斷先被響應(yīng),若存在低從優(yōu)先級中斷正在執(zhí)行,則高從優(yōu)先級中斷需等待執(zhí)行結(jié)束之后才被響應(yīng),即非搶占。導(dǎo)引頭軟件初始化時(shí)根據(jù)實(shí)際需要完成每一個中斷的占先優(yōu)先級和從優(yōu)先級配置[3]。

    2.2 數(shù)據(jù)通信模塊設(shè)計(jì)

    數(shù)據(jù)通信模塊主要通過控制USART端口完成導(dǎo)引頭與外部設(shè)備通信。導(dǎo)引頭接收數(shù)據(jù)采用DMA方式進(jìn)行連續(xù)通信,當(dāng)DMA控制器中指定的傳輸數(shù)據(jù)量完成接收工作時(shí),觸發(fā)DMA中斷。在中斷過程中,判斷接收數(shù)據(jù)是否滿足要求,若滿足要求則進(jìn)行相應(yīng)處理,否則舍棄該幀數(shù)據(jù)。發(fā)送數(shù)據(jù)采用定時(shí)發(fā)送方式,通過設(shè)置定時(shí)器的定時(shí)周期,在定時(shí)器中斷中判斷相應(yīng)串口發(fā)送數(shù)據(jù)寄存器空標(biāo)志位。如果發(fā)送數(shù)據(jù)寄存器為空,則將待發(fā)送的數(shù)據(jù)寫入發(fā)送數(shù)據(jù)寄存器;若發(fā)送數(shù)據(jù)寄存器非空,則判斷軟件是否處理超時(shí),若處理超時(shí),則退出處理。

    2.3 目標(biāo)識別模塊設(shè)計(jì)

    目標(biāo)識別模塊將探測到的信號進(jìn)行存儲、更新,與典型目標(biāo)特征進(jìn)行匹配,滿足匹配要求則捕獲目標(biāo),否則未捕獲目標(biāo),繼續(xù)等待后續(xù)信號到來。目標(biāo)識別時(shí)需要使用定時(shí)時(shí)間長、定時(shí)精度高的高性能定時(shí)器,由于STM32F103ZET6最高時(shí)鐘頻率為72MHz,且定時(shí)器均為16位定時(shí)器,為了實(shí)現(xiàn)長時(shí)間、高精度的定時(shí)需求,目標(biāo)識別模塊采用了使用定時(shí)器1和定時(shí)器2串聯(lián)計(jì),使用兩個16位定時(shí)器實(shí)現(xiàn)32位定時(shí)器的功能。

    2.4 信號采集校正模塊設(shè)計(jì)

    信號采集校正模塊包括A/D時(shí)序控制及信號采集和信號濾波校正兩個子模塊。由于單片機(jī)片上ADC為12位,無法滿足系統(tǒng)目標(biāo)信號采集精度要求,因此,設(shè)計(jì)該系統(tǒng)時(shí)采用了ADC轉(zhuǎn)換芯片。該芯片選用TI公司的ADS8364,引腳可以直接和ARM芯片的I/O相連接。A/D時(shí)序控制及信號采集子模塊通過控制ADS8364轉(zhuǎn)換時(shí)序,采集A/D轉(zhuǎn)換結(jié)果。ADS8364的工作時(shí)序由導(dǎo)引頭軟件控制ARM單片機(jī)相關(guān)GPIO管腳輸出相應(yīng)高低電平實(shí)現(xiàn)[4]。ADS8364的工作時(shí)序如圖3所示。信號濾波校正子模塊首先將采集到的目標(biāo)信號進(jìn)行濾波處理,濾除采集過程中因干擾帶來的信號突變,然后按照信號校正算法對輸入信號進(jìn)行校正處理。

    2.5 目標(biāo)方位計(jì)算模塊設(shè)計(jì)

    捕獲目標(biāo)后,基于ARM的導(dǎo)引頭軟件根據(jù)當(dāng)前周期的目標(biāo)信號,計(jì)算目標(biāo)視線角度,并對計(jì)算目標(biāo)視線角度進(jìn)行輸出校正和歸一化處理。若未捕獲目標(biāo)或捕獲目標(biāo)后又丟失目標(biāo),則輸出預(yù)設(shè)的目標(biāo)視線角度。

    2.6 門限控制模塊設(shè)計(jì)

    捕獲目標(biāo)后,基于ARM的導(dǎo)引頭軟件根據(jù)當(dāng)前周期計(jì)算的目標(biāo)信號能量,預(yù)測下周期目標(biāo)信號能量,控制片上DAC輸出門限電壓,若未捕獲目標(biāo)或捕獲目標(biāo)后又丟失目標(biāo),則控制輸出預(yù)設(shè)的門限電壓。

    3 軟件執(zhí)行方案

    導(dǎo)引頭軟件包含定時(shí)器1和定時(shí)器2中斷,接收數(shù)據(jù)DMA中斷以及外部中斷等多個中斷源??紤]軟件多中斷源的特點(diǎn),軟件采用主調(diào)度/中斷處理形式,以主調(diào)度處理為核心,在主調(diào)度中優(yōu)先級較低,沒有嚴(yán)格執(zhí)行期限處理,當(dāng)中斷到來時(shí),進(jìn)入相應(yīng)中斷服務(wù)程序,完成中斷處理后返回主調(diào)度繼續(xù)執(zhí)行,處理流程如圖4所示[5]。

    導(dǎo)引頭軟件首先進(jìn)行系統(tǒng)初始化,而后進(jìn)入軟件主循環(huán),在主循環(huán)內(nèi)判斷是否捕獲目標(biāo)。若未捕獲目標(biāo),則重新判斷;若捕獲目標(biāo),則采集目標(biāo)信號,對目標(biāo)信號進(jìn)行處理,計(jì)算目標(biāo)方位信號,計(jì)算門限信號,控制輸出門限電壓。目標(biāo)識別功能在中斷處理服務(wù)程序中完成,當(dāng)軟件接收到外部信號中斷時(shí),判斷接收到的信號與目標(biāo)特征是否匹配,若匹配成功則表明捕獲目標(biāo),匹配失敗則等待后續(xù)信號到來。數(shù)據(jù)通信功能在中斷處理服務(wù)程序中完成,當(dāng)軟件接收到的數(shù)據(jù)個數(shù)滿足設(shè)定要求時(shí)則觸發(fā)DMA中斷,并通過定時(shí)中斷的形式向飛控返回導(dǎo)引頭當(dāng)前狀態(tài)。

    4 軟件可靠性設(shè)計(jì)

    導(dǎo)引頭軟件是導(dǎo)引頭的核心組成部分,能否穩(wěn)定可靠地正常工作直接關(guān)系系統(tǒng)任務(wù)能否圓滿完成。因此,設(shè)計(jì)人員在設(shè)計(jì)導(dǎo)引頭軟件時(shí)不僅要實(shí)現(xiàn)軟件功能和性能,還應(yīng)關(guān)心軟件的可靠性和安全性,對系統(tǒng)可能出現(xiàn)的異常情況采取措施,保護(hù)可能影響系統(tǒng)安全的關(guān)鍵模塊。

    為了提高導(dǎo)引頭軟件的可靠性和安全性,設(shè)計(jì)時(shí)采取了如下措施:①采用結(jié)構(gòu)化和模塊化方法進(jìn)行設(shè)計(jì);②降低各單元模塊的復(fù)雜性,保證各個模塊最大內(nèi)聚和最小耦合;③軟件內(nèi)部接口設(shè)計(jì)時(shí)應(yīng)盡量避免使用全局變量,軟件單元模塊之間的數(shù)據(jù)通信盡可能使用參數(shù)傳遞方式;④對軟件中的關(guān)鍵變量進(jìn)行有效性保護(hù),對關(guān)鍵數(shù)組存儲或讀取時(shí)進(jìn)行保護(hù),防止數(shù)組越界;⑤對可能存在的溢出情況設(shè)置防溢出保護(hù);⑥對接收到的串口數(shù)據(jù)進(jìn)行正確性判斷,防止響應(yīng)異常的控制指令;⑦對輸入數(shù)據(jù)進(jìn)行正確性檢查,對超出輸入邊界的數(shù)據(jù)進(jìn)行濾除或限幅等處理。

    5 結(jié)語

    本文基于單一ARM單片機(jī)的硬件結(jié)構(gòu)完成了導(dǎo)引頭軟件的設(shè)計(jì)開發(fā),通過合理設(shè)計(jì),充分利用ARM豐富的硬件資源以及高性能的信息處理能力,實(shí)現(xiàn)復(fù)雜的導(dǎo)引頭時(shí)序控制以及目標(biāo)識別算法等功能。設(shè)計(jì)難點(diǎn)在于多中斷源優(yōu)先級的合理設(shè)計(jì)及各中斷的合理響應(yīng)。通過軟件仿真、軟件測試以及半實(shí)物仿真等手段驗(yàn)證軟件的功能和性能滿足預(yù)期要求,該方案無需協(xié)處理器能夠完成復(fù)雜邏輯以及高實(shí)時(shí)性的導(dǎo)引頭軟件設(shè)計(jì),對后續(xù)低成本小型化導(dǎo)引頭軟件設(shè)計(jì)具有重要的借鑒意義。

    參考文獻(xiàn):

    [1]廖洪波,朱文亮,王永宏,等.光電伺服控制軟件調(diào)試工具頂層框架設(shè)計(jì)與應(yīng)用[J].航空兵器,2014(1):57-60.

    [2]陳艷華.基于ARM的嵌入式系統(tǒng)開發(fā)與實(shí)例[M].北京:人民郵電出版社,2008.

    [3]宋巖.ARM Cortex-M3權(quán)威指南[M].北京:北京航空航天大學(xué)出版社,2009.

    [4]王霞,李淑民,裴培,等.基于ADS8364的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2009(7):95-97.

    [5]王明惠,朱光宇,汪慧敏,等.基于PowerPC的飛控軟件設(shè)計(jì)實(shí)現(xiàn)及驗(yàn)證[J].航空兵器,2013(4):54-57.

    猜你喜歡
    導(dǎo)引頭
    全極化雷達(dá)導(dǎo)引頭抗干擾技術(shù)
    HPRF-PD導(dǎo)引頭拖曳式誘餌干擾的檢測和識別算法研究
    半捷聯(lián)雷達(dá)導(dǎo)引頭視線角速度提取
    靈巧噪聲干擾對主動雷達(dá)導(dǎo)引頭干擾效能評估
    一種捷聯(lián)式圖像導(dǎo)引頭的解耦算法
    毫米波導(dǎo)引頭預(yù)定回路改進(jìn)單神經(jīng)元控制
    阿拉善左旗| 米脂县| 沙田区| 广宁县| 凤阳县| 南汇区| 墨玉县| 延长县| 滕州市| 东莞市| 浮梁县| 武安市| 湘阴县| 汉阴县| 枣强县| 萨嘎县| 区。| 溧阳市| 沁源县| 和静县| 宣恩县| 清涧县| 同心县| 阳城县| 望都县| 盘山县| 湖北省| 敦化市| 玉林市| 宝丰县| 岳普湖县| 鞍山市| 资兴市| 迁安市| 巩留县| 通辽市| 共和县| 大邑县| 平顶山市| 齐齐哈尔市| 富民县|