Campbell Scientific PS200/CH200 12 V Charging Regulators User Manual
Page 94

Appendix A. Advanced Programming Techniques
Public CH200_M0(9)
'Array to hold all the data coming from the
PS200/CH200
'Alias names for array elements.
Alias CH200_M0(1)=VBatt
'Battery voltage: VDC
Alias CH200_M0(2)=IBatt
'Current going into, or out of, the battery: Amps
Alias CH200_M0(3)=ILoad
'Current going to the load: Amps
Alias CH200_M0(4)=V_in_chg
'Voltage coming into the charger: VDC
Alias CH200_M0(5)=I_in_chg
'Current coming into the charger: Amps
Alias CH200_M0(6)=Temp_C
'Charger temperature: Celsius
Alias CH200_M0(7)=Chg_State
'Charging state: Cycle, Float, Current Limited, or None
Alias CH200_M0(8)=Chg_Source
'Charging source: None, AC, or Solar
Alias CH200_M0(9)=Ck_Batt
'Check battery error: 0=normal, 1=check battery
Dim ChargeStateArr(6) As String
Dim ChargeSourceArr(3) As String
Dim CheckBatteryArr(2) As String
Public ChargeState As String
Public ChargeSource As String
Public CheckBattery As String
Public CH200_MX(4)
'Array to hold extended data from the PS200/CH200
'Alias names for array elements.
Alias CH200_MX(1) = BattTargV 'Battery charging target voltage.
Alias CH200_MX(2) = DgtlPotSet 'Digital potentiometer setting.
Alias CH200_MX(3) = BattCap
'Present battery capacity.
Alias CH200_MX(4) = Qloss
'Battery charge deficit.
'Define Data Tables
'Stored hourly data.
DataTable (Hour,1,-1)
DataInterval (0,1,Hr,10)
Minimum (6,CH200_M0(),FP2,0,False)
Maximum (6,CH200_M0(),FP2,False,False)
Minimum (1,PanelTempC(),FP2,0,False)
Maximum (1,PanelTempC(),FP2,False,False)
EndTable
'Stored hourly Amp-hour values and present Qloss value.
DataTable (Amp_hr,True,-1)
DataInterval (0,1,Hr,10)
Totalize (3,Amp_Hour(),FP2,False)
Sample (1,Qloss,FP2)
EndTable
'Stored daily Amp-hour values and present Qloss value.
DataTable (Amp_Day,True,-1)
DataInterval (0,1,Day,10)
Totalize (3,Amp_Hour(),FP2,False)
Sample (1,Qloss,FP2)
EndTable
'Main Program
BeginProg
ChargeStateArr(1) = "Regulator Fault"
ChargeStateArr(2) = "No Charge"
ChargeStateArr(3) = "Current Limited"
ChargeStateArr(4) = "Cycle Charging"
ChargeStateArr(5) = "Float Charging"
ChargeStateArr(6) = "Battery Test"
ChargeSourceArr(1) = "None"
ChargeSourceArr(2) = "Solar"
ChargeSourceArr(3) = "Continuous"
CheckBatteryArr(1) = "Normal"
CheckBatteryArr(2) = "Check Battery"
A-32