quick & dirty on/off measurement, power transformers

I want to very simply measure when a 110 or 220V circuit goes on, typically drawing a few amp or so. I don't want to break the circuit at all, so I think of power transformers that snap around the wires, but they're expensive. It seems like I could maybe wrap a few winds of wire around on of the loads' leads, and just watch for (induced) voltage change... am I missing anything? Any other easy approaches? Thanks!


Yes, you are missing one thing current flows in both directions in a cable, two threads, so the magnetic fields cancel out. The magnetic field around a cable is very low.

This do not work


You can measure the current in one lead of the AC power cord using a current transformer (CT), a small toroid with many turns of wire that slips over the lead. I got free samples from CoilCraft. This project should give you some ideas about how to use the CT http://openenergymonitor.org/emon/node/58

Winding one wire round another doesn't couple them magnetically. You have to wind both wires round the same magnetic core (which is how current transformers work)

Putting a wire through a toroid counts as 1 turn exactly, even if the wire is straight, note.

However your problem may not need to measure current at all - most mains appliances are switched on the live side (they really should be!) Thus the voltages on the wires are approx zero when its off (not quite true, neutral can be 10's of volts sometimes), but when it is on the live wire is at full mains voltage, the other wire(s) are approx 0, so the average is about 1/2 of mains.

Capacitively couple a wire to the whole lead (NO ACTUAL CONNECTION, NOTE WELL), and it will pick up a small AC current due to the average AC voltage thus described. Take that wire to a high-impedance input and it will exhibit a large enough voltage to detect.

You need to have the wire coupled to the mains supply after the switch of course, and not significantly coupled to anything else (detector box nearby?).

The impedance of a few pF at mains frequencies is of the order of 1000M, so you'll need to avoid loading the wire with less than about 100M. A digital pin used as an input is fortunately far higher input resistance than that so will see the mains signal easily, and the input protection diodes will clip it nicely to 0..5V range.

You could run the wire alongside the mains cable for a few feet, or wrap it around a bit, just be sure the insulation is sound since you only want capacitive coupling... Stray capacitance of a few pF isn't hard to get this way.

So basically one digital input and a piece of wire may be enough - the hard part will be keeping interference from other sources out perhaps. If really paranoid about safety add an inline mains-rated capacitor between the wire and the arduino of 1nF or so.