| More Design Ideas (…Continued
from home page) |
Adding Power Factor Correction?
Power Factor Correction (PFC) is increasing mandated for line powered motor
control applications. Now you can execute the power factor correction algorithm on the same device
used for motor control. However, the power factor correction algorithm loop frequency is typically
significantly higher than the loop frequency required for motor control. To gain an economic edge by
combining motor control and PFC algorithms on one chip, two PWMs with separate time bases is mandatory.
The following devices offer these specialized PWMs with separate time bases with more on the way!
dsPIC33FJ12MC201 (20
pins, 12KB Flash, 4ch + 2 ch PWM)
dsPIC33FJ12MC202 (28
pins, 12KB Flash, 6ch + 2 ch PWM)
dsPIC33FJ16MC304 (44
pins, 16KB Flash, 6ch + 2 ch PWM)
dsPIC33FJ32MC202 (28
pins, 32KB Flash, 6ch + 2 ch PWM)
dsPIC33FJ32MC204 (44
pins, 32KB Flash, 6ch + 2 ch PWM)
The following Application Note includes free source code and can guide
you through the process of adding power factor to your motor control application: AN1106
- AN1106, Power Factor Correction in Power Conversion Applications Using the dsPIC® DSC
Back to Top
Reducing Noise?
Driving motors with trapezoidal patterns is a common solution for many
motor control solutions. Presenting a sinusoidal drive waveform to the motor can help reduce electrical
and audible noise generated by electric motors.
The following application notes include free source code and offer illustrative
guidance how it is applied:
AN1017
- Sinusoidal Control of PMSM Motors with dsPIC30F DSC
This application note uses a 28-pin dsPIC30F device and the PICDEM-MCLV
Development Board to control a PMSM with hall effect sensors. The application also features a speed
control loop that allows 4-quadrant torque control.
AN1078
- Sensorless Field Oriented Control of PMSM Motors using dsPIC30F or dsPIC33F Digital Signal Controllers This
application is similar to AN1017, but eliminates the need for rotor position feedback sensors. An
estimator algorithm calculates the position of the rotor from measured voltages and currents.
Back to Top
Removing Sensors from Motors?
This advanced topic is described in several application notes, complete
with free source code.
AN901
- Using the dsPIC30F & dsPIC33F DSCs for Sensorless BLDC Control
This application note describes a sensorless BLDC control application using
the BEMF detection method. The dsPIC® ADC is used to detect the BEMF voltage. The source code
has parameters to adjust the open loop startup sequence and also the closed loop operation of the motor.
A GUI is available in the MPLAB® IDE to help set the parameters. See GS005 for
more information about the GUI. The AN901 application is written in C language for a dsPIC30F6010 or
a dsPIC30F6010A device.
AN992
- Sensorless BLDC Motor Control Using dsPIC30F2010
See description of AN901 except the software is retargeted for the dsPIC30F2010
AN1083
- Sensorless BLDC Control with Back-EMF Filtering
This application note uses the dsPIC® to operate a 3-phase BLDC motor
without position sensors. The application samples the BEMF signals using the high-speed ADC converter
and uses DSP filtering to pre-process the signals. This filtering minimizes external components. This
application is optimized for high speed motor operation.
AN1078
- Sensorless Field Oriented Control of PMSM Motors using dsPIC30F or dsPIC33F Digital Signal Controllers This
application note describes a software solution that controls a brushless permanent magnet motor without
the use of rotor position sensors. The motor voltages and currents are used to estimate the position
of the rotor.
AN1162A – Sensorless
Field Oriented Control (FOC) of an AC Induction Motor
This software solution allows closed-loop control of an ACIM without mechanical
sensors.
AN1160 – Sensorless
BLDC Control with Back-EMF Filtering Using a Majority Function
This software solution for BLDC motors provides easy sensorless tuning
and good low speed performance.
Back to Top
Considering Field Oriented Control?
Complex sensorless Field-oriented control algorithms place high demand
on the computing engine.
This has required a more expensive control solution which has hindered
the growth of this superior control strategy. Now Digital Signal Controllers have added capability
such as single cycle MAC with saturation capability to reduce the MIPS needed to execute field oriented
control while reducing the cost of control to a point attractive for high volume consumer applications.
The following resources further describe and provide free source code to assist you with your development.
AN1078
- Sensorless Field Oriented Control of PMSM Motors using dsPIC30F or dsPIC33F Digital Signal Controllers This
application note describes a software solution that controls a brushless permanent magnet motor without
the use of rotor position sensors. The motor voltages and currents are used to estimate the position
of the rotor.
AN1162A – Sensorless
Field Oriented Control (FOC) of an AC Induction Motor
This software solution allows closed-loop control of an ACIM without mechanical
sensors.
Back to Top
Considering the move to Brushless Motors?
If this is the case, we have several application notes which may be of
assistance. They come complete with source code.
AN885 – Brushless
DC Motor Fundamentals
If you are not familiar with how a brushless DC motor works, this is a
good place to start.
Sensor-based solutions:
AN957
- Sensored BLDC Motor Control Using dsPIC30F2010
This application note describes a BLDC application using hall effect sensors
for motor position feedback. The application source code is written in C and optimized for the dsPIC30F2010
and other 28-pin dsPIC® variants.
Sensor-based applications can also be served with our 8-bit MCUs equipped
with Motor Control PWMs.
For more information see All
Brushless DC motor Application Notes or visit http://www.microchip.com/motor
“Sensorless” solutions
AN901
- Using the dsPIC30F & dsPIC33F DSCs for Sensorless BLDC Control
This application note describes a sensorless BLDC control application using
the BEMF detection method. The dsPIC® ADC is used to detect the BEMF voltage. The source code
has parameters to adjust the open loop startup sequence and also the closed loop operation of the motor.
A GUI is available in the MPLAB® IDE to help set the parameters. See GS005 for
more information about the GUI. The AN901 application is written in C language for a dsPIC30F6010 or
a dsPIC30F6010A device.
AN992
- Sensorless BLDC Motor Control Using dsPIC30F2010
See description of AN901 except the software is retargeted for the dsPIC30F2010
AN1083
- Sensorless BLDC Control with Back-EMF Filtering
This application note uses the dsPIC® to operate a 3-phase BLDC motor
without position sensors. The application samples the BEMF signals using the high-speed ADC converter
and uses DSP filtering to pre-process the signals. This filtering minimizes external components. This
application is optimized for high speed motor operation.
AN1160 – Sensorless
BLDC Control with Back-EMF Filtering Using a Majority Function
This software solution for BLDC motors provides easy sensorless tuning
and good low speed performance.
Back to Top
Considering an Integrated Motor Control Solution?
If you application
requires the combination a motor, drive electronics and I/O, often physical size can be a major factor.
All of our 28-pin Motor Control Digital Signal controllers are offered in a 6x6mm QFN package. This
is less than half the board area of 7x7 QFP solutions which typically have a board footprint of 9x9.

Back to Top
How does Migration Capability, Many Product
Options, and Architecture Impact Cost reduction?
Let’s take them one at a time. Microchip has the industry’s
largest portfolio of Motor control products with 36 distinct products (not including package and temperature
variations) in production or sampling. Having the largest selection increases the possibility of finding
an optimum product resulting in an optimum system price for your design.
Microchip’s 16-bit products were developed with compatibility in
mind. Devices in the same package size typically have the same pin-out which permits development in
a larger device followed by optimization to try to achieve a lower priced solution… without changing
the board. All devices use the same development environment so development time and efficiency is optimized,
reducing development cost. All DSCs have the same instruction set which optimizes the possibility of
reuse on subsequent designs. All DSCs have the same base peripherals which can reduce development time
and cost on subsequent designs.
Microchip’s Architecture was actually proposed by a team dominated
by compiler writers. It is no wonder that for applications written in C, Microchip’s Digital
Signal Controllers have best in class DSC code size. This will potentially permit the next tier down
in flash size to reduce system cost.
Back to Top
Remove the crystal to save money?
Removing the crystal is an option with Microchip’s dsPIC® DSCs.
The usual problem is that an internal oscillator has insufficient accuracy for UART data rate specifications.
Microchip “trims” the internar RC at the factory on DSCs to achieve a 1% tolerance. For
many applications crystals can now be removed to save system cost.
Back to Top
Wish to Improve loop performance?
This topic is primarily application-specific, but you may find this applicable.
At times the input to the controller is via the A/D converter. Many motor
control applications achieve optimal loop performance by sampling inputs simultaneously. Microchip’s
Motor Control DSCs have 4 sample and holds to permit true simultaneous sampling. The alternative is
to employ a much faster A/D which captures sequential samples, with less correlation between inputs.
This may degrade performance and consume more power.
Control is often an interrupt intensive task. When interrupts take a conditionally
variable amount of time to service, loop stability may be impacted. Microchip’s dsPIC® DSCs
have fixed cycle interrupt servicing.
Back to Top
Considering Non-Traditional Reliability Ideas?
Have you ever wondered why we employ DSCs for motor control? DSCs are a
combination of DSP and MCU characteristics. The advanced algorithms described in our application notes
often do not use DSP, but are heavily dependent on the hardware resources on-chip that supports DSP
functionality. This tends to reduce the MIPS (and cost) required for motor control applications leaving
plenty of resource available for your use.
One concept is acoustic monitoring for changes in sounds. In the time domain,
it may be impossible to detect an impending failure, but in the frequency domain, it may be very evident
by a shift in spectral density.
Other ideas may come to your mind for non-traditional DSP-enabled add-on
functionality. Microchip offers several tools if you wish to explore the realm of DSP since most motor
control applications will have MIPS to spare.
dsPIC®works (Part
number SW300021)
This free software package is great for modeling your application. You
can design filters and other DSP constructs, import data and view your results graphically (plus much
more).
Digital
Filter Design (Part number SW300001)
This package makes designing, analyzing and implementing Finite Impulse
Response (FIR) and Infinite Impulse Response (IIR) digital filters easy through a menu-driven and user
intuitive interface. It can generate coefficients and a C wrapper to make digital filter design happen
without the thick textbook.
Digital
Filter Design Lite (Part number SW300001-LT)
This is the same as digital filter design but lower priced and smaller
filter lengths and no MATLAB support.
Digital Filter Design and Digital Filter Design Lite Comparison
Filter
Type |
Digital
Filter Design |
Digital
Filter Design Lite |
FIR Taps |
Up to 513 |
Up to 64 |
IIR Taps High/Low
Pass |
Up to 10 |
Up to 4 |
IIR Taps Band
Pass/Band Stop |
Up to 20 |
Up to 8 |
Back to Top
|