I'm currently working on a project that involves hooking up an arduino, a cellular shield, and an electromagnet (in this case, one of those old fashioned ringer boxes with a bell powered by electromagnets). I need the arduino to be able to power the ringer - presumably via a relay, and the power supply for the arduino and the ringer electromagnet will be the same 9v wall wart.

I know the arduino and the cellular shield have their own regulators, but should I be concerned about effects the inductive load of the electromagnet might have when it's turned on and off? What precautions should I take besides the obvious reverse-biased diodes?

Further, in order to use the ringer effectively, I need to be able to pass current through the electromagnet in both directions (each polarity moves the striker in a corresponding direction). Can anyone suggest a simple circuit that will achieve this with a minimum of external componentry?

Edit: Does this look like a reasonable interface circuit? It seems involved to use two relays to control a third electromagnet, but I can't think of another way to achieve what I need.

Ringer interface circuit


I would consider using four MOSFETs in an H-bridge configuration. Connect the top of the bridge to the 9V supply, the bottom to return, and drive the diagonally-opposite MOSFETs with PWM to alternate the current flow through the ringer.

The body diodes of the MOSFETs will clamp any kickback, so ensure that you choose robust-enough parts for the task. Trying to use discrete diodes is tricky when MOSFET body-diodes are in parallel with them.

You will need to generate high-side drive for the upper bridge FETs, perhaps with another wall-wart supply having it's return referenced to the 9V high side. (You need to bring the top MOSFETs several volts above +9 in order for them to turn on.)

  • \$\begingroup\$ I only understand about half that, unfortunately - and I'm really not keen to use a second wall wart. Is there a sample circuit diagram somewhere you could reference? \$\endgroup\$ – Nick Johnson Apr 3 '11 at 12:46
  • \$\begingroup\$ Okay, so an H-Bridge seems more or less the same as the configuration I used for the second relay in my diagram. I'm unclear why I need to "generate high-side drive for the upper bridge FETs", and why that needs a separate power supply, though. Can you elaborate? \$\endgroup\$ – Nick Johnson Apr 3 '11 at 12:52
  • 1
    \$\begingroup\$ This tutorial covers powering a DC motor from a commonly available low power H-Bridge: itp.nyu.edu/physcomp/Labs/DCMotorControl - is there any reason I couldn't simply replace the motor with my ringer coil? \$\endgroup\$ – Nick Johnson Apr 3 '11 at 13:17
  • \$\begingroup\$ @Madmanguruman I'd love to select this as the answer, if you can just clear up that one last point for me. \$\endgroup\$ – Nick Johnson Apr 6 '11 at 5:48
  • \$\begingroup\$ It will work fine. In software, you will have to alternate the current flow through the ringer coil by alternating between the diagonally-opposite MOSFETs (turn on upper left and lower right, pause, turn off upper left and lower right, pause, turn on upper right and lower left, pause, turn off upper right and lower left, pause etc.) - You need the pauses in there to ensure that the FETs have time to turn off, else you may get shoot-through. \$\endgroup\$ – Adam Lawrence Apr 6 '11 at 12:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.