Can I trip this 15A, 24VDC relay with my UNO?

Hi everyone.

I'm doing a project for school that has suddenly become more than I can handle. I'm making a hovercraft controlled by arduino UNO using brushless motors attached to ESCs. Everything was fine until I realized that I had no way to make the thrust BLDC run in reverse, to have the craft move backwards. It's an integral part of my project. I had no idea what to do, until I came across instructions here...

http://www.affordengtech.co.za/

...to switch the BLDC's two outside wires (inducing an opposite direction) using a relay and a MOSfet. I thought this was genius, so I went ahead with it. But now, after ordering the parts, I'm wondering if my arduino and the parts can even charge the relay. See, h used a 10A relay to control his BLDC but my BLDC has an 18A max. I figured to be safe, at least 15A would be needed. I had no idea how to pick the MOSFET. Below are the products and a poor wiring diagram I threw up from observation, because the guy didn't post one. Also note, I already ordered al lthese parts but they haven't arrived yet. I haven't tried testing (for better or worse.)

***Do I need a new MOSFET? Can I try and trip the relay with the battery hooked up to the MOSFET instead of the UNO's 5v?

BLDC Radio Control Planes, Drones, Cars, FPV, Quadcopters and more - Hobbyking

Relay

MOSFET

Battery

Wiring
Imgur

***I'm sorry to ask what amounts to a basic relay and transistor question, but honestly while I somewhat understand the relay's ratings, the MOSFET is completly mysterious to me. Thank you.

Simple answer is no, because you don't have a 24vdc voltage source to turn on the relay coil. Relays have two main specifications you have to match to your application.

  1. Relay coil voltage. Your title says 24vdc but again you don't have that voltage available in your project. But I bet that datasheet will show that the same base relay is avalible with a 5 vdc coil.

  2. Relay contact maximum voltage and current ratings should be well above the worst case voltage and current draw your motor is drawing.

Also your crude drawing is missing some details, you should have a resistor wired between gate and source terminals of the N-channel MOSFET. Also you must use a 'LOGIC LEVEL' mosfet that will work with an arduino 5 vdc digital output pin.

It is a good idea to use ULN low side drivers to switch your relays...A single IC can switch up to 8 relays....This will help your project to be much more compact which would otherwise be larger with MOSFETS...plus you'll have to add resistance to the gate of the MOSFET to limit the initial current draw....you can also eliminate that part using ULN ICs...

The MOSFET is logic level at least so would work (with a 24V supply). Remember
if switching a relay you must have a free-wheel diode.

The AC contact rating is probably the one to use, since the outputs of an ESC are intermittant
currents, allowing the contact spark to quench easily. However you may have
to experiment a bit.

hfbrooklyn, you're on the right lines but I agree with some of the other comments here.

You've ordered a 24V d.c. relay but you only have 5V or 11V available. You could order a 12V relay, but if you've already got a 24V one coming then you can make a 20V relay supply by adding a 9V PP3 battery, just for the relay coil, which is probably enough to make it switch for testing. At least you can commission the circuit before you decide to buy another relay. Connect the PP3 -ve to the LiPo +ve, and the PP3 +ve will be at +20V relative to the LiPo -ve. Makes sense?

The mosfet you've ordered is just fine. With a 4V gate drive direct from the Arduino, it'll drive well over 10A so it'll eat the 30mA-70mA coil current. Since you're only switching this occasionally you don't need a series gate resistor, but good practice is to put something between gate and source (say, 2k2) to make sure the mosfet's fully off if the Arduino's not connected, or before your software initialises the port pin.

You should wire the mosfet as an open-drain driver, so it acts as a voltage-controlled switch to 0V. By learning this technique, you can switch all sorts or different loads with mosfets like this, including unipolar (6-wire) stepper motors. Connect source to 0V, gate to your Arduino and drain to the bottom of your relay coil.

When you drive the Arduino pin high you'll switch on the mosfet. That will allow current to flow from +20V, through the relay coil, through the mosfet to 0V. That's fine. BUT, the coil has inductance which means it produces a voltage to oppose any change in current. So when you turn your mosfet off, the coil will generate as much voltage as needed to keep the current flowing for a short while, while it decays at an acceptable rate. The trouble is, this voltage will damage the mosfet, so we need to give the current an easy decay path. The way to do this is to add a diode (1N4001 will do) across the relay coil, connected so the supply current can't flow through it. When the mosfet turns off, the inductor will continue passing its current briefly, and the diode provides a loop path for it to do so safely.

You may like to add an LED with a 2k2 resistor across the coil too, so you can see the mosfet working for commissioning.

I've updated your sketch to include these. Hope this helps.

Thank you everyone for the help. Every replay was clear and informative and I really appreciate that. I also want to thank Billysugger in particular for the in-depth info and cleaning up my garbage wiring diagram. This is a great forum to be on.