git ssb

0+

dinoworm 🐛 / solarmonk



Tree:
📄README.md
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

components

solar panel (with built-in charge controller)

120w maxray folding solar panel

battery

12v - 85Ah deep cycle flooded lead acid battery

voltage must not drop below 11v

guide to lead-acid batteries

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

battery charge reader


12v   5v      5v
 |     |       |
R1   diode  |-------|
 |     |    |       |
 +-----+----|Ain    |
 |     |    |       |
R2    cap   |arduino|
 |     |    |-------|
GND   GND

battery discharge controller

to ensure the battery is never over-discharged, we should cut off extra power when the battery reaches a low enough voltage.

TODO

what we need is something like this

given time constraints, i wonder if this works?

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

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