The special effects in a haunted house need to be well timed. The best way to do this is to use sensors to detect where your guests are in the haunted house. So I am doing a series of projects that demonstrate a variety of sensors that you can use to automate your haunted house. Last week I showed how to make a simple DIY pressure plate switch.
This week, I am going to show you how to make a proximity sensor and how you can implement it to activate special effects.
Step 1: Materials
33 ohm Resistor
10 kohm Resistor
Black Heat Shrink Tubing (the same diameter as the phototransistor)
Step 2: How an Infrared Proximity Sensor Works
This isn't exact because the amount of reflected light also depends on the physical properties of the reflecting surface (sometimes called its reflectivity). However, it works well enough to use to activate special effects in a haunted house.
I chose to use infrared light for this sensor because it is invisible to the human eye. So your guests won't notice it. Also it won't experience as much interference from the lighting in the room.
Step 3: The Sensor
The IR LED is connected to the 5V supply with a 33 ohm series resistor. To find the appropriate resistor value for the LED use this formula:
Resistor Value = (Supply Voltage - LED Voltage) / LED Current.
In my circuit, the supply voltage is 5V. The LED is rated for 1.3V at 150 mA. This gave a resistor value of 24.7 ohm. The closest resistor that I had above this value was a 33 ohm resistor. So I used that. Be careful to not overload the resistor. A 33 ohm resistor will experience about 1/2 watt if power. If you don't have a resistor rated for that much. You can use two 68 ohm resistors in parallel. Or you can use multiple LEDs in series to bring down the voltage across the resistor.
The emitter of the phototransistor is connected to ground. The collector is wired to a 10 kohm resistor that is connected to 5V. An additional wire is connected to the collector to act as an output pin for the sensor. I soldered the sensor components together on a small piece of perf board. I added three pins to connect the sensor to the signal processor.
To ensure that only reflected light is detected by the phototransistor, it is important to add a light barrier between the LED and the phototransistor. The most effective way to do this is to put a black piece of heat shrink tubing around the phototransistor. This also helps to make the sensor more directional.
Step 4: Signal Processing With an Arduino
The AnalogRead function measures the voltage of the signal coming from the sensor. When the voltage drops below a set threshold, the Arduino activates the your special effects. Here is an quick example of the code that you could use.
// Example Code
int InputPin = 0; // analog pin 0 is the input pin
int OutputPin = 1; // digital pin 1 is the output pin
int val = 0; // variable to store the value read
pinMode(OutputPin, OUTPUT); // sets the digital pin as output
digitalWrite(OutputPin, LOW); // sets the output pin initially to LOW
val = analogRead(InputPin); // read the input pin 0 to 1023
if (val < 800) // if sensor value is below threshold set output HIGH
digitalWrite(OutputPin, HIGH); // sets output pin HIGH to activate special effects
delay(1000); // waits for a second
Step 5: Signal Processing With an OP Amp
This configuration of the op-amp functions as an adjustable comparator. The potentiometer sets the reference voltage for the sensor. Then whenever the signal from the sensor drops below this reference voltage the output goes HIGH.
Depending on what kind of circuit you want to activate, you may want the output to be a LOW signal instead. You can do this by switching the wires connected to the op-amp's input pins. So if you connect the sensor to the non-inverting input and connect the potentiometer to the inverting input, the output will be LOW whenever the sensor is activated.
Step 6: Use Your Proximity Sensor to Activate Your Special Effects
To see a really good tutorial on how to make an automatic coffin, check out this instructable by instructable user wannabemadsci.