First post here, it's probably a very easy fix for most of you here. Right now I'm trying to use a digital potentiometer in a voltage divider to step down a voltage from 5v to a range of 3 - 1.5 volts that will go into a set of 4 DC vibrational motors. The resistance of the digipot is in the range 10Kohm - 1Kohm while the motors are only about 15ohms.

In order to supply enough current I put a voltage buffer in front of the motor however that still doesn't fix my problem. I'm able to control the output voltage of the buffer well without the motor attached in the 3 - 1.5 volt range however as soon as I plug in the motor the voltage drops to 0.420 V (according to an oscilloscope).

I'm using a UA741 for my op amp and TIP120 as well in the circuit. Power is being supplied from a simple DC power supply, I plan to eventually use a battery to supply power. I've attached a drawing of the schematic and links to the data sheets below.

TIP120 NPN Transistor:http://www.bc-robotics.com/datasheets/Tip-120.pdf

UA741 OP amp: http://www.ti.com/lit/ds/symlink/ua741.pdf

Motor: http://www.nfpmotor.com/spec/encapsulated-and-enclosed-vibration-motors/Encapsulated-vibration-motor-NFP-E0724.pdfenter image description here

  • 2
    \$\begingroup\$ What is the output current of your op amp? It is likely not enough to drive your motor. You might consider using a PWM circuit to drive your motor. It is generally not a good idea to drive a motor directly with an op amp. \$\endgroup\$
    – crj11
    Mar 8, 2018 at 22:41
  • 2
    \$\begingroup\$ I can't find it in the data sheet but that makes sense. I just looked up what a PWM, looks like that's exactly what I need. \$\endgroup\$ Mar 8, 2018 at 22:56

2 Answers 2


You have a few problems.

  1. The 741 is a 40 year-old design. It's output can't swing close to the negative rail. You need something better.
  2. The motor's coil resistance is only 15 Ω and requires 60 to 100 mA and 150 mA when stalled - and possibly on start.
  3. Table 6.5 of the 741 datasheet states that the short-circuit current of the op-amp is 25 mA. It can't drive your motor.


simulate this circuit – Schematic created using CircuitLab

Figure 1. A more practical circuit.

The motor is 15 Ω and needs about 1.5 V which is 10 Ω/V so R1 would need to be about 30 Ω to drop the 5 V supply down by 3 V.

  • \$\begingroup\$ Good man. Fixed. \$\endgroup\$
    – Transistor
    Mar 9, 2018 at 10:46

As Transistor said, Op-AMP 741 cannot deliver that much current according to the datasheet you have given. Instead you can use PWM concept to drive the Motor using Arduino. Circuit is here.

enter image description here


  R1 = (5V - 1.4V)/1mA 
     = 3.6k ohm. 

Using 2.2k ohm is also recommended. Here 1 mA current is taken as minimum value base current. But really for the circuit of yours, you only need 100uA (DC current gain is 1000 for TIP12x). Choosing little more current at base won't affect the motor at collector since, Motor's internal resistance will limit the current and draw only as much as it needs.
R2 is chosen for limiting current go to the load externally for safer side. It is chosen as follows.

R2 = (5v - 1.5V)/100 mA = 35 ohm which is equal to ~33 ohm. 

1N5819 is used as a flyback diode since the load is inductive.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.