一種多顯控數(shù)據(jù)同步方法及一種航空顯示控制系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種多顯控數(shù)據(jù)同步方法和具有數(shù)據(jù)同步功能的航空顯示控制系統(tǒng),方法包括多個顯控設備數(shù)據(jù)同步步驟:使座艙顯示系統(tǒng)中所有顯控設備公用一組ARINC661層和各層下所有的ARINC661控件。系統(tǒng)的座艙顯示系統(tǒng)中具有公用層組和公用控件庫,座艙顯示系統(tǒng)中所有顯控設備均掛載該公用層組和公用控件庫,公用層組包括多個公用層構成,公用控件庫由各公用層下的公用控件構成;在用戶程序中僅保留公用層數(shù)據(jù)和公用控件數(shù)據(jù)。本發(fā)明實現(xiàn)了多個顯控設備間和同一顯控設備內多個顯示窗口間的數(shù)據(jù)同步,并且支持顯控設備的靈活調整。
【專利說明】
一種多顯控數(shù)據(jù)同步方法及一種航空顯示控制系統(tǒng)
技術領域
[0001]本發(fā)明涉及一種航空顯控技術,具體涉及一種多顯控數(shù)據(jù)同步方法及一種航空顯示控制系統(tǒng)。
【背景技術】
[0002]隨著電子技術的快速發(fā)展,航電系統(tǒng)中重要組成部分的航空座艙顯示系統(tǒng)的綜合化程度和人機交互的需求越來越高,ARINC 661規(guī)范的出現(xiàn),更是推動了飛機座艙顯示系統(tǒng)的標準化和智能化,目前ARINC 661規(guī)范已經(jīng)應用于4380^4001^350、波音787等機型。該規(guī)范將UA (User Applicat1ns,用戶程序)的邏輯應用功能與CDS (CockpitDisplay System,座艙顯示系統(tǒng))的顯示控制功能相隔離,并為兩者提供了標準化的接
□ O
[0003]基于ARINC661的座艙顯控系統(tǒng),其CDS顯控設備內置的服務軟件具有很好的通用性和擴展性。在開發(fā)階段,設計人員只需根據(jù)飛行員操作手冊,設計DF (Definit1nFile,定義文件)和對應的UA邏輯,即可實現(xiàn)對畫面的控制和管理,大大縮短了開發(fā)周期,節(jié)約開發(fā)成本,具有重要意義。
[0004]交互式機艙架構的⑶S與用戶程序駐留系統(tǒng)之間通過航電總線(A664/A429)連接,數(shù)據(jù)鏈應用中消息由顯示界面?zhèn)鬟f到UA再經(jīng)過通信管理單元(CMU)處理后由電臺發(fā)送到地面處理基站處理。考慮到駕駛艙主副駕駛員應用場景,實際應用中常采用多個UA控制多個顯控設備的架構設計,即座艙顯示系統(tǒng)包含多個顯控設備,每個顯控設備中駐留ARINC661顯不控制服務應用,UA常駐留在IMA( Integrated Modular Architecture,集成模塊架構)平臺中,UA與駐留在顯控設備中的服務應用之間使用ARINC661規(guī)范進行數(shù)據(jù)交互,圖1給出了典型的交互式機艙架構邏輯框圖。
[0005]在上述多顯控應用的場景下,一般采用固定鏈路配置和源數(shù)據(jù)復制技術,這種設計方案存在如下缺點:
1、設計復雜,需要設計多個顯控設備控件參數(shù)之間的數(shù)據(jù)實時同步;
2、需要設計單個顯控設備內多個顯示窗口之間的數(shù)據(jù)實時同步。
【發(fā)明內容】
[0006]本發(fā)明的目的在于解決基于ARINC661規(guī)范的座艙顯控系統(tǒng)在多顯控應用下的數(shù)據(jù)同步復雜、靈活性差的問題,提供一種多顯控數(shù)據(jù)同步方法,實現(xiàn)多個顯控設備數(shù)據(jù)同步,并且支持顯控設備的靈活調整。本發(fā)明還提供了一種具有數(shù)據(jù)同步功能的航空顯示控制系統(tǒng)。
[0007]本發(fā)明通過下述技術方案實現(xiàn):
一種多顯控數(shù)據(jù)同步方法,包括基于ARINC661規(guī)范的多個顯控設備之間的數(shù)據(jù)同步步驟:使座艙顯示系統(tǒng)中所有顯控設備公用一組ARINC661層和各層下所有的ARINC661控件。現(xiàn)有技術中,每個顯控設備都需要創(chuàng)建一個層,每個層再掛載多個控件,要實現(xiàn)數(shù)據(jù)同步,任意一個顯控設備中的控件數(shù)據(jù)發(fā)生變化時,要進行數(shù)據(jù)更新,其他顯控設備的層都需要從發(fā)生變化的控件拷貝數(shù)據(jù)更新自身的數(shù)據(jù),設計難度大,而且更新時間慢。本技術方案中,所有的顯控設備公用一組ARINC661層和各層下所有的ARINC661控件,在用戶程序中保留一份層數(shù)據(jù)和控件數(shù)據(jù),當一個顯控設備的控件數(shù)據(jù)發(fā)生改變時,其它顯控設備上的同一個控件或者同一個顯控設備上不同窗口下同一控件數(shù)據(jù)都會得到實時更新。不需要在各個顯控設備的控件之間進行數(shù)據(jù)拷貝就能很容易地實現(xiàn)同步,設計簡單,更新速度快。
[0008]作為本發(fā)明的進一步改進,所述使座艙顯示系統(tǒng)中所有顯控設備公用一組ARINC661層和各層下所有的ARINC661控件具體包括以下步驟:
步驟S1、任意選擇一個顯控設備作為公用顯控設備,為該公用顯控設備創(chuàng)建一組ARINC661層,為各ARINC661層創(chuàng)建一組ARINC661控件,并將該公用顯控設備的所有ARINC661層作為公用層組,將各ARINC661層下的ARINC661控件作為各公用層對應的公用控件,所有公用控件構成公用控件庫;
步驟S2、將其余顯控設備掛載公用層組和公用控件庫;
步驟S3、在UA中僅保留公用層數(shù)據(jù)和公用控件數(shù)據(jù),且將所有公用層封裝為一個層數(shù)據(jù)單向鏈表,該層數(shù)據(jù)單向鏈表中各節(jié)點的順序與公用層組中各公用層的順序一致;每個公用層下的所有公用控件也被封裝成一個控件數(shù)據(jù)單向鏈表,控件數(shù)據(jù)單向鏈表中的節(jié)點順序與對應的公用層的層下的公用控件順序一致。
[0009]進一步,步驟S2的具體實現(xiàn)方法如下:
步驟S21、在UA中為其余顯控設備各創(chuàng)建一條鏈路;
步驟S22、將所有公用層及各公用層對應的公用控件掛載到步驟S21創(chuàng)建的鏈路上。
[0010]作為本發(fā)明的又一改進,上述一種多顯控數(shù)據(jù)同步方法還包括同一顯控設備不同窗口數(shù)據(jù)同步步驟,具體包括以下步驟:
步驟1、為需要顯示K個窗口的顯控設備新增K-1個輔助管理鏈表,K為不小于2的自然數(shù),輔助管理鏈表中每個節(jié)點對應一個公用層;
步驟2、根據(jù)公用層和公用控件的對應關系,將公用控件以單向鏈表形式掛載到輔助管理鏈表上。本方案實現(xiàn)了當一個顯控設備上控件數(shù)據(jù)發(fā)生改變時,同一個顯控設備上不同窗口下同一功能控件數(shù)據(jù)都會得到實時更新,不需要在不同窗口的控件之間進行數(shù)據(jù)拷貝實現(xiàn)同步,數(shù)據(jù)同步更加簡單快速。此外,能夠自適應地增加顯控設備或者窗口以進行多顯控設備的顯示配置,無需更改應用程序,無需做適航認證,更加靈活。
[0011]作為本發(fā)明的再一改進,上述一種多顯控數(shù)據(jù)同步方法還包括顯示界面獨立控制步驟,具體如下:
步驟(I):每個用戶程序內置顯示控制狀態(tài)機,顯示控制狀態(tài)機的個數(shù)為M,M為設定的窗口最大支持數(shù)量;
步驟(2):用戶程序收到觸發(fā)事件信息時對觸發(fā)事件信息進行解析,判斷觸發(fā)事件信息控制的顯控設備、窗口和ARINC661控件;判斷結束后掛載相應窗口下的顯示控制狀態(tài)機;步驟(3):在用戶程序控制下,顯示控制狀態(tài)機根據(jù)觸發(fā)事件信息修改ARINC661控件屬性來控制每一個窗口界面的顯示。
[0012]進一步,所述觸發(fā)事件信息包括事件的鏈路信息、事件所處的ARINC661層信息、控制的ARINC661控件和事件內容,判斷觸發(fā)信息控制的顯控設備和窗口的方法為具體為:根據(jù)事件的鏈路信息確定顯控設備及其窗口;根據(jù)事件所屬的ARINC661層信息和控制的ARINC661控件確定修改的控件。
[0013]一種航空顯示控制系統(tǒng),包括通過航電總線相連的座艙顯示系統(tǒng)和用戶程序駐留系統(tǒng),所述座艙顯示系統(tǒng)包括多個顯控設備,每個顯控設備中駐留有一個服務應用,所述用戶程序駐留系統(tǒng)包括多個用戶程序,所述用戶程序與顯控設備的服務應用之間進行數(shù)據(jù)交互,座艙顯示系統(tǒng)中具有公用層組和公用控件庫,座艙顯示系統(tǒng)中所有顯控設備均掛載該公用層組和公用控件庫,公用層組包括多個公用層,公用控件庫由各公用層下的公用控件構成;在用戶程序中僅保留公用層數(shù)據(jù)和公用控件數(shù)據(jù)。
[0014]進一步,所述用戶程序中設置有層數(shù)據(jù)鏈表和控件數(shù)據(jù)鏈表,所述層數(shù)據(jù)鏈表為由所有公用層封裝成的單向鏈表;所述控件數(shù)據(jù)鏈表也為單向鏈表,每個控件數(shù)據(jù)鏈表對應一個公用層,每個控件數(shù)據(jù)鏈表由其對應的公用層下的所有公用控件封裝而成;在座艙顯示系統(tǒng)中,需要顯示K個窗口的顯控設備還設置有K-1個輔助管理鏈表,K為不小于2的自然數(shù);輔助管理鏈表中每個節(jié)點對應一個公用層,每個節(jié)點下還具有與其對應的公用層對應的控件數(shù)據(jù)鏈表。
[0015]進一步,每個用戶程序還內置有顯示控制狀態(tài)機,顯示控制狀態(tài)機的個數(shù)為M,M為設定的窗口最大支持數(shù)量。
[0016]優(yōu)選的,M的值為2。
[0017]本發(fā)明與現(xiàn)有技術相比,具有如下的優(yōu)點和有益效果:
1、本發(fā)明在保持窗口獨立性的同時在層(layer)、控件(widget)層面進行數(shù)據(jù)公用,當一個顯控設備上控件數(shù)據(jù)發(fā)生改變時,其它顯控設備上的同一個控件或者同一個顯控設備上不同窗口下同一功能控件數(shù)據(jù)都會得到實時更新,不需要在各個顯控設備的控件之間進行數(shù)據(jù)拷貝實現(xiàn)同步。
[0018]2、本發(fā)明能夠自適應多做顯控設備的顯示配置場景,無需更改應用程序,無需做適航認證,更加靈活。
【附圖說明】
[0019]此處所說明的附圖用來提供對本發(fā)明實施例的進一步理解,構成本申請的一部分,并不構成對本發(fā)明實施例的限定。在附圖中:
圖1為現(xiàn)有技術中的航空顯示控制系統(tǒng)的結構框圖。
[0020]圖2為本發(fā)明中的座艙顯示系統(tǒng)的結構框圖。
[0021]圖3是實施例2中需要顯示多個窗口的顯控設備的層和控件連接圖。
【具體實施方式】
[0022]為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚明白,下面結合實施例和附圖,對本發(fā)明作進一步的詳細說明,本發(fā)明的示意性實施方式及其說明僅用于解釋本發(fā)明,并不作為對本發(fā)明的限定。
[0023]實施例1:
現(xiàn)有技術中航空顯示控制系統(tǒng)的結構如圖1所示,包括頂A和⑶S,⑶S包括多個顯控設備(圖1中的IDU 1-1DU N,以下的IDU就是指顯控設備,IDU O為第I個顯控設備,IDU I為第2個顯控設備,依此類推,IDU N是指第N+1個顯控設備),UA駐留在MA中,每個顯控設備控制至少I個窗口的顯示,圖1中IDU O具有I個窗口,IDU I具有E個窗口,IDU N具有2個顯示窗口?,F(xiàn)有技術中航空顯示控制系統(tǒng)的物理架構上采用IMA + IDU( Integrated DisplayUnit集成顯示單元)架構,其中用戶程序(UA)的邏輯應用駐留在頂A中(圖1中MA中具有3個用戶程序UA1-UA3),顯示控制駐留在多個IDU中,每個IDU中駐留有服務應用(A661server) JMA與IDU之間采用AFDX或者ARINC429航電總線進行連接,UA與各IDU的服務應用之間基于ARINC661規(guī)范進行通信。
[0024]現(xiàn)有技術中,每個顯控設備都需要創(chuàng)建一個層(layer),每個層再掛載多個控件(widget),要實現(xiàn)數(shù)據(jù)同步,任意一個顯控設備中的控件數(shù)據(jù)發(fā)生變化時,要進行數(shù)據(jù)更新,其他顯控設備的層都需要從發(fā)生變化的控件拷貝數(shù)據(jù)更新自身的數(shù)據(jù),設計難度大,而且更新時間慢,還會存在中間一段時間數(shù)據(jù)不同步導致出現(xiàn)競爭條件的問題。
[0025]為了解決上述問題,本實施例中的一種航空顯示控制系統(tǒng)其物理架構同現(xiàn)有技術,包括通過航電總線相連的座艙顯示系統(tǒng)和用戶程序駐留系統(tǒng),本實施例中,用戶程序駐留系統(tǒng)即頂A。所述座艙顯示系統(tǒng)包括多個顯控設備(IDU),每個顯控設備中駐留有一個服務應用(A661 server),所述用戶程序駐留系統(tǒng)包括多個用戶程序(UA),多個IDU之間物理獨立,通過AFDX或者ARINC429與駐留在IMA中的UA完成物理鏈接,實現(xiàn)用戶程序與顯控設備的服務應用之間進行數(shù)據(jù)交互。
[0026]如圖2所示,不同于現(xiàn)有技術,本實施例的座艙顯示系統(tǒng)中具有公用層組和公用控件庫,公用層組包括多個公用層,公用控件庫由各公用層下的公用控件構成;座艙顯示系統(tǒng)中所有顯控設備均掛載該公用層組和公用控件庫,在用戶程序中僅保留公用層數(shù)據(jù)和公用控件數(shù)據(jù)。由于本申請中UA與各IDU的服務應用之間基于ARINC661規(guī)范進行通信,因此以下對IDU的層稱為ARINC661層,對IDU的控件稱為ARINC661控件。
[0027]圖2中,共有IDU O-1DU N共N+1個顯控設備,這N+1個設備公用J+1個公用層,這N+1
個公用層分別為LAYER X-0,LAYER X-1.........LAYER X_J;公用層LAYER X_0下共有F+l
個公用控件Widget 0-0至Widget 0_F,公用層LAYER X_1下共有F+l個公用控件Widget 1-0至Widget 1-F,依此類推;J、F、N為大于0的自然數(shù),實際應用中各層下的公用控件個數(shù)不必都相同,可以根據(jù)實際需要設置。
[0028]其中,設計公用層組和公用控件庫,讓座艙顯示系統(tǒng)中所有顯控設備均掛載該公用層組和公用控件庫的具體實現(xiàn)方法是:
A、任意選擇一個顯控設備作為公用顯控設備,依據(jù)顯控設備的顯控界面設計要求,在UA軟件中創(chuàng)建公用顯控設備界面顯示所需的各ARINC661層,并進行ARINC661層的初始化;ARINC661層的創(chuàng)建和初始化同現(xiàn)有技術中顯控設備的層創(chuàng)建和初始化方法,本實施例中不再贅述其方法。
[0029]B、在UA軟件中創(chuàng)建公用顯控設備界面顯示所需的ARINC661控件和控件參數(shù)數(shù)據(jù),并進行ARINC661控件的初始化;ARINC661控件的創(chuàng)建和初始化同現(xiàn)有技術中顯控設備的層創(chuàng)建和初始化方法,本實施例中不再贅述其方法。
[0030]C、在UA軟件中設置支持的最大顯控設備數(shù)量設置,并在UA中為其余顯控設備各創(chuàng)建一條鏈路,該鏈路可以為虛擬鏈路或物理鏈路,使得每個顯控單元獨享一條虛擬鏈路或者物理鏈路;本實施例中,采用ARINC664虛擬鏈路,ARINC664是ARINC公司負責制定的下一代航空數(shù)據(jù)網(wǎng)絡標準,創(chuàng)建ARINC664虛鏈路的方法由ARINC664標準指定,本實施例中不再贅述,本實施例中根據(jù)該ARINC664標準在UA中為其余顯控設備各創(chuàng)建一條ARINC664虛擬鏈路。
[0031]D、將公用層組及對應的公用控件分別掛載到不同的顯控設備獨占的鏈路上。本實施例中,UA中所有公用層封裝為一個層數(shù)據(jù)單向鏈表,該層數(shù)據(jù)單向鏈表中各節(jié)點(層節(jié)點)的順序與公用層組中各公用層的順序一致;每個公用層下的所有公用控件也被封裝成一個控件數(shù)據(jù)單向鏈表,控件數(shù)據(jù)單向鏈表中的節(jié)點(控件節(jié)點)順序與對應的公用層的層下的公用控件順序一致;從圖2和前述描述可以看出,層數(shù)據(jù)單向鏈表上有多個層節(jié)點,每個層節(jié)點對應一個層;每個層節(jié)點連接一個唯一是控件數(shù)據(jù)單向鏈表;每個控件數(shù)據(jù)單向鏈表上有多個控件節(jié)點,每個控件節(jié)點對應一個公用控件。將公用層組及對應的公用控件分別掛載到不同的顯控設備獨占的鏈路上時,只需要將各顯控設備獨占的鏈路指向層數(shù)據(jù)單向鏈表的第一個節(jié)點即可。
[0032]本實施例中,A661 server駐留在各個IDU中,UA駐留在IMA中,在UA中只保留一份層數(shù)據(jù)和控件數(shù)據(jù),各個IDU的ARINC661控件統(tǒng)一管理,當一個IDU的控件數(shù)據(jù)發(fā)生改變時,其它IDU上的同一個控件或者同一個IDU上不同窗口下同一控件數(shù)據(jù)都會得到實時更新。不需要在各個IDU的控件之間進行數(shù)據(jù)拷貝就能很容易地實現(xiàn)同步。
[0033]綜上,本實施例的多顯控數(shù)據(jù)同步技術打破A661傳統(tǒng)數(shù)據(jù)源獨立性原則,在保持窗口獨立性的同時在layer、widget層面進行數(shù)據(jù)公用,不用單獨設計數(shù)據(jù)拷貝同步,而且簡化實現(xiàn)過程,簡化不同IDU間數(shù)據(jù)同步,還避免獨立數(shù)據(jù)源之間信息同步的競爭條件。
[0034]一種多顯控數(shù)據(jù)同步方法,包括基于ARINC661規(guī)范的多個顯控設備之間的數(shù)據(jù)同步步驟:使座艙顯示系統(tǒng)中所有顯控設備公用一組ARINC661層和各層下所有的ARINC661控件,具體包括以下步驟:
步驟S1、任意選擇一個顯控設備作為公用顯控設備,根據(jù)顯示需要,為該公用顯控設備創(chuàng)建一組ARINC661層并初始化各ARINC661層,為各ARINC661層創(chuàng)建一組ARINC661控件及控件參數(shù)并初始化各ARINC661控件,將該公用顯控設備的所有ARINC661層作為公用層組,將各ARINC661層下的ARINC661控件作為各公用層對應的公用控件,所有公用控件構成公用控件庫;
步驟S2、將其余顯控設備掛載公用層組和公用控件庫;
步驟S3、在UA中僅保留公用層數(shù)據(jù)和公用控件數(shù)據(jù),且將所有公用層封裝為一個層數(shù)據(jù)單向鏈表,該層數(shù)據(jù)單向鏈表中各節(jié)點的順序與公用層組中各公用層的順序一致;每個公用層下的所有公用控件也被封裝成一個控件數(shù)據(jù)單向鏈表,控件數(shù)據(jù)單向鏈表中的節(jié)點順序與對應的公用層的層下的公用控件順序一致,比如第一層(Layer 1_0)的控件數(shù)據(jù)單向鏈表中的節(jié)點順序就與第一層下所有公用控件的順序一致。
[0035]這樣,來自不同顯控設備鏈路的事件統(tǒng)一更新到公用層和公用控件庫中,無需每個顯控設備對更新數(shù)據(jù)進行拷貝,從而不用設計復雜的同步算法。
[0036]所述步驟S2的具體實現(xiàn)方法如下:
步驟S21、在UA中為其余顯控設備各創(chuàng)建一條鏈路,該鏈路可以為虛擬鏈路或物理鏈路,使得每個顯控單元獨享一條虛擬鏈路或者物理鏈路;本實施例中,采用ARINC664虛擬鏈路,根據(jù)ARINC664標準在UA中為其余顯控設備各創(chuàng)建一條ARINC664虛擬鏈路; 步驟S22、將所有公用層及各公用層對應的公用控件掛載到步驟S21創(chuàng)建的鏈路上。本步驟中,只需要將各顯控設備獨占的ARINC664虛擬鏈路指向層數(shù)據(jù)單向鏈表的第一個節(jié)點即可。
[0037]實施例2:
由于一個IUD可能控制I個以上的窗口顯示,如果按現(xiàn)有技術的設計,如果其中一個窗口的控件發(fā)生變化時,同一個IDU其他窗口要同步仍然需要拷貝控件數(shù)據(jù),因此同步仍然復雜O
[0038]因此,在實施例1的基礎上,為實現(xiàn)簡化同一個IDU上不同窗口之間的數(shù)據(jù)同步,本實施例中的一種航空顯示控制系統(tǒng),其座艙顯示系統(tǒng)還進行了如下改進:
在座艙顯示系統(tǒng)中,需要顯示K個窗口的顯控設備還設置有K-1個輔助管理鏈表,K為不小于2的自然數(shù);輔助管理鏈表是由一個或一組公用層組成的單向鏈表,輔助管理鏈表中每個節(jié)點對應一個公用層,輔助管理鏈表的每個節(jié)點下還具有與其對應的公用層對應的控件數(shù)據(jù)鏈表。
[0039]以圖3所示數(shù)據(jù)同步方案為例,圖3中IDUN上需要顯示兩個窗口,并且兩個窗口的顯示內容一致,在實現(xiàn)中需要增設一個輔助管理鏈表來進行管理,從而使用輔助管理鏈表、層數(shù)據(jù)單向鏈表兩個不同的鏈表分別來管理顯示控件控制兩個窗口的顯示;其本身的層數(shù)據(jù)單向鏈表的節(jié)點分別對應Layer X_0、Layer X-ULayer X_2、......'Layer X_J這些公用層,IDU N的層數(shù)據(jù)單向鏈表管理IDU N的第一個窗口;IDU N的輔助管理鏈表中的節(jié)點則對應為Layer Y_0、Layer Y_l、Layer Y_2、......、Layer Y-J, Layer Y_0、Layer Y_l、
Layer Y_2、......、Layer Y-J的順序與Layer X_0、Layer X_l、Layer X_2、......、Layer
X-J層的順序一致,Layer Y_0下具有Layer X_0層對應的控件數(shù)據(jù)鏈表、Layer Y-1下具有Layer X_1層對應的控件數(shù)據(jù)鏈表,依此類推。IDU N的輔助管理鏈表就用于管理第二個窗口的顯示。
[0040]由于輔助管理鏈表中每個節(jié)點對應一個公用層,當觸發(fā)事件信息來自同一個IDU不同的多個窗口時,這些觸發(fā)事件信息必然來自不同的ARINC661層,此時UA依據(jù)觸發(fā)事件信息中的層信息將觸發(fā)事件信息傳遞給到具體的ARINC661控件,觸發(fā)事件信息通過不同的層完成信息傳遞,并最終更新到公用控件庫中,無形中完成了數(shù)據(jù)的同步。
[0041]在實施例1的基礎上,本實施例中的一種多顯控數(shù)據(jù)同步方法還包括同一顯控設備不同窗口數(shù)據(jù)同步步驟,具體包括以下步驟:
步驟1、為需要顯示K個窗口的顯控設備新增K-1個輔助管理鏈表,K為不小于2的自然數(shù),輔助管理鏈表中每個節(jié)點對應一個公用層;
步驟2、根據(jù)公用層和公用控件的對應關系,將公用控件以單向鏈表形式掛載到輔助管理鏈表上。
[0042]本實施例中,由于所有顯控設備公用一套層和控件數(shù)據(jù),并且顯控設備的不同窗口也公用控件數(shù)據(jù),不僅數(shù)據(jù)同步方便、快速、不需要設計復雜的同步機制,還能夠自適應地增加顯控設備或者窗口以進行多顯控設備的顯示配置,無需更改應用程序,無需走復雜的適航認證流程,更加靈活。
[0043]實施例3:
在實施例2的基礎上,本實施例中的一種航空顯示控制系統(tǒng),其用戶程序駐留系統(tǒng)還進行了如下改進:
每個用戶程序還內置有顯示控制狀態(tài)機,顯示控制狀態(tài)機的個數(shù)為M,M為設定的窗口最大支持數(shù)量即每個IDU支持的顯示窗口數(shù)量的最大值,本實施例中M取3,每個IDU最多支持3個顯示窗口,實際應用中M也常被設定為2。
[0044]顯示控制狀態(tài)機用于管理每個顯控設備顯示窗口的圖形界面切換,保證不同的顯示窗口可以正常顯示相同或者不同的圖形頁面。
[0045]單一的IDU與UA之間數(shù)據(jù)通信是比較容易實現(xiàn)的架構,在民用飛機中經(jīng)常出現(xiàn)同IvUA控制顯不多個IDU和問 IDU上顯不左右兩個顯不窗口,兩個顯不窗口的顯不內谷在同一個頁面時數(shù)據(jù)時一致的,同時也需要支持不同頁面的切換顯示和主副飛行員輸入,具體實現(xiàn)中,在UA中內置顯示控制狀態(tài)機,狀態(tài)機個數(shù)按照最大支持數(shù)量創(chuàng)建,并自適應掛載,例如當前UA收到顯示配置管理信息或者ARINC661 server發(fā)送的握手請求信息時,自動掛載該窗口的顯示控制狀態(tài)機,顯示控制狀態(tài)機獨立控制每一個顯示窗口界面的具體顯不O
[0046]UA收到來自IDU的信息時,將對信息進行解碼并依據(jù)鏈路信息機層信息,將數(shù)據(jù)分發(fā)到不同的顯示控制狀態(tài)機,控制狀態(tài)機完成事件的處理后,更新控件數(shù)據(jù),并將數(shù)據(jù)同步更新到所有可用的IDU上,各個IDU單元可以切換停留在不同的界面,在處于同一個顯示界面時顯示圖形數(shù)據(jù)一致的,飛行員在任一 IDU上輸入,其它IDU單元上會實時更新。
[0047]支持同一個IDU上不同顯示窗口數(shù)據(jù)的同步:當觸發(fā)事件信息來自同一個IDU不同的多個窗口時,由于觸發(fā)事件信息來自不同的ARINC661層,而且這些層次的定義對于用戶程序來講是透明的,此時用戶程序將事件信息轉交給不同的窗口顯示控制狀態(tài)機,多個狀態(tài)機公用同一套控件數(shù)據(jù),在保持界面獨立控制的基礎上又實現(xiàn)了數(shù)據(jù)實時更新。
[0048]實際應用中該方案可以自適應做IDU顯示配置場景,無需更改應用程序。
[0049]在實施例2的基礎上,本實施例中的一種多顯控數(shù)據(jù)同步方法還包括顯示界面獨立控制步驟,具體如下:
步驟(I):每個用戶程序內置顯示控制狀態(tài)機,顯示控制狀態(tài)機的個數(shù)為M,M為設定的窗口最大支持數(shù)量;
步驟(2):用戶程序收到觸發(fā)事件信息時對觸發(fā)事件信息進行解析,判斷觸發(fā)事件信息控制的顯控設備、窗口和ARINC661控件;判斷結束后掛載相應窗口下的顯示控制狀態(tài)機;步驟(3):在用戶程序控制下,顯示控制狀態(tài)機根據(jù)觸發(fā)事件信息修改ARINC661控件屬性來控制每一個窗口界面的顯示。
[0050]步驟(2)中所述觸發(fā)事件信息包括事件的鏈路信息、事件所處的ARINC661層信息、控制的ARINC661控件和事件內容,判斷觸發(fā)信息控制的顯控設備和窗口的方法為具體為:根據(jù)事件的鏈路信息確定顯控設備及其窗口;根據(jù)事件所屬的ARINC661層信息和控制的ARINC661控件確定修改的控件。
[0051 ]上述的鏈路信息包括鏈路ID和層ID,UA在為每個IDU創(chuàng)建鏈路時為每個鏈路分配了一個ID,每個ID對應航電網(wǎng)絡上的一個顯控設備;ARINC661層有唯一的層ID。確定顯示窗口依賴兩個條件:一是顯控設備使用的鏈路,二是觸發(fā)事件信息所屬的ARINC661層信息。
[0052]當觸發(fā)事件信息來自座艙顯示系統(tǒng)時,用戶程序對觸發(fā)事件信息進行解碼并依據(jù)鏈路信息將數(shù)據(jù)分發(fā)到不同的顯示控制狀態(tài)機,顯示控制狀態(tài)機完成事件的處理后,更新控件數(shù)據(jù),并將數(shù)據(jù)同步更新到所有可用的顯控設備上;
當觸發(fā)信息來自同一顯控設備的不同窗口時,用戶應用將來自顯控設備的事件觸發(fā)信息轉交給不同的窗口顯示控制狀態(tài)機,多個顯示控制狀態(tài)機公用同一套控件數(shù)據(jù),實現(xiàn)數(shù)據(jù)實時更新。
[0053]在實際應用中,主副飛行員各自操作自己面前的顯示窗口(以下定義為主副窗口),假設主飛行員在主窗口第一界面操作,副飛行員在副窗口第二界面操作,主飛行員更新的信息直接傳遞給UA端的公用控件庫,此時副窗口的第一界面信息已經(jīng)被更新,由于頁面切換是由窗口控制狀態(tài)機完成,此時副飛行員依舊在第二界面,第一界面的數(shù)據(jù)變化不會引起第二界面數(shù)據(jù)的變化,當副飛行員切換到第一窗口時,將顯示主飛行員更新的最新信息。這樣保證數(shù)據(jù)更新的同時,不會影響飛行人員當下的觀察。
[0054]本申請的系統(tǒng)和方法靈活性的體現(xiàn)如下:
1:主副駕駛員可以同時在不同的頁面上進行數(shù)據(jù)更新操作,例如:主飛行員在請求起飛界面發(fā)送命令,副駕駛此時可以在消息界面打印來自地面站的消息。
[0055]2:當機艙需要增加或者減少一個顯示設備時,UA不需要做更改。
[0056]以上所述的【具體實施方式】,對本發(fā)明的目的、技術方案和有益效果進行了進一步詳細說明,所應理解的是,以上所述僅為本發(fā)明的【具體實施方式】而已,并不用于限定本發(fā)明的保護范圍,凡在本發(fā)明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
【主權項】
1.一種多顯控數(shù)據(jù)同步方法,其特征在于,包括基于ARINC661規(guī)范的多個顯控設備之間的數(shù)據(jù)同步步驟:使座艙顯示系統(tǒng)中所有顯控設備公用一組ARINC661層和各層下所有的ARINC661 控件。2.根據(jù)權利要求1所述的一種多顯控數(shù)據(jù)同步方法,其特征在于,所述使座艙顯示系統(tǒng)中所有顯控設備公用一組ARINC661層和各層下所有的ARINC661控件具體包括以下步驟: 步驟S1、任意選擇一個顯控設備作為公用顯控設備,為該公用顯控設備創(chuàng)建一組ARINC661層,為各ARINC661層創(chuàng)建一組ARINC661控件,并將該公用顯控設備的所有ARINC661層作為公用層組,將各ARINC661層下的ARINC661控件作為各公用層對應的公用控件,所有公用控件構成公用控件庫; 步驟S2、將其余顯控設備掛載公用層組和公用控件庫; 步驟S3、在UA中僅保留公用層數(shù)據(jù)和公用控件數(shù)據(jù),且將所有公用層封裝為一個層數(shù)據(jù)單向鏈表,該層數(shù)據(jù)單向鏈表中各節(jié)點的順序與公用層組中各公用層的順序一致;每個公用層下的所有公用控件也被封裝成一個控件數(shù)據(jù)單向鏈表,控件數(shù)據(jù)單向鏈表中的節(jié)點順序與對應的公用層的層下的公用控件順序一致。3.根據(jù)權利要求2所述的一種多顯控數(shù)據(jù)同步方法,其特征在于,步驟S2的具體實現(xiàn)方法如下: 步驟S21、在UA中為其余顯控設備各創(chuàng)建一條鏈路; 步驟S22、將所有公用層及各公用層對應的公用控件掛載到步驟S21創(chuàng)建的鏈路上。4.根據(jù)權利要求2所述的一種多顯控數(shù)據(jù)同步方法,其特征在于,還包括同一顯控設備不同窗口數(shù)據(jù)同步步驟,具體包括以下步驟: 步驟1、為需要顯示K個窗口的顯控設備新增K-1個輔助管理鏈表,K為不小于2的自然數(shù),輔助管理鏈表中每個節(jié)點對應一個公用層; 步驟2、根據(jù)公用層和公用控件的對應關系,將公用控件以單向鏈表形式掛載到輔助管理鏈表上。5.根據(jù)權利要求1至4任一所述的一種多顯控數(shù)據(jù)同步方法,其特征在于,還包括顯示界面獨立控制步驟,具體如下: 步驟(I):每個用戶程序內置顯示控制狀態(tài)機,顯示控制狀態(tài)機的個數(shù)為M,M為設定的窗口最大支持數(shù)量; 步驟(2):用戶程序收到觸發(fā)事件信息時對觸發(fā)事件信息進行解析,判斷觸發(fā)事件信息控制的顯控設備、窗口和ARINC661控件;判斷結束后掛載相應窗口下的顯示控制狀態(tài)機; 步驟(3):在用戶程序控制下,顯示控制狀態(tài)機根據(jù)觸發(fā)事件信息修改ARINC661控件屬性來控制每一個窗口界面的顯示。6.根據(jù)權利要求5所述的一種多顯控數(shù)據(jù)同步方法,其特征在于,所述觸發(fā)事件信息包括事件的鏈路信息、事件所處的ARINC661層信息、控制的ARINC661控件和事件內容,判斷觸發(fā)信息控制的顯控設備和窗口的方法為具體為: 根據(jù)事件的鏈路信息確定顯控設備及其窗口;根據(jù)事件所屬的ARINC661層信息和控制的ARINC661控件確定修改的控件。7.—種航空顯示控制系統(tǒng),包括通過航電總線相連的座艙顯示系統(tǒng)和用戶程序駐留系統(tǒng),所述座艙顯示系統(tǒng)包括多個顯控設備,每個顯控設備中駐留有一個服務應用,所述用戶程序駐留系統(tǒng)包括多個用戶程序,所述用戶程序與顯控設備的服務應用之間進行數(shù)據(jù)交互,其特征在于, 座艙顯示系統(tǒng)中具有公用層組和公用控件庫,座艙顯示系統(tǒng)中所有顯控設備均掛載該公用層組和公用控件庫,公用層組包括多個公用層,公用控件庫由各公用層下的公用控件構成;在用戶程序中僅保留公用層數(shù)據(jù)和公用控件數(shù)據(jù)。8.根據(jù)權利要求7所述的一種航空顯示控制系統(tǒng),其特征在于,所述用戶程序中設置有層數(shù)據(jù)鏈表和控件數(shù)據(jù)鏈表,所述層數(shù)據(jù)鏈表為由所有公用層封裝成的單向鏈表;所述控件數(shù)據(jù)鏈表也為單向鏈表,每個控件數(shù)據(jù)鏈表對應一個公用層,每個控件數(shù)據(jù)鏈表由其對應的公用層下的所有公用控件封裝而成;在座艙顯示系統(tǒng)中,需要顯示K個窗口的顯控設備還設置有K-1個輔助管理鏈表,K為不小于2的自然數(shù);輔助管理鏈表中每個節(jié)點對應一個公用層,每個節(jié)點下還具有與其對應的公用層對應的控件數(shù)據(jù)鏈表。9.根據(jù)權利要求8所述的一種航空顯示控制系統(tǒng),其特征在于,每個用戶程序還內置有顯示控制狀態(tài)機,顯示控制狀態(tài)機的個數(shù)為M,M為設定的窗口最大支持數(shù)量。10.根據(jù)權利要求9所述的一種航空顯示控制系統(tǒng),其特征在于,M的值為2。
【文檔編號】H04L29/08GK105872062SQ201610204983
【公開日】2016年8月17日
【申請日】2016年4月5日
【發(fā)明人】聶飛
【申請人】中電科航空電子有限公司