Go Down

Topic: Foward and reverse op amp motor control.... (Read 2853 times) previous topic - next topic


Hello all I'm trying to gain control of a 12V dc motor. I have attached the schematic for my circuit. Can anyone explain to me how the -12 POT offsets the output of the op AMP. I have the Arduino writing out a 128 or 0.0 volts then I offset the -12 pot to give me an output 0.0 after this I was hoping with the Arduino D/A 5 volts for the Arduino I could get +2.5 0 and -2.5. I am only getting +.05 to -.05 . I have no motor movement but current flow to the transistors.


Jul 28, 2014, 12:30 am Last Edit: Jul 28, 2014, 12:52 am by wes000000 Reason: 1
Wouldn't an H-Bridge be the proper way to control a DC motor that you need to change direction of?

"I have not failed. I've just found 10,000 ways that won't work." - Thomas A. Edison


I am so not concerned about the direction of the motor at the moment I have had it firing from the dual transistors. What I am more confused with is the OP-AMP output not being altered by adjusting the -12 POT input. The op amp output is just flooring to 11 volts. I have set it with a gain of 2.2 and am not seeing any speed control, nor is the motor feedback creating a increase through the amp as I stall the motor. The NON inverting input is set to ground and the inverting input is 0-5 PWM through a 1k resistor, -12 through a pot , and the 2.2k feedback resistor.


Both post are me,forgot my account was signed in on a different computer?


What you have attempted to create is a Class B amplifier, also known as a "push-pull" amp. (http://cnx.org/content/m32262/latest/)

Two problems with the one you've made:

1) Though you've helpfully labelled your transistors as NPN or PNP, you haven't labelled which side is the emitter. This is an important distinction. Please update your schematic to include this.

2) You've got your PNP and NPN in the wrong place. As in the link above, the NPN's collector should be connected to the positive supply, and the PNP's collector connected to the negative. The emitters of both should be connected to the load.

Quite frankly, given the way you've got those transistors connected, I'm surprised you haven't destroyed them through overcurrent damage.
Hackaday: https://hackaday.io/MarkRD
Advanced C++ Techniques: https://forum.arduino.cc/index.php?topic=493075.0


I used voltage regulators in the power supply
It's definitely limiting the current to the transistors as they are hot enough to boil water :/ . I've tested each one separately and they are working. In my schematic I have the collector of the PNP tied to +12 with a 100 ohm resistor the base is connected to the op amp and the emitter tied to the collector of the NPN,the base is shared to the op amp output and the emitter ties to -12 through a 100 ohm reistor


The regulators are getting toasty? I'm not surprised. There's another thing wrong with your schematic that I forgot to mention.

That pair of diodes on the right, next to the motor, they're creating a near dead short between your positive and negative supplies.

Youre transistors are definitely wired the wrong way. Hook them up according to the diagram I linked, and get rid of the right set of diodes connected to the motor (keep the left set).
Hackaday: https://hackaday.io/MarkRD
Advanced C++ Techniques: https://forum.arduino.cc/index.php?topic=493075.0


:) thank you. Id like to have an LED that indicated direction of the motor...should I switch the leads around


So those diodes are LEDs? Should have paid more attention to the diagram, I thought they were rectifier diodes.

if you want to indicate the direction of the motor, you can use two different color LEDs in antiparallel in series with a resistor, with the whole assembly in parallel with the motor. When the motor is running one way, one LED is on. When the motor runs the other way, the polarity reverses and the other LED turns on.
Hackaday: https://hackaday.io/MarkRD
Advanced C++ Techniques: https://forum.arduino.cc/index.php?topic=493075.0


Rotate, crop, and resize. I can see the quantum vacuum foam in your image.
Steve Greenfield AE7HD
Drawing Schematics: tinyurl.com/23mo9pf - tinyurl.com/o97ysyx - tinyurl.com/q7uqnvn
Multitasking: forum.arduino.cc/index.php?topic=223286.0
gammon.com.au/blink - gammon.com.au/serial - gammon.com.au/interrupts


You would need a +12V/0/-12V  supply,   for your scheme to work.


Or a virtual ground for the opamp.

LEDs need series resistors to limit the current.

But all of this is bogus, you never control a motor this way (even a loudspeaker
these days is driven with a class D output stage, which is just a specialised H-bridge).

You use PWM and H-bridge to drive a DC motor.  Far far superior in terms of power
efficiency, and fewer components and more stable.

Remember a class-B output stage consumes much more power than the load, whereas
an H-bridge consumes much less power than the load.
[ I will NOT respond to personal messages, I WILL delete them, use the forum please ]

Go Up