亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        民用飛機(jī)電子飛行儀表仿真系統(tǒng)設(shè)計與實現(xiàn)

        2014-01-21 00:53:36周濤李璐
        電子設(shè)計工程 2014年22期
        關(guān)鍵詞:計算機(jī)系統(tǒng)

        周濤,李璐

        (中航工業(yè)西安飛機(jī)工業(yè)(集團(tuán))有限責(zé)任公司 陜 西 西 安 7 10089)

        飛行儀表是飛機(jī)性能參數(shù)和導(dǎo)航參數(shù)顯示的窗口,可為飛行員提供駕駛飛機(jī)所需的飛行參數(shù)、導(dǎo)航數(shù)據(jù)及飛機(jī)系統(tǒng)狀態(tài)等信息[1]。隨著航空電子綜合化的發(fā)展,現(xiàn)代民用飛機(jī)的座艙儀表系統(tǒng)已經(jīng)逐漸向電子飛行儀表系統(tǒng)(EFIS)過渡,以先進(jìn)的智能液晶顯示器取代原有的分離機(jī)電式儀表,提供給飛行員全新的人機(jī)界面,因此,對飛行員操作程序(POP)的評估也成為民用飛機(jī)頂層設(shè)計的重要環(huán)節(jié),以達(dá)到最佳的人機(jī)功效。為此,提供必要的仿真手段以驗證電子飛行儀表系統(tǒng)顯示和操作的合理性顯得尤為重要,以實現(xiàn)需求驗證和設(shè)計修改的快速、高效迭代,達(dá)到優(yōu)化設(shè)計過程、方便需求分析、降低開發(fā)成本的目的[1]。本文就某型民用飛機(jī)電子飛行儀表仿真系統(tǒng)提出設(shè)計思路和實現(xiàn)方法。

        1 總體設(shè)計

        鑒于此仿真系統(tǒng)要經(jīng)歷多次的修改和迭代,以確定最終的顯示構(gòu)型方案,所以為保證系統(tǒng)具備足夠的靈活性和可擴(kuò)展性,采用模塊化設(shè)計,各個前臺顯示模塊和控制板仿真程序作為獨(dú)立應(yīng)用程序以WIN32平臺下的OpenGL進(jìn)行開發(fā),顯示構(gòu)型采用后臺文件進(jìn)行配置,以便于軟件調(diào)試和系統(tǒng)重構(gòu)。動態(tài)仿真利用飛行模擬軟件X-Plane進(jìn)行二次開發(fā),利用其中的飛機(jī)動態(tài)數(shù)據(jù)模型對座艙儀表和視景進(jìn)行驅(qū)動。靜態(tài)仿真采用Visual C++進(jìn)行開發(fā),用于設(shè)置靜態(tài)參數(shù),改變各應(yīng)用程序的工作狀態(tài)和顯示內(nèi)容,同時對動態(tài)參數(shù)進(jìn)行監(jiān)視,實現(xiàn)故障模擬、模式轉(zhuǎn)換、航路點設(shè)置、CAS告警仿真等特殊功能。數(shù)據(jù)網(wǎng)絡(luò)通訊采用TCP/IP協(xié)議的C/S架構(gòu),保證數(shù)據(jù)可靠有效的傳輸,其中服務(wù)器端作為數(shù)據(jù)中樞進(jìn)行系統(tǒng)數(shù)據(jù)的整體調(diào)度,各個客戶端應(yīng)用通過接口函數(shù)與其進(jìn)行通訊,實現(xiàn)數(shù)據(jù)的收發(fā)與控制,形成人在環(huán)路的閉環(huán)仿真系統(tǒng)。

        1.1 系統(tǒng)軟件架構(gòu)

        圖1 系統(tǒng)軟件架構(gòu)Fig.1 System software infrastructure

        系統(tǒng)軟件主要由以下幾個部分組成:

        1)主飛行顯示器(PFD)模塊

        分為全屏模式、半屏模式和壓縮模式,同時提供左右兩側(cè)主駕駛PFD和副駕駛PFD,完成姿態(tài)航向指示器(ADI)和水平位置指示器(HIS)等各項功能。

        2)多功能顯示器(MFD)模塊

        實現(xiàn)地圖、系統(tǒng)簡圖頁、調(diào)諧、電子檢查單、飛行管理系統(tǒng)、數(shù)據(jù)鏈路等多項功能。

        3)發(fā)動機(jī)指示(EI)模塊

        分為正常模式和應(yīng)急壓縮模式,完成發(fā)動機(jī)參數(shù)的顯示功能。

        4)機(jī)組告警系統(tǒng)(CAS)模塊

        分為正常模式和應(yīng)急壓縮模式,實現(xiàn)機(jī)組告警系統(tǒng)的各項功能。

        5)飛行管理系統(tǒng)(FMS)模塊

        實現(xiàn)飛行管理系統(tǒng)的初始化、飛行計劃設(shè)置、飛機(jī)性能管理等界面顯示功能。

        6)系統(tǒng)簡圖頁模塊

        實現(xiàn)電源系統(tǒng)、液壓系統(tǒng)、環(huán)控系統(tǒng)、飛控系統(tǒng)等系統(tǒng)參數(shù)信息的顯示功能。

        7)中央操縱臺模塊

        實現(xiàn)油門臺、多功能鍵盤(MKB)、光標(biāo)控制裝置(CCD)、襟翼控制、剎車控制等各項功能。

        8)頂部控制板模塊

        實現(xiàn)非航電系統(tǒng)與航電系統(tǒng)的交聯(lián)控制和顯示的各項功能。

        9)其他儀表與控制板

        實現(xiàn)航空時鐘和電子備用儀表以及與航電系統(tǒng)相關(guān)的顯示控制板(DCP)、自動飛行控制板(AFCP)等控制板。

        10)動態(tài)仿真模塊

        用于響應(yīng)外部控制面板、菜單等的輸入信號,產(chǎn)生動態(tài)飛行數(shù)據(jù)激勵其它的仿真模塊,同時產(chǎn)生動態(tài)的視景效果。動態(tài)仿真模塊為一個獨(dú)立應(yīng)用程序,基于X-Plane進(jìn)行開發(fā)。

        11)靜態(tài)仿真模塊

        靜態(tài)仿真軟件用于設(shè)置靜態(tài)參數(shù),改變各應(yīng)用程序的工作狀態(tài)和顯示內(nèi)容,同時對動態(tài)參數(shù)進(jìn)行監(jiān)視,實現(xiàn)故障模擬、模式轉(zhuǎn)換、航路點設(shè)置、CAS告警仿真等特殊功能。

        12)網(wǎng)絡(luò)通信與管理模塊

        網(wǎng)絡(luò)通信與管理模塊作為整個仿真系統(tǒng)的數(shù)據(jù)中樞,采用TCP/IP協(xié)議的C/S網(wǎng)絡(luò)構(gòu)架,實現(xiàn)各應(yīng)用程序之間的數(shù)據(jù)傳輸與維護(hù),網(wǎng)絡(luò)通信架構(gòu)如圖2所示。

        圖2 網(wǎng)絡(luò)通信架構(gòu)Fig.2 Network communication infrastructure

        1.2 系統(tǒng)硬件架構(gòu)

        系統(tǒng)整體硬件包括:綜合顯示仿真計算機(jī)兩臺、頂部控制板仿真計算機(jī)一臺、中央操縱臺仿真計算機(jī)一臺、主控服務(wù)器一臺、27寸觸摸顯示器五臺、32寸觸摸顯示器一臺、網(wǎng)絡(luò)交換機(jī)一臺、投影儀一臺。

        各仿真計算機(jī)與服務(wù)器間采用以太網(wǎng)連接,采用C/S(客戶端/服務(wù)器)的星形連接方式。為了提高整個顯示系統(tǒng)的穩(wěn)定性和實時性,按照如下方式對顯示硬件進(jìn)行分配:顯示器#1和顯示器#2采用同一臺計算機(jī)進(jìn)行驅(qū)動,用于顯示主駕駛PFD、MFD、主警告燈,顯示控制面板、飛行指引控制面板、電子備用儀表以及起落架收放開關(guān)等;顯示器#3采用一臺計算機(jī)進(jìn)行驅(qū)動,用于顯示副駕駛PFD、MFD;顯示器#4采用一臺計算機(jī)進(jìn)行驅(qū)動,用于加載中央操作臺控制面板;顯示器#5和顯示器#6采用一臺計算機(jī)進(jìn)行驅(qū)動,用于加載頂部板控制面板。主控計算機(jī)采用一臺計算機(jī),用于協(xié)調(diào)實驗臺中各顯示系統(tǒng)之間的關(guān)系,管理儀表系統(tǒng)的邏輯數(shù)據(jù)庫,用戶可以通過主控計算機(jī)對仿真實驗臺進(jìn)行控制。主控計算機(jī)用于加載動態(tài)仿真數(shù)據(jù)源,輸出飛行視景。系統(tǒng)硬件架構(gòu)如圖3所示。

        圖3 系統(tǒng)硬件架構(gòu)Fig.3 System hardware infrastructure

        2 工程實現(xiàn)

        電子飛行儀表仿真系統(tǒng)按照自頂向下、模塊化思想開發(fā),以保證系統(tǒng)的靈活性和可擴(kuò)展性,以下為系統(tǒng)主要功能模塊的工程實現(xiàn)方法,其中系統(tǒng)開發(fā)流程如圖4所示。

        圖4 系統(tǒng)開發(fā)流程圖Fig.4 System develop flow chart

        2.1 儀表和控制板仿真

        各個儀表和控制板仿真模塊作為客戶端應(yīng)用,采用基于WIN32的OpenGL進(jìn)行開發(fā),通過服務(wù)器程序進(jìn)行數(shù)據(jù)交互,數(shù)據(jù)發(fā)送方式為數(shù)據(jù)包發(fā)送,數(shù)據(jù)包中的數(shù)據(jù)按照統(tǒng)一的結(jié)構(gòu)體格式進(jìn)行數(shù)據(jù)規(guī)范。數(shù)據(jù)包結(jié)構(gòu)為:

        typedef struct

        {

        int id; //ID為數(shù)據(jù)標(biāo)號

        int SDI; //SDI為數(shù)據(jù)源標(biāo)識

        int SSM; //SSM為數(shù)據(jù)狀態(tài)指示

        double data; //data為數(shù)據(jù)值

        char str[NAME_LEN]; //str為字符串

        }LABEL_Def;

        所有數(shù)據(jù)發(fā)送和接收都以此結(jié)構(gòu)進(jìn)行解析。軟件流程如圖5所示。

        2.2 動態(tài)仿真模塊

        動態(tài)仿真系統(tǒng)基于X-Plane10軟件進(jìn)行二次開發(fā),采用動態(tài)鏈接庫方式封裝成X-Plane的插件,利用X-Plane10中的通用飛機(jī)模型產(chǎn)生動態(tài)數(shù)據(jù),建立動態(tài)仿真與其他應(yīng)用程序之間的數(shù)據(jù)接口,通過服務(wù)器網(wǎng)絡(luò)通信模塊進(jìn)行數(shù)據(jù)傳輸。動態(tài)仿真應(yīng)用程序通過加載X-Plane可識別數(shù)據(jù)接口文件,使X-Plane輸出需要的數(shù)據(jù),同時可向X-Plane10寫入數(shù)據(jù)。

        動態(tài)仿真所要加載的數(shù)據(jù)在數(shù)據(jù)文檔DataRef.txt中,其中包括了X-Plane動態(tài)數(shù)據(jù)編號、可識別的數(shù)據(jù)路徑地址、數(shù)據(jù)類型、數(shù)據(jù)讀寫類型、動態(tài)仿真輸出接口以及動態(tài)仿真輸入接口信息。動態(tài)仿真通過加載DataRef.txt數(shù)據(jù)文檔,加載所需產(chǎn)生的數(shù)據(jù)接口。用戶通過修改DataRef.txt中的內(nèi)容以增加和減少所需軟件接口,DataRef.txt接口文件格式如表1。

        圖5 軟件流程圖Fig.5 Software flow chart

        表1 動態(tài)仿真數(shù)據(jù)接口文件Tab.1 Dynamic simulation data interface document

        通過XPanle提供的API對DataRef接口文件進(jìn)行解析,發(fā)送飛機(jī)模型產(chǎn)生的動態(tài)數(shù)據(jù),同時接收仿真控制板發(fā)送的控制指令參數(shù),其中用到的主要接口函數(shù)定義如下:

        PLUGIN_API int XPluginStart(char* outName,char*outSig,char*outDesc) //進(jìn)程入口函數(shù)

        {

        char txtpath[60];

        sprintf(txtpath,"%s",F(xiàn)LOAT_PATH);

        SeperateTxt(FLOAT_PATH); //文本解析函數(shù)

        for(int i=0;i

        {

        gFloatReadDataRef[i]=XPLMFindDataRef(FloatDataRef.DataRefReadDescriptions[i]);

        //將接口參數(shù)寫入緩沖區(qū)

        }

        //注冊飛行循環(huán)的回調(diào)函數(shù),周期為100 ms

        XPLMRegisterFlightLoopCallback (InputOutputLoopCB,0.1, NULL);

        return 1;

        }

        float InputOutputLoopCB (float elapsedMe, float elapsedSim, int counter, void*refcon)//回調(diào)函數(shù)定義

        {

        for(int i=0;i

        {

        label.data=XPLMGetDataf(gFloatReadDataRef[i]); //將緩沖區(qū)中的數(shù)據(jù)寫入數(shù)據(jù)包

        if(FloatDataRef.floatdata[i]!=(float)label.data)

        {

        FloatDataRef.floatdata[i]=(float)label.data;

        sprintf (buf, “% s”,F(xiàn)loatDataRef.NameDataReadID[i]);

        ClientUpdateParameter (hClient,F(xiàn)loatDataRef.NameDataReadID[i],&label);

        //通過服務(wù)器接口函數(shù)發(fā)送數(shù)據(jù)包

        }

        }

        return (float) 0.1;

        }

        2.3 數(shù)據(jù)通訊模塊

        數(shù)據(jù)通訊軟件按照開放式的軟件架構(gòu)要求,采用C/S通訊架構(gòu),使用TCP/IP協(xié)議進(jìn)行開發(fā)。數(shù)據(jù)通訊軟件分為服務(wù)器端與客戶端兩部分程序。服務(wù)器端程序獨(dú)立運(yùn)行,客戶端程序?qū)⒆远x的接口函數(shù)以靜態(tài)鏈接庫的形式進(jìn)行發(fā)布,供各個客服端程序調(diào)用以和服務(wù)器端程序進(jìn)行數(shù)據(jù)通訊,其中主要的接口函數(shù)和調(diào)用形式示例如下:

        int_tmain(int argc, _TCHAR*argv[])

        {

        LPVOID hClient;

        int retval;

        LABEL_Def label;

        char server_ip_addr[NAME_LEN];

        unsigned short port= (unsigned short) DEFAULT_PORT;

        strcpy_s (server_ip_addr,sizeof(server_ip_addr),SERVER_IP_ADDR);

        //將各個應(yīng)用模塊注冊為客戶端

        hClient=ClientInit ( CLIENT_NAME, server_ip_addr,port);

        //發(fā)布待發(fā)送的參數(shù)

        retval=ClientPublishParameter( hClient, “a” );

        //申請待接收的參數(shù)

        retval=ClientSubscribeParameter( hClient, “b”);

        memset( &label, 0, sizeof( LABEL_Def) );

        int count=10000; //測試計數(shù)器

        while( count)

        {

        count++;

        label.data=count;

        //更新發(fā)布的參數(shù)值

        retval=ClientUpdateParameter( hClient, “a”, &label);

        //獲取申請的參數(shù)值

        retval=ClientGetParameter( hClient, “b”, &label);

        Sleep( RESPONSE_DELAY );

        }

        //退出

        retval=ClientExit( hClient);

        return retval;

        }

        2.4 模塊調(diào)度策略

        為實現(xiàn)電子飛行儀表仿真系統(tǒng)各顯示模塊的可重構(gòu)性,程序通過后臺配置文件進(jìn)行統(tǒng)一啟動,各個模塊的顯示位置通過配置文件進(jìn)行設(shè)置,如果顯示需求發(fā)生變更,只需修改配置文件即可,源代碼無需更改,提高了系統(tǒng)的可維護(hù)性。具體實現(xiàn)過程如下:

        1)解析配置文件

        利用C++標(biāo)準(zhǔn)模板庫的字符串類對配置文件進(jìn)行解析,獲取應(yīng)用程序名和位置信息。

        2)批處理啟動應(yīng)用模塊

        利用WINDOWS API函數(shù) ShellExecute并通過傳入的參數(shù)對配置文件中的應(yīng)用模塊進(jìn)行統(tǒng)一啟動。

        3)顯示和部署應(yīng)用模塊

        通過應(yīng)用模塊的入口主函數(shù)傳入的命令行參數(shù),進(jìn)行字符串解析,將獲取的位置參數(shù)傳入WINDOWS API函數(shù)SetWindowPos進(jìn)行各應(yīng)用模塊的顯示和部署。

        3 結(jié)束語

        文中對民用飛機(jī)電子飛行儀表仿真系統(tǒng)提出設(shè)計思路和實現(xiàn)方法,并成功應(yīng)用在某型民用飛機(jī)的概念設(shè)計階段,對飛行員操作程序(POP)的評估取得良好的效果,并對后續(xù)電子飛行儀表系統(tǒng)顯示方案的制定提供了有效的驗證手段。

        [1]夏煒,孫曉敏,郤文清.基于VAPS的電子飛行儀表系統(tǒng)顯示設(shè)計[J].航空電子技術(shù),2009,40(3):15-18.XIA Wei,SUN Xiao-min,XI Wen-qing.Design of electronic flight instrument system display based on VAPS[J].Avionics Technology,2009,40(3):15-18.

        [2]王行仁.飛行實時仿真系統(tǒng)及技術(shù)[M].北京:北京航空航天大學(xué)出版社,1998.

        [3]任泰明.TCP/IP網(wǎng)絡(luò)編程[M].北京:人民郵電出版社,2009.

        [4]施瑞奈爾.OpenGL編程指南[M].7版.李軍,譯.北京:機(jī)械工業(yè)出版社,2010.

        [5]李普曼,拉茹瓦,穆.C++Primer中文版[M].4版.李師賢,譯.北京:人民郵電出版社,2006.

        [6]佩措爾德.Windows程序設(shè)計(珍藏版)[M].方敏,張勝,梁路平,趙勇,等譯.北京:清華大學(xué)出版社,2010.

        猜你喜歡
        計算機(jī)系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        計算機(jī)操作系統(tǒng)
        WJ-700無人機(jī)系統(tǒng)
        ZC系列無人機(jī)遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        穿裙子的“計算機(jī)”
        基于計算機(jī)自然語言處理的機(jī)器翻譯技術(shù)應(yīng)用與簡介
        科技傳播(2019年22期)2020-01-14 03:06:34
        計算機(jī)多媒體技術(shù)應(yīng)用初探
        科技傳播(2019年22期)2020-01-14 03:06:30
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        信息系統(tǒng)審計中計算機(jī)審計的應(yīng)用
        成人欧美一区二区三区黑人 | 国产精品∧v在线观看| 欧美疯狂性xxxxxbbbbb| 国产69口爆吞精在线视频喝尿| 国产一区二区三区日韩精品| 91自拍视频国产精品| 日本亚洲欧美色视频在线播放| 日韩AV不卡一区二区三区无码| 国产亚洲日韩在线一区二区三区| 国产精品美女久久久久久2018| 久久亚洲中文字幕精品一区四| 蜜桃视频第一区免费观看| 国产精品a免费一区久久电影| 激情97综合亚洲色婷婷五| 亚洲精品综合第一国产综合| 国产人妖一区二区av| 久久精品中文字幕女同免费| 无人视频在线观看免费播放影院| 国产成人亚洲综合一区 | 午夜亚洲www湿好爽| 成人国产永久福利看片| 国产三级一区二区三区在线观看| 国产精品女同一区二区软件| 偷拍激情视频一区二区三区| 欧美亚洲日韩国产人成在线播放| 日本加勒比东京热日韩| 久草视频在线这里只有精品| 亚洲自拍偷拍一区二区三区| 猫咪av成人永久网站在线观看| 真人无码作爱免费视频禁hnn| 久久久久中文字幕无码少妇| 国产精品不卡免费版在线观看| 日出白浆视频在线播放| 无码精品人妻一区二区三区影院| 亚洲一区二区三区av链接| 国产精品伦人视频免费看| 日本美女中文字幕第一区| 中文无码成人免费视频在线观看| 亚洲av成本人无码网站| 初尝人妻少妇中文字幕在线| 日本av亚洲中文字幕|