8-bit
Microcontrollers
Application Note
Rev. 2596A-AVR-06/05
AVR443: Sensorbased control of three phase
Brushless DC motor
Features
• Less than 5us response time on Hall sensor output change
• Theoretical maximum of 1600k RPM
• Over-current sensing and stall detection
• Support for closed loop regulation
• UART, TWI and SPI available for communication
1 Introduction
The use of Brushless DC (BLDC) motors is continuously increasing. The reason is
obvious: BLDC motors are having a good weight/size to power ration, have
excellent acceleration performance, requires little or no maintenance and
generates less acoustic and electrical noise than universal (brushed) DC motors.
In a Universal DC motor, brushes control the commutation by physically connecting
the coils at the correct moment. In BLDC motors the commutation is controlled by
electronics. The electronics can either have position sensor inputs that provide
information about when to commutate or use the Back Electromotive Force
generated in the coils. Position sensors are most often used in applications where
the starting torque varies greatly or where a high initial torque is required. Position
sensors are also often used in applications where the motor is used for positioning.
Sensorless BLDC control is often used when the initial torque does not vary much
and where position control is not in focus, e.g. in fans.
This application note described the control of a BLDC motor with Hall effect
position sensors (referred to simply as Hall sensors). The implementation includes
both direction and open loop speed control.
Figure 1-1. ATmega48 controlling a BLDC motor with Hall sensors.
Driver Stage
Commutation Control
Hall Sensor input