The Datasheet Archive - 100 Million Datasheets from 7500 Manufacturers.    


Datasheet Search Engine   
 
Part # or Description: • 5V RS232 Driver • 2SC5066* • "Real Time Clock" • "USB connector" • "blue led" 5mm • 10 watt zener diode • 2N3055* motorola
 
Search Tip: Try entering the part number only. Include a wildcard (eg. lm317* or 1n4148*)

 

 

Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTP


Datasheet Thumbnail

  

Download PDF



Top Searches for this datasheet



AN3205 Rev. 06/2006
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500
Covers MPC5500 eTPU-Equipped Devices
Milan Brejl, Michal Princ Petr Uhlir System Application Engineers Roznov Czech System Center
This application note describes design 3-phase induction motor (ACIM) speed closed loop Volts Hertz control drive based Freescale's PowerPC MPC5500 microprocessor. application design takes advantage enhanced time processing unit (eTPU) module, which used motor control co-processor. eTPU completely handles motor control processing, eliminating microprocessor overhead other duties. application designed driving medium power three-phase induction motors targeted applications both industrial appliance fields (e.g. washing machines, compressors, conditioning units, pumps, simple industrial drives). serves example motor control system design using Freescale microprocessor with eTPU. also illustrates usage dedicated motor control eTPU functions that included motor control eTPU function set. This application note also includes basic motor theory, system design concept, hardware implementation, microprocessor eTPU software design, including FreeMASTER visualization tool.
Table Contents
PowerPC MPC5554 eTPU Advantages Features Target Motor Theory System Concept Software Design Implementation Notes Microprocessor Usage Summary Conclusions References Revision History
Freescale Semiconductor, Inc., 2006. rights reserved.
PowerPC MPC5554 eTPU Advantages Features
Figure Using MPC5554DEMO, 3-Phase AC/BLDC High-Voltage Power Stage, Inline Optoisolation Box, 3-Phase Induction Motor
PowerPC MPC5554 eTPU Advantages Features
PowerPC MPC5554 Microcontroller
MPC5554 microcontroller belongs family next generation powertrain microcontrollers based PowerPC Book architecture. Featuring 32-channel eTPU engines, Kbytes cache, Kbytes internal SRAM, Mbytes internal Flash memory, 64-channel eDMA controller, FlexCAN modules, UARTs four DSPI modules, MPC5554 been designed applications that require complex, real-time control.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
PowerPC MPC5554 eTPU Advantages Features
This 32-bit device based PowerPC core operating frequency MHz. On-chip modules include: High-performance 32-bit PowerPC Book E-compliant core Memory management unit (MMU) with 24-entry fully associative translation look-aside buffer (TLB) embedded Flash memory with error correction coding (ECC) on-chip static with cache that configured additional Nexus IEEE-ISTO 5001 class multicore debug capabilities enhanced time processor units (eTPUs) 64-channel enhanced direct memory access (eDMA) controller Interrupt controller (INTC) capable handling selectable-priority interrupt sources Frequency modulated phase-locked loop (FMPLL) assist electromagnetic interference (EMI) management Enhanced queued analog-to-digital converter (eQADC) Four deserial serial peripheral interface (DSPI) modules Three controller area network (FlexCAN) modules enhanced serial communication interface (eSCI) modules Eighty-eight channels timed Crossbar switch (XBAR) Enhanced modular system (eMIOS) more information, refer Reference
eTPU Module
eTPU intelligent, semi-autonomous co-processor designed timing control, handling, serial communications, motor control, engine control applications. operates parallel with host CPU. eTPU processes instructions real-time input events, performs output waveform generation, accesses shared data without host CPU's intervention. Consequently, host setup service times each timer event minimized eliminated. eTPU MPC5554 microcontroller engines with timer channels each. addition, Kbytes code memory Kbytes data memory that stores software modules downloaded boot time mixed matched required specific application. eTPU provides more specialized timer processing than host achieve. This partially eTPU implementation, which includes specific instructions handling processing time events. addition, channel conditions available eTPU processor, thus eliminating many branches. eTPU creates host overhead servicing timing events. more information, refer Reference
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Target Motor Theory
Target Motor Theory
Stator Rotor
Figure 3-Phase Induction Motor
induction motor rotating electric machine designed operate from 3-phase source alternating voltage. variable speed drives, source normally inverter that uses power switches produce approximately sinusoidal voltages currents controllable magnitude frequency. cross-section two-pole induction motor shown Figure Slots inner periphery stator accommodate 3-phase winding a,b,c. turns each winding distributed that current stator winding produces approximately sinusoidally-distributed flux density around periphery gap. When three currents that sinusoidally varying time, displaced phase 120° from each other, flow through three symmetrically-placed windings, radially-directed flux density produced that also sinusoidally distributed around rotates angular velocity equal angular frequency, stator currents. most common type induction motor squirrel cage rotor which aluminum conductors bars cast into slots outer periphery rotor. These conductors bars shorted together both ends rotor cast aluminum rings, which also shaped fans. larger induction motors, copper copper-alloy bars used fabricate rotor cage winding. sinusoidally-distributed flux density wave produced stator magnetizing currents sweeps past rotor conductors, generates voltage them. result sinusoidally-distributed currents short-circuited rotor bars. Because resistance these shorted bars, only small relative angular velocity between angular velocity flux wave mechanical angular velocity two-pole rotor required produce necessary rotor current. relative angular velocity called slip velocity. interaction sinusoidally-distributed flux density induced rotor currents produces torque rotor. typical induction motor speed-torque characteristic shown Figure Squirrel-cage induction motors popular their simple construction, cost horsepower maintenance (they contain brushes, unlike motors). They available wide range power ratings. With field-oriented vector control methods, induction motors fully replace standard motors, even high-performance applications.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Target Motor Theory
Figure Speed-Torque Characteristic Induction Motor
Digital Control Induction Motor
adjustable speed applications, motors powered inverters. inverter converts power power required frequency amplitude. Figure illustrates typical 3-phase inverter.
DC-Bus
DC-Bus
3-Phase Motor
Figure 3-Phase Power Stage
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Target Motor Theory
inverter consists three half-bridge units where upper lower switches controlled complimentarily, meaning when upper turned lower must turned off, vice versa. Because power device's turn-off time longer than turn-on time, some dead time must inserted between turning transistor half-bridge, turning complementary device. output voltage mostly created pulse width modulation (PWM) technique. 3-phase voltage waves shifted 120o another, thus 3-phase motor supplied.
Volts Hertz Control
Volt Hertz control methods most popular method scalar control that controls magnitude variable like frequency, voltage, current. command feedback signals quantities that proportional respective variables. This scheme defined Volts Hertz control because voltage applied command calculated directly from applied frequency maintain air-gap flux machine constant. steady state operation, machine air-gap flux approximately related ratio Vs/fs, where amplitude motor phase voltage synchronous electrical frequency applied motor. control system illustrated Figure characteristic defined base point motor. Below base point, motor operates optimum excitation because constant Vs/fs ratio. Above this point motor operates under-excited because DC-bus voltage limit.
voltage base voltage base point
boost voltage
boost point base frequency frequency [Hz]
Figure Volts Hertz Control Method
Quadrature Encoder
ACIM motor application uses quadrature encoder rotor position sensing. quadrature encoder output consists three signals. phases, represent rotor position, index pulse defines zero position. quadrature encoder signals depicted Figure
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
System Concept
4094 4095
position counter values
Phase Phase Index revolution
Figure Quadrature Encoder Output Signals
System Concept
System Outline
system designed drive 3-phase induction motor speed closed loop. application meets following performance specifications: Speed closed loop scalar control three phase general purpose induction motor Targeted PowerPC MPC5554DEMO evaluation board (MPC554DEMO) Control technique incorporates: Volts Hertz control Both directions rotation 4-quadrant operation Maximal speed 3000 input power line FreeMASTER control interface (speed set-up, start/stop switch) FreeMASTER monitor FreeMASTER graphical control page (required speed, actual motor speed, start/stop status, fault status) FreeMASTER control scope (observes required actual speeds, applied voltage) Detail description eTPU functions used application (monitoring channel registers function parameters real time) DC-bus break over-current fault protection
Application Description
standard system concept chosen motor control function (see Figure system incorporates following hardware: Evaluation board MPC5554DEMO Interface board with UNI-3 3-phase AC/BLDC high-voltage power stage
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
4094 4095
System Concept
Inline optoisolation 3-phase induction motor Type AM40V, Brno s.r.o., Czech Republic Load type 40N, Brno s.r.o, Czech Republic Quadrature encoder 16.05A 1024-I2-5, Baumer Electric, Switzerland
eTPU module runs main control algorithm. 3-phase output signals 3-phase inverter generated, using Volts Hertz control algorithm, according feedback signals from quadrature encoder, input variable values, provided microprocessor CPU. DC-bus voltage sampled on-chip analog-to-digital converter (eQADC module). transfer measured samples from eQADC eTPU DATA provided eDMA module.
Figure System Concept
system processing distributed between eTPU, which both parallel. performs these tasks: Periodically scans FreeMASTER interface. Based user input, handles application state machine calculates required speed, which passed eTPU. Periodically reads application data from eTPU data order monitor application variables. event overcurrent fault, outputs immediately temporarily disabled eTPU hardware. Then, after interrupt latency, disables outputs permanently displays fault state. Periodically, with period 50us, eDMA transfers eQADC conversion command from eTPU data into eQADC results conversion transferred from eQADC into eTPU data RAM. eTPU performs these tasks: eTPU channels (PWMF) generate output signals. Three eTPU channels (QD) process quadrature encoder signals.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
System Concept
eTPU channel (BC) controls DC-bus break. eTPU channel (ASAC) triggers on-chip convertor preprocess sampled values. eTPU channel (PWMMAC) internally synchronizes outputs calculate duty-cycles individual phases from (alpha/beta) (angle/amplitude) reference frames. eTPU channel (SC) internally calculates actual motor speed controls speed closed loop. actual motor speed calculated based position counter last edge time. required speed provided passed through ramp. speed control algorithm processes error between required actual speed. controller output passed ACIMVHZ eTPU function newly corrected value required motor speed. eTPU channel (ACIMVHZ) internally performs simple V/Hz control. ACIMVHZ calculates applied voltage vector components based required speed (omega) defined V/Hz ramp. ACIMVHZ outputs, either alpha beta vector components angle amplitude passed generator.
3.2.1
User Interface
application interfaced FreeMASTER running connected MPC5554DEMO RS232 serial cable. on/off switch FreeMASTER control page affects application state enables disables phases. When switch off-position, voltage applied motor windings. When on/off switch on-position, motor speed controlled speed gauge FreeMASTER control page. FreeMASTER also displays real-time values application variables their time behavior using scopes. FreeMASTER software designed provide application-debugging, diagnostic, demonstration tool development algorithms applications. runs connected MPC5554DEMO RS232 serial cable. small program resident microprocessor communicates with FreeMASTER software return status information process control information from FreeMASTER software, executing uses part Microsoft Internet Explorer user interface. Note, that FreeMASTER version 1.2.31.1 higher required. FreeMASTER application downloaded from http://www.freescale.com. more information about FreeMASTER, refer Reference
Hardware Implementation Application Setup
previously stated, application runs PowerPC MPC5554 microprocessor using: MPC5554DEMO evaluation board Interface board with UNI-3 3-phase AC/BLDC high-voltage power stage Inline optoisolation box, which connected between host computer controller board 3-phase induction motor Type AM40V, Brno s.r.o., Czech Republic
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
System Concept
Quadrature encoder 16.05A 1024-I2-5, Baumer Electric, Switzerland Power supply MPC5554DEMO evaluation board, 9-12V minimum Amps Power supply 3-phase induction motor, 230V
Figure shows connection these parts. system parts supplied Freescale documented according references.
3.3.1
PowerPC MPC5554 Evaluation Board (MPC5554DEMO)
MPC5554 demonstration board shows example minimum configuration MPC5554 system with addition external SRAM optional peripherals. This board intended full evaluation board MPC5554, shows minimal system learning about MPC5500 family products. demo board shows example connecting MPC5554 MC33394 Power Supply connectivity other basic optional circuits (configuration non-default boot operation CAN, LIN, RS-232 transceivers). demo board also provides access pins MPC5554 some inputs that connected MPC5554 demonstration purposes. more information, refer Reference Table lists MPC5554DEMO jumper settings used application.
Figure Connection Application Parts
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
System Concept
Table MPC5554DEMO Jumper Settings Jumper VRH_EN SRAM_SEL VSTBY_SWITCH Setting CAN_SEL Setting CONFIG SWITCH Setting
3.3.2
Flashing MPC5554DEMO
eSys Flasher utility used programming code into flash memory MPC5554DEMO. Check correct setting switches jumpers.Here flashing procedure: Metrowerks MPC55xx V1.5b2 open project. Choose Intflash target compile application. file simple_eflash.elf.S19, which will loaded into flash memory, created project directory bin. eSysFlasher application. Target Configuration window select type Communication Wiggler. Click close window. Program section clicking "Program Flash" button (see Figure Select Binary Image, Address check "Verify after program" option (see Figure 10). Press "Program" select intflash.bin file. Finally, press "Open" button bottom window start loading code into flash memory. code been programmed correctly, remove interface push RESET button MPC5554Demo. application should from flash.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
System Concept
Figure eSysFlasher Target Configuration Window
eSYS Flasher application downloaded from http://www.freescale.com
Figure eSys Flasher Program Window
3.3.3
Interface Board with UNI-3
This board connects power stage with motor MPC5554DEMO board used software hardware developers test programs tools. supports algorithms that Hall sensors, sensors, encoder feedback, back-EMF (electromotive force) signals sensors control. Input connections made connectors bottom side board headers MPC5554DEMO
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
System Concept
board. Output connections made 40-pin UNI-3 connector expansion headers. Power requirements input connectors. more information, refer Reference
Figure Interface Board with UNI-3
3.3.4
Setting Overcurrent Level
over-current fault signal connected eMIOS output disable input (eMIOS that enables, together with proper eTPU configuration, handling fault eTPU hardware. This connection part MPC5554. enable handling fault also software, fault signal, available eMIOS generates interrupt request case fault. over-current level trimmer (I_SEN) interface board with UNI-3 (see Figure 12). Reference describes what voltage must trimmer define over-current comparator.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
System Concept
Figure Overcurrent Level Trimmer Interface Board with UNI-3 (R24)
3.3.5
3-Phase High Voltage AC/BLDC Power Stage Board
3-phase high voltage AC/BLDC power stage board provides together with optoisolation controller boards, platform software development wide variety control algorithms miscellaneous 3-phase drives: induction, brushless (BLDC), permanent magnet, synchronous motors. Control techniques algorithms written tested without need design build power stage. This allows design application optimal system with significant time overall cost savings. power stage senses variety feedback signals suitable different motor control techniques. measures three phase currents, dc-bus current, dc-bus voltage, back voltages with zero cross sensing, inductor current, input line zero crossing PFC. power module temperature measured well. analog signals accommodated directly sampled MCU's DSP's converter. 3-phase high voltage AC/BLDC power stage consists modules: power module power stage. power stage contains sensing control circuitry interface connectors. power module mounted heatsink contains power devices, which needs dissipate heat. main power stage features are: Capable supplying 3-phase induction, synchronous, permanent magnet brushless motors 1-phase bridge rectifier dc-bus brake IGBT brake antiparallel diode Power signal connectors external board 3-phase bridge inverter (6-IGBT's) Individual phase current sensing shunts with Kelvin connections Power stage temperature sensing IGBT gate drivers Current temperature signal conditioning 3-phase back-EMF voltage sensing zero cross detection circuitry
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
System Concept
Low-voltage on-board power supplies Cooling UNI-3 motor control interface
more information, refer Reference
Figure 3-Phase AC/BLDC High Voltage Power Stage Board
3.3.6
Inline Optoisolation
Freescale's embedded motion control series in-line optoisolation links JTAG RS-232 signals from workstation controller connected high-voltage power stage. isolates workstation, peripherals that attached workstation, from dangerous voltages that present power stage. in-line optoisolation box's galvanic isolation barrier also isolates signals from high noise power stage provides noise-robust systems architecture. in-line optoisolation used mainly during development phase high-voltage power applications such electrical drives, power convertors, high voltage systems etc. in-line optoisolation connect your wide range MCU/DSP boards. more information, refer Reference
3.3.7
Induction Motor with BLDC Motor Brake Quadrature Encoder
used induction motor-brake incorporates 3-phase induction motor AM40V attached BLDC motor brake 40N. Detailed motor-brake specifications listed following Table more motor specifications, refer Reference
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
System Concept
Table Motor-Brake Specifications
Manufactured Motor Specification: Brno, Czech Republic Motor Type: Pole-Number: Nominal Speed: Nominal Voltage: Nominal Current: Brake Specification: Brake Type: Nominal Voltage: Nominal Current: Pole-Number: Nominal Speed: AM40V 3-Phase Induction Motor 1300 0.88 SG40N 3-Phase BLDC Motor 1500
Quadrature encoder 16.05A 1024-I2-5 attached motor scan encode shaft movement. basic encoder features follows: Three channel quadrature output with index pulse Resolution 1024 counts revolution -20°C 85°C operating temperature compatible Single supply more quadrature encoder specifications, refer Reference
Figure Induction Motor with BLDC Motor Brake Quadrature Encoder
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
3.3.8
Power Supply
MPC5554DEMO board powered 12-V/1.2-A power supply, 3-phase high voltage AC/BLDC power stage board powered 230-V power supply. application scaled this 230-V power supply.
Software Design
This section describes software design ACIM Volts Hertz control drive application. system processing distributed between eTPU, which parallel. eTPU tasks described these terms: Software flowchart Application state diagram eTPU application eTPU eTPU block diagram eTPU timing software uses several ready-to-use Freescale software drivers. communication between microprocessor FreeMASTER handled software included freemaster_protocol.c/.h files. eTPU module uses general eTPU utilities, eTPU function interface routines (eTPU function API), eTPU application interface routines (eTPU application API). general utilities, included etpu_util.c/.h files, used initialization global eTPU module engine settings. eTPU function routines used initialization eTPU channels interfacing each eTPU function during run-time. eTPU application encapsulates several eTPU function APIs. eTPU application eliminates need initialize each eTPU function separately handle eTPU function initialization settings, thus ensuring correct cooperation eTPU functions.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
Figure eTPU Project Structure
Software Flowchart
After reset, software initializes interrupts pins. following processing incorporated periodic timer interrupts, periodical eTPU channel interrupt, fault interrupts.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
FreeMASTER Timer Interrupt
RESET Initialize peripherals Enable interrupts
FreeMASTER Dispatcher
eTPU Channel Interrupt
wait
FreeMASTER Recorder
Fault Interrupt Timer Interrupt Handle overcurrent fault Handle application state machine Service Status Read application data structure
eTPU Global Exception Interrupt
Handle eTPU global exception
Figure Software Flowchart
4.1.1
Timer Interrupt Service Routine
timer interrupt handled timer_isr function. These actions performed periodically, timer_isr: Handle application state machine. application state diagram described detail below. Service status ApplicationButtonsAndStatusLed function. Read data structure through eTPU application routine. fs_etpu_app_acimvhzsl1_get_data (see 4.3).
4.1.2
FreeMASTER Interrupt Service Routine
FreeMASTER interrupt service routine called FMSTR_Isr. This function implemented freemaster_protocol.c.
4.1.3
eTPU Channel Interrupt Service Routine
This interrupt, which raised every period PWMMAC eTPU function running eTPU channel handled etpu_ch7_isr function. This function calls FMSTR_Recorder, implemented freemaster_rec.c, enabling configuration application variable time courses with PWM-period time resolution.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
4.1.4
Fault Interrupt Service Routine
over-current fault interrupt, which raised eMIOS input function running eMIOS channel handled emios_isr function. These actions switch motor off: Reset required speed. Disable generation signals. Switch Fault Enter APP_STATE_MOTOR_FAULT. FAULT_OVERCURRENT.
4.1.5
eTPU Global Exception Interrupt Service Routine
global exception interrupt handled etpu_globalexception_isr function. These situations cause this interrupt assertion: Microcode Global Exception asserted. Illegal Instruction Flag asserted. MISC Flag asserted. These actions switch motor off: Reset required speed. Disable generation signals. Enter APP_STATE_GLOBAL_FAULT. Based eTPU global exception source, FAULT_MICROCODE_GE, FAULT_ILLEGAL_INSTR, FAULT_MISC.
Application State Diagram
application state diagram consists seven states (see Figure that controlled power on/off switch placed FreeMASTER control page. After reset, application goes firstly APP_STATE_INIT. Where on/off switch position, APP_STATE_STOP follows, otherwise APP_STATE_MOTOR_FAULT entered on/off switch must turned from APP_STATE_MOTOR_FAULT APP_STATE_STOP. Then cycle between APP_STATE_STOP, APP_STATE_ENABLE, APP_STATE_RUN, APP_STATE_DISABLE repeated, depending on/off switch position. APP_STATE_ENABLE APP_STATE_DISABLE states introduced ensure safe transitions between APP_STATE_STOP APP_STATE_RUN states. Where over-current fault interrupt raised (see line Figure 17), APP_STATE_MOTOR_FAULT entered. This fault cleared moving on/off switch position thus entering APP_STATE_STOP. Where eTPU global exception interrupt raised (see gray line Figure 17), APP_STATE_GLOBAL_FAULT entered. global fault cleared moving on/off switch position thus entering APP_STATE_INIT.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
reset
ON/OFF switch moved
APP_STATE_INIT APP_STATE_ MOTOR_FAULT
APP_STATE_ GLOBAL_FAULT
ON/OFF switch moved
APP_STATE_STOP
ON/OFF switch moved
APP_STATE_ENABLE
APP_STATE_DISABLE
ON/OFF switch moved
APP_STATE_RUN
over-current fault interrupt
Figure Application State Diagram
next paragraphs describe processing each application states.
4.2.1
APP_STATE_INIT
This state passed through only. entered either after reset, after APP_STATE_GLOBAL_FAULT. These actions initialize (re-initialize) application: Disable over_current interrupt. Call my_system_etpu_init routine eTPU module initialization. Calibrate eQADC. destination addresses eDMA1. source address eDMA47. eTPU functions DATA addresses FreeMASTER. addresses channel configuration registers FreeMASTER. Initialize FreeMASTER. Call my_system_etpu_start routine eTPU Start. this point, eTPU parallel. Depending on/off switch position, enter APP_STATE_STOP APP_STATE_MOTOR_FAULT.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
4.2.1.1
Initialization Start eTPU Module
eTPU module initialized using my_system_etpu_init function. Later, after initialization other peripherals, eTPU started my_system_etpu_start. These functions general eTPU utilities eTPU function routines. Both my_system_etpu_init my_system_etpu_start functions, included acimvhzsl1_etpu_gct.c file, generated eTPU Graphical Configuration Tool. eTPU Graphical Configuration Tool downloaded from http://www.freescale.com/etpu. more information, refer Reference my_system_etpu_init function first configures eTPU module motor settings. Some these settings include: Channel filter mode three-sample mode Channel filter clock etpuclk input signals (from quadrature encoder) filtered channel filters. filter settings guarantee minimum delay input transition recognition TCR1 source etpuclk TCR1 prescaler TCR1 internal eTPU clock maximum rate 128-MHz system clock), corresponding 16ns resolution generated signals. TCR2 source etpuclk TCR2 prescaler TCR2 internal eTPU clock rate 128-MHz system clock). TCR2 clock settings optimized motor speed calculation precision. After configuring module engine settings, my_system_etpu_init function initializes eTPU channels. Channel quadrature decoder (QD) phase channel Channel quadrature decoder (QD) phase channel Channel quadrature decoder (QD) index channel Channel ACIM V/Hz control (ACIMVHZ) Channel speed controller (SC) Channel master motors (PWMMAC) Channel full range (PWMF) phase base channel Channel full range (PWMF) phase complementary channel Channel full range (PWMF) phase base channel Channel full range (PWMF) phase complementary channel Channel full range (PWMF) phase base channel Channel full range (PWMF) phase complementary channel Channel break controller (BC) Channel analog sensing motors (ASAC) These eTPU channels initialized fs_etpu_app_acimvhzsl1_init eTPU application function (see 4.3).
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
application settings follows: phases-type full range complementary pairs frequency dead-time Motor speed range 4000 Base frequency Boost voltage percentage voltage voltage range Number motor pole pairs Speed controller update frequency Speed controller parameters: Controller gain Integral time constant controller parameters were experimentally tuned. Speed ramp parameters: 1000 ramp from zero maximum speed. Number quadrature encoder position counter increments revolution 4096 Break controller mode-PWM-based breaking signal generated case over-voltage. Break control signal polarity active high. DC-bus voltage level, which break control signal 130% nominal DC-bus voltage DC-bus voltage level, which break control signal OFF, 110% nominal DC-bus voltage ASAC function triggers converter low-high edge DC-bus voltage measurement time, including conversion time eDMA transfer time, p_ASAC_result_queue pointer contains address eTPU DATA RAM, where result queue transferred. samples result queue shifted left bits achieve alignment corresponding 24-bit fractional format, which used eTPU functions. DC-bus voltage sample offset within ASAC_result_queue ASAC EWMA filter time constant 1000 my_system_etpu_start function first applies settings channel interrupt enable channel output disable options, then enables eTPU timers, thus starting eTPU.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
Figure eTPU Configuration Using eTPU Graphical Configuration Tool
4.2.1.2
Initialization FreeMASTER Communication
Prior FreeMASTER initialization, necessary pointers eTPU functions data bases configuration register bases. Based these pointers, which read FreeMASTER during initialization, locations eTPU function parameters configuration registers defined. This essential correct FreeMASTER operation.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
FreeMASTER consists software running microprocessor, connected RS-232 serial port. small program resident microprocessor communicates with FreeMASTER return status information processes control information from microprocessor part FreeMASTER initialized FMSTR_Init() function.
4.2.2
APP_STATE_STOP
this state, signals disabled motor off. motor shaft rotated hand, which enables explore functionality quadrature decoder (QD) eTPU function, watch variables produced signals FreeMASTER. When on/off switch FreeMASTER control page turned application goes through APP_STATE_ENABLE APP_STATE_RUN.
4.2.3
APP_STATE_ENABLE
This state passed through only. These actions switch motor drive Reset required speed. Enable overcurrent interrupt. Enable generation signals calling fs_etpu_app_acimvhzsl1_enable application routine. phases were successfully enabled, eMIOS channel configured input, interrupt falling edge, APP_STATE_RUN entered. Where phases were successfully enabled, application state does change.
4.2.4
APP_STATE_RUN
this state, signals enabled motor required motor speed using speed gauge FreeMASTER control page. latest value periodically written eTPU. When on/off switch FreeMASTER control page turned off, application goes through APP_STATE_DISABLE APP_STATE_STOP.
4.2.5
APP_STATE_DISABLE
This state passed through only. These actions switch motor drive off: Reset required speed. Disable generation signals. phases were successfully disabled, APP_STATE_STOP entered. Where phases were successfully disabled, application state remains same.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
4.2.6
APP_STATE_MOTOR_FAULT
This state entered after over-current fault interrupt service routine. application waits until on/off switch turned off. This clears fault application enters APP_STATE_STOP.
4.2.7
APP_STATE_GLOBAL_FAULT
This state entered after eTPU global exception interrupt service routine. application waits until on/off switch turned off. This clears fault application enters APP_STATE_INIT.
eTPU Application
eTPU application encapsulates several eTPU function APIs. eTPU application includes methods that enable initialization, control, monitoring eTPU application. eTPU application functions eliminates need initialize each eTPU function separately, ensures correct cooperation eTPU functions. eTPU application device independent handles only eTPU tasks. shorten eTPU application names, abbreviated application names introduced. abbreviations include: Motor type (DCM motor, BLDCM brushless motor, PMSM permanent magnet synchronous motor, ACIM induction motor, switched reluctance motor, stepper motor) Sensor type Hall sensors, shaft encoder, resolver, Sincos, sensorless) Control type open loop, position loop, speed loop, current loop, speed vector control, torque vector control) Based these definitions, ACIMVHZSL1 abbreviation `ACIM with quadrature encoder speed Volts Hertz control' eTPU motor-control application. there several applications like this, number denotes first such application order. ACIMVHZSL1 eTPU application described following paragraphs. There basic functions added ACIMVHZSL1 application API. routines found etpu_app_acimvhzsl1.c/.h files. ACIMVHZSL1 application routines will described order listed below: Initialization function:
int32_t fs_etpu_app_acimvhzsl1_init( acimvhzsl1_instance_t acimvhzsl1_instance, uint8_t uint8_t uint8_t uint8_t uint8_t uint8_t uint8_t PWM_master_channel, PWM_phaseA_channel, PWM_phaseB_channel, PWM_phaseC_channel, QD_phaseA_channel, QD_index_channel, SC_channel,
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
uint8_t uint8_t uint8_t uint8_t uint32_t uint32_t int32_t uint32_t uint8_t uint8_t int32_t int32_t uint8_t uint32_t int32_t int32_t uint32_t uint8_t uint8_t uint8_t uint8_t uint8_t uint24_t uint8_t uint8_t uint32_t
ACIMVHZ_channel, BC_channel, ASAC_channel, PWM_phases_type, PWM_freq_hz, PWM_dead_time_ns, speed_range_rpm, speed_ramp_time_ms, vhz_base_freq, vhz_boost_voltage_perc, dc_bus_voltage_mv, dc_bus_voltage_range_mv, pole_pairs, SC_freq_hz, SC_PID_gain_permil, SC_I_time_const_us, QD_pc_per_rev, BC_mode, BC_polarity, BC_u_dc_bus_ON_perc, BC_u_dc_bus_OFF_perc, ASAC_polarity, ASAC_measure_time_us, ASAC_bit_shift, ASAC_u_dcbus_queue_offset, ASAC_filter_time_constant_u_us)
uint32_t *ASAC_result_queue,
Change operation functions:
int32_t fs_etpu_app_acimvhzsl1_enable( acimvhzsl1_instance_t acimvhzsl1_instance, uint8_t int32_t fs_etpu_app_acimvhzsl1_disable( acimvhzsl1_instance_t acimvhzsl1_instance) void acimvhzsl1_instance_t acimvhzsl1_instance, int32_t speed_required_rpm) PWM_modulation_type)
Value return functions:
void acimvhzsl1_instance_t acimvhzsl1_instance, acimvhzsl1_data_t acimvhzsl1_data)
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev.
Freescale Semiconductor
Software Design
4.3.1
int32_t fs_etpu_app_acimvhzsl1_init(.)
This routine initializes eTPU channels induction motor with quadrature encoder speed closed loop application. This function these parameters: acimvhzsl1_instance (acimvhzsl1_instance_t*) This pointer acimvhzsl1_instance_t structure, which filled fs_etpu_app_acimvhzsl1_init. This structure must declared user application. Where there more instances application running simultaneously, there must separate acimvhzsl1_instance_t structure each one. PWM_master_channel (uint8_t) This master channel number. 0-31 ETPU_A 64-95 ETPU_B. PWM_phaseA_channel (uint8_t) This phase channel number. 0-31 ETPU_A 64-95 ETPU_B. case complementary signals generation complementary channel channel higher. PWM_phaseB_channel (uint8_t) This phase channel number. 0-31 ETPU_A 64-95 ETPU_B. case complementary signals generation complementary channel channel higher. PWM_phaseC_channel (uint8_t) This phase channel number. 0-31 ETPU_A 64-95 ETPU_B. case complementary signals generation complementary channel channel higher. QD_phaseA_channel (uint8_t) This quadrature decoder phase channel number. 0-31 ETPU_A, 64-95 ETPU_B. QD_phaseB_channel (uint8_t) This quadrature decoder phase channel number. 0-31 ETPU_A, 64-95 ETPU_B. QD_index_channel (uint8_t) This quadrature decoder index channel number. 0-31 ETPU_A, 64-95 ETPU_B. SC_channel (uint8_t) This speed controller channel number. 0-31 ETPU_A, 64-95 ETPU_B. ACIMVHZ_channel (uint8_t) This ACIM V/Hz Controller channel number. 0-31 ETPU_A 64-95 ETPU_B. PWM_phases_type (uint8_t) This parameter determines type phases. This parameter should assigned value PWM_freq_hz (uint32_t) This frequency PWM_dead_time_ns (uint32_t) This dead-time speed_range_rpm (int32_t) This maximum synchronous motor speed rpm.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
speed_ramp_time_ms (uint32_t) This parameter defines required speed ramp time step change required speed from speed_range_rpm slowed down ramp take defined time. vhz_base_freq (uint8_t) This parameter defines motor base frequency This parameter should assigned value (50Hz) (60Hz). vhz_boost_voltage_perc (uint8_t) This parameter defines motor boost voltage percentage base voltage. This parameter should assigned value 100. dc_bus_voltage_mv (int32_t) This DC-bus voltage pole_pairs (uint8_t) This number motor pole-pairs. SC_freq_hz (uint32_t) This speed controller update frequency assigned value must equal PWM_freq_hz divided SC_PID_gain_permil (int32_t) This speed controller gain millesimals. SC_I_time_const_us (int32_t) This speed controller integral time constant QD_qd_pc_per_rev (uint24_t) This number position counter increments revolution. BC_mode (uint8_t) This function mode. This parameter should assigned value BC_polarity (uint8_t) This output polarity. This parameter should assigned value BC_u_dc_bus_ON_perc (uint8_t) This proportion between U_DC_BUS, above which output nominal U_DC_BUS, expressed percentage (usually about 130%). BC_u_dc_bus_OFF_perc (uint8_t) This proportion between U_DC_BUS, below which output OFF, nominal U_DC_BUS, expressed percentage (usually about 110%). ASAC_polarity (uint8_t) This polarity assign ASAC function. This parameter should assigned value ASAC_measure_time_us (uint24_t) Time from first (triggering) edge second edge, which result queue supposed ready DATA_RAM us). This value depends conversion time transfer time. ASAC_result_queue (uint32_t Pointer result queue. Result queue array 16-bit words that contains measured values. ASAC_bit_shift (uint8_t) This parameter defines align data from result queue into fract24 int24). This parameter should assigned values
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
ASAC_queue_offset (uint8_t) Position U_DC_BUS sample result queue. Offset defined bytes. ASAC_filter_time_constant_us (uint32_t) This time constant EWMA filter which applies when processing DC-bus voltage samples,
4.3.2
int32_t
This routine sets modulation type enable generation signals. This function these parameters: acimvhzsl1_instance (acimvhzsl1_instance_t This pointer acimvhzsl1_instance_t structure, which filled fs_etpu_app_acimvhzsl1_init function during initialisation. PWM_modulation_type (uint8_t) This required modulation type. This parameter should assigned values FS_ETPU_APP_ACIMVHZSL1_MOD_SIN Pure sinewave modulation, Sinewave modulation with third harmonic injection, Standard space Vector Modulation, Space Vector Modulation, Space Vector Modulation.
4.3.3
int32_t fs_etpu_app_acimvhzsl1_disable
This routine disables generation signals. these parameter: acimvhzsl1_instance (acimvhzsl1_instance_t*) This pointer acimvhzsl1_instance_t structure, which filled fs_etpu_app_acimvhzsl1_init function.
4.3.4
void
This routine sets required motor speed. This function these parameters: acimvhzsl1_instance (acimvhzsl1_instance_t*) This pointer acimvhzsl1_instance_t structure, which filled fs_etpu_app_acimvhzsl1_init function. speed_required_rpm (int32_t) This required synchronous speed motor rpm.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
4.3.5
void
This routine gets application state data. This function these parameters: acimvhzsl1_instance (acimvhzsl1_instance_t*) This pointer acimvhzsl1_instance_t structure, which filled fs_etpu_app_acimvhzsl1_init function. acimvhzsl1_data (acimvhzsl1_data_t*) This pointer acimvhzsl1_data_t structure application state data, which updated.
eTPU Block Diagram
eTPU functions used ACIM Volts Hertz control drive located motor-control eTPU functions (set4 motors). eTPU functions within serve building blocks various motor-control applications. next paragraphs describe functionality each block.
Figure Block Diagram eTPU Processing
4.4.1
Generator (PWMMAC+PWMF)
generation signals motor-control applications with eTPU provided eTPU functions: PWM-master motors (PWMMAC) PWM-full range (PWMF) master motors (PWMMAC) function calculates sine wave space vector modulation resulting duty cycles, updates three phases. phases driven full range (PWMF) function, which enables full 100%) duty-cycle range.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
PWMF function generates signals. PWMMAC function controls three PWMF functions, three phases, does generate drive signal. PWMMAC executed even eTPU channel connected output pin.
input values alpha angle input values
beta amplitude
PWMMAC
update update update update update
polarity: active-high active-low center-aligned edge-aligned single channel complementary pair variable periods
PWMF PWMF PWMF
Figure Functionality PWMMAC+PWMF
more details about PWMMAC PWMF eTPU functions, refer Reference
4.4.2
Quadrature Decoder (QD)
quadrature decoder eTPU function processes signals generated shaft encoder motion control systems. uses channels decode pair out-of-phase encoder signals produce 24-bit bi-directional position counter, together with direction information, CPU. additional input channels also processed. index channel receives pulse each revolution. Based actual direction, revolution counter incremented decremented index pulse. further additional input channel indicate home position, used this application.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
position_counter direction last_edge_tcr
revolution_counter
QD_INDEX
QD_HOME
more details about eTPU function, refer Reference
4.4.3
Analog Sensing Motors (ASAC)
analog sensing motors eTPU function (ASAC) useful pre-processing analog values that measured converter transferred eTPU data memory transfer. ASAC function also useful triggering converter synchronizing other eTPU functions. above mentioned ASAC features utilized application. ASAC initialized synchronized mode, e.g. first ASAC edge synchronized with beginning period. Simultaneously, ASAC manages synchronize function generating link channel every 20th ASAC period synchronize ACIMVHZ function generating link ACIMVHZ channel each ASAC period. ASAC function preprocesses DC-bus voltage analog values passes adjusted values input ACIMVHZ functions. Processing DC-bus voltage sample includes shifting, dc-offset removing, filtering. more details about ASAC eTPU function, refer Reference
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
result queue shift offset shift offset
transfer
converter
shift offset sector
shift offset
trigger trigger
filter
dtc_a dtc_b dtc_c
filter
filter
filter
ASAC
Pre-processed analog values
link outer link inner loop controller loop controller
link inner loop controller
Figure Functionality ASAC
order ensure periodic sampling quick transfer measured data from converter eTPU data RAM, several peripheral modules used, Figure On-chip analog digital converter (eQADC) used sampling analog values. Sampling analog values triggered eTRIG signal generated internally ASAC eTPU function running eTPU channel direct memory access (eDMA) channels used: eDMA channel transfers 32-bit eQADC conversion command from eTPU data (p_ASAC_command_queue) EQADC_CFPR2 (CFIFO push register eQADC module. eDMA channel transfer initiated request generated ASAC eTPU function. eDMA channel transfers 16-bits voltage sampling result from EQADC_RFPR0 (result FIFO register eTPU data RAM. channel transfer initiated request generated eQADC module after conversion finished.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
eTRIG
period
ETPU_A_CH29 ASAC ADC0 ADC1
request
ETPU DATA
p_ASAC command_queue
eDMA
1x32bits
CHAN
EQADC_CFPR2 EQADC_RFPR0
EQADC_CFIFO2 EQADC_RFIFO0
1x16bits
p_ASAC result_queue
CHAN
Figure Analog Values Sampling, Cooperation eTPU, eDMA eQADC Modules
eDMA eQADC settings made using Quick Start Configuration Tool, refer Reference
4.4.4
ACIM Volts Hertz (ACIMVHZ)
ACIM Volts Hertz eTPU function does process input output signals. purpose control another eTPU function's input parameter. ACIMVHZ function executed even eTPU channel connected output pin. purpose ACIMVHZ function perform simple V/Hz control induction motor. ACIMVHZ eTPU function performs calculation output applied voltage vector components this order: Optionally passes required speed through speed ramp Updates applied voltage amplitude using V/Hz ramp Eliminates DC-bus ripples Updates angle output vector Determines sin(theta), cos(theta), case vector components calculation mode ACIMVHZ calculates applied voltage vector components based required speed (omega) defined V/Hz ramp.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
u_dc_bus
omega
requested_value time
voltage
ACIMVHZ
RippleElim
angle
voltage
theta theta omega*T
SinCos
sine cosine
alpha voltage sine beta voltage cosine
alpha beta
amplitude angle
more details about ACIMVHZ eTPU function, refer Reference
4.4.5
Speed Controller (SC)
speed controller eTPU function does process input output signals. controls another eTPU function's input parameter. function executed even eTPU channel connected output pin. function includes general controller algorithm. controller calculates output based inputs: measured value required value. measured value (the actual motor speed) calculated based inputs provided function. required value output speed ramp, whose input function parameter, provided another eTPU function. motor-control eTPU function set, this function mostly provides speed outer-loop.
applied_voltage
controller ramp
scaling_factor position_difference time_difference
position_counter last_edge_time
requested_value
time
Figure Functionality
more details about eTPU function, refer Reference
4.4.6
Break Controller (BC)
purpose break controller (BC) eTPU function eliminate DC-bus overvoltage when motor driven generating mode. function generates DC-bus break control signal (see Figure based actual DC-bus voltage.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
AC/DC
DC-bus
H-BRIDGE
DC-bus break control signal
Figure Functionality
described application uses mode function. this mode, function switches softly using signal. u_dc_bus_ON u_dc_bus_OFF thresholds define ramp (see Figure 25). When DC-bus voltage lower than u_dc_bus_OFF, control signal turned off. Between u_dc_bus_OFF u_dc_bus_ON thresholds, signal with duty-cycle linearly increasing from 100% generated. Above u_dc_bus_ON threshold, control signal turned functionality shown Figure Figure Figure Signal (dark blue line) represents DC-bus voltage, signal (light blue line) reflects DC-bus break control signal generated
Duty_cycle 100%
U_dc_bus_OFF U_dc_bus_ON
U_dc_bus
Figure Mode Break Controller Function
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
Figure Oscilloscope Screenshot Showing DC-Bus Voltage Course when Motor Reaches Generating Mode (Without Action Break Controller)
Figure Oscilloscope Screenshot Showing Functionality Break Controller
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
Figure Oscilloscope Screenshot Showing Functionality Break Controller Detail (Zoom DC-Bus Break Control Signal)
more details about eTPU function, refer Reference
eTPU Timing
eTPU processing event-driven. Once event service begins, execution cannot interrupted another event service. other event services have wait, which causes service request latency. maximum service request latency, worst case latency (WCL), differs each eTPU channel. affected channel priority activity other channels. each channel must kept below required limit. example, PWMF channels must lower than period. theoretical calculation WCLs, given eTPU configuration, trivial task. motor control eTPU functions introduce debugging feature that enables user check channel latencies using oscilloscope, eliminates necessity theoretical calculations. mentioned earlier, some eTPU functions intended process input output signals driving motor. These functions turn output high low, that high-time identifies period time which function execution active. oscilloscope used determine much channel activity pulse varies time, which indicates channel service latency range. example, when oscilloscope time base synchronized with periods, behavior tested channel activity pulse described these cases: pulse asynchronous with periods. This means that tested channel activity synchronized with periods. pulse synchronous with periods stable. This means that tested channel activity synchronous with periods delayed service latency.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Software Design
pulse synchronous with periods, position varies time. This means that tested channel activity synchronous with periods service latency varies this time range.
ACIMVHZ
PWMMAC
ASAC
period
period
Figure Oscilloscope Screenshot eTPU Timing
Figure explains application eTPU timing. oscilloscope screen-shot depicts typical situation described below. live view oscilloscope screen enables variation ACIMVHZ, PWMMAC, ASAC activity pulses. yellow signal generated speed controller (SC) eTPU function. pulses determine activity pulse width determines time necessary calculate motor speed from position counter last edge time, calculate required speed ramp, apply controller algorithm. This calculation performed periodically 1-kHz rate, which every 20th period. blue signal generated ACIM Volts Hertz control (ACIMVHZ) eTPU function. ACIMVHZ update performed every period. violet signal generated master motors (PWMMAC) eTPU function. pulses determine activity PWMMAC. Immediately after ACIMVHZ update finished, narrow PWMMAC pulse occurs. These pulses determine service time ACIMVHZ request update applied motor voltage vector. This service includes also calculation space vector modulation. Apart from these pulses, wider pulses signal actual update next period. green signal corresponds analog sensing motors (ASAC) eTPU function. This signal triggers converter first (low-high) edge. ASAC pulse width determines time necessary sample DC-bus voltage analog value transfer sampled values eTPU data
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Implementation Notes
memory. ASAC starts measured samples preprocessing time second edge when samples supposed ready eTPU data memory. ASAC thread executed first ASAC edge requests update every 20th period, sending link channel. Consequently, requests update (not displayed oscilloscope screen). Both updates finished prior ASAC second edge. ASAC thread executed second edge requests ACIMVHZ update. ACIMVHZ requests PWMMAC update applied motor voltage vector. these ASAC, ACIMVHZ activities have finished prior start PWMMAC update. they finished, PWMMAC update postponed next period. update starts update_time prior period frame, that update finished period frame, even worst case latency case. Reference describes update_time value.
Implementation Notes
Scaling Quantities
ACIM Volts Hertz control algorithm running eTPU uses 24-bit fractional representation real quantities except time. 24-bit signed fractional format mostly represented using 1.23 format sign bit, fractional bits). most negative number that represented -1.0, whose internal representation 0x800000. most positive number 0x7FFFFF 2-23. This equation shows relationship between real fractional representations:
Real Value Fractional Value -Real Quatity Range Eqn.
where: Fractional value fractional representation real value [fract24] Real value real value quantity RPM, etc.] Real quantity range maximal range quantity, defined application RPM, etc.] Some quantities represented using 3.21 format signed integer bits, fractional bits) eliminate need saturation range (-1, most negative number that represented -4.0, whose internal representation 0x800000. most positive number 0x7FFFFF 2-21. this format, components applied motor voltage vector passed from ACIMVHZ PWMMAC.
Speed Calculation
position_difference omega_actual scaling_factor time_difference
speed controller (SC) eTPU function calculates angular motor speed using pc_sc last_edge parameters eTPU function. This equation applies:
Eqn.
where: omega_actual [fract24] actual angular speed fraction maximum speed range
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Microprocessor Usage
position_difference [int24] difference between updated value position counter previous value, which captured previous period. fact position_difference readable from pc_sc parameter function. After reads updated value resets this pc_sc parameters which ensures that position_difference available pc_sc parameter next time reads time_difference [int24] difference between updated value last_edge previous value, which captured previous period scaling_factor pre-calculated using following equation:
etpu_tcr_freq scaling_factor -omega_max pc_per_rev Eqn.
where: etpu_tcr_freq [Hz] frequency internal eTPU timer (TCR1 TCR2) used omega_max [RPM] maximal speed range pc_per_rev number position counter increments revolution internal eTPU timer (TCR1 TCR2) frequency must that calculation omega_actual both fits into 24-bits arithmetic resolution sufficient.
Microprocessor Usage
Table Memory Usage Bytes
Memory Flash eTPU code eTPU data Available Used
Table shows much memory needed application.
eTPU module usage terms time load easily determined based these facts: According Reference maximum eTPU load produced generation 1384 eTPU cycles period. frequency 20kHz, thus period 6400 eTPU cycles (eTPU module clock MHz, clock). According Reference contribution function overall eTPU time load calculated. depends number shaft encoder pulses (1024) motor speed (maximum 3000 rpm). maximum eTPU busy time encoder pulse eTPU cycles. According Reference ACIM Volts Hertz control calculation takes eTPU cycles. calculation performed every period. According Reference speed controller calculation takes eTPU cycles. calculation performed every 20th period.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Summary Conclusions
According Reference maximum eTPU load update slave switching mode eTPU cycles, maximum eTPU load edge eTPU cycles. update performed every periods. frequency DC-bus break control signal kHz, which means that BC-PWM update performed every periods. According Reference ASAC maximum eTPU load takes 54+96 eTPU cycles (both first then second edge processing performed). ASAC function processing executed every period.
values eTPU load each functions influenced compiler efficiency. above numbers given guidance only subject change. date information, refer information provided latest release available from Freescale site. peak eTPU time load occurs within period when speed controller break controller calculations take place. This peak value must kept below 100%, which ensures that processing fits into period, service latency longer than period, thus generated signals affected. Table shows eTPU module time load several typical situations. more information, refer Reference
Table eTPU Time Load
Situation Motor Speed (1707 pulses second) Motor Speed 3000 (51200 pulses second) Average Time Load 27.7 53.3 Peak Time Load Within Period 33.3 58.8
Summary Conclusions
This application note provides description demo application ACIM Volts Hertz control. application also demonstrates usage eTPU module PowerPC MPC5554, which results independent motor drive. Lastly, demo application targeted MPC5500 family devices, could easily reused with device that eTPU.
References
Table References
MPC5554 Reference Manual, MPC5554RM MPC5554DEMO User's Manual, MPC5554DEMO EVBUM Interface Board with UNI-3 User's Manual 3-phase AC/BLDC High Voltage Power Stage User's Manual
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Revision History
Table References (continued)
Freescale Embedded Motion In-Line Optoisolation User's Manual, MEMCILOBUM 3-Phase Induction Motor AM40V, Brno, page: http://www.embrno.cz Quadrature Encoder 16.05A 1024-I2-5, Baumer Electric, page: http://www.baumerelectric.com FreeMASTER page, http://www.freescale.com, search keyword "FreeMASTER" Enhanced Time Processing Unit Reference Manual, ETPURM "Using Quadrature Decoder (QD) eTPU Function," AN2842 "Using Speed Controller (SC) eTPU Function," AN2843 "Using Motor Control eTPU Functions," AN2969 "Using Analog Sensing Motors (ASAC) eTPU Function," AN2970 "Using ACIM Volts Hertz Control (ACIMVHZ) eTPU Function," AN2971 "Using Break Controller (BC) eTPU Function," AN2845 "Using Motor Control eTPU Function (set4)," AN2968 eTPU Graphical Configuration Tool, http://www.freescale.com, search keyword "ETPUGCT" MPC5550 Quick Start User's Manual
Revision History
Table Revision History
Revision Rev. Location(s) Substantive Change(s) This first released version this document.
Table provides revision history this document.
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Revision History
Induction Motor Volts Hertz Control with Speed Closed Loop, Driven eTPU MPC5500, Rev. Freescale Semiconductor
Reach
Home Page: www.freescale.com E-mail: support@freescale.com USA/Europe Locations Listed: Freescale Semiconductor Technical Information Center, CH370 1300 Alma School Road Chandler, Arizona 85224 +1-800-521-6274 +1-480-768-2130 support@freescale.com Europe, Middle East, Africa: Freescale Halbleiter Deutschland GmbH Technical Information Center Schatzbogen 81829 Muenchen, Germany 1296 (English) 52200080 (English) 92103 (German) (French) support@freescale.com Japan: Freescale Semiconductor Japan Ltd. Headquarters ARCO Tower 1-8-1, Shimo-Meguro, Meguro-ku, Tokyo 153-0064, Japan 0120 191014 5437 9125 support.japan@freescale.com Asia/Pacific: Freescale Semiconductor Hong Kong Ltd. Technical Information Center King Street Industrial Estate N.T., Hong Kong +800 2666 8080 support.asia@freescale.com Literature Requests Only: Freescale Semiconductor Literature Distribution Center P.O. 5405 Denver, Colorado 80217 1-800-441-2447 303-675-2140 Fax: 303-675-2150
Information this document provided solely enable system software implementers Freescale Semiconductor products. There express implied copyright licenses granted hereunder design fabricate integrated circuits integrated circuits based information this document. Freescale Semiconductor reserves right make changes without further notice products herein. Freescale Semiconductor makes warranty, representation guarantee regarding suitability products particular purpose, does Freescale Semiconductor assume liability arising application product circuit, specifically disclaims liability, including without limitation consequential incidental damages. "Typical" parameters that provided Freescale Semiconductor data sheets and/or specifications vary different applications actual performance vary over time. operating parameters, including "Typicals", must validated each customer application customer's technical experts. Freescale Semiconductor does convey license under patent rights rights others. Freescale Semiconductor products designed, intended, authorized components systems intended surgical implant into body, other applications intended support sustain life, other application which failure Freescale Semiconductor product could create situation where personal injury death occur. Should Buyer purchase Freescale Semiconductor products such unintended unauthorized application, Buyer shall indemnify hold Freescale Semiconductor officers, employees, subsidiaries, affiliates, distributors harmless against claims, costs, damages, expenses, reasonable attorney fees arising directly indirectly, claim personal injury death associated with such unintended unauthorized use, even such claim alleges that Freescale Semiconductor negligent regarding design manufacture part.
Freescaleand Freescale logo trademarks Freescale Semiconductor, Inc. other product service names property their respective owners.© Freescale Semiconductor, Inc. 2004. rights reserved. AN3205 Rev. 06/2006

Other recent searches


PTB48540 - PTB48540   PTB48540 Datasheet
M74HC4351 - M74HC4351   M74HC4351 Datasheet
LM431 - LM431   LM431 Datasheet
LF155 - LF155   LF155 Datasheet
LF156 - LF156   LF156 Datasheet
LF157 - LF157   LF157 Datasheet
JDGC0128 - JDGC0128   JDGC0128 Datasheet
EL164A - EL164A   EL164A Datasheet
ADC0802 - ADC0802   ADC0802 Datasheet
ADC0803 - ADC0803   ADC0803 Datasheet
ADC0804 - ADC0804   ADC0804 Datasheet

 

Privacy Policy | Disclaimer
© 2012 Datasheet Archive