0

Basic question about L293D, which I could not find a clear answer by searching the internet.

Still learning with my arduino project. The examples are good at describing how to use things and how to wire them all up. What is missing is why we use some of the components.

I see these are the benefits of using L239D:

• Wide Supply-Voltage Range: 4.5 V to 36 V
• Separate Input-Logic Supply
• Internal ESD Protection
• Thermal Shutdown
• High-Noise-Immunity Inputs
• Functionally Similar to SGS L293 and SGS L293D
• Output Current 1 A Per Channel (600 mA for L293D)
• Peak Output Current 2 A Per Channel (1.2 A for L293D)
• Output Clamp Diodes for Inductive Transient Suppression (L293D)

While these above things sound nice, I don't think any are useful (maybe high noise immunity)

I saw an example of powering a DC motor without L293D by only using the PWM pin on the arduino to specify the voltage (which is controls the speed of the motor)

Is there any good reason to use L293D if I don't need to reverse the motor but only control motor speed?

Michael
  • 103
  • 2
  • See for more details of L293 etc issues https://electronics.stackexchange.com/questions/108686/l293-l298-and-sn754410-h-bridge-drivers-on-low-voltage-power-supply – Chris Stratton Dec 08 '20 at 06:02
  • Before you design ANYTHING define the coil DCR and thus start current before you choose a ON/off or PWM switch for a Motor to ensure the Rce=Vce/Ice or RdsOn is much lower. and if you want to stop faster than frictional coasting you need a half-bridge to shunt the motor. PWM is preferred as the surge current is 10x typ. the rated max operating current. and for braking, you have stored energy from the inertia that must be dissipated. – Tony Stewart EE75 Dec 08 '20 at 15:51

2 Answers2

4

Is there any good reason to use L293D if I don't need to reverse the motor but only control motor speed?

No, there is not. An N-FET low side switch and a catch diode is a much better solution.

Really there's no good reason to use an L293 even if you do need to control the motor direction; FET-based bridges are far better choices, especially in low-voltage projects where the losses of Darlington devices like the L293, L298, etc can represent a fair fraction of the power supply. But once upon a time someone used an L293 in a project, and someone else in need of a solution copied them, and someone else copied them, and to this day many still unwittingly follow in this mistaken tradition.

Chris Stratton
  • 33,282
  • 3
  • 43
  • 89
  • I really like your mini-rant about the deficiencies of Darlington-based switches. For the same reason countless of projects are made with LM7805 in its TO-220 form. Humans love killing moles with ('60-ties era) nuclear bombs – anrieff Dec 08 '20 at 06:40
2

Basically, H-bridge drivers like L293d make it easy for beginners to drive motors without going into in-depth knowledge and numerical calculations as such. The L293d is a 2 motor driver, used widely in hobby projects even if the direction is not a concern. The PWM pin of Arduino UNO(or similar microcontroller ) is not powerful enough to supply the high current demands of motors. Microcontroller GPIOs have a current limit of 40mA, which is not enough for relatively large motors. Instead of using L293d, you may use other BJT, MOSFET based driver which may require you to calculate current values, etc. L293d does all for you, for advanced use, custom circuits are designed. But these are not so efficient in power conversion, and high frequency driving. You can use any driver according to your need. There are plenty of alternatives for these, but you definitely need a driver, or you may damage your microcontroller due to back emf also.

Edit 1:

Microcontroller GPIOs have a current limit of 40mA

This statement is not true for every microcontroller. I meant to say it's for Arduino UNO (Atmega328p). This should be taken care of.

  • 1
    Hi, You said: "*Microcontroller GPIOs have a current limit of 40mA*" IMHO that is a dangerous generalisation. For example, that figure is the *Absolute Maximum* for an individual GPIO pin on an ATmega328P, but it is not a *functional* rating and there are many caveats listed in that device's datasheet if the lower test condition currents are exceeded. For some other MCUs, that 40mA figure is simply wrong e.g. STM32F1xx has Abs Max quoted as 25mA, and functional ratings for most pins are 8mA - unless Vol/Voh are relaxed, then it's a maximum of 20mA. Not 40mA. Beware of generalising. Thanks! – SamGibson Dec 08 '20 at 17:16
  • Sorry for the typo, I meant 40mA only for Atmega328p (Arduino UNO) specifically. I shouldn't have generalized that. – SOUHARDHYA PAUL Dec 09 '20 at 07:57