Sensorless Vector Control with RL78G14 John Pocs, Applications Engineering Manager Class ID: 7L02I Renesas Electronics America Inc.
John Pocs Sr. Application Engineering Manager Application focus: motor control, PFC Support Renesas MCUs, Rx, V850, RL78 20+ years embedded system development, application and industrial experience 16 yrs with Renesas Electronics/ NEC Electronics Hardware, firmware, development tools, applications 8 yrs with Electronics Detection Systems Life safety, security systems and CCTV 5 yrs with Anina (Romania) Power Generation Plant Power generator, plant automation, power inverters Knowledge in 8/16/32-bit MCUs MSEE San Francisco State University Diploma Engineer in Industrial Electronics from Polytechnic Institute Iasi - Romania 2
Renesas Technology & Solution Portfolio 3
8/16-bit 32-bit Microcontroller and Microprocessor Line-up 2010 2013 1200 DMIPS, Superscalar Automotive & Industrial, 65nm 600µA/MHz, 1.5µA standby 500 DMIPS, Low Power Automotive & Industrial, 90nm 600µA/MHz, 1.5µA standby 165 DMIPS, FPU, DSC Industrial, 90nm 242µA/MHz, 0.2µA standby 25 DMIPS, Low Power Industrial & Automotive, 150nm 190µA/MHz, 0.3µA standby 10 DMIPS, Capacitive Touch Wide Industrial Format & LCDs Automotive, 130nm 350µA/MHz, 1µA standby 1200 DMIPS, Performance Automotive, 40nm 500µA/MHz, 35µA deep standby 165 DMIPS, FPU, DSC Industrial, 40nm 242µA/MHz, 0.2µA standby Embedded Security, ASSP Industrial, 90nm 1mA/MHz, 100µA standby 44 DMIPS, True Low Power Industrial & Automotive, 130nm 144µA/MHz, 0.2µA standby 4
Enabling the Smart Society Energy efficiency is key to a Smart Society Home Automation Energy harvesting Smart Metering Industrial Motors Motor control is key to efficient energy management 5
Agenda Introduction to the Field Oriented Control (FOC) with Sensorless Speed and Position Detection Challenges to implement SVC on 16-bit MCUs RL78G14 special features Implementation with RL78G14 Introduction to the RL78G14 kit Lab procedure Setup Sensorless Vector Control Demo Sample motor currents and DC bus voltage Drive motor in open loop Understand sensorless position and speed estimation Drive motor by closing the speed loop Tune motor operation 6
Sensorless Vector Control Loop Commanded speed * r r r Actual speed Speed Regulator i d * 0 i d * i q i q iq PI Regulator id PI Regulator * U q * U d Inverse Park transform d,q to, T 1 ( ) * U * U Inverse Clarke transform, to a, b, c SIN PWM PWM1~6 DC Bus Voltage Source 3-phase Inverter Motor Model Based Flux and Position Observer Park transform Clarke transform i q i d, to d,q T ( ) i i a,b,c to, i a i b r Speed Estimation 3-phase PMSM Computation intensive operations 7
Examples of control equations Phase voltages: νa, νb, νc ia, ib, ic phase currents Rs stator resistance λ magnetic flux linkage Clark transformation 3-phase to 2-phase in stator frame Park transformation ω angular speed L mutual inductance 8
Challenges of 16-bit MCUs for Motor Control Most 16-bit MCUs are CISC architecture Good code density (smaller memory needed) Execution time may not be fast enough for real-time control Representation of quantities is range limited 0 to 65536 unsigned -32768 to 32768 signed Without FPU scaling needs to be used Scaling limitation Multiply-Accumulate (MAC) operation: a = a + (b * c) d = b * c a = a + d Can the 16-Bit MCUs do field oriented sensorless control? Yes with the right performance and peripherals! 9
RL78G14: 16-bit MCU for Motor Control Memory Program Flash up to 64KB SRAM up to 5.5KB Data Flash up to 4KB 16-Bit CISC CPU Core 41 DMIPS @32MHz 3-stage pipelined Harvard architecture MUL/DIV/MAC instructions 16-Bit Barrel Shifter System Clock system Timers Motor Control Support DTC Interrupt Controller 4 Levels, 20 pins POR, LVD MUL/DIV/MAC Debug Single-Wire External Clock 20MHz External Clock 32.768KHz Internal OCO up to 64MHz Internal LOCO 15KHz Clock Monitoring Safety 2 x Timer Array 16-bit, 4ch Interval Timer 12-bit, 1ch Window WDT 17-bit, 1ch RTC Calendar Analog ADC 10-bit, 12ch Internal Vref. Temp. Sensor Communications 2 x I 2 C Master / Slave 16-Bit Motor Control Timers 64MHz / 1% Internal Clock RD for 3-Phase PWM RJ for interrupt culling RG for quadrature encoder ADC trigger Event Link Controller (ELC) Power Management HALT RTC,DMA Enabled SNOOZE Serial,ADC Enabled STOP SRAM On RAM Parity Check/protection ADC Self-diagnostic SFR protection Memory CRC Motor Control 3ph MC Timer RD 16-bit with dead time Encoder Timer RG 16-bit, 1ch 1 x I 2 C Multi-Master 2 x CSI/SPI 7-, 8-bit 3 x UART 7-, 8-, 9-bit 1 x LIN 1ch Data Transfer Controller (DTC) Hardware Safety Independent Watchdog Hardware shutdown Self-test Timer RJ 16-bit, 1ch o Flash ECC, RAM Parity, H/W CRC, ELC WDT, A/D, RAM/SFR write protect, Clock monitor 10
High Performance Optimized Architecture 16-bit CPU core with pipelining Efficient instruction execution 86% in 1-2 cycles Single cycle multiplication (HW math assist) Data transfer controller (up to 24 channels) HW math assist Operation Clock cycles 16-bit barrel shifter shift/rotate by n (n = 1-15) 1 multiply signed & unsigned 16 x 16 = 32 Bit result 2 multiply/accumulate signed & unsigned 16 x 16 + 32 = 32 Bit result 3 11
Motor Timer RD Timer RD Registers Waveform Control TRDGRA0 PERIOD TRDIOC0 TRDGRD0 RD0 TRDGRB0 DUTY 1 U /U TRDIOB0 TRDIOD0 TRDGRC1 TRDGRD1 RD1 TRDGRA1 TRDGRB1 DUTY 2 DUTY 3 V /V W /W TRDIOA1 TRDIOC1 TRDIOB1 TRDIOD1 Buffer Compare 12
Complementary PWM Operation TRD0 Value in TRDGRA0 TRD1 Value in TRDGRB0 Value in TRDGRA1 Value in TRDGRB1 TRDIOB0 Output TRDIOD0 Output U /U TRDIOA1 Output TRDIOC1 Output V /V TRDIOB1 Output TRDIOD1 Output W /W 13
Event Link Controller (ELC) Using Interrupt: > 9-16 cyc ELC: 3cyc ELC links Inputs and Outputs of internal peripherals Performance benefits: Reduces CPU load, interrupts, program size and power consumption Improves real-time operation Enables direct control of I/O ports and built in event timers CPU CPU External analog input voltage Interrupt Controller External analog input voltage Interrupt Controller Comparator Timer A/D Comparator Timer A/D ELC Standard processing Processing with ELC 14
Data Transfer Controller (DTC) Data transfer between memory and registers without CPU use Reduced CPU overhead CPU Memory, SFR CPU Memory, SFR DTC DTC DTC unused DTC used Number of channels DTC Performance (G14 64-pin) 24 ch Address space for transfer 64 KB Max. transmission time/ Block size Transmission target Activation sources 31 256 times / 512B memory memory memory SFR 15
RL78/G14 Use for Motor Control Control loop cycle management PWM interrupt culling (skipping) Timer RD: PWM frequency - 24KHz Timer RJ: Event count mode Count down from 2 to 0 ELC : Input from Timer RD Output to Timer RJ Control loop frequency set by Timer RJ underflow interrupt @8KHz CPU Timer RD Timer RJ Interrupt Controller ELC Timer RD Complementary PWM TRD1 Underflow Trigger Event Link Controller Event Input Trigger Timer RJ Event Counter 16
Software Flow Main Loop Main loop synchronization cnt_init==0? Hardware and software Init cnt_init=num_int 125us Interrupt Interrupt enabling 10ms Main loop Main loop body Speed ramp management Communication management General board management Parameter modification management 17
Software Flow Control Interrupt Phase current reading Park and Clarke transformations iu, iv, iw iα, iβ id, iq DC bus voltage reading Rotor phase angle calculation Current PI processing (idref, iqref), (idmea, iqmea), vdout, vqout Inverse Clarke and Park transformations vdout, vqout vαout, vβout, vuout, vvout, vwout PWM duty update Rotor phase estimation: θest Speed estimation: ωest Speed PI processing or Start up Main loop synchronization 18
Physical quantities represented as 16-bit signed integers 32-Bit: -2147483648 to +2147483648 16-Bit: -32768 to +32768 sin(), cos(): (-1 to +1) x 16384-16384 to +16384 Voltages (V): (0 to 511.9) x 64 32768 Currents (A): (0 to 32) x 1024 32768 Resistance (Ω): (0 to 128) x 256 32768 Inductance (Henry): (0 to 2) x 16384 32768 Magnetic flux (Weber): (0 to 8) x 4096 32768 19
High Integration = Cost Reduction Reduce system BOM by eliminating external components Voltage Regulator (1.6V to 5.5V input) EEPROM IC Dedicated flash memory for data storage (Data Flash) Supply Regulator IC Voltage Monitoring REG DATA FLASH RL78 CPU Internal Reset Accurate Internal Oscillators Reset IC LVD POR WDT OCO Temp. Sensor CODE FLASH PERIPHERALS SRAM PERIPHERALS 20mA port drive (no need for external transistors) IEC60730 in HW (Easier/quicker certification) X1 Temp. IC Temperature Sensor 20
Sensorless Vector Control Lab Agenda Setup Sensorless Vector Control Demo Sample motor currents and DC bus voltage Drive motor in open loop Understand sensorless position and speed estimation Drive motor by closing the speed loop Tune motor operation 21
Introduction to the RL78G14 Kit 22
RL78G14 Kit 23
RL78G14 Board 24
Lab Overview Lab Objectives 1. Get familiar with the RL78G14 starter kit and drive the motor. 2. Understand ADC sampling to measure motor currents and DC bus voltage. 3. Drive the motor in open loop. 4. Understand sensorless position and speed estimation. 5. Drive motor by closing the speed loop 6. Understand motor tuning Time to Complete Lab 100 Minutes Lab Materials Please verify you have the following materials at your lab station. RL78G14 Motor Control Evaluation Kit with E1 emulator, two USB cables, 24V DC power supply, control board and motor Laptop with the CD drive Skill Level 1. Familiar with motor control techniques 2. Familiar with sensorless vector control concepts 3. Familiar with IAR Embedded Workbench 25
Enabling the Smart Society Energy efficiency is key to a Smart Society Home Automation Energy harvesting Smart Metering Industrial Motors Motor control is key to efficient energy management 26
Questions? 27
Start Lab Please refer to the lab handout Go ahead and start the lab 28
Summary Introduced FOC with sensorless speed and position detection Challenges to implement SVC on 16-bit MCUs RL78G14 special features Implementation with RL78G14 Introduced the RL78G14 kit Lab procedure Setup sensorless vector control demo Sampled motor currents and DC bus voltage Drove motor in open loop Examined sensorless position and speed estimation Drove motor by closing the speed loop Tuned motor operation 29
Please Provide Your Feedback Please utilize the Guidebook application to leave feedback or Ask me for the paper feedback form for you to use 30
Renesas Electronics America Inc.