信号采样使用了AI Waveform Scan. vi,它的输入参数包括设备标号(device)、通道号(channel)、采样点数(number of samples)、采样率(sample rate)和输入电压上下限(high/lowlimit);在频率跟踪子VI中,它的采样率设置为硬件最高采样率,100KB/s,采样点数设置为20k。它能够以指定采样率从指定通道(单通道)采集指定点数的数据,并以数组(waveform)的形式返回采样数据,同时返回实际采样时间间隔(actual sample period)。
在测频部分,考虑到谐波成分会使一个电压周期中含有多于2个过零点,所以在频率计算前加入了一个数字巴特沃兹低通滤波器,滤波器的截止频率取125Hz,以滤除可能产生多余零点的频率分量。这部分中最主要的一个子VI是testcycle.vi(周期测量子程序)。souse array是经过数字滤波的一维数组的形式的输入信号,time duration是A/D卡的实际采样时间间隔;over zero point index是输入数组中过零点对应元素的索引值(下标),Cycle是计算所得的周期(单位为s),frequency是被测信号的频率值,是周期的倒数(单位为Hz)。