Campbell Scientific CR1000KD CR800 and CR850 Measurement and Control Systems - Page 304
Table 65., Example. E for a 10 Hz input signal, TimerIO, PulseCount, Average, AvgRun, AvgSpa, Table
View all Campbell Scientific CR1000KD manuals
Add to My Manuals
Save this manual to your list of manuals |
Page 304 highlights
Section 8. Operation 304 R = Timing resolution of the TimerIO() measurement = P = Period of input signal (seconds). For example, P = 1 / 1000 Hz = 0.001 s E = Number of rising edges per scan or 1, whichever is greater. Table 65. Example. E for a 10 Hz input signal Scan Rising Edge / Scan E 5.0 50 50 0.5 5 5 0.05 0.5 1 TimerIO() instruction measures frequencies of ≤ 1 kHz with higher frequency resolution over short (sub-second) intervals. In contrast, sub-second frequency measurement with PulseCount() produce measurements of lower resolution. Consider a 1-kHz input. Table Frequency Resolution Comparison (p. 304) lists frequency resolution to be expected for a 1-kHz signal measured by TimerIO() and PulseCount() at 0.5-s and 5.0-s scan intervals. Increasing a measurement interval from 1 second to 10 seconds, either by increasing the scan interval (when using PulseCount()) or by averaging (when using PulseCount() or TimerIO()), improves the resulting frequency resolution from 1 Hz to 0.1 Hz. Averaging can be accomplished by the Average(), AvgRun(), and AvgSpa() instructions. Also, PulseCount() has the option of entering a number greater than 1 in the POption parameter. Doing so enters an averaging interval in milliseconds for a direct running average computation. However, use caution when averaging, Averaging of any measurement reduces the certainty that the result truly represents a real aspect of the phenomenon being measured. Table 66. Frequency Resolution Comparison 0.5 s Scan PulseCount(), POption=1 FR = 2 Hz TimerIO(), Function=2 FR = 0.0011 Hz 5.0 s Scan FR = 0.2 Hz FR = 0.00011 Hz Q - When more than one pulse is in a scan interval, what does TimerIO() return when configured to return a frequency? Does it average the measured periods and compute the frequency from that (f = 1/T)? For example: Scan(50,mSec,10,0) TimerIO(WindSpd(),11111111,00022000,60,Sec) A - In the background, a 32-bit timer counter is saved each time the signal transitions as programmed (rising or falling). This counter is running at a fixed high frequency. A count is also incremented for each transition. When the TimerIO() instruction executes, it uses the difference of time between the edge prior to the last execution and the edge prior to this execution as the time difference. The number of transitions that occur between these two times divided by the time difference gives the calculated frequency. For multiple edges occurring between execution intervals, this calculation does assume that the