'CR1000 Series Datalogger 'Example datalogger program for Apogee Instruments SP-422-SS Pyranometers 'date: April 8, 2020 'program author: John Huber 'For more technical information regarding the SP-422-SS operation as well as default settings and register address lists, please consult the sensor's manual, which can be found online: 'https://www.apogeeinstruments.com/product-manuals/ 'Wiring instructions for this program: 'Sensor White (RS232 TS wire) -> Datalogger C2 (Com1 RX) Port 'Sensor Blue (RS232 RX wire) -> Datalogger C1 (Com1 TX) Port 'Sensor Red (Power wire) -> Datalogger 12V port 'Sensor Green (RS232/RS485 selector wire) -> Datalogger 12V port 'Sensor Black (Ground wire) -> Datalogger Ground port 'If using a datalogger model other than the CR1000, some adjustments to commands will be necessary 'Explanation of Constants and Variables Used in Datalogger Program 'BattV = datalogger battery voltage 'PanelT = datalogger panel temperature 'SWi = incoming global shortwave radiation in W m-2 (watts per square meter) 'Errorcode = Modbus error code value (Check CRBasic help menu for a list of error codes) 'Declare Public Variables Public PTemp, Batt_volt Public SWi Public Errorcode 'Define Data Tables. DataTable (Solar,1,-1) 'Set table size to # of records, or -1 to autoallocate. DataInterval (0,1,Min,10) Minimum (1,Batt_volt,FP2,False,False) Sample (1,PTemp,FP2) Average(1,SWi,IEEE4,False) EndTable 'Main Program BeginProg Scan (1,Sec,0,0) PanelTemp (PTemp,60) Battery (Batt_volt) 'Open modbus serial port in RS232 mode SemaphoreGet(3) SerialOpen(Com1,19200,2,0,256) SerialFlush(Com1) SemaphoreRelease(3) 'Obtain SWi measurement SemaphoreGet(3) ModbusMaster(Errorcode,Com1,19200,1,3,SWi,1,1,2,100,2) SemaphoreRelease(3) CallTable Solar NextScan EndProg