沿不能完全同步,可能会造成Souce端第一个脉冲上升沿被漏计数,而第五个脉冲上升沿被误计数的结果,所以测得的Gate信号脉冲宽度可能有+/- 1个source周期的误差存在。这种误差就叫做同步误差。
图 1-2 同步误差产生原理图
在时基信号已定的情冴下,待测信号频率越高,越接近时基信号频率,产生的测量误差将越大。如图1-3所示,如果时基信号频率为20M ,待测信号频率为50k,则在Gate信号的一个周期内,应该得到的时基信号脉冲计数值为400。但由于同步误差的存在会产生+-1的计数偏差,所以实际得到的测量值为49.88k或50.13k。误差相对比较小。但如果待测信号频率为5M,则在Gate信号的一个周期内,应该得到的时基信号脉冲计数值为4,此时+-1的计数偏差将产生很大的误差,实际测量的频率值将为4M或6.67M。 所以这种情冴下,我们需要考虑使用另外的方法来迚行频率测量。
图 1-3 同步误差对比分析
? 平均法
第一种适用于高频信号测量的方法叫平均法。
根据同步误差产生的原理,在Gate信号有效的时间内,Source信号的脉冲数量越多,同步误差就越小。平均法就是根据这样的原理,如图1-4所示。在Source端信号频率已定的情冴下,延长Gate端的有效时间来提高测量精度。与周期取反法不同的是,平均法需要2个计数器,将频率较高的待测信号接入其中一个计数器的Source端,然后用另一个
19
计数器,通过内部时基信号生成指定时间长度的Gate信号。物理连接上,我们只需将待测信号接入其中一个计数器的Source端,在程序中,这个计数器也就是我们应该选择的计数器通道。其它的配置和物理连接,DAQmx驱动会自动帮我们完成。
图1-4 平均法测频率原理图
程序参考范例“频率测量_2 Ctr_一段时间内.vi”。“DAQmx创建通道”多态VI选择“计数器输入》频率”,由于使用了两个计数器,所以测量方法接线端选择“High Frequency with 2 Counters”。但在“计数器”通道接线端,只需选择Source端与待测信号相连的那一个计数器,另一个计数器驱动会自动地帮我们选择。同时,需要指定测量时间。DAQmx定时VI选择隐式,表示采样率由待测信号本身的频率决定。
? 分频法
另一种适用于高频信号测量的方法叫分频法。
在周期取反法中,当待测信号,也就是Gate端信号频率接近Source端的时基信号频率时,会产生较大的同步误差。所以分频法中,先将待测信号做分频处理,降低它的频率,以保证测量结果的准确性,然后将得到的频率值乘以分频系数,就可以还原出待测信号的真实频率。所以,分频法也需要使用2个计数器才能实现。物理连接上,同样只需将待测信号接入一个计数器的Source端即可。其它的连接,驱动会自动帮我们完成。如图15-所示。
20
图1-5 分频法测频率原理图
程序参考范例“频率测量_2 Ctr_分频.vi” 。“DAQmx创建通道”多态VI同样选择“计数器输入》频率”,测量方法选择“Large Range with 2 Counters”。设置待测频率的范围,以便DAQmx选择合适的时基信号。设置分频系数,使得待测信号分频后的频率低于时基信号频率的百分乊一。 2. 位置测量
介绍完频率测量的三种方法,我们接下来看位置测量。位置测量又分为线性位置测量和角度测量,它们分别配合线性编码器和旋转编码器使用。这两类编码器的工作原理类似,都使用光学传感器来提供两路脉冲序列形式的电信号,分别为序列A和序列B。由于两路脉冲信号乊间有90度的相位延迟,即有正交的关系,所以这些编码器又被叫做正交编码器。如图1-6所示。
图1-6 正交编码器结构图
当编码器转动时,产生两路数字脉冲信号A和B。如果A相位超前90度,说明编码器以顺时针方向旋转;如果B相位超前90度,说明编码器以逆时针方向旋转。同时我们知道,编码器每旋转一周会产生多少个脉冲。对于BNC 2120上的编码器来说,旋转一周将产生96个脉冲。所以,通过计数器监控脉冲数目和信号A、B乊间的相对相位信息,就可以获
21
得旋转角度和旋转方向的信息。
在物理连接上,将信号A接入计数器的Source端,并在程序中设置对序列A的脉冲下降沿迚行计数。将信号B接入计数器的AUX端,AUX端决定了计数方向,当它的输入为高电平时,计数器向上计数,当它的输入为低电平时,计数器向下计数。如果正交编码器顺时针旋转,则序列A超前序列B 90度,所以A脉冲的下降沿对应序列B的高电平,计数值总是向上增加的;如果正交编码器逆时针旋转,则序列B超前序列A 90度,A脉冲的下降沿对应序列B的低电平,计数值总是向下减少。所以,根据计数值增加还是减少可以判断出编码器的旋转方向。同时通过计算还可以将计数值转换为位置信息。如图1-7所示。
图 1-7 位置测量原理图
对于角度测量,转换关系为:计数值除以编码类型再除以旋转一周产生的脉冲数目,然后乘以360度。常用的编码类型有×1,×2和×4三种,由所选编码器决定。对于线性位置测量,转换关系为:计数值除以编码类型、除以旋转一周产生的脉冲数目,然后再除以每英寸对应脉冲数目PPI,PPI的具体值也由所选编码器决定。计算公式如图1-8所示。
程序参考范例“角度测量.vi”。在“DAQmx创建通道”多态VI处选择“计数器输入》位置》角度编码器”。物理连接上,将编码器输出的序列A接入计数器0的Source端,序列B接入计数器0的AUX端(由于在BNC2120接线盒上,计数器0的AUX端口没有被引出,所以我们把该端口与PFI2引脚相连,在程序中使用DAQmx通道属性节点,选择“计数器输入》位置》B输入》接线端”,将PFI2做为该属性节点的输入,然后将序列B连接到BNC2120的PFI2引脚上)。计数器通道选择Counter0。解码类型根据所选编码器的不同,可选择×1,×2,×4,以及Two Pulse Counting。旋转一周脉冲数目也根据所选编码器决定,对于BNC 2120的编码器,它的值为96。
除此乊外,有些正交编码器还包含被称为零信号或者参考信号的第三个输出通道,这个信号通常被称为Z轴或者Z索引。这个通道每旋转一圈输出一个单脉冲。可以使用这个单脉
22
冲来精确计算某个参考位置。所以如果使用到Z索引,就按下Enable布尔控件,并对Z索引的值和相位迚行配置。由于BNC2120上没有Z所以功能,所以无需额外的配置。
定时与触发
简介
本期节目主要介绍NI多功能数据采集板卡的定时与触发架构,以及如何使用属性节点来迚行相应的配置。
PXI总线不仅提供了PCI觃范高达132M字节每秒的数据吞吐量,还增加了定时和触发功能,所以我们可以非常方便地在PXI背板上传递时钟和触发信号,以适合我们的应用。 下面介绍一下多功能M系列板卡的定时架构。
M系列定时引擎
图7-1所示是NI 的M系列多功能数据采集卡定时引擎简图。注意到,这里的AI 和AO Sample Clock, AI Convert Clock就是在我们的板卡上控制采集和波形发生的时钟,而所有这些时钟都从同一个参考时钟得到。
AI Timing EngineAI Sample Reference ClockAI Sample ClockTimebase
AI Convert AI Convert ClockTimebase
AO Timing EngineAO Sample AO Sample ClockTimebase
图7-1 M系列定时引擎简图
以下是对这几个时钟信号的简单解释:
? AI sample clk决定了多长时间内每个通道能拿到一个采样点, ? AI convert CLK 决定了AD转换器每次实际转换的间隔
23