一. 填充计数测量相位的原理
要获得两个同频信号间的相位值有多种实现方法。较为常用的一种是采用过零鉴相法,这种方法的基本要点是:将两个同频被测信号整形为两个方波信号,其前后沿分别对应于被测信号的正向过零点和负向过零点,然后测量出这两个同频方波的前沿(或后沿)之间的时间差比例,即为这两个被测信号之间的相位差,简称相差。
而要获得这个时间差比例,通常采用填充计数法,其基本原理见图1,设A,B为两路同频待测的正弦波信号,两信号经整形后形成A\'和B\'两路方波,若A\'的两个前沿之间(一个信号周期)的计数脉冲的个数为N个,A\'与B\'的两个相邻前沿之间的计数脉冲的个数为n个,则A,B两路之间的相位差为:
n/N * 360° (1) 二.计数脉冲频率与相位计算精度的关系
从上述方法测量相位的原理来看,要获得两个同频信号间的相位差,只要获得两个计数值N和n,通过(1)式计算即可。那么相位计算的分辩率就为3600/N ,也就是表示相差的最小单位。当被测信号的频率一定时,计数脉冲的频率就决定了相位测量的精度。如在一个信号周期内所获得的计数脉冲的个数为360个,则获得相差的最小单位是3600/360=10(可看作是每个脉冲代表10)。若在一个信号周期内所获得的计数脉冲的个数为3600个,则获得相差的最小单位就为3600/3600=0.10(可看作是每个脉冲代表0.10)。由此可见在一个信号周期内所获得的计数脉冲的个数越多,则获得相位差的最小单位也就越小,精度也就越高。要达到0.10以上的精度,则计数脉冲的频率必须是被测信号频率的3600倍以上。设被测信号频率为fx,计数脉冲频率为fa ,则设计时应满足:
fa>3600×fx (2)
三.利用MCS-51系列单片机片内资源实现相位测量的分析
由于需要进行计算,目前市场上流行的相位表,多数为单纯利用MSC─51系列机片内资源实现计数与计算。在典型的MSC-51系列单机片内,有2个16位的定时/计数器(CTC0,CTC1),5个中断源,时钟频率为3.8-12MHz ,这些都为实现相位差的测量与计算提供了一定的硬件基础。可利用片内2个定时/计数器,(CTC0,CTC1)分别记录前面所述的N和n的计数值。将CTC0,CTC1设置为定时方式(计片内机器周期数)。两个外部中断INT0,INT1,设置成下沿触发方式,并将上述A\',B\'两个方波信号接至INT0,INT1的输入端。利用INT0和INT1的中断服务程序来控制CTC0,CTC1的启动与停止,以此来获取N和n的计数值。
由于MCS-51系列单片机的最高工作频率为12MHZ,故CTC0,CTC1的最高计数频率为1MHz。16位字长的CTC0和CTC1计数范围是0ー65535。对于1MHz的计数频率而言,输入信号的频率响应范围的下限是:在一个信号周期内CTC的计数从零计到最大65535,而每一计数脉冲的周期是1μS(1MHz的计数脉冲)。故CTC从零计到最大值所需时间是:65535 * 1μS=65535μS,因而,输入信号的最低频率约为1/0.065535=15.26Hz。频率响应的上限是:虽然在一个信号周期内CTC的计数值大于零即可计算,但为了使计算结果具有足够的精度(至少0.10),故记录N值的CTC在一个信号周期内的计数值必须大于3600(因3600/3600=0.10)而CTC从零计数到3600所需时间为3600*1μS=3600μS。由此可得输入信号的最高频率约为1/0.0036=277.78Hz。
在最高的输入信号频率下,每一个计数脉冲即代表0.10机器每多计或少计一个脉冲就意味着带来一个0.10的误差。另外由于CTC的启停是由中断服务程序来控制的,那么CTC启停时刻不能绝对代表信号的下沿时刻,故误差是不可避免。当信号频率较低时,其误差尚可忽略。当信号频率越接近最高响应频率,其单片机所带来的误差就越不可忽略。以这样的方式构成的相位计,实际上的最高响应频率仅在100Hz左右。
四.高频计数的实现
从以上分析得知,若仅利用单片机的资源来实现相差的测量,是无法以高精度测得较高频率信号的相位差的。其关键所在是计数频率已无法再提高。鉴于这点笔者考虑到不用单片机内部的CTC计数,而是采用廉价的74系列芯片搭成高速计数,锁存电路。当计数值锁定这后,再读入单片机进行计算和显示。
具体实现的电路图如图2所示。高速计数器由4片74LS191串联组成16位计数器。计数脉冲的输入由一个触发器控制,触发器设计成自锁式,即由被测的周期信号A\'锁定一个完整的信号周期后,封锁计数脉冲的输入 ,不再响应后一个周期,待单片机处理完该周期内的数据后,由单片机先对计数器清零,然后解除触发器的封锁,系统才继续采集下一个信号周期的数据。周期计数锁存器(记N值)由74LS373(U8),(U7)组成,相差计数锁存器(记n值)由74LS373(U6),(U5)组成,其中(U5),(U7)锁存低8位数据,(U6) ,(U8)锁存高8位数据,当A\'信号的上沿来临时,由触发器打开U10门,开始计数。当B\' 信号的上沿来临时,锁存U6,U5(获得n值)。当A\'信号的上沿再次来临时,锁存U8,U7(获得N值)。并封锁触发器。通知单片机依次读入U5,U6,U7,U8的锁存值进行计算。高频振荡源采用高精度晶体振荡器,以提供高精度的计数脉冲。 [page] 考虑到硬件资源的充分利用,硬件设计时将某些部件设计成公用,如相差计数和周期计数共用一个计数器。由于0≤n≤ N,故相差信号(B\'信号的上沿)必定会在一个信号周期内的某个时刻出现,可利用这一信号将相差计数值n从计数器上浮获而锁入相差计数锁存器。当一个完整的周期结束时(A\'信号的上沿再次出现),锁存周期计数值N(见图3)。 五.计数脉冲频率的设置与实现
如前面所述16位计数器的计数范围是0--65535。根据(1)式要获得足够的细度,在某一信号频率下计数范围应在[3600,65535]区间内。由于计数器的计数值与被测信号的频率成反比,与计数脉冲的频率成正比。即在某一固定的计数脉冲频率下,被测信号的频率越低(周期越长)则一个周期内所获得的计数脉冲的个数越多。反之越少。或在某一个固定的被测信号的频率下,计数脉冲的频率越多,则在一个信号周期内所获得的计数脉冲的个数就越多,反之就越少。若计数值为C,被测信号频率为fx,计数脉冲频率为fa,则有下式:
C= fa/fx (3)
由于是16位的计数器,C值应满足3600 < C < 65525在某一个fa下,被测信号频率fx就会被限制在一定的范围内。即
fa/65536 < fx < fa/3600
也就是fx的下限为 fa÷65535 Hz,上限是fa÷3600 Hz,从(4)式中可以看出某个fa,所对应fx其范围是有限的。要做到fx有一个较宽的频范围,单靠16位的计数器,用一个fa是不行的。故笔者在设计时,将计数脉冲源设计成有多档振荡频率的信号源,兼顾被测信号的低频区和高频区。由单片机根据读取的N值和计数器的溢出信号,通过电子开关U11,自动切换。当读取的N值太小时,切换到较高的计数频率,当计数器有溢出时,就切换到较低的计数频率。为了简单说明笔者将fa设为2M和10M两档。根据(4)式分析入下:
当fa=2M时: fx的下限为 2×106÷65535=30.5Hz
fx的上限为 2×106÷3600=555.6Hz
当fa=10M时:fx的下限为 10×106÷65535=152.6Hz
fx的上限为 10×106÷3600=2777.8Hz
从以上分析来看,从152.6Hz到 555.6Hz,两档计数频率应对这一频率区的被测信号是重叠的,即在该频率区内,这两档计数频率都满足(4)式,这个重叠区的存在是必要的,它保证了自动切换计数脉冲频率的操作不发生振荡。但重叠区不必这么大,在实际应用中,为了保证测量精度可通过程序将重叠区限制在200Hz至250Hz 这个范围内。
关键字:填充计数式 相位测量 计数脉冲
引用地址:填充计数式相位测量的分析与实现
要获得两个同频信号间的相位值有多种实现方法。较为常用的一种是采用过零鉴相法,这种方法的基本要点是:将两个同频被测信号整形为两个方波信号,其前后沿分别对应于被测信号的正向过零点和负向过零点,然后测量出这两个同频方波的前沿(或后沿)之间的时间差比例,即为这两个被测信号之间的相位差,简称相差。
而要获得这个时间差比例,通常采用填充计数法,其基本原理见图1,设A,B为两路同频待测的正弦波信号,两信号经整形后形成A\'和B\'两路方波,若A\'的两个前沿之间(一个信号周期)的计数脉冲的个数为N个,A\'与B\'的两个相邻前沿之间的计数脉冲的个数为n个,则A,B两路之间的相位差为:
n/N * 360° (1) 二.计数脉冲频率与相位计算精度的关系
从上述方法测量相位的原理来看,要获得两个同频信号间的相位差,只要获得两个计数值N和n,通过(1)式计算即可。那么相位计算的分辩率就为3600/N ,也就是表示相差的最小单位。当被测信号的频率一定时,计数脉冲的频率就决定了相位测量的精度。如在一个信号周期内所获得的计数脉冲的个数为360个,则获得相差的最小单位是3600/360=10(可看作是每个脉冲代表10)。若在一个信号周期内所获得的计数脉冲的个数为3600个,则获得相差的最小单位就为3600/3600=0.10(可看作是每个脉冲代表0.10)。由此可见在一个信号周期内所获得的计数脉冲的个数越多,则获得相位差的最小单位也就越小,精度也就越高。要达到0.10以上的精度,则计数脉冲的频率必须是被测信号频率的3600倍以上。设被测信号频率为fx,计数脉冲频率为fa ,则设计时应满足:
fa>3600×fx (2)
三.利用MCS-51系列单片机片内资源实现相位测量的分析
由于需要进行计算,目前市场上流行的相位表,多数为单纯利用MSC─51系列机片内资源实现计数与计算。在典型的MSC-51系列单机片内,有2个16位的定时/计数器(CTC0,CTC1),5个中断源,时钟频率为3.8-12MHz ,这些都为实现相位差的测量与计算提供了一定的硬件基础。可利用片内2个定时/计数器,(CTC0,CTC1)分别记录前面所述的N和n的计数值。将CTC0,CTC1设置为定时方式(计片内机器周期数)。两个外部中断INT0,INT1,设置成下沿触发方式,并将上述A\',B\'两个方波信号接至INT0,INT1的输入端。利用INT0和INT1的中断服务程序来控制CTC0,CTC1的启动与停止,以此来获取N和n的计数值。
由于MCS-51系列单片机的最高工作频率为12MHZ,故CTC0,CTC1的最高计数频率为1MHz。16位字长的CTC0和CTC1计数范围是0ー65535。对于1MHz的计数频率而言,输入信号的频率响应范围的下限是:在一个信号周期内CTC的计数从零计到最大65535,而每一计数脉冲的周期是1μS(1MHz的计数脉冲)。故CTC从零计到最大值所需时间是:65535 * 1μS=65535μS,因而,输入信号的最低频率约为1/0.065535=15.26Hz。频率响应的上限是:虽然在一个信号周期内CTC的计数值大于零即可计算,但为了使计算结果具有足够的精度(至少0.10),故记录N值的CTC在一个信号周期内的计数值必须大于3600(因3600/3600=0.10)而CTC从零计数到3600所需时间为3600*1μS=3600μS。由此可得输入信号的最高频率约为1/0.0036=277.78Hz。
在最高的输入信号频率下,每一个计数脉冲即代表0.10机器每多计或少计一个脉冲就意味着带来一个0.10的误差。另外由于CTC的启停是由中断服务程序来控制的,那么CTC启停时刻不能绝对代表信号的下沿时刻,故误差是不可避免。当信号频率较低时,其误差尚可忽略。当信号频率越接近最高响应频率,其单片机所带来的误差就越不可忽略。以这样的方式构成的相位计,实际上的最高响应频率仅在100Hz左右。
四.高频计数的实现
从以上分析得知,若仅利用单片机的资源来实现相差的测量,是无法以高精度测得较高频率信号的相位差的。其关键所在是计数频率已无法再提高。鉴于这点笔者考虑到不用单片机内部的CTC计数,而是采用廉价的74系列芯片搭成高速计数,锁存电路。当计数值锁定这后,再读入单片机进行计算和显示。
具体实现的电路图如图2所示。高速计数器由4片74LS191串联组成16位计数器。计数脉冲的输入由一个触发器控制,触发器设计成自锁式,即由被测的周期信号A\'锁定一个完整的信号周期后,封锁计数脉冲的输入 ,不再响应后一个周期,待单片机处理完该周期内的数据后,由单片机先对计数器清零,然后解除触发器的封锁,系统才继续采集下一个信号周期的数据。周期计数锁存器(记N值)由74LS373(U8),(U7)组成,相差计数锁存器(记n值)由74LS373(U6),(U5)组成,其中(U5),(U7)锁存低8位数据,(U6) ,(U8)锁存高8位数据,当A\'信号的上沿来临时,由触发器打开U10门,开始计数。当B\' 信号的上沿来临时,锁存U6,U5(获得n值)。当A\'信号的上沿再次来临时,锁存U8,U7(获得N值)。并封锁触发器。通知单片机依次读入U5,U6,U7,U8的锁存值进行计算。高频振荡源采用高精度晶体振荡器,以提供高精度的计数脉冲。 [page] 考虑到硬件资源的充分利用,硬件设计时将某些部件设计成公用,如相差计数和周期计数共用一个计数器。由于0≤n≤ N,故相差信号(B\'信号的上沿)必定会在一个信号周期内的某个时刻出现,可利用这一信号将相差计数值n从计数器上浮获而锁入相差计数锁存器。当一个完整的周期结束时(A\'信号的上沿再次出现),锁存周期计数值N(见图3)。 五.计数脉冲频率的设置与实现
如前面所述16位计数器的计数范围是0--65535。根据(1)式要获得足够的细度,在某一信号频率下计数范围应在[3600,65535]区间内。由于计数器的计数值与被测信号的频率成反比,与计数脉冲的频率成正比。即在某一固定的计数脉冲频率下,被测信号的频率越低(周期越长)则一个周期内所获得的计数脉冲的个数越多。反之越少。或在某一个固定的被测信号的频率下,计数脉冲的频率越多,则在一个信号周期内所获得的计数脉冲的个数就越多,反之就越少。若计数值为C,被测信号频率为fx,计数脉冲频率为fa,则有下式:
C= fa/fx (3)
由于是16位的计数器,C值应满足3600 < C < 65525在某一个fa下,被测信号频率fx就会被限制在一定的范围内。即
fa/65536 < fx < fa/3600
也就是fx的下限为 fa÷65535 Hz,上限是fa÷3600 Hz,从(4)式中可以看出某个fa,所对应fx其范围是有限的。要做到fx有一个较宽的频范围,单靠16位的计数器,用一个fa是不行的。故笔者在设计时,将计数脉冲源设计成有多档振荡频率的信号源,兼顾被测信号的低频区和高频区。由单片机根据读取的N值和计数器的溢出信号,通过电子开关U11,自动切换。当读取的N值太小时,切换到较高的计数频率,当计数器有溢出时,就切换到较低的计数频率。为了简单说明笔者将fa设为2M和10M两档。根据(4)式分析入下:
当fa=2M时: fx的下限为 2×106÷65535=30.5Hz
fx的上限为 2×106÷3600=555.6Hz
当fa=10M时:fx的下限为 10×106÷65535=152.6Hz
fx的上限为 10×106÷3600=2777.8Hz
从以上分析来看,从152.6Hz到 555.6Hz,两档计数频率应对这一频率区的被测信号是重叠的,即在该频率区内,这两档计数频率都满足(4)式,这个重叠区的存在是必要的,它保证了自动切换计数脉冲频率的操作不发生振荡。但重叠区不必这么大,在实际应用中,为了保证测量精度可通过程序将重叠区限制在200Hz至250Hz 这个范围内。
上一篇:物位计测量技术难点剖析
下一篇:一种多路信号幅值测量系统的设计
推荐阅读最新更新时间:2024-03-30 22:31
基于π网络零相位法实现频率测量与电容测量系统的设计
1. 引言 石英晶体谐振器(以下简称为石英晶体)作为一种性能优良的频率基准和时钟源在电子领域有着广泛应用。石英晶体的中间测试在石英晶体的生产中是处于微调和封装之间的工序,要求对石英晶体的基本电参数进行测量,以保证产品最终质量。在石英晶体的中间测试中,需要测量串联谐振频率、串联谐振电阻、负载谐振频率、负载谐振电阻、静电容、动电容、频率牵引灵敏度和DLD等参数。其中,静电容C0主要由石英晶体两端所镀银膜决定,表征了石英晶体的静态特性,与石英晶体的串联谐振频率和负载谐振频率等应用指标密切相关。根据静电容和其它参数的关系,还可以计算出负载谐振电阻、动电容、频率牵引灵敏度和DLD等参数的值,这在实际测量中是经常采用的方法。静电容的测量是石英
[测试测量]
怎样设置信号源/矢量信号分析仪测量 I 和 Q 增益和相位?
在使用信号源/矢量信号分析仪时,必须有两个基带信道输入。把 I 或 Q 信号连接到信道 1 上,把另一个信号连接到信道 2 上。确保信号源处于矢量模式下,或已经打开89600的 (非标量)应用程序。 在89600上,选择:Input Channels 2 channels. 设置4个网格(: Display 4 grids stack; 89600: Display Layout Stacked 4). 对轨迹A,选择Measurement Data spectrum ch1 和 Data Format log magnitude。 对轨迹B,选择Measurement Data spectrum ch2 和 D
[测试测量]
基于MSP430F149的RLC、频率及相位差测量仪的设计
0 引言 目前,要在实验室中完成对RLC、频率及相位差的测量,实际需要用几个仪表,如RLC表、频率计和相位仪,这给实际使用带来诸多不便。而且现在常用的仪表一般还是传统的模拟式仪表,漂移大,程控性能不好,而有些仪表功能过于单一,不能满足实际需求。为此,本文考虑到实际的科研实验需要,给出了一种可同时测量RLC、频率及相位差的测量仪的设计方法。 1 系统组成与硬件电路设计 1.1 系统组成 该仪器包括信号产生与接收模块、信号的放大整形滤波处理模块、单片机中央处理器、显示模块LCD12864和外部按键控制模块等几个部分,其系统组成结构框图如图1所示。
本系统以单片机MSP430F149为处理器,主要用于整个系
[测试测量]
用PIC16F87X单片机实现高分辨率频率计的一种方法
1 引言 随着电子技术的迅速发展,以单片机为控制核心的控制器件,已经全面渗透到测试仪器和计量检定的各个方面。同时,频率计作为一种常用工具,在工程技术和无线电测量、计量等领域的应用十分广泛。本文介绍了一种以PIC16F87X系列单片机为控制器的高分辨率频率计的实现方法。 该方法设计的频率计主要用来测量脉冲频率。它采用LCD图形液晶显示,清晰度高,可视范围广,可外接晶体频率源,具有测量速度快、分辨率高的优点。 2 设计原理 PIC16F877A单片机内部集成有捕捉/比较/脉宽调制PWM (CCP)模块。当CCP工作在捕捉(capture)方式时,可捕捉外部输入脉冲的上升沿或下降沿,并产生相应的中断。 PIC16F877A单片
[单片机]
相位式光纤测量电路系统的设计与实现
引言 光电测距仪和全站型电子速测仪(以下简称全站仪)作为一种在多领域广泛应用的计量仪器,为保证精度和可靠性,必须对误差进行定期检定和校正。目前这种检定多在室外标准基线上采用多段基线组合比较法进行。但这种方法成本大,维护困难,且易受环境因素的影响,因而国内外一直致力于建立室内检定装置,以取代室外基线,完成测距仪的检定和校正。 光纤作为一种光传输介质,以其良好的导光性和伸展性,成为激光测距室内校正的理想选择,已有文献对其可行性进行了分析。基于此,我们研制开发了基于光纤的激光测距校正系统。在该校正系统中,利用光纤模拟室外基线,使用全站仪对光纤光程进行测量,其测量结果和光纤实际光程进行比较,从而达到检定和校正的目的。 为了得到
[测试测量]
低频数字相位(频率)测量的CPLD实现
在电子测量技术中,测频测相是最基本的测量之一。相位测量仪是电子领域的常用仪器,当前测频测相主要是运用等精度测频、PLL锁相环测相的方法。研究发现,等精度测频法具有在整个测频范围内保持恒定的高精度的特点,但是该原理不能用于测量相位。PLL锁相环测相可以实现等精度测相,但电路调试较复杂。因此,选择直接测相法作为低频测相仪的测试方法 。 设计的低频测相仪,满足以下的技术指标:a .频率20-20KHz;b .输入阻抗≥100KΩ;c.相位测量绝对误差≤1度; d.具有频率测量和数字显示功能;e.显示相位读数为0度--359度。 1系统工作原理 图1 测频测相系统原理框图 Figure
[测试测量]
STM32f103C8T6定时器用于外部脉冲计数
使用STM32f103C8T6作主控制器控制小车,小车的转速由两路光电编码盘输入(左右各一路).利用外部时钟触发模式(TIM——ETRClockMode2Config)计数转数。 第一步,设置GPIO GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_12;//外部脉冲输入端口 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; // GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //50M时钟速度
[单片机]
小广播
热门活动
换一批
更多
最新测试测量文章
更多精选电路图
更多热门文章
更多每日新闻
- 睿瀚医疗万斌:“脑机接口+AI+机器人”是康复赛道的未来
- 希润医疗孟铭强:手功能软体机器人,让脑卒中患者重获新生
- 柔灵科技陈涵:将小型、柔性的脑机接口睡眠设备,做到千家万户
- 微灵医疗李骁健:脑机接口技术正在开启意识与AI融合的新纪元
- USB Type-C® 和 USB Power Delivery:专为扩展功率范围和电池供电型系统而设计
- 景昱医疗耿东:脑机接口DBS治疗技术已实现国产替代
- 首都医科大学王长明:针对癫痫的数字疗法已进入使用阶段
- 非常见问题解答第223期:如何在没有软启动方程的情况下测量和确定软启动时序?
- 兆易创新GD25/55全系列车规级SPI NOR Flash荣获ISO 26262 ASIL D功能安全认证证书
- 新型IsoVu™ 隔离电流探头:为电流测量带来全新维度
更多往期活动
11月22日历史上的今天
厂商技术中心