This project pretend to automate an evaporative air cooler by controlling the start and stop of fan and water pump to ensure an operation inside the comfort zone shown above.
The temperature and humidity data are obtained whith my weather station for 2011 in Torreon Coahuila Mexico with intervals of 0.5 hours.
With this info, we need to obtain the next:
1.- Temperature must be below 27 ªC
2.- Humidity must be between 40 to 60%
3.- To prevent dust entering throug ventilation ducts during sandstorms, water pump must start if wind speed is big to 3.0 m/s and humidity is below 50%
This unit is an 4800 CFMs, have a 1/2HP two speed motor fan and 1/150 HP water pump, our circuit only controls low speed (5.2A) and water pump (0.8A).
For this project i propose a PICAXE 40X microcontroller, for the humidity sensor i use an honeywell HIH-4000, for temperature sensor a Maxim DS18B20, for windspeed an Everligth ITR8102 optical switch. another electronic components are:
1 pc. 4Mhz crystal
3 pcs. 2N3904 transistor
2 pcs. 1N914 diode
1 pc. 330 omhs resistor
2pcs. 10 K resistor
4pcs. 4.7 K resistor
2 pcs. 5.6 K resistor
1pc. 22 K resistor
2pc. 5v SPDT relay RAS-0510 (120v 10A)
1pc. off(on) push button switch
Step 1: Windspeed Sensor
The windspeed sensor is made from scrap, i use an 1.5"D x 6"L pvc pipe, 1 pc 1/4"d x 6" L stel rod, 1 1.125"D bottle cap, 1/4"D nuts, washers, thin sheet metal, 2"D plastic cap, 1.5"D x 0.125" triplay, galvanized wire and the bottom of coke cans as blades. The key for the operation of this sensor is reduce the friction betwen the spining and fixed components.
Step 2: The Circuit
Since i have several PICAXE microcontrollers (and experience with them) i decide to use a 40X due to the count command, which is important for the windspeed sensor, you can use any microcontroller which accept 1 digital input for the temperature sensor, 1 analogic input for the humidity sensor, 1 digital input for the windspeed sensor and accept any comamand which can count pulses by any time we choose.
Step 3: The Code
The first section of the program read the signals from the sensors and convert for the humidity sensor to % RH, and to m/s for the wind speed, the temperature is read directly by digital sensor DS18B20 in ºC, the humidity sensor datasheet include the ecuation to convert from mV to %RH, we just adapt this ecuation to read steps in analogic input of the microcontroller, this is done by knowing that the readadc command reads values from 0 to 255 so with Vin=5 Vdc we have 5/256=0.020V/steep in adc, we just replace the volts value in datasheet ecuation using the equivalence of 0.020v to 1 step and we obtain the rigth equation to obtain %RH by reading 0-255 values in adc in pin 2 (adc0) of microcontroller, the wind speed is obtained by counting the number of pulses in 2 sec. in pin19 (input 0), with this value and with the radius from center of blade to center of shaft of wind sensor we obtain the ecuation to estimate wind speed. We use a Do...Loop to obtain the temperature humidity conditions and a single if...then comparator to turn on water pump for 1 min. during sandstorms, we use a for...next commad because the pause command (or wait command) can freeze the program with times longer than 5 sec.
1 symbol T=b0
2 symbol H=b1
3 symbol V=b2
7 readtemp 1,T
8 debug T
10 readadc 0,H
11 let H=H-42*100/161
12 debug H
14 count 0,2000,V
15 let V=V*565/1000
16 debug V
17 if T>=27 and H>60 then high 0
18 end if if T>=27 and H<40 then high 0,1
19 end if
20 loop while T>22
21 low 0,1
22 if V>=3 and H<50 then goto pump
23 goto main
25 for b3=1 to 12
26 high 1 pause 5000
27 next b3
28 low 1
29 goto main