Home » Electronic Speed Controller » 2 Simple Bidirectional Motor Controller Circuits Explored
2 Simple Bidirectional Motor Controller Circuits Explored

2 Simple Bidirectional Motor Controller Circuits Explored

The first article below discusses a Full bridge or H bridge based Bidirectional motor controller circuit using the 4 opamps from the IC LM324. In the second artilce we learn about a high torque bidirectional motor controller circuit using IC 556


Generally, mechanical switches are accustomed to adjust the direction of rotation of a DC motor. Adjusting the polarity of the utilized voltage and the motor rotates the opposite direction!

On one hand this may have the drawback that a DPDT switch requires to be added to alter the polarity of the voltage, but we have deal with only a switch which makes the procedure quite easy.

However DPDT may have one serious issue, it is not recommended that you abruptly invert the voltage over a DC motor during its rotational motion. This may result in a current spike, which could possibly burn off the associated speed controller.

Furthermore, any kind of mechanical stress can also bring about similar issues. This circuit beats these complications easily. The direction and speed is manipulated with the help of a solitary potentiometer. Rotating the pot in a specified direction causes the motor to begin rotating.

Switching the pot in the opposite direction enables the motor to rotate in the reverse motion. The middle position on the pot switches OFF the motor, ensuring that the motor slows down first and then stops before an effort is made to change the direction is made .

Technical Specifications

Voltage: The circuit and motor make use of the common power supply. This implies that because the highest working voltage of the LM324 is 32VDC this likewise becomes the maximum voltage accessible to operate the motor.

Current: The IRFZ44 MOSFET is designed for 49A; the IRF4905 will be able to handle 74A. Nevertheless the PCB tracks that run from the MOSFET pins to the screw terminal block can just manage about 5A. This could be improved by soldering copper wire pieces over the PCB tracks.

In that case make sure that the MOSFETs do not become too hot - if they do then larger heatsinks will be needed to be mounted on these devices.

LM324 Pinouts


Fundamentally, you will find 3 ways to adjust the speed of DC motors:

1. By using mechanized gears to attain the ideal acceleration: This approach is often over and above the convenience of the majority of enthusiast practicing in home workshops.

2. Decreasing the motor voltage through a series resistor. This can be certainly inefficient (power will be dissipated in resistor) and also result in the reduction in torque.

The current consumed by the motor also heightens as the load on the motor increases. Increased current means a more voltage drop over the series resistor and hence a dropped voltage for the motor.

The motor then makes an effort pull even higher amount of current, causing the motor to stall.

3. By applying the entire supply voltage to the motor in short pulses: This method gets rid of the series dropping effect. This is referred to as pulse width modulation (PWM) and is the strategy found in this circuit. Quick pulses allows the motor to operate slowly; extended pulses allow the motor run more rapidly.

HOW IT FUNCTIONS (refer to schematic)

The circuit could be divided in four stages:

1. Motor control – IC1:A
2. Triangle wave generator – IC1:B
3. Voltage comparators – IC1:C and D
4. Motor drive – Q3-6

Let us get started with the motor driver stage, centered around MOSFETs Q3-6. Only a couple of these MOSFETs remain in the activated state at any instant of time. While Q3 and Q6 are ON current moves through the motor and causes it to rotate in a single direction.

As soon as Q4 and Q5 are in operating condition the current circulation is reversed and the motor starts rotating in the opposite direction. IC1:C and IC1:D deal with which MOSFETs are switched on.

Opamps IC1:C and IC1:D are wired as voltage comparators. The reference voltage for these opamps are produced by the resistor voltage divider of R6, R7 and R8.

Observe that the reference voltage for IC1:D is attached tothe ‘+’ input but for IC1:C it is coupled to the ‘-‘ input.

This means  IC1:D is activated with a voltage higher than its reference whereas IC1:C is prompted with a voltage lower than its reference. Opamp IC1:B is configured as a triangle wave generator and supplies the activation signal to  the relevant voltage comparators.

The frequency is roughly the inverse of the time constant of R5 and C1 – 270Hz for the values employed.

Decreasing R5 or C1 increases the frequency; increasing either of these is going to reduce the frequency.The peak-to-peak output level of the triangle wave is much less than the difference between the two voltage references.

It is therefore extremely hard for both comparators to be activated at the same time. Or else all 4 MOSFETs would begin conducting, leading to a short circuit and ruining all of them.

The triangle waveform is structured around a DC offset voltage. Increasing or decreasing the offset voltage varies the pulse position of the triangle wave appropriately.

Switching the triangle wave upward enables comparator IC1:D to activate; decreasing it results in comparator IC1:C to activate. When the voltage level of the triangle wave is in the middle of the two voltage references then none of the comparators are induced.The DC offset voltage is regulated by the potentiometer P1 via IC1:A, that is designed as a voltage follower.

This gives a low output impedance voltage source,allowing the DC offset voltage to be less vulnerable to the loading impact of IC1:B.

As the ‘pot’ is switched the DC offset voltage begins varying, either up or down based on the direction the pot is flipped.Diode D3 presents reverse polarity safeguard for the controller.

Resistor R15 and capacitor C2 are a simple low pass filter. This is meant to clean any voltage spikes brought on by the MOSFETs as they turn ON supply power to the motor.

Parts List

2) Bidirectional Motor Control using IC 556

The speed and bidirectional control for DC motors is relatively simple to implement. For independently energized motors, the speed is, in principle, a linear function of the supply voltage Motors with a permanent magnet are a sub-category of independently energized motors, and they are often used in toys and models.

In this circuit, the motor supply voltage is varied by means of pulse width modulation (PWM) which ensures good efficiency as well as a relatively high torque at low motor speeds. A single control voltage he- tween 0 and +10 V enables the motor speed to be reversed and varied from nought to maximum in both directions.

Astable multivibrator IC is set up as an 80 Hz oscillator, and determines the frequency of the PWM signal. Current source T1 charges Ca. The sawtooth voltage across this capacitor is compared with the control voltage in 1C2, which outputs the PWM signal to buffer N1-Na or NPN1. The darlington-based motor driver is a bridge circuit capable of driving loads up to 4 Amps, provided the run-in current stays below 5 Amps, and sufficient cooling is provided for the power transistors T1 -Ts. Diodes D1, D5 afford protection against inductive surges from the motor Switch S1 makes it possible to reverse the motor direction instantly.

IC 556 bidirectional motor speed control

Prototype Images


About the Author

I am an electronic engineer (dipIETE ), hobbyist, inventor, schematic/PCB designer, manufacturer. I am also the founder of the website: https://www.homemade-circuits.com/, where I love sharing my innovative circuit ideas and tutorials. If you have any circuit related query, you may interact through comments, I'll be most happy to help!

4 thoughts on “2 Simple Bidirectional Motor Controller Circuits Explored”

  1. ok just ignor the acuracy . i need to just move a my 3kg blade by motor with aprox 6000rpm with higest torque . i am lil confuse of using moters.plese help me .and also for driver.
    also suggest me 2 moter to drive a 50kg robot with speed.

    • understood, but still since 50 amp is huge a BLDC will work more efficiently, and will be very compact. Induction motors can be heavy huge and not so efficient.

  2. swag.i want h bridge circuit whixh is capable of 50 amp with 12v to 36v with highly accurate and highly robust. i want this circuit for my robo war . and i also need your suggestion about wepon motor for robo war which i must buy . i want highest rpm with hightest torque. please suggest.

Leave a Comment

Do NOT follow this link or you will be banned from the site!