Go Down

Topic: Detect the status of an exhaust fan (Read 1 time) previous topic - next topic

retrolefty


Sorry, sir zoomkat, but how can you use paddle switches in fan status detection? Could you give us a drawing? I kept on imagining putting the switch inside the fan and blades getting stuck in the switch.


They are called air flow switches. The fan creates a positive air flow which blows against the paddle target of the micro-switch. If switch drops out then it's because there is no air flow. Much better then just monitoring fan motor current as a plugged fan inlet will result is over heating of the equipment even though the fan motor is spinning fine.


zoomkat

Below are some paddle flow switches. It can be as simple as a small piece of thick aluminum foil hanging vertically from a wire attached to an arduino. The bare end of another wire attached to the arduino is put just behind the piece of aluminum. Gently blow on the piece of aluminum and it pivots back touching the behind wire and the closed flow switch circuit is made.

https://www.google.com/search?q=paddle+flow+switch+air&num=100&lr=&as_qdr=all&tbm=isch&tbo=u&source=univ&sa=X&ei=je-PU8XyEO6j8gGyzoGwDQ&ved=0CFQQsAQ&biw=1210&bih=607
Google forum search: Use Google Advanced Search and use Http://forum.arduino.cc/index in the "site or domain:" box.

dave-in-nj


arduinoTime

Thank you ,sirs, for the replies!

Hmm, but it's a little bit pricey. Can I use this instead? https://www.sparkfun.com/products/9196

arduinoTime

I would like to try sir goodhen's suggestion but I just want to clarify this... is the code the same for using the blade as interrupt (like this)and using a reflective material (like this)?

thegoodhen


I would like to try sir goodhen's suggestion but I just want to clarify this... is the code the same for using the blade as interrupt (like this)and using a reflective material (like this)?


I guess the second one is what you need.

It could work with the first one, too. It's just a matter of how reflective the surface is. It needs to be so reflective that the bounced light is intense enough to register as logic level. I doubt using the adc is an option-it's too slow for this purpose. Using an opamp (or a transistor) would be pretty simple if the light levels are too low.

dave-in-nj

if you spend some time with fan laws and electrical motor power, you can overlay ohms laws with he fan laws.

if there is blockage, means no power being used to move air, the current and voltage will be at one place on a plot.
if the blade is off the motor, it will be on another location on the plot
if the unit is stalled, another.

the propeller blade fans you are using have horrible fan curves for this purpose.  a blower would be much easier, but the values exist nonetheless.

a sensorless sensor.


dave-in-nj

the pancake fan has spiders (legs) that allow you to secure a sensor.
use some whitehout on a fan near the hub, or paint a slice of pizza on the hub (triangle)
a reflective sensor is common on machines such as lathes for this RPM feedback.

of course it does not provide airflow, only RPM.

there are lots of information on thermal anemometers using simple (cheap) diodes.
easy to determine that there is flow.  you do not need a 3rd heating element as you know the direction already, all you want to know of there is flow.  google kings law


arduinoTime

Could I use the code here http://www.pyroelectro.com/tutorials/tachometer_rpm_arduino/software.html for the IR reflective sensor? I want to measure RPM like this (http://www.stumbleupon.com/su/9XvNYO/embedded-lab.com/blog?p=2425) but the site used a different controller. Also, could you suggest an IR module from sparkfun that I could use for this project?

thegoodhen


Could I use the code here http://www.pyroelectro.com/tutorials/tachometer_rpm_arduino/software.html for the IR reflective sensor? I want to measure RPM like this (http://www.stumbleupon.com/su/9XvNYO/embedded-lab.com/blog?p=2425) but the site used a different controller. Also, could you suggest an IR module from sparkfun that I could use for this project?


As I said-

It could work with the first one, too. It's just a matter of how reflective the surface is. It needs to be so reflective that the bounced
Quote from: me
light is intense enough to register as logic level. I doubt using the adc is an option-it's too slow for this purpose. Using an opamp (or a transistor) would be pretty simple if the light levels are too low.


I have never bought anything from Sparkfun and have never done this before, either (actually, I've done stuff with beam interrupt for rpm measuring, but not with reflective surfaces). I don't wanna recommend something that might not work.

dave-in-nj

is the   QRB1114  still a valid part ?

from a mm away, nail polish will be 'reflective enough' to get a strong signal.
white paper and black paper,  white out.... whatever.

any combination of send receive should work.  if you hve an old ball mouse, there is an optical interrupter that could work if you can cut it in half and install side by side.   

to test, you could try a light sensor and an LED and see how much light is reflected.



cattledog

Quote
Could I use the code here http://www.pyroelectro.com/tutorials/tachometer_rpm_arduino/software.html for the IR reflective sensor?


Using delay (400) to slow down the display updates is bad practice and will disable your interrupts. You need to update the display following the example of blink without delay.

Using the moving average is good.

The ISR and the determination of rpm from the interval between pulses is good, and may be the best for you, but once you are up and running, I would explore the alternative methods for a tachometer where the ISR is count++ and you sample for either a fixed period of time, or for a fixed number of counts. The most accurate results may depend upon the rpm and your sensitivity to missing a pulse if you have a poor signal. If the goal of this project is some sort of alarm if the fan is not turning, then the accurracy may not be that important, but the response time to shut something else off may be a consideration in choice of the ISR and averaging period.

If you count the number of pulses in a fixed period of time (e.g. 500ms), you can update the display at same time you calculate the rpm.

steinie44

To test if it's blowing, you can do this. Get a micro switch and put a large flat cardboard or something like that on the arm of the switch. The wind from the fan will close the switch. Something like the whiskers on a robot, only forced air activated.

dave-in-nj

the sail switch is a possible candidate.  lots of ways to do that even.

for a motor rpm, the   TCRT5000 seems to be viable. under a dollar, not bad.


arduinoTime

Hello! Thank you for all your reply! I'll be happy to try them later

Updates:
- I tried using H21A1 opto-interrupter for rpm measurement. I detached the LED and transistor and placed them side by side.I used a 220 ohm pull up resistor on the anode side of the sensor, then I placed a 100K ohms resistor to the collector side and connected it to [digital] pin 12 of my arduino. The reading was stuck to zero so I changed the pin to A0 and got a reading from 200-300. I was happy. Then I tried running black and white stripes to the sensor; for the white area, I used the shiny part of a double sided tape. Nothing happened. I tried other shiny things but nothing happened. I moved on. I guess point-to-point IR is the solution so I tried it. I used pin A0. It  reads 0 when there's no object blocking the beam and 200-300 when there is. I was happy (again. well, it's something) but then when I read the code from pyroelectro.com and learned that it uses attachInterrupt-- for digital pins 2 and 3 only here-- I cried.

So... Masters, can I use a line tracking sensor instead? I found this link and maybe this (http://www.seeedstudio.com/wiki/Grove_-_Infrared_Reflective_Sensor) is the answer *crossfingers*

Go Up