L293D based DC Motor Driver Interfacing with ATmega16 in PWM Mode
DC Motor Driver is a L293D based motor driver interface board from ABLab Solutions. The main aim of interfacing DC motor with any microcontroller is to control the direction and speed of a DC motor. But due to high voltage and current requirement of DC motors, it cannot be interfaced directly with microcontrollers. For to interface DC motor with any microcontroller, we need a motor driver. Motor driver is basically a current amplifier which takes a low-current signal from the microcontroller and gives out a proportionally higher current signal which can control and drive a motor. L293D is a dual H-Bridge motor driver IC. With one L293D IC we can interface two DC motors which can be controlled in both clockwise and counter clockwise direction.
In this project, we will learn How to interface a L293D based DC Motor Driver in PWM mode with AVR ATmega16 microcontroller. The PWM mode is used to control the speed of DC motors. Higher the duty cycle of the PWM signal higher is the speed of DC motor. The ATmega16 microcontroller will generate PWM signals of different duty cycle using its Timer Counter 0 and Timer Counter 2 and will give the PWM signal to the two enable pins of the L293D. Here, we will use the DC Motor Driver to control the speed of two DC motor mounted on a Robot. In this way, the microcontroller will run the robot in forward direction with different speeds.
|AVR Trainer Board-100 with ATmega16||1pc|
|AVR USB Programmer||1pc|
|12V, 1A DC SMPS Adaptor||1pc|
|DC Motor Driver||1pc|
|Robot V 4.1||1pc|
|1 to 1 Connector-Female to Female||3pc|
|10 to 10 FRC Female to Female Connector||2pc|
The step-by-step connection guide for L293D based DC Motor Driver Interfacing with ATmega16 in PWM Mode is as follows
Steps - 1 ( 0f 9 )
Insert the DC Pin of 12V, 1A DC Adapter to the DC Socket of AVR Trainer Board-100.
Steps - 2 ( 0f 9 )
Connect PortC header of AVR Trainer Board-100 with Input header of DC Motor Driver with a 10 to 10 FRC Female Connector.
Steps - 3 ( 0f 9 )
Connect the PWM1, PWM2 & 12V pins of PWM & Motor Voltage header of DC Motor Driver with the PB3, PD7 and 12V pins of AVR Trainer Board-100 with 1 to 1 Connectors respectively.
Steps - 4 ( 0f 9 )
Connect the Robot connector to the Output header of the DC Motor Driver.
Steps - 5 ( 0f 9 )
Switch On the Mode Switch of DC Motor Driver.
Steps - 6 ( 0f 9 )
Connect the ISP header of AVR Trainer Board-100 with AVR USB Programmer header of AVR USB Programmer with a 10 to 10 FRC Female Connector.
Steps - 7 ( 0f 9 )
Connect the AVR USB Programmer to the PC/Laptop's USB Port directly or with the help of USB AM-FM Cable.
Steps - 8 ( 0f 9 )
Switch on the power with the help of Power Switch of AVR Trainer Board-100.
Steps - 9 ( 0f 9 )
Download the L293D based DC Motor Driver Interfacing with ATmega16 in PWM Mode Hex file to AVR Trainer Board-100 with the help of SinaProg Hex downloader and AVR USB Programmer.