Three-Phase BLDC Sensorless Motor Control Using the MKV4x In Quadcopter Application

Size: px
Start display at page:

Download "Three-Phase BLDC Sensorless Motor Control Using the MKV4x In Quadcopter Application"

Transcription

1 Freescale Semiconductor, Inc. Document Number: AN5169 Application Note Rev. 0, 07/2015 Three-Phase Sensorless Motor Control Using the MKV4x In Quadcopter Application By: Zbynek Mynar 1. Introduction This application note describes the implementation of a sensorless control of four three-phase brushless DC () motors using a single Freescale 32-bit Kinetis MKV46F256 device as Electronic Speed Controller (ESC) in a quadcopter application. The sensorless control software for a single motor and the control theory in general are described in Three-Phase Sensorless Motor Control Application (document DRM144). The hardware-dependent part of code of this general motor-control software is separated, which enables simple porting to new devices and easy scalability for multi-motor applications. This application note focuses on implementing this software on the MKV46F256 device and on the multi-motor aspects of sensorless control. It describes the modifications of a single-motor control software that enables running multiple motors on one device, bare-metal setup of all used peripherals, special features needed for the quadcopter drone application, and a basic overview of the MKV46F256 device. Contents 1. Introduction Advantages and features of MKV4x ESC for quadcopter with MKV4x Implemented software concept Hardware-independent part of code Input / output variables of the motor-control software Peripheral drivers and initialization Hardware CPU load and memory usage Conclusion Acronyms and abbreviations References Revision history Freescale Semiconductor, Inc. All rights reserved. This datasheet has been downloaded from at this page

2 Introduction 1.1. Advantages and features of MKV4x The Kinetis KV4x family of MCUs is a high-performance solution based on the ARM Cortex -M4 core running at 150 MHz with floating-point unit, and up to 256 KB of flash and 32 KB of RAM, which is suitable mainly for motor-control applications. Advanced peripherals, such as high-resolution pulse-width modulation (PWM) modules with a total of 30 PWM channels, and high-speed dual 12-bit analog-to-digital converters (ADCs), make these devices ideal for multi-motor systems. The basic block diagram of the MKV4x MCUs is shown in Figure 1. Other features of the MKV4x MCUs are: System peripherals 16-channel DMA controller Low-leakage wakeup unit SWD interface and Micro Trace buffer Advanced, independently-clocked watchdog Analog modules Two 12-bit cyclic ADCs Four analog comparators (CMP) containing a 6-bit DAC and a programmable reference input One 12-bit DAC Timers One eflexpwm with four submodules, providing 12 PWM outputs Two 8-channel FlexTimers (FTM0 and FTM3) One 2-channel FlexTimers (FTM1) Four Periodic Interrupt Timers (PIT) Two Programmable Delay Blocks (PDB) Quadrature encoder / decoder (ENC) ARM Cortex-M4 32-bit CPU 150 MHz JTAG / SWD SPFPU MCM 16-ch DMA Communication interfaces Two Universal Asynchronous Receiver / Transmitter (UART) / FlexSCI modules with a programmable 8-bit or 9-bit data format One 16-bit SPI module One I 2 C module Two FlexCAN modules Operating characteristics Voltage range: 1.71 V to 3.6 V Temperature range: 40 C to 105 C Clocks 32 khz to 40 khz or 3 MHz to 32 MHz crystal oscillator Multipurpose Clock Generator (MCG) with frequency-locked loop and phase-locked loop, referencing either internal or external reference clock MCG 32 khz RC 8 MHz RC PLL MHz Osc Low range: 32 khz High range: 4-20 MHz Crossbar switch (AXBS Lite) FMC GPIO up to RCM SIM PMC 128 Peripheral bridge P-flash up to 256 KB eflexpwm 8 ch + 4 ch 12-bit ADC (4.1 MSPS 12-bit ADC (4.1 MSPS) FlexTimer 8ch + 8 ch + 2 ch 2 x PDB XBARA SRAM up to 32 KB nano-edge 1 x 12-bit DAC 4 x HSCMP with 6-bit DAC FlexSCI FlexSCI LPTMR SPI ENC EWM WDOG 4-ch PIT XBARB I 2 C SMBUS FlexCAN x 2 CRC IRQ AOI Figure 1. KV4x block diagram 2 Freescale Semiconductor, Inc.

3 ESC for quadcopter with MKV4x 2. ESC for quadcopter with MKV4x The quadcopter is a very popular design of Unmanned Aerial Vehicle (UAV). In the simplest form, which is shown in Figure 2, it consists of a flight controller and four ESCs, one for each motor. The flight controller is usually equipped with a radio to receive flight commands provided by the pilot and the Inertial Measurement Unit (IMU). The IMU provides information (such as velocity and orientation) that are necessary for autonomous stabilization of the vehicle, using the internal accelerometer, gyroscope, and sometimes also the magnetometer and GPS receiver. Based on this information, it determines the necessary pull (speed) of each rotor, which is then provided to the ESC of a given motor. Each ESC contains a three-phase inverter driven by the MCU with a specialized motor-control software. M1 M2 Discrete pre-driver Discrete pre-driver ESC MCU MCU ESC Radio GPS Flight Controller ESC MCU MCU ESC Discrete pre-driver Discrete pre-driver M3 M4 Figure 2. Quadcopter block diagram with a common arrangement The solution described in this application note combines four separate ESC boards into one ESC with a single 32-bit Kinetis MKV46F MCU capable of driving four motors, as shown in Figure 3. This arrangement enables collecting information from all four inverters into a single MCU, which can be used for easier debugging (FreeMASTER run-time debugging tool is used in this case), diagnostics, logging, and higher safety, or for implementation of new features, such as estimation of the remaining flight time based on current consumption. Each inverter in this solution is also enhanced with an MC34GD3000 pre-driver. This IC is capable of driving only N-channel MOSFETs for better efficiency, it can operate with a supply voltage of up to 58 V, 100% duty cycle, and it offers many diagnostics options and improved external FET protection. To find out more about the GD3000 pre-driver features, refer to UART (FreeMASTER) Radio LEDs GPS Flight Controller PWM M1 M3 GD3000 GD3000 PWM ADC PWM ADC MCU MKV4x PWM ADC PWM ADC GD3000 GD3000 M2 M4 Electronic Speed Controller (ESC) Figure 3. Quadcopter block diagram with MKV46F as a single ESC MCU Freescale Semiconductor, Inc. 3

4 For further integrated solution combining both ESC and flight controller functionalities into a single MCU, the powerful 32-bit MKV5x family based on ARM Cortex-M7 core can be used. This high-performance MCU can run with core frequency of up to 240 MHz, contains single and double-precision floating-point unit, and up to 1 MB of flash and 256 KB of RAM. Since all KV46F peripherals used by the ESC software described in this document are present in the MKV5x MCUs as well, the software can be easily ported to the MKV5x family (this was tested with MKV58F1M0 device). For more details about the MKV5x MCU family, see The software for the MKV46F ESC MCU in this solution meets the following requirements: High-performance six-step sensorless control of four high-speed motors, including overload protection safety feature Measurement of pulse length (duty cycle) of a standard PWM-encoded signal, containing required speed information from the flight controller Serial communication for debugging purposes using the FreeMASTER protocol SPI communication for communication with the GD3000 pre-driver Other user-defined features (LED control) The implemented software is described in the following section. 3. Implemented software concept The basic requirements for the ESC MCU software were introduced in the previous section. To implement the computation-demanding task of controlling four motors in a simple, easy-to-orient manner, the final software is divided, as shown in Figure 4. The ESC software can be divided into three basic parts: The hardware-dependent part of code (dependent on the hardware board and peripheral modules of the selected MCU device), which includes the initialization of the CPU and peripheral modules, I/O control drivers, and Interrupt Service Routines (ISR) handling. The hardware-independent part of code, which contains the motor-control software and FreeMASTER run-time debugger communication module. The communication layer between the hardware-dependent and hardware-independent parts (I/O variables and flags). Each part is described in detail in the following sections. 4 Freescale Semiconductor, Inc.

5 Inverters M1 GD3000 GD3000 M2 M3 GD3000 GD3000 M4 Timer HW SW SW interface layer GPIO, SPI, Timer, T Driver SW values Analog-to-Digital Converters Driver SW PWM Modules Driver SW MCU device Device specific SW duty cycle values duty cycle GPIO, values duty cycle ¼ GPIO, values Measurements vector duty cycle First motor I/O Variables & Control Flags ¼ GPIO, ¼ Analog GPIO, Commutation PWM... First motor sensorless control algorithm Device independent SW Figure 4. Four-motor control system concept M2 M1 M4 M Hardware-independent part of code This part of software contains six-step motor-control algorithms and the embedded side of the FreeMASTER communication interface. The motor-control software (referred to as original motor-control software in the following text) and the motor-control theory are described in detail in Three-Phase Sensorless Motor Control Application (document DRM144). Only a few changes (which are described in the following text) were made to the original motor control software. A block diagram of the sensorless six-step motor-control algorithm is shown in Figure 5 (note that the voltage and current measurement belongs to the hardware-dependent portion of the software). We can divide the code also according to the algorithm sampling frequency point of view. The voltage measurement, current measurement, and position-detection tasks must be conducted at a high sampling Freescale Semiconductor, Inc. 5

6 frequency (tens of khz). These tasks are therefore executed in the fast control loop. The required speed measurement, speed, and current PI controllers are called in the slow control loop at a much lower frequency. The commutation is a completely asynchronous event, and depends on the current rotor speed. Ramp Required speed rpm % Duty cycle measurement PWM-encoded required speed Maximal DC-bus current Speed Duty cycle Limitation Commutation DC-bus current Maximal duty cycle Inverter Current & voltage measurement BEMF voltage Sector Position 1/T detection Figure 5. speed-control algorithm block diagram The modifications that were done to the original motor-control software to meet the requirements of the quadcopter application are: The Back-EMF integration sensorless position-detection method used in the original motor-control software is not suited for high rotor speeds. Due to a small number of ADC samples of phase voltage per commutation time at a high rotor speed, the precision of this method declines with speed. Zero-crossing sensorless method was implemented because it provides a better performance at higher rotor speeds. This document does not explain the principles and implementation of this method, but you can find a detailed description in 3-Phase Sensorless Motor Control Using MC9S08MP16 (document DRM117). The sensorless method is selected automatically, based on the number of PWM periods that passed since the last commutation, which depends on the actual rotor speed. The threshold between these two methods is selected using these macros: MX_SELECT_SENSORLESS_METHOD_INT_THR specifies the number of PWM periods per commutation period to go from the zero-crossing to the integration sensorless method. The recommended value is 16. MX_SELECT_SENSORLESS_METHOD_ZC_THR specifies the number of PWM periods per commutation period to go from the integration to the zero-crossing sensorless method. The value of this macro must be smaller than the MX_SELECT_SENSORLESS_METHOD_INT_THR value to introduce the switching hysteresis. The recommended value is 10. Both macros are located in the mx_bldc_appconfig.h file, where X stands for the motor number. The zero-crossing sensorless method has only one setup parameter called the advance angle, which enables forcing earlier commutation, and thus enabling the field-weakening operation. This value is defined as a percentage of the full time until the next commutation in a 16-bit fractional macro MX_ZC_ADVANCE_ANGLE, located in the same file. 6 Freescale Semiconductor, Inc.

7 The common functions, such as ReadSwFaults(), TimeEvent(), FastControlLoop(), and SlowControlLoop() are moved from the mx_state_machine.c and mx_state_machine.h files to the bldc_control.h and bldc_control.c files to prevent repetition of identical code. Freescale s Embedded Software Libraries (FSLESL) version 4.01 for ARM Cortex-M4 core are used, which results in a different data-type and variable-naming convention. For details on the FSLESL 4.01 library, refer to Input / output variables of the motor-control software This part of the software forms a communication bridge between the hardware-independent and hardware-dependent parts of code using flags and several I/O variables, including measured values of the Back-EMF voltage, DC-bus current of each motor, and DC-bus voltage. This portion of code is similar to the software in Three-Phase Sensorless Motor Control Application (document DRM144). The changes made to this part are: A new unsigned integer variable called ui16motorid is added to the main motor-control structure data type called MCSTRUC SNLS_T. The value of this variable is used to identify the correct motor within the hardware peripheral drivers. Each motor-control module must be assigned a unique identification number ranging from 0 to 3 in this variable. The output application flag UPDATE_BRAKE_RESISTOR_ON_REQ is removed, because this functionality is not used Peripheral drivers and initialization This section describes the implementation of the hardware-dependent code to the MKV46F MCU. The application contains both synchronous (slow control loop and fast control loop) and asynchronous (commutation) events. These tasks are handled using interrupt service routines, as shown in the application timing example (Figure 6). task priority Commutation ADC & Fast loop Slow loop & pulse length measurement Tsample TPWM Tsample eflexpwm.ch3 trigger M4 TPWM M1&2 M3&4 M3&4 M1&2 M3&4 eflexpwm.ch0 trigger M1 PWMACmpCH0_Isr(), PWMACmpCH1_Isr(), PWMACmpCH2_Isr(), PWMACmpCH3_Isr() ADCA_Isr() FTM1_Isr() FreeMASTER communication FMSTR_Poll() ADC EOS (triggered by FTM3) FTM1 trigger ADC EOS (triggered by FTM0) Figure 6. Application timing example time The tasks can be divided according to the priority of their execution as follows: Freescale Semiconductor, Inc. 7

8 Main loop: The flowchart of the main() function is shown in Figure 7. The peripherals, FreeMASTER embedded driver, and motor-control variables are initialized first. The variable bftmswtch is used to determine which pair of motors is to be controlled in the next execution of the fast control loop. The FreeMASTER communication task is poll-driven with a low-priority task, and it is executed in the main program loop. START Initialize peripherals Initialize FreeMASTER Initialize motor control variables bftmswtch=false FreeMASTER polling Figure 7. Main loop flowchart Slow control loop: The slow loop containing speed control and required speed (pulse length) measurement is periodically executed in the FTM1_Isr() interrupt service routine with a level 1 priority. This routine is triggered by the FlexTimer FTM1 periphery output-compare event (vector 59) each millisecond. The flowchart of this routine is shown in Figure 8. The required speed measurement is executed only in case none of the motors are in the fault state, otherwise all motors stop. The duty cycle of the PWM-encoded signal containing the required speed information from the flight controller is measured using the eflexpwm periphery in the input-capture mode. The slow control loop itself (remains the same as in Three-Phase Sensorless Motor Control Application (document DRM144)) and the duty cycle updates are then executed. START Measure Required Speed M1...4 in fault? - Slow control loop Update duty cycle Return + Required Speed=0 Figure 8. FTM1_Isr() slow loop interrupt routine flowchart 8 Freescale Semiconductor, Inc.

9 For debugging purposes, it is possible to disable the speed control loop and set the duty cycle directly, when the SPD_CLOSED_LOOP macro is reset to 0. The macro is located in the hwconfig.h file. Fast control loop: The fast loop control is executed in ADC_Isr() interrupt service routine with priority level 2. Its flowchart is shown in Figure 10. Only two motors (either motors 1 and 2 or motors 3 and 4) are controlled during a single execution. The flag variable called bftmswtch is used to determine which pair of motors is controlled. The routine is triggered with the ADC end-of-scan event (vector 55) every Tsample = 16.6 µs. All measured data are already converted and ready when the routine execution begins. The ADC runs in a parallel mode, and it is triggered by initialization event triggers of either the FTM0 or FTM3 peripheries. These triggers occur with a period of TPWM = 33.3 µs, and they are delayed by Tsample = TPWM / 2 time from each other. The Inter-Peripheral Crossbar Switch A (XBARA) is used to switch between triggers from the FTM0 and FTM3 peripheries, based on the value of the bftmswtch variable (to ensure proper synchronization). The complete trigger chain is shown in Figure 9. FTM0_INIT FTM3_INIT XBARA Figure 9. The complete ADC trigger chain The analog data are measured in this order: phase voltage, DC-bus current, and DC-bus voltage (for each motor). The fast control loop, state machine, fault reading function, and hardware update function remain the same as in Three-Phase Sensorless Motor Control Application (document DRM144). SIM bftmsw tch START SYNC0 (ADC trigger) - bftmswtch + bftmswtch=true Load M1&M2 analog meas. M1&M2 fast control loop Prepare M3&M4 analog meas. Read M1&M2 faults M1&M2 state machine Update M1&M2 HW modules bftmswtch=false Load M3&M4 analog meas. M3&M4 fast control loop Prepare M1&M2 analog meas. Read M3&M4 faults M3&M4 state machine Update M3&M4 HW modules Return Figure 10. ADC_Isr() fast loop interrupt service routine Freescale Semiconductor, Inc. 9

10 Commutation: The commutation of each motor is executed in a dedicated interrupt routine with the highest priority level 3, called PWMACmpCh0_Isr(), PWMACmpCh1_Isr(), PWMACmpCh2_Isr(), and PWMACmpCh3_Isr(). These routines are triggered by the output-compare event in the eflexpwm periphery, channel 0 (vector 97), channel 1 (vector 99), channel 2 (vector 101), and channel 3 (vector 103) Peripheral initialization This section provides basic information about the peripheral setup. For more information and a detailed function description see KV4x Reference Manual (document KV4XP100M150RM). The application uses the following peripheral and external modules for sensorless motor control: Multipurpose Clock Generator and System Integration Module (MCG, SIM) 12-bit cyclic Analog-to-Digital Converter (ADC) FlexTimer Modules (FTM0, FTM1, and FTM3) Inter-Peripheral Crossbar Switch A (XBARA) GD3000 external MOSFET pre-driver Serial Peripheral Interface (SPI) Universal Asynchronous Receiver / Transmitter (UART0) Pulse Width Modulator (PWMA / eflexpwm) General-Purpose Input / Output (GPIO) Multipurpose Clock Generator and System Integration Module (MCG, SIM) The MKV4x MCU uses the MCG and SIM modules to configure and distribute the clock across the peripheral modules. The MCG (Multipurpose Clock Generator) module provides several clock source choices for the MCU. The SIM (System Integration Module) provides system control and chip configuration. The MCG module configuration is as follows: 8 MHz crystal is used as an external reference clock source PLL is used to generate the 144 MHz MCG output clock (PRDIV = 1 and VDIV = 36) The SIM module configuration is as follows: Clock is enabled for all peripheral modules System clock is set to 144 MHz (divider OUTDIV1 = 0) Fast peripheral clock is set to 72 MHz (divider OUTDIV2 = 1) Bus / flash clock is set to 24 MHz (divider OUTDIV4 = 5) ADC trigger source is set to XBARA output Analog-to-Digital Converter (ADC) The ADC module is used for measurement of DC-bus voltage, DC-bus currents, and phase voltages. The configuration is as follows: 10 Freescale Semiconductor, Inc.

11 Input clock (conversion clock frequency) is set to 24 MHz Triggered parallel mode is selected (the source is selected in the SIM module, see Section , Multipurpose Clock Generator and System Integration Module (MCG, SIM) ), and converters A and B run scans simultaneously Three consequential samples are taken on each converter (phase voltage, DC-bus current, and DC-bus voltage samples) End of scan ISR, priority level 2 is enabled FlexTimer modules (FTM0, FTM1, and FTM3) FlexTimer modules FTM0 and FTM3 are used for the output PWM generation. FTM0 is used for controlling motors M1 and M2, and FTM3 is used for controlling motors M3 and M4. FTM1 is used for the slow control loop timing. The FTM0 and FTM3 modules have the following configuration: Input clock is set to 72 MHz fast peripheral clock Output PWM frequency is set to 30 khz Center-aligned PWM is selected Duty-cycle is updated using the LDOK feature Output mask and software control registers are updated using the software synchronization feature (commutation) Reset FTM counter on commutation Inverted PWM polarity for upper MOSFETs (GD3000 feature) FTM0 and FTM3 internal counters are delayed by one counter modulo The FTM1 peripheral module is configured as: Free-running timer Input clock is set to 36 MHz (one half of the fast peripheral clock) Output compare mode ISR on output compare, priority level 3 (low priority) Pulse Width Modulator (PWMA / eflexpwm) The PWMA / eflexpwm module A is used for both the commutation control and the required speed pulse length measurement. Each submodule performs these functions for one motor. Each submodule is configured as: Free-running timer PWM output is disabled Input clock is set to khz (fast peripheral clock divided by 128) ISR with high priority (level 3) is triggered with output compare value 2 event Enhanced capture is enabled on the PWM_X (one-shot mode, captures one rising and one falling edge). Freescale Semiconductor, Inc. 11

12 Inter-Peripheral Crossbar Switches A (XBARA) Inter-Peripheral Crossbar Switch A module is used to switch between FTM0 and FTM3 trigger for ADC triggering. Initial configuration of this module is: XBARA input IN17 (FTM0_INIT trigger) is connected to output OUT Serial Peripheral Interface (SPI) SPI is a four-wire interface used for GD3000 three-phase pre-driver configuration and status reading. This module configuration is as follows: Baud rate is set to 1.28 MHz Falling-edge SCLK polarity Master SPI mode Software chip select control Universal Asynchronous Receiver / Transmitter (UART0) UART0 is used for FreeMASTER communication between the MCU board and the PC. The module configuration is as follows: Baud rate is set to bps Receiver and transmitter are enabled Other settings are default GD3000 external MOSFET pre-driver (over SPI) The GD3000 three-phase MOSFET driver is used for output control. The SPI communication channel is used to configure and read the status of the driver. The configuration of the driver is as follows: Desaturation protection is disabled Interrupts are disabled No dead-time is generated Commutation and duty cycle control A six-step control with independent unipolar PWM switching is implemented in this application. This method has the benefits of better EMC compatibility, half the voltage ripple in comparison with bipolar switching, and lower switching losses, which prolongs the flight time. The principle of this method is shown in Figure 11. Only the upper transistors are controlled using the PWM, which, in this case, is generated using the FTM0 and FTM3 peripheral modules, while the bottom transistors remains in the defined state based on the given sector during the whole time of commutation. The bottom transistors can be controlled using the GPIO pins. You don t need to generate dead time in this case. 12 Freescale Semiconductor, Inc.

13 transistor state SAt commutation commutation commutation commutation commutation commutation commutation A-off A-off SAt SBt SCt SAb SBt B-off B-off B-off SAb SBb SCb SBb SCt C-off C-off C-off S Cb Sector time Three-phase Figure 11. Six-step control with independent unipolar switching The even channels (channel Ch0, Ch2, and Ch4) of FTM0 and FTM3 are assigned to motors M1 and M3, while the odd channels (channel Ch1, Ch3, and Ch5) of FTM0 and FTM3 are assigned to motors M2 and M4. The required duty cycle can be asserted to a given motor with the ID stored in the imotorid parameter using the FTM_SetDutyCycle() function. The time of the commutation event depends on the actual position of the rotor. Therefore, the commutation period depends on the actual motor speed. During the commutation, the PWM output configuration must be updated simultaneously. The FlexTimer periphery supports simultaneous update of the output control registers and the FTM counter initialization at the same time. The output mask register (OUTMASK) is used to determine which PWM channel output is active. The application software uses an array of structure variables Pwm_sChannelControl bldccommutationtablecomp[9], where each element of the array contains the i16mask and i16port variables, as shown in Table 1. The i16mask variable contains the mask that is asserted to the OUTMASK register. For motors that are controlled from the odd FTM0 and FTM 3 channels, the i16mask is shifted to the left by one. The i16port variable contains the mask whose bottom transistor is active. Connecting the bottom transistors for a given motor to the neighboring GPIO pins simplifies the bottom transistor control, because the i16port can be assigned directly to the GPIO output control registers. The required sector can be asserted to a given motor with ID imotorid using the FTM_SetPwmOutput() function. Freescale Semiconductor, Inc. 13

14 Table 1. Commutation table Vector i16mask i16port Transistor control SAt SAb SBt SBb SCt SCb Sector 0 0x14 0x02 PWM OFF OFF ON OFF OFF Sector 1 0x14 0x04 PWM OFF OFF OFF OFF ON Sector 2 0x11 0x04 OFF OFF PWM OFF OFF ON Sector 3 0x11 0x01 OFF ON PWM OFF OFF OFF Sector 4 0x05 0x01 OFF ON OFF OFF PWM OFF Sector 5 0x05 0x02 OFF OFF OFF ON PWM OFF Align (1 + 2) 0x10 0x04 PWM OFF PWM OFF OFF ON OFF 0x15 0x00 OFF OFF OFF OFF OFF OFF Bottom ON 0x15 0x07 OFF ON OFF ON OFF ON Required speed command measurement The required speed is sent from the flight controller to the ESC using the 400 Hz PWM protocol, which corresponds to a period of 2.5 ms. The required speed Nreq is obtained from the measured high-pulse length Tpulse, as indicated in Figure 12. In our case, the Tpulse,min time is 1 ms (corresponds to motor start speed Nreq,min), and Tpulse,max time is 1.8 ms (corresponds to the maximal motor speed Nreq,max). The correct signal parameters can be set using PULSE_MEAS_LNGTH, PULSE_MEAS_MAX, and PULSE_MEAS_MIN defines located in the hwconfig.h file. As mentioned in Section , Pulse Width Modulator (PWMA / eflexpwm), the eflexpwm periphery in the input capture mode is being used for pulse length measurement. Figure 12. Relation between the required speed and the measured pulse length 14 Freescale Semiconductor, Inc.

15 Hardware 4. Hardware The application was tested on the KV46F256VLL15 MCU and (after porting) on the MKV58F1M0VLL22 ESC demo board. The MKV58F version is shown in Figure 13. The ESC boards are nearly identical for both MCUs, and have the following features: Power supply voltage input of 12 V DC (can be up to 58 V) DC-bus current scaled to 29 A for each motor 5 V and 12 V sources for the flight controller Four three-phase bridge inverters (4x6-N-type MOSFETs) Four three-phase MC34GD3000 MOSFET gate pre-drivers with over-current and under-voltage protection Four three-phase voltage, DC-bus current, and voltage sensors SWD debugging interface Four user LED connectors Figure 13. ESC hardware board Freescale Semiconductor, Inc. 15

16 Acronyms and abbreviations 5. CPU load and memory usage The total memory usage and CPU load of the MKV46F256 MCU is listed in Table Conclusion Table 2. Total MCU memory usage and CPU load Total flash usage B 256 KB Total RAM usage* B 32 KB CPU load** % * Value includes the 1024 B FreeMASTER recorder buffer ** Only the ADC and commutation ISRs are measured The software for the quadcopter ESC board based on the MKV46F256 MCU is described in this application note. The integrated solution of a single ESC for four motors brings many advantages, as described in Section 2, ESC for quadcopter with MKV4x. Section 3, Implemented software concept focuses on a detailed description of the implemented software, which is based on the original motor-control software described in Three-Phase Sensorless Motor Control Application (document DRM144). Section 5, CPU load and memory usage shows that the high-priority tasks (fast loop and motor commutations) consume only about 55% of the CPU time, leaving space for other user-defined low-priority tasks. However, to implement both the ESC and flight controller functionality into a single MCU, the powerful 32-bit Kinetis KV5x ARM Cortex-M7 device is recommended. For more details refer to 7. Acronyms and abbreviations Term ADC BEMF CPU DC DRM FTM GPIO Table 3. Acronyms and abbreviations Analog-to-Digital Converter Back-Electromotive Force Brushless DC Motor Central Processing Unit Direct Current Design Reference Manual FlexTimer module General-Purpose Input / Output Meaning I/O Input / Output interfaces between a computer system and the external environment the CPU reads an input to sense the level of an external signal, and writes to an output to change the level of the external signal. MCU Microcontroller PWM UART SPI Pulse-Width Modulation Universal Asynchronous Receiver / Transmitter Serial Peripheral Interface module 16 Freescale Semiconductor, Inc.

17 Revision history 8. References The following references are available on freescale.com: KV4x Reference Manual (document KV4XP100M150RM) Three Phase Field Effect Transistor Pre-driver (document MC34GD3000) 3-Phase Motor Sensorless Control using MC9S08AW60, (document DRM086) 3-Phase Motor Sensorless Control using MC9S08MP16, (document DRM117) Three-Phase Sensorless Motor Control Application (document DRM144) Three-Phase Sensorless Control Using the MKV10x, (document AN4862) 9. Revision history Table 4. Revision history Revision number Date Substantive changes 0 07/2015 Initial release Freescale Semiconductor, Inc. 17

18 How to Reach Us: Home Page: freescale.com Web Support: Information in this document is provided solely to enable system and software implementers to use Freescale products. There are no express or implied copyright licenses granted hereunder to design or fabricate any integrated circuits based on the information in this document. Freescale reserves the right to make changes without further notice to any products herein. Freescale makes no warranty, representation, or guarantee regarding the suitability of its products for any particular purpose, nor does Freescale assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. Typical parameters that may be provided in Freescale data sheets and/or specifications can and do vary in different applications, and actual performance may vary over time. All operating parameters, including typicals, must be validated for each customer application by customer's technical experts. Freescale does not convey any license under its patent rights nor the rights of others. Freescale sells products pursuant to standard terms and conditions of sale, which can be found at the following address: Freescale, the Freescale logo, and Kinetis are trademarks of Freescale Semiconductor, Inc., Reg. U.S. Pat. & Tm. Off. ARM and Cortex are registered trademarks of ARM Limited (or its subsidiaries) in the EU and/or elsewhere. All rights reserved Freescale Semiconductor, Inc. Document Number: AN5169 Rev. 0 07/2015

Single Phase Two-Channel Interleaved PFC Operating in CrM Using the MC56F82xxx Family of Digital Signal Controllers

Single Phase Two-Channel Interleaved PFC Operating in CrM Using the MC56F82xxx Family of Digital Signal Controllers Freescale Semiconductor Application Note Document Number: AN4836 Rev. 1, 07/2014 Single Phase Two-Channel Interleaved PFC Operating in CrM Using the MC56F82xxx Family of Digital Signal Controllers by Freescale

More information

Sensorless PMSM Field-Oriented Control on Kinetis KV and KE

Sensorless PMSM Field-Oriented Control on Kinetis KV and KE NXP Semiconductors Document Number: AN5237 Application Note Rev. 3, 10/2016 Sensorless PMSM Field-Oriented Control on Kinetis KV and KE By: Josef Tkadlec 1. Introduction This application note describes

More information

KV4x Family Product Brief Supports 150 MHz devices with 64 KB to 256 KB Flash

KV4x Family Product Brief Supports 150 MHz devices with 64 KB to 256 KB Flash Freescale Semiconductor Document Number:KV4XPB Product Brief Rev 2, 02/2015 KV4x Family Product Brief Supports 150 MHz devices with 64 KB to 256 KB Flash 1 Introduction The Kinetis KV4x family of microcontrollers

More information

Dual FOC Servo Motor Control on i.mx RT

Dual FOC Servo Motor Control on i.mx RT NXP Semiconductors Document Number: AN12200 Application Note Rev. 0, 06/2018 Dual FOC Servo Motor Control on i.mx RT 1. Introduction This application note describes the dual servo demo with the NXP i.mx

More information

Hello, and welcome to this presentation of the FlexTimer or FTM module for Kinetis K series MCUs. In this session, you ll learn about the FTM, its

Hello, and welcome to this presentation of the FlexTimer or FTM module for Kinetis K series MCUs. In this session, you ll learn about the FTM, its Hello, and welcome to this presentation of the FlexTimer or FTM module for Kinetis K series MCUs. In this session, you ll learn about the FTM, its main features and the application benefits of leveraging

More information

Sensorless PMSM Control on MKV46F256 Using Kinetis SDK

Sensorless PMSM Control on MKV46F256 Using Kinetis SDK Freescale Semiconductor, Inc. Application Note Document Number: AN5004 Rev. 1, 03/2015 Sensorless PMSM Control on MKV46F256 Using Kinetis SDK by: Marek Zeman 1 Introduction This application note represents

More information

Motor Control using NXP s LPC2900

Motor Control using NXP s LPC2900 Motor Control using NXP s LPC2900 Agenda LPC2900 Overview and Development tools Control of BLDC Motors using the LPC2900 CPU Load of BLDCM and PMSM Enhancing performance LPC2900 Demo BLDC motor 2 LPC2900

More information

Using the High Voltage Physical Layer In the S12ZVM family By: Agustin Diaz

Using the High Voltage Physical Layer In the S12ZVM family By: Agustin Diaz Freescale Semiconductor, Inc. Document Number: AN5176 Application Note Rev. 1, 09/2015 Using the High Voltage Physical Layer In the S12ZVM family By: Agustin Diaz Contents 1. Introduction This application

More information

Dead-Time Compensation Method for Vector-Controlled VSI Drives Based on Qorivva Family

Dead-Time Compensation Method for Vector-Controlled VSI Drives Based on Qorivva Family Freescale Semiconductor Document Number: AN4863 Application Note Rev 0, June Dead-Time Compensation Method for Vector-Controlled VSI Drives Based on Qorivva Family by: Petr Konvicny 1 Introduction One

More information

RX23T inverter ref. kit

RX23T inverter ref. kit RX23T inverter ref. kit Deep Dive October 2015 YROTATE-IT-RX23T kit content Page 2 YROTATE-IT-RX23T kit: 3-ph. Brushless Motor Specs Page 3 Motors & driving methods supported Brushless DC Permanent Magnet

More information

How to Use GDU Module in MC9S08SU16

How to Use GDU Module in MC9S08SU16 NXP Semiconductors Document Number: AN5395 Application Note Rev. 0, 12/2016 How to Use GDU Module in MC9S08SU16 1. Introduction MC9S08SU16 is new NXP low-cost, high-performance and high integration UHV

More information

Sensorless BLDC Motor Control Using FRDM-KE02Z Based on Tower Board

Sensorless BLDC Motor Control Using FRDM-KE02Z Based on Tower Board Freescale Semiconductor Document Number: AN4796 Application Note Rev. 1, 11/2013 Sensorless BLDC Motor Control Using FRDM-KE02Z Based on Tower Board by: Zhen Liu, Howard Liu, and Binbin Zhang 1 Introduction

More information

Low Cost PMSM Sensorless Field-Oriented Control Based on KE02

Low Cost PMSM Sensorless Field-Oriented Control Based on KE02 NXP Semiconductors Document Number: AN5294 Application Note Rev. 1, 05/2017 Low Cost PMSM Sensorless Field-Oriented Control Based on KE02 1. Introduction This application note describes the design of a

More information

32-bit ARM Cortex-M0, Cortex-M3 and Cortex-M4F microcontrollers

32-bit ARM Cortex-M0, Cortex-M3 and Cortex-M4F microcontrollers -bit ARM Cortex-, Cortex- and Cortex-MF microcontrollers Energy, gas, water and smart metering Alarm and security systems Health and fitness applications Industrial and home automation Smart accessories

More information

Electric Bike BLDC Hub Motor Control Using the Z8FMC1600 MCU

Electric Bike BLDC Hub Motor Control Using the Z8FMC1600 MCU Application Note Electric Bike BLDC Hub Motor Control Using the Z8FMC1600 MCU AN026002-0608 Abstract This application note describes a controller for a 200 W, 24 V Brushless DC (BLDC) motor used to power

More information

Automated PMSM Parameter Identification

Automated PMSM Parameter Identification Freescale Semiconductor Document Number: AN4986 Application Note Rev 0, 10/2014 Automated PMSM Parameter Identification by: Josef Tkadlec 1 Introduction Advanced motor control techniques, such as the sensorless

More information

RL78 Motor Control. YRMCKITRL78G14 Starter Kit. Renesas Electronics Europe. David Parsons Application Engineering Industrial Business Group.

RL78 Motor Control. YRMCKITRL78G14 Starter Kit. Renesas Electronics Europe. David Parsons Application Engineering Industrial Business Group. RL78 Motor Control YRMCKITRL78G14 Starter Kit Renesas Electronics Europe David Parsons Application Engineering Industrial Business Group July 2012 Renesas MCU for 3-phase Motor Control Control Method Brushless

More information

Motor Control Solutions

Motor Control Solutions Motor Control Solutions EUF-IND-T0590 Radim Visinka MCU SW Libs Manager J U N E. 2 0 1 4 TM External Use Agenda Key Motor Control Technologies Freescale Motor Control Microcontrollers DSC and Kinetis V

More information

Firmware plugin for STSW-ESC001V1 board with ST Motor Control FOC SDK

Firmware plugin for STSW-ESC001V1 board with ST Motor Control FOC SDK User manual Firmware plugin for STSW-ESC001V1 board with ST Motor Control FOC SDK Introduction The STSW-ESC001V1 firmware package for the STEVAL-ESC001V1 board includes the application code to support

More information

XGATE Library: PWM Driver Generating flexible PWM signals on GPIO pins

XGATE Library: PWM Driver Generating flexible PWM signals on GPIO pins Freescale Semiconductor Application Note AN3225 Rev. 0, 2/2006 XGATE Library: PWM Driver Generating flexible PWM signals on GPIO pins by: Armin Winter, Field Applications, Wiesbaden Daniel Malik, MCD Applications,

More information

AN4269. Diagnostic and protection features in extreme switch family. Document information

AN4269. Diagnostic and protection features in extreme switch family. Document information Rev. 2.0 25 January 2017 Application note Document information Information Keywords Abstract Content The purpose of this document is to provide an overview of the diagnostic features offered in MC12XS3

More information

AP CANmotion. Evaluation Platform with BLDC Motor featuring XC886CM Flash Microcontroller Version 2007/10. Microcontrollers

AP CANmotion. Evaluation Platform with BLDC Motor featuring XC886CM Flash Microcontroller Version 2007/10. Microcontrollers Application Note, V1.0, April 2007 AP08060 CANmotion Evaluation Platform with BLDC Motor featuring XC886CM Flash Microcontroller Version 2007/10 Microcontrollers Edition 2007-04 Published by Infineon Technologies

More information

Using Z8 Encore! XP MCU for RMS Calculation

Using Z8 Encore! XP MCU for RMS Calculation Application te Using Z8 Encore! XP MCU for RMS Calculation Abstract This application note discusses an algorithm for computing the Root Mean Square (RMS) value of a sinusoidal AC input signal using the

More information

Reference Oscillator Crystal Requirements for MKW40 and MKW30 Device Series

Reference Oscillator Crystal Requirements for MKW40 and MKW30 Device Series Freescale Semiconductor, Inc. Application Note Document Number: AN5177 Rev. 0, 08/2015 Reference Oscillator Crystal Requirements for MKW40 and MKW30 Device Series 1 Introduction This document describes

More information

FlexTimer and ADC Synchronization

FlexTimer and ADC Synchronization Freescale Semiconductor Application Note AN3731 Rev. 0, 06/2008 FlexTimer and ADC Synchronization How FlexTimer is Used to Synchronize PWM Reloading and Hardware ADC Triggering by: Eduardo Viramontes Systems

More information

The High-Performance Data Acquisition Circuit

The High-Performance Data Acquisition Circuit Freescale Semiconductor, Inc. Document Number: AN5101 Application Note Rev. 0, 04/2015 The High-Performance Data Acquisition Circuit By Jan Tomecek 1. Introduction Currently many applications use external

More information

Improving feedback current accuracy when using H-Bridges for closed loop motor control

Improving feedback current accuracy when using H-Bridges for closed loop motor control NXP Semiconductors Application Note Document Number: AN5212 Rev. 1.0, 7/2016 Improving feedback accuracy when using H-Bridges for closed loop motor control 1 Introduction Many applications use DC motors

More information

3-in-1 Air Condition Solution

3-in-1 Air Condition Solution 3-in-1 Air Condition Solution FTF-IND-F0476 Zhou Xuwei Application Engineer M A Y. 2 0 1 4 TM External Use Agenda Abstract Application Development Sensorless PMSM FOC Timing & PFC Timing Start Up Realization

More information

Designing with STM32F3x

Designing with STM32F3x Designing with STM32F3x Course Description Designing with STM32F3x is a 3 days ST official course. The course provides all necessary theoretical and practical know-how for start developing platforms based

More information

Capacitive Sensing Interface of QN908x

Capacitive Sensing Interface of QN908x NXP Semiconductors Document Number: AN12190 Application Note Rev. 0, 05/2018 Capacitive Sensing Interface of QN908x Introduction This document details the Capacitive Sensing (CS) interface of QN908x. It

More information

Migrate PWM from MC56F8013 to MC How to set up the PWM peripheral on the MC56F8247 using the setting of the PWM on the MC56F8013

Migrate PWM from MC56F8013 to MC How to set up the PWM peripheral on the MC56F8247 using the setting of the PWM on the MC56F8013 Freescale Semiconductor Application Note Document Number: AN4319 Rev. 0, 06/2011 Migrate PWM from MC56F8013 to MC568247 How to set up the PWM peripheral on the MC56F8247 using the setting of the PWM on

More information

KEA128LEDLIGHTRD Quick Start Guide. Lighting Control Module Reference Design using Kinetis KEA128

KEA128LEDLIGHTRD Quick Start Guide. Lighting Control Module Reference Design using Kinetis KEA128 KEA128LEDLIGHTRD Quick Start Guide Lighting Control Module Reference Design using Kinetis KEA128 Quick Start Guide Get to Know the KEA128LEDLIGHTRD Board MC33901 CAN Transceiver CAN Connector LIN Connector

More information

Generating DTMF Tones Using Z8 Encore! MCU

Generating DTMF Tones Using Z8 Encore! MCU Application Note Generating DTMF Tones Using Z8 Encore! MCU AN024802-0608 Abstract This Application Note describes how Zilog s Z8 Encore! MCU is used as a Dual-Tone Multi- (DTMF) signal encoder to generate

More information

VORAGO Timer (TIM) subsystem application note

VORAGO Timer (TIM) subsystem application note AN1202 VORAGO Timer (TIM) subsystem application note Feb 24, 2017, Version 1.2 VA10800/VA10820 Abstract This application note reviews the Timer (TIM) subsystem on the VA108xx family of MCUs and provides

More information

Examples of using etimer on Power Architecture devices

Examples of using etimer on Power Architecture devices Freescale Semiconductor Document Number: AN4793 Application Note Rev. 0, 09/2013 Examples of using etimer on Power Architecture devices by: Tomas Kulig 1 ntroduction This application note describes how

More information

Control of a DC/DC Converter Using FlexPWM s Force-Out Logic

Control of a DC/DC Converter Using FlexPWM s Force-Out Logic NXP Semiconductors Document Number: AN4794 Application Note Rev. 2, 06/2016 Control of a DC/DC Converter Using FlexPWM s Force-Out Logic Implemented with MPC564xL By: Yves Briant 1. Introduction The MPC560xP

More information

1 Introduction. Freescale Semiconductor Application Note. Document Number: AN4386 Rev. 0, 01/2012

1 Introduction. Freescale Semiconductor Application Note. Document Number: AN4386 Rev. 0, 01/2012 Freescale Semiconductor Application Note Document Number: AN4386 Rev. 0, 01/2012 Implementing on the MC56F8257 A Single Phase Two-Channel Interleaved Critical Conduction Mode by: Petr Frgal System Application

More information

STELLARIS ERRATA. Stellaris LM3S8962 RevA2 Errata

STELLARIS ERRATA. Stellaris LM3S8962 RevA2 Errata STELLARIS ERRATA Stellaris LM3S8962 RevA2 Errata This document contains known errata at the time of publication for the Stellaris LM3S8962 microcontroller. The table below summarizes the errata and lists

More information

Interleaved PFC Average Current Control

Interleaved PFC Average Current Control NXP Semiconductors Document Number: AN5355 Application Note Rev. 0, 11/016 Interleaved PFC Average Current Control Implementation using MKV46F56VLx16 on High Voltage Motor Control Platform 1. Introduction

More information

F²MC-8FX/16LX/16FX/FR FAMILY BLDC DRIVE WITH THE PPG

F²MC-8FX/16LX/16FX/FR FAMILY BLDC DRIVE WITH THE PPG Fujitsu Microelectronics Europe Application Note MCU-AN-300020-E-V10 F²MC-8FX/16LX/16FX/FR FAMILY 8/16/32-BIT MICROCONTROLLER ALL SERIES BLDC DRIVE WITH THE PPG APPLICATION NOTE Revision History Revision

More information

i.mxrt1050 Migration Guide Migrating from silicon Rev A0 to Rev A1

i.mxrt1050 Migration Guide Migrating from silicon Rev A0 to Rev A1 NXP Semiconductors Document Number: AN12146 Application te Rev. 1, 05/2018 i.mxrt1050 Migration Guide Migrating from silicon Rev A0 to Rev A1 Contents 1. Introduction 1.1. Purpose This Application te is

More information

Vybrid ASRC Performance

Vybrid ASRC Performance Freescale Semiconductor, Inc. Engineering Bulletin Document Number: EB808 Rev. 0, 10/2014 Vybrid ASRC Performance Audio Analyzer Measurements by: Jiri Kotzian, Ronald Wang This bulletin contains performance

More information

NXP Repetitive short-circuit performances

NXP Repetitive short-circuit performances NXP Semiconductors Application Note Document Number: AN3567 Rev. 3.0, 7/2016 NXP Repetitive performances For the MC15XS3400C 1 Introduction This application note describes the robustness of the 15XS3400C

More information

Optimizing Magnetic Sensor Power Operations for Low Data Rates

Optimizing Magnetic Sensor Power Operations for Low Data Rates Freescale Semiconductor Document Number: AN4984 Application Note Rev 0, 10/2014 Optimizing Magnetic Sensor Power Operations for Low Data Rates 1 Introduction The standard mode of operation of a magnetic

More information

TIDA Brushless DC Propeller Controller Reference Design

TIDA Brushless DC Propeller Controller Reference Design Design Overview The TIDA-00735 reference design is a 10.8V to 25.2V brushless DC motor controller for high power propeller, fan, and pump applications. It uses the DRV8303 brushless DC motor gate driver,

More information

Rework List for the WCT-15W1COILTX Rev.3 Board

Rework List for the WCT-15W1COILTX Rev.3 Board NXP Semiconductors Document Number: WCT1012V31RLAN Application Note Rev. 0, 02/2017 Rework List for the WCT-15W1COILTX Rev.3 Board 1. Introduction In the WCT-15W1COILTX solution, the Q factor detection

More information

DRM100 Designer Reference Manual. Devices Supported: 56F801X

DRM100 Designer Reference Manual. Devices Supported: 56F801X DRM100 Designer Reference Manual Devices Supported: 56F801X Document Number: DRM100 Rev. 0 06/2008 Contents Chapter 1 Introduction 1.1 Introduction... 9 1.2 Freescale Digital Signal Controller Advantages

More information

UM2068 User manual. Examples kit for STLUX and STNRG digital controllers. Introduction

UM2068 User manual. Examples kit for STLUX and STNRG digital controllers. Introduction User manual Examples kit for STLUX and STNRG digital controllers Introduction This user manual provides complete information for SW developers about a set of guide examples useful to get familiar developing

More information

ZKit-51-RD2, 8051 Development Kit

ZKit-51-RD2, 8051 Development Kit ZKit-51-RD2, 8051 Development Kit User Manual 1.1, June 2011 This work is licensed under the Creative Commons Attribution-Share Alike 2.5 India License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/2.5/in/

More information

0.7 A 6.8 V Dual H-Bridge Motor Driver

0.7 A 6.8 V Dual H-Bridge Motor Driver Freescale Semiconductor Technical Data Document Number: MPC Rev. 3.0, 12/2013 0.7 A 6.8 V Dual H-Bridge Motor Driver The is a monolithic dual H-Bridge power IC ideal for portable electronic applications

More information

Castle Creations, INC.

Castle Creations, INC. Castle Link Live Communication Protocol Castle Creations, INC. 6-Feb-2012 Version 2.0 Subject to change at any time without notice or warning. Castle Link Live Communication Protocol - Page 1 1) Standard

More information

56F Phase AC Induction Motor V/Hz Control using Processor Expert TM Targeting Document. 56F bit Digital Signal Controllers. freescale.

56F Phase AC Induction Motor V/Hz Control using Processor Expert TM Targeting Document. 56F bit Digital Signal Controllers. freescale. 56F805 -Phase AC Induction Motor V/Hz Control using Processor Expert TM Targeting Document 56F800 6-bit Digital Signal Controllers 805ACIMTD Rev. 0 08/2005 freescale.com System Outline -Phase AC Induction

More information

1.2 A 15 V H-Bridge Motor Driver IC

1.2 A 15 V H-Bridge Motor Driver IC Freescale Semiconductor Technical Data 1.2 A 15 V H-Bridge Motor Driver IC The is a monolithic H-Bridge designed to be used in portable electronic applications such as digital and SLR cameras to control

More information

UM0791 User manual. Demonstration firmware for the DMX-512 communication protocol receiver based on the STM32F103Zx. Introduction

UM0791 User manual. Demonstration firmware for the DMX-512 communication protocol receiver based on the STM32F103Zx. Introduction User manual Demonstration firmware for the DMX-512 communication protocol receiver based on the STM32F103Zx Introduction This document describes how to use the demonstration firmware for the DMX-512 communication

More information

MC9S08MP16 High Speed BLDC Sensorless Drive Petr Staszko Freescale Czech System Laboratories Roznov pod Radhostem, Czech Republic

MC9S08MP16 High Speed BLDC Sensorless Drive Petr Staszko Freescale Czech System Laboratories Roznov pod Radhostem, Czech Republic Freescale Semiconductor Application Note Document Number: AN4142 Rev. 0, 10/2010 MC9S08MP16 High Speed BLDC Sensorless Drive by: Petr Staszko Freescale Czech System Laboratories Roznov pod Radhostem, Czech

More information

Using the HCS08 TPM Module In Motor Control Applications

Using the HCS08 TPM Module In Motor Control Applications Pavel Grasblum Using the HCS08 TPM Module In Motor Control Applications Designers can choose from a wide range of microcontrollers to provide digital control for variable speed drives. Microcontrollers

More information

AN3252 Application note

AN3252 Application note Application note Building a wave generator using STM8L-DISCOVERY Application overview This application note provides a short description of how to use the STM8L-DISCOVERY as a basic wave generator for

More information

1.2 A 15 V H-Bridge Motor Driver IC

1.2 A 15 V H-Bridge Motor Driver IC Freescale Semiconductor Technical Data 1.2 A 15 V H-Bridge Motor Driver IC The is a monolithic H-Bridge designed to be used in portable electronic applications such as digital and SLR cameras to control

More information

1X6610 Signal/Power Management IC for Integrated Driver Module

1X6610 Signal/Power Management IC for Integrated Driver Module 1X6610 Signal/Power Management IC for Integrated Driver Module IXAN007501-1215 Introduction This application note describes the IX6610 device, a signal/power management IC creating a link between a microcontroller

More information

Mapping Peripheral Capabilities When Migrating From 8-bit to 16-bit PIC MCUs

Mapping Peripheral Capabilities When Migrating From 8-bit to 16-bit PIC MCUs Mapping Peripheral Capabilities When Migrating From 8-bit to 16-bit PIC MCUs Peripherals Summary When migrating from one PIC microcontroller (MCU) family to another, you get to stay within the same MPLAB

More information

Use of PWM and ADC on MC56F84789 to Drive Dual PMS Motor FOC

Use of PWM and ADC on MC56F84789 to Drive Dual PMS Motor FOC Freescale Semiconductor Document Number:AN4608 Application Note Rev. 0, 10/2012 Use of PWM and ADC on MC56F84789 to Drive Dual PMS Motor FOC by: Jaroslav Musil 1 Introduction With the computation power

More information

ADVANCED EMBEDDED MONITORING SYSTEM FOR ELECTROMAGNETIC RADIATION

ADVANCED EMBEDDED MONITORING SYSTEM FOR ELECTROMAGNETIC RADIATION 98 Chapter-5 ADVANCED EMBEDDED MONITORING SYSTEM FOR ELECTROMAGNETIC RADIATION 99 CHAPTER-5 Chapter 5: ADVANCED EMBEDDED MONITORING SYSTEM FOR ELECTROMAGNETIC RADIATION S.No Name of the Sub-Title Page

More information

Reaction Module 2 for Peak&Hold Injection Control on the MPC5746R Using REACM2 Utility Functions

Reaction Module 2 for Peak&Hold Injection Control on the MPC5746R Using REACM2 Utility Functions Freescale Semiconductor Document Number: AN5240 Application Note Reaction Module 2 for Peak&Hold Injection Control on the MPC5746R Using REACM2 Utility Functions by: Marketa Venclikova 1 Introduction This

More information

AN Industrial Stepper Motor Driver. Application Note Abstract. Introduction. Stepper Motor Control Method

AN Industrial Stepper Motor Driver. Application Note Abstract. Introduction. Stepper Motor Control Method Industrial Stepper Motor Driver AN43679 Author: Dino Gu, Bill Jiang, Jemmey Huang Associated Project: Yes Associated Part Family: CY8C27x43, CY8C29x66 GET FREE SAMPLES HERE Software Version: PSoC Designer

More information

AVR42778: Core Independent Brushless DC Fan Control Using Configurable Custom Logic on ATtiny817. Features. Introduction. AVR 8-bit Microcontroller

AVR42778: Core Independent Brushless DC Fan Control Using Configurable Custom Logic on ATtiny817. Features. Introduction. AVR 8-bit Microcontroller AVR 8-bit Microcontroller AVR42778: Core Independent Brushless DC Fan Control Using Configurable Custom Logic on ATtiny817 APPLICATION NOTE Features Base setup for performing core independent brushless

More information

Using the Break Controller (BC) etpu Function Covers the MCF523x, MPC5500, and all etpu-equipped Devices

Using the Break Controller (BC) etpu Function Covers the MCF523x, MPC5500, and all etpu-equipped Devices Freescale Semiconductor Application Note Document Number: AN2845 Rev. 0, 04/2005 Using the Break Controller (BC) etpu Function Covers the MCF523x, MPC5500, and all etpu-equipped Devices by: Milan Brejl

More information

Freescale Semiconductor Data Sheet: Technical Data

Freescale Semiconductor Data Sheet: Technical Data Freescale Semiconductor Data Sheet: Technical Data Media Resistant and High Temperature Accuracy Integrated Silicon Sensor for Measuring Absolute, On-Chip Signal Conditioned, Temperature Compensated and

More information

Parallel Configuration of H-Bridges

Parallel Configuration of H-Bridges Freescale Semiconductor, Inc. Application Note Document Number: AN4833 Rev. 1.0, 1/2014 Parallel Configuration of H-Bridges Featuring the MC33932 and MC34932 ICs 1 Introduction Two or more H-bridges can

More information

Two Channel Distributed System Interface (DSI) Physical Interface Device

Two Channel Distributed System Interface (DSI) Physical Interface Device Freescale Semiconductor Technical Data Two Channel Distributed System Interface (DSI) Physical Interface Device The is a dual channel physical layer interface IC for the Distributed System Interface (DSI)

More information

Hello and welcome to this Renesas Interactive Course that provides an overview of the timers found on RL78 MCUs.

Hello and welcome to this Renesas Interactive Course that provides an overview of the timers found on RL78 MCUs. Hello and welcome to this Renesas Interactive Course that provides an overview of the timers found on RL78 MCUs. 1 The purpose of this course is to provide an introduction to the RL78 timer Architecture.

More information

AN Low Frequency RFID Card Reader. Application Note Abstract. Introduction. Working Principle of LF RFID Reader

AN Low Frequency RFID Card Reader. Application Note Abstract. Introduction. Working Principle of LF RFID Reader Low Frequency RFID Card Reader Application Note Abstract AN52164 Authors: Richard Xu Jemmey Huang Associated Project: None Associated Part Family: CY8C24x23 Software Version: PSoC Designer 5.0 Associated

More information

NJ88C Frequency Synthesiser with non-resettable counters

NJ88C Frequency Synthesiser with non-resettable counters NJ88C Frequency Synthesiser with non-resettable counters DS8 -. The NJ88C is a synthesiser circuit fabricated on the GPS CMOS process and is capable of achieving high sideband attenuation and low noise

More information

The Frequency Divider component produces an output that is the clock input divided by the specified value.

The Frequency Divider component produces an output that is the clock input divided by the specified value. PSoC Creator Component Datasheet Frequency Divider 1.0 Features Divides a clock or arbitrary signal by a specified value. Enable and Reset inputs to control and align divided output. General Description

More information

STM32 PMSM FOC SDK v3.2. 蒋建国 MCU Application Great China

STM32 PMSM FOC SDK v3.2. 蒋建国 MCU Application Great China STM32 PMSM FOC SDK v3.2 蒋建国 MCU Application Great China Agenda 2 1 st day Morning Overview Key message Basics Feature Performance Hardware support Tools STM32 MC Workbench SDK components Architectural

More information

USB4. Encoder Data Acquisition USB Device Page 1 of 8. Description. Features

USB4. Encoder Data Acquisition USB Device Page 1 of 8. Description. Features USB4 Page 1 of 8 The USB4 is a data acquisition device designed to record data from 4 incremental encoders, 8 digital inputs and 4 analog input channels. In addition, the USB4 provides 8 digital outputs

More information

Utilizing the Trigger Routing Unit for System Level Synchronization

Utilizing the Trigger Routing Unit for System Level Synchronization Engineer-to-Engineer Note EE-360 Technical notes on using Analog Devices DSPs, processors and development tools Visit our Web resources http://www.analog.com/ee-notes and http://www.analog.com/processors

More information

APPLICATION NOTE. AT11009: Migration from ATxmega64D3/128D3/192D3/256D3 Revision E to Revision I. Introduction. Features.

APPLICATION NOTE. AT11009: Migration from ATxmega64D3/128D3/192D3/256D3 Revision E to Revision I. Introduction. Features. APPLICATION NOTE AT11009: Migration from ATxmega64D3/128D3/192D3/256D3 Revision E to Revision I Atmel AVR XMEGA Introduction This application note lists out the differences and changes between Revision

More information

UM1763 User manual. Description of STLUX385A examples kit. Introduction. Reference documents

UM1763 User manual. Description of STLUX385A examples kit. Introduction. Reference documents User manual Description of STLUX385A examples kit Introduction This user manual provides complete information for SW developers about a set of guide examples useful to get familiar developing applications

More information

Repetitive Short-circuit Performances

Repetitive Short-circuit Performances Freescale Semiconductor Application Note AN3959 Rev. 2.0, 6/2012 Repetitive Short-circuit Performances For the MC15XS3400D, MC35XS3400D, and MC10XS3435D 1 Introduction This application note relates the

More information

Using the Z8 Encore! XP Timer

Using the Z8 Encore! XP Timer Application Note Using the Z8 Encore! XP Timer AN013104-1207 Abstract Zilog s Z8 Encore! XP microcontroller consists of four 16-bit reloadable timers that can be used for timing, event counting or for

More information

MB9BF568R Series FM4 PMSM Servo Motor Speed Control User Manual

MB9BF568R Series FM4 PMSM Servo Motor Speed Control User Manual MB9BF568R Series FM4 PMSM Servo Motor Speed Control User Manual Doc. No. 002-04466 Rev. *A Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone (USA): 800.858.1810 Phone (Intnl): +1 408.943.2600

More information

Application Note. Brushless DC Motor Control AN-1114

Application Note. Brushless DC Motor Control AN-1114 Application Note AN-1114 Abstract In this application note a GreenPAK configuration applicable for a single-phase BLDC motor is introduced. This application note comes complete with design files which

More information

DSC MC56F84xxx in the motor control application

DSC MC56F84xxx in the motor control application Freescale Semiconductor Document Number:AN4625 Application Note Rev. 0, 10/2012 DSC MC56F84xxx in the motor control application by: Arendarik Stanislav 1 Introduction 3-phase high voltage or low voltage

More information

MKW4xZ/3xA/2xZ DCDC Power Management

MKW4xZ/3xA/2xZ DCDC Power Management NXP Semiconductors Document Number: AN5025 Application Note Rev. 1, 03/2018 MKW4xZ/3xA/2xZ DCDC Power Management 1. Introduction This application note describes the usage of the DCDC Switching Mode Power

More information

LCC-10 Product manual

LCC-10 Product manual LCC-10 Product manual Rev 1.0 Jan 2011 LCC-10 Product manual Copyright and trademarks Copyright 2010 INGENIA-CAT, S.L. / SMAC Corporation Scope This document applies to i116 motion controller in its hardware

More information

MC33816 vs. PT Introduction. NXP Semiconductors Application Note. Document Number: AN5203 Rev. 1.0, 7/2016. Contents

MC33816 vs. PT Introduction. NXP Semiconductors Application Note. Document Number: AN5203 Rev. 1.0, 7/2016. Contents NXP Semiconductors Application Note Document Number: AN5203 Rev. 1.0, 7/2016 MC33816 vs. PT2000 Analog and software differences 1 Introduction MC33816 and PT2000 are programmable solenoid controllers used

More information

Implementing PFC Average Current Mode Control using the MC9S12E128 Addendum to Reference Design Manual DRM064

Implementing PFC Average Current Mode Control using the MC9S12E128 Addendum to Reference Design Manual DRM064 Freescale Semiconductor Application Note AN3052 Rev. 0, 11/2005 Implementing PFC Average Current Mode Control using the MC9S12E128 Addendum to Reference Design Manual DRM064 by: Pavel Grasblum Freescale

More information

Application - Power Factor Correction (PFC) with XMC TM. XMC microcontrollers July 2016

Application - Power Factor Correction (PFC) with XMC TM. XMC microcontrollers July 2016 Application - Power Factor Correction (PFC) with XMC TM XMC microcontrollers July 2016 Agenda 1 Key features 2 Specification 3 System block diagram 4 Software overview 5 Highlight MCU features 6 CCM PFC

More information

Training Schedule. Robotic System Design using Arduino Platform

Training Schedule. Robotic System Design using Arduino Platform Training Schedule Robotic System Design using Arduino Platform Session - 1 Embedded System Design Basics : Scope : To introduce Embedded Systems hardware design fundamentals to students. Processor Selection

More information

The Information contained herein is subject to change without notice. Revisions may be issued regarding changes and/or additions.

The Information contained herein is subject to change without notice. Revisions may be issued regarding changes and/or additions. BBB Rover Cape TM Gumstix, Inc. shall have no liability of any kind, express or implied, arising out of the use of the Information in this document, including direct, indirect, special or consequential

More information

AN4014 Application Note Adjustable LED blinking frequency using a potentiometer and STM8SVLDISCOVERY Application overview

AN4014 Application Note Adjustable LED blinking frequency using a potentiometer and STM8SVLDISCOVERY Application overview Application Note Adjustable LED blinking frequency using a potentiometer and STM8SVLDISCOVERY Application overview Note: This document introduces a very simple application example which is ideal for beginners

More information

Overview of the STM32F103xx ACIM and PMSM motor control software libraries release 2.0

Overview of the STM32F103xx ACIM and PMSM motor control software libraries release 2.0 TN0063 Technical note Overview of the STM32F103xx ACIM and PMSM motor control software libraries release 2.0 Introduction The purpose of this technical note is to provide an overview of the main features

More information

AN3332 Application note

AN3332 Application note Application note Generating PWM signals using STM8S-DISCOVERY Application overview This application user manual provides a short description of how to use the Timer 2 peripheral (TIM2) to generate three

More information

Software ISP Application Note

Software ISP Application Note NXP Semiconductors Document Number: AN12060 Application Notes Rev. 0, 10/2017 Software ISP Application Note 1. Introduction This document describes the software-based image signal processing application(sw-isp)

More information

µtasker Document µtasker Hardware Timers

µtasker Document µtasker Hardware Timers Embedding it better... µtasker Document utaskerhwtimers.doc/0.07 Copyright 2016 M.J.Butcher Consulting Table of Contents 1. Introduction...3 2. Timer Control Interface...3 3. Configuring a Single-Shot

More information

In-Depth Understanding of Water Tolerance Feature in Touch-Sensing Software Library

In-Depth Understanding of Water Tolerance Feature in Touch-Sensing Software Library Freescale Semiconductor Document Number: AN4781 Application Note Rev 0, 09/2013 In-Depth Understanding of Water Tolerance Feature in Touch-Sensing Software Library by: Eduardo Viramontes and Giuseppe Pia

More information

Hello, and welcome to this presentation of the STM32 Digital Filter for Sigma-Delta modulators interface. The features of this interface, which

Hello, and welcome to this presentation of the STM32 Digital Filter for Sigma-Delta modulators interface. The features of this interface, which Hello, and welcome to this presentation of the STM32 Digital Filter for Sigma-Delta modulators interface. The features of this interface, which behaves like ADC with external analog part and configurable

More information

Current sense chain accuracy

Current sense chain accuracy NXP Semiconductors Application Note Current sense chain accuracy for the MC20XS4200 dual 24 V high-side switch family Document Number: AN5107 Rev. 1.0, 7/2016 1 Introduction This application note discusses

More information

AN4062 Application note

AN4062 Application note Application note STM32F0DISCOVERY peripheral firmware examples Introduction This application note describes the peripheral firmware examples provided for the STM32F0DISCOVERY Kit. These ready-to-run examples

More information

AN4507 Application note

AN4507 Application note Application note PWM resolution enhancement through a dithering technique for STM32 advanced-configuration, general-purpose and lite timers Introduction Nowadays power-switching electronics exhibit remarkable

More information