I have the HMP155 temperature humidity sensor connected to a CR300 datalogger. The temperature readings can fluctuate cyclically, giving non-credible air temperatures when compared with a number of other sensors in my Stevenson Screen. Could anybody shed any light on this issue - datalogger program below (thanks):
'Declare Variables and Units
Dim AirTC_2
Public BattV
Public PTemp_C
Public WS_knot
Public WindDir
Public AirTC
Public RH
Public TdC
'Public SW12State As Boolean
Units BattV=Volts
Units WS_knot=knots
Units WindDir=degrees
Units AirTC=Deg C
Units RH=%
Units TdC=Deg C
'Define Data Tables
DataTable(Table1,True,-1)
DataInterval(0,5,Min,10)
Average(1,AirTC,FP2,False)
Average(1,TdC,FP2,False)
Average(1,RH,FP2,False)
EndTable
DataTable(Table2,True,-1)
DataInterval(0,10,Min,10)
Average(1,BattV,FP2,False)
WindVector(1,WS_knot,WindDir,FP2,False,0,0,1)
FieldNames("WS_knot_S_WVT,WindDir_D1_WVT")
EndTable
DataTable(Table3,True,-1)
DataInterval(0,1440,Min,10)
Maximum(1,WS_knot,FP2,False,False)
Maximum(1,AirTC,FP2,False,False)
Minimum(1,AirTC,FP2,False,False)
EndTable
DataTable(Table4,True,-1)
DataInterval(0,1440,Min,10)
Minimum(1,BattV,FP2,False,False)
EndTable
'Variables for GPRS modem reset function
Const GPRS_ModemBaudRate = 115200
Const GPRS_ModemPort = ComRS232
Const GPRS_CR = CHR(13)
Const GPRS_TimerID = 0
'Main Program
BeginProg
'Activate GPRS Modem on power up
PortSet(SW12V,1)
'Main Scan
Scan(10,Sec,1,0)
'Default CR300 Datalogger Battery Voltage measurement 'BattV'
Battery(BattV)
'Default CR300 Datalogger Wiring Panel Temperature measurement 'PTemp_C'
PanelTemp(PTemp_C,50)
'03002 Wind Speed & Direction Sensor (CSL) measurements 'WS_ms' and 'WindDir'
PulseCount(WS_knot,1,P_LL,1,1,1.4562,0.4)
If WS_knot<0.41 Then WS_knot=0
BrHalf(WindDir,1,mV2500,4,Vx2,1,2500,False,20000,50,352,0)
If WindDir>=360 OR WindDir<0 Then WindDir=0
'HMP155 (constant power) Temperature & Relative Humidity Sensor measurements 'AirTC' and 'RH'
VoltSe(AirTC,1,mV2500,1,False,0,50,0.14,-80)
VoltSe(RH,1,mV2500,2,False,0,50,0.1,0)
If RH>100 AND RH<108 Then RH=100
'Dew Point calculation 'TdC'
AirTC_2=AirTC
DewPoint(TdC,AirTC_2,RH)
If TdC>AirTC_2 OR TdC=NAN Then TdC=AirTC_2
'GPRS network shutdown procedure and GPRS Modem power down
If IfTime (10,60,Min) Then
PPPClose
Delay(1,2,Sec)
SerialOpen(GPRS_ModemPort,GPRS_ModemBaudRate,0,20000,1000)
Delay(1,2,Sec) 'Delay needed for the COM110 to let it respond to further commands
SerialOut(GPRS_ModemPort,"AT+CFUN=0" & GPRS_CR,"OK",1,1000)
SerialClose(GPRS_ModemPort) 'Release the serial port connection.
'Turn off the modem (where necessary)
PortSet(SW12V,0)
EndIf
'Turn on the GPRS Modem at 50 min past each each hour
If IfTime (55,60,Min) Then
PortSet(SW12V,1)
Delay (1,20,Sec)
PPPOpen
EndIf
'Call Data Tables and Store Data
CallTable Table1
CallTable Table2
CallTable Table3
CallTable Table4
NextScan
EndProg
I would first check the wiring to make sure the RH and air temperature wires didn't get swapped. It is a simple mistake I have caught myself do before.
If you wrap your hand around the end of the sensor, the RH will rise much quicker than temperature. RH will quickly get above 80% due to moisture in your hand. A damp paper towel works as well.