We were asked to design a motor speed control circuit using the following components:

15V source -> potentiometer -> LPF -> OpAmp -> ADC -> DAC -> OpAmp -> Motor Driver -> 3V DC Motor (because of its low cost)

I am going to wire this on a breadboard.

Version 2.(With changes as suggested by JIm Dearden

1. First things first, I have a 15 and -15 Source (VCC, VEE)

1.1 (Update) I have two 20k resistors before the pot so I would have finer control over the motor (-3V to +3V)

2. A low pass filter with a cut off frequency of 100Hz (My prof suggests that we use this value just to clear unwanted signals)

3. An OpAmp with unity gain because I need something to drive the transistors from the high-impedance output of the pot.

4. A push-pull amp configuration that consists of the NPN and PNP transistors so that I can make my motor spin either way (i.e., a motor driver).

So my questions are:

  1. Are my resistor/capacitor values practical?

  2. How do I implement the ADC -> DAC part?

  3. Do I need to place a resistor before the pot so that it won't burn out due to high voltage?


  • No PWM.

  • The motor driver circuit can also be an H-Bridge circuit or IC but I think that would be more expensive.

I also need some suggestions on how to improve the circuit.

  • \$\begingroup\$ "Do I need to place a resistor before the pot so that it won't burn out due to high voltage?" - Maybe. It is 10K and you have 30 volts across it. Power is V^2/R so it is dissipating 90 milliwatts. Chances are your potentiometer can handle this power. \$\endgroup\$ – HL-SDK Aug 28 '13 at 16:56
  • \$\begingroup\$ Label your lower voltage rail "0V" rather than -15V, unless it really is a split-rail supply. What's the ADC-DAC part for, is that just to make the exercise harder? \$\endgroup\$ – pjc50 Aug 28 '13 at 17:02
  • \$\begingroup\$ @HL-SDK Oh so it wouldn't hurt if I place one? I just want to play it safe...thanks for your comment! \$\endgroup\$ – Ephemeral Aug 28 '13 at 17:03
  • \$\begingroup\$ @pjc50 I think so but I really don't get the point of adding those two not to mention ADC's and DAC's are costly \$\endgroup\$ – Ephemeral Aug 28 '13 at 17:04
  • 1
    \$\begingroup\$ .. I just can't understand the high voltage power supply and low voltage motor, that's just asking for trouble. The whole thing at 5V would make more sense. Maybe it's there to zap the unwary student trying to debug the thing. \$\endgroup\$ – pjc50 Aug 29 '13 at 14:16

As its only a 3V motor I'd limit the speed controller range by adding a resistor above and below the pot RV1. A 10k resistor either side will limit the output swing to +/- 5V and give you finer control over the speed. Increasing these values will reduce the voltage range even further if required. enter image description here

By the way - I suspect your professor was looking for a closed loop type speed control rather than the open loop type you have. Hence the references to ADC, DAC and low pass filters. This would also require a tachometer (usually some form of pulse/frequency device the output of which would require conversion to an analogue signal - DAC) to measure the speed of the motor shaft.

It might be a good idea to clarify from your professor exactly what is required for this project (open loop or closed loop?) before committing to a final design.

  • \$\begingroup\$ Ooh I updated my schematic by removing the 50 ohm resistor after the push-pull config and then placed 20k resistors on both sides of the bot so that i would have a -3 to +3 voltage drop at my motor He didn't say anything about open/closed loop control...he just wants an adc -> dac in the circuit. \$\endgroup\$ – Ephemeral Aug 29 '13 at 5:38
  • \$\begingroup\$ @Ephemeral How very curious.There is no reason I can see that you actually need an ADC and DAC in an open loop speed control circuit or even the need for an op amp. The output transistors could be directly controlled from the wiper of the potentiometer. \$\endgroup\$ – JIm Dearden Aug 29 '13 at 7:25

If you want a low-pass filter with a 100Hz cutoff frequency, you'll need to make some changes. The 10uF/16K you show (while completely feasible) will have a -3dB cutoff frequency of 1Hz (quite a bit less, actually, for reasons I will describe).

The source impedance looking into the 10K pot wiper (with your 20K resistors at each end) is not zero, and that will add to the 16K resistor. Ignoring wiper resistance, when the pot is in the center, it will be 12.5K. When the pot is at either end it will be 12K. So we can use 12.25K as an approximation.

Let's pick a standard capacitor value (because resistors come in finer steps). We know it should about 1/100 of what we had before, so let's try something nice and even like 100nF.

$$R = \frac{1}{2 \pi f_c C} = 15.9K\Omega $$

Subtract the 12.25K we get from the pot/resistor divider source impedance, and the resistor should be about 3.6K. (The cutoff will change a bit with pot rotation, but not enough to worry about- less than 2% each way).


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