Fork me on GitHub

Project Notes

#573 555 PWM Motor Control

Testing small DC motor control with a 555 time PWM signal

Build

Here’s a quick demo..

clip

Notes

Pulse-width Modulation (PWM) is a common method for controlling the speed of DC motors.

The PWM duty cycle controls the nett power being provided to the motor, but by maintaining a constant “on” voltage, the torque is not greatly affected by speed.

The PWM frequency is not so important, however there will be a “sweet spot” for a particular motor:

  • too high, and low speed control can be affected (not enough power delivered in each “on” cycle to move the motor)
  • too low, and vibration and “chugging” can be a problem
  • need to avoid resonant frequencies of the mechanical assembly

A 555 timer makes a simple controller. Here I’ve used a “diode-steered” variable duty cycle configuration, with PWM duty cycle controlled with a 100kΩ variable resistor.

The motor I’m testing with is a small DC motor, with a fly-back diode to dissipate the voltage spike as the motor load is switched.

Construction

Breadboard

Schematic

Breadboard Build

Credits and References

About LEAP#573 555 TimerMotors
Project Source on GitHub Return to the LEAP Catalog

LEAP is just my personal collection of electronics projects - usually involving an Arduino or other microprocessor in one way or another. Some are full-blown projects, while many are trivial breadboard experiments, intended to learn and explore something interesting.

Projects are often inspired by things found wild on the net, or ideas from the many great electronics podcasts and YouTube channels. Feel free to borrow liberally, and if you spot any issues do let me know (or send a PR!). See the individual projects for credits where due.

For a while I have also included various scale modelling projects here too, but I've now split those off into a new repository. Check out LittleModelArt if you are looking for the modelling projects!

Project Gallery Notebook LittleCodingKata LittleModelArt More on my blog