該專(zhuān)利屬于計(jì)算機(jī)軟件-系統(tǒng)應(yīng)用軟件領(lǐng)域。
背景技術(shù):
隨著信息技術(shù)在民用航空電子系統(tǒng)中的大量應(yīng)用,為了向飛機(jī)使用者(如飛機(jī)運(yùn)營(yíng)商、飛行員、維護(hù)人員等)提供更多、更便利,更智能的服務(wù),引入了由不同平臺(tái)組成的、由以太網(wǎng)網(wǎng)絡(luò)構(gòu)建的機(jī)載網(wǎng)絡(luò)服務(wù)系統(tǒng),形成一個(gè)空地一體的開(kāi)放的環(huán)境。
信息管理系統(tǒng)為系統(tǒng)與航電系統(tǒng)間提供網(wǎng)絡(luò)連接和管理,也為信息管理系統(tǒng)內(nèi)部設(shè)備提供網(wǎng)絡(luò)連接和管理。信息管理系統(tǒng)能支持飛機(jī)運(yùn)營(yíng)和維護(hù);能通過(guò)電子傳輸功能實(shí)現(xiàn)飛機(jī)系統(tǒng)快速更新;能無(wú)線傳輸各利益相關(guān)方的信息,實(shí)現(xiàn)空地信息的一體化。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的:
本發(fā)明提供一種航電數(shù)據(jù)分發(fā)模型及方法,解決機(jī)載信息管理系統(tǒng)的航電接口模塊與各類(lèi)航電總線間的數(shù)據(jù)接收,以及向系統(tǒng)內(nèi)應(yīng)用軟件的數(shù)據(jù)分發(fā)問(wèn)題。
本發(fā)明的技術(shù)方案:
一種航電數(shù)據(jù)分發(fā)模型,包括:
初始化功能模塊(101)、通信功能模塊(102)、協(xié)議解析功能模塊(103)、協(xié)議組裝功能模塊(104)、訪問(wèn)控制功能模塊(105)、總線處理功能模塊(106)、健康監(jiān)控功能模塊(107);
初始化功能模塊(101):完成對(duì)所有緩沖區(qū)的初始化;完成配置文件的加載和訪問(wèn)控制表的初始化;對(duì)通信功能模塊(102),訪問(wèn)控制功能模塊(105),總線處理功能模塊(106),健康監(jiān)控功能模塊(107)進(jìn)行資源分配及啟動(dòng);
通信功能模塊(102):作為服務(wù)器端接收應(yīng)用軟件的請(qǐng)求報(bào)文,并將所述請(qǐng)求報(bào)文寫(xiě)入請(qǐng)求數(shù)據(jù)緩沖區(qū)中;將協(xié)議組裝功能模塊(104)生成的響應(yīng)報(bào)文發(fā)送給應(yīng)用軟件;被訪問(wèn)控制功能模塊(105)調(diào)用,生成請(qǐng)求報(bào)文的響應(yīng)報(bào)文以及轉(zhuǎn)發(fā)發(fā)布的數(shù)據(jù)報(bào)文;
協(xié)議解析功能模塊(103):從請(qǐng)求數(shù)據(jù)緩沖區(qū)讀取所述請(qǐng)求報(bào)文,對(duì)所述請(qǐng)求報(bào)文解析,并將所解析的信息輸入到訪問(wèn)控制功能模塊(105);
協(xié)議組裝功能模塊(104):被通信功能模塊(102)調(diào)用,用于生成所述請(qǐng)求報(bào)文的響應(yīng)報(bào)文;
訪問(wèn)控制功能模塊(105):接收協(xié)議解析功能模塊(103)解析的信息,所述信息包括請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型和身份認(rèn)證信息;訪問(wèn)控制功能模塊(105)依據(jù)訪問(wèn)控制表和所述身份認(rèn)證信息對(duì)所述請(qǐng)求報(bào)文進(jìn)行身份認(rèn)證;若身份認(rèn)證失敗,則調(diào)用通信功能模塊(102)生成請(qǐng)求報(bào)文的響應(yīng)報(bào)文發(fā)送給應(yīng)用軟件;在身份認(rèn)證通過(guò)的情況下,若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為注冊(cè),則訪問(wèn)控制功能模塊(105)將注冊(cè)信息寫(xiě)入IP-Bus映射表;若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為寫(xiě)入,則訪問(wèn)控制功能模塊(105)將所述請(qǐng)求報(bào)文中的數(shù)據(jù)寫(xiě)入總線寫(xiě)入數(shù)據(jù)緩沖區(qū);若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為發(fā)布,則訪問(wèn)控制功能模塊(105)將從相應(yīng)總線數(shù)據(jù)緩沖區(qū)讀取數(shù)據(jù),并依據(jù)IP-Bus映射表,調(diào)用通信功能模塊(102)向應(yīng)用軟件轉(zhuǎn)發(fā)發(fā)布的數(shù)據(jù)報(bào)文;訪問(wèn)控制功能模塊(105)周期性地讀取總線數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù),并依據(jù)IP-Bus映射表向應(yīng)用軟件發(fā)布數(shù)據(jù);
總線處理功能模塊(106):完成ARINC717數(shù)據(jù)、A429數(shù)據(jù)、RS422數(shù)據(jù)和離散量數(shù)據(jù)的采集和分發(fā);總線處理功能模塊(106)讀取各類(lèi)總線數(shù)據(jù),并將讀到的數(shù)據(jù)放入總線數(shù)據(jù)緩沖區(qū)中;總線處理功能模塊(106)讀取總線寫(xiě)入數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù),并將數(shù)據(jù)寫(xiě)入到相應(yīng)總線中;
健康監(jiān)控功能模塊(107):用于完成對(duì)所有在運(yùn)行模塊的監(jiān)控,對(duì)程序中出現(xiàn)的異常情況進(jìn)行處理,并形成系統(tǒng)的運(yùn)行日志。
訪問(wèn)控制表中的信息由初始化功能模塊(101)加載配置文件時(shí)得到。
一種航電數(shù)據(jù)分發(fā)方法,包括:
步驟1、完成對(duì)所有緩沖區(qū)的初始化;完成配置文件的加載和訪問(wèn)控制表的初始化;初始化功能模塊(101)完成對(duì)通信功能模塊(102),訪問(wèn)控制功能模塊(105),總線處理功能模塊(106),健康監(jiān)控功能模塊(107)的資源分配及啟動(dòng)工作;
步驟2、通信功能模塊(102)接收來(lái)自應(yīng)用軟件的請(qǐng)求報(bào)文,并將所述請(qǐng)求報(bào)文放入請(qǐng)求數(shù)據(jù)緩沖區(qū);
步驟3、協(xié)議解析功能模塊(103)從請(qǐng)求數(shù)據(jù)緩沖區(qū)讀取所述請(qǐng)求報(bào)文,對(duì)所述請(qǐng)求報(bào)文解析,并將所解析的信息輸入到訪問(wèn)控制功能模塊(105);訪問(wèn)控制功能模塊(105)通過(guò)訪問(wèn)控制表和所述身份認(rèn)證信息對(duì)所述請(qǐng)求報(bào)文進(jìn)行身份認(rèn)證;若身份認(rèn)證失敗,則調(diào)用通信功能模塊(102)生成請(qǐng)求報(bào)文的響應(yīng)報(bào)文發(fā)送給應(yīng)用軟件;在所述身份認(rèn)證通過(guò)的情況下,若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為注冊(cè),則訪問(wèn)控制功能模塊(105)將注冊(cè)信息寫(xiě)入IP-Bus映射表;若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為寫(xiě)入,則訪問(wèn)控制功能模塊(105)將所述請(qǐng)求報(bào)文中的數(shù)據(jù)寫(xiě)入總線寫(xiě)入數(shù)據(jù)緩沖區(qū);若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為發(fā)布,則訪問(wèn)控制功能模塊(105)將從相應(yīng)總線數(shù)據(jù)緩沖區(qū)讀取數(shù)據(jù),并依據(jù)IP-Bus映射表,調(diào)用通信功能模塊(102)向應(yīng)用軟件轉(zhuǎn)發(fā)發(fā)布的數(shù)據(jù)報(bào)文;訪問(wèn)控制功能模塊(105)周期性地讀取總線數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù),并依據(jù)IP-Bus映射表向應(yīng)用軟件發(fā)布數(shù)據(jù)。
步驟4、總線處理功能模塊(106)完成ARINC717數(shù)據(jù)、A429數(shù)據(jù)、RS422數(shù)據(jù)和離散量數(shù)據(jù)的采集和分發(fā);總線處理功能模塊(106)讀取各類(lèi)總線數(shù)據(jù),并將讀到的數(shù)據(jù)放入總線數(shù)據(jù)緩沖區(qū)中;總線處理功能模塊(106)讀取總線寫(xiě)入數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù),并將數(shù)據(jù)寫(xiě)入到相應(yīng)總線中;
步驟5、健康監(jiān)控功能模塊(107)持續(xù)監(jiān)聽(tīng)所有正在運(yùn)行的模塊狀態(tài),對(duì)異常的狀態(tài)進(jìn)行處理,并形成系統(tǒng)的運(yùn)行日志。
本發(fā)明具有的優(yōu)點(diǎn)效果:
本設(shè)計(jì)在使用過(guò)程中可以獲取以下有益效果:
1)高可靠性:通過(guò)對(duì)緩沖區(qū)的設(shè)計(jì),以及健康監(jiān)控功能模塊保證了系統(tǒng)的高可靠性。緩沖區(qū)的設(shè)計(jì)很好的平衡了生產(chǎn)者和消費(fèi)者速率不均等的問(wèn)題。健康監(jiān)控功能能夠處理系統(tǒng)的異常,并為系統(tǒng)生成日志信息。
2)安全高效:訪問(wèn)控制機(jī)對(duì)注冊(cè)請(qǐng)求報(bào)文和寫(xiě)入報(bào)文進(jìn)行身份認(rèn)證,不處理無(wú)效的請(qǐng)求。系統(tǒng)采用高并發(fā)模型,更好地提高了CPU的利用率,從而提高了航電接口服務(wù)軟件的高效性。。
3)易于擴(kuò)展:由于本設(shè)計(jì)方法主要從體系架構(gòu)入手設(shè)計(jì),與特定的軟硬件運(yùn)行平臺(tái)無(wú)關(guān),易于擴(kuò)展至其它機(jī)載系統(tǒng)或設(shè)備。
附圖說(shuō)明
圖1為本發(fā)明的整體結(jié)構(gòu)示意圖。
圖2為本發(fā)明的緩沖區(qū)模型示意圖。
圖3為本發(fā)明的訪問(wèn)控制模型示意圖。
圖4為本發(fā)明的IP-Bus映射表示意圖。
具體實(shí)施方式
一種航電數(shù)據(jù)分發(fā)模型,如圖1所示,包括:
初始化功能模塊(101)、通信功能模塊(102)、協(xié)議解析功能模塊(103)、協(xié)議組裝功能模塊(104)、訪問(wèn)控制功能模塊(105)、總線處理功能模塊(106)、健康監(jiān)控功能模塊(107);
初始化功能模塊(101):完成對(duì)所有緩沖區(qū)(緩沖區(qū)的設(shè)計(jì)如圖2所示,該設(shè)計(jì)使得緩沖區(qū)有很好的兼容性以及較高的存取效率)的初始化;完成配置文件的加載和訪問(wèn)控制表的初始化;對(duì)通信功能模塊(102),訪問(wèn)控制功能模塊(105),總線處理功能模塊(106),健康監(jiān)控功能模塊(107)進(jìn)行資源分配及啟動(dòng);
通信功能模塊(102):作為服務(wù)器端接收應(yīng)用軟件的請(qǐng)求報(bào)文,并將所述請(qǐng)求報(bào)文寫(xiě)入請(qǐng)求數(shù)據(jù)緩沖區(qū)中;將協(xié)議組裝功能模塊(104)生成的響應(yīng)報(bào)文發(fā)送給應(yīng)用軟件;被訪問(wèn)控制功能模塊(105)調(diào)用,生成請(qǐng)求報(bào)文的響應(yīng)報(bào)文以及轉(zhuǎn)發(fā)發(fā)布的數(shù)據(jù)報(bào)文;
協(xié)議解析功能模塊(103):從請(qǐng)求數(shù)據(jù)緩沖區(qū)讀取所述請(qǐng)求報(bào)文,對(duì)所述請(qǐng)求報(bào)文解析,并將所解析的信息輸入到訪問(wèn)控制功能模塊(105);
協(xié)議組裝功能模塊(104):被通信功能模塊(102)調(diào)用,用于生成所述請(qǐng)求報(bào)文的響應(yīng)報(bào)文;
訪問(wèn)控制功能模塊(105):接收協(xié)議解析功能模塊(103)解析的信息,所述信息包括請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型和身份認(rèn)證信息;訪問(wèn)控制功能模塊(105)依據(jù)訪問(wèn)控制表(訪問(wèn)控制表中的信息由初始化功能模塊(101)加載配置文件時(shí)得到,其結(jié)構(gòu)設(shè)計(jì)如圖3所示)和所述身份認(rèn)證信息對(duì)所述請(qǐng)求報(bào)文進(jìn)行身份認(rèn)證;若身份認(rèn)證失敗,則調(diào)用通信功能模塊(102)生成請(qǐng)求報(bào)文的響應(yīng)報(bào)文發(fā)送給應(yīng)用軟件;在身份認(rèn)證通過(guò)的情況下,若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為注冊(cè),則訪問(wèn)控制功能模塊(105)將注冊(cè)信息寫(xiě)入IP-Bus映射表(IP-Bus映射表主要用于存儲(chǔ)應(yīng)用軟件的注冊(cè)信息,IP-Bus映射表的設(shè)計(jì)如圖4所示);若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為寫(xiě)入,則訪問(wèn)控制功能模塊(105)將所述請(qǐng)求報(bào)文中的數(shù)據(jù)寫(xiě)入總線寫(xiě)入數(shù)據(jù)緩沖區(qū);若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為發(fā)布,則訪問(wèn)控制功能模塊(105)將從相應(yīng)總線數(shù)據(jù)緩沖區(qū)讀取數(shù)據(jù),并依據(jù)IP-Bus映射表,調(diào)用通信功能模塊(102)向應(yīng)用軟件轉(zhuǎn)發(fā)發(fā)布的數(shù)據(jù)報(bào)文;訪問(wèn)控制功能模塊(105)周期性地讀取總線數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù),并依據(jù)IP-Bus映射表向應(yīng)用軟件發(fā)布數(shù)據(jù);
總線處理功能模塊(106):完成ARINC717數(shù)據(jù)、A429數(shù)據(jù)、RS422數(shù)據(jù)和離散量數(shù)據(jù)的采集和分發(fā);總線處理功能模塊(106)讀取各類(lèi)總線數(shù)據(jù),并將讀到的數(shù)據(jù)放入總線數(shù)據(jù)緩沖區(qū)中(每條總線都有獨(dú)立的總線數(shù)據(jù)緩沖區(qū));總線處理功能模塊(106)讀取總線寫(xiě)入數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù),并將數(shù)據(jù)寫(xiě)入到相應(yīng)總線中;
健康監(jiān)控功能模塊(107):用于完成對(duì)所有在運(yùn)行模塊的監(jiān)控,對(duì)程序中出現(xiàn)的異常情況進(jìn)行處理,并形成系統(tǒng)的運(yùn)行日志。健康監(jiān)控模塊增加了系統(tǒng)的健壯性,可調(diào)試性和可維護(hù)性。
訪問(wèn)控制表中的信息由初始化功能模塊(101)加載配置文件時(shí)得到。
一種航電數(shù)據(jù)分發(fā)方法,如圖1所示,包括:
步驟1、完成對(duì)所有緩沖區(qū)的初始化;完成配置文件的加載和訪問(wèn)控制表的初始化;初始化功能模塊(101)完成對(duì)通信功能模塊(102),訪問(wèn)控制功能模塊(105),總線處理功能模塊(106),健康監(jiān)控功能模塊(107)的資源分配及啟動(dòng)工作;
步驟2、通信功能模塊(102)接收來(lái)自應(yīng)用軟件的請(qǐng)求報(bào)文,并將所述請(qǐng)求報(bào)文放入請(qǐng)求數(shù)據(jù)緩沖區(qū);
步驟3、協(xié)議解析功能模塊(103)從請(qǐng)求數(shù)據(jù)緩沖區(qū)讀取所述請(qǐng)求報(bào)文,對(duì)所述請(qǐng)求報(bào)文解析,并將所解析的信息輸入到訪問(wèn)控制功能模塊(105);訪問(wèn)控制功能模塊(105)通過(guò)訪問(wèn)控制表和所述身份認(rèn)證信息對(duì)所述請(qǐng)求報(bào)文進(jìn)行身份認(rèn)證;若身份認(rèn)證失敗,則調(diào)用通信功能模塊(102)生成請(qǐng)求報(bào)文的響應(yīng)報(bào)文發(fā)送給應(yīng)用軟件;在所述身份認(rèn)證通過(guò)的情況下,若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為注冊(cè),則訪問(wèn)控制功能模塊(105)將注冊(cè)信息寫(xiě)入IP-Bus映射表;若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為寫(xiě)入,則訪問(wèn)控制功能模塊(105)將所述請(qǐng)求報(bào)文中的數(shù)據(jù)寫(xiě)入總線寫(xiě)入數(shù)據(jù)緩沖區(qū);若所述請(qǐng)求報(bào)文的請(qǐng)求類(lèi)型為發(fā)布,則訪問(wèn)控制功能模塊(105)將從相應(yīng)總線數(shù)據(jù)緩沖區(qū)讀取數(shù)據(jù),并依據(jù)IP-Bus映射表,調(diào)用通信功能模塊(102)向應(yīng)用軟件轉(zhuǎn)發(fā)發(fā)布的數(shù)據(jù)報(bào)文;訪問(wèn)控制功能模塊(105)周期性地讀取總線數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù),并依據(jù)IP-Bus映射表向應(yīng)用軟件發(fā)布數(shù)據(jù)。
步驟4、總線處理功能模塊(106)完成ARINC717數(shù)據(jù)、A429數(shù)據(jù)、RS422數(shù)據(jù)和離散量數(shù)據(jù)的采集和分發(fā);總線處理功能模塊(106)讀取各類(lèi)總線數(shù)據(jù),并將讀到的數(shù)據(jù)放入總線數(shù)據(jù)緩沖區(qū)中;總線處理功能模塊(106)讀取總線寫(xiě)入數(shù)據(jù)緩沖區(qū)中的數(shù)據(jù),并將數(shù)據(jù)寫(xiě)入到相應(yīng)總線中;
步驟5、健康監(jiān)控功能模塊(107)持續(xù)監(jiān)聽(tīng)所有正在運(yùn)行的模塊狀態(tài),對(duì)異常的狀態(tài)進(jìn)行處理,并形成系統(tǒng)的運(yùn)行日志。
在MA700信息管理系統(tǒng)航電接口服務(wù)軟件中,采用本方法保護(hù)安全策略檢查規(guī)則數(shù)據(jù)。