Avayanic Electronics Articles

 

Bipolar Stepper Microstepping Controller (Using the A3977)

 

 

Large DC Motor Controller (Using the TD340I)

 

 

11 RC Servo Controller

 

 

Inductive Load Driving

 

 

 

 

|<<>>|

Inductive Load Driving

In this article I explain how an inductive load driver was implemented around an AT90S2313 microcontroller. The same implementation can be ported to any other microcontroller.

An inductive load is any device which revolves around a coil and a magnetic field to cause actuation. Good examples are solenoids and relays. Motors can also be considered inductive loads, but since we often desire to control speed and direction, they are treated differently. Finally lamps can be considered inductive loads as well. In this later case, the actuation is illumination and not mechanical motion. All of these loads can be connected to the suggested driver and controlled by means of a computer through a serial port, and thanks to the super stepper serial command protocol.

How does it work?

The device to be driven will often require much more power than what a microcontroller or microcomputer will be able to supply. In other words, the 5V or 3.3V a micro unit outputs will hardly be enough to drive any inductive load. Of course the reader can find instances where 5V or 3.3V, as well as the current drive found on most microcontrollers, is enough to drive a particular (and rather small) solenoid or relay. Still, as a thumb rule, you will find most inductive loads to require a driver.
 
LowSideFETDriver

There are tons of drivers out there. I prefer using transistors because they are cheap, easy to interface, and simply put, darn simple. There are High Side Driver chips (AKA Source Drivers), as well as Low Side Driver chips (AKA Sink Drivers) and if the application requires it, I will use them. However, you will find that in most of the occasions a measly FET is all you need.

The picture on the right contains all the components necessary to drive an inductive device. The driver is a FET IRF520 from International Rectifier. This FET transistor can pass a current of up to 9.2 Amps. Said current is made possible thanks to the low RDSon equal to 270mOhms. Want more current? Decrease the RDSon, which is often obtainable by paying more as lower RDSon has to do with a larger FET. And in semicoductor land, size is money!

The PWRx signal comes directly from the microcontroller. A high, enables the FET as the VGS becomes 5V, polarizing the FET into continuous mode. Now current flows from VBBx (battery power), through the load and into the FET. Since the load is on the high side, this style is called Low Side driving, or Sink driving (the driver receives the current from the device, not give it to the device).

A diode? What is this little guy doing here? First of all it is not that small. And in this case it is called a Flywheel diode. Remember we are dealing with inductive loads. Inductors store energy as a magnetic field in the winding. Once the FET is switched OFF (when the PWRx signal from the micro goes LO), the inductor will no longer be receiving current from the source (current path has been broken due to the fact the FET is no longer conducing). Still, the inductor wants to see a current flowing, and I assure you, a current will flow!

In order not to damage the FET (the inductor current will rush into it) a diode is put in place. In other words, the inductor current re-circulates through the diode. Will this last forever? If they were super conductors, maybe. But diodes, as well as the inductor, have resistance. So depending on this resistance is how long it will take to discharge the inductor, which is quite fast depending on the diode. Schotky diodes are often recommended if super duper speed is required.

Notice that how the diode is position, is crucial. It has to be reversed biased with respect to the load. Otherwise, it will become the load! You do not want this.

The System:

The previous schematic shows a single FET driver. Who is to say we can not have more than one? Which is precisely what I did on my SS-PWR10 controller. 10 devices can be controlled with a single microcontroller. You could do more as well, but 10 looked like enough for the time being. Considerations to have are:

  1. Each driver will have a current associated to it. Whatever it is that you will end up driving, make sure the layout can handle the added current (multiple of how many drivers are in place)
  2. Different loads may require different voltages. I allocated for two power banks: VBB1 and VBB2. The idea is to be able to supply 12V loads as well as 24V loads. You could divide the power banks as you see fit.

CLICK on the schematic for a larger picture. CLICK HERE for PDF version download.

 
SS-PWR10 Schematic

The Implementation:

The first step to build this application was to run a prototype. Using one of my AVR208PB boards, I was able to implement the schematic and clean up any issues before creating a layout and getting bare boards manufactured.

 
SS-PWR10 Prototype

 
SS-PWR10 Bare Board

Once the application was up and running and I saw everything was working as it should, I did the layout for which the files can be downloaded HERE. The picture at the left portrays the finished bare board as fabricated on www.4pcb.com.

Here is a picture where the board has been fully assembled.

 
SS-PWR10 Product
 
SS-PWR10 Demo

Nothing like a good mother board to stack these babies! The PBMB allows for up to three edge connectable boards to be inserted on its backplane. A serial interface chips allows communications with the PC. Today, USB is a preferred method for serial communications. A different PBMB with an USB chip such as the TUSB3410 can be used.