摘 要:近年來(lái),計(jì)算機(jī)技術(shù)發(fā)展速度不斷加快,先進(jìn)技術(shù)發(fā)展的同時(shí),虛擬示波器技術(shù)取得了良好的發(fā)展空間,并為技術(shù)應(yīng)用行業(yè)帶來(lái)了優(yōu)異成績(jī)。為提高虛擬示波器技術(shù)應(yīng)用率,擴(kuò)大應(yīng)用范圍,基于WPF完成虛擬示波器設(shè)計(jì)工作是極為必要的。本文首先簡(jiǎn)要介紹虛擬示波器設(shè)計(jì)必要性,然后重點(diǎn)探究WPF為基礎(chǔ)的虛擬示波器設(shè)計(jì)。
關(guān)鍵詞:WPF;虛擬示波器;設(shè)計(jì)
前言
隨著數(shù)據(jù)流規(guī)劃要求的不斷提高,合理設(shè)計(jì)虛擬示波器是極為必要的,以WPF為基礎(chǔ)完成設(shè)計(jì)任務(wù),不僅能夠提高數(shù)據(jù)傳輸效率,而且還能為測(cè)量行業(yè)儀器設(shè)計(jì)工作奠定良好基礎(chǔ)。由此可見(jiàn),本文針對(duì)該論題展開(kāi)分析,具有必要性和迫切性,希望相關(guān)研究人員能夠以此為借鑒,同時(shí),設(shè)計(jì)人員拓展設(shè)計(jì)思路。
1虛擬示波器設(shè)計(jì)必要性
虛擬示波器作為新型測(cè)試儀器,功能優(yōu)勢(shì)相對(duì)明顯,支持新算法引入。隨著硬件設(shè)備的不斷升級(jí),虛擬示波器應(yīng)與時(shí)俱進(jìn)豐富應(yīng)用功能,不斷提高適用性,盡可能拓展應(yīng)用領(lǐng)域,確保測(cè)試需要被及時(shí)滿足??偨Y(jié)可知,虛擬示波器設(shè)計(jì)應(yīng)迎合技術(shù)發(fā)展需要,動(dòng)態(tài)調(diào)整設(shè)計(jì)目標(biāo)[1]。
2基于WPF虛擬示波器設(shè)計(jì)分析
2.1基本要求
虛擬示波器設(shè)計(jì)過(guò)程中,滿足實(shí)時(shí)性要求,能為高速虛擬測(cè)試儀器奠定良好的基礎(chǔ),針對(duì)高速數(shù)據(jù)錄取式示波器合理設(shè)計(jì),并實(shí)時(shí)錄取數(shù)據(jù)信息,借助PCOMM完成高效通信目的,有效優(yōu)化設(shè)計(jì)界面,呈現(xiàn)良好的圖顯效果。該軟件在數(shù)據(jù)曲線圖繪制方面發(fā)揮重要作用,無(wú)論是時(shí)間驅(qū)動(dòng)繪圖,還是數(shù)據(jù)驅(qū)動(dòng)繪圖,都對(duì)精度提出了較高要求,并且數(shù)據(jù)完整性不被破壞,最終完成逐幀顯示目的。需要注意的是,虛擬示波器軟件應(yīng)動(dòng)態(tài)掌握數(shù)據(jù)情況,豐富數(shù)據(jù)傳輸、存儲(chǔ)、修改功能,優(yōu)化控制模式,盡可能多的展示數(shù)據(jù)信息。
2.2軟件設(shè)計(jì)
虛擬示波器軟件程序編寫的過(guò)程中,在WPF開(kāi)發(fā)軟件下完成編寫任務(wù),具體分析如下:
2.2.1開(kāi)發(fā)環(huán)境
WPF屬于新的圖形系統(tǒng),該系統(tǒng)處理速度相對(duì)較快,并且系統(tǒng)操作界面較美觀,WPF系統(tǒng)性能較優(yōu)。以往CPU處理技術(shù)使用需要供應(yīng)較多資源,但這在一定程度上會(huì)減慢CPU運(yùn)行速度,受WPF技術(shù)影響,通過(guò)發(fā)揮顯卡功能索合理利用有限空間,進(jìn)而能夠提高CPU運(yùn)行速度,優(yōu)化軟件使用效果。WPF系統(tǒng)與第三方軟件集成的適用性較強(qiáng),并且編程模式多樣,支持多種類數(shù)據(jù)訪問(wèn)接口。
2.2.2數(shù)據(jù)錄取
虛擬示波器軟件多串口模式適用性較強(qiáng),應(yīng)用串口函數(shù)能夠完成緩沖區(qū)數(shù)據(jù)的合理規(guī)劃,以及高效利用,其中,PingPong緩沖機(jī)制巧妙應(yīng)用,能夠提高數(shù)據(jù)傳輸效率,確保數(shù)據(jù)處理操作有序進(jìn)行,實(shí)現(xiàn)數(shù)據(jù)高效、快速更新。串口通信中,充分發(fā)揮數(shù)據(jù)錄取性能,盡可能保證數(shù)據(jù)完整性,避免數(shù)據(jù)丟失,在這一過(guò)程中,待檢測(cè)數(shù)據(jù)接收全面監(jiān)控,此時(shí)啟動(dòng)PingPong緩沖機(jī)制,通過(guò)發(fā)揮雙緩沖機(jī)制,實(shí)現(xiàn)數(shù)據(jù)快速更新目的,提高數(shù)據(jù)處理效率,確保數(shù)據(jù)完整采集。
2.2.3精度定時(shí)
一般來(lái)講,虛擬示波器支持單信號(hào)樣本獲取,針對(duì)差異工作模式信號(hào)源合理轉(zhuǎn)換,之后將其連接示波器,實(shí)現(xiàn)信號(hào)動(dòng)態(tài)監(jiān)測(cè)目的。虛擬示波器工作模式頻繁切換,會(huì)為工作增加阻力,要想實(shí)現(xiàn)靈活切換目的,應(yīng)合理配置參數(shù),針對(duì)串口通信情況以及硬件通信狀態(tài)全面監(jiān)控。例如,針對(duì)DSP系統(tǒng)動(dòng)態(tài)監(jiān)測(cè)時(shí),虛擬示波器軟件應(yīng)根據(jù)信號(hào)指令及時(shí)調(diào)整工作模式,然而這大大增加了軟件設(shè)計(jì)難度,并且最終得到的精密度較低?;诖耍瑧?yīng)發(fā)揮等待機(jī)制,減少外界干擾,盡可能提高監(jiān)測(cè)準(zhǔn)確度,滿足高速設(shè)計(jì)需要。需要說(shuō)明的是,等待機(jī)制細(xì)分兩種類型,第一種類型即自旋等待,它利用CPU空轉(zhuǎn)法完成時(shí)間消耗目的,雖然這種方法會(huì)浪費(fèi)一定時(shí)間,但精確度相對(duì)較高;第二種即阻塞等待,即等待時(shí)間內(nèi),借助操作系統(tǒng)控制運(yùn)行情況,此時(shí)時(shí)間控制效果較差。WPF開(kāi)發(fā)環(huán)境下,計(jì)時(shí)機(jī)制選用Stopwatch類,通過(guò)合理控制硬件主頻,大大提高精度,因此,結(jié)合自旋等待機(jī)制和Stopwatch計(jì)時(shí),能夠?qū)r(shí)間精度縮至微秒級(jí),并且數(shù)據(jù)可靠性能夠得到保證。
2.2.4數(shù)據(jù)處理
數(shù)據(jù)完整獲取后,數(shù)據(jù)曲線圖也應(yīng)完整顯示,為了進(jìn)一步提高程序運(yùn)行效率,避免出現(xiàn)數(shù)據(jù)丟失現(xiàn)象,應(yīng)豐富數(shù)據(jù)處理功能,選用適合的多線程技術(shù)。由于線程在CPU時(shí)間分配中發(fā)揮積極作用,單一線程分配時(shí)間較短,并且線程遵循異步運(yùn)行原則,為了避免線程數(shù)據(jù)惡性競(jìng)爭(zhēng),應(yīng)用虛擬示波器軟件對(duì)線程分離處理,從整體上優(yōu)化系統(tǒng)性能。此外,PingPong緩沖機(jī)制參與線程分離任務(wù),這對(duì)線程安全性保證有積極意義[2]。
2.2.5圖表繪制
示波器直觀顯示曲線繪制效果,動(dòng)態(tài)描述電現(xiàn)象,以往掃描式顯示模式給人留下深刻印象,并且工程人員工作習(xí)慣漸漸養(yǎng)成。巧妙應(yīng)用數(shù)據(jù)驅(qū)動(dòng)繪圖方式,借此容納大量數(shù)據(jù)信息,確保多個(gè)數(shù)據(jù)點(diǎn)連成統(tǒng)一整體,最終產(chǎn)生多個(gè)像素點(diǎn),WPF為基礎(chǔ)的虛擬示波器應(yīng)用,應(yīng)堅(jiān)持35ms更新圖像,以此保證24fps幀速率。由于每幀數(shù)據(jù)更新操作耗時(shí)較長(zhǎng),因此,適當(dāng)轉(zhuǎn)換幀數(shù)據(jù)更新思路,針對(duì)數(shù)據(jù)點(diǎn)適當(dāng)刪除、建立,與此同時(shí),參照掃描圖顯模式,完成圖顯模式的模擬,確保圖形平滑顯示[3]。
結(jié)論
綜上所述,當(dāng)前計(jì)算機(jī)技術(shù)發(fā)展速度不斷加快,在先進(jìn)計(jì)算機(jī)技術(shù)帶動(dòng)下,虛擬儀器技術(shù)優(yōu)勢(shì)逐漸豐富,這為測(cè)量行業(yè)穩(wěn)健發(fā)展,測(cè)量行業(yè)儀器設(shè)計(jì)工作順利推進(jìn)有積極影響。與此同時(shí),能為虛擬儀器基礎(chǔ)平臺(tái)構(gòu)建奠定良好基礎(chǔ),確保數(shù)據(jù)信息高效、快速傳輸。WPF為基礎(chǔ)的虛擬示波器設(shè)計(jì),能夠豐富虛擬示波器功能,提高虛擬示波器軟件利用率,并取得良好的設(shè)計(jì)效果。此外,能為計(jì)算機(jī)技術(shù)穩(wěn)健發(fā)展提供動(dòng)力支持,因此,相關(guān)設(shè)計(jì)人員應(yīng)不斷拓展設(shè)計(jì)思路,針對(duì)虛擬示波器深入研究,這對(duì)工程價(jià)值彰顯有積極影響。
參考文獻(xiàn)
[1]張博,李黎,何海龍.基于WPF的虛擬示波器設(shè)計(jì)[J].火控雷達(dá)技術(shù),2018,47(02):91-95.
[2]于文波,于洋,徐立波.虛擬示波器開(kāi)發(fā)平臺(tái)對(duì)比研究[J].浙江交通職業(yè)技術(shù)學(xué)院學(xué)報(bào),2015,16(01):38-41.
[3]沈輝,沙立民,張重龍.基于LabVIEW的多功能虛擬示波器設(shè)計(jì)[J].電子測(cè)量技術(shù),2012(11):90-93.
(作者單位:北京交通大學(xué)海濱學(xué)院)