Microcontroller Based Sequential Timer for DC Motor Control using EMBEDDED


In most of the manufacturing industries, it is required to rotate DC/AC motor forward and reverse alternatively for desired time. First motor rotates forward (clockwise) for some time (say few minutes or even seconds). Then it stops for some time. Again it rotates reverse (anticlockwise) for some time and stops. This process continues. For example, in automated bottle filling plant, the bottles are moving on conveyor belt. When it comes under filler, the filler comes down (that means motor attached with mechanism rotates forward) then it fills the bottle (that means motor stops) again it goes up (motor rotates reverse) and stops until next bottle arrives. For moving filler up and down the time of rotating motor forward and reverse is calibrated and fixed. Also the motor stop time is calibrated based on time required to fill the bottle and the next bottle arrives.
Such motion of motor is controlled by sequential timer. Sequential timer circuit operates different processes one after another - means one process ends and it triggers next. The last process triggers first process when it ends. And thus the cycle continues. These sequence timers are micro controller based multi-functional and programmable. So operation time of each process can be programmed.
Here the given project demonstrates one such sequential timer controlled DC motor in which the forward rotation time, reverse rotation time and stop time for motor can be programmed. And then when process starts the motor starts rotating forward and reverse as per programmed time intervals. Some of the features of this project are
·         8-bit micro controller based fully programmable
·         Process time can be set from 0 to 60 seconds
·         LCD panel for display
·         Timings can be set for 4 different process
·         Can control 24 V DC motor or 230 V AC motor
·         Push buttons for user interface
·         User selectable single cycle or continuous operation
·         LEDs for indications
Let us first understand system block diagram
System block diagram
Micro-controller 89S52: - It controls entire system by performing following tasks
  • Accepts user inputs from push buttons to program DC motor running and stop timings
  • Runs DC motor forward and reverse through driver circuit
  • Shows different indication on indicators
  • Displays different messages on LCD for time setting. It also displays remaining time for ongoing process
LED Indicators: - they indicates motor is running forward or reverse, motor is stop etc
LCD Panel: - it is used to display text, messages, time settings, time count down etc
Relay based motor driving circuit: - the motor runs – stops and it is rotated forward and reverse through relays. The relay contact connections are made such a way that as they switched ON/OFF the motor runs or stops and even alters its direction.

Push buttons: - the circuit requires only 4 push buttons for different settings and user inputs
Sr no
Button name
To start rotating motor
Increase time
Increase time set by 1 sec – up to 60 sec
Decrease time
Decrease time set by 1 sec – up to 1 sec
Enter set time

 Circuit Diagram

Next Post »