This application note discusses the steps of developing
several controllers for brushless motors. We cover sensored,
sensorless, open loop, and closed loop design.
There is even a controller with independent voltage and
speed controls so you can discover your motor’s characteristics
empirically.
The code in this application note was developed with
the Microchip PIC16F877 PICmicro® Microcontroller, in
conjuction with the In-Circuit Debugger (ICD). This
combination was chosen because the ICD is inexpensive,
and code can be debugged in the prototype hardware
without need for an extra programmer or
emulator. As the design develops, we program the target
device and exercise the code directly from the
MPLAB® environment. The final code can then be
ported to one of the smaller, less expensive,
PICmicro microcontrollers. The porting takes minimal
effort because the instruction set is identical for all
PICmicro 14-bit core devices.
It should also be noted that the code was bench tested
and optimized for a Pittman N2311A011 brushless DC
motor. Other motors were also tested to assure that the
code was generally useful.