go_away

Author Topic: suggestions for a motor driver  (Read 1167 times)

0 Members and 1 Guest are viewing this topic.

Offline Jak24Topic starter

  • Full Member
  • ***
  • Posts: 96
  • Helpful? 0
suggestions for a motor driver
« on: November 12, 2013, 01:24:10 PM »
So I have been using the l298n mostly until now, but I now need to control motors that have a stall current of 10 A I found
a couple of different possible circuits such as :
http://www.bobblick.com/techref/projects/hbridge/hbridge.html
or
http://www.mycontraption.com/high-power-mosfet-motor-driver/
The issue with the first one is that I have limited number of pwm pins that I can use, and I need to control 4 motors
It would be best if I could separately control the speed and the direction,
and also I would like to be as efficient as possible, there I figure mosfets would be better.
Also I'm not sure if braking would be any different using mosfet or transistors.
Any input/advice on what kind of circuit I should use, is much appreciated.

Thanks

Offline Webbot

  • Expert Roboticist
  • Supreme Robot
  • *****
  • Posts: 2,136
  • Helpful? 109
Re: suggestions for a motor driver
« Reply #1 on: November 12, 2013, 03:04:34 PM »
If you can tolerate the cost of buy vs build then the Dimension Engineering Sabertooth range of motor controllers are popular.
If you have a limited number of PWM pins then off-loading the control to another board 'may' be attractive
Webbot Home: http://webbot.org.uk/
WebbotLib online docs: http://webbot.org.uk/WebbotLibDocs
If your in the neighbourhood: http://www.hovinghamspa.co.uk

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: suggestions for a motor driver
« Reply #2 on: November 12, 2013, 06:33:23 PM »
What's your budget? Pololu has lots of controllers that require two pins; one PWM for speed and one high/low for direction, with a variety of voltage/current options. Buy them, drop them in, done!

If you want to build your own, the easiest way to go is to use the lm298 as a gate driver for power MOSFETs. Instead of driving the motor wires, have it drive a complementary pair of power MOSFETS (P-channel and N-channel) on each side. The lm298 and the MOSFET voltages must be the same, so that the driver can get close to the source voltage of the P-channel to turn it off.
Also remember that such a drive situation will be the inverse of what the lm298 itself is driving -- high output will mean that the N-channel will conduct and drive the driven load low.

Finally, a motor controller with serial inputs will require only a single pin from your microcontroller -- if you don't have a spare UART, then something like SoftwareSerial may be good enough. Various controllers are available that take serial inputs, including ones from Pololu, Dimension (Sabretooth,) and Orion (RoboClaw.)

Offline Jak24Topic starter

  • Full Member
  • ***
  • Posts: 96
  • Helpful? 0
Re: suggestions for a motor driver
« Reply #3 on: November 15, 2013, 03:37:57 PM »
If you can tolerate the cost of buy vs build then the Dimension Engineering Sabertooth range of motor controllers are popular.
If you have a limited number of PWM pins then off-loading the control to another board 'may' be attractive

I would much rather save some money and build it myself, and also I would like to correct myself, the peak current is 7.6 A.
Actually, now that I have put more taught into it, I could spare the pwm pins, I would have just enough since I have to control 4 motors.

What's your budget? Pololu has lots of controllers that require two pins; one PWM for speed and one high/low for direction, with a variety of voltage/current options. Buy them, drop them in, done!

If you want to build your own, the easiest way to go is to use the lm298 as a gate driver for power MOSFETs. Instead of driving the motor wires, have it drive a complementary pair of power MOSFETS (P-channel and N-channel) on each side. The lm298 and the MOSFET voltages must be the same, so that the driver can get close to the source voltage of the P-channel to turn it off.
Also remember that such a drive situation will be the inverse of what the lm298 itself is driving -- high output will mean that the N-channel will conduct and drive the driven load low.

Finally, a motor controller with serial inputs will require only a single pin from your microcontroller -- if you don't have a spare UART, then something like SoftwareSerial may be good enough. Various controllers are available that take serial inputs, including ones from Pololu, Dimension (Sabretooth,) and Orion (RoboClaw.)



Could you should me an example circuit for that, also is the gate driver really necessary or if there any advantage doing so.
Optimally I would like to have a circuit with the minimum number of components necessary.
I found two other possible options:
1. http://www.eeweb.com/project/circuit_projects/pwm-dc-motor-controller-using-mosfets-and-ir2110-h-bridge-driver
again I am not sure what advantage would I get using the gate driver.
2. or using another integrated IC :
http://www.st.com/web/en/resource/technical/document/datasheet/CD00002345.pdf
not sure though If it would handle the peak current.
Again your advice is much appreciated.

Thanks

Offline waltr

  • Supreme Robot
  • *****
  • Posts: 1,943
  • Helpful? 98
Re: suggestions for a motor driver
« Reply #4 on: November 15, 2013, 03:53:35 PM »
Microchip has a few App Notes on Motor drivers and H-Bridge control logic.
To use less pins from the processor you just need some logic to set each of the four MOSFET's to the correct states with a PWM and a direction input.
When I build discrete H-Bridges I include this extra logic to ensure a programming mistake does not put the H-Bridge into a 'smoke' state. It also saves pins and makes coding the motor control simpler.

Offline jwatte

  • Supreme Robot
  • *****
  • Posts: 1,343
  • Helpful? 81
Re: suggestions for a motor driver
« Reply #5 on: November 16, 2013, 12:32:38 AM »
To drive power MOSFETs with PWM, you want to use a driver chip (such as the LN298, or IRF2101, or whatever.) Those MOSFETs draw 1A instantaneously while switching, and the max current out of a microcontroller is 2-40 mA (depending on the controller.)
Trying to drive PWM with too weak current will blow the MOSFETs because they will not switch fast enough.

If you don't need PWM, you probably don't need a driver chip.

The circuit is very simple: P-channel MOSFET source to +, N-channel MOSFET source to -, both drains together to the load, and both gates together to the driver chip (such as 298 "output".)
Pull the gates all the way up to + to connect the load to ground; pull the gates all the way down to - to connect the load to +.
Drive the other pair's gates using the second output from the driver chip to make sure they are complementary.

Offline Jak24Topic starter

  • Full Member
  • ***
  • Posts: 96
  • Helpful? 0
Re: suggestions for a motor driver
« Reply #6 on: November 17, 2013, 02:31:56 PM »
So doing some further research , I found the circuit diagram for
http://www.eeweb.com/project/circuit_projects/pwm-dc-motor-controller-using-mosfets-and-ir2110-h-bridge-driver
here:
http://www.circuit-projects.com/fp/motor-driver/schematic.jpg
it seems to me at least, to be a good solution, would you advise me to add anything to this circuit or any protection circuit?
Or can I just implement  it as is.
Microchip has a few App Notes on Motor drivers and H-Bridge control logic.
To use less pins from the processor you just need some logic to set each of the four MOSFET's to the correct states with a PWM and a direction input.
When I build discrete H-Bridges I include this extra logic to ensure a programming mistake does not put the H-Bridge into a 'smoke' state. It also saves pins and makes coding the motor control simpler.

If you could point me at some of those app notes, it would be much appreciated, I can't seem to find them.

Offline waltr

  • Supreme Robot
  • *****
  • Posts: 1,943
  • Helpful? 98
Re: suggestions for a motor driver
« Reply #7 on: November 17, 2013, 03:49:56 PM »
For basics on motor driving (good back ground reading):
AN905, AN898
AN807 uses an TC4469 for simplifying the control logic. In fig 1 note the PWM (from the 555) and the direction signal. Then look at the data sheet for the TC4469 for some additional info.

There are a few other App Note that deal with feed-back and PID control that are interesting.

Those circuits in your links do not help you save processor pins or simplfy the control circuits. They do use MOSFET gate driver chips that are useful to drive larger MOSFETs. Those circuits can be used with the logic in AN807.
« Last Edit: November 17, 2013, 04:02:57 PM by waltr »

Offline Jak24Topic starter

  • Full Member
  • ***
  • Posts: 96
  • Helpful? 0
Re: suggestions for a motor driver
« Reply #8 on: November 20, 2013, 02:27:57 PM »
For basics on motor driving (good back ground reading):
AN905, AN898
AN807 uses an TC4469 for simplifying the control logic. In fig 1 note the PWM (from the 555) and the direction signal. Then look at the data sheet for the TC4469 for some additional info.

There are a few other App Note that deal with feed-back and PID control that are interesting.

Those circuits in your links do not help you save processor pins or simplfy the control circuits. They do use MOSFET gate driver chips that are useful to drive larger MOSFETs. Those circuits can be used with the logic in AN807.

thanks for that, but  for me, as I mentioned, I don't really need to save pins on my processor, so I don't really need extra circuit for that.
Also I would like to be able to control the PWM with software not with a Pot.
So really, I would just need the extra circuitry to have an enable pin, so I can prevent the motor going into a 'smoke' state.
Thanks for your help

 


Get Your Ad Here

data_list