Go Down

Topic: Using a smoke detector to move motors (Read 862 times) previous topic - next topic

bsmonti

How do I setup an Arduino Mini Pro to take input from a smoke to detector to tell it to move a motor? (Schematic and programming wise) Thanks!

MarkT

Any clue as to which smoke detector?
[ I won't respond to messages, use the forum please ]

bsmonti

Its just a basic one that you would throw up on a ceiling for personal use. How can I tell the arduino to turn a motor when the alarm goes off? (How can I use the voltage supplied to the speaker as input for the Adruino?)

MarkT

More information would help - model number, manufacturer, look for an online datasheet / instruction manual.  Photo of the insides?

My (battery powered) smoke detector has a piezo speaker with 3 wires to it, but haven't investigated further.  Perhaps 2 power and one enable signal ?
[ I won't respond to messages, use the forum please ]

DVDdoug

Detecting the signal should be easy.  You can probably use a digital input, and worst case you can use an analog input.

Do you have a voltmeter to measure the voltage to the speaker/piezo.   It would be nice to know what kind of signal you are working with.    The Arduino inputs should not have any more than 5V applied.   In any case, you can probably run the signal into a voltage divider (2 resistors) or into a resistor and "protection diode" wired to the Arduino 5V supply.

What kind of motor(s) are you driving?   How much "contol" do you need over the motor?  The Arduino can't directlydrive a motor.   At a minimum (assuming a DC motor) you'll need a transistor, MOSFET, or relay, to boost the current, and you'll possibly need an external higher-voltage supply.    With a servo motor, you'll need to handle the feedback.  With stepper motors, you'll need a driver board (and external power supply).  There are software libraries for running stepper motors.

You'll have to play around with the software examples to learn how to read inputs, and turn on-and-off outputs.   Every program (sketch) is different, I don't think anyone here is going to write it for you.  But, we can help if you have trouble with your sketch.   The trick to writing software is to break the job into parts that can be tested without everything else working.   For example, you can write the motor-control software so that it works under software control without regard to the smoke detector input.  And, you can write some software that detects the smoke detector signal, and just turn-on teh LED on the board.   When those two things work by themselves, you can combine them.

If you just want to turn-on a motor whenever the smoke detector is activated, the software is very simple...  In fact, you don't need a microcontroller to do that...

bsmonti

First off, let me thank all of you for your awesome help and suggestions. I was a little brief on the motor part because I knew how I was executing that part already. I turned out the reason I wasn't getting input to the Arduino was because I used the black (ground, what a fail) wire connected to the speaker. It was the red one. Also there were 3 wires in there, white, black, and red. The black was ground, white was signal, red was power.

The output to the piezo speaker was 3.4v. I was able to use a digitalRead to get the state of the wire. Fun stuff.

As for driving the motor, I'm using my old RepRap stepper drivers (http://reprap.org/wiki/Stepper_Motor_Driver_2.3) to control a stepper motor. Sorry for the lack of details on that, this post was "supposed" to be more focused on the smoke detector. But you guys are awesome, thanks for all your help.

Go Up