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

        ?

        ACTS數(shù)據(jù)有效性檢驗(yàn)算法仿真

        2010-09-27 08:34:30,2
        電訊技術(shù) 2010年5期
        關(guān)鍵詞:飛行數(shù)據(jù)線程報(bào)文

        ,2

        (1.空軍工程大學(xué) 工程學(xué)院,西安 710038;2.北京航空航天大學(xué) 后備軍官選拔培訓(xùn)辦公室,北京 100083)

        1 引 言

        20世紀(jì)70年代,“越戰(zhàn)”的經(jīng)驗(yàn)教訓(xùn)促使美國空軍開始利用技術(shù)手段監(jiān)控、評(píng)估空戰(zhàn)訓(xùn)練過程,客觀實(shí)時(shí)評(píng)估對(duì)抗結(jié)果,實(shí)現(xiàn)訓(xùn)練模式的變革。

        近年來,以新武器裝備快速發(fā)展為主要標(biāo)志的空軍轉(zhuǎn)型建設(shè)快速推進(jìn),軍事訓(xùn)練改革不斷深入??諔?zhàn)訓(xùn)練系統(tǒng)運(yùn)用實(shí)時(shí)仿真、航電系統(tǒng)信息監(jiān)控、高帶寬數(shù)傳等技術(shù)手段,實(shí)現(xiàn)對(duì)飛機(jī)技術(shù)狀態(tài)、空中動(dòng)態(tài)、訓(xùn)練質(zhì)量的實(shí)時(shí)監(jiān)控。這些都需要準(zhǔn)確、可靠的飛行數(shù)據(jù)支持。為獲得準(zhǔn)確、連續(xù)、平滑的數(shù)據(jù),客觀公正地評(píng)定空中訓(xùn)練效果,提高訓(xùn)練質(zhì)量,本文提出一種空戰(zhàn)訓(xùn)練系統(tǒng)(Air Combat Training System,ACTS)數(shù)據(jù)有效性檢驗(yàn)算法,并通過仿真試驗(yàn)證明了其有效性。

        2 仿真實(shí)驗(yàn)環(huán)境的搭建

        2.1 地面數(shù)據(jù)接收

        ACTS的飛行數(shù)據(jù)通過數(shù)據(jù)鏈進(jìn)行傳輸,這里采用兩臺(tái)PC以及兩部電臺(tái)來進(jìn)行收發(fā)飛行數(shù)據(jù)的模擬,因此采用串口通信來完成數(shù)據(jù)的接收[1-2]。

        2.1.1串口類及串口初始化

        為了充分利用面向?qū)ο蟪绦蛟O(shè)計(jì)在可維護(hù)性、易修改性和可重用性三方面優(yōu)點(diǎn),廣泛使用了類和對(duì)象。其中對(duì)于串口的所有操作都封裝在CCommCtrl類中。該類的定義如下:

        class CCommCtrl

        {

        public://公共接口

        CCommCtrl();//構(gòu)造函數(shù)

        virtual~CCommCtrl();//析構(gòu)函數(shù)

        bool OpenPort(char*portname);//打開串口并初始化串口

        bool ClosePort();//關(guān)閉串口

        bool ReadFrom(LPVOID inputData,const unsigned int sizeBuffer, unsigned long&length,LPOVERLAPPED ov);//從串口讀數(shù)據(jù)

        bool WriteTo(LPCVOID outputData,const unsigned int sizeBuffer, unsigned long&length,LPOVERLAPPED ov); //向串口寫數(shù)據(jù)

        bool GetCommStated();//獲得串口的狀態(tài)

        HANDLE GetCommHandle();//獲得串口的句柄

        private://私有變量

        bool m-bCommOpen;//指明串口是否打開,true標(biāo)識(shí)打開

        HANDLE m-hComm;//串口的句柄

        DCB m-dcb;//設(shè)備控制塊

        };

        Windows系統(tǒng)實(shí)現(xiàn)串口的通信必須先對(duì)串口的通信參數(shù)進(jìn)行初始化,而其中比較重要的是數(shù)據(jù)傳輸率、奇偶校驗(yàn)、數(shù)據(jù)比特?cái)?shù)和停止比特?cái)?shù)等。

        Window API GetCommState()函數(shù)可以獲取串口的當(dāng)前配置。該函數(shù)定義如下:

        BOOL GetCommState(HANDLE hFile,LPDCB lpDCB);

        其中,hFile是由CreateFile()函數(shù)返回的指向已打開串口的句柄;lpDCB為指向設(shè)備控制塊(DCB)的指針,包含各種串口通信的參數(shù)。

        2.1.2多線程實(shí)現(xiàn)串口通信

        報(bào)文收發(fā)線程以一個(gè)UI線程來定義。系統(tǒng)主線程首先通過調(diào)用Windows API函數(shù)完成對(duì)串口的初始化,初始化的參數(shù)由DCB結(jié)構(gòu)給出,并在主線程中自定義通信事件消息,初始化完成以后,調(diào)用MFC的AfxBeginThread()函數(shù)創(chuàng)建報(bào)文收發(fā)線程,報(bào)文收發(fā)線程在后臺(tái)對(duì)串口進(jìn)行實(shí)時(shí)監(jiān)測(cè),當(dāng)監(jiān)測(cè)到預(yù)定義的事件后,進(jìn)行相應(yīng)的消息函數(shù)處理,與此同時(shí),主線程還可以完成人機(jī)交互和協(xié)調(diào)其它線程的同步。圖1為地面接收數(shù)據(jù)時(shí)線程的處理流程。

        圖1 地面數(shù)據(jù)接收流程圖Fig.1 Flowchart of ground data receiving

        為了使主線程有效的控制該線程,在線程類中定義了一個(gè)同步事件用來當(dāng)主線程需要關(guān)閉該線程時(shí)釋放串口資源,然后關(guān)閉該線程。這里通過使用WindowsAPI函數(shù)WaitForMultipleObject()來等待不同的事件以選擇不同的處理過程。

        代碼實(shí)現(xiàn):

        (1)主線程創(chuàng)建并啟動(dòng)報(bào)文接收線程

        m-pRecvThread=(CRecvThread*)AfxBeginThread(RUNTIME-CLASS(CRecvThread),THREAD-PRIORITY-NORMAL,0,CREATE-SUSPENDED);

        m-pRecvThread->ResumeThread();

        (2)報(bào)文接收線程打開串口

        if(OpenComm()==false))//OpenComm()中實(shí)現(xiàn)了串口的打開和設(shè)置

        {

        AfxMessageBox(″Open failure!″);

        return 1;

        }

        (3)創(chuàng)建線程同步事件

        OVERLAPPED ov;

        HANDLE hWait[2];

        ov.hEvent=CreateEvent(0,true,0,0);

        m-hThreadTerm=CreateEvent(0,true,0,0);

        hWait[0]=ov.hEvent;

        hWait[1]=m-hThreadTerm;

        (4)等待串口通信事件,如果串口接收到數(shù)據(jù),置事件ov.hEvent為有信號(hào)

        while(abContinue)

        {……

        if(!::WaitCommEvent(m-CCommCtrl.GetCommHandle(),&dwEventMask,&ov))

        {

        DWORD error=GetLastError();

        ASSERT(GetLastError()==ERROR-IO-PENDING);

        }

        ……

        }

        (5)WaitForMultipleObjects()等待有用信號(hào)的產(chǎn)生,否則無限期的等待

        dwWaitResult=WaitForMultipleObjects(2,hWait,FALSE,INFINITE);

        (6)如果ov.hEvent為有信號(hào),即串口接收到字符,接收數(shù)據(jù)并置事件ov.hEvent為無信號(hào)

        if(dwWaitResult==WAIT-OBJECT-0)

        {

        ……

        ::ReadFile(m-CCommCtrl.GetCommHandle(),recvTmp,sizeof(recvTmp),&dwBytesRead,&ovRead);

        ……

        ResetEvent(ov.hEvent);

        }

        (7)如果m-hThreadTerm為有信號(hào),即主線程要終止該線程,關(guān)閉串口并置事件m-hThreadTerm為無信號(hào)

        else if(dwWaitResult==WAIT-OBJECT-0+1)

        {

        ……

        m-CCommCtrl.ClosePort();

        ResetEvent(m-hThreadTerm);

        break;

        }

        (8)主線程關(guān)閉串口接收線程

        GetExitCodeThread(m-pRecvThread->m-hThread,&exit);

        TerminateThread(m-pRecvThread->m-hThread,exit);

        需要發(fā)送報(bào)文時(shí),由于發(fā)送的數(shù)據(jù)量不大并且是主動(dòng)的,所以只需要調(diào)用串口類CCommCtrl的WriteTo接口即可完成對(duì)報(bào)文的發(fā)送。

        2.2 地面數(shù)據(jù)分發(fā)

        Microsoft Windows環(huán)境下的網(wǎng)絡(luò)編程接口[1,3]是Windows套接字(Windows Socket,Winsock)。Winsock提供了包括TCP/IP、IPX等多種通信協(xié)議下的編程接口。不同的Windows版本支持不同的Winsock版本,其中Windows 95等早期版本本身只支持Winsock1.1(16位)下的編程(可以通過安裝相關(guān)的軟件包使其支持Winsock2.0),而Windows98、Windows NT4.0、Windows 2000、WindowsXP 則直接支持Winsock2.0(32位)。Winsock2.0是Winsock1.1的擴(kuò)展,除兼容Winsock1.1 API外,還定義了一套可支持IP多播的與協(xié)議無關(guān)的API。

        系統(tǒng)需要將報(bào)文發(fā)送到不同的客戶端,并且多播組由報(bào)文接收服務(wù)器決定,因此采用有根模式來實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)分發(fā)。

        使用Winsock 2.0實(shí)現(xiàn)IP多播的步驟如下(根節(jié)點(diǎn)配置):

        2.2.1初始化Winsock資源

        在使用Winsock之前,必須調(diào)用WSAStartup()函數(shù)初始化Windows SocketDLL。它允許應(yīng)用程序或DLL指定Windows Sockets API要求的版本。

        WORD wVersionRequested;

        WSADATA wsaData;

        wVersionRequested=MAKEWORD(2,2);

        int result=WSAStartup(wVersionRequested,&wsaData);//初始化套接字

        2.2.2創(chuàng)建套接字

        調(diào)用WSASocket()函數(shù)創(chuàng)建一個(gè)使用UDP套接字,它是加入多播組的初始化套接字,以后數(shù)據(jù)的發(fā)送和接收都在該套接字上進(jìn)行。針對(duì)本系統(tǒng)的需求,將參數(shù)dwFlags設(shè)置為WSA-FLAG-MULTIPOINT-C-ROOT、WSA-FLAG-MULTIPOINT-D-ROO和WSA-FLAG-OVERLAPPED的位和,指明組播方式為有根模式:

        Sock=WSASocket(AF-INET,SOCK-DGRAM,IPPROTO-UDP,NULL,0,WSA-FLAG-OVERLAPPED|WSA-FLAG-MULTIPOINT-C-ROOT|WSA-FLAG-MULTIPOINT-D-ROOT);

        2.2.3設(shè)置套接字的選項(xiàng)

        調(diào)用setsockopt()函數(shù)為套接字設(shè)置SO-REUSEADDR選項(xiàng),以允許套接字綁扎到一個(gè)已在使用的地址上:

        bFlag=TRUE;//設(shè)置套接字選項(xiàng),使套接字為可重用端口地址

        setsockopt(Sock,SOL-SOCKET,SO-REUSEADDR,(char*)&bFlag,1);

        2.2.4綁定套接字

        調(diào)用bind()函數(shù)綁定套接字,從而將創(chuàng)建好的套接字與本地地址和本地端口聯(lián)系起來。對(duì)于多播通信來說,發(fā)送和接收數(shù)據(jù)通常采用同一個(gè)端口:

        memset(&local,0,sizeof(local));

        local.sin-family=AF-INET;

        local.sin-port=htons((USHORT)9999);

        local.sin-addr.s-addr=htonl(INADDR-ANY);

        bind(Sock,(struct sockaddr FAR*)&local,sizeof(local));

        2.2.5注冊(cè)網(wǎng)絡(luò)消息及其網(wǎng)絡(luò)事件

        WSAAsyncSelect(Sock,m-hWnd,WM-SOCK-MSG,FD-READ);//數(shù)據(jù)等待被讀入子節(jié)點(diǎn)的配置與根節(jié)點(diǎn)類似,只是建立套接字時(shí)的dwFlags設(shè)置有所不同。建立組播的好處就是如果系統(tǒng)需要擴(kuò)展功能,可以充分利用現(xiàn)有組播框架。

        建立好組播組以后,根節(jié)點(diǎn)和子節(jié)點(diǎn)之間就可以進(jìn)行通信了,根節(jié)點(diǎn)發(fā)送報(bào)文時(shí)只需要調(diào)用sendto函數(shù),具體代碼如下:

        const char*strMes=LPCTSTR(m-SendMessage);

        int nSize=m-SendMessage.GetLength()+1;

        sendto(Sock,strMes,nSize,0,(sockaddr*)&Remote,sizeof(Remote));

        子節(jié)點(diǎn)只需要調(diào)用recvfrom函數(shù)即可獲得接收到的數(shù)據(jù)。另外,子節(jié)點(diǎn)還可以利用過濾器來實(shí)現(xiàn)報(bào)文過濾,只接收需要的報(bào)文。

        實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)分發(fā)的主要意義在于:在接收ACTS飛行數(shù)據(jù)時(shí),如果報(bào)文的數(shù)目比較多,利用一個(gè)服務(wù)器端軟件進(jìn)行實(shí)時(shí)監(jiān)控將比較困難,而通過網(wǎng)絡(luò)數(shù)據(jù)分發(fā)模塊,可以將報(bào)文發(fā)送到多個(gè)客戶端,各客戶端可以分別監(jiān)視部分飛機(jī)或地面監(jiān)控系統(tǒng)的報(bào)文信息,從而可以更好更有效地實(shí)現(xiàn)ACTS對(duì)戰(zhàn)場(chǎng)的實(shí)時(shí)監(jiān)視。

        2.3 數(shù)據(jù)庫

        VC中使用ADO實(shí)現(xiàn)數(shù)據(jù)庫連接[1]。由于VC在數(shù)據(jù)庫編程方面的先天缺陷,導(dǎo)致使用VC編寫數(shù)據(jù)庫操作方面的工作比較復(fù)雜,可以利用ADO在VC中實(shí)現(xiàn)數(shù)據(jù)庫編程。

        2.3.1引入ADO庫

        在Visual C++中使用ADO開發(fā)數(shù)據(jù)庫之前,需要引入ADO庫??梢栽陬^文件中引入ADO庫文件,方法如下:

        #import″c:program filescommon filessystemadomsado15.dll″

        #include

        #include

        #include″icrsint.h″

        預(yù)處理指令#import使程序在編譯過程中引入ADO動(dòng)態(tài)庫(msado15.dll)。接下來的兩個(gè)“#include”語句引入了頭文件來定義ADO2.0的類和接口標(biāo)識(shí)。最后的“#include”語句引入了ADO2.0數(shù)據(jù)綁定擴(kuò)展。

        2.3.2建立數(shù)據(jù)庫連接

        建立數(shù)據(jù)庫的連接需要使用連接對(duì)象(Connection Object)。首先定義一個(gè)ConnectionPtr類型的指針,代碼如下:

        ConnectionPtr m-pConnection;

        然后調(diào)用Create Instance方法實(shí)例化,代碼如下:

        m-pConnection.CreateInstance(uuidof(Connection));

        調(diào)用Connection對(duì)象的Open方法創(chuàng)建數(shù)據(jù)庫的連接,Open函數(shù)的原型如下:

        HRESULT Open(-bstr-t ConStr,-bstr-t UserID,-bstr-t Pwd,Long Opts);

        其中,ConStr是一個(gè)包含連接信息的字符串,UserID是訪問數(shù)據(jù)庫的用戶名稱,Pwd是訪問數(shù)據(jù)庫的密碼,Opts為可選參數(shù)。如果在連接字符串ConStr中包含了數(shù)據(jù)庫用戶名和密碼,UserID和Pwd值可以為空。

        2.3.3創(chuàng)建命令對(duì)象和記錄集對(duì)象

        CommandPtr m-pCommand;

        RecordsetPtr m-pRecordset;

        m-pCommand.CreateInstance(″ADODB.Command″);

        m-pRecordset.CreateInstance(-uuidof(Recordset));

        然后將建立的數(shù)據(jù)庫連接賦給m-pCommand,這樣利用m-pCommand就可以對(duì)打開的數(shù)據(jù)庫進(jìn)行SQL操作了:

        m-pCommand->ActiveConnection=m-pConnection。

        2.3.4將報(bào)文數(shù)據(jù)插入數(shù)據(jù)庫

        在每類報(bào)文譯碼類中定義了一個(gè)GenerateInsertSQL函數(shù),該函數(shù)無參數(shù),返回此類報(bào)文的插入SQL語句,這樣,對(duì)于某一類報(bào)文,其插入數(shù)據(jù)庫的代碼如下:

        //p為指向運(yùn)行時(shí)某種報(bào)文的對(duì)象的指針

        //插入數(shù)據(jù)字符串

        CString sql=p->GenerateInsertSQL();m-pCommand->CommandText=sql;

        m-pCommand->Execute(&vNULL,&vNULL,adCmdText);

        3 數(shù)據(jù)有效性檢驗(yàn)算法仿真

        3.1 數(shù)據(jù)有效性檢驗(yàn)?zāi)K設(shè)計(jì)

        3.1.1模塊主要功能

        有效性檢驗(yàn)?zāi)K[4]主要實(shí)現(xiàn)以下幾個(gè)關(guān)鍵功能:

        (1)根據(jù)ID編號(hào)或者地址,判斷該飛行數(shù)據(jù)是屬于哪架飛機(jī)的。ACTS可以同時(shí)實(shí)時(shí)監(jiān)控10架飛機(jī),每架飛機(jī)都有自己的ID號(hào),根據(jù)ID號(hào)就可以劃分該數(shù)據(jù)屬于哪架飛機(jī)的數(shù)據(jù);

        (2)根據(jù)時(shí)間戳判斷飛行數(shù)據(jù)是否延時(shí)或丟失。時(shí)間戳是判斷數(shù)據(jù)到達(dá)時(shí)間的重要依據(jù),有了時(shí)間戳才可以準(zhǔn)確判斷飛行數(shù)據(jù)是否發(fā)生了延時(shí)或者丟失。但前提是只有實(shí)現(xiàn)了ACTS各個(gè)分系統(tǒng)內(nèi)的時(shí)間同步,才可以利用時(shí)間戳來獲取這些數(shù)據(jù)之間的關(guān)系,對(duì)這些數(shù)據(jù)進(jìn)行分析;

        (3)根據(jù)各種飛行數(shù)據(jù)的特征以及先前獲得的經(jīng)驗(yàn)值進(jìn)行預(yù)估,根據(jù)預(yù)估值判斷數(shù)據(jù)是否正確。對(duì)于像一些記錄飛機(jī)工作是否正常的數(shù)據(jù),我們可以直接根據(jù)該類數(shù)據(jù)正常值的范圍就可以判斷數(shù)據(jù)是否正確;而對(duì)于像記錄飛機(jī)航跡的這些實(shí)時(shí)變化很大的數(shù)據(jù),我們就必須在該數(shù)據(jù)到達(dá)之前,利用卡爾曼濾波外推算法,估算出該數(shù)據(jù)的預(yù)估值,然后在該數(shù)據(jù)到達(dá)時(shí)進(jìn)行比對(duì),從而判斷出該數(shù)據(jù)是否正確;

        (4)數(shù)據(jù)發(fā)生延時(shí)、丟失或錯(cuò)誤情況后的處理。飛行數(shù)據(jù)地面預(yù)處理系統(tǒng)要完成工作就是將譯碼后正確、連續(xù)的數(shù)據(jù)送給后續(xù)數(shù)據(jù)處理系統(tǒng)進(jìn)行結(jié)算、實(shí)時(shí)顯示等操作。所以如果一旦地面接收到的數(shù)據(jù)發(fā)生上述情況,就必須采取相應(yīng)補(bǔ)償措施進(jìn)行處理。

        3.1.2數(shù)據(jù)有效性檢驗(yàn)

        有效性檢驗(yàn)?zāi)K處理數(shù)據(jù)的過程如圖2所示。

        (1)等待譯碼模塊送來的數(shù)據(jù);

        (2)根據(jù)時(shí)間戳判斷數(shù)據(jù)是否延時(shí)或丟失。如果該數(shù)據(jù)在有效時(shí)間內(nèi)到達(dá),則將該數(shù)據(jù)進(jìn)行數(shù)據(jù)正確性檢驗(yàn)。如果延時(shí)或丟失,就在日志中記錄該事件的發(fā)生,然后用其它輔助設(shè)備的測(cè)量值或者預(yù)估值代替該數(shù)據(jù);

        (3)利用正確性檢驗(yàn)算法進(jìn)行數(shù)據(jù)的正確性檢驗(yàn)。如果數(shù)據(jù)正確,則將數(shù)據(jù)存入數(shù)據(jù)庫并進(jìn)行進(jìn)一步的實(shí)時(shí)解算、顯示等處理。如果數(shù)據(jù)不正確,就在日志中記錄該事件的發(fā)生,然后用其它輔助設(shè)備的測(cè)量值或者預(yù)估值代替該數(shù)據(jù),進(jìn)行后續(xù)處理。

        圖2 數(shù)據(jù)有效性檢驗(yàn)流程圖Fig.2 Data validity inspection flowchart

        3.2 數(shù)據(jù)有效性檢驗(yàn)算法仿真驗(yàn)證

        對(duì)數(shù)據(jù)有效性檢驗(yàn)算法進(jìn)行驗(yàn)證的航跡數(shù)據(jù)來源于某型飛機(jī)的部分試飛數(shù)據(jù)。數(shù)據(jù)包括兩部分:

        (1)利用本機(jī)的機(jī)載飛行數(shù)據(jù)記錄器記錄的數(shù)據(jù),由于不經(jīng)過遠(yuǎn)距離無線傳輸,認(rèn)為是正確數(shù)據(jù);

        (2)在機(jī)載飛行數(shù)據(jù)記錄器記錄數(shù)據(jù)的同時(shí),由電臺(tái)無線傳輸?shù)降孛嬗涗浧鞯臄?shù)據(jù),由于實(shí)時(shí)傳輸過程環(huán)境的影響,數(shù)據(jù)中包含延時(shí)、丟失、錯(cuò)誤等情況。

        利用試飛數(shù)據(jù)來驗(yàn)證有效性檢驗(yàn)算法的方法是:選取地面記錄器上的部分出錯(cuò)的航跡數(shù)據(jù),然后由數(shù)據(jù)有效性檢驗(yàn)算法對(duì)這段錯(cuò)誤航跡數(shù)據(jù)進(jìn)行檢驗(yàn)和處理,最后將檢驗(yàn)及處理后的這段航跡數(shù)據(jù)與機(jī)載飛行數(shù)據(jù)記錄器上的原始航跡數(shù)據(jù)進(jìn)行比對(duì)。

        該組飛行數(shù)據(jù)采樣記錄頻率為1次/秒,這里選取第462~622 s的大氣機(jī)高度數(shù)據(jù)進(jìn)行檢驗(yàn)。這段時(shí)間內(nèi)可能由于傳輸環(huán)境惡劣等原因?qū)е碌?82 s高度值出現(xiàn)明顯偏差,第512 s數(shù)據(jù)發(fā)生延時(shí),第565 s數(shù)據(jù)丟失。結(jié)果如圖3~5所示。

        根據(jù)上述驗(yàn)證結(jié)果看,有效性檢驗(yàn)算法檢測(cè)出了數(shù)據(jù)的錯(cuò)誤、延時(shí)和丟失,并進(jìn)行相應(yīng)補(bǔ)償處理,得到一組連續(xù)的數(shù)據(jù)。與機(jī)載記錄的試飛數(shù)據(jù)進(jìn)行比較可以看出,該有效性檢驗(yàn)算法較準(zhǔn)確地恢復(fù)了出錯(cuò)的數(shù)據(jù),取得了良好效果。

        圖3 地面記錄的試飛數(shù)據(jù):飛機(jī)從4.5 km下降至2.1 km,改平后上升至3.9 kmFig.3 Ground recording test-fly data:the airplane descended from 4.5 km to 2.1 km and rose to 3.9 km after being steady

        圖4 經(jīng)有效性檢驗(yàn)算法處理后:飛機(jī)從4.5 km下降至2.1 km,改平后上升至3.9 kmFig.4 Data validity inspection algorithm processing:the airplane descended from 4.5 km to 2.1 km and rose to 3.9 km after being steady

        圖5 機(jī)載記錄的原始試飛數(shù)據(jù):飛機(jī)從4.5 km下降至2.1 km,改平后上升至3.9 kmFig.5 Airborne recording originality test-fly data:the airplane descended from 4.5 km to 2.1 km and rose to 3.9 km after being steady

        4 結(jié)束語

        本文提出了一種ACTS數(shù)據(jù)有效性檢驗(yàn)算法,有效地解決了數(shù)據(jù)傳輸過程中出現(xiàn)的錯(cuò)誤、延時(shí)和丟失等問題。該檢驗(yàn)算法對(duì)出錯(cuò)的數(shù)據(jù)進(jìn)行了修正,得到準(zhǔn)確、連續(xù)、平滑的數(shù)據(jù),供地面監(jiān)控系統(tǒng)準(zhǔn)確地實(shí)時(shí)監(jiān)控及評(píng)估。進(jìn)一步研究重點(diǎn)是對(duì)數(shù)據(jù)有效性檢驗(yàn)?zāi)K實(shí)時(shí)性進(jìn)行分析和驗(yàn)證。

        參考文獻(xiàn):

        [1] 喬林,楊志剛.Visual C++6.0 高級(jí)編程技術(shù)——MFC與多線程篇[M].北京:中國鐵道出版社,2000.

        QIAO Lin,YANG Zhi-gang. Visual C++6.0 Advanced Programming Technology:MFC and Multi-threading[M].Beijing: China Railway Press,2000. (in Chinese)

        [2] 李現(xiàn)勇.Visual C++串口通信技術(shù)與工程實(shí)踐[M].北京:人民郵電出版社,2004.

        LI Xian-yong. Visual C++ Serial Communication Technology and Engineering Practice[M].Beijing:People′s Posts& Telecom Press,2004.(in Chinese)

        [3] Andrew S Tanenbaum.Computer Networks[M].3rd ed. New York:Prentice Hall International,Inc.,1997.

        [4] 王帥.飛行器航跡數(shù)據(jù)產(chǎn)生及有效性檢測(cè)[D].成都:電子科技大學(xué),2004.

        WANG Shuai.Aircraft Track Data Generation and Data Validity Inspection[D].Chengdu:University of Electronic Science and Technology of China,2004.(in Chinese)

        [5] 梁德文.戰(zhàn)斗機(jī)航空電子系統(tǒng)最新的發(fā)展趨勢(shì)——網(wǎng)絡(luò)化[J].電訊技術(shù),2008,48(6):93-97.

        LIANG De-wen.Review on the New Development of Fighter Avionics System-Networking [J].Telecommunication Engineering,2008,48(6):93-97.(in Chinese)

        [6] DRS Air Combat Training System[Z].Florida:DRS Training & Control System,INC.,2007.

        [7] Autonomous Air Combat Maneuvering Instrumentation Training System[Z].Ireal:Isreal Aerospace Industries,Ltd.,2008.

        猜你喜歡
        飛行數(shù)據(jù)線程報(bào)文
        基于J1939 協(xié)議多包報(bào)文的時(shí)序研究及應(yīng)用
        汽車電器(2022年9期)2022-11-07 02:16:24
        CTCS-2級(jí)報(bào)文數(shù)據(jù)管理需求分析和實(shí)現(xiàn)
        淺析反駁類報(bào)文要點(diǎn)
        中國外匯(2019年11期)2019-08-27 02:06:30
        GARMIN1000系統(tǒng)維修平臺(tái)搭建預(yù)研究
        淺談飛行數(shù)據(jù)集中處理流程管理
        淺談linux多線程協(xié)作
        ATS與列車通信報(bào)文分析
        基于廣域信息管理的飛行數(shù)據(jù)服務(wù)設(shè)計(jì)與實(shí)現(xiàn)
        Linux線程實(shí)現(xiàn)技術(shù)研究
        么移動(dòng)中間件線程池并發(fā)機(jī)制優(yōu)化改進(jìn)
        成人无码激情视频在线观看| 少妇性l交大片| 国产精品调教| 欧美性受xxxx狂喷水| 日本午夜艺术一区二区| 亚洲精品无码永久在线观看| 欧美最猛黑人xxxx黑人表情| 国产精品久久国产三级国电话系列| 一区二区三区日本在线| 极品嫩模大尺度av在线播放| 骚片av蜜桃精品一区| 国产人成无码视频在线| 久久久99精品国产片| 中文字幕亚洲精品一区二区三区| 乱人伦中文无码视频在线观看| 久久精品无码一区二区乱片子| 在线日韩中文字幕乱码视频| 高级会所技师自拍视频在线| 成人综合婷婷国产精品久久蜜臀| 免费无码又爽又刺激高潮的视频网站| 97超碰中文字幕久久| 午夜精品久久久久久久久| 国产成人精品日本亚洲| 久久精品国产72国产精福利| 日本av不卡一区二区三区| 日韩av无码中文无码电影| 五月天激情小说| 成人国产自拍在线播放| 一区二区三区人妻av| 国产免国产免费| 99久久久无码国产精品动漫| 午夜桃色视频在线观看| 欧美成人看片一区二区三区尤物| 馬与人黃色毛片一部| 二区三区视频在线观看| 国产极品少妇一区二区| 男受被做哭激烈娇喘gv视频| 国产v精品成人免费视频400条| 一区二区视频在线国产| 国产精品无码无片在线观看3d| 国产欧美久久久另类精品|