I have a project in mind for which I need some guidance. My project is to create a LED heart that shows an 'beating' animation where the animation would get faster and faster as a person approaches it. And it would get slower and slower as a person goes farther and farther away. After a certain critical distance, the heart would drop to it's natural beat (which I can program to be 72 beats per minute).
Example: Beyond 5 feet, I want it to beat at a constant rate of 72 beats per minute. Within 5 feet I want the beating to get faster if I (of my girlfriend) approach it and slower if I (or my girlfriend) go away from it.
(Yes you guessed it right, this is for my girlfriend as a Valentine's day present )
It would still get triggered by doors and non-human objects, right? Plus it would be very directional, am I right? I think I can accept a sensor which will work for non-living objects, because most likely the gift won't be placed next to a moving door. So I am willing to compromise on requirement 4 if it comes to that. But the rest of them (1-3) are pretty darn important.
Can anyone tell me if I can achieve all my goals using a IR sensor or if I can achieve most of my goals using an ultrasonic sensor only?
Be not a high drain on power.
The HC-SRO4 that I have seems to draw about 5 or 6 mA. I power it from a digital output pin so I can turn it off if necessary.
Be omnidirectional.
I don't know of any such sensors. Perhaps you can use a bunch of somewhat directional sensors.
Be reasonably accurate in measuring the distance. Since I am not using it in a robot for object avoidance, I can tolerate a little bit of inaccuracy.
The ultrasonic sensors are reasonably accurate.
Responds only to human proximity. I don't want it to respond to non-animate objects, like closing doors etc.
Good luck with that. I don't see how you can measure distance to an object only if that object is attached to a human. If you could tag your girlfriend with a Bluetooth Low Power tag you might get a rough proximity reading. That option might not be available on Arduino for a reasonable price.
check out the [ur=http://www.maxbotix.com/Ultrasonic_Sensors/Rangefinders.html]MaxBotix [/url]things. they are not cheap (about 25Euro) - but excellent in detecting and stable readings - i have used theme for an art installation. if you cam near the object the light goes on - lightlevel was mapped to the distance..
you can also try to use the sharp IR sensors. there are different types for different distances. i also used one of theme - but not for distance meassurement - i used it as 'beam-breaker' they are relative noisy and have an extreme small active area.
for 'only human' i think you can try to combine on of the above with an PIR Sensor
there are some presence sensor that use radar / microwaves.
but they are also expensive..
Beyond 5 feet, I want it to beat at a constant rate of 72 beats per minute
If the heart is an LED you will not see it beat/flash the human eye would see that as a constant brightness. The limits about 10 beats/sec if you want flashes not brightness.
The SRF-04 and similar sensors offer reasonable accuracy at several meters distance, but as you noted they also respond to inanimate object motion.
I would consider a PIR sensor as a heat related motion sensor combined with the SR or MaxBotix devices. Several may be needed to obtain the correct arc of view.
If you are using multiple ultrasonic sensors with a PIR, I suggest using the PIR with an interrupt (look up ISR - Interrupt Service Routine) to trigger polling each ultrasonic in turn. It is much more energy efficient and reliable than pinging continuously.
I might try something like this for a deer deterrent device. Please let us know how this project turns out.
Beyond 5 feet, I want it to beat at a constant rate of 72 beats per minute
If the heart is an LED you will not see it beat/flash the human eye would see that as a constant brightness. The limits about 10 beats/sec if you want flashes not brightness.
Mark
You're thinking of 72 beats per SECOND. 72 per minute is quite visible.
holmes4:
According to wiki (?) any where between 60 and a 100! is normal for a any one over 10.
Oh well, I stand corrected. How would I know after all?
arbutus:
I would consider a PIR sensor as a heat related motion sensor combined with the SR or MaxBotix devices.
Actually, just a PIR sounds like a good idea. It should give more output the closer the person comes. The fact that it may settle if they stay very still need not be a great problem.
arbutus:
If you are using multiple ultrasonic sensors with a PIR, I suggest using the PIR with an interrupt (look up ISR - Interrupt Service Routine) to trigger polling each ultrasonic in turn.