Our full technical support staff does not monitor this forum. If you need assistance from a member of our staff, please submit your question from the Ask a Question page.

### averaging of PulseCount data

Late Jan 16, 2019 07:20 AM

Hi,

our CR300 was programmed to scan a frequency based windspeed transmitter (amongst others) every 300 sec and save a 30 min average as in the .CR300 file below. After checking the data we realized that the values are way too high, but we cannot figure out the exact calculation that the program did to post-correct our values.

Does anyone have insights into what the CR300 exactly does for an average of a 'PulseCount'? I would think that this is where to look for a fix, since it gives us correct values when I scann every 60 sec and writing a 'Sample' of every scan (every 60 sec).

'CR300 Series
Const SCAN_INTERVAL = 300 ' Sec = 5 Minuten

'Output period
Const OUTPUT_INTERVAL = 30 ' data output interval in minutes.
Dim n 'Number of samples in the online covariances.
Units n = samples

'Declare Variables and Units
Public BattV
Public PTemp_C
Public WS_ms
Public WindDir

Units BattV=Volts
Units PTemp_C=Deg C
Units WS_ms=meters/second
Units WindDir=degrees

'Define Data Tables
DataTable(CD_DATA,True,-1)
DataInterval(0,OUTPUT_INTERVAL,Min,10)
Average(1,BattV,FP2,False)
Maximum(1,BattV,FP2,False,False)
Minimum(1,BattV,FP2,False,False)
StdDev(1,BattV,FP2,False)
Average(1,PTemp_C,FP2,False)
Maximum(1,PTemp_C,FP2,False,False)
Minimum(1,PTemp_C,FP2,False,False)
StdDev(1,PTemp_C,FP2,False)
Average(1,WS_ms,FP2,False)
Maximum(1,WS_ms,FP2,False,False)
Minimum(1,WS_ms,FP2,False,False)
StdDev(1,WS_ms,FP2,False)
WindVector(1,WS_ms,WindDir,FP2,False,0,0,0)
FieldNames("WS_kph_S_WVT,WindDir_D1_WVT,WindDir_SD1_WVT")
EndTable

'Main Program
BeginProg
'Main Scan
n=1
Scan(SCAN_INTERVAL,Sec,1,0)
SW12 (1 )
'Default CR300 Datalogger Battery Voltage measurement 'BattV'
Battery(BattV)
'Default CR300 Datalogger Wiring Panel Temperature measurement 'PTemp_C'
PanelTemp(PTemp_C,50)
'03101 Wind Speed Sensor measurement 'WS_ms'
PulseCount(WS_ms,1,C1,2,1,0.4,0.2)
If WS_ms<0.21 Then WS_ms=0
'03301 Wind Direction Sensor measurement 'WindDir'
BrHalf(WindDir,1,mV2500,5,VX1,1,2500,False,20000,50,355,0)
If WindDir>=360 OR WindDir<0 Then WindDir=0
Delay (0,500,msec)
'Call Data Tables and Store Data
CallTable CD_DATA
SW12 (0)
NextScan
EndProg

Many thanks for any help!

Laurenz

JDavis Jan 23, 2019 09:10 AM

The comments in your program indicate the sensor is a 03101. However, the Pulsecount instruction in your program is not configured correctly to read a 03101. A 03101 would only work reading it on the P_LL channel in LLAC mode. If you are using a 03101, 03001 or 03002, you can't use any wind speed data produced by that program.