Digital Controlled Solar Heater

At the end of February I attended the Peace River Sun Day Solar Workshop hosted by the Webberville Community Forest  Association. One of the presentations near the end they showed us a screen solar heater design that had evolved from the pop can solar heater that involves building a box with black painted pop cans inside of it and a window on the front and allowing air to pass through to “collect’ the heat energy and vent it into a building or green house.

I’m planning on building a portable green house to put over our vegetable garden this spring to try and get a few more weeks of growing on either end of the season, and this looked like an easy way to help heat this green house.

The various DIY plans on the internet show a small pc fan connected to a mechanical thermostat to move the air through the heater. But being an electronics geek I figured I could build a better control system for minimal cost that would increase the efficiency of the heater.

My idea was to use an Arduino, a couple 1-wire temperature sensors, and a relay to control the fan. My thinking was that a fixed mechanical thermostat wouldn’t turn the fan on during the colder mornings even though the sun was already heating the air in the box because the thermostat value was to high. So why not turn the fan on based on a temperature differential between the area we want to heat and the inside of the heater. That way if it’s 0°C in the green house and 5°C in the heater the fan would turn out and start heating rather the waiting until the heater is much hotter.

So I went online and sourced  some sealed water proof 1-wire sensors and a 5 volt relay that the Arduino could easily power. Total bill for the parts was under $15 Canadian.

While I was waiting for the ordered parts to come in I started work on the rest of the heater. For the clear window on the front I used an old passenger window out of a helicopter that we had replaced at my day job. So that determined the size of my heater. The window once it was trimmed down to work was roughly 30″ x 36″.

I had lots of scrap treated plywood around from other projects to build the box. So I picked up some black aluminum window screen and a can of flat black paint and started building. The intake and outlet holes are 3 1/2″, I decided on this size because the fan I had on hand for the project fit nicely over the hole.

Box ready for the screens and electronics.
Box ready for the screens and electronics.

For the screen frames to calculate the size, I measured 1.5″ from the out side lip of the top of the box as my material was 3/4″ that I was building the frame out of. The distance from that point to the top of the lower hole (intake) is the length of the screen frame. This allows the screens to be mounted on an angle so the air comes in on the front side of the screens and must pass through the screens to exit picking up heat along the way. The width of the frames is the inside dimension going across the box.

Once I constructed the frames, I stapled screen to two sides of one frame and one side of the other so that they could be be arranged to give 3/4″ spacing between the layers of screen.

I drilled a 3/8″ hole beside the inlet where my 1-wire temperature sensor for the outside or inlet temperature would be read. Then mounted the fan on the inside of the box over the upper hole. I attached my inside 1-wire temperature sensor to the top of the fan near the back of the box so it would be some what sheltered from direct sunlight and get a more accurate reading of the air temperature inside the heater at the outlet.

Screen over inlet and outlet to keep insects out.
Screen over inlet and outlet to keep insects out.
Box and Screens
Box and Screens

 

 

 

 

 

 

Four wire PWM controlled computer fan
Four wire PWM controlled computer fan

The fan that I found in the junk box was a “4 Wire” type pc cooling fan. I’ve played with these in the past the first two wire are your normal 12Vdc power wires the third one is connected to a speed sensor. The fourth one is fan speed control.

Pulse Width Modulation (PWM)  is used to control the speed of the fan, it just so happens that Arduinos have PWM outputs built in, so I though ‘Hey why not in addition to turning the fan on based a temperature differential, vary the speed based on that same differential.’ should be easy to do…..

Well turns out the Arduino PWM is around 500Hz but PC fans are designed to used PWM frequencies between 30kHz and 300kHz. While it will work you can’t get the full speed range out of the fan. So after some searching on the net I found this function which allowed my to set the fan speed control pin on the Arduino to 31.25 kHz.

Here’s the current code which I plan on updating for an Arduino Pro Mini with no display in the near fut

The end result the controller is able to roughly maintain a 5 degree C differential. I did disable the fan at on time with an inlet temperature of 12C sitting in direct sunlight in March the heater was passively producing 56C air through convection only (44 degree increase).

Future plans are to convert it to a Arduino Pro Mini with no display, only serial out that can be sent to a data logger etc. Possibly an Arduino Yun based weather station?

 

 

0 Comments on “Digital Controlled Solar Heater

Leave a Reply

Your email address will not be published. Required fields are marked *

*