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

基于Qt 的手持式監(jiān)測接收機(jī)人機(jī)交互界面設(shè)計與實現(xiàn)

2021-06-17 12:42:22彭華仁房鵬飛
電子制作 2021年7期
關(guān)鍵詞:界面信號

彭華仁,房鵬飛

(中電科思儀科技股份有限公司,山東青島,266555)

0 引言

隨著無線電通信技術(shù)以及無線電子設(shè)備的發(fā)展,城市環(huán)境下的電磁環(huán)境越來越復(fù)雜,不同無線電系統(tǒng)間干擾以及人為干擾頻發(fā),非法異常信號干擾人們正常生活的現(xiàn)象頻繁發(fā)生。為了更加高效的利用頻譜資源、保護(hù)人們的信息安全,就需要對無線電信號進(jìn)行監(jiān)測和管理,對非法的無線電干擾信號進(jìn)行查處。監(jiān)測接收機(jī)是進(jìn)行無線電頻譜監(jiān)測、查找干擾源的重要工具。其中,小型化的手持式監(jiān)測接收機(jī)是進(jìn)行現(xiàn)場干擾源搜索與查找的必備工具,具備一個友好的人機(jī)交互界面將有助于其發(fā)揮更好的作用。

干擾就是使用非法的信號占用合法信號的頻率資源,造成合法信號通信的中斷,對信號頻域的分析是查找干擾信號的有效手段。利用手持式監(jiān)測接收機(jī)進(jìn)行干擾信號的現(xiàn)場查找時,就是使用接收機(jī)掃描一定頻段內(nèi)的信號,分析得到信號頻譜,通過觀察頻譜圖來發(fā)現(xiàn)干擾信號,對于間歇性的干擾信號可通過三維瀑布圖進(jìn)行查找。由此可見,頻譜圖和瀑布圖的顯示是手持式監(jiān)測接收機(jī)人機(jī)界面必須具備的功能。同時,由于掃描速度是手持式監(jiān)測接收機(jī)的一項重要指標(biāo),掃描速度越快越有利于發(fā)現(xiàn)干擾信號,這就對頻譜圖和瀑布圖的刷新速度提出了很高的要求。本文將基于Qt 開發(fā)環(huán)境設(shè)計一款人機(jī)交互軟件,實現(xiàn)手持式監(jiān)測接收機(jī)頻譜圖和瀑布圖的高效刷新顯示。

1 人機(jī)交互界面設(shè)計

■1.1 開發(fā)工具選擇

Qt 是一個跨平臺的用于創(chuàng)建精彩用戶界面和強(qiáng)大原生應(yīng)用的框架,它包括一套跨平臺的類庫、一套整合的開發(fā)工具和一個跨平臺的集成開發(fā)環(huán)境Qt Creator,是進(jìn)行人機(jī)交互界面開發(fā)的最佳選擇之一,與其他圖形界面開發(fā)工具相比,它具有更優(yōu)秀的跨平臺特性,能夠?qū)崿F(xiàn)“一次編寫,隨處編譯”。Qt 中提供了兩種開發(fā)人機(jī)交互界面的方式:Qt Widgets 和Qt Quick。其中,Qt Quick 是Qt 提供的一種高級用戶界面工具包,它包括描述性語言QML、大量的用戶界面元素、C++與QML 混合編程等眾多技術(shù),使用它可輕松完成移動應(yīng)用、嵌入式設(shè)備等用戶界面的開發(fā)。

本文所要設(shè)計的手持式監(jiān)測接收機(jī)人機(jī)交互界面需要具備頻譜圖與瀑布圖的高效刷新顯示,還需要具備友好的人機(jī)交互,支持觸控以及手勢操作,方便用戶操控設(shè)備,對顯示圖形進(jìn)行縮放操作,觀看頻譜細(xì)節(jié)。其中,頻譜圖與瀑布圖的顯示需要涉及大量的數(shù)據(jù)運(yùn)算,比如頻譜數(shù)據(jù)的插值抽取與坐標(biāo)映射、瀑布圖數(shù)據(jù)的顏色映射等。對于復(fù)雜的數(shù)據(jù)運(yùn)算,使用C++實現(xiàn)能夠充分發(fā)揮其性能優(yōu)勢,而對于圖形的觸控縮放操作以及刷新顯示則更加適合用QML 語言進(jìn)行開發(fā)。為此,本文將使用Qt Quick 進(jìn)行手持式監(jiān)測接收機(jī)人機(jī)交互界面的開發(fā),利用其提供的C++與QML 混合編程技術(shù)實現(xiàn)數(shù)據(jù)的快速處理以及頻譜圖與瀑布圖的高效刷新顯示。在人機(jī)交互界面的設(shè)計中,C++與QML 混合編程技術(shù)的使用以及瀑布圖的高效刷新技術(shù)是其中設(shè)計難點(diǎn),本文將重點(diǎn)從這兩個方面展開論述。

■1.2 C++與QML 混合編程分層架構(gòu)設(shè)計

人機(jī)交互界面軟件采用C++與QML 混合編程技術(shù)進(jìn)行設(shè)計,分為數(shù)據(jù)處理層和界面顯示層。數(shù)據(jù)處理層用C++實現(xiàn),主要負(fù)責(zé)從底層控制端獲取接收機(jī)實時產(chǎn)生的頻譜數(shù)據(jù)以及將頻譜數(shù)據(jù)轉(zhuǎn)換為用于顯示的坐標(biāo)數(shù)據(jù)、瀑布圖顏色數(shù)據(jù)等,界面顯示層用QML 實現(xiàn),主要負(fù)責(zé)與用戶的交互以及頻譜圖、瀑布圖的繪制等。數(shù)據(jù)交互層與界面顯示層需要密切配合才能實現(xiàn)人機(jī)界面的高效刷新,二者是一種平行關(guān)系,除模塊劃分、多線程技術(shù)外,相互之間的數(shù)據(jù)交換等將嚴(yán)格遵照以下設(shè)計原則,具體如圖1 所示。

圖1 C++與QML 混合編程分層架構(gòu)圖

其中,界面顯示層負(fù)責(zé)實現(xiàn)如下功能:

(1)負(fù)責(zé)與用戶的交互,包括鼠標(biāo)、鍵盤、觸摸手勢;

(2)負(fù)責(zé)繪制頻譜圖與瀑布圖等圖形顯示元素;

(3)負(fù)責(zé)各個圖形顯示元素的布局管理,可靈活根據(jù)窗口數(shù)量調(diào)整窗口布局,并調(diào)整各顯示元素大小和位置;

(4)混合編程通信管理:負(fù)責(zé)建立QML 與C++之間的通信。

數(shù)據(jù)處理層負(fù)責(zé)實現(xiàn)如下功能:

(1)測量分析處理:將從底層控制端獲取的數(shù)據(jù)進(jìn)行頻譜映射、插值抽取等處理,得到最終測量結(jié)果數(shù)據(jù);

(2)顯示數(shù)據(jù)變換:將測量結(jié)果數(shù)據(jù)計算為用于繪圖的顯示數(shù)據(jù),包含頻譜圖的坐標(biāo)數(shù)據(jù)以及瀑布圖的顏色數(shù)據(jù)等;

(3)狀態(tài)存儲:負(fù)責(zé)測量結(jié)果數(shù)據(jù)的文件保存等;

(4)數(shù)據(jù)傳輸:負(fù)責(zé)與底層之間的數(shù)據(jù)傳輸。

界面顯示層與數(shù)據(jù)處理層之間的數(shù)據(jù)通信通過Qt 元對象系統(tǒng)實現(xiàn),具體技術(shù)為:

(1)信號槽:實現(xiàn)跨語言的線程通信;

(2)方法注冊、方法調(diào)用:由QML 調(diào)用C++封裝的方法,主要實現(xiàn)狀態(tài)查詢,測量結(jié)果查詢;

(3)環(huán)境注冊、類調(diào)用:由QML 使用C++聲明的類,主要實現(xiàn)數(shù)據(jù)類的緩沖;

(4)上下文屬性、對象調(diào)用:由QML 使用C++定義的類對象,主要實現(xiàn)數(shù)據(jù)共享;

(5)元對象調(diào)用方法:由C++調(diào)用QML 對象所定義的方法,主要實現(xiàn)特殊的窗口管理。

■1.3 瀑布圖高效刷新技術(shù)

瀑布圖也稱為三維頻譜,代表的是頻譜隨時間的變化,其橫軸表示頻率,縱軸為時間,垂直于橫軸和縱軸的是幅度,用顏色表示。瀑布圖對于手持式監(jiān)測接收機(jī)查找干擾信號是非常有用的,尤其是對于出現(xiàn)時間較短的間歇性信號。為此,瀑布圖的高效刷新是手持式監(jiān)測接收機(jī)人機(jī)交互界面設(shè)計的重點(diǎn)。人機(jī)界面采用的是C++與QML 混合編程架構(gòu),瀑布圖顯示在QML 端完成,瀑布圖數(shù)據(jù)的處理在C++端完成。瀑布圖的數(shù)據(jù)處理與顯示繪制流程如圖2 所示。

圖2 瀑布圖繪制流程

當(dāng)人機(jī)界面接收到底層控制端發(fā)來的測量數(shù)據(jù)準(zhǔn)備好信號后,在其槽函數(shù)中進(jìn)行數(shù)據(jù)處理然后保存該組數(shù)據(jù),并記錄當(dāng)前存儲瀑布圖數(shù)據(jù)的幀數(shù)和最新數(shù)據(jù)在瀑布圖數(shù)據(jù)數(shù)組中的索引,為改進(jìn)瀑布圖刷新效率,防止底層頻繁發(fā)送測量數(shù)據(jù)準(zhǔn)備好信號造成人機(jī)界面無法響應(yīng),人機(jī)界面端進(jìn)行了壓縮處理,即人機(jī)界面收到測量結(jié)果準(zhǔn)備好信號后,只負(fù)責(zé)保存頻譜數(shù)據(jù)及設(shè)置瀑布圖更新標(biāo)記值,同時增加一個定時器,定時器定時周期設(shè)置為30ms,每隔30ms 人機(jī)界面主動去查詢是否有瀑布圖更新標(biāo)記值,若有則根據(jù)當(dāng)前存儲瀑布圖數(shù)據(jù)的幀數(shù)和最新數(shù)據(jù)在瀑布圖數(shù)據(jù)數(shù)組中的索引從瀑布圖數(shù)據(jù)區(qū)讀取數(shù)據(jù)到瀑布圖繪圖緩存區(qū),并發(fā)送計算顏色數(shù)據(jù)信號給計算線程,在計算線程的槽函數(shù)中計算瀑布圖顏色數(shù)據(jù),計算完成后發(fā)送瀑布圖更新信號給QML 端,QML 端調(diào)用瀑布圖繪圖更新函數(shù)進(jìn)行瀑布圖的更新。

為了提高瀑布圖的刷新效率,對于存儲瀑布圖數(shù)據(jù)的數(shù)組,采用了循環(huán)列表的數(shù)據(jù)結(jié)構(gòu),每個列表中的元素是一個一維數(shù)組,以節(jié)省數(shù)據(jù)的存儲時間;對于數(shù)據(jù)的處理采用了多線程的處理方案,數(shù)據(jù)的存儲與瀑布圖顏色數(shù)據(jù)的計算分別運(yùn)行于兩個線程中,以節(jié)省數(shù)據(jù)處理的時間。

2 人機(jī)交互界面的軟件實現(xiàn)

手持式監(jiān)測接收機(jī)人機(jī)交互界面的軟件實現(xiàn)是依據(jù)上述的設(shè)計架構(gòu)以及實現(xiàn)流程,在此基礎(chǔ)上對各個界面功能進(jìn)行一一編程實現(xiàn)。本軟件使用Qt Creator 進(jìn)行開發(fā),使用C++編寫數(shù)據(jù)處理部分的代碼,使用QML 編寫界面各個顯示控件的代碼,最終完成了整個人機(jī)交互界面軟件的代碼編寫。該人機(jī)交互界面軟件支持單擊、拖動、雙擊、放大、縮小、長按等常用觸摸手勢操作,可方便的實現(xiàn)顯示頻譜的放大、縮小、平移等操作。人機(jī)界面主界面的實現(xiàn)效果如圖3 所示。

圖3 人機(jī)界面實現(xiàn)效果圖

該人機(jī)交互界面軟件實現(xiàn)后,已成功應(yīng)用于國產(chǎn)某手持式監(jiān)測接收機(jī)產(chǎn)品上,在該產(chǎn)品的硬件平臺上,筆者對人機(jī)界面頻譜圖和瀑布圖的刷新效率進(jìn)行了測試驗證,測試代碼如圖4 所示。

圖4 人機(jī)界面刷新速度測試代碼

頻譜圖和瀑布圖的刷新速度測試結(jié)果分別如圖5 和圖6所示。

圖5 頻譜圖刷新速度測試結(jié)果

圖6 瀑布圖刷新速度測試結(jié)果

經(jīng)過實際測試,人機(jī)界面頻譜圖的刷新速度可達(dá)到45幀/s 左右,瀑布圖的刷新速度可達(dá)到30 幀/s 左右,實現(xiàn)了頻譜圖和瀑布圖的高效刷新顯示。

3 結(jié)語

本文依據(jù)手持式監(jiān)測接收機(jī)設(shè)備的功能要求,利用Qt的C++與QML 混合編程技術(shù),對手持式監(jiān)測接收機(jī)人機(jī)交互界面軟件進(jìn)行了設(shè)計與實現(xiàn),該軟件在國產(chǎn)某手持式監(jiān)測接收機(jī)產(chǎn)品上進(jìn)行了使用,運(yùn)行穩(wěn)定,并且得到了用戶的充分肯定。同時,基于Qt 優(yōu)良的跨平臺特性,該軟件已經(jīng)成功的移植到了平板電腦上,作為手持式監(jiān)測接收機(jī)的外控軟件,更加方便了用戶的使用。

猜你喜歡
界面信號
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
國企黨委前置研究的“四個界面”
孩子停止長個的信號
基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開發(fā)方法研究
空間界面
金秋(2017年4期)2017-06-07 08:22:16
電子顯微打開材料界面世界之門
人機(jī)交互界面發(fā)展趨勢研究
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
主站蜘蛛池模板: 国产超碰一区二区三区| 无码精品一区二区久久久| 四虎精品黑人视频| 午夜性爽视频男人的天堂| 999精品色在线观看| 在线观看精品国产入口| 国产女人爽到高潮的免费视频| 国产91精品调教在线播放| 99国产精品一区二区| 国产综合网站| 国产91透明丝袜美腿在线| 蝌蚪国产精品视频第一页| 青青草一区二区免费精品| 91午夜福利在线观看| 华人在线亚洲欧美精品| 日韩东京热无码人妻| 欧美A级V片在线观看| 国产成人亚洲精品色欲AV| 免费一级成人毛片| 色噜噜狠狠色综合网图区| 亚洲中文字幕日产无码2021| 精品久久国产综合精麻豆| 在线亚洲小视频| 久草中文网| 色老头综合网| 国产成人午夜福利免费无码r| 日韩国产一区二区三区无码| 高清无码不卡视频| 亚洲色图欧美在线| 久久www视频| 日韩色图区| 国产尹人香蕉综合在线电影| 久久免费观看视频| 欧美啪啪精品| 香蕉eeww99国产在线观看| 中文字幕av一区二区三区欲色| jizz在线观看| 国产成人1024精品| 日韩在线中文| 欧美三级日韩三级| 国产精品xxx| 国产极品美女在线| 亚洲中文字幕av无码区| 手机成人午夜在线视频| 国产亚洲精品自在线| 免费国产高清精品一区在线| 精品人妻一区无码视频| 欧美中出一区二区| 国产农村1级毛片| 波多野结衣亚洲一区| 欧美精品影院| 一级毛片不卡片免费观看| a级毛片免费网站| 毛片免费在线| 亚洲高清日韩heyzo| 亚洲无码视频喷水| 日韩视频免费| 亚洲AⅤ永久无码精品毛片| 精品一区二区三区四区五区| 国产va在线观看免费| 久久黄色视频影| 国产精品偷伦视频免费观看国产 | 欧美一级特黄aaaaaa在线看片| 亚洲精品片911| 99re在线视频观看| 美女内射视频WWW网站午夜| 中文字幕在线观看日本| 欧美一级在线播放| 亚洲中文精品久久久久久不卡| 一区二区在线视频免费观看| 无码福利日韩神码福利片| 精品欧美日韩国产日漫一区不卡| 精品久久综合1区2区3区激情| 日韩欧美91| 国产日韩欧美一区二区三区在线 | 五月天久久婷婷| 毛片久久网站小视频| 视频国产精品丝袜第一页| 国产综合网站| 国产欧美日韩免费| 免费99精品国产自在现线| 在线另类稀缺国产呦|