摘 要:針對(duì)傳統(tǒng)RLC參數(shù)測量儀器的不足加以改進(jìn),利用計(jì)算機(jī)的硬件資源結(jié)合圖形化編程語言LABVIEW,設(shè)計(jì)了虛擬RLC參數(shù)自動(dòng)測量系統(tǒng)。介紹了測量系統(tǒng)的基本組成框圖和軟件設(shè)計(jì)方法,重點(diǎn)介紹了基于PCI總線的RLC元件參數(shù)測量板卡的設(shè)計(jì)。該RLC參數(shù)自動(dòng)測量系統(tǒng)在測量時(shí)由PC機(jī)自動(dòng)換擋,實(shí)現(xiàn)了測量系統(tǒng)的智能化。
關(guān)鍵詞:虛擬儀器,PCI總線,LabWindows/CVI, CPLD
[b][align=center]The Automatic Measurement System of RLC Parameter based on
Virtual Instrument
SUN Hong-bing[/align][/b]
Abstract: By improve the performance of the traditional RLC parameter measurement system, an RLC parameter automatic measurement system is designed using computer hardware and LABVIEW. The design method of the hardware and the software of the system are presented. And the design method of the RLC parameter measurement card based on PCI is introduced. The RLC automatic measurement system can shift gears automatically by computer, and has realized the measuring appliance intellectualization.
Keywords: Virtual Instrument, PCI bus, LabWindows/CVI, CPLD
1.引言:
RLC元件參數(shù)測量儀器是用于測量集中參數(shù)電阻R、電感L、互感M、電容C和品質(zhì)因數(shù)Q的測量儀器。傳統(tǒng)RLC參數(shù)測量儀器,如各種交流電橋,在測量電阻、電感、電橋等元件參數(shù)時(shí)需要人工換擋調(diào)節(jié),依靠技術(shù)人員觀測電橋是否平衡來加以判斷,進(jìn)而得到待測R、L、C等元件的各種參數(shù),需要反復(fù)調(diào)節(jié),且測量精度帶有一定的人為因素,誤差較大。隨著計(jì)算機(jī)技術(shù)的發(fā)展及儀器技術(shù)的不斷進(jìn)步,儀器逐步向智能化、自動(dòng)化、虛擬化發(fā)展。國外已有RLC自動(dòng)測試儀器產(chǎn)品,但體積很大、價(jià)格昂貴[1,2]。本文利用CPLD芯片及PCI接口芯片設(shè)計(jì)基于PCI總線的RLC元件參數(shù)自動(dòng)測量系統(tǒng),使用LabWindows/CVI作軟件開發(fā)平臺(tái),使系統(tǒng)體積小、價(jià)格便宜、升級(jí)方便,而且具有良好的人機(jī)交互界面。
2.測量原理
測量電阻、電感、電橋等元件的參數(shù)主要有三種方法:電橋法,諧振法,伏安法。電橋法及諧振法主要是利用偏差測量原理,需要技術(shù)人員反復(fù)調(diào)節(jié),難以實(shí)現(xiàn)自動(dòng)測量。伏安法測量來源于阻抗的定義,即若已知流經(jīng)被測阻抗的矢量電流并測得被測阻抗兩端的電壓,則通過比率便可得到被測阻抗的矢量。顯然要實(shí)現(xiàn)這種方法,必須借助計(jì)算機(jī)進(jìn)行矢量測量及除法運(yùn)算。伏安法有固定軸法和自由軸法兩種,固定軸法對(duì)硬件要求很高并且存在同相誤差,已很少使用,而自由軸法借助于計(jì)算機(jī)在RLC元件參數(shù)測量中得到了廣泛的應(yīng)用。自由軸法測量RLC參數(shù)的原理如圖1所示。被測阻抗ZX兩端的電壓Ux與標(biāo)準(zhǔn)阻抗ZS兩端的電壓Us的關(guān)系可用圖2表示。可見,只要分別測得UX,US在直角坐標(biāo)軸上的兩個(gè)投影值,由式(1)即可求得被測阻抗ZX[2]。
[align=center]

圖1 測量原理示意圖[/align]

(1)
式中,e為A/D轉(zhuǎn)換器的刻度系數(shù),即每個(gè)數(shù)字所代表的電壓值;Ni為Ui對(duì)應(yīng)的數(shù)字量(i=1,2,3,4),其中,Ni是Ui通過積分式A/D轉(zhuǎn)換器而得到的,ZS一般采用標(biāo)準(zhǔn)電阻RS。
3.測量系統(tǒng)硬件設(shè)計(jì)
根據(jù)上述原理,設(shè)計(jì)的RLC參數(shù)自動(dòng)測量系統(tǒng)的組成框圖如圖1所示。圖中所示各部分出計(jì)算機(jī)外所有部分都做到一塊板卡上,這是一個(gè)基于PCI總線的RLC元件參數(shù)測量板卡,主要由PCI接口電路、A/D轉(zhuǎn)換電路、正弦信號(hào)發(fā)生器、基準(zhǔn)相位發(fā)生器及鑒相電路等組成。
[align=center]

圖2 測量系統(tǒng)原理框圖[/align]
3.1 PCI接口電路設(shè)計(jì)
PCI總線是微型機(jī)上的處理器/存儲(chǔ)器與外圍控制部件、外圍附加卡之間的互連結(jié)構(gòu)??紤]到元器件參數(shù)測量控制邏輯的復(fù)雜性和為今后進(jìn)一步增加功能留下余量,選擇主設(shè)備接口芯片PLX9054,內(nèi)部集成了PCI接口芯片(9054)、SDRAM控制器、RISC CPU,利用它可以迅速地實(shí)現(xiàn)基于其它總線(如ISA)的設(shè)計(jì)轉(zhuǎn)換到基于PCI總線的設(shè)計(jì),也可以加快基于PCI總線的系統(tǒng)設(shè)計(jì),為儀器的虛擬化、集成化提供極大的方便。同時(shí)利用isp2128芯片來完成分頻器、計(jì)數(shù)器(用于產(chǎn)生各ROM的尋址信號(hào))以及其它的一部分控制功能。設(shè)計(jì)的電路如圖3所示。
[align=center]

圖3 PCI9054與局部總線接口[/align]
3.2 正弦信號(hào)發(fā)生器及鑒相電路設(shè)計(jì)
由測量原理可知儀器的工作頻率直接影響測量精度。因此要求測試信號(hào)源頻率精確度、頻譜純度和幅值穩(wěn)定度都要高,鑒相電路還要求信號(hào)源頻率和相位基準(zhǔn)信號(hào)的頻率嚴(yán)格同步,因此正弦信號(hào)源與基準(zhǔn)相位發(fā)生器在電路上是密切相關(guān)的。目前信號(hào)源電路多采用DDS技術(shù),先用數(shù)字合成的方法產(chǎn)生一個(gè)周期的正弦曲線采樣點(diǎn)存放在ROM(圖2中正弦ROM)中,每一個(gè)存儲(chǔ)單元存儲(chǔ)的樣點(diǎn)數(shù)據(jù)與地址之間的關(guān)系和時(shí)間軸與正弦波的正弦幅值的關(guān)系是一致的。這樣,當(dāng)按順序逐單元讀出ROM的樣點(diǎn)數(shù)據(jù)就能得到量化了的正弦曲線,若周期地重復(fù)這一過程,并經(jīng)D/A轉(zhuǎn)換與平滑濾波后輸出,就可得到連續(xù)的正弦信號(hào)。相位基準(zhǔn)的產(chǎn)生和信號(hào)的產(chǎn)生原理是一致的,把用于產(chǎn)生基準(zhǔn)相位信號(hào)的數(shù)據(jù)存入基準(zhǔn)相位ROM(圖2所示)?;鶞?zhǔn)相位ROM和正弦ROM的區(qū)別在于:基準(zhǔn)相位ROM內(nèi)存放的不是一個(gè)周期的正弦采樣點(diǎn)值而是4組相位分別相差90°的正弦信號(hào)采樣值,用6路信號(hào)進(jìn)行尋址,輸出信號(hào)送到乘法型D/A轉(zhuǎn)換器,被測信號(hào)加到參考電壓VREF端。這樣,產(chǎn)生測試信號(hào)的同時(shí)也產(chǎn)生了同頻率的基準(zhǔn)相位信號(hào)。在 D/A轉(zhuǎn)換器內(nèi)部,通過基準(zhǔn)相位信號(hào)和被測信號(hào)相乘,實(shí)現(xiàn)了數(shù)字全波鑒相。
3.3 控制部分及系統(tǒng)工作過程
在設(shè)計(jì)中所完成的邏輯控制可分為三部分:測試信號(hào)發(fā)生功能部分、數(shù)據(jù)產(chǎn)生部分和邏輯控制部分,控制邏輯由ISP2128完成。ISP2128是LATTICE公司的可編程邏輯器件,內(nèi)有128個(gè)寄存器,6000個(gè)PLD門。設(shè)計(jì)時(shí)采用原理圖和VHDL語言混合的方式,將所要實(shí)現(xiàn)的功能分為若干子摸塊。每個(gè)子模塊由VHDL語言編程實(shí)現(xiàn),然后用原理圖的方式將其進(jìn)行綜合,進(jìn)而實(shí)現(xiàn)設(shè)計(jì)功能。操作者通過計(jì)算機(jī)選擇測試信號(hào)的頻率、切換檔位。這樣,板卡和計(jì)算機(jī)之間的數(shù)據(jù)交換就分成三部分:(1)用于控制測試信號(hào)的信號(hào)由計(jì)算機(jī)送入板卡。(2)板卡進(jìn)行一次測量所得的數(shù)據(jù)由板卡送入計(jì)算機(jī)。(3)用于板卡、計(jì)算機(jī)間數(shù)據(jù)傳送的握手信號(hào)。PCI9054的工作過程為:將控制信號(hào)送給測量電路,測量電路接到信號(hào)后開始測量。每測出一個(gè)結(jié)果,都通過PCI9054在PCI總線產(chǎn)生中斷。計(jì)算機(jī)響應(yīng)中斷,通過PCI9054讀取測量結(jié)果。直到將8組測試數(shù)據(jù)全部送給計(jì)算機(jī),一次測量就完成了。計(jì)算機(jī)讀取的數(shù)據(jù)就是Ni,通過應(yīng)用程序可算出所需的R、L、C、Q等參數(shù)。
4 系統(tǒng)軟件設(shè)計(jì)
測量系統(tǒng)硬件部分設(shè)計(jì)完成后,還需要編制相應(yīng)的PCI板卡驅(qū)動(dòng)程序和測量應(yīng)用程序。
4.1驅(qū)動(dòng)程序的設(shè)計(jì)
驅(qū)動(dòng)程序建立計(jì)算機(jī)和板卡間的數(shù)據(jù)、命令傳送。設(shè)計(jì)時(shí)利用DDK和DriverStudio開發(fā)PCI板卡的驅(qū)動(dòng)程序。根據(jù)設(shè)置向?qū)冗x擇WDM選項(xiàng),再選擇PCI總線類型,為板卡分配中斷號(hào)和內(nèi)存對(duì)象。至于所分配的具體的內(nèi)存位置和中斷號(hào)并不需要指明,因?yàn)樵诩床寮从玫尿?qū)動(dòng)程序中,具體的內(nèi)存位置和中斷號(hào)由操作系統(tǒng)在系統(tǒng)啟動(dòng)時(shí)分配。而內(nèi)存的范圍則在測量板卡上的配置寄存器中設(shè)置[3,4]。按步驟完成向?qū)У脑O(shè)置工作之后,就生成了驅(qū)動(dòng)程序的基本框架,包括:內(nèi)存對(duì)象、中斷對(duì)象、中斷處理例程、讀/寫例程等。讀/寫例程是設(shè)備驅(qū)動(dòng)程序處理用戶的讀請(qǐng)求和寫請(qǐng)求的例程,是該驅(qū)動(dòng)程序的核心。用于響應(yīng)用戶的讀/寫請(qǐng)求,將數(shù)據(jù)寫入用戶緩沖區(qū),以及其它的一些控制等。讀/寫例程的編寫采用了設(shè)備驅(qū)動(dòng)程序中常用的技術(shù)—序列化I/O請(qǐng)求。
4.2 應(yīng)用程序的設(shè)計(jì)
系統(tǒng)開發(fā)時(shí)選用LabWindows/CVI為主開發(fā)平臺(tái),這是NI公司開發(fā)的基于標(biāo)準(zhǔn)C語言的虛擬儀器開發(fā)環(huán)境,具有良好的用戶界面[5]。系統(tǒng)軟件采用模塊化設(shè)計(jì),主要包括用戶界面設(shè)計(jì)(儀器軟面板)、應(yīng)用程序與驅(qū)動(dòng)程序接口、數(shù)據(jù)讀取與處理、結(jié)果輸出與顯示等。系統(tǒng)操作界面(儀器軟面板)是人機(jī)交互的主要途徑,好的操作界面可以使用戶方便、直觀地操作測量系統(tǒng),可以通過該界面及時(shí)獲取測量結(jié)果[6]。本系統(tǒng)設(shè)計(jì)的操作界面如圖4所示。
在編寫軟件時(shí)要實(shí)現(xiàn)LabWindows對(duì)板卡的訪問,首先要實(shí)現(xiàn)LabWindows與設(shè)備驅(qū)動(dòng)程序的接口,為此需將DDK中的文件Setupapi.h和Setupapi.lib文件導(dǎo)入項(xiàng)目中。數(shù)據(jù)讀取與處理部分根據(jù)面板上的按鈕,進(jìn)行測量頻率、元器件性質(zhì)和量程選擇調(diào)用不同的函數(shù),對(duì)讀入的數(shù)據(jù)進(jìn)行計(jì)算,并將處理的結(jié)果在儀器面板上顯示。
[align=center]

圖4虛擬面板[/align]
5 結(jié)束語
本文設(shè)計(jì)的RLC元件參數(shù)測量系統(tǒng),由于采用了PCI9054接口芯片,簡化了PCI總線方面的設(shè)計(jì),同時(shí)將信號(hào)發(fā)生部分和控制部分全部放入CPLD芯片ISP2128中,節(jié)約了板卡空間,提高了信號(hào)源的質(zhì)量。另外虛擬儀器開發(fā)軟件LabWindows的使用,使系統(tǒng)的信號(hào)處理能力得到了提高,也為系統(tǒng)后期升級(jí)提供了方便。采用以上措施研制出的測量系統(tǒng)具有自動(dòng)化、智能化程度高,開發(fā)成本低,開發(fā)周期短等優(yōu)點(diǎn),可以實(shí)時(shí)在線測量RLC的元件參數(shù)。使用虛擬儀器逐步代替?zhèn)鹘y(tǒng)儀器已經(jīng)成為測試領(lǐng)域發(fā)展的趨勢(shì),在實(shí)際應(yīng)用中,要根據(jù)具體情況進(jìn)行程序的優(yōu)化和軟硬件的結(jié)合,使虛擬儀器發(fā)揮更高的性能。
本文作者創(chuàng)新點(diǎn):采用了先進(jìn)的測量原理,并利用PCI9054芯片設(shè)計(jì)PCI接口電路,用CPLD芯片ISP2128產(chǎn)生分頻信號(hào)及相關(guān)功能模塊的控制信號(hào),設(shè)計(jì)方法獨(dú)特,有效簡化了電路設(shè)計(jì),提高了可靠性,可長期測量,無須專門調(diào)校。
參考文獻(xiàn)
[1] 李貴山,戚德虎.PCI局部總線開發(fā)指南[M].西安電子科技大學(xué)出版社,1997,西安, 13-20
[2] 李念強(qiáng),經(jīng)亞枝.一種新型RLC數(shù)字電橋的研究.南京航空航天大學(xué)學(xué)報(bào)[J].2001.10:490-494
[3] 王磊,袁慎芳.基于虛擬儀器技術(shù)的復(fù)合材料損傷實(shí)時(shí)監(jiān)測系統(tǒng)軟件開發(fā). 傳感技術(shù)學(xué)報(bào)[J].2002,12:318-321
[4] 江偉,袁芳.基于虛擬儀器技術(shù)的振動(dòng)測試系統(tǒng)的設(shè)計(jì)[J]. 微計(jì)算機(jī)信息,2006.10
[5] 姚衛(wèi)新. 基于虛擬儀器概念的多功能液位顯示儀的開發(fā)方法[J].計(jì)算機(jī)應(yīng)用研究,2002.4:114-117
[6] 陳希林,肖明清.一種LabWindvws/CVI與MATLAB混合編程的實(shí)現(xiàn)方法[J].微計(jì)算機(jī)信息,2005,21(1):43-44.