Campbell Scientific CNR4 Net Radiometer User Manual
Page 56

Appendix B. CNF4 Heater/Ventilator
 
'CNR4 multipliers 
Public cnr4_mult(4) 
Const pyranometer_up_mult = 1000/pyranometer_up_sensitivity 
'(W/m^2/mV)
Const pyranometer_dn_mult = 1000/pyranometer_dn_sensitivity
'(W/m^2/mV)
Const pyrgeometer_up_mult = 1000/pyrgeometer_up_sensitivity
'(W/m^2/mV)
Const pyrgeometer_dn_mult = 1000/pyrgeometer_dn_sensitivity
'(W/m^2/mV)
DataTable (cnr4_data,True,-1) 
 DataInterval (0,60,Min,10) 
 CardOut (1,-1) 
 Minimum (1,batt_volt,FP2,0,False) 
 Sample (1,logger_temp,FP2) 
 Average (4,cnr4(1),IEEE4,False) 
 Average (1,cnr4_T_C,IEEE4,False) 
 A
nr4_
verage (1,c
T_K,IEEE4,False)
A
ong_
verage (1,l
up_corr,IEEE4,False)
 Average (1,long_dn_corr,IEEE4,False) 
 Average (1,Rs_net,IEEE4,False) 
 Average (1,Rl_net,IEEE4,False) 
 Average (1,albedo,IEEE4,False) 
 Average (1,Rn,IEEE4,False) 
EndTable 
 
DataTable (cnr4_ts,True,-1) 
 DataInterval (0,1,Sec,10) 
 CardOut (1,-1) 
 Sample (4,cnr4(1),IEEE4) 
 Sample (1,cnr4_T_K,IEEE4) 
EndTable 
 
BeginProg 
'Load the multiplier values for the CNR4 
 cnr4_mult(1) = pyranometer_up_mult 
 cnr4_mult(2) = pyranometer_dn_mult 
 cnr4_mult(3) = pyrgeometer_up_mult 
 cnr4_mult(4) = pyrgeometer_dn_mult 
 
 Scan (1,Sec,3,0) 
 PanelTemp (logger_temp,250) 
 Battery (batt_volt) 
 
'CNR4 radiation measurements 
 VoltDiff (cnr4(),4,mV20C,1,True ,0,_60Hz,cnr4_mult(),0) 
 
'CNR4 thermistor measurement 
 BrHalf (Vs_Vx,1,mv5000,16,Vx1,1,2500,True ,0,250,1.0,0) 
 Rs = 1000*(Vs_Vx/(1-Vs_Vx)) 
 cnr4_T_C = 1/(1.0295e-3+2.391e-4*LN(Rs)+1.568e-7*(LN(Rs))^3)-273.15 
 
'Convert CNR4 temperature to Kelvin 
 cnr4_T_K = cnr4_T_C+273.15 
 
'Correct the long-wave radiation values from pyrgeometers 
 long_up_corr = long_up+5.67e-8*cnr4_T_K^4 
 long_dn_corr = long_dn+5.67e-8*cnr4_T_K^4 
 
'Compute short-wave net radiation 
 Rs_net = short_up - short_dn 
 
'Compute long-wave net radiation 
 Rl_net = long_up - long_dn 
 
'Compute albedo 
 albedo = short_dn/short_up 
 
B-10
