Upload
others
View
10
Download
0
Embed Size (px)
Citation preview
STM32/8 Optimize Motor Control ‘Ecosystem’Yonghai LuYonghai Lu
MCU Segment
Senior Marketing Engineer
Industry Automation 2
1.Motor 2.PLC3.Motion control4.HMI
HMI
HMI
16/07/2012Presentation Title
STM32 Portfolio
Leader in Motor Control w/ Cortex-M3 (?)
• ARM chose ST Motor Control Ecosystem (STM32, MC kit, SW lib) to build his demo and demonstrate the advantages of the Cortex-M3 with FOC solution.
• http://armdevices.net/2011/03/04/arm-embedded-in-motor-control-demo/
4
Leader in Motor Control STM8 (?)
• STM8 Market share ?
5
AC motor STM32F051/1/2/3/4( cortex-M 32bit)
Vector control /Sinusoidal Sensor/sensor- less
6
DC motor STM8 ( M8-8bit)
Scalar /6-step or sinus
Sensor/sensor- less
STM8S STM8S family
7
STM8S Main features for MC
SPI
4kB-128kB
Flash Memory
Int. RC 16 MHz
Xtal 1-24 MHz
Int. RC 128 KHz
Clocks toPeripherals
Core
Clock Controller
Clock Detector
Reset Block
POR
I2C
Add
ress
& D
ata
Bus
2xU(S)ARTLIN
Smartcard / IrDA
1.8V Regulator
16-bit Timer4 CAPCOM +
BOR
- 3 stage pipeline-20 MIPS peak performance @24MHz- 16bit Timer suitable for MC (4ch, 7outputs)-10 bit ADC with synchronization capability
STM8Core
8
Add
ress
& D
ata
Bus
Nested IT Ctrl32 IT vectors
Up to 37 ext.IT
Flash Memory
2x Watchdog(IWDG & WWDG)
Beeper 1/2/4Khz
AWU
2x16-bit Timer
2/3 CAPCOM
Add
ress
& D
ata
Bus
Debug Module
SWIM
Up to 68 I/Os
Up to 6KB SRAM
Boot ROM8-bit Timer
Up to 2KB EEPROM
CAN 2.0B
3 cmpl. output@ 24 MHz
®
10 bit ADC
16 channels
STM8S MC Kit
9
• The STM8S MC FW library can be evaluated on STM8S MC-KIT
• The complete kit to perform scalar control of both BLDC and AC IM three-phase motor
•• Free Free source files are available with the kit
STM8S MC FW library: performances figure• BLDC performance figures
• Code size is always below• Workload (CPU running @16MHz, 18kHz switching frequency,
speed closed loop):• between 16% and 20% in sensor• between 27% and 32% in sensor-less
• AC IM performance figures:• Code size is always below 8kB• Workload (CPU running @24MHz, 8kHz
sine-wave refresh rate, speed closed loop): ~20%*
10
STM32F STM32F family
11
STM32F fitting Motor Control needsFeatures & Performance
DualMC
2010 2011 2012 Time
SingleMC
…2009
12
5V
Low end FOC
Dual FOC
High end FOC
The new arrival :
3-ph brushless Motor Control SW lib evolutionP
erfo
rman
ces
Per
form
ance
sP
erfo
rman
ces
Per
form
ance
s
Vector drives
Q3 2007STR750 MC Kit
Q1 2008STM32 MC Kit
Q4 2008STM32 FOC FW library v2.0
Q1 2011
2007 2008 2009 2010 2011
13
Per
form
ance
sP
erfo
rman
ces
Per
form
ance
sP
erfo
rman
ces
Q3 2009: STM8S MC Kit
Scalar drives
2012
STM32F051/1/2/3/4
STM32 FOC PMSM SDK v3.0 Permanent Magnet Synchronous Motor (PMSM)
SM-PMSM IPM-SM
PMSM
14
a. SM-PMSM: Surface mounted permanent magnetsb. & c. IPM-SM: Internal permanent magnets (in particular: b. inset
magnets; c. radial buried magnets)
Mathematical technique used to achieve decoupled control of the flux and torque in a three-phase machine
Field oriented control (FOC): a quick overview
a
b
c
θr
Φm
� Optimized efficiency even during transient operation
� Precise and responsive speed control to
Benefits:
� Precise and responsive speed control to load variations
� Enables precise position control (through instantaneous torque control)
� Acoustical noise reduction due to precise control technique
vds
vqs+
-
+-
PID
PID
iqs
ids
iqs*
ids*
REVERSE PARK & circle
limitation
CALC SVPWM
CURRENT READING
va,b,c
θr el
vαβ
iabc
PARK
θr el
iαβ
CLARKE
SENSORLESS ROTOR
SPEED/POSITION STATE OBSERVER
DC domain AC domain
vds
vqs+
-
+-
PID
PID
iqs
ids
iqs*
ids*
REVERSE PARK & circle
limitation
CALC SVPWM
CURRENT READING
va,b,c
θr el
vαβ
iabc
PARK
θr el
iαβ
CLARKE
DC domain AC domain
b-emf α
b-emf β
BACK-EMFs CALCULATION
Rotor Angle/Speed
reconstruction
iαβvαβ
Bus voltage measurement
vds
vqs+
-
+-
PID
PID
iqs
ids
iqs*
ids*
REVERSE PARK & circle
limitation
CALC SVPWM
CURRENT READING
va,b,c
θr el
vαβ
iabc
PARK
θr el
iαβ
CLARKE
SENSORLESS ROTOR
SPEED/POSITION STATE OBSERVER
DC domain AC domain
vds
vqs+
-
+-
PID
PID
iqs
ids
iqs*
ids*
REVERSE PARK & circle
limitation
CALC SVPWM
CURRENT READING
va,b,c
θr el
vαβ
iabc
PARK
θr el
iαβ
CLARKE
DC domain AC domain
b-emf α
b-emf β
BACK-EMFs CALCULATION
Rotor Angle/Speed
reconstruction
iαβvαβ
Bus voltage measurement
Example of FOC algorithm:
Vector Control with STM32 (3ph brushless):� From block diagram to implementation
Power stage
M6-channel
PWMTimer
6xPWM
Fault signals
Va
Vb
Vc
SVPWM
Vα
Vβd,q
α,β
Iα Ia
θsθs
Speed/positionFeedback
TIMER
Ia & Ib
Vbus
Tachometer/Encoder/Hall sensor
No present for sensorless algorithm
Iα
Iβ
Ia
Ib ADCs
θs
θs
ωm
d,q
α,β
α,β
a,b
FOC algorithm Hw peripherals
The STM32 FOC PMSM SDK v3.0• The STM32 FOC PMSM SDK v3.0:
• is a Motor Control Software Development Kit• for 3-phase Permanent Magnet Synchronous
Motors (PMSM) • based on Field Oriented Control (FOC)• supporting STM32F103 and STM32F100
• Key features:• Key features:• Single/Dual simultaneous vector control (FOC)• Any combination of current reading topologies
and/or speed/position sensors is supported• Support to both STM32F103x and STM32F100x
families• Full customization through PC SW ST MC
Workbench• A number of technical algorithms improvements
has been introduced compared to v2.0• Application example based on FreeRTOS
17
STM32F103x (Performance line) HD/(XL)
STM32F103x (Performance line) LD/MD
STM32F100x (Value line) LD/MD/(HD)
Features set, µC support
1shunt FluxWeakening IPMSM MTPA 3shunt
18
Weakening
Feed Forward Sensor-less(STO + PLL)
Sensor-less (STO + Cordic)
Encoder Hall sensors Debug & Tuning
ST MC Workbench
support
USART basedcom protocol
add-on
Max FOC~ 11 kHz
ICS
FreeRTOS
Max FOC ~25kHz
Dual FOC
Max FOC ~25kHz
Max FOC dual
~20kHz
Single motor solutionsSingle motor solutions
19
FOC, cost optimized implementationSTM32F100x Value Line
• Target applications:• All those applications where:
• Requirements for dynamic performances are moderate • Quietness of sinusoidal current control (vs six steps drive) is valuable• Extended speed range is required
• Particularly suitable for pumps, fans and compressors
Current Current
DW Spray & drain pumps
Fridge compressor
WM Drain pump
STM32F100 Value Line Block Diagram� 32-bit ARM® Cortex™-M3 core
� Up to 30 DMIPS at 24 MHz max� 2.0 V to 3.6 V operation� -40 to +105 °C� Enhanced control
� 16-bit 3-phase motor-control timer
� 6x 16-bit PWM timers� Advanced analog
� Fast 12-bit 1.2 µs ADC� Fast 12-bit 1.2 µs ADC� Dual-channel 12-bit DAC
� System integration� Internal 8 MHz RC oscillator� Built-in safe reset system
FOC, cost optimized implementation Some performance figures with STM32F100
• Configuration: 1shunt/sensorless @20kHz PWM,10kHZ FOC
• Motor Control code size is 15.82Kb
• Motor Control RAM usage is 2.77Kb
• FOC Total execution time is 65.22us (ADC ISR + TIM1 Update ISR)
• FOC introduced CPU load is 65.2%
• Total CPU load is ~70% (~60% at 8kHz FOC)
22
STM32F103 Performance Line
� 32-bit ARM® Cortex™-M3 core � Up to DMIPS at 72MHz
� 2V-3.6V Supply� -40 to +105 °C� From 16kB to 1MB flash memory� Enhanced control
� Up to 3x 16-bit Advanced timer � Up to 4x 16-bit PWM timers
� Advanced analog� Up to 3x fast 12 -bit 1.2 µs ADC� Up to 3x fast 12 -bit 1.2 µs ADC
� System integration� Internal 8 MHz RC oscillator� Built-in safe reset system
FOC single motor drive - high performancesSTM32F103x
• Target applications:• Wide range from home appliances to robotics, where:
• Accurate and quick regulation of motor speed and/or torque is required (e.g. in torque load transient or target speed abrupt variations)
• CPU load granted to motor control must be low due to other duties
Home appliances
Industrial motor drives
Power tools
GamesEscalators and elevators
Fitness, wellness and healthcare
And much much more…
FOC single motor driveSome performances figure with STM32F103
� Thanks to the powerful CortexTM-M3 computational capabilities the overall sensor-less control loop execution:� 20.9usec with 3 shunt resistor (14.5kB flash; <2.5kB RAM)� 26.1usec with single shunt resistor (16.2kB flash; <2.5kB RAM)
vds
vqs+
-
+
iqs*
ids*vαααα’’’’ββββ’’’’s
PID
PID
REVERSE PARK &
circle limitation
CALC SVPWM
25
+-
iqs
ids
θθθθr el
iabc s
θθθθr el
iαβαβαβαβ s
limitation
1 or 31 or 3--SHUNTSHUNTCURRENT READING
SENSORLESSSENSORLESSROTOR POSITION
FEEDBACK
CLARKEPARK
• 3-Shunt: CPU load @ 10kHz sampling time ≈ 25%• 1-Shunt: CPU load @ 10kHz sampling time ≈ 30%
Dual motor solutionsDual motor solutions
26
FOC dual motor drive - high performancesSTM32F103x high density
• Target applications:• Wide range from home appliances to robotics, where:
• Up to two FOC drives have to run at the same time• Accurate and quick regulation of motor speed and/or torque is required (e.g. in
torque load transient or target speed abrupt variations)
White goods
Industrial motor drives
Power tools
And much much more…
WM: drum + drain pump
DW: spray + drain pumps
Air Con: Compressor + outdoor fan
STM32F103 Performance Line
� 32-bit ARM® Cortex™-M3 core � Up to DMIPS at 72MHz
� 2V-3.6V Supply� -40 to +105 °C� From 256kB to 1MB flash memory� Enhanced control
� Up to 3x 16-bit Advanced timer � Up to 4x 16-bit PWM timers
� Advanced analog� Up to 3x fast 12 -bit 1.2 µs ADC� Up to 3x fast 12 -bit 1.2 µs ADC
� System integration� Internal 8 MHz RC oscillator� Built-in safe reset system
Basics – Dual PMSM FOC
Gate drivers Power bridge1 Motor1
va,b,c
Speedsensors: Sensorless,Hall,Encoder
BKIN Current sensors: 3shunt/1shunt/ICS
ωr*1
ωr*2
29
Power bridge2
Motor2
Speedsensors: Sensorless,Hall,Encoder
Current sensors: 3shunt/1shunt/ICS
va,b,c
BKIN
Gate drivers
STM32F103 (High Density) + Motor control SW lib v3.0 : ���� drive 2 motors in diverse configurations
FOC dual motor driveSome performances figure example... 1/2
• Configuration:• Motor 1: 1shunt/sensorles s @8kHz PWM/FOC - Flux Weakening enabled• Motor 2: 1shunt/sensorless @16kHz PWM, 8kHZ FOC.
• Motor Control code size is 22.3Kb (below 1.5 times single motor case)
• Motor Control RAM usage is 4.01Kb
• FOCs introduced CPU load (including TIMx Update ISRs) is 44%• FOCs introduced CPU load (including TIMx Update ISRs) is 44%
• Total CPU load ~50%
30
FOC dual motor driveSome performances figure example... 2/2
• Configuration:• Motor 1: 3shunts/sensorless @16kHz PWM/FOC - MTPA and Flux Weakening enabled• Motor 2: 1shunt/sensorless @16kHz PWM, 8kHZ FOC.
• Motor Control code size is 25.5Kb
• Motor Control RAM usage is 4.14Kb
• FOCs introduced CPU load (including TIMx Update ISRs) is 62.6%• FOCs introduced CPU load (including TIMx Update ISRs) is 62.6%
• Total CPU load <70%
31
Environment (making life easier)Environment (making life easier)
32
ST Motor Control Workbench V1.0.2 (STMCWB)
MotorMotor
ST Motor Control Workbench v1.0.2, is a PC code generator tool that reduces thedesigner effort and time in the firmware development for STM32 FOC PMSM SDK v3.0.The user through a graphical user interface (GUI) generate all parameter header fileswhich configures the library according the application needs.
MotorMotor
Power StagePower Stage
Drive Drive
ManagementManagement Control StageControl Stage
Customization process - GUI
1010010..
.OBJ
MC Application
User Project
101001010100110101101010101010100..
.LIB
1110010..
.OBJ 1000010..
.OBJLinker
110111010101001011110001101010101..
.EXE
.hParameter
files
ST MC Workbench GUI
SDK IDE
• Parameter files, generated by the ST MC Workbench GUI, are used by the MC Application to instance objects from MC Library classes. The IDE rebuilds the Application project, links and creates the .exe
34
MC Library Project
MC Application Project
.LIB
110010010101000101001010010101001..
.LIB
Making life easier with ST toolsStart with the right STM32 and get
the optimum pinout configuration� MicroXplorer tools
� MCU product selector
� Identify the best STM32 to fit your application needs (performance, memory, peripherals, I/Os, etc.)
Optimize application performance� STM Studio tool
� Monitor any variable selected in your code to optimize application performance (motor control, touch sense, etc.) � Several display modes
� MCU configuration tool� Configure the STM32 pinout to fit
your application needs
� On-the-fly acquisition modes
� Log to/replay from file
� Variables read/write capability
Motor Control KitsMotor Control Kits
36
Motor Control Kit: STM32-MCKIT
MB631MB459B
MC Connector
Main Features: � Driving Strategy: Vector Control� PMSM motor sensored and sensorless
� 34-pin dedicated motor control connector� Encoder; Hall sensor; Tachometer sensor input� Current sensing mode:� 3 shunt resistors� Single shunt
ST offers all devices for Motor control solution:STM32F103 (32-bit MCU with motor control dedicated timer)L6386DE (Gate Drivers)VIPer12AS (Power Supply down converter)L7815CP, L7805CP, LD1117S33TR (Voltage regulators)STGF7NC60H (IGBT)TSV994, TS374ID, TS372ID (Op Amps)M74HC09RM13TR, M74HCT7007RM13TR (Logic)
Run your motor in a few minutes! STM3210B-MCKIT
• The STM32 FOC FW library can be evaluated on STM32 MC-KIT• Complete kit to perform Field Oriented Control of 3-Ph PMSM •• Free Free source files are available with the kit• Evaluation versions of Keil and IAR compilers available
for freefree
STEVAL-IHM022V1STM3210B-EVALSTM8/128 –Eval
Complementing M.C. starter kitSTM8/32 Evaluation boards
STEVAL-IHM032V1STM32100B-EVAL STM3210E-EVAL
Optimized for STM32F100x High performance High performance
MC connector
Please visit http://www.st.com/evalboards or contact a local ST office
Complementing Motor Control Starter KitsHigh Voltage Power Stage
• 1 x IGBT SLLIMM™ STGIPL14K60
• 1 converter based on Viper16
• 1 x IGBT STGP10NC60KD
STEVAL-IHM025V1
• 1 x IGBT SLLIMM™ STGIPS10K60A
• 1 converter based on Viper16
• 1 x IGBT STGP10NC60KD
STEVAL-IHM027V1
•3 x PWM smart driver L6390
•1 converter based on Viper12
• 6 x MOSFET power switch STD5N52U
STEVAL-IHM021V1
•3 x PWM smart driver L6390
•1 converter based on Viper16
• 7 x IGBT power switch STGP10NC60KD
STEVAL-IHM023V21000W
1000W
1000W
Gate drivers & Power Transistors based
• 1 x IGBT SLLIMM™ STGIPS20K60
• 1 x PWM SMPS VIPer26LD
• 1 x IGBT STGW35NB60SD
STEVAL-IHM028V1
•3 x PWM smart driver: L6390
•1 converter based on Viper12
• 6 x IGBT power switch: STGDL35NC60DI
STEVAL-IHM024V12000W
SLLIMM™ (ST IPMs) based STEVAL-IHM032V1
•3 x PWM smart driver:
2xL6392D and 1x L6391D
•1 converter based on Viper12
6 x IGBT power switch: STGD3HF60HD
150W
Please visit http://www.st.com/evalboards or contact a local ST office
Complementing MC starter kitsLow Voltage Power Stages and complete drive solutio n
• 3 x dual PowerMOSFETs STS8dnh3l
•2 x PWM smart driver L6387E
• 1x step down converter L4976D
STEVAL-IHM031v1
STEVAL-IEM003v1
• 1 x 32bit Microcontroller STM32F103C
• 1 x Motor Drive Ic L6230PD
STEVAL-IFN003v1
120W
2000W
FOC PMSM Motor Drive
• 1 x 8bit-Microcontroller STM8S
• 1 x Motor Drive Ic L6230Q
STEVAL-IFN004v1
BLDC Six-Steps Motor Drive
70W
70W
Power stage up to
Complete Motor Drive Solutions
• 3 x PWM smart driver L6388
• 6x LV Power MOSFET STV250N55F3
• 1x step down converter L4978D
• 1 x 8bit-Microcontroller STM8S
• 2 x PWM smart driver L6388
• 4 x LV Power MOSFET STV250N55F3
STEVAL-IHM030v1
DC Brushed Motor Drive
2000W
• 1 x Motor Drive Ic L6230Q
Low Voltage Power Stages
Please visit http://www.st.com/evalboards or contact a local ST office
Power stage up to 48V
Example:STEVAL-IHM025V1 Configurations
Control BoardControl BoardSTM8/128STM8/128--EvalEval
Daughter board Daughter board BLDC SensorlessBLDC Sensorless
ST/J/U-LINK
motor
STM8MC STEVAL-IHM025V1
Hw customization to work in six step
mode
STM8MC Libraryconfiguration through
PC GUI: STM8 MC Builder
v1.0.2
Scalar Control
BLDC/ AC Induction
STM32FSTM32FControl BoardControl Board
J/U/ST-Link
motor
ST/J/U-LINK modev1.0.2
STM32MC STEVAL-IHM025V1
Hw ready to work in FOC Control
Field Oriented Control (FOC)
PMSM
STM32 FOC PMSM SDK v3.0
configuration through the PC GUI: STMCWB
v1.0.2
MC solutions summaryMC solutions summary
42
Pro
duct
s
Cor
tex
Cor
e
Fre
q.m
ax
Dm
ips
Touc
h K
eys
(CT
)
Tim
ers
(all)
Adv
ance
dM
C
Tim
er
Tim
er /
PW
M
with
OC
N &
DT
AD
C12
-bit
Com
para
tor
DA
C 1
2-bi
t
Op-
Am
p
Sin
gle
MC
4x In
duct
ion
Dua
l MC
STM32F405 C-M4 150 188 0 17 2 2/63x 2Msps� 24ch
0 2 0 ���� ���� ����
STM32’s featuresApplicationsSTM32 features
43
� 24ch
STM32F205 C-M3 120 150 0 17 2 2/63x 2Msps� 24ch
0 2 0 ���� ���� ����
STM32F301 C-M4 72 90 18 13 2 5/94x 5Msps� 40ch
7 2 4 ���� ���� ����
STM32F103 C-M3 72 62 0 11 2 2/63x 1Msps� 21ch
0 2 0 ���� ���� ����
STM32F100 C-M3 24 30 0 16 1 4/71x 1Msps� 16ch
0 2 0 ���� ���� ����
STM32F051 C-M0 48 36 18 11 1 4/71x 1Msps� 16ch
2 1 0 ���� ���� ����
Getting started with STM32 / Motor Control 1. Evaluate products performance (STM32 & others) using our Motor
Control Kit• Possibility to attend to a ST’s 3 days Motor Control training
2. Select your STM32 device in the large STM’s MCU portfolio3. Customize your own Motor Control application using our MC FW
libraries (available for free) and the FOC GUI PC SW application• Also available: Dual FOC FW lib, PFC FW & example
44
4. Get direct support from ST (dedicated people) to fine tune your application
5. Change STM32 device ? � STM32 are pins and SW compatible � platform strategy� MC FW library v3.0 covers both STM32F103x and STM32F100x
� Strong ST commitment and expertise on MC applicatio n� Secure your investment on ST MCU
Conclusion
• Low cost solution to speed up product evaluation and time to market
• ST offers a very wide product portfolio for motor control:
MCUs, IGBTs, Power MOSFETs, IPMs (SLLIMM™), Gate Drivers; Diodes; AC Switches; Motor Driver ICs and power management Ics.
• Support on Firmware and Hardware
STM32’s MC ‘Ecosystem’
• The STM32’s MC ‘Ecosystem’ is the right answer to 3-phase FOC PMSM developers to quickly start & complete their design keeping flexibility on their platform strategy (low, mid, hi –end).
• The ‘STM32 MC Ecosystem’ is made of (major items):
• MCU: STM32 large portfolio (Cortex-M based)
• SW lib: 3-phase FOC PMSM SDK (SW lib) + WorkBench to generate code
• HW: Motor Control kit (based on STM32 eval board + MC SW lib & all other ‘power’ component from ST)
• Tools: among others: STM Studio, to monitor any variable selected in the code to optimize application performance
• The STM8’s MC ‘Ecosystem’ complete by the STM32’s one with • AC Induction Motors (scalar) and BLDC (6-step) supported in the STM8s MC FW
lib
46
HMI
UART
CAN
USB
LCD interface
Ethernet
PC U disk/ USB host
1.Motor 2.PLC 3.Motion LCD
STM32F0/1/2/4
474747
STM32
SPI I2C FSMC
SRAM.PSRAM ,Norflash……
E2PROM Data flash
Serial/USB
SPI
I2c FSMC
Custom Logic
Field bus
HMI Module
Dataflash CAN/UART
PLC main controller
PLC
E2PROM
MCU
48
SRAM,PSRAM….
STM32F2/4
STM32F0/100
For further info about STM32 FOC PMSM SDK v3.0, please visit:
http://www.st.com/stm32
Downloads:STM32 FOC PMSM SDK v3.0:http://www.st.com/internet/com/SOFTWARE_RESOURCES/SW_COMPONENT/FIRMWARE/stm32_pmsm_foc_motorcontrol_fwlib.
zip
ST MC Workbenchv1.0.2:
Interesting links…
ST MC Workbenchv1.0.2: http://www.st.com/internet/com/SOFTWARE_RESOURCES/TOOL/CONFIGURATION_UTILITY/motorcontrol_workbench.zip
TN0516: Overview of the STM32F103xx/STM32F100xx PMSM single/dual FOC SDK V3.0
UM1052: STM32F103xx or STM32F100xx PMSM single/dual FOC SDK V3.0
UM1053: Advanced developers guide for STM32F103xx/STM32F100xx PMSM single/dual FOC
library
www.st.com
Thank you !
50