實(shí)時(shí)采集數據繪圖及多種數據保存方式程序設計
0引 言
本文引用地址:http://dyxdggzs.com/article/90193.htm在測量工作過(guò)程中往往要求實(shí)時(shí)采集數據繪制波形圖,并以不同保存方式保存真實(shí)的反映測試過(guò)程的測量數據。如直流穩壓電源計量檢定過(guò)程中要求在某一時(shí)間間隔內,對被檢直流穩壓電源的輸出幅度穩定度進(jìn)行測量,即測量輸出幅度值隨時(shí)間的變化情況,可利用計算機通過(guò)GPIB接口卡控制Agilent34401A數字電壓表進(jìn)行測量是沒(méi)有任何問(wèn)題的,如果要求真實(shí)反映被測物理量在一定時(shí)間間隔內的變化趨勢,必須以波形方式顯示測量數據才能滿(mǎn)足要求,一般情況下有下列幾種方法:(1)根據測量數據手工繪制波形圖,當測量數據比較多時(shí)繪制煩瑣容易出現差錯,不具有實(shí)時(shí)性,不能適應科學(xué)技術(shù)高速發(fā)展的今天。(2)采用波形記錄儀是比較簡(jiǎn)單的方法,但需要增加硬件費用。(3)根據測量要求設計實(shí)時(shí)采集數據繪制波形圖程序,可以克服以上不足。針對這一要求,在Lab-VIEW 8.5開(kāi)發(fā)環(huán)境下,設計了直流穩壓電源輸出幅度穩定度測量程序,在測量程序管理下,計算機通過(guò)GPIB接口卡控制Agilent34401A實(shí)現幅度測量數據采集,并以波形方式實(shí)時(shí)顯示測量結果,此方法簡(jiǎn)單實(shí)用、以最高效率、最低軟件開(kāi)發(fā)成本得到最佳的效果,提高了人機交互性能,對使用者帶來(lái)了極大的方便,具有較高的應用、借鑒價(jià)值。在這里把程序的原代碼提供給讀者,不必做修改就可以直接應用。
1 Graph和Chart控件簡(jiǎn)介
Graph和Chart控件是LabVIEW測量數據顯示功能中的2種基本的元素,數據顯示是指將程序中使用或生成的數據以圖形或圖表的形式顯示或實(shí)時(shí)顯示出來(lái)。Graph和Chart這兩個(gè)詞都可以譯為"圖",但是在LabVIEW中它們有著(zhù)很大的差別。一般來(lái)說(shuō),Graph則是對已采集數據進(jìn)行事后處理,它先得到所有需要顯示的數據,然后根據實(shí)際要求將這些數據組成所需的圖形一次性顯示出來(lái)。Chart可以稱(chēng)為"記錄圖",它將數據在坐標系中實(shí)時(shí)、逐點(diǎn)(或者一次多個(gè)點(diǎn))地顯示出來(lái),可以反映被測物理量的變化趨勢,與傳統的模擬示波器、波形記錄儀的顯示方式相仿。在圖2程序圖中橢圓框1是啟動(dòng)程序運行后,
2程序設計
在圖1所示的人機交互界面中,可以根據測量要求在程序開(kāi)始或運行中通過(guò)"采集點(diǎn)間隔(s)"任意設置測量時(shí)間間隔。在該界面中,測量時(shí)間間隔設置的是"2"秒。單擊"開(kāi)始測量"程序運行,程序運行一段時(shí)間后,可根據波形中描繪的曲線(xiàn)來(lái)分析被測物理量的變化趨勢,當認為采集的數據滿(mǎn)足需要時(shí)單擊"停止測量"程序停止運行,此時(shí)單擊"保存數據"將波形中的測量數據以波形文件的形式進(jìn)行保存,單擊"打印波形"時(shí)會(huì )將界面中的波形圖寫(xiě)入到Word文本中。"保存數據"和"打印波形"功能都是為測量結果存檔,整理測量報告而設計的。"打印波形"、"保存波形數據"、"停止測量"、"打印波形"、"保存表格數據"、"保存界面"、"保存波形"功能無(wú)效;橢圓框2是"開(kāi)始測量"和"退出程序"功能有效,這樣設計是為了避免誤操作;當使用Chart圖形顯示控件顯示波形,其X軸的顯示格式設置為Absolute Time(絕對時(shí)間)時(shí),則其顯示的起始時(shí)間為1904-1-1 8:00,不是當前系統時(shí)間,如何將起始時(shí)間設置為當前系統時(shí)間,一般采用屬性節點(diǎn)方法:(1)函數面板→編程→定時(shí)→獲取日期/時(shí)間(秒)節點(diǎn),獲取當前時(shí)間;(2)函數面板→編程→數值→轉換→轉換為雙精度浮點(diǎn)數節點(diǎn),將當前時(shí)間轉換為Double類(lèi)型;(3)利用Chart圖形顯示控件的屬性節點(diǎn)XSeale.offset并設置為寫(xiě)的方式,然后將轉換為Double類(lèi)型的時(shí)間寫(xiě)入到這個(gè)屬性中,如圖橢圓框12所示,即得到波形的起始時(shí)間t0;橢圓框11通過(guò)調節"采集點(diǎn)間隔(s)"值,從而即得到波形中數據點(diǎn)間的時(shí)間間隔dt(以秒為單位),同時(shí)該時(shí)間間隔也是Agilent34401A實(shí)現電壓測量功能數據采集的時(shí)間間隔;橢圓框13實(shí)現當采集的數據滿(mǎn)足需要時(shí)停止測量,此時(shí)"打印波形"、"保存波形數據"功能有效,"停止測量"功能無(wú)效;橢圓框10利用VISA函數,通過(guò)GPIB接口卡控制Agilent34401A實(shí)現電壓測量功能,并利用"分數/指數字符串至數值轉換.VI"將得到的字符串信息轉換數字,以便后邊進(jìn)行波形顯示;橢圓框8將Agilent34401A測量數值Y、t0、dt通過(guò)"創(chuàng )建波形函數.VI"送到Waveform Chart控件中進(jìn)行顯示,利用反饋節點(diǎn)將連接到初始化接線(xiàn)端的值作為第一次循環(huán)或運行的初始值,然后將上一次循環(huán)的結果保存以用于此后的每次循環(huán),從而實(shí)現測量數據波形連續顯示;橢圓框9通過(guò)"獲取日期/時(shí)間(秒).VI"返回LabVIEW系統時(shí)間的時(shí)間標識,再利用"格式化日期/時(shí)間字符串.VI"按指定格式化輸出字符串的格式輸出日期/時(shí)間字符串,并同Agilent34401A電壓測量值通過(guò)"創(chuàng )建數組.VI"組成數組添加到"測量結果表格顯示"表格控件中進(jìn)行顯示;橢圓框3實(shí)現將Waveform Chart控件顯示波形寫(xiě)入到Word文本中如圖3所示,其中用到的打印子Ⅵ程序如圖4所示,它利用了"New Re-port.VI"、"Word Set Paper Size.VI"、"Set Re-port Margins.VI"、"Set Report Orientation WordEasy Text.VI"、"Append Control Image to Re-port.VI"、"Word Format Picture.VI"。
橢圓框4利用"寫(xiě)入波形至文件.VI"實(shí)現將波形中的測量數據存盤(pán);橢圓框5利用"寫(xiě)入電子表格文件.VI"實(shí)現將"測量結果表格顯示"的二維數組轉換為文本字符串,將字符串寫(xiě)入新的字節流文件或將字符串添加到現有文件中;橢圓框6利用"當前VI路徑.VI"、"打開(kāi)VI引用.VI"和"調用節點(diǎn).VI"實(shí)現程序界面的保存,其實(shí)現的結果如圖1所示;橢圓框7利用Waveform Chart控件的導出圖像調用節點(diǎn),得到如圖5所示的結果。
3結 論
通過(guò)以上介紹可以看出,利用計算機通過(guò)GPIB接口卡控制Agilent34401A數字電壓表,對直流穩壓電源輸出幅度穩定度的測量繪制的波形圖,能反映被測物理量在一定時(shí)間間隔內的變化趨勢,從測量程序前面板測量結果來(lái)看,程序中很好地解決了采集數據時(shí)間間隔與波形同步顯示數據的問(wèn)題,系統滿(mǎn)足設計要求,具有良好的人機交互界面、人性化設計,完全滿(mǎn)足測量要求,經(jīng)應用證明其功能完全替代波形記錄儀,具有一定的應用價(jià)值。
評論