Electronic Design

Control circuit keeps dc motor running at constant speed

The aim of the circuit presented here is to keep the permanent magnet dc motor running at a constant speed, set externally. To do this, the current through, and the voltage across, the brushes of the motor are monitored. The voltage consists of two components: First, a back-EMF generated by the windings of the armature moving through the magnetic field of the motor. Secondly, there’s a voltage caused by the current passing through the real resistance of the windings and the brushes.

The current through the motor armature is caused to pass through a resistance (rm/10) that is, for example, approximately 0.1 as large as the ohmic resistance of the motor. The voltage across this resistance is then amplified by a factor of approximately 10, and the resulting voltage is added to a second voltage in a differential amplifier. This second voltage is the voltage as measured across the two brushes of the motor.

The output of this amplifier is compared to the reference voltage (provided externally to the circuit, which determines the speed of rotation of the motor) in another differential amplifier. The output difference is used to control the output of a power output stage that drives the motor. In this way, the reference voltage is compared to the back-EMF and the motor is caused to run at a constant speed set by the reference voltage. To soften the switch from driving to not driving, a sawtooth waveform is superimposed on the reference voltage.

In the schematic, the voltage across the motor is measured (amp 12), multiplied by minus one and fed to one input of a difference amplifier (amp 21) At the same time, the voltage across resistor rm/10 is measured and multiplied by approximately minus ten (amp 11). This output is fed to the other input of amp 21.

The exact factor by which the voltage across rm/10 has to be multiplied can be set on the pot “TWEAK rm”. To accomplish this, the motor is disconnected from the output stage and fed through a suitable resistor, say 330 O, and then stalled. “TWEAK rm” is adjusted until the output of amp 21 is zero (it may be necessary to use a compromise setting if the value of the resistance isn’t the same at all positions of the rotor).

The output of amp 21 is then equal to the back-EMF of the motor (reconnect the motor to the output stage and adjust the gain and stiffness controls to suit your application). This output is fed into one input of a differential amplifier (amp 31) and compared to a reference voltage (provided externally). The output of this amplifier is the error signal and is used to drive the output stage (amp 32, BC337, and BC327) to keep the motor running at the speed at which the back-EMF equals the reference voltage.

The reference voltage includes a small sawtooth component to provide a softer transition from driving to not driving. The size of this component is controlled by the potentiometer labeled “Stiffness Adj.” and comes from the oscillator (amp 22), whose frequency is controlled by the pot labeled “Frequency Adj.”

The three op amps employed here were from a quad op amp CA0358E; the motor is 440-127. Both are from Radio Shack. But the circuit will work with almost any op amp and dc motor, although the output stage would need more powerful output transistors if a bigger motor is used.

See associated figure

Related Articles:

Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.