基于LabVIEW與USB接口的實(shí)時數(shù)據(jù)采集系統(tǒng)
3 上位機(jī)系統(tǒng)設(shè)計
3.1 CH341T驅(qū)動程序
在與上位機(jī)通信之前,必須安裝CH341T的驅(qū)動程序,這可從公司網(wǎng)站下載。待其驅(qū)動程序安裝完成后,會自動在計算機(jī)設(shè)備管理器的端口欄虛擬出一個串口,這個虛擬串口與計算機(jī)原有的COM口對應(yīng)用程序來說是一樣的。通過選擇這個虛擬串口,就可與下位機(jī)通信了。
3.2 LabVIEW程序設(shè)計
VISA(Virtual Instrument Software Architecture)是美國國家儀器公司開發(fā)的一種用來與各種儀器總線進(jìn)行通信的高級應(yīng)用編程接口。VISA庫駐留于計算機(jī)系統(tǒng)中,完成計算機(jī)與儀器之間軟件的連接,用以實(shí)現(xiàn)對儀器的程序控制,其實(shí)質(zhì)是用于虛擬儀器系統(tǒng)的標(biāo)準(zhǔn)的API,VISA本身不具備編程能力,它是一個高層API,通過調(diào)用底層驅(qū)動程序來實(shí)現(xiàn)對儀器的編程。
本設(shè)計采用了LabviEW的VISA的串行通訊子VI來開發(fā)串行通信軟件。其中包括VISA(Configure Serial Port.Vi:將指定的串口按特定設(shè)置初始化。VISA Write.Vi:將寫入緩沖區(qū)的數(shù)據(jù)寫入指定的設(shè)備或接口中。VISA Read.vi:從指定的設(shè)備或接口中讀取指定數(shù)量的字節(jié),并將數(shù)據(jù)返回至讀取緩沖區(qū)。VISA Close.Vi:將打開的串口關(guān)閉。首先利用VISA Conf- igure Serial Port.vi進(jìn)行串口初始化,其中設(shè)置讀取和寫入操作的超時為10s,波特率為9600,8位數(shù)據(jù)位,無奇偶校驗(yàn)位,1為停止位,無流控制。然后打開串口,將讀取緩沖區(qū)的數(shù)據(jù)傳輸?shù)讲ㄐ螆D表進(jìn)行實(shí)時顯示,同時利用移位寄存器和連接字符串控件將采集的數(shù)據(jù)存儲在接收數(shù)據(jù)區(qū)中,當(dāng)采集的數(shù)據(jù)達(dá)到950個時,對其進(jìn)行幅值譜變換并顯示。同時清空接收數(shù)據(jù)區(qū),為下一次采集做準(zhǔn)備。LabVIEW程序框圖如圖4所示。本文引用地址:http://2s4d.com/article/195506.htm
4 系統(tǒng)測試與結(jié)果
為了測試系統(tǒng)的可靠性,將系統(tǒng)的P1.0口和電源地與DG 2041A數(shù)字信號發(fā)生器連接進(jìn)行測試。信號發(fā)生器產(chǎn)生頻率為100Hz,峰峰值為3V,其中高電平1.5V,低電平-1.5V的正弦波信號,通過電平變換電路得到低電平為1v、高電平為4V的正弦波。將A/D轉(zhuǎn)換后的數(shù)據(jù)傳到Lab- VIEW中,在顯示之前要減去2.5V電壓的A/D轉(zhuǎn)換值128,同時還要設(shè)置波形圖表Y軸的縮放比例為0.02,這樣就可以正確顯示了。通過設(shè)計的系統(tǒng)進(jìn)行采集在LabVIEW軟件上顯示的結(jié)果如圖5所示。
5 結(jié)束語
本文將STC單片機(jī)作為數(shù)據(jù)采集的前端,經(jīng)過CH341T芯片的轉(zhuǎn)換,利用USB接口與LabVIEW完成通訊。同時利用LabVIEW強(qiáng)大的信號分析處理能力,對信號進(jìn)行了實(shí)時顯示,并對信號進(jìn)行了頻譜分析。經(jīng)過對系統(tǒng)的調(diào)試和完善,實(shí)驗(yàn)證明,采集的信號可以滿足要求,系統(tǒng)運(yùn)行良好。
評論