基于80C196的采樣與A/D處理
介質(zhì)損耗儀是一種測(cè)試高壓絕緣體性能狀況的儀器,原理為從標(biāo)準(zhǔn)通道取得的電信號(hào)與被試通道取得的電信號(hào)相比較、分析與處理來(lái)得出被試體的絕緣狀況。被試體可等效為電阻與電容的并聯(lián)。圖1為原理結(jié)構(gòu)圖。在分析處理中,需要得出精確的兩個(gè)通道信號(hào)的大小, 和求出兩通道信號(hào)的相角之差。由于采樣環(huán)境惡劣與對(duì)采樣精度的高要求,采樣設(shè)計(jì)應(yīng)注意:一:采用高的采樣頻率,拓寬原始信號(hào)的頻域,保證原始信號(hào)的最小失真的采樣;二:為克服采樣的壞環(huán)境和得到高精度的 A/D轉(zhuǎn)換量化值,應(yīng)選用高精度與高線(xiàn)性度的A/D轉(zhuǎn)換芯片;三:為保證相角差的測(cè)量,兩個(gè)通道應(yīng)同時(shí)開(kāi)始采樣;三DFT處理:為了對(duì)采樣來(lái)的離散點(diǎn)信號(hào)進(jìn)行快速傅立葉變換,采樣的時(shí)間段為一個(gè)周期。在實(shí)時(shí)采樣中采樣頻率實(shí)現(xiàn)的問(wèn)題上,有多種方案,可以由嵌入式的微處理控制器設(shè)定頻率觸發(fā)A/D轉(zhuǎn)換器的采樣,像如利用DSP處理芯片其采樣周期只有25ns甚至更?。灰部稍O(shè)計(jì)專(zhuān)門(mén)的硬件組成觸發(fā)電路。在本儀器中是利用一種普通的微控器(80C196)結(jié)合鎖相環(huán)組成的外圍硬件觸發(fā)采樣的。下面講述這種采樣的原理與實(shí)現(xiàn)。
1 原理介紹
由于單位周期內(nèi)采樣點(diǎn)越多,測(cè)得的值就越精確。本設(shè)計(jì)中一個(gè)原始信號(hào)周期擬采樣512個(gè)點(diǎn),工頻的頻率為50Hz,所以采樣頻率大概就是25600Hz,其可包含更寬的原始信號(hào)頻域,采樣更真實(shí)。采樣就是要把真實(shí)的信號(hào)存入處理器存貯內(nèi),以供處理調(diào)用。此全過(guò)程有采樣觸發(fā)與A/D轉(zhuǎn)換兩個(gè)部分。
1.1 采樣觸發(fā)
采樣觸發(fā)圖如下:
圖2 觸發(fā)電路
上圖中LM311是專(zhuān)用的電壓比較器,把其設(shè)置為過(guò)零比較。而VIN2則是通道2原始信號(hào)引出來(lái)的采樣線(xiàn),其為正弦波,所以L(fǎng)M311輸出的為與原始信號(hào)頻率一致的脈沖方波,送至鎖相環(huán)4046的AIN引腳。鎖相環(huán)4046的AIN與BIN為輸入,AIN引入采樣進(jìn)來(lái)的信號(hào),BIN引入反饋信號(hào)。如果比較兩路信號(hào)其頻率不一致,鎖相環(huán)4046在內(nèi)部產(chǎn)生一個(gè)AIN信號(hào)的分或倍頻信號(hào)(一種脈沖方波)由VCOUT即4腳輸出,如BIN的頻率大于A(yíng)IN的頻率則倍頻反之則分頻,此過(guò)程一直到AIN與BIN兩路信號(hào)的頻率相等才會(huì)穩(wěn)定。鎖相環(huán)后的電路是VCOUT連到的倍數(shù)器4040輸入端A,4040的Q9腳引出信號(hào)作為反饋接至4046的BIN端。4040是倍頻芯片其Q9引腳的輸出信號(hào)是輸入A端信號(hào)的512之倍頻。由于4046的AIN與BIN引入頻率相同時(shí)內(nèi)部分倍頻才穩(wěn)定,因此VCOUT穩(wěn)定的輸出是AIN輸入的512分頻,這時(shí)鎖相環(huán)穩(wěn)定從VCOUT輸出采樣信號(hào)的512分頻的脈沖方波。為了觸發(fā)效果的需要,加一RS觸發(fā)器74HC123引出OUT觸發(fā)。OUT觸發(fā)便輸出至兩個(gè)通道的A/D轉(zhuǎn)換器AD976的R/C腳(SAMPLE),這樣可以保證兩個(gè)通道同時(shí)采樣。
1.2 A/D轉(zhuǎn)換
A/D轉(zhuǎn)換的硬件連接圖如圖3(只引出了通道1)。AD976是一種高速度、低電壓、16位的模數(shù)轉(zhuǎn)換器,其線(xiàn)性誤差很小,帶有8位并行輸出口。A/D轉(zhuǎn)換后的16位數(shù)字值分時(shí)兩次從并行口輸出,由外來(lái)BYTE腳引入高低電平分別對(duì)應(yīng)讀取16位數(shù)字信號(hào)的高8位和低8位。/BUSY引腳輸出的是轉(zhuǎn)換過(guò)程的狀態(tài),低電平為轉(zhuǎn)換期間,高電平為轉(zhuǎn)換結(jié)束,本設(shè)計(jì)中把此信號(hào)作為80C196的高速輸入事件的輸入,由80C196識(shí)別可進(jìn)入其A/D轉(zhuǎn)換的響應(yīng)程序。其一次A/D的過(guò)程是:微控器識(shí)別A/D事件輸入后進(jìn)入響應(yīng)程序,響應(yīng)程序中微控器完成16位數(shù)據(jù)的讀取又回到下一次A/D事件的查詢(xún)狀態(tài)。在整個(gè)采樣A /D轉(zhuǎn)換過(guò)程中采樣周期為19μs左右,AD976轉(zhuǎn)換時(shí)間是5~10μs,每次轉(zhuǎn)換之前/BUSY產(chǎn)生一個(gè)事件廷遲時(shí)間為83ns,轉(zhuǎn)換結(jié)束/BUSY 產(chǎn)生一個(gè)事件延遲180~360ns,加起來(lái)采樣費(fèi)時(shí)不超過(guò)11μs,所以AD976的響應(yīng)這種高速采樣是沒(méi)有問(wèn)題的。轉(zhuǎn)換后的數(shù)字?jǐn)?shù)據(jù)通過(guò) 74HC541鎖存送至80C196的P3口,這就完成了信號(hào)由采樣到存儲(chǔ)、由模擬到數(shù)字的工作,通過(guò)對(duì)處理器的編程就可完成這個(gè)過(guò)程。
2 程序?qū)崿F(xiàn)
2.1 程序設(shè)計(jì)
如圖4,A/D數(shù)據(jù)通過(guò)鎖存器與MCU連接,數(shù)據(jù)由P3口輸入,兩個(gè)通道ADC的/BUSY引出線(xiàn)/BUSY1與/BUSY2構(gòu)成輸入事件HSI0,兩個(gè) ADC的BYTE接I/O口P2.6,兩通道 的鎖存器地址由系統(tǒng)給出分為CS1與CS2。MCU的程序就是把兩個(gè)A/D通道轉(zhuǎn)換好的數(shù)值讀取到MCU 中,其事件響應(yīng)為查詢(xún)方式,程序框圖如圖5。
2.2 采樣執(zhí)行的子程序片段摘錄
程序執(zhí)行的結(jié)果是要求512個(gè)的數(shù)據(jù)存入處理器指定的RAM內(nèi),在上程序中CVTWAIT循環(huán)一次就存一個(gè)采樣點(diǎn),/BUSY事件等待查詢(xún)響應(yīng)很快。一個(gè) CVTWAIT循環(huán)周期大概只需要1μs左右(采用20MHz的主頻,不計(jì)等待的時(shí)間),遠(yuǎn)小于19μs單點(diǎn)采樣周期。通過(guò)這些程序和在之前介紹的硬件,512點(diǎn)的采樣與A/D就可很好的完成。
3小結(jié)
在儀器使用過(guò)程中,此采樣硬件與軟件的設(shè)計(jì)在速度與精度上都達(dá)到了儀器的要求,可以說(shuō)這一采樣設(shè)計(jì)是一個(gè)既經(jīng)濟(jì)又有效的設(shè)計(jì),愚以為能給相關(guān)開(kāi)發(fā)者提供一些參考。
參考文獻(xiàn)
[1] 何利民 . 單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì) . 第一版 . 北京航天航空大學(xué)出版社
[2] http://www.analog.com/productSelection/pdf/AD976_A_c.pdf C2624c-1-8/99
[3] http://www.intel.com/design/MCS96/MANUALS/27297302.pdf
[4] http://www-s.ti.com/sc/ds/cd74hc4046a.pdf
[5] http://www-s.ti.com/sc/ds/cd74hc4040.pdf