📄 | README.md |
solarmonk
energy powered by the sun
safely store energy in a battery
safely use excess load energy to power 5v devices
have fun!
TODO
- ☑ get solar panel
- ☑ get battery
- ☐ 12v -> 5v converter
- ☐ read battery charge
- ☐ display battery charge
- ☐ control discharge
components
solar panel (with built-in charge controller)
120w maxray folding solar panel
Max Power: 120W
Maximum Power Tolerance: ±3%
Open-Circuit Voltage/Voc(V): 17.5V
Short-Circuit Current/lsc(A): 9.42
Max Power Voltage/Vmp(V): 14.0
Max Power Current/lmp(A): 8.57
Power Spectications at STC: 1000w/㎡,AM1.5,CELL25℃
Max System Voltage(V): 1000
Max Over Current Protecting Rating(A): 15
Weight: 12.6kg
battery
12v - 85Ah deep cycle flooded lead acid battery
voltage must not drop below 11v
fully charged is 12.6v to 12.8v
State of Charge (approx.) | 12 Volt Battery | Volts per Cell 100% | 12.70 | 2.12 90% | 12.50 | 2.08 80% | 12.42 | 2.07 70% | 12.32 | 2.05 60% | 12.20 | 2.03 50% | 12.06 | 2.01 40% | 11.90 | 1.98 30% | 11.75 | 1.96 20% | 11.58 | 1.93 10% | 11.31 | 1.89 0 | 10.50 | 1.75
load (discharge) controller
- BTE14-04 betamcu.cn Arduino Uno R3 Compatible
- "DF Robot" LCD Keypad Shield
- R1 resistor = 10k ohms
- R2 resistor = 820 ohms
- ceramic capacitor = 100nF
- schottkey diode
12v 5v 5v
| | |
R1 diode |-------|
| | | |
+-----+----|Ain |
| | | |
R2 cap |arduino|
| | |-------|
GND GND
TODO
12v to 5v step-down (buck) converter
step down dc-dc 9A converter (constant volts or constant amps), 5~40v input & 1.5~35v out
calculations
resistive divider
to measure the battery voltage on the microcontroller, we divide the voltage using resistors:
given
- adc input impedence = 10k ohms
- adc reference voltage = 1.1V
- max battery voltage = 14V + wiggle room = ~15V
so R1 = adc input impedence = 10k ohms
(want to be as high as possible to reduce current)
calculate
R2 = R1 * (1 / ((Vin / Vout) - 1))
= Rinput_impedence * (1 / ((Vmax_bat / Vref) - 1))
= 10e3 * (1 / ((15 / 1.1) - 1))
= 791.37
~= 820 ohms
smoothing capacitor
TODO
to stabilize the measurements, we use a capacitor to smooth the values:
(1 / (PI * R1 * C)) = ~100 hz or ~10hz (?)
C = 100nF
Built with git-ssb-web