Designing and building a solar system for microcontroller

I didn't want to hijack David's thread, so I decided to start a new one.

I am making a wireless temperature/humidity sensor, which is going to broadcast temperature and humidity data, and since that is outside, and I don't want to go through the snow to change batteries in the middle of the winter, I decided to hook it up to solar power.

The power requirements are small - average load is 3mA, that is 72mAh per day. Voltage is also low - 3.3V, so I'll need about 4V batteries. A quick research revealed that the only kind of batteries that can take Canadian winter are lead-acid. So, I found these very cute Cyclon batteries, that are rated to -40C (discharge even to -65C). These are probably world's smallest lead-acid cells. They arrived yesterday, nicely charged to 2.11V each. They're so cute :D If I wanted to rebuild my system with them, I would need about 6500!

They docs say they can be discharged 100%, but taking standard 50% DoD, I have 2.5/2 = 1250mA usable capacity, so they will last 17 days without sun. Daily discharges are going to be very small - up to 50mA, only 2% of capacity. I wouldn't want to spend time making 3-stage charger. So, I thought, with such small discharges, perhaps I can keep them on float during the day. The docs say they can last 15 years on float.

Recommended float voltage is 2.27-2.35V/cell. I can take the upper bound and charge them at 2.35V/cell or 4.7V and keep them at this voltage. This is not that far from the recommended absorption rating - 2.45 to 2.50V/cell. Lower voltage should be good for AGMs, right? It should save them from overcharging, but still maintain them well.

Comments

  • inetdog
    inetdog Solar Expert Posts: 3,123 ✭✭✭✭
    Re: Designing and building a solar system for microcontroller
    NorthGuy wrote: »
    They're so cute :D If I wanted to rebuild my system with them, I would need about 6500!

    Slightly lower than the number of 18650 Lithium batteries in a Tesla battery pack.
    SMA SB 3000, old BP panels.
  • PNjunction
    PNjunction Solar Expert Posts: 762 ✭✭✭
    Re: Designing and building a solar system for microcontroller

    I want to apologize to the op as I think I was a major contributor to hijacking that thread.
    NorthGuy wrote: »
    Recommended float voltage is 2.27-2.35V/cell. I can take the upper bound and charge them at 2.35V/cell or 4.7V and keep them at this voltage. This is not that far from the recommended absorption rating - 2.45 to 2.50V/cell. Lower voltage should be good for AGMs, right? It should save them from overcharging, but still maintain them well.

    I think running 2.35v / cell max in float would be ok for your extremely shallow-cycle application and cold environment, ie about 10 degC. The Cyclon application manual has a nice float-voltage temp-comp chart that can get you a bit more exact if you have to do it manually.
  • NorthGuy
    NorthGuy Solar Expert Posts: 1,913 ✭✭
    Re: Designing and building a solar system for microcontroller
    PNjunction wrote: »
    I think running 2.35v / cell max in float would be ok for your extremely shallow-cycle application and cold environment, ie about 10 degC. The Cyclon application manual has a nice float-voltage temp-comp chart that can get you a bit more exact if you have to do it manually.

    Of course, my cold is more like -20C to -30C :D Not for the long time though.

    I was going to stick a thermistor to the batteries, and then build a circuit that is going to maintain reference voltage at 2.35V/cell - 3mV/K/Cell compensation.

    I didn't see the chart, and I assumed it is a linear compensation. Since intended temperature range spans 80C, the temperature compensation becomes very important. Do you have a link to the chart?
  • stephendv
    stephendv Solar Expert Posts: 1,571 ✭✭
    Re: Designing and building a solar system for microcontroller

    These sensors and wireless modules might be of interest:
    http://shop.ciseco.co.uk/temperature-xrf-development-sensor-dallas-ds18b20/

    http://shop.ciseco.co.uk/rf-module-range/

    They "predict" a million transmissions on a coin cell battery.
  • solar_dave
    solar_dave Solar Expert Posts: 2,397 ✭✭✭✭
    Re: Designing and building a solar system for microcontroller
    stephendv wrote: »
    These sensors and wireless modules might be of interest:
    http://shop.ciseco.co.uk/temperature-xrf-development-sensor-dallas-ds18b20/

    http://shop.ciseco.co.uk/rf-module-range/

    They "predict" a million transmissions on a coin cell battery.


    They are priced really right as well, been thinking of instrumenting my solar hot water setup.
  • NorthGuy
    NorthGuy Solar Expert Posts: 1,913 ✭✭
    Re: Designing and building a solar system for microcontroller
    stephendv wrote: »
    These sensors and wireless modules might be of interest.

    Mine look similar and also use DS1820. However, this is only the sensing part. The transmitting part is not done yet.
  • stephendv
    stephendv Solar Expert Posts: 1,571 ✭✭
    Re: Designing and building a solar system for microcontroller

    Very nicely done!
  • NorthGuy
    NorthGuy Solar Expert Posts: 1,913 ✭✭
    Re: Designing and building a solar system for microcontroller

    The 2W panel ordered from eBay finally arrived.

    It looks pretty much as a regular panel, but small.

    It tested abve the specs. Voc = 7.5V, Isc = 395mA.

    However, it was siliconed very poorly so I had to put more silicone on inside seams to waterproof it.

    The battery and panel seem tiny, but compared to the power requred by the controller, they are huge. If I would re-size the system for my household loads with the same ratios, it would be 100kW solar array and 10,000AH battery bank. Looks like the microcontroller will have plenty of power.

    Next step is the charger.
  • NorthGuy
    NorthGuy Solar Expert Posts: 1,913 ✭✭
    Re: Designing and building a solar system for microcontroller

    I've finally finished designing the circuit for the charger. The result happened to be larger and more involved than I originally thought (surprise :D)

    I wanted the charger to be completely dumb, so that microcontroller could sleep for long periods of time. I wanted it to charge at constant voltage of 2.35V/cell (4.7V), but since the temperature range expected is from -50 to +40C, I wanted to make it temperature compensated. So, I designed a circuit that produces a temperature compensated voltage reference which is 2.35V at 25C. The battery voltage is then compared to the reference, and if it is higher then the reference, the batteries get disconnected from the panel. When it gets below the reference, batteries get connected again. I also wanted it to consume very little power, so I used bigger resistors and took other measures to minimize power usage. Here's the schematics:

    attachment.php?attachmentid=6130

    Except for the termistor, I used parts that I already had, so they're not selected very carefully, but they work ok.

    The spec sheet for the termistor had a table which listed its resistance values against temperature. I copied the table into Excel spreadsheet, made calculations for the circuit and managed to get a good approximaton with only stock-valued resistors. The circuit consists of the IC1(1) op-amp and all the accompaniying resistors and it produces the reference voltage on the "In+" of IC1(2). I plotted the errors (difference between produced voltage and desired voltage per cell) against the temperature here:

    attachment.php?attachmentid=6131

    The error seemed to be small enough. I also introduced the hysteresis resistor R10. It causes the panel to be switched on at lower voltages and off at higher voltages. The yellow line on the graph shows the errors of the switch-off voltages, and the magenta line shows the switch-on errors. Errors are still acceptable, and there's a relatively wide corridor where the battery voltage can wonder. This ensures that switching doesn't happen too fast.

    The voltage from the batteries is brought in by R8/R9 voltage divider. Since I have 2 cells both resistors have the same value to cut the voltage in half. If I had one cell, I would short R8 to get full voltage (however switching wouldn't probably work at such low voltages). If I had 3 cells, I would make R8 = R9*2. For N cells, R8 = R9*(N-1).

    IC1(2) works as a comparator. Its output goes high when battery voltage is low and more charging is needed. It is used by the custom MOSFET driver, which consists of 4 transistors Q1-Q4. The reason for such a complicated driver is to make sure that almost all solar energy is available even if it's cloudy and panel produces very small current - 2-3 mA. The driver ensures that MOSFET Q5 is open when the signal from IC1(2) is high. D1 prevents draining batteries during the night.

    470 uH inductor (and diode D2) is there to slow down the switching, even though it may introduce some ringing. I didn't do any analysis of the value. I just had 470 uH inductor and it looked approximately currect.

    IC2 regulates power to the charger and the "Out" connection also sends power to the microcontroller.

    Here's the circuit assembled on my breadboard:

    attachment.php?attachmentid=6132

    So far, I haven't tested it with the panel, but just used 12V supply. Because of the higher voltage, it should be worse for the circuit than the panel. Here's the result (measured at the battery):

    attachment.php?attachmentid=6133

    At this temperature, voltage is supposed to vary fom 4.67 to 4.72 with average 4.71. I'd say it works well. I also tried to put the termistor on ice at -5C and heat it to 35C and the charging voltage changes accordingly.

    Next, I'm going to build it.