Introduction: Arduino Controlled Personal Fan With Ping Sensor / ATtiny2313

Picture of Arduino Controlled Personal Fan With Ping Sensor / ATtiny2313

                                                      What does this do?

This is a fan that will automatically come on when i sit at my workbench and off when i leave.
It uses an Ultrasonic Distance Sensor, or commonly called a  "Ping " sensor for detection.
An ATtiny2313 to handle the processing.
A power supply from a router. ( Wall wort )
A relay to switch the AC power.

The ping sensor works by sending out radio waves and times how long it takes for the radio waves to bounce off of an object then return. From this time we can calculate distance. I know it is more complicated than this but this is the simplified version 

Video Link

Step 1: BOM

Picture of BOM
  • ATtiny2313
  • 6v relay
  • 20 pin socket
  •  Ping sensor
  • Fan
  • 2n2222 transistor
  • 1N4004 Diode (2)
  • 10K resistor
  • 330R Resistor
  • 8.2v power supply
  • Perf board
  • Switch
Wire Glue

Step 2: Circuit

Picture of Circuit

 Not much to say here it is pretty straight forward.

The one thing that needs explaining is the power supply.
It is a 5v ( wall wort ) that puts out 6.08v whether under a load or not.  Just rite for a 6v relay, but not a micro-controller
Scenes the ATtiny2313 needs 5v i put a 1N4004 diode in the VCC line to reduce the voltage by .6v. That is the standard voltage drop for a rectifier diode.  

 6.08v - .6v = 5.48v.

Maximum allowable operating voltage is 5.5v in the data sheet. Yes it is pushing to run piratically at max volts. But it is an experiment to see how it works out. So far it has been running for 3 months and all is well.  

Data Sheet

Step 3: Power Supply

Picture of Power Supply

I could of just plugged the wall wart directly into the wall outlet then powered the circuit with a power jack but that means i would use 2 plugins. With taking the wall wart apart and using only the circuit i could make this all on one board and one plugin.

Step 4: Main Board

Picture of Main Board

Arrange the components for best fit and clearance. Solder everything down and run traces as per the circuit diagram. 

Step 5: Fan Motor

Picture of Fan Motor

This was of those little 6" all plastic fans. After it had dropped for the umpthteen time the glue just couldn't hold it together any longer. After it sat in my junk box for a year or so i decided i found a good place i could make use of it. I stripped it down and glued the motor in the corner of a shelf that sits on top of my workbench. 

Step 6: Ping Sensor

Picture of Ping Sensor
This a 5 pin sensor. It could be called a 4 pin i suppose scene 2 of the pins are grounds.
  1. Ground
  2. Trigger
  3. Echo
  4. VCC
 
 
While this sketch is for a 4 pin sensor, i have successfully ran this 4 pin sensor on a 3 pin sketch also. Tie the Trigger and Echo pins together on the same output pin of the Arduino. It works just as well either way.

Step 7: Programing

Picture of Programing

For programming i used the methods found in this Instructable as well as this Instructable. 

Step 8: Code

Picture of Code

 #include "Ultrasonic.h"
 
int RELAY = 9;  // RELAY Pin.  
int TRIG = 11; // Trigger Pin
int ECHO = 10; // Echo Pin
int Range; // The range of the object from Ping Sensor
int Dist; // The Distance value

Ultrasonic ultrasonic(TRIG,ECHO); // Create and initialize the Ultrasonic object.

void setup() {
  pinMode(RELAY, OUTPUT); //To the relay via the transistor
  Dist = 32; //The distance in inches. Change this for increasted or dicreasted range.
}

void loop() {
  //Range = ultrasonic.Ranging(CM); // Range is calculated in Centimeters.
  Range = ultrasonic.Ranging(INC); // Range is calculated in Inches.
  
  if (Range < Dist) {
    digitalWrite(RELAY, HIGH);   
  } else if (Range > Dist) {
    digitalWrite(RELAY, LOW);
     delay(9000);
  }

}



Don't forget to make sure you have the "Ultrasonic.h" library installed or this sketch wont work.
Here is a link to the "Ultrasonic.h code if needed.

There is a delay on the end so that if something passing quickly by the sensors range it will not trigger it. Only if an object has been in the sensor range for more that the delay time will the fan come on.

Step 9: Thank You

Picture of Thank You

Thanks for looking!

If there is any questions i can answer i am happy to.

Comments

sivanandhame (author)2015-03-11

please tell me the min range of the sensor

viswadevan (author)2015-01-28

wwc have u ever used a PIR Sensor?

viswadevan (author)2015-01-28

Wow... simple and good example on how to use ultrasound sensor... I've made something similar... but trying to get the ultrasound sensor to activate the relay... but cant figure out the configartion... fairly new to arduino...

kasia.kowalska.509994 (author)2014-10-23

Nice idea. I came here to find some inspiration for my project where the Ultrasonic Sensor trigger the relay for the light. Anyway, two things I noticed and I believe should be said for the newcomers:

1. The so called ping sensor does not emit radio waves. As the name suggests it emits ultrasounds. Sound which cannot be heard by humans. The following is true - by measuring the time needed for the sound to bounce we can calculate the distance.

2. Please work on your spelling :) I am not an English speaker but fortunately I understood what you meant by 'scenes' :) It's spelled 'since'.

You come to this site and the first thing you do is complain about one of my projects. This is your one and only contribution to this community. I suggest you actually do something of your own instead of complaining about somebody else hobbies. I am sure you do not realize that making an Instructable is far more work than the actual project and is done for the sure pleasure of sharing with other DIY'ers. If you do not like somebody's Instructable i suggest you move on and not try to fix people to conform to the way you think the world should be. This explains why your FB link on your Instructables page shows only one friend.

gazmono (author)2014-09-10

I am working on a project which requires that a very powerful bulb gets brighter as a person aproaches it.

How could I modify this to give an output voltage which increases in a linear fashion from 0 to 10 volts?

There
are many projects on instructables and elsewhere that either use the
distance information to output to a digital display or light up a few
leds in steps as with car reverse sensors, but I have not found anything
which will give a continous analogue output voltage neccessary to
operate a lighting dimmer. Can anyone point me in the right direction?

vishalapr (author)2013-05-30

When I upload the code it gives an error saying that 'class Ultrasonic' has no member named 'Ranging'
What do I do now?

WWC (author)vishalapr2013-05-30

Did you install the Ultrasonic library?

vishalapr (author)WWC2013-06-02

It works fine, just had to install a newer version of the Ultrasonic library, thanks for the tutorial :D

WWC (author)vishalapr2013-06-02

Your welcome.
I also was trying to get the ranging adjustable with a pot but never got that worked out.

sath02 (author)2013-02-06

Nicely done!
Well suit for the tropical climate!

WWC (author)sath022013-02-06

Thanks

pfred2 (author)2013-02-06

Following the advise of my spiritual guide Saint Ozzy I'd have used an electric eye.

http://www.youtube.com/watch?v=tsLkL8DTHeg

iceng (author)2013-02-05

You do good work !
And that is a heavily well worked bench.

A

WWC (author)iceng2013-02-05

Thanks A

i was trying to prevent myself from getting tennis elbow from turning the fan switch on and off, You know how dangerous that can be.

iceng (author)WWC2013-02-05

Extremely elbow hazardous !
And very humid by the iron oxide on the fan lamination :-P
Especially since I see you are using a 220VAC style of power connector.

rimar2000 (author)2013-02-05

Clever idea! Nice work.

WWC (author)rimar20002013-02-05

Hi
Thank You for looking at one my Instructable and it is a honor to have you comment also.
I follow you work as well.

Thank You

About This Instructable

7,176views

15favorites

License:

Bio: Why would i buy something ready made when i can make it myself with half the features for twice the money? DIY!
More by WWC:3D Pinted Spool ReelHard Drive Tachometer for a Desktop Computer4093 Schmidt Trigger / Fan Speed Regulation
Add instructable to: