Vibration sensor ideas


Staff member
Several people have asked me lately if I know of a way to monitor appliances without any invasive surgery. In this case, the person didn't have any status lights, and CR magnetics current sensors seem to generate mixed results. So I started thinking maybe there is a noise or vibration sensor out there that can help with this, and found this:

I requested a quote, and it looks like they are around $4-$5 for 1 sensor (when ordering less than 250). Does anyone know if this kind of sensor would pick up the small vibrations appliance would create?
Well! There are no accelerations (or activation angles) mentioned, so no real way to know. Time to ask for a sample!
electron said:
is this something as simple as hooking it up to a set of analog inputs?
E, the 003P is simply a metal ball in a tube with contacts. A solid-ball version of a mercury switch. You could use a digital input, but I suspect the device will lack sensitivity.

The MEMs devices use an Analog Devices accelerometer, which should work for most motorized appliances. I have used the AD chips to measure vibration, and they can be quite sensitive.

But it really depends on what you want to use it for. It should work fine for a dryer, but it may be blind to certain cycles of a washing machine, like when filling.

BTW: What difficulties is he having with CR magnetics? I have found them to be very dependable, if you select the right burden resistor value. Of course, you need to set the threshold to the minimum current, like the washer's fill cycle.
similar to the ones BSR was having, not detecting all cycles, but he hasn't spent much time with it tho.
Yeah, I bet it's the fill cycles that are dropping out. The problem is that the water valves draw so little current, compared to the motor, that the darn thing has to be pretty sensitive.

My washer only draws .18 amps when filling with either just hot or just cold, so you need to set the current threshold below that.

My washer also has dead-times between cycles, up to about 30 seconds, where nothing is running except the timer. I don't detect any current then. I use a 1 minute timeout to get over that hurdle.
Hey rocco;

You are correct in the problem with the small current the soleniod draws during a "fill" cycle (as I reported HERE). I was only getting a tenth of an amp.

The sensor I was using was a very cheap two amp threshold detector and didn't have a linear ouput through a large current range.

I guess if one purchased a more sensitive current sensor this should work, but the ones I looked at (in the past) were pretty expensive.

Curious what methods you are using (get another take/approach on this problem) or are you happy with the time out methodology you described above! :blink:


Hi, BSR, Check out this one:

It is $12.25, and has a linear output. You use a burden resistor to derive a voltage from the current, so you can set the threshold to almost anything. I used a 20 kohm resistor to get 1 volt at .15 amps, and 5 volts at .75 amps.

I put the signal into the analog-to-digital input of a microcontroller, and then sampled the signal, which is AC, at 1 khz. I then used the maximum value that I read over 25 samples (a little over one whole cycle) as the current draw.

I set the threshold in firmware, and implemented the 1 minute timer in firmware as well. I tend to do whatever I can in firmware.

The 1 minute timer works well for me, but that is more due to the behavior of my Maytag. The only idle time it has is right after it fills. It sits for 15 to 30 seconds before it agitates, and the 1 minute timer fixes that.

If I used the washer's pre-soak feature, I would be in trouble.
Thanks rocco.

Curious, would a bridge and a cap get that to "near" DC where I could get the readings directly from my Analog to Digital converter? I wouldn't have to worry about getting a "real" current value with scaling, rather what would be the minimum voltage output when a soleniod was on.
There is a thread about this somewhere on the HomeSeer board. This circuit was intended for the Ocelot. I don't know if anyone actually used it.

I never built it, except as a Spice simulation. I don't have an Ocelot.

Two things to be aware off:

1) This is un-buffered, so the input impedance of the AtoD will affect the current to voltage ratio. Just consider the input impedance as being in parallel to the burden resistor.

2) The output will be more indicative of the peak current during the AC cycle. To get RMS current, you should multiply by .707 (or divide by the square-root of 2, to be more precise). You can do that by multiplying the burden resistor value by .707, if you want to do it the easy way.


  • CR_3110.gif
    4.2 KB · Views: 9
That type of circuit was discussed a few times on the ADI forum too. The thing about using a bridge rectifier is that the forward voltage needed to "turn on" a diode is about 0.7 volts. With two diodes to turn on (because of the bridge arrangement), that's 1.4 volts before you even start to get a dc voltage at the output. Then there is the input impedance of the A/D converter. Rocco mentioned a 20k burden resistor. A SECU16 input has an impedance of about 10k so even if you eliminate the burden resistor and rely on the SECU16 input to do it, you still are presenting a rather low burden resistance, furthur reducing sensitivity. All these things are the reason for the minimum ac load current draw of about 0.15 amps or more. For better sensitivity you would need to feed the ac signal of the CR Magnetics sensor directly into a high impedance ac amplifier circuit (an op amp would be fine) and then rectify and measure it later.
I use the clamp on CRmagnet and while the fill cycles do in fact drop out they only last 3-4 minutes. I use very simple logic (using HomeSeer) that if the washer has been off for at least 10 minutes then announce the wash is done. Works perfectly. This one was a "WAF builder". I wish I could say that about all of my projects. :)
Rupp said:
I use the clamp on CRmagnet and while the fill cycles do in fact drop out they only last 3-4 minutes. I use very simple logic (using HomeSeer) that if the washer has been off for at least 10 minutes then announce the wash is done. Works perfectly. This one was a "WAF builder". I wish I could say that about all of my projects. :)
That's a good method Rupp, but I'm thinking about immediate notification. I do use the magnetic contacts on my dial which has been working great for years. The only problem with that is I need to secure the sensor a little better as right now it will vibrate out of place, but this only happens a couple times a year.

I use a very small magnet on the dial, so it is not all that bad looking. After all, its in the laundry room. :)
Ahhh that new age immediate gratification. :)

I would like this as well but my washer is brand new so hacking into it is out and the vibration sensors would have to be able to discern between a filling and someone walking by and this seems problematic to me. How would you know it's the last expected vibration?
So what would it take to interface one of these sensors? There could be many useful applications for these sensors.