数据采集器如何以最大扫描频率运行
时间:2022-04-02 阅读:1186
数据采集器的说明书中提到了数采的单次扫描时间,如CR6可选的扫描时间是1ms到1day。最慢1天的扫描速度,每天扫描一次,这个都可以做到。现在的问题是如何让数采以1ms的时间扫描,以获得最大的扫描频率呢?(因为数字传感器涉及到传感器响应指令、数据传输、校验等因素,以下只以CR6模拟测量说明。)
首先大家需要清楚,数采每次扫描传感器,进行测量的时间都花费在哪里?
1.ADC,模数转换的时间。对采集到的模拟电信号进行数字转换,通过与标准曲线做比对,得到当前测量电压。这个时间由AD芯片位数和CPU处理速度决定,是固定时间,无法更改。
2.切换通道的时间。对CR6来说,内部只有一个ADC,多通道测量时,根据程序,把需要测量的通道切换到与AD芯片相通,完成测量。通道切换的时间固定,无法更改,但可以通过减少测量通道,来缩短扫描时间。
3.多个参数测量的时间和程序执行的时间。如上所述,多次测量需要多次用到AD芯片。多条程序执行会花费更多的时间。
4.差分测量涉及到双通道测量和反向测量,所以单端测量要比差分测量花费时间更少。
5.单次测量的时间。
综上所述,要想获得最大的扫描频率,就需要单端测量,且只进行一次测量。但当你在CRBasic Editor中写一个只进行单端测量的程序,把扫描时间设置为1ms时,编译仍然会报错,程序无法执行。
这是什么原因呢?我们只测量一个通道,且只进行了一次测量,程序也写到最短了,为什么扫描时间还是无法达到1ms?这就是上面提到的第五点,单次测量的时间。下面是单端测量的指令:
VoltSE ( Dest, Reps, Range, SEChan, MeasOff, SettlingTime, fN1, Mult, Offset )
如果您仔细看这条指令的说明,有三个参数还会影响单次测量的时间。
MeasOff (Measure Offset Voltage) :测量补偿电压,不测量减少时间。
Settling Time :稳定时间,值越小,测量时间花费越少,最小能设置到20微妙。
fN1 :第一陷波频率,值越大,测量时间花费越少,最大能设置到93.75KHz 。
如上对参数进行设置,更改后,程序编译没有报错,虽然有个警告,但不影响程序执行。到此,已解决文章开头的问题,CR6以1ms扫描,以最大扫描频率1000Hz进行测量。
以上只提出缩短单次扫描时间,提高测量频率的方法。但最大的测量频率是以牺牲精度和抗干扰能力为前提的。大家在实际使用中还要根据自己系统要求和运行环境,恰当选择扫描时间。