林志雄,張藝媛
(安徽江淮汽車集團(tuán)股份有限公司,安徽 合肥 230601)
一種數(shù)據(jù)采集程序的基本架構(gòu)
林志雄,張藝媛
(安徽江淮汽車集團(tuán)股份有限公司,安徽 合肥 230601)
數(shù)據(jù)采集一般指測(cè)試過(guò)程中將模擬信號(hào)轉(zhuǎn)變成數(shù)字信號(hào),或模擬信號(hào)數(shù)據(jù)產(chǎn)生的過(guò)程。文章采用一種通用簡(jiǎn)潔的程序架構(gòu),可運(yùn)用于大部分連續(xù)進(jìn)行的模擬輸入、模擬輸出、數(shù)字輸入、數(shù)字輸出、計(jì)時(shí)、頻率等等信號(hào)數(shù)據(jù)的測(cè)量操作。
數(shù)據(jù)采集;程序架構(gòu);測(cè)量
CLC NO.:U463.6Document Code:AArticle ID:1671-7988 (2017)06-72-02
在汽車電子部件測(cè)試過(guò)程中,經(jīng)常需要用到模擬/數(shù)字信號(hào)的采集分析或信號(hào)的產(chǎn)生等過(guò)程,應(yīng)用 LabVIEW 的DAQmx組件子vi編寫程序,就可以很好地滿足信號(hào)的測(cè)試需求,并通過(guò)對(duì)DAQmx多態(tài)子 vi 的設(shè)置,可實(shí)現(xiàn)各類常用信號(hào)測(cè)量/產(chǎn)生的應(yīng)用程序。將應(yīng)用程序與 NI 硬件鏈接起來(lái),就可以實(shí)現(xiàn)各種信號(hào)測(cè)量/產(chǎn)生,如汽車電子部件測(cè)試中的電壓、電流、頻率、占空比等信號(hào)采集分析或信號(hào)產(chǎn)生等。
利用 DAQmx組件子vi編寫的數(shù)據(jù)采集程序的基本架構(gòu)是在 while循環(huán)之前先進(jìn)行創(chuàng)建、配置、設(shè)置測(cè)試任務(wù)的相關(guān)信息和配置要求,并只執(zhí)行一次后就進(jìn)入while循環(huán)體進(jìn)行數(shù)據(jù)采集或數(shù)據(jù)寫入,在循環(huán)結(jié)束后進(jìn)行清除和結(jié)束所創(chuàng)建的任務(wù)。利用DAQmx編寫的測(cè)量程序基本架構(gòu)是基于“任務(wù)”的,它包括了通道信息配置、時(shí)序設(shè)定、采樣方式選擇、采樣速率設(shè)置、觸發(fā)條件等信息,表現(xiàn)為一個(gè)任務(wù)執(zhí)行的全過(guò)程,即任務(wù)的創(chuàng)建、配置及結(jié)束等,程序架構(gòu)如下圖所示。
圖1 數(shù)據(jù)采集程序的基本架構(gòu)
(1)創(chuàng)建任務(wù) vi,該 vi路徑為函數(shù)選板/測(cè)量 I/O/ DAQmx-數(shù)據(jù)采集/ DAQmx 高級(jí)任務(wù)選項(xiàng)/ DAQmx 創(chuàng)建任務(wù),一般創(chuàng)建任務(wù)時(shí)定義一個(gè)任務(wù)名稱,錯(cuò)誤輸入設(shè)定為一個(gè)常數(shù)(即沒(méi)有錯(cuò)誤發(fā)生)。使用這個(gè) vi 可以創(chuàng)建相互獨(dú)立的測(cè)量任務(wù),該vi 盡量不在while循環(huán)中使用,并在任務(wù)結(jié)束后進(jìn)行清除任務(wù),以免占用過(guò)多的內(nèi)存。
(2)創(chuàng)建通道 vi,該 vi路徑為函數(shù)選板/測(cè)量 I/O/ DAQmx-數(shù)據(jù)采集/ DAQmx 創(chuàng)建通道,這是一個(gè)多態(tài) vi,可以選擇多種測(cè)量功能的虛擬通道添加到任務(wù)中,包含模擬輸入輸出、數(shù)字輸入輸出、計(jì)數(shù)器輸入輸出等。實(shí)際使用中,常利用“分配名稱”來(lái)給虛擬通道進(jìn)行命名,曲線名稱就會(huì)自動(dòng)顯示“分配名稱”。
(3)DAQmx 定時(shí)vi,該vi路徑為函數(shù)選板/測(cè)量 I/O/ DAQmx-數(shù)據(jù)采集/DAQmx 定時(shí),編程時(shí)主要對(duì)測(cè)量的采樣速率和采樣模式進(jìn)行設(shè)置,采樣速率一般選擇為實(shí)現(xiàn)輸入頻率的5倍~10倍。
(4)DAQmx 開(kāi)始任務(wù)vi,該vi路徑為函數(shù)選板/測(cè)量I/O/ DAQmx-數(shù)據(jù)采集/DAQmx 開(kāi)始任務(wù),該vi 在編程中一般無(wú)須配置。
(5)DAQmx 讀取vi,該vi 路徑為函數(shù)選板/測(cè)量 I/O/ DAQmx-數(shù)據(jù)采集/ DAQmx 讀取,該vi 為多態(tài) vi,包含模擬單通道/多通道、數(shù)字單通道/多通道、計(jì)數(shù)器單采樣/多采樣等,通過(guò)選擇不同的類型可以進(jìn)行模擬或數(shù)字信號(hào)的測(cè)量。若每通道讀取選擇N采樣,其采樣數(shù)的設(shè)置即為數(shù)據(jù)分析顯示的更新頻率,所以不能大于前面定時(shí) vi中設(shè)定的采樣頻率,實(shí)際顯示的更新率=(采樣頻率/采樣數(shù))次/S。
(6)DAQmx 寫入vi,該vi路徑為函數(shù)選板/測(cè)量 I/O/ DAQmx-數(shù)據(jù)采集/ DAQmx 寫入。該 vi 也為多態(tài) vi,與讀取vi類似,同樣包含模擬單通道/多通道、數(shù)字單通道/多通道、計(jì)數(shù)器單采樣/多采樣等,通過(guò)選擇不同的類型可以實(shí)現(xiàn)模擬或數(shù)字信號(hào)的產(chǎn)生和輸出,同樣若每通道寫入選擇N采樣,其采樣數(shù)的設(shè)置不能大于前面定時(shí) vi中設(shè)定的采樣頻率。
(7)DAQmx 清除任務(wù)vi,該vi路徑為函數(shù)選板/測(cè)量I/O/ DAQmx-數(shù)據(jù)采集/DAQmx 定時(shí),在測(cè)量程序架構(gòu)中使用該 vi,應(yīng)與“創(chuàng)建任務(wù)” vi 成對(duì)出現(xiàn),實(shí)現(xiàn)測(cè)量任務(wù)結(jié)束后關(guān)閉程序以免占用過(guò)多的內(nèi)存,一般在編程中無(wú)須進(jìn)行設(shè)置。
應(yīng)用模擬/數(shù)字信號(hào)測(cè)量程序基本架構(gòu),編寫一個(gè)電壓有效值 RMS測(cè)量程序,在創(chuàng)建任務(wù)中配置任務(wù)名稱和無(wú)錯(cuò)誤的常量輸入;在創(chuàng)建通道中配置物理輸入通道(即輸入控件)、選擇測(cè)量?jī)?nèi)容(AI電壓)、測(cè)試值的最大最小值范圍、輸入接線端配置;在定時(shí)中設(shè)定采樣模式(有限采樣)和采樣頻率;開(kāi)始任務(wù)采用默認(rèn)設(shè)置;數(shù)據(jù)讀取選擇“模擬波形1通道N采樣”、每通道采樣數(shù)設(shè)定為1000(比前面定時(shí)中的采樣頻率要?。?;采集到的波形數(shù)據(jù)進(jìn)行“基本平均直流-均方根”(該vi路徑為函數(shù)選板/信號(hào)處理/波形測(cè)量)處理后并通過(guò)顯示控件顯示;測(cè)量任務(wù)結(jié)束后進(jìn)清除任務(wù),解除所占用的內(nèi)存;最后用一個(gè)簡(jiǎn)易錯(cuò)誤處理,當(dāng)程序出現(xiàn)錯(cuò)誤后可以由測(cè)量人員來(lái)停止程序運(yùn)行;具體測(cè)量程序和設(shè)置如下圖所示。
圖2 電壓有效值RMS測(cè)量程序
基于DAQmx的測(cè)量程序基本架構(gòu)主要依據(jù)數(shù)據(jù)流傳遞關(guān)系,結(jié)合測(cè)量任務(wù)創(chuàng)建、運(yùn)行和結(jié)束的概念,利用LabVIEW中DAQmx組件的相關(guān)子vi編寫一個(gè)測(cè)量任務(wù)的全過(guò)程,包括任務(wù)的創(chuàng)建、配置、運(yùn)行及結(jié)束清除。在程序架構(gòu)應(yīng)用時(shí),需要注意讀取vi中的采樣數(shù)和定時(shí)vi中采樣頻率的關(guān)系和設(shè)置原則,采樣頻率大小會(huì)影響測(cè)量數(shù)據(jù)還原的真實(shí)性,而采樣數(shù)設(shè)定會(huì)影響測(cè)量數(shù)據(jù)分析顯示的更新速率,一般希望用于分析的信號(hào)數(shù)據(jù)更新盡可能快,但由于數(shù)據(jù)分析也必須滿足采樣定理才能獲得理解結(jié)果,所以被分析的信號(hào)頻率上限就會(huì)降低。
[1] 陳錫輝,張銀鴻.LabVIEW8.20程序設(shè)計(jì)從入門到精通. 北京:清華大學(xué)出版社,2007.
[2] 程學(xué)慶. LabVIEW 圖形化編程與實(shí)例應(yīng)用[M]. 北京: 中國(guó)鐵道出版社, 2005.
The basic structure of data acquisition program
Lin Zhixiong, Zhang Yiyuang
(Anhui Jianghuai Automobile Co., Ltd, Anhui Hefei 230601)
Data acquisition generally refers to the process of testing analog signals into digital signal, or analog signal data generation process.In this paper, we use a general and concise program architecture, which can be used in most of the continuous analog input, analog output, digital input, digital output, timing, frequency and other signal data measurement operations.
Data acquisition; Program architecture; Measurement
U463.6
A
1671-7988 (2017)06-72-02
林志雄,助理工程師,就職于安徽江淮汽車集團(tuán)股份有限公司技術(shù)中心,車輛工程,主要研究電子零部件功能和性能測(cè)試驗(yàn)證等工作。
10.16638/j.cnki.1671-7988.2017.06.023