I need to set up a system with a DC motor that will cause it to run for a small period of time, then stop, and then be able to repeat this until disconnected from its power source.

Any ideas of how I could achieve this would be greatly appreciated!

  • $\begingroup$ Welcome to Engineering SE. Can you add some details as to specification of the DC motor you plan to use? Also some explanation on application might be helpful too. $\endgroup$ Feb 29, 2016 at 13:19
  • $\begingroup$ You should consider using a stepper motor instead of a DC motor. $\endgroup$ Feb 29, 2016 at 13:44
  • $\begingroup$ The purpose of this is to spin a propeller underwater to create a "bobbing" motion. The little robot it would be attached to would sink down in a body of water for a time as the propeller is off, and as the motor comes on, it will be pushed/pulled closer to the surface. $\endgroup$
    – user5244
    Feb 29, 2016 at 20:27
  • $\begingroup$ @user5244, I suggest that you update question with the above infomation in comment. Also do have any idea with regard to power requirements $\endgroup$ Mar 1, 2016 at 0:44

2 Answers 2


There are 3 obvious solutions

  1. mechanical : have a second, continuously running motor connected to either a cam or a rotary contact switch which makes/breaks the power circuit. This sort of approach is simple and intuitive and tends to be good for prototyping but may be expensive and less reliable for production versions. It is analogous to the valves in a 4 stroke IC engine.
  2. analogue electronics : a timer circuit can be constructed using basic components like capacitors, diodes and transistors to drive a power relay/transistor. There are lots of possible ways to achieve this but a web search for 'timer circuit' will yield lots of results and a bit of research should give you a design that you can assemble without needing a lot of knowledge of electronics.
  3. Digital : a chip based system will give you the most flexibility to adjust the timings and set different on/off periods either via software or by potentiometer input. This may be the most versatile solution but requires a bit more knowledge to implement and may be overkill if you just want a simple on/off timer.

There isn't much point in giving too much detail here as your best bet is to have a look a the various options in detail for yourself and see what make the most sense for your particular application.

A possible complication is that motors are inductive loads so rapidly switching them can potentially produce power spikes in your circuit how much of an issue this is depends on the type and power of the motor.

A further option is to use a stepper motor and digital control this allows you to use digital logic to turn the motor by a defined number of steps (angular increments), this may be preferable if you are looking for high angular precision rather than purely time based inputs.


One possible option is to use a micro-controller with an H-bridge driver. The micro controller can command when to switch the motor on and off. Also, using this scheme the motor can be switched on and off as well as rotated clockwise (CW) or counter-clockwise (CCW). Also most H-bridge drivers can command to shut off power, which can be significant in an underwater application. With a micro controller you could setup a timer to periodically repeat the process. Also most H-Bridge drivers have built in circuitry to handle back EMF or power spikes. I think a DC motor might be the best choice per your comments.



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.