• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于實(shí)時操作系統(tǒng)的多核分布式飛行軟件架構(gòu)設(shè)計(jì)

      2023-03-13 02:35:30孫雪嬌劉學(xué)士束韶光
      航天控制 2023年1期
      關(guān)鍵詞:間通信應(yīng)用層實(shí)時性

      孫雪嬌 劉學(xué)士 束韶光

      北京航天自動控制研究所,北京 100854

      0 引言

      隨著末制導(dǎo)技術(shù)、總線技術(shù)、系統(tǒng)冗余技術(shù)的應(yīng)用,控制系統(tǒng)功能的復(fù)雜多變,導(dǎo)致飛行控制系統(tǒng)的軟件規(guī)模日益龐大,傳統(tǒng)單CPU的中斷+控制環(huán)模式無論從性能還是容錯能力方面都已經(jīng)無法滿足現(xiàn)代任務(wù)的需求。隨著飛行控制軟件系統(tǒng)結(jié)構(gòu)越來越復(fù)雜,軟件的復(fù)雜程度也迅速增加。傳統(tǒng)的軟件架構(gòu)已經(jīng)力不從心,尤其在多個控制任務(wù)并發(fā)時,調(diào)度難度增大,難以保證系統(tǒng)可靠性、實(shí)時性要求。

      本文從功能和性能需求出發(fā),提出了一種基于戰(zhàn)星實(shí)時操作系統(tǒng)的多核分布式飛行控制軟件架構(gòu)設(shè)計(jì)方案,以4核DSP為硬件平臺,設(shè)計(jì)了具有高可靠性高實(shí)時性的多核分布式飛行控制軟件架構(gòu),提高了飛行控制系統(tǒng)的處理能力和容錯能力。該飛行控制軟件架構(gòu)開發(fā)維護(hù)方便,擴(kuò)展性和可移植性強(qiáng)。

      1 研究現(xiàn)狀

      無人機(jī)的飛行軟件架構(gòu)發(fā)展較早,美國Cloud Cap公司自主研發(fā)的無人機(jī)的飛行控制系統(tǒng)Piccolo具有很高的靈活性和可靠性,在國內(nèi)外的小型無人機(jī)系統(tǒng)中得到了多次應(yīng)用[1]。加拿大的MicroPilot公司設(shè)計(jì)了一款性能良好、體積小、功耗也低的飛行控制系統(tǒng)MP2028g,該飛行控制系統(tǒng)集成了多種類型的傳感器,已成功應(yīng)用于Snake eye、Helispy等多款小型無人機(jī)[2]。

      歐洲空間局(European Space Agency,ESA)的航天航空開放接口架構(gòu)(Space Avionics Open Interface Architecture,SAVOIR)是在主控單元中基于 CPU 的系統(tǒng)軟件平臺。它構(gòu)成了一個通用軟件執(zhí)行平臺,支持上層應(yīng)用,下層使用不同的接口。應(yīng)用層根據(jù)各自的專業(yè)特征構(gòu)建不同的應(yīng)用模塊。

      美國國家航空航天NASE(National Aeronautics and Space Administration)開發(fā)的CFS(Core Flight Software)是一種基于CPU和操作系統(tǒng)之上,可以獨(dú)立運(yùn)行的飛行軟件架構(gòu),該架構(gòu)可以直接重用,也可根據(jù)需要二次開發(fā)。CFS可以縮短飛行軟件開發(fā)的時間,提高質(zhì)量,減少項(xiàng)目計(jì)劃和費(fèi)用的不確定性,提高軟件重用率,降低工程維護(hù)成本,支持多種跨部門的工具和標(biāo)準(zhǔn),允許多組織的協(xié)同合作。目前CFS架構(gòu)已經(jīng)由戈達(dá)德推廣到NASA所屬的各個航天中心和研究機(jī)構(gòu),以及日本和韓國,應(yīng)用在一些航天任務(wù)中,如月球勘測軌道器、全球降水測量衛(wèi)星任務(wù)等。

      近年來國內(nèi)飛行控制系統(tǒng)領(lǐng)域也取得了較多研究成果。北京航天控制技術(shù)研究所提出了一種基于構(gòu)件的運(yùn)載器控制系統(tǒng)飛行控制軟件架構(gòu)[3],該軟件架構(gòu)采用分層的控制體系及結(jié)構(gòu)模式,能夠有效提高飛行軟件的研制效率及軟件質(zhì)量。重用技術(shù)可以提高軟件的質(zhì)量和可靠性,縮短任務(wù)研制周期,降低成本[4]。為了改善飛行控制軟件傳統(tǒng)的前后臺開發(fā)模式,適應(yīng)“多模式”、“多冗余”的需求,研究多任務(wù)的實(shí)時操作系統(tǒng)成為了重點(diǎn)。

      2 飛行控制軟件需求分析

      2.1 功能需求分析

      飛行控制軟件的主要功能是實(shí)現(xiàn)飛行器在飛行過程中的實(shí)時控制算法,包括:輸入信息的采集、轉(zhuǎn)換、導(dǎo)航、制導(dǎo)、姿控、組合導(dǎo)航及時序控制等功能。飛行控制軟件功能需求越來越復(fù)雜,對飛行控制軟件的各種要求也越來越高,一方面要求飛行控制軟件能夠?qū)崟r采集傳感器和外圍設(shè)備信息,獲取當(dāng)前飛行器的飛行狀態(tài),進(jìn)行制導(dǎo)律和控制解算,并根據(jù)解算結(jié)果實(shí)現(xiàn)點(diǎn)火、轉(zhuǎn)級、關(guān)機(jī)等飛行指令,同時還要求飛行控制軟件能夠?qū)w行狀態(tài)信息和控制信息等數(shù)據(jù)發(fā)送至遙測系統(tǒng)。另一方面要求飛行控制軟件能夠?qū)崿F(xiàn)對多種功能的管理,包括傳感器數(shù)據(jù)信息的綜合管理、故障檢測功能管理等,飛行控制軟件需要對這些功能模塊進(jìn)行統(tǒng)一管理,使其有機(jī)結(jié)合并有序運(yùn)行,保證飛行器能夠高效完成要求的飛行任務(wù)[5]。

      2.2 性能需求分析

      飛行控制軟件高性能和高可靠性是安全完成飛行任務(wù)的重要保障,因此飛行控制軟件的性能應(yīng)滿足如下條件:

      1) 實(shí)時性要求

      實(shí)時性是飛行控制軟件基礎(chǔ)的要求之一,飛行控制軟件中所有任務(wù)都有嚴(yán)格的時間性能指標(biāo)。例如對于執(zhí)行機(jī)構(gòu)輸出延時和控制周期總延時,如果飛行控制軟件實(shí)時性超標(biāo)或較差,可能導(dǎo)致飛行控制系統(tǒng)無法正常工作,甚至可能會造成災(zāi)難性后果[6]。

      飛行控制軟件任務(wù)要求多而雜,既包含多種周期性任務(wù),也包含各類非周期性的任務(wù),對于多個CPU分布運(yùn)行的飛行控制軟件還需要考慮各CPU間的通信任務(wù)。因此為了能夠保障飛行控制軟件的實(shí)時性,需要綜合考慮所有任務(wù)執(zhí)行的時序和要求,合理創(chuàng)建、分配及調(diào)度任務(wù)。

      2) 高內(nèi)聚低耦合要求

      在傳統(tǒng)的飛行控制系統(tǒng)開發(fā)時,劃分的功能模塊之間常有很高的數(shù)據(jù)耦合性,因?yàn)閱蝹€功能模塊的開發(fā)往往需要綜合考慮其他模塊的影響、各個模塊之間的調(diào)度關(guān)系以及各個模塊的安全性,導(dǎo)致軟件開發(fā)時間變長,開發(fā)成本增加,研制效率降低。

      因此有必要降低各個模塊之間的耦合性,使各個功能模塊專注于封裝自己的內(nèi)部屬性。功能模塊之間相互獨(dú)立能夠使飛行控制系統(tǒng)更加安全和可靠。

      3) 可靠性要求

      由于飛行任務(wù)及飛行環(huán)境復(fù)雜多變,飛行過程中的微小不確定因素都有可能造成系統(tǒng)巨大故障,因此必須要求飛行控制系統(tǒng)在出現(xiàn)異常情況時,能夠及時準(zhǔn)確識別故障、處理故障,提高飛行控制軟件容錯性,保證飛行控制軟件完成要求的任務(wù)時不受部分故障的影響,確保飛行器安全可靠飛行。

      4) 可擴(kuò)展性與可維護(hù)性要求

      傳統(tǒng)的飛行控制軟件各個功能模塊的信息交互非常復(fù)雜,擴(kuò)展功能會導(dǎo)致整個系統(tǒng)發(fā)生變化,造成一定的不確定性。

      因此要求飛行控制軟件有良好的可擴(kuò)展性、可維護(hù)性和繼承性,使軟件的設(shè)計(jì)、調(diào)試和維護(hù)更加方便快捷。

      3 飛行控制軟件框架設(shè)計(jì)

      3.1 總體架構(gòu)設(shè)計(jì)

      基于上一節(jié)的功能性能需求分析,本文結(jié)合飛行控制計(jì)算機(jī)硬件平臺,設(shè)計(jì)了基于戰(zhàn)星實(shí)時操作系統(tǒng)的飛行控制軟件設(shè)計(jì)方案。飛行軟件架構(gòu)分為5層,從下到上依次為:操作系統(tǒng)層、硬件接口層、框架層、應(yīng)用層、重用構(gòu)件層,通過各個部分之間協(xié)調(diào)運(yùn)行實(shí)現(xiàn)軟件整體功能。飛行控制軟件架構(gòu)結(jié)構(gòu)圖如圖1所示。

      圖1 飛行控制軟件系統(tǒng)結(jié)構(gòu)圖

      3.2 操作系統(tǒng)層

      操作系統(tǒng)采用戰(zhàn)星實(shí)時操作系統(tǒng),該系統(tǒng)是由北京航天自動控制研究所自主研發(fā)的實(shí)時多任務(wù)操作系統(tǒng),具有以下特點(diǎn):

      1) 多任務(wù)調(diào)度管理,支持可搶占調(diào)度策略,最多可管理256個任務(wù);

      2) 透明通信、時間管理、內(nèi)存管理等功能;

      3) 可裁剪、可定制;

      4) 支持多種處理器。

      戰(zhàn)星實(shí)時操作系統(tǒng)微內(nèi)核完成任務(wù)管理、調(diào)度,任務(wù)間通信、系統(tǒng)時間管理、內(nèi)存管理、SDP核間通信等功能。

      3.2.1 任務(wù)管理

      操作系統(tǒng)實(shí)時內(nèi)核需要滿足飛行控制軟件實(shí)時處理多任務(wù)的需求,因此必須支持多任務(wù)并行管理,并為這些任務(wù)分配??臻g,制定優(yōu)先級,每個任務(wù)提供以下3種狀態(tài):就緒態(tài)、運(yùn)行態(tài)和掛起態(tài),并保證任務(wù)在各狀態(tài)間正確切換。

      操作系統(tǒng)的內(nèi)核負(fù)責(zé)管理各個任務(wù)之間的通信和調(diào)度切換,同時為每個任務(wù)分配相應(yīng)的CPU時間。由于實(shí)時性要求很高,響應(yīng)時間要盡量短,操作系統(tǒng)內(nèi)核采用可剝奪型內(nèi)核,確保最高優(yōu)先級的任務(wù)一旦就緒就可以被調(diào)度運(yùn)行,得到處理器的控制權(quán)。

      用戶可以依據(jù)需求進(jìn)行任務(wù)的創(chuàng)建、刪除、掛起、恢復(fù)和調(diào)度等。

      3.2.2 任務(wù)間通信

      戰(zhàn)星實(shí)時操作系統(tǒng)的任務(wù)間通信功能提供透明的、任務(wù)到任務(wù)的消息傳輸。操作系統(tǒng)將任務(wù)間通信消息封裝成消息塊,包括消息塊的申請、釋放、發(fā)送、接收、入隊(duì)列和出隊(duì)列,以及請求接收任務(wù)答復(fù)、答復(fù)發(fā)送任務(wù)、消息通信任務(wù)掛起、消息通信任務(wù)恢復(fù),任務(wù)間通信流程。如圖2所示。

      圖2 任務(wù)間通信流程圖

      3.2.3 時間管理

      戰(zhàn)星實(shí)時操作系統(tǒng)提供時間管理功能,用于任務(wù)延時、超時判斷、獲取系統(tǒng)執(zhí)行時間等。按照設(shè)定的時鐘節(jié)拍中斷處理函數(shù)實(shí)現(xiàn)了時間管理的相關(guān)功能。其中,時鐘節(jié)拍由特定頻率的硬件定時器產(chǎn)生,中斷頻率一般為10~100 Hz。時鐘中斷頻率如果較高,系統(tǒng)開銷也較大,因此一般根據(jù)應(yīng)用的需要設(shè)置合適的中斷頻率。

      時間管理功能包括:時鐘中斷處理程序、任務(wù)延時、獲取系統(tǒng)時間、改變系統(tǒng)時間等。

      3.2.4 內(nèi)存管理

      戰(zhàn)星實(shí)時操作系統(tǒng)提供內(nèi)存管理功能,包括內(nèi)存分區(qū)管理,新建內(nèi)存分區(qū),內(nèi)存塊的申請、釋放等。

      3.2.5 SDP核間通信

      針對多核處理器,戰(zhàn)星實(shí)時操作系統(tǒng)提供SDP系統(tǒng)服務(wù)用于DSP核間通信。SDP核間通信實(shí)現(xiàn)核間數(shù)據(jù)的交互,通過共享內(nèi)存交互數(shù)據(jù)并同步控制邏輯。共享存儲體用于傳輸數(shù)據(jù),信號燈控制兩個DSP核之間的同步。戰(zhàn)星實(shí)時操作系統(tǒng)將SDP作為一個系統(tǒng)服務(wù)駐于內(nèi)核中。

      核間任務(wù)需要通信時,任務(wù)先將消息發(fā)給SDP服務(wù),SDP服務(wù)將消息寫入對應(yīng)存儲體,置信號燈,然后向目的DSP核發(fā)送中斷,通知其接收消息,目的DSP核響應(yīng)中斷從存儲體讀出消息再發(fā)送給相應(yīng)任務(wù)。

      SDP核間通信功能包括:SDP系統(tǒng)服務(wù)注冊、SDP核間通信全局ID路由,IPC消息接收中斷程序及SDP核間通信系統(tǒng)服務(wù)。

      3.3 硬件接口層

      硬件接口層實(shí)現(xiàn)CPU初始化、定時器使用、開關(guān)量輸入、指令輸出、總線通訊、串口收發(fā)、雙口RAM收發(fā)、DA輸出等功能,根據(jù)不同的需求使能不同的硬件接口模塊。

      3.4 框架層

      框架層一般由主任務(wù)調(diào)度,基于框架進(jìn)行配置項(xiàng)開發(fā),主要完成信息輸入、數(shù)據(jù)處理、測試流程調(diào)度、數(shù)據(jù)輸出等功能。

      框架層連接硬件接口層及應(yīng)用層,它將常用硬件接口的使用方式抽象為“數(shù)據(jù)結(jié)構(gòu)+API函數(shù)”的方式,當(dāng)應(yīng)用層需要與硬件打交道時,它需要定義相應(yīng)的數(shù)據(jù)結(jié)構(gòu),調(diào)用框架的API來通知框架內(nèi)核要做什么,框架內(nèi)核會在確定的時機(jī),根據(jù)應(yīng)用層表達(dá)的需求,完成對硬件的相關(guān)操作。

      3.5 應(yīng)用層

      應(yīng)用層在框架層的基礎(chǔ)上由用戶進(jìn)行相關(guān)應(yīng)用模塊的開發(fā),根據(jù)飛行控制軟件的功能需求、實(shí)時性需求、接口需求劃分多個不同優(yōu)先級的任務(wù)。

      對于可以并行執(zhí)行的任務(wù)采用雙核或多核的分布式方法,多核之間采用SDP通信,核內(nèi)任務(wù)采用IPC消息。用戶只需要關(guān)注任務(wù)的劃分、任務(wù)功能實(shí)現(xiàn)及任務(wù)間的接口。

      應(yīng)用層為用戶根據(jù)不同需求實(shí)現(xiàn)定制化的目標(biāo)功能,具體包括:測試項(xiàng)目的實(shí)現(xiàn)、制導(dǎo)姿控算法的實(shí)現(xiàn)、輸入輸出的調(diào)度、時間管理、健康管理等功能。

      3.6 重用構(gòu)件層

      重用構(gòu)件層由基于功能模塊的重用構(gòu)件組成,用于為應(yīng)用層提供重用服務(wù),重用構(gòu)件是規(guī)模較小、功能較為簡單獨(dú)立的構(gòu)件。在軟件開發(fā)周期的每個階段使用經(jīng)過測試與認(rèn)證過的重用構(gòu)件可以節(jié)省成本、降低風(fēng)險(xiǎn)。

      構(gòu)件層由不同類型的重用構(gòu)件組成,包括數(shù)據(jù)通信類、數(shù)學(xué)運(yùn)算類、通用算法類及制導(dǎo)姿控算法類。

      各個構(gòu)件為相對獨(dú)立的功能模塊,構(gòu)件隱藏了內(nèi)部具體實(shí)現(xiàn),只提供接口函數(shù),可以根據(jù)需求對構(gòu)件進(jìn)行封裝或調(diào)用。

      4 實(shí)例分析

      本文所提出的飛行控制軟件框架適用于多種飛行器軟件,以某飛控制軟件為例,簡述應(yīng)用情況。

      某飛行控制軟件運(yùn)行在4核DSP6713上的兩個核上,其中,甲核運(yùn)行飛控控制軟件信息的采集及處理部分,乙核運(yùn)行飛行控制軟件主控部分,包括總線信息采集、開關(guān)量采集、串口收發(fā)、指令發(fā)送、測試流程處理、制導(dǎo)姿控解算、指令輸出等內(nèi)容,兩個核之間通過SDP核間通信進(jìn)行交互,軟件架構(gòu)如圖3所示。其中:重用構(gòu)件層共使用了21個構(gòu)件,具體如表1所示。

      表1 重用構(gòu)件表

      圖3 某型號飛行控制軟件結(jié)構(gòu)

      采用基于本文提出的基于戰(zhàn)星實(shí)時操作系統(tǒng)的多核分布式飛行控制軟件架構(gòu),兩個核分布式采集數(shù)據(jù)并計(jì)算,采用SDP核間通信進(jìn)行交互,降低了飛行控制軟件的運(yùn)行負(fù)載,提高了性能和可靠性。該軟件架構(gòu)只需要關(guān)注應(yīng)用層開發(fā)及層間接口,支持快速開發(fā)、可移植性強(qiáng)。

      5 結(jié)論

      分析了彈箭上軟件的功能需求和性能需求,除了滿足日益復(fù)雜的功能需求外,還要求飛行控制軟件具有強(qiáng)實(shí)時性,強(qiáng)可靠性,高內(nèi)聚低耦合, 可擴(kuò)展性可維護(hù)性等性能要求?;诠δ芎托阅苄枨蠓治鼋Y(jié)果,提出一種基于戰(zhàn)星實(shí)時操作系統(tǒng)的分層飛行控制軟件架構(gòu),共有5層,從下至上依次為:操作系統(tǒng)層、硬件接口層、框架層、應(yīng)用層和重用構(gòu)件層。

      戰(zhàn)星實(shí)時操作系統(tǒng)的內(nèi)核實(shí)現(xiàn)各個任務(wù)的管理及調(diào)度、任務(wù)間通信、系統(tǒng)時間管理、內(nèi)存管理等。硬件接口層實(shí)現(xiàn)CPU初始化、定時器使用、開關(guān)量輸入、指令輸出、總線通訊、串口收發(fā)等功能,根據(jù)不同的需求使能不同的硬件接口模塊??蚣軐又饕瓿尚畔⑤斎搿?shù)據(jù)處理、測試流程調(diào)度、數(shù)據(jù)輸出等功能。應(yīng)用層在框架層的基礎(chǔ)上由用戶進(jìn)行相關(guān)應(yīng)用模塊的開發(fā),包括項(xiàng)目的實(shí)現(xiàn)、制導(dǎo)姿控算法的實(shí)現(xiàn)、輸入輸出的調(diào)度、時間管理、健康管理等功能。重用構(gòu)件層由基于功能模塊的重用構(gòu)件組成,用于為應(yīng)用層提供重用服務(wù)。構(gòu)件層由不同類型的重用構(gòu)件組成,包括數(shù)據(jù)通信類、數(shù)學(xué)運(yùn)算類、通用算法類及制導(dǎo)姿控算法類構(gòu)件。

      本文所提出的基于戰(zhàn)星實(shí)時操作系統(tǒng)的飛行控制軟件實(shí)時性高、可靠性和安全性高,可移植性強(qiáng),適用于多種飛行器軟件。

      猜你喜歡
      間通信應(yīng)用層實(shí)時性
      細(xì)胞間通信預(yù)測方法研究進(jìn)展
      基于規(guī)則實(shí)時性的端云動態(tài)分配方法研究
      綜合航電分區(qū)間通信元模型設(shè)計(jì)研究
      基于虛擬局域網(wǎng)的智能變電站通信網(wǎng)絡(luò)實(shí)時性仿真
      航空電子AFDX與AVB傳輸實(shí)時性抗干擾對比
      基于分級保護(hù)的OA系統(tǒng)應(yīng)用層訪問控制研究
      新一代雙向互動電力線通信技術(shù)的應(yīng)用層協(xié)議研究
      物聯(lián)網(wǎng)技術(shù)在信息機(jī)房制冷系統(tǒng)中的應(yīng)用
      一種車載Profibus總線系統(tǒng)的實(shí)時性分析
      Current advances in neurotrauma research: diagnosis, neuroprotection, and neurorepair
      六安市| 枣强县| 竹溪县| 襄垣县| 安化县| 福建省| 隆回县| 巍山| 泽普县| 磴口县| 荣成市| 小金县| 井研县| 营口市| 岳西县| 梅州市| 南开区| 城市| 湾仔区| 沙湾县| 天祝| 昭苏县| 新建县| 大庆市| 偏关县| 博野县| 通渭县| 麟游县| 沙坪坝区| 长葛市| 岑溪市| 仁怀市| 潍坊市| 山西省| 灌阳县| 修文县| 嘉荫县| 玉山县| 黔东| 濮阳市| 新干县|