999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Qt的系留多旋翼無人機地面站軟件設計與實現

2023-07-20 23:26:45孫美娟鄒天宇馬靖
無線互聯科技 2023年9期
關鍵詞:指令界面信息

孫美娟 鄒天宇 馬靖

摘要:系留多旋翼無人機在多旋翼無人機的基礎上增加了系留線纜,使其可以通過地面電源直接供電,解決了多旋翼無人機續航時間短的問題。對此,文章以Qt5.14.2為開發平臺,開發了一套功能完整、操作簡潔的系留多旋翼無人機地面站軟件系統。該系統實現了對無人機遙測數據實時顯示、遙測指令發送、故障報警提示、電子地圖顯示、搭載不同載荷、數據存儲和回放等功能。經過多次實際飛行測試,驗證了系統功能的可靠性、完整性及可移植性。

關鍵詞:系留多旋翼;無人機;Qt;地面站軟件

中圖分類號:TP18

文獻標志碼:A

0 引言

系留多旋翼無人機在傳統無人機技術上增加了系留線纜系統,既可采用自身攜帶的備用電池進行供電,也可通過地面線纜系統向無人機供電,實現為無人機提供長期、不間斷的電力動力,從而實現無人機長時間滯空1-2。與普通多旋翼無人機相比,系留多旋翼無人機解決了其續航時間短、動力不足等缺陷,能夠廣泛應用于應急救災、電磁監控等民用領域,同時也在軍事領域發揮重要作用3-4

本文是基于Qt5.14.2開發環境進行的無人機地面站軟件開發,使用C++語言編程,可實現“一次編寫,隨處編譯”,支持程序在Windows和Linux平臺下運行,有利于國產化的推廣5

1 軟件需求與功能設計

1.1 軟件需求

本軟件主要適用于某項目系留多旋翼無人機的控制,軟件需滿足如下設計需求:

(1)能夠控制無人機及載荷狀態,實時顯示無人機飛行狀態信息及載荷狀態信息;(2)對接收到的異常數據進行報警提示;(3)加載電子地圖并在地圖上顯示定位信息及飛行軌跡信息;(4)支持搭載不同類型載荷;(5)支持對接收的飛行數據及載荷數據進行存儲及回放。

1.2 功能設計

根據上述需求,系統功能采用模塊化設計,軟件主要功能如圖1所示。

2 通信模塊

通信模塊的實現是通過UDP協議下的Socket網絡編程實現的。UDP通信是無連接型的,相比于TCP具有更高的傳輸速率。通常在傳輸圖像信息、信號信息等大數據量或周期性的數據時采用UDP傳輸,因為傳輸過程中即使偶爾丟一兩包數據,也不影響結果的可靠性。

2.1 發送遙控指令

遙控指令的發送采用UDP組播的形式,每條指令由數據頭、有效長度、消息ID、指令數據、校驗字組成。遙控指令主要包括控制無人機起飛前的檢查指令、起飛指令、飛行中的控制指令、降落指令等。其中,起飛前檢查包括電機檢測、磁校準、電機轉動、參數設置等指令;飛行過程中包括對無人機的高度、航向、飛行時間等的規劃指令。

操作人員可以隨時單擊地面站軟件上的指令按鈕向無人機發送相應指令,但無人機的安全飛行對指令的發送有其內在的邏輯要求。因此,發送遙控指令最大的難點在于如何實現大量指令的合理發送。這需要根據系留多旋翼無人機的特點,了解其內部操作邏輯,既能滿足研制要求,也符合無人機安全飛行原則。比如:發送起飛指令的前提是需先成功發送解鎖指令,使飛機達到解鎖狀態;而發送解鎖指令的前提需先成功發送自檢指令,完成無人機起飛前的檢查。

2.2 接收遙測數據

實現對遙測數據的接收和解析是地面站軟件的核心功能之一,無人機通過機載數據鏈路將采集的飛行信息和載荷狀態信息等數據發送到地面的數據鏈路接收裝置,地面鏈路再將接收的數據傳送到地面站軟件。軟件接收到數據后,不能直接發送到界面顯示,需要先按照指定協議校驗,校驗通過再進行解析、運算以及邏輯處理,將數據顯示到界面6。接收遙測數據的代碼如下。

(1)使用QUdpSocket,創建組播對象。

QUdpSocket* udpYKGroup;

udpYKGroup = new QUdpSocket(this);

(2)綁定IP和端口。

bool YKret = udpYKGroup->

bind(QHostAddress(localIP),YK_Port, QUdpSocket::ShareAddress|QUdpSocket::ReuseAddressHint); //讀取配置文件中的localIP

(3)指定接收數據的網卡。

QListlist=QNetworkInterface::allInterfaces(); //獲取系統所有的網絡接口

QNetworkInterface intf;

foreach(QNetworkInterface intf, list)

{

foreach(QNetworkAddressEntry entry, intf.addressEntries()){

if(entry.ip()==QHostAddress(localIP)){

udpYCGroup->setMulticastInterface(intf);

……

}}

(4)接收遙測數據。

while(udpYCGroup->hasPendingDatagrams())

{

QByteArray *datagram;

datagram = new QByteArray();

datagram->resize(udpYCGroup->pendingDatagramSize());

udpYCGroup->readDatagram(datagram->data(), datagram->size());

}

(5)數據校驗、解析。

3 數據顯示模塊

為保證操作便捷、界面整潔,地面站軟件將接收到的數據分為幾個界面進行顯示,分別為主界面、飛行數據信息界面以及載荷數據信息界面。其中,主界面主要顯示載荷圖像信息、報警信息和重要飛行數據信息。飛行數據界面顯示無人機下傳的所有飛行數據信息;載荷信息界面顯示載荷設備下傳的所有載荷狀態信息。

3.1 飛行數據信息顯示

飛行數據信息采用圖表、圖形與文字的組合方式進行顯示。其中,與無人機飛行狀態有關的橫滾角、俯仰角、航向角等關鍵數據使用實時曲線圖形式顯示在軟件的主界面,以便操作人員通過界面曲線變化情況,直觀地觀察無人機整體飛行狀態,及時調整飛行姿態。無人機的信號強弱、電壓值和電池電量,參考手機的信號和電池電量的顯示形式,以圖形的方式在主界面的右上方顯示,操作人員可以實時觀察無人機通信和電壓情況。無人機下傳的所有飛行數據信息在飛行信息界面顯示。當有需要時,操作人員可以點擊飛行信息按鈕調出該界面,從而更全面、準確地觀察無人機的飛行狀態。

3.2 載荷數據信息顯示

載荷數據的顯示內容由無人機搭載的載荷類型決定,不同載荷類型顯示界面不同。載荷數據主要分為兩部分,一部分為載荷自身的設備狀態信息,操作人員可以通過點擊主界面的載荷狀態按鈕調出該界面;另一部分為載荷設備探測到的圖像信息、信號頻譜信息等,該信息在軟件主界面顯示。

3.3 報警信息顯示

故障報警信息提示是無人機地面站軟件極其重要的功能之一,它可以提醒地面操作人員根據報警內容實施相應的控制策略,以便及時排除故障、保證飛行安全6。該軟件主要通過文字、圖形及聲音3種方式傳遞故障信息,并且劃分故障等級。故障等級不同,采用的報警方式不同。

(1)當出現飛行數據超出協議規定的范圍的情況時,飛行數據信息界面中相應的數據顯示為:“--”,且文字顏色由正常的綠色變為紅色,以便操作人員查看。

(2)當機載電壓值、地面電壓值或電池電量值低于設定的報警閾值,則對應圖標變為紅色。

(3)當出現鏈路丟失、解算失敗、無IMU數據、低電壓返航、氣壓計異常等報警提示時,軟件主界面頂端位置彈出報警提示框,并在報警框中顯示故障信息,為使報警信息更加醒目,報警框中文字顏色為紅色。

(3)當涉及飛行安全的重要指標出現故障或載荷設備鏈接異常時,軟件同時會通過聲音報警的方式提示操作人員。當報警解除后,聲音報警自動停止,操作人員也可以手動關閉聲音報警。

4 電子地圖模塊

該系統使用第三方地圖庫,采用動態顯示加載外部庫的方式調用地圖庫。地面站軟件使用Qt自帶的QLibrary進行加載,通過調用協議中指定的接口函數加載電子地圖,并將無人機下傳的經度、緯度、高度等信息傳送給地圖庫。地圖庫可以對無人機當前飛行位置進行標注,繪制無人機運行軌跡,并支持地圖的基本操作功能,包括:放大、縮小、清除軌跡、打開漫游、取消漫游、進入量算、退出量算等。

加載地圖庫的步驟如下:

(1)把調用的地圖庫放在與地面站軟件.exe同一路徑中。

(2)在地面站軟件顯示地圖的UI界面上拖拽一個QWidget控件,用于顯示加載的地圖。

(3)加載地圖庫。

5 數據存儲與回放

5.1 數據存儲

數據存儲的主要功能是按照指定的路徑和存儲格式存儲無人機下傳的飛行數據及載荷設備下傳的圖像數據等信息,并且能夠在必要時將存儲的數據進行回放。

本軟件采用文本的形式存儲數據,數據存儲在一個單獨的線程中進行,使用QTextStream類進行存儲,該類能將二進制文件以數據流的形式進行存儲7。當網口從指定端口和IP地址接收到無人機下傳的飛行數據后,在指定文件夾下,建立以當前時間命名的文本文檔,通過QTextStream的out函數將接收的數據寫入文本文檔中。

5.2 數據回放

數據回放功能主要是根據選擇的數據文件將存儲的數據以與接收時完全相同的方式顯示,復現飛行狀況,以便更準確地對飛行數據進行分析8

數據回放的前提需斷開無人機與地面站軟件的連接。否則,界面既顯示無人機下傳的數據又顯示回放數據,會造成界面數據跳動、圖像錯亂等現象。

數據回放多用于觀察無人機整體飛行狀況或故障排查,很多情況下并不需要對每一幀數據都仔細觀察,而在排查故障時,又需要對故障數據詳細排查。因此,本研究設計了6種回放速度,分別為0.5倍、0.75倍、正常速度、1.5倍、2倍、3倍。操作人員可以通過點擊回放速度按鈕,選擇合適的回放速度。

6 測試結果分析及結論

開發完成的地面站軟件經過3種測試方式驗證其性能。(1)專門開發了一套針對此地面站軟件的測試程序,對軟件的功能進行逐一測試;(2)邀請具有測評資質的第三方測評機構對軟件測評,測評機構分別對軟件的功能、外部接口、內部接口、適應性、安全性等方面進行了兩輪測試,軟件最終通過測評;(3)在各種環境下,經多輪實際飛行實驗,對軟件功能進行測試。經多種測試結果分析,該套軟件具有界面簡潔、操作方便等特點,較好地實現了各部分功能,具有較強的實用性。整個系統是基于Qt平臺開發的,具有良好的可移植性和擴展性。

參考文獻

[1]付松源.系留多旋翼無人機及其在戰術通信中的應用[J].電子技術應用,2018(4):14-17,22.

[2]龍文彪.系留多旋翼無人機及其應用[J].科技創新導報,2020(2):57,59.

[3]吳侹.系留多旋翼無人機通信系統在應急救災通信中的應用[J].移動通信,2016(15):68-71.

[4]李帥,范項媛.基于Qt的無人機地面站軟件系統的設計[J].雷達科學與技術,2017(4):410-414,420.

[5]吳許夢華,龐振岳.基于Qt的多旋翼電動無人機地面站軟件設計與實現[J].飛機設計,2020(3):9-13,17.

[6]寧金星,盧京潮,閆建國.基于VC++的無人機飛控地面站軟件的開發[J].計算機測量與控制,2009(3):596-598.

[7]SUMMERFIELD M.Advanced Qt programming:creating great software with C++ and Qt 4[M].London:Prentice Hall,2011.

[8]嚴赫.無人機地面站軟件的設計實現及其數據庫應用[D].長春:吉林大學,2019.

(編輯 王永超)

Design and implementation of ground station software for tethered multi-rotor unmanned aerial vehicle based on QtSun Meijuan, Zou Tianyu, Ma Jing

(Spaceflight Shenzhou Craft Co., Ltd., Tianjin 300301, China)

Abstract: The tethered multi-rotor UAV adds tethered cables on the basis of the multi rotor UAV, so that it can be directly powered by the ground power supply. Therefore,the problem of short endurance of multi rotor UAV is solved. In this regard, a ground station software system of tethered multirotor UAV with complete functions and simple operation is developed based on Qt5.14.2. The system realizes the functions of real-time display of UAV telemetry data,telemetry command sending,fault alarm prompt, electronic map display, carrying different loads, data storage and playback. After several actual flight tests, the reliability, integrity and portability of the system functions are verified.

Key words: tethered multi-rotor; unmanned aerial vehicle; Qt; ground station software

猜你喜歡
指令界面信息
聽我指令:大催眠術
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
人機交互界面發展趨勢研究
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
坐標系旋轉指令數控編程應用
機電信息(2014年27期)2014-02-27 15:53:56
主站蜘蛛池模板: 中国一级毛片免费观看| 朝桐光一区二区| 综合色区亚洲熟妇在线| 日本少妇又色又爽又高潮| 激情亚洲天堂| 亚洲精品日产精品乱码不卡| 欧美亚洲国产一区| 亚洲日本中文字幕天堂网| 日韩欧美成人高清在线观看| 日韩中文精品亚洲第三区| 视频二区亚洲精品| 久久亚洲精少妇毛片午夜无码| 国产成人盗摄精品| 亚洲永久视频| 欧美一级高清片久久99| 欧美日韩午夜| 婷婷午夜天| 亚洲成人一区二区| 99免费在线观看视频| 亚洲免费毛片| 伊人网址在线| 日韩av电影一区二区三区四区| 亚洲欧美成aⅴ人在线观看| 欧美在线视频不卡第一页| 在线视频97| 综合久久五月天| 免费xxxxx在线观看网站| 欧美精品啪啪| 成色7777精品在线| 夜精品a一区二区三区| 国产91麻豆免费观看| 伊人国产无码高清视频| 亚洲欧美日韩色图| 国产成人精彩在线视频50| 人人澡人人爽欧美一区| 亚洲一区二区三区国产精华液| 亚洲第一成人在线| 国产精品一线天| 国产精品高清国产三级囯产AV| 五月天在线网站| 国产自在线拍| 99视频在线免费观看| 青草精品视频| 五月六月伊人狠狠丁香网| 青青久视频| 欧美高清国产| 午夜福利在线观看入口| 国产成人啪视频一区二区三区| 91精品啪在线观看国产| 国产色婷婷| 91精品视频播放| 91美女视频在线观看| 欧洲高清无码在线| 伊人久久影视| 国产成本人片免费a∨短片| 中文字幕在线一区二区在线| 亚洲天堂啪啪| 国产SUV精品一区二区| 欧美不卡视频一区发布| 永久免费无码成人网站| 亚洲精品视频在线观看视频| 亚洲人成网址| 亚洲一区精品视频在线 | 亚洲第一成年人网站| 热久久这里是精品6免费观看| 视频一本大道香蕉久在线播放| 国产日本视频91| 中文字幕在线播放不卡| 国产无码高清视频不卡| 久久精品视频亚洲| 人人看人人鲁狠狠高清| 日韩精品一区二区三区中文无码| 91精品福利自产拍在线观看| 国产精品污污在线观看网站| 欧美一区二区精品久久久| 亚洲中文精品人人永久免费| 日本一本在线视频| 伊人久综合| 日日拍夜夜嗷嗷叫国产| 草草影院国产第一页| 日韩AV手机在线观看蜜芽| 中文字幕人成人乱码亚洲电影|