You are on page 1of 102

June, 2008

Hands-on Workshop: Motor Control Part 4 Brushless DC Motors Made Easy


AZ114

Eduardo Viramontes
Applications Engineer
TM

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

Agenda

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

Motor Anatomy

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

Motor Anatomy
Brushed DC Rotor

Commutator

Stator

The

first electric motor was the Brushed DC Motor

Basic idea is to repel rotor from stator

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

Motor Fundamentals

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

Motor Fundamentals

N
+ _

S
+ _

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

Motor Fundamentals

N
+ _

S
+ _

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

Motor Fundamentals

S N S
_ +

N
_ +

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

Motor Fundamentals

N N S
+ _

S
+ _

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

Electric Motor Type Classification

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

Electric Motor Type Classification


ELECTRIC MOTORS AC ASYNCHRONOUS SYNCHRONOUS DC VARIABLE RELUCTANCE

Induction

Sinusoidal

Brushless

SR

Stepper

Permanent Magnet Surface PM Interior PM Wound Field

Known as Universal DC motors or Brushed DC Motors


AC power Tools Washers, Dryers Garage Openers Blenders Vacuum Cleaners HVAC Toys

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

10

Brushed DC Motors

Rotation due to electromagnetic force Continues rotation with multiple coils Undesirable effects due to friction and current reversing

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

11

Electric Motor Type Classification


ELECTRIC MOTORS AC ASYNCHRONOUS SYNCHRONOUS DC VARIABLE RELUCTANCE

Induction

Sinusoidal

Brushless

Reluctance

SR

Stepper

Permanent Magnet Surface PM Interior PM Wound Field

Robots Traction Control Servo Systems Hard Drives Fans Sewing Machines Treadmills Industrial Machines

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

12

Brushless DC (BLDC) Motors


The confusion arises because a BLDC Motor does NOT directly operate off a DC voltage source

Reverse design of brushed motors:


Magnet is on the rotor Inductors are on the stator

Benefits vs. Brushed


No mechanical commutator
(higher speeds)

Better torque/inertia ration


(higher acceleration)

Easier to cool
(Higher specific outputs)

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

13

Brushed and Brushless Motors Comparison


Feature
Commutation Maintenance Life Speed/Torque Speed range Building Cost Control Control Requirements

Brushed DC motor
Brushed commutation Periodic maintenance is required Shorter Moderately Flat. Higher speeds produces higher friction and this reduces torque. Lower Mechanical limitations by the brushes Lower Simple A controller is required only when variable speed is desired

BLDC Motor
Electronic commutation based on Hall position sensors Less required due to absence of brushless Longer Flat Higher No mechanical limitation Higher Permanent magnets Complex and expensive A controller is always required

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

14

Electric Motor Type Classification


ELECTRIC MOTORS AC ASYNCHRONOUS SYNCHRONOUS DC VARIABLE RELUCTANCE

Induction

Sinusoidal

Brushless

Reluctance

SR

Stepper

Permanent Magnet Surface PM Interior PM Wound Field

Washing Machines Vacuum Cleaners Machine tools Food Processors Fans Small Appliances

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

15

Switched Reluctance
Both The

the rotor and stator have salient poles

stator winding is comprised of a set of coils, each wound to the stator

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

16

Electric Motor Type Classification


ELECTRIC MOTORS AC ASYNCHRONOUS SYNCHRONOUS DC VARIABLE RELUCTANCE

Induction

Sinusoidal

Brushless

Reluctance

SR

Stepper

Permanent Magnet Surface PM Interior PM Wound Field

Cruise Control Air Vents Medical Scanners Gauges Office Equipment Printers Instrumentation

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

17

Stepper Motor
These

motors turn as different voltages are applied to the different windings


Field

rotates in one direction while rotor moves in opposite direction of field


In It

this example, field rotates 60while rotor only moves 30

takes four complete cycles of the control system to rotate motor through one cycle. This is because the Rotor has 4 poles

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

18

Electric Motor Type Classification


ELECTRIC MOTORS AC ASYNCHRONOUS SYNCHRONOUS DC VARIABLE RELUCTANCE

Induction

Sinusoidal

Brushless

Reluctance

SR

Stepper

Permanent Magnet Surface PM Interior PM Wound Field Get name from sinusoidial windings

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

19

Brushless DC Motor Control


BLDC

Motor versus PMSM Motor

Both motors have identical construction. The difference is in stator winding only. The BLDC has distributed stator winding in order to have trapezoidal Back-EMF. The PMSM motor has distributed stator winding in order to have sinusoidal Back-EMF.
Phase B Phase B Phase C Phase C

Phase A Phase A

Trapezoidal Back-EMF voltage

Sinusoidal winding distribution


Source: Hendershot J. R. Jr, Miller TJE: Design of brushless permanent-magnet motors

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

20

Electric Motor Type Classification


ELECTRIC MOTORS AC ASYNCHRONOUS SYNCHRONOUS DC VARIABLE RELUCTANCE

Induction

Sinusoidal

Brushless

Reluctance

SR

Stepper

Permanent Magnet Surface PM Interior PM Wound Field

Large Appliances HVAC Blowers Fan Pumps Industrial Controls Lifts Inverters

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

21

Induction Machines
Invented over a century ago by Nikola Tesla
Stator same as BLDC Difference in rotor construction If properly controlled Provides constant torque Low torque ripple

No permanent magnets Think of it as a rotating transformer. Stator is the primary Rotor is the secondary Rotor current is induced from stator current

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

22

AC Induction Motor Slip


Basic Principle: The stator is a classic three-phase stator with the winding displaced by 120 The rotor is a squirrel cage rotor in which bars are shorted together at both ends of the rotor by cast aluminum end rings The rotor currents are induced by stator magnetic field.
rotating Field ( s)

Indu ced

Torque

curr ent

The motor torque is generated by an interaction between the stator magnetic field and induced rotor magnetic field
NO BRUSHES, NO PERMANENT MAGNETS

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

23

Electric Motor Type Classification


ELECTRIC MOTORS AC ASYNCHRONOUS SYNCHRONOUS DC VARIABLE RELUCTANCE

Induction

Sinusoidal

Brushless

Reluctance

SR

Stepper

Permanent Magnet Surface PM Interior PM Wound Field Unpractical for large motors yet practical in small sizes

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

24

Reluctance
If

the rotating field of a motor is de-energized, it will still develop 10 or 15% of synchronous torque slots are cut into the conductor-less rotor of an induction motor, corresponding to the stator slots, a synchronous reluctance motor results like an induction motor but runs with a small amount of synchronous torque

If

Starts

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

25

Freescale Roadmap for Motor Control

TM

BLDC In Depth: BLDC Motor Configurations


TM

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

27

Windings Electrical Connection - Star

A
A C

B C

Star connection

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

28

Windings Electrical Connection - Delta

+ -

A B B

Delta connection

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

29

BLDC motor configuration


4 pole pairs
S
N N

H3 B A H2 C B H1
N N

C S A

H1 H2 H3 1 0 1

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

30

S
TM

BLDC motor configuration

3 pole pairs

H1

9 coils

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

31

H2

N
S
TM

H3

External Rotor Different Motor Configurations

1 pole pairs

2 pole pairs
N

4 pole pairs
S
N N

H3
H1 B A H2 C A B H3 S C

H3 B A H2 C B H1
N N

A S H2 B

C N

C S A

H1

H1 H2 H3 1 0 1

H1 H2 H3 1 0 1

H1 H2 H3 1 0 1

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

32

TM

Internal Rotor Different Motor Configurations

1 pole pair
H3 A

2 pole pairs

B H1

4 pole pairs

B H3

H2

H2

H2

N
C A H3

H1 H2 H3 1 0 1

H1 H1 H2 H3 1 0 1

H1 H2 H3 1 0 1

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

33

N
S S

A
N

H1

TM

Six Step BLDC Motor Control


Voltage applied on two phases only It creates 6 flux vectors Phases are power based on rotor position The process is called commutation

Phases voltage

Power Stage

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

34

Brushless DC Motor Control


Commutation example Stator field is maintained 60 120relative to rotor field ,

Before commutation

After commutation

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

35

Brushless DC Motor Control


Six

Step BLDC Motor Control contd


1 2 R S 3 4 T c 5 6
1 1 0

Controller

Source: Eastern Air Devices, Inc. Brushless DC Motor Brochure

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

36

Brushless DC Motor Control


Six

Step BLDC Motor Control contd


Hall a Hall b Hall c

PWM 1 PWM 3 PWM 5 PWM 2 PWM 4 PWM 6


0 60 120 180 240 300 360

Rotor Electrical Position (Degrees)

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

37

Brushless DC Motor Control


Example

of commutation table

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

38

Brushless DC Motor Control


Sinusoidal

BLDC motor control

iSb
All three phases are powered by sinewave shifted by 120

iS

iSa iSc
We are able to generate stator field to any position over 360

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

39

Brushless DC Motor Control Summary


Six

step control versus sinusoidal control

Six step control


+ Simple PWM generation Ripple in the torque (stator flux jumps by 60 ) A little noise operation (due to ripple in the torque) + Simple sensor + +

Sinusoidal control
More complex PWM generation (sinewave has to be generated) Smooth torque (stator flux rotates fluently) Very quiet Requires sensor with high resolution

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

40

Sensor Example: Hall Effect Sensor


Hall

effect sensor is a transducer that varies its output voltage in response to changes in magnetic field Hall sensors are used for proximity switching, positioning, speed detection and current sensing applications In this case, hall sensors are used in On/Off mode
Hall Sensor Everytime a magnetic field is sensed, a change in voltage can be detected Permanent Magnet

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

41

Putting All Together

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

42

Lab1

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

43

How to Set Up the Boards


AC16 board

6.
Jumper J13 APMOTOR board

7. 8
LED array
3

2. BDM
1

3.
BLDC Motor

1. Power
Supply (9V DC)

J13

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

44

Create a New CodeWarrior Project


1. Click on the Open Icon

2. Select the MC9S08AC16 MCU 4. Click next

3. Select P&E Multilink/Cyclone Pro

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

45

Name Your CodeWarrior Project


1. Set new name for your project

2. Select Project Path

3. Click next

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

46

Add Additional Files

1. Select AC16DaugherCard.h

2. Add To Project Files

3. Click next

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

47

Processor Expert

1. Click next

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

48

C Options

1. Click next

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

49

PC-Lint Options

1. Click Finish

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

50

New Project Set Up

1. Click On Make

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

51

Commutation Table & Knowing Position with Hall Effect sensors

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

52

Necessity of Knowing the Position


To

spin 3-phase BLDC motor:


Detect position/commutation Read commutation table Mask and swap phases
1 0 1 0 1 0

Signal sequence diagram for the hall sensors


60 H1 H2 H3 120 180 240 300 360

It is important to know the rotor position in order to maintain the rotating magnetic field

Supplied motor voltage


+
A-B

_ +

B-C

_ +

C-A

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

53

3-Phase Inverter
Vb

Q1

Q2

Q3 A B C

With the 3-phase inverter, you can control which phases need to be fed in order to turn the motor

Q4

Q5

Q6

0v

Q1, Q2 and Q3 is where the current goes in the motor and Q4, Q5 and Q6 is where the current goes out of the motor

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

54

Control of 3-Phase Inverter Determined on the Hall Sensor Position

A
N S

B C

C B

BLDC Motor

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

55

Control of 3-Phase Inverter Determined on the Hall Sensor Position


A
N S

B C

C B

BLDC Motor

H1 1 1 1 0 0 0

H2 0 0 1 1 1 0

H3 1 0 0 0 1 1

Phase A +VDCB +VDCB NC -VDCB -VDCB NC

Phase B -VDCB NC +VDCB +VDCB NC -VDCB

Phase C NC -VDCB -VDCB NC +VDCB +VDCB

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

56

Control of 3-Phase Inverter Determined on the Hall Sensor Position


A
S

B C

C B

BLDC Motor

H1 1 1 1 0 0 0

H2 0 0 1 1 1 0

H3 1 0 0 0 1 1

Phase A +VDCB +VDCB NC -VDCB -VDCB NC

Phase B -VDCB NC +VDCB +VDCB NC -VDCB

Phase C NC -VDCB -VDCB NC +VDCB +VDCB

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

57

Control of 3-Phase Inverter Determined on the Hall Sensor Position


A B C
N S

C A B

BLDC Motor

H1 1 1 1 0 0 0

H2 0 0 1 1 1 0

H3 1 0 0 0 1 1

Phase A +VDCB +VDCB NC -VDCB -VDCB NC

Phase B -VDCB NC +VDCB +VDCB NC -VDCB

Phase C NC -VDCB -VDCB NC +VDCB +VDCB

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

58

Control of 3-Phase Inverter Determined on the Hall Sensor Position


A B C
N S

C B

BLDC Motor

H1 1 1 1 0 0 0

H2 0 0 1 1 1 0

H3 1 0 0 0 1 1

Phase A +VDCB +VDCB NC -VDCB -VDCB NC

Phase B -VDCB NC +VDCB +VDCB NC -VDCB

Phase C NC -VDCB -VDCB NC +VDCB +VDCB

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

59

Control of 3-Phase Inverter Determined on the Hall Sensor Position


A B
S N

C B

BLDC Motor

H1 1 1 1 0 0 0

H2 0 0 1 1 1 0

H3 1 0 0 0 1 1

Phase A +VDCB +VDCB NC -VDCB -VDCB NC

Phase B -VDCB NC +VDCB +VDCB NC -VDCB

Phase C NC -VDCB -VDCB NC +VDCB +VDCB

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

60

Control of 3-Phase Inverter Determined on the Hall Sensor Position


A B C C B
N S
BLDC Motor

H1 1 1 1 0 0 0

H2 0 0 1 1 1 0

H3 1 0 0 0 1 1

Phase A +VDCB +VDCB NC -VDCB -VDCB NC

Phase B -VDCB NC +VDCB +VDCB NC -VDCB

Phase C NC -VDCB -VDCB NC +VDCB +VDCB

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

61

Lab 1
Make a program that On/Off transistors
TO DO:
Enable

moves the motor in the clockwise direction

Switch1 to enable commutations Enable 3-Phase Inverter LEDs will still reflect HALL Effect sensors Each time Switch1 is pressed, we will advance one step in the commutation table Commutation table will tell us which transistors to turn on When Switch1 is not pressed, turn OFF transistors

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

62

Import Table Add Variables, Enable Switch1, Enable Inverter


extern unsigned char table_rotate[8]; unsigned char value; unsigned char commutation; void main(void) { EnableInterrupts; /* enable interrupts */ /* include your code here */ ENABLESWITCH(1); ENABLELED(1); ENABLELED(2); ENABLELED(3); ENABLE3PHASEINVERTER(); for(;;) {

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

63

Wait for Switch1 to be Pressed


for(;;) { __RESET_WATCHDOG(); /* feeds the dog */ LED1_PIN = HALL_1; LED2_PIN = HALL_2; LED3_PIN = HALL_3; if(!SW1_PIN) { }

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

64

Once Pressed, Advance Counter, Commutate


for(;;) { __RESET_WATCHDOG(); /* feeds the dog */ LED1_PIN = HALL_1; LED2_PIN = HALL_2; LED3_PIN = HALL_3; if(!SW1_PIN) { value++; if(value>=7) value = 1; commutation = table_rotate[value]; if(commutation & Q1_MASK) Q1 = 1; if(commutation & Q4_MASK) Q4 = 1; if(commutation & Q2_MASK) Q2 = 1; if(commutation & Q5_MASK) Q5 = 1; if(commutation & Q3_MASK) Q3 = 1; if(commutation & Q6_MASK) Q6 = 1; }

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

65

Wait for Switch to be Released


if(commutation & Q3_MASK) Q3 = 1; if(commutation & Q6_MASK) Q6 = 1; while(!SW1_PIN) { __RESET_WATCHDOG(); LED1_PIN = HALL_1; LED2_PIN = HALL_2; LED3_PIN = HALL_3; } } IT IS IMPORTANT TO TURN OFF TRANSISTORS!

TURNOFFTRANSISTORS();

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

66

Download and Run Code


1. Click On Run

4. Click On Run

2. Click On Connect on the Debugger 3. Click On Yes To Reprogram the MCU

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

67

Lab2

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

68

Lab 2
Make a program that On/Off transistors

move the motor in clockwise direction

TO DO: Enable Switch5 to enable commutations Check Hall Effect sensors to evaluate which commutation state motor is in When Hall Effect sensors changes state, transistors will commutate

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

69

Add Variables, Enable Switch5


unsigned char pasthallsensors; unsigned char hallsensors; void main(void) { EnableInterrupts; /* enable interrupts */ /* include your code here */ ENABLESWITCH(5); ENABLESWITCH(1); ENABLELED(1); ENABLELED(2); ENABLELED(3); ENABLE3PHASEINVERTER(); for(;;) {

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

70

Wait for Switch5 to be On


for(;;) { __RESET_WATCHDOG(); /* feeds the dog */ LED1_PIN = HALL_1; LED2_PIN = HALL_2; LED3_PIN = HALL_3; while(SW5_PIN) { } TURNOFFTRANSISTORS();

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

71

Once On, Display and Check Hall Effect Sensors


while(SW5_PIN) { __RESET_WATCHDOG(); /* feeds the dog */ LED1_PIN = HALL_1; LED2_PIN = HALL_2; LED3_PIN = HALL_3; hallsensors = 0; if(HALL_1) hallsensors |= 0x04; if(HALL_2) hallsensors |= 0x02; if(HALL_3) hallsensors |= 0x01; if(pasthallsensors != hallsensors) { /* Do something */ }

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

72

Once On, Display and Check Hall Effect Sensors


if(pasthallhensors != hallsensors) { pasthallsensors = hallsensors; value++; if(value>=7) value = 1; commutation = table_rotate[value]; IT IS IMPORTANT TO TURNOFFTRANSISTORS(); TURN OFF if(commutation & Q1_MASK) Q1 = 1; TRANSISTORS! if(commutation if(commutation if(commutation if(commutation if(commutation } & & & & & Q4_MASK) Q2_MASK) Q5_MASK) Q3_MASK) Q6_MASK) Q4 Q2 Q5 Q3 Q6 = = = = = 1; 1; 1; 1; 1;

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

73

Download and Run Code


1. Click On Run

4. Click On Run

2. Click On Connect on the Debugger 3. Click On Yes To Reprogram the MCU

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

74

Sensorless Sensing
Sensors

are expensive and take up space Several techniques can be used to determine the motor position/speed without an external device These techniques are based on the electrical characteristics of motors, mainly on their inductance characteristics:

Based on BEMF Speed range from 5-10% up to 100% of nominal speed


The BEMF must be high enough

Based

on Motor Inductance Saliency


Speed range from standstill to about 20% of nominal speed

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

75

BEMF
-

BEMF is just an acronym for Back Electromagnetic Force Back electromagnetic force is a fancy term for the generator characteristics of a motor As has been shown not all phases of the motor are on at the same time BEMF voltage can be measured on the inactive phases of the motor The characteristics of the voltage curve generated by BEMF can tell the position/speed of the motor The method that will be exposed is the zero crossing method. When BEMF voltage equals zero, the motor is in a specific position By measuring the zero crosses against time, the speed of the motor can be determined

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

76

BLDC Motor Back-EMF Shape

Phase A-B Voltage

Phase B-C Voltage

Phase C-A Voltage

Phase A

Phase B

Phase C

A CH4
0V

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

77

Sensorless BLDC Motor Control with BEMF Zero-Crossing Detection

Appropriate Phase Comparator Output selected

Zero Crossing event detected

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

78

Sensorless Commutation and BEMF


0 60 120 180 240 300 360 Rotor Electrical Position (Degrees)

Phase R Phase S Phase T

Zero crossings PWM 1 PWM 3 PWM 5

PWM 2 PWM 4 PWM 6

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

79

BLDC Central Point is Not Accessible


3-phase

inverter and DC bus current measurement


Inverter Stage

Udcbus

Rshunt
HB1
A

Idcbus

V0

HB2

BLDC Motor
HB3
C

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

80

Zero Crossing Sensing Reference


HB1
V0

+ + C

V0

HB2

+ HB3 + C

+ HB3 + -

HB3

UDCB reference

GND reference

Virtual CP reference
Udcbus

BLDC

Motor central point is not accessible

Rshunt Idcbus
B
V0

HB2

HB1

HB3

BLDC Motor

V0

HB2

+ -

HB1 + -

Udcb + -

HB1

HB2

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

81

Zero Crossing Sensing using ADC


The

principle is the same as the HW topology, but more flexible


GND reference
HB1 ADC1 ADC2 HB3
C B
V0

Virtual CP reference
HB1 ADC1 ADC2 ADC3 ADC4
C

UDCB reference
HB1
A B
V0

V0

ADC2 ADC3 ADC4

HB2

HB2

HB2

ADC3

HB3

HB3

ADC1

Udcb

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

82

Application Details
ADC

Measurement Back-EMF evaluation

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

83

Back-EMF Detection Window

30

60

90

120

150

180

210

240

270

300

330

360

390 uVA uSa

- visible Back-EMF

detectable zero crossing

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

84

Lab3

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

85

Sensorless BLDC Motor Control using MC9S08AC


AC microcontroller
6 6 PWM 4 ADC inputs 3 Zero-cross detection circuit 3.3V Power supply
3

Application
PH A,B,C 3-phase inverter DC current sensing
3

Diagram

BLDC motor

APMOTOR board

3 outputs

Fault LED Direction LED Run/Stop status PB_A PB_B SW

9 Vdc

3 inputs

BDM

Freemaster on PC Read/set variables

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

86

Sensorless BLDC Motor Control using MC9S08AC


MC9S08AC

Peripheral Utilization

Timer 1
6 channels: PWM modulation for BLDC motor (complementary bipolar)

Timer 2
Time base for commutation period measurement Channel 0: commutation Channel 1: timing of application

A/D Converter
DC bus current, phase voltages (zero-cross detection)

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

87

PI Control
Proportional

Control

Error multiplied by constant Deals with present behavior

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

88

PI Control
Integral

Control

Ads long-term precision Takes longer to settle, but provides better precision Deals with past behavior

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

89

PI controller on AC MCU

These variables are used To tune the system

This is the control Algorithm inplemented In AC16 MCU for Motor control

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

90

PWM and manual dead time insertion


PWM

Generation

TIMER

set to center aligned mode (TPM1SC:CPWMS=1)


Example:

PWM0: switching (duty cycle (50 - 100%) + dead time), negative polarity (TMP1CxSC:ELSnB =x,TMP1CxSC:ELSnA =1) PWM1: switching (duty cycle (50 - 100%) - dead time), positive polarity (TMP1CxSC:ELSnB =1,TMP1CxSC:ELSnA =0) PWM2: switching (duty cycle (50 - 100%) - dead time), positive polarity (TMP1CxSC:ELSnB =1,TMP1CxSC:ELSnA =0) PWM3: switching (duty cycle (50 - 100%) + dead time), negative polarity (TMP1CxSC:ELSnB =x,TMP1CxSC:ELSnA =1) PWM4: OFF PWM5: OFF

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

91

Dead Time

Q1

Q1

Q4

Q4

a) Center aligned PWM, Q1 and Q4 change in the same instant, it can short circuit between Vb and GND

b) Center aligned PWM, Q1 and Q4 triggered with different PWM duty cycle avoiding that both transistors turn on at the same time.

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

92

Application Details
ADC

Measurement

DC bus current, Back-EMF voltage Single result register only 3.5 us conversion time ADC measurement has to be synchronized with PWM

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

93

Application Details
ADC

Measurement PWM -> ADC Synchronization

Overflow interrupt is used for PWM->ADC synchronization

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

94

Application Details
ADC

Measurement Back-EMF evaluation

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

95

FlexTimer in the MCF51AC


This part pending because dev board was delivered on April 29
Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.
TM

96

FlexTimer advantages

Supports up to 8 channels which can be synchronized in pairs for complementary signal generation. Dead time insertion supported by software. FTM can trigger ADC conversions automatically. Fault input supported by hardware (automatically turns of PWM pin outputs). Synchronized reloading of PWM duty cycle from several sources (ADC, analog comparator, software). Polarity for PWM output can be configured. Edge and center alligned PWM generation.

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

97

Dead time insertion

Used to avoid to power devices to be turned on at the same time.


No CPU load generated to make dead time insertion. To configure simply enable dead time insertion bit and configure the number of timer counts of dead time, the rest is done by timer module.

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

98

ADC Synchronization

Reduces CPU load by saving time needed to start conversions (to detect zero-crossings or instantaneous current. When doing back-EMF sensing measurements need to be made in certain timing windows. If measurements are always taken at the same times, control algorithm is more precise.

Timer Channel ISR t1 1 ADC conversion ADC Channel ISR t3 1 Process ADC data Manual start of ADC conversion t2

Timer Channel ISR Automatic start of ADC conversion t1 ADC conversion ADC Channel ISR t3 Process ADC data

Without hardware T = t1 + t2 + t3

trigger

With hardware trigger T = t1 + t3

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

99

Related Session Resources


Sessions (Please limit to 3)
Session ID
AZ131 AZ121 AZ120

Title
Motor Control Part 1 Fundamentals and Freescale Solutions Motor Control Part 2 Solutions for Large Appliances and HVAC Motor Control Part 3 Solutions for Small Appliances and Health Care Applications

Demos (Please limit to 3)


Pedestal ID
312 214 706

Meet the FSL Experts (Please limit to 3)


Title Time Location

Demo Title
Large Appliance Demo 3-Phase PMSM Vector Control demo with Encoder Air Hockey Demonstration featuring the Flexis AC Products

Freescale Semiconductor Proprietary Information. Freescale and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names are the property of their respective owners. Freescale Semiconductor, Inc. 2008.

TM

100

TM

You might also like