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

        ?

        基于QT的無人直升機(jī)地面站集成管理軟件設(shè)計(jì)與實(shí)現(xiàn)

        2021-06-17 07:12:02覃石昌
        電子制作 2021年5期
        關(guān)鍵詞:數(shù)據(jù)格式管理軟件串口

        覃石昌

        (中國直升機(jī)設(shè)計(jì)研究所無人機(jī)事業(yè)部, 江西景德鎮(zhèn),333001)

        0 引言

        對(duì)于無人直升機(jī)地面控制站來說,內(nèi)部運(yùn)行著多種類復(fù)雜的設(shè)備,幾乎所有設(shè)備都和外界進(jìn)行數(shù)據(jù)交互,控制站的正常運(yùn)行依賴于這些設(shè)備的正常工作,由于站內(nèi)設(shè)備數(shù)目眾多且軟件異構(gòu)多樣化,為每一款設(shè)備預(yù)留專門的監(jiān)控軟件是不現(xiàn)實(shí)、沒有必要的,因而需要集成管理軟件對(duì)所有設(shè)備進(jìn)行集中進(jìn)行監(jiān)控、管理。C++是強(qiáng)類型的面向?qū)ο箝_發(fā)語言,使用其開發(fā)的代碼具有運(yùn)行效率高、代碼簡潔、可直接操作硬件等優(yōu)點(diǎn)。但是,C++并沒有專門的UI組件,也缺乏可靠的線程通信機(jī)制。QT是一套跨平臺(tái)的C++開發(fā)庫,其封裝了大量的工具庫;界面源碼與業(yè)務(wù)代碼充分解耦合;QT的信號(hào)槽機(jī)制十分適合UI組件刷新。因而本文利用QT開發(fā)無人直升機(jī)地面站[1]無人直升機(jī)地面站集成管理軟件。

        1 軟件架構(gòu)

        無人直升機(jī)地面站集成管理軟件采用模塊化設(shè)計(jì),界面源碼與業(yè)務(wù)代碼充分解耦,具有良好的復(fù)用性和擴(kuò)展性。軟件架構(gòu)如圖1所示,分為顯示界面、管理界面、通信、后臺(tái)管理四大模塊。

        圖1 基于QT的集成管理軟件架構(gòu)圖

        底層的通信模塊中網(wǎng)絡(luò)通信部件基于QUdpSocket進(jìn)行開發(fā),串口通信部件基于QSerialPort進(jìn)行開發(fā),其他界面顯示、業(yè)務(wù)邏輯部件均基于QT庫進(jìn)行開發(fā)。

        2 通信模塊設(shè)計(jì)

        軟件中的通信模塊主要功能室向界面提供顯示數(shù)據(jù),對(duì)外界提供交互接口,QT作為一款功能強(qiáng)大的C++類庫,庫內(nèi)有豐富的通信組件。無人直升機(jī)地面控制站的主要功能是和無人直升機(jī)交互數(shù)據(jù),該類數(shù)據(jù)通信具有數(shù)據(jù)量大、對(duì)時(shí)間敏感等特點(diǎn),所以采用UDP通信;同時(shí),地面站內(nèi)設(shè)有多套冗余設(shè)備提高地面站的可靠性,冗余設(shè)備之間除了UDP外,也使用串口通信,因而,從全站統(tǒng)一數(shù)據(jù)傳輸協(xié)議,提高系統(tǒng)集成效率的目的出發(fā),集成管理軟件與外界的通信接口基于UDP和串口。通信模塊以動(dòng)態(tài)鏈接庫形式被主程序調(diào)用。

        通信模塊設(shè)計(jì)流程如圖2所示。

        圖2 基于QT的通信模塊設(shè)計(jì)流程圖

        ■2.1 網(wǎng)絡(luò)通信

        根據(jù)需求,集成管理軟件與服務(wù)器之間要實(shí)現(xiàn)狀態(tài)管理、權(quán)限控制等功能?;赨DP的無狀態(tài)通信的特點(diǎn),集成管理軟件與服務(wù)器的交互數(shù)據(jù)格式分為兩部分,第一部分為通用請求類型數(shù)據(jù),第二部分為通用反饋類型數(shù)據(jù),反饋類型數(shù)據(jù)是對(duì)請求數(shù)據(jù)的執(zhí)行反饋。

        通用請求類型數(shù)據(jù)格式如下:

        actCode存放的是本次請求數(shù)據(jù)的類型,表示該請求是否需要結(jié)果反饋,actData數(shù)組內(nèi)存放各種請求數(shù)據(jù),例如,用戶(席位)登陸的請求數(shù)據(jù),actData內(nèi)存放用戶ID、密碼、角色等數(shù)據(jù);用戶(席位)管理的請求數(shù)據(jù),actData內(nèi)存放的是席位ID、管理類型ID等數(shù)據(jù)。

        通用反饋類型數(shù)據(jù)格式如下:

        其中actResult存放ID為actNum的請求的執(zhí)行結(jié)果,replyText數(shù)組存放該請求的文本信息,一般存放請求執(zhí)行失敗的錯(cuò)誤信息。

        集成管理軟件在服務(wù)器登錄期間要保持狀態(tài)信息,需要定時(shí)發(fā)送心跳信息,數(shù)據(jù)格式如下:

        為了提高效率、避免占用主線程導(dǎo)致主界面出現(xiàn)卡滯,網(wǎng)絡(luò)通信需要運(yùn)行在線程上,代碼如下:

        網(wǎng)絡(luò)通信線程接收到數(shù)據(jù)存放在緩沖區(qū),等待數(shù)據(jù)解析線程解析。

        ■2.2 串口通信

        串口通信作為網(wǎng)絡(luò)通信的備份冗余,傳輸相同的數(shù)據(jù)信息,優(yōu)先級(jí)比網(wǎng)絡(luò)通道低。串口傳輸?shù)耐ㄓ谜埱髷?shù)據(jù)格式如下:

        因?yàn)榇谕ㄐ诺臄?shù)據(jù)流傳輸特點(diǎn),因而串口的數(shù)據(jù)格式需要在網(wǎng)絡(luò)數(shù)據(jù)格式基礎(chǔ)上增加起始標(biāo)識(shí)和結(jié)束標(biāo)識(shí),其中startFlag數(shù)組內(nèi)存放開始標(biāo)志常量0xAA,0xAA;endFlag數(shù)組內(nèi)存放結(jié)束標(biāo)志常量0xBB,0xBB。

        為了提高效率、避免占用主線程導(dǎo)致主界面出現(xiàn)卡滯,串口通信業(yè)同樣需要運(yùn)行在線程上,主要代碼如下所示:

        串口通信線程初始化串口列表,監(jiān)聽串口數(shù)據(jù),接收到串口流數(shù)據(jù)后,截獲0xAA標(biāo)記作為數(shù)據(jù)幀的開始標(biāo)記,截獲0xBB作為數(shù)據(jù)幀的結(jié)束標(biāo)記,開始標(biāo)志與結(jié)束標(biāo)志之間的數(shù)據(jù)作為完整數(shù)據(jù)幀發(fā)送到串口數(shù)據(jù)緩沖中,等待數(shù)據(jù)解析線程解析。

        ■2.3 數(shù)據(jù)解析

        通信模塊接收到的數(shù)據(jù)還不能直接發(fā)送到界面模塊顯示,因?yàn)閿?shù)據(jù)還要經(jīng)過協(xié)議解析、運(yùn)算、以及業(yè)務(wù)邏輯處理后才能由界面顯示出來。

        數(shù)據(jù)解析由單獨(dú)線程執(zhí)行,如圖3所示,首先讀取協(xié)議文件內(nèi)容,從緩沖區(qū)取出通信模塊接收到的數(shù)據(jù),根據(jù)協(xié)議解析數(shù)據(jù)目的地、數(shù)據(jù)格式、數(shù)據(jù)單位等,通過信號(hào)槽發(fā)送到界面模塊。

        圖3 數(shù)據(jù)解析流程圖

        3 界面模塊設(shè)計(jì)

        主界面分為四大部分,左側(cè)為時(shí)間顯示部件,中間是狀態(tài)顯示部件與狀態(tài)管理部件,右側(cè)是菜單部件。

        如圖4所示,時(shí)間顯示部件可顯示本地時(shí)間與時(shí)統(tǒng)設(shè)備時(shí)間,當(dāng)顯示時(shí)統(tǒng)設(shè)備時(shí)間時(shí),通信模塊定時(shí)通過UDP接收時(shí)統(tǒng)設(shè)備發(fā)送的授時(shí)信息,經(jīng)過數(shù)據(jù)解析,推送到時(shí)間顯示部件顯示出來。

        圖4 時(shí)間顯示部件

        如圖5所示,狀態(tài)顯示部件主要顯示全站設(shè)備的自檢、運(yùn)行狀態(tài)信息,點(diǎn)擊狀態(tài)圖標(biāo),將會(huì)彈出地面站運(yùn)行詳細(xì)狀態(tài)子界面,通過UDP組播定時(shí)接收服務(wù)器推送的信息,實(shí)現(xiàn)顯示任務(wù)模式、主鏈、副鏈、服務(wù)器、控制器等設(shè)備的狀態(tài)。

        圖5 狀態(tài)顯示部件圖

        消息提示欄顯示地面站內(nèi)設(shè)備變動(dòng)、重大狀態(tài)更改的消息,例如,某設(shè)備出現(xiàn)故障,鏈路冗余線路發(fā)生切換等消息都會(huì)及時(shí)推送到消息顯示欄,從而為席位操作員提供恰當(dāng)?shù)念A(yù)警通知。

        如圖6所示,狀態(tài)管理部件是全站設(shè)備的管理入口,界面部署負(fù)責(zé)席位計(jì)算機(jī)軟件的顯示位置安排;虛擬鍵盤在席位計(jì)算機(jī)不能連接物理鍵盤的情況下提供鍵盤的作用,進(jìn)程管理可以查看、關(guān)閉本席位或站內(nèi)其他計(jì)算機(jī)的進(jìn)程;記錄回放負(fù)責(zé)記錄站內(nèi)數(shù)據(jù)流,為無人直升機(jī)飛行任務(wù)過程的故障排查、訓(xùn)練仿真提供數(shù)據(jù)支撐;軟件管理主要對(duì)席位和其他計(jì)算機(jī)的軟件安裝進(jìn)行管理;系統(tǒng)管理主要對(duì)服務(wù)器的運(yùn)行進(jìn)行管理,包括參數(shù)設(shè)置,冗余手動(dòng)切換等。

        圖6 狀態(tài)管理部分圖

        如圖7所示,菜單部件是集成管理軟件的管理入口,主要功能有角色切換、注銷、密碼修改等。

        圖7 菜單部件圖

        4 應(yīng)用實(shí)例

        集成管理軟件部署于無人直升機(jī)地面站人機(jī)交互席位上。首次運(yùn)行前,在軟件配置文件配置本席位IP地址、UDP通信參數(shù)等配置參數(shù),其他的應(yīng)用軟件有集成管理軟件啟動(dòng)、關(guān)閉,進(jìn)行集中管理。

        經(jīng)過在U-M無人直升機(jī)項(xiàng)目的實(shí)際運(yùn)行驗(yàn)證,集成管理軟件運(yùn)行良好,能夠?qū)崟r(shí)顯示控制站內(nèi)各設(shè)備的狀態(tài),并能有效進(jìn)行管理,為無人直升機(jī)控制站的穩(wěn)定運(yùn)行提供了必要的幫助。

        5 結(jié)束語

        本文詳細(xì)介紹了基于QT的無人直升機(jī)地面站集成故那里軟件的開發(fā)過程。用本文方法開發(fā)的集成管理軟件,經(jīng)在實(shí)際無人機(jī)控制站運(yùn)行驗(yàn)證,該集成管理軟件能夠?qū)崟r(shí)監(jiān)控站內(nèi)設(shè)備動(dòng)態(tài)并對(duì)其進(jìn)行有效管理,具有界面直觀、操作方便等特點(diǎn),為無人直升機(jī)的飛行提供了一定的幫助。

        猜你喜歡
        數(shù)據(jù)格式管理軟件串口
        倉儲(chǔ)管理軟件在物流自動(dòng)化解決方案中的應(yīng)用與發(fā)展
        淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
        項(xiàng)目法在工程造價(jià)管理軟件中的應(yīng)用
        在智能交通系統(tǒng)中PLC數(shù)據(jù)格式轉(zhuǎn)換方法的研究
        電子測試(2018年1期)2018-04-18 11:52:49
        共享電單車的管理軟件
        USB接口的多串口數(shù)據(jù)并行接收方法探索
        基于藍(lán)牙串口適配器的GPS接收機(jī)與AutoCAD的實(shí)時(shí)無線通信
        地礦測繪(2015年3期)2015-12-22 06:27:26
        論子函數(shù)在C語言數(shù)據(jù)格式輸出中的應(yīng)用
        DWG與SHP數(shù)據(jù)格式互轉(zhuǎn)換方法研究——以龍巖規(guī)劃測繪數(shù)據(jù)為例
        基于并行控制的FPGA多串口拓展實(shí)現(xiàn)
        久久精品无码av| 丰满熟女人妻一区二区三区| 日本一区二区不卡二区| 欧美做受又硬又粗又大视频| 台湾佬自拍偷区亚洲综合| 在线精品无码一区二区三区| 91亚洲国产成人久久精品网站| av天堂最新在线播放| 免费人妻精品一区二区三区| 亚州综合激情另类久久久| 米奇亚洲国产精品思久久| 午夜福利视频一区二区二区| 亚洲婷婷五月综合狠狠爱 | 无码av中文一区二区三区| 午夜dj在线观看免费视频 | 国产在线精彩自拍视频| 亚洲夫妻性生活免费视频| 超清纯白嫩大学生无码网站| 男人j进女人p免费视频| av免费在线播放一区二区| 优优人体大尺大尺无毒不卡| 一本一道av无码中文字幕| 人妻无码在线免费| 久亚洲一线产区二线产区三线麻豆| 国产精品乱码人妻一区二区三区| 牛鞭伸入女人下身的真视频| 亚洲成AV人片在一线观看| av网站不卡的av在线| 精品久久人妻av中文字幕| 91麻豆国产香蕉久久精品| 国产黄色一区二区福利| 亚洲一区毛片在线观看| 无码少妇a片一区二区三区| 无码av一区在线观看| 人妻少妇被猛烈进入中文| 朋友的丰满人妻中文字幕| 同性男男黄g片免费网站| 女人被躁到高潮嗷嗷叫免费软| 久久96日本精品久久久| 蜜桃视频无码区在线观看| 亚洲av美女在线播放啊|