實(shí)時(shí)數(shù)據(jù)曲線繪制的Qt編程實(shí)現(xiàn)_第1頁(yè)
實(shí)時(shí)數(shù)據(jù)曲線繪制的Qt編程實(shí)現(xiàn)_第2頁(yè)
實(shí)時(shí)數(shù)據(jù)曲線繪制的Qt編程實(shí)現(xiàn)_第3頁(yè)
實(shí)時(shí)數(shù)據(jù)曲線繪制的Qt編程實(shí)現(xiàn)_第4頁(yè)
實(shí)時(shí)數(shù)據(jù)曲線繪制的Qt編程實(shí)現(xiàn)_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、年月第卷增刊四川大學(xué)學(xué)報(bào)(自然科學(xué)版)()文章編號(hào):【)實(shí)時(shí)數(shù)據(jù)曲線繪制的編程實(shí)現(xiàn)楊盛毅,文方,師嬌(貴州大學(xué)電氣工程學(xué)院。貴陽(yáng);北京理工大學(xué)宇航科學(xué)技術(shù)學(xué)院,北京)摘要:動(dòng)態(tài)繪制和顯示實(shí)時(shí)數(shù)據(jù)曲線是工業(yè)測(cè)控系統(tǒng)中一項(xiàng)重要功能本文提出了一種利用編程動(dòng)態(tài)繪制實(shí)時(shí)數(shù)據(jù)曲線的方案,解決了由于繪制時(shí)間較長(zhǎng)而無(wú)法滿足實(shí)時(shí)顯示要求的問(wèn)題,并通過(guò)實(shí)例介紹了其具體實(shí)現(xiàn)方法實(shí)踐證明該繪制方案能滿足實(shí)時(shí)監(jiān)控的要求關(guān)鍵詞:測(cè)控系統(tǒng);實(shí)時(shí)數(shù)據(jù)曲線;中圖分類號(hào):文獻(xiàn)標(biāo)識(shí)碼:,(,):,:,引言工業(yè)測(cè)控系統(tǒng)中,常用動(dòng)態(tài)實(shí)時(shí)數(shù)據(jù)曲線來(lái)監(jiān)測(cè)某些量在工作環(huán)境變化時(shí)的控制穩(wěn)定性從而動(dòng)態(tài)繪制實(shí)時(shí)數(shù)據(jù)曲線成為測(cè)控軟件開(kāi)發(fā)中的重要一環(huán)

2、,而動(dòng)態(tài)繪制實(shí)時(shí)數(shù)據(jù)曲線存在由于繪制時(shí)間較長(zhǎng)而無(wú)法滿足實(shí)時(shí)顯示要求、繪制數(shù)據(jù)量大、動(dòng)態(tài)平滑顯示等問(wèn)題是由挪威公司開(kāi)發(fā)的一個(gè)跨平臺(tái)的圖形應(yīng)用程序開(kāi)發(fā)框架,基于“信號(hào)一槽”的通訊機(jī)制,并具有高度模塊化、可重用性好、運(yùn)行速度快、可移植性好等特點(diǎn),對(duì)于用戶開(kāi)發(fā)來(lái)說(shuō)是非常方便目前主要用于下的開(kāi)發(fā)同時(shí)還是跨平臺(tái)的,它使得跨平臺(tái)軟件編程直觀、簡(jiǎn)易和方便但同其它編程工具一樣,也不具備直接的動(dòng)態(tài)曲線繪制能力,必須借助一些編程技術(shù)來(lái)實(shí)現(xiàn)我們提出了一種利用編程動(dòng)態(tài)繪制實(shí)時(shí)數(shù)據(jù)曲線的方案,解決了由于繪制時(shí)間較長(zhǎng)而無(wú)法滿足實(shí)時(shí)顯示要求的問(wèn)題實(shí)時(shí)數(shù)據(jù)曲線繪制的基本思路所謂數(shù)據(jù)曲線,實(shí)質(zhì)上是由許多直線首尾相連組合而成,在繪

3、圖區(qū)中用直線連接兩數(shù)據(jù)點(diǎn)來(lái)實(shí)現(xiàn),通過(guò)函數(shù)可設(shè)定繪圖區(qū)大小及繪圖原點(diǎn)坐標(biāo)數(shù)據(jù)曲線上前一時(shí)刻數(shù)據(jù)點(diǎn)通常在曲線上最左端顯示,隨著時(shí)間推移,整條曲線自右向左移動(dòng)實(shí)現(xiàn)曲線的動(dòng)態(tài)平移必然涉及到曲線的消收稿日期:作者簡(jiǎn)介:楊盛毅(一),男,布依族,貴州平塘人,在讀碩士研究生,研究方向?yàn)橛?jì)算機(jī)測(cè)控技術(shù)四川大學(xué)學(xué)報(bào)(自然科學(xué)版)增刊隱或重繪,常用的兩種繪圖方式為:一種方式是將畫(huà)線對(duì)象的屬性設(shè)為與或,然后在原位置重繪曲線,單一背景色的情況下,也可直接用背景色重繪曲線,實(shí)現(xiàn)曲線的動(dòng)態(tài)效果;另一種方式是通過(guò)調(diào)用函數(shù)實(shí)現(xiàn)曲線的平滑移動(dòng)上述兩種常用繪制方案,雖然解決了大數(shù)據(jù)量、動(dòng)態(tài)平滑顯示的問(wèn)題,但實(shí)時(shí)性不佳,所以本文提

4、出一種新的數(shù)據(jù)繪制方案本方案中數(shù)據(jù)曲線上各點(diǎn)縱坐標(biāo)反映實(shí)時(shí)數(shù)據(jù)的大小,通過(guò)記錄次新點(diǎn)數(shù)據(jù),并更新最新點(diǎn)數(shù)據(jù),在定時(shí)器中使用類中函數(shù)定時(shí)將圖象向左卷動(dòng)一定像素,卷動(dòng)后函數(shù)發(fā)送繪制事件繪制事件中,只繪制由于卷動(dòng)而空出的區(qū)域,利用函數(shù)將最新數(shù)據(jù)點(diǎn)與次新數(shù)據(jù)點(diǎn)以直線相連,即可實(shí)現(xiàn)實(shí)時(shí)數(shù)據(jù)曲線自右向左的平滑移動(dòng)效果繪圖區(qū)內(nèi)實(shí)時(shí)曲線的數(shù)據(jù)量由函數(shù)卷曲的像素值所決定,即卷曲的像素越多,數(shù)據(jù)量越少,卷曲的像素越少,數(shù)據(jù)量越多條件允許時(shí),應(yīng)增加實(shí)時(shí)曲線的數(shù)據(jù)量,更有利于監(jiān)控現(xiàn)場(chǎng)環(huán)境的變化趨勢(shì)同時(shí)為了避免繪圖區(qū)數(shù)據(jù)點(diǎn)過(guò)于擁擠,可在當(dāng)前繪圖區(qū)顯示一部分?jǐn)?shù)據(jù)曲線,通過(guò)滾動(dòng)條查看數(shù)據(jù)曲線的其它部分實(shí)時(shí)曲線繪制的實(shí)時(shí)性由

5、于繪制時(shí)間較長(zhǎng)而無(wú)法滿足實(shí)時(shí)顯示的要求,是實(shí)時(shí)數(shù)據(jù)曲線繪制中存在的普遍問(wèn)題我們提出的方案,由于每次繪制時(shí)所需繪制的數(shù)據(jù)極()聲明模塊級(jí)變量;()在類構(gòu)造函數(shù)中添加代碼()()為公有槽和添加代碼:;():少,所以能有效提高繪制的實(shí)時(shí)性在程序中,通過(guò)調(diào)用函數(shù)獲取計(jì)算機(jī)定時(shí)器的當(dāng)前值,并調(diào)用函數(shù)獲取計(jì)算機(jī)定時(shí)器的頻率,通過(guò)計(jì)算繪制后計(jì)算機(jī)定時(shí)器的值與繪制前計(jì)算機(jī)定時(shí)器的值之差,再乘以定時(shí)器頻率,即可得到繪制所花費(fèi)的時(shí)間目前常用的定時(shí)器頻率在×左右,所以采用該方法計(jì)算繪制所花費(fèi)的時(shí)間可以精確到一通過(guò)實(shí)驗(yàn),得到本文所述方案的平均繪制時(shí)間為,而采用雙緩沖繪制方案的平均繪制時(shí)間為,由此可見(jiàn),我們提

6、出的方案有效的提高了繪制的實(shí)時(shí)性程序?qū)嵗颂幰砸粋€(gè)完整的程序?qū)嵗f(shuō)明實(shí)時(shí)數(shù)據(jù)曲線的繪制方法()首先構(gòu)造實(shí)時(shí)繪圖類創(chuàng)建類,它以公有方式繼承于由于該類定義了信號(hào)和槽,所以必須將宏置于類定義的開(kāi)始處在類中分別創(chuàng)建公有槽和,前者是開(kāi)始繪制控制函數(shù),后者是停止繪制控制函數(shù)再創(chuàng)建公有函數(shù)和,前者用于繪制實(shí)時(shí)曲線,后者用于繪制網(wǎng)格最后重載事件和,前者用于實(shí)現(xiàn)繪制事件,后者用于實(shí)現(xiàn)定時(shí)功能定義定時(shí)器實(shí)時(shí)數(shù)據(jù)曲線的橫坐標(biāo)實(shí)時(shí)數(shù)據(jù)嚙線的最新點(diǎn)數(shù)據(jù)實(shí)時(shí)數(shù)據(jù)曲線的次新點(diǎn)數(shù)據(jù)最新點(diǎn)數(shù)據(jù)向次新點(diǎn)數(shù)據(jù)的中轉(zhuǎn)變量繪制與初始化判斷邏輯變量將繪制區(qū)域的背景設(shè)置為黑色設(shè)置定時(shí)器的初值設(shè)置實(shí)時(shí)數(shù)據(jù)曲線的橫坐標(biāo)的初值設(shè)置實(shí)時(shí)數(shù)據(jù)曲線中

7、轉(zhuǎn)變量的初值設(shè)置為繪制設(shè)置每產(chǎn)生一個(gè)定時(shí)事件年楊盛毅等:實(shí)時(shí)數(shù)據(jù)曲線繪制的編程實(shí)現(xiàn):;();();()為公有函數(shù)和添加代碼():();(;)設(shè)置為初始化設(shè)置停止定時(shí)器重新繪制繪圖區(qū)將畫(huà)筆顏色設(shè)置為綠色繪制網(wǎng)格的縱軸()(,);(,一,);)(一一一)繪制網(wǎng)格的橫軸(,一,););():();將畫(huà)筆顏色設(shè)置為紅色將最新點(diǎn)數(shù)據(jù)通過(guò)中轉(zhuǎn)變量傳遞給次新點(diǎn)(,一,一);將最新點(diǎn)數(shù)據(jù)和次新點(diǎn)數(shù)據(jù)用直線連接()重載事件和():();(,(),();(一,一,);(一)();();(;():(一()一)(一,);();):();)()新建一個(gè)工程在窗體上添加一個(gè)類的對(duì)象,在其中繪制實(shí)時(shí)數(shù)據(jù)曲線;創(chuàng)建兩個(gè)命令按

8、鈕:和并用下列代碼將對(duì)應(yīng)的信號(hào)和槽連接起來(lái)(,(),();將開(kāi)始鍵的單擊信號(hào)與對(duì)象的槽連接在一(,(設(shè)置繪制設(shè)備的物理坐標(biāo)設(shè)置畫(huà)筆的邏輯坐標(biāo)判斷是繪制曲線還是要初始化繪制網(wǎng)格繪制曲線實(shí)時(shí)數(shù)據(jù)曲線的橫坐標(biāo)的初始化實(shí)時(shí)數(shù)據(jù)曲線中轉(zhuǎn)變量初始化判斷是否是我們需要的定時(shí)器向左卷動(dòng)個(gè)像素裝人最新數(shù)據(jù)若不是需要的定時(shí)器,將它傳遞給基類(),();將停止鍵的單擊信號(hào)與對(duì)象的槽連接在一程序編譯運(yùn)行后的效果如圖所示,繪圖窗口中的數(shù)據(jù)曲線每隔一個(gè)定時(shí)時(shí)間自右向左移動(dòng)設(shè)定像素當(dāng)然,為了界面的美觀和讀數(shù)方便,可在繪圖窗口周?chē)由献鴺?biāo)刻度等,本文的程序示例主要實(shí)現(xiàn)動(dòng)態(tài)繪制實(shí)時(shí)數(shù)據(jù)曲線,其它功能的實(shí)現(xiàn)程序日女學(xué)學(xué)報(bào)(自然科學(xué)版)增刊結(jié)語(yǔ)動(dòng)憊繪制寅時(shí)數(shù)榔曲線是測(cè)控系統(tǒng)中的重要功能模塊,我們提出了一種利朋編程動(dòng)態(tài)繪制實(shí)時(shí)數(shù)據(jù)曲線的方案,解陡由于繪制時(shí)問(wèn)較而無(wú)法滿足實(shí)時(shí)顯示要求的問(wèn)題,具有一定實(shí)用價(jià)值文中程序的數(shù)據(jù)均是隨機(jī)模擬的,實(shí)際測(cè)控系統(tǒng)中只需用采集輸數(shù)據(jù)或控制輸出數(shù)據(jù)替換掉模擬數(shù)據(jù)即可程序圻例僅在同卟繪田窗口中動(dòng)態(tài)繪制了單通道數(shù)據(jù)曲線如需同時(shí)顯示通道數(shù)據(jù)曲線,需將文中

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論