新闻中心

EEPW首页 > 测试测量 > 设计应用 > 一种新的死时间损失的补偿方法及其实现

一种新的死时间损失的补偿方法及其实现

作者:时间:2006-05-07来源:网络

摘要:用计数的方法解决脉冲幅度分析器系统的丢峰问题,然后根据丢失脉冲的个数进行补偿,是解决幅度分析系统中死时间问题的有效方法。本文详细介绍了这种死时间损失补偿的方法原理及其在实际中的应用。

关键词:脉冲幅度分析系统 死时间

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

前言

脉冲幅度分析系统是核辐射探测仪器的一个重要组成部分,它根据模-数转换原理,把前置电路(传感器+前放+主放)输出的模拟信号转换成与其峰值成比例的数字信息。实现信号转换的主要器件是模数转换器。模数转换器在信号转换和存储器存储过程中,前置电路随后输出的信号将被丢失。通常,将能区分两个脉冲之间的最小时间间隔称为计数系统的死时间,对于脉冲幅度分析系统而言,死时间主要取决于模数转换器的转换时间和存储器的存储时间之和。一种做法是累计每个计数的死时间,然后通过延长测量时间来补偿因死时间而造成的计数损失。这种死时间损失补偿方法会因死时间的累计不准等原因造成很大误差,同时,当计数率不大,模数转换器转换速度足够快时,计数基本不丢失的情况下,死时间仍然存在,此时的死时间损失补偿显然是不合理的。为此,我们采用了一种新的死时间损失补偿方法,可以有效地克服以上弊端。

方法原理

常用的计数系统死时间特性模型有两种:扩展型响应和非扩展型响应。这些模型体现了理想化的死时间特性,实际计数系统的响应往往很类似于这两者中的一种模型。假定在计数系统“活时间”内发生的每个真事件跟随一个固定的死时间τ,在死时间内的真事件虽然不被计数,但跟随丢失事件再扩展了另一个周期为τ的死时间,称为扩展型响应死时间。假定在计数系统“活时间”内发生的每个真事件跟随一个固定的死时间τ,在这个死时间内发生的真事件将会丢失且对计数系统特性无任何影响,称为非扩展型响应死时间。

脉冲幅度分析系统的死时间是非扩展型死时间,因为一个脉冲引起计数后的分辨时间内又有脉冲进入系统不会引起计数,但也不会进一步引起死时间的增加。死时间的修正公式为:

N0=N/(1-Nτ)

其中,N0为单位时间内进入系统的脉冲总数;N为记录到的计数率;τ为系统死时间;Nτ的物理意义是单位时间内死时间之和。事实上,脉冲幅度分析系统的死时间固然是系统的一个重要的技术指标,但计算死时间的最终目的是为了对死时间损失进行补偿,如果采用延长测量时间的方法对死时间进行补偿,在延长的测量时间内又会产生新的死时间,这显然对死时间的修正不利。为此,我们采用了脉冲个数补偿方法,即对在测量过程中累计的死时间内丢失的脉冲个数进行补偿。设n0为测量时间内进入系统的脉冲总数;n为测量时间内记录到的计数,新的死时间损失的补偿方法就是采用对丢失的脉冲个数(即n0-n)进行补偿的方法。具体做法是:用单片机的T1计时器对前置电路输出的脉冲个数进行累计计数,得n0;同时在单片机程序中(也可采用单片机的计数器)对模数转换器转换的脉冲个数进行累计计数,得n;当设定的测量时间到达的瞬间,二者之差即为系统丢失脉冲个数(即n0-n),此时系统继续工作,当模数转换器再转换了n0-n个脉冲后,系统停止工作并显示测量时间到,从而实现死时间损失的补偿。

很显然,这种脉冲个数补偿方法同样适用于扩展型死时间的补偿修正。

硬件设计

图1为系统的控制电路,也可视为输入信号的缓冲电路,用来甄别信号的上升沿,提供输入信号的峰值信息。其中:电容C1是信号峰值的保持电容;二极管D1保证C1采集的是输入信号峰值,防止其跟随输入信号的下降而变化;U1:A是信号起始判断比较器,其反向端接入一参考电压0.5V,正相端接输入信号;U1:B是信号峰值幅度判断比较器,其反向端接电容C1,正相端接输入信号,在信号的上升沿阶段,反相端的电压总是比正相端电压低0.3V;两个比较器的输出端A、B及C点波形如图2所示。C点提供了信号上升沿信息,用于控制后续的峰值保持电路;U1:A实际上是一个阈压判别比较器,小于0.5V的信号被认为是噪声,C点不提供控制信息,ADC不予转换,因此U1:A 的输出端A可以作为信号总计数的输入端,接到单片机的T1计时器(即P3.5脚)。

软件设计

与死时间损失补偿有关的单片机软件的设计主要涉及以下几个模块:

(1)计时模块。采用单片机的T0计时器实现系统测量计时,此模块实际是计时器T0的溢出中断服务程序。

(2)信号总计数累加模块。采用单片机的T1计时器实现系统信号总计数,此模块实际是计数器T1的溢出中断服务程序。

(3)ADC转换的脉冲个数累加模块。对A/D的转换采取中断查询方式,ADC的状态口STATUS作为单片机的INT0的外部中断源,每完成一次A/D转换,外部中断0服务程序便读取ADC的转换结果,并写入内存,同时,ADC转换的脉冲个数加1。可见,ADC转换的脉冲个数累加模块实际上是外部中断0服务程序的一部分。

与死时间的计算有关的软件实现流程图见图3。控制台将测量时间Ts送入脉冲幅度分析系统并启动测量,前置电路的脉冲进入分析系统,计时器T0开始计时(假设计时时间为Tn),计数器T1开始记录进入系统的总的脉冲个数(n0),ADC每转换一个脉冲,n加1。当测量时间到达即Tn=Ts时,计数器T1停止计数,此时的n0为在设定测量时间Ts内进入分析系统的总的脉冲个数,如果此时的n0与ADC已转换的脉冲个数n相等,则表示系统无丢峰现象,死时间为0;否则,ADC需再转换n0-n个脉冲,以补偿丢失的脉冲。

结语

成都理工学院研制的CD-10型便携式X荧光全谱测量仪中的峰值幅度分析系统,最初采用传统意义上的死时间计算方法,由于计时参考脉冲周期(0.25μs)与ADC每次转换的时间(8μs)处于同一个数量级等原因,使得死时间计算不准;采用新的死时间计算方法后,该峰值幅度分析系统能准确反映系统的死时间,提高了仪器的精确性。该方法同样适用于其他信号峰值幅度分析的场合,具有较大的推广应用价值。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


评论

技术专区

关闭