新聞中心

EEPW首頁 > 測試測量 > 設計應用 > 一種新的死時間損失的補償方法及其實現(xiàn)

一種新的死時間損失的補償方法及其實現(xiàn)

作者: 時間:2006-05-07 來源:網(wǎng)絡 收藏

摘要:用計數(shù)的方法解決脈沖幅度分析器系統(tǒng)的丟峰問題,然后根據(jù)丟失脈沖的個數(shù)進行補償,是解決幅度分析系統(tǒng)中死時間問題的有效方法。本文詳細介紹了這種死時間損失補償?shù)姆椒ㄔ砑捌湓趯嶋H中的應用。

關(guān)鍵詞:脈沖幅度分析系統(tǒng) 死時間

本文引用地址:http://www.butianyuan.cn/article/255698.htm

前言

脈沖幅度分析系統(tǒng)是核輻射探測儀器的一個重要組成部分,它根據(jù)模-數(shù)轉(zhuǎn)換原理,把前置電路(傳感器+前放+主放)輸出的模擬信號轉(zhuǎn)換成與其峰值成比例的數(shù)字信息。實現(xiàn)信號轉(zhuǎn)換的主要器件是模數(shù)轉(zhuǎn)換器。模數(shù)轉(zhuǎn)換器在信號轉(zhuǎn)換和存儲器存儲過程中,前置電路隨后輸出的信號將被丟失。通常,將能區(qū)分兩個脈沖之間的最小時間間隔稱為計數(shù)系統(tǒng)的死時間,對于脈沖幅度分析系統(tǒng)而言,死時間主要取決于模數(shù)轉(zhuǎn)換器的轉(zhuǎn)換時間和存儲器的存儲時間之和。一種做法是累計每個計數(shù)的死時間,然后通過延長測量時間來補償因死時間而造成的計數(shù)損失。這種死時間損失補償方法會因死時間的累計不準等原因造成很大誤差,同時,當計數(shù)率不大,模數(shù)轉(zhuǎn)換器轉(zhuǎn)換速度足夠快時,計數(shù)基本不丟失的情況下,死時間仍然存在,此時的死時間損失補償顯然是不合理的。為此,我們采用了一種新的死時間損失補償方法,可以有效地克服以上弊端。

方法原理

常用的計數(shù)系統(tǒng)死時間特性模型有兩種:擴展型響應和非擴展型響應。這些模型體現(xiàn)了理想化的死時間特性,實際計數(shù)系統(tǒng)的響應往往很類似于這兩者中的一種模型。假定在計數(shù)系統(tǒng)“活時間”內(nèi)發(fā)生的每個真事件跟隨一個固定的死時間τ,在死時間內(nèi)的真事件雖然不被計數(shù),但跟隨丟失事件再擴展了另一個周期為τ的死時間,稱為擴展型響應死時間。假定在計數(shù)系統(tǒng)“活時間”內(nèi)發(fā)生的每個真事件跟隨一個固定的死時間τ,在這個死時間內(nèi)發(fā)生的真事件將會丟失且對計數(shù)系統(tǒng)特性無任何影響,稱為非擴展型響應死時間。

脈沖幅度分析系統(tǒng)的死時間是非擴展型死時間,因為一個脈沖引起計數(shù)后的分辨時間內(nèi)又有脈沖進入系統(tǒng)不會引起計數(shù),但也不會進一步引起死時間的增加。死時間的修正公式為:

N0=N/(1-Nτ)

其中,N0為單位時間內(nèi)進入系統(tǒng)的脈沖總數(shù);N為記錄到的計數(shù)率;τ為系統(tǒng)死時間;Nτ的物理意義是單位時間內(nèi)死時間之和。事實上,脈沖幅度分析系統(tǒng)的死時間固然是系統(tǒng)的一個重要的技術(shù)指標,但計算死時間的最終目的是為了對死時間損失進行補償,如果采用延長測量時間的方法對死時間進行補償,在延長的測量時間內(nèi)又會產(chǎn)生新的死時間,這顯然對死時間的修正不利。為此,我們采用了脈沖個數(shù)補償方法,即對在測量過程中累計的死時間內(nèi)丟失的脈沖個數(shù)進行補償。設n0為測量時間內(nèi)進入系統(tǒng)的脈沖總數(shù);n為測量時間內(nèi)記錄到的計數(shù),新的死時間損失的補償方法就是采用對丟失的脈沖個數(shù)(即n0-n)進行補償?shù)姆椒?。具體做法是:用單片機的T1計時器對前置電路輸出的脈沖個數(shù)進行累計計數(shù),得n0;同時在單片機程序中(也可采用單片機的計數(shù)器)對模數(shù)轉(zhuǎn)換器轉(zhuǎn)換的脈沖個數(shù)進行累計計數(shù),得n;當設定的測量時間到達的瞬間,二者之差即為系統(tǒng)丟失脈沖個數(shù)(即n0-n),此時系統(tǒng)繼續(xù)工作,當模數(shù)轉(zhuǎn)換器再轉(zhuǎn)換了n0-n個脈沖后,系統(tǒng)停止工作并顯示測量時間到,從而實現(xiàn)死時間損失的補償。

很顯然,這種脈沖個數(shù)補償方法同樣適用于擴展型死時間的補償修正。

硬件設計

圖1為系統(tǒng)的控制電路,也可視為輸入信號的緩沖電路,用來甄別信號的上升沿,提供輸入信號的峰值信息。其中:電容C1是信號峰值的保持電容;二極管D1保證C1采集的是輸入信號峰值,防止其跟隨輸入信號的下降而變化;U1:A是信號起始判斷比較器,其反向端接入一參考電壓0.5V,正相端接輸入信號;U1:B是信號峰值幅度判斷比較器,其反向端接電容C1,正相端接輸入信號,在信號的上升沿階段,反相端的電壓總是比正相端電壓低0.3V;兩個比較器的輸出端A、B及C點波形如圖2所示。C點提供了信號上升沿信息,用于控制后續(xù)的峰值保持電路;U1:A實際上是一個閾壓判別比較器,小于0.5V的信號被認為是噪聲,C點不提供控制信息,ADC不予轉(zhuǎn)換,因此U1:A 的輸出端A可以作為信號總計數(shù)的輸入端,接到單片機的T1計時器(即P3.5腳)。

軟件設計

與死時間損失補償有關(guān)的單片機軟件的設計主要涉及以下幾個模塊:

(1)計時模塊。采用單片機的T0計時器實現(xiàn)系統(tǒng)測量計時,此模塊實際是計時器T0的溢出中斷服務程序。

(2)信號總計數(shù)累加模塊。采用單片機的T1計時器實現(xiàn)系統(tǒng)信號總計數(shù),此模塊實際是計數(shù)器T1的溢出中斷服務程序。

(3)ADC轉(zhuǎn)換的脈沖個數(shù)累加模塊。對A/D的轉(zhuǎn)換采取中斷查詢方式,ADC的狀態(tài)口STATUS作為單片機的INT0的外部中斷源,每完成一次A/D轉(zhuǎn)換,外部中斷0服務程序便讀取ADC的轉(zhuǎn)換結(jié)果,并寫入內(nèi)存,同時,ADC轉(zhuǎn)換的脈沖個數(shù)加1??梢?,ADC轉(zhuǎn)換的脈沖個數(shù)累加模塊實際上是外部中斷0服務程序的一部分。

與死時間的計算有關(guān)的軟件實現(xiàn)流程圖見圖3??刂婆_將測量時間Ts送入脈沖幅度分析系統(tǒng)并啟動測量,前置電路的脈沖進入分析系統(tǒng),計時器T0開始計時(假設計時時間為Tn),計數(shù)器T1開始記錄進入系統(tǒng)的總的脈沖個數(shù)(n0),ADC每轉(zhuǎn)換一個脈沖,n加1。當測量時間到達即Tn=Ts時,計數(shù)器T1停止計數(shù),此時的n0為在設定測量時間Ts內(nèi)進入分析系統(tǒng)的總的脈沖個數(shù),如果此時的n0與ADC已轉(zhuǎn)換的脈沖個數(shù)n相等,則表示系統(tǒng)無丟峰現(xiàn)象,死時間為0;否則,ADC需再轉(zhuǎn)換n0-n個脈沖,以補償丟失的脈沖。

結(jié)語

成都理工學院研制的CD-10型便攜式X熒光全譜測量儀中的峰值幅度分析系統(tǒng),最初采用傳統(tǒng)意義上的死時間計算方法,由于計時參考脈沖周期(0.25μs)與ADC每次轉(zhuǎn)換的時間(8μs)處于同一個數(shù)量級等原因,使得死時間計算不準;采用新的死時間計算方法后,該峰值幅度分析系統(tǒng)能準確反映系統(tǒng)的死時間,提高了儀器的精確性。該方法同樣適用于其他信號峰值幅度分析的場合,具有較大的推廣應用價值。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉
×

火热报名中
TI MSPM0 焕新大作战技术沙龙开启,速来报名抢位!
深圳 | 广州 | 北京 |上海 | 杭州 | 成都