Posted on 02 November 2019

Motor Control in Mind

Free Bodo's Power Magazines!




Completing the toolchain for fast, efficient Motor-Drive Design

Field-Oriented Control has become the preferred option for many of the motor drives used in industrial and consumer applications. However, despite an abundance of suitable IP being available to developers, delivering true solutions requires a high degree of support - including intuitive tools to help visualise the motor’s behaviour

By Roland Gehrmann, Toshiba Electronics Europe GmbH

Motor Control Applications and Strategies

Appliance designers are increasingly implementing variable-speed motor drives to achieve superior energy ratings as product marking schemes for refrigerators, washing machines and other appliances focus buyers’ attention on energy consumption. However, the more complex nature of these drives requires more design effort and an increased focus on software– which means that solutions that minimise the development and programming overhead are particularly attractive to engineers. And the most effective development environments increasingly bring together flexible prototype hardware, the means to easily control and visualise motor behaviour, and tools that simplify testing and fine tuning.

Vector Control, or Field-Orientated Control (FOC) has become the preferred strategy in many appliance designs, enabling vendors to meet demands for efficiency, quiet operation and long-term reliability at a competitive selling price. By manipulating motor currents and voltages with reference to the rotor axes, FOC provides smooth and responsive control without the high demand on compute power imposed by traditional sinusoidal control techniques at high rotor speeds.

IP for implementing FOC has developed quickly in recent years; designers can choose to implement the algorithms in software, in register- configurable hardware, or using a combination of proprietary algorithms and IP supplied by a processor or power-semiconductor vendor. Fully software-based FOC can be implemented in a Digital Signal Processor (DSP) or a high-performance microcontroller such as the latest devices built around the ARM® Cortex™-M3 processor core. Microcontrollers such as the Toshiba TMPM37x family, for example, implement important FOC algorithms in hardware, which allows the Cortex-M3 CPU to be used for other application-level tasks. In fact, the TMPM37x provides separate Programmable Motor Drive (PMD) and Vector Engine (VE) IP blocks for controlling a 3-phase BLDC motor. This firmware-based approach gives flexibility for designers to combine their own algorithms with vendor IP to achieve an optimal blend of cost, performance and differentiating features. It also allows developers to use CPU sleep modes most effectively to minimise energy consumed by the control circuitry.

The TMPM37x PMD block implements a 3-phase PWM generator, dead-time controller, protection circuit and ADC timing network. Developers are free to combine functions from the PMD block with any proprietary motor-control IP if required. Alternatively, the Toshiba VE is used in combination with the embedded PMD functions, acting as a co-processor to offload the main CPU. Within the VE, a scheduler for event and priority control, a calculation core and decoder, an operation unit, a multiply-accumulate unit and FOC modules handle processing of the 3-phase current input from the MCU’s ADC and perform the FOC algorithm.

When the PMD and VE are used together, only a few simple register settings are required to manage all motor-control functions including three-phase PWM waveform generation at 16-bits resolution, as well as speed control and position estimation. Compared to typical software- based FOC, which requires the CPU to generate data on each PWM period, this approach reduces the processor loading to one computation at every rotor-position update; that is, at 60° intervals only.

The microcontroller architecture also provides a 12-bit ADC for highspeed PWM-synchronised analogue-to-digital conversion, as well as an on-board comparator to detect Emergency-stop conditions. Programmable amplifiers are also integrated, which allow flexible gain setting for the motor phase currents.

Enablement Makes the Difference

To build a motor drive using a TMPM37x microcontroller, the designer must develop the application, configure the PMD and VE blocks and integrate any proprietary IP, and subsequently test the application and verify satisfactory motor performance using prototype hardware. Application development is aided by taking advantage of the microcontroller’s ARM Cortex-M processor architecture. A number of development environments are already established for ARM Cortex-M3 devices, including tools such as Atollic TrueStudio® , IAR KickStart or Embedded Workbench, and Keil MDK.

A motor-control starter kit containing separate processing and power boards provides prototype hardware on which developers can begin building their applications. The CPU board connects to a host PC via a USB link, allowing the user to download applications compiled using the chosen development environment. The circuitry on board provides PWM output signals and other control signals to an edge connector.

Separating the processor board from the driver board, which contains the power electronics including the MOSFET bridge for driving the motor, provides a number of advantages. It allows developers to use their own power stage if required, which may be preferred if an established, proven power design is already available. Separating the processor and power boards also assists effective isolation using optocouplers, thereby allowing PC tools and logic development to be confined within a safe voltage area. In addition designers can connect different power boards, thereby benefiting from flexibility to target a variety of motors having different current and voltage ratings.

Giving Sight to the Mind’s Eye

Engineers ready to begin development using the motor-control microcontroller, application development tools and starter kit hardware also need a convenient means of setting up and controlling motor parameters, and of visualising the behaviour to fine-tune performance.

To satisfy this requirement, Toshiba has developed the PC-based graphical tool MotorMind. Using MotorMind, engineers can transfer key parameters to the evaluation board and immediately run the motor using new settings without having to recompile the firmware. In most cases, customised set-up of the motor can typically be achieved in under an hour, and values can be changed on the fly if necessary. This helps shorten development by enabling engineers to assess the effects of any design changes, and revise and re-test quickly if necessary.

The tool provides a Graphical User Interface (GUI) for configuring motor parameters, adjusting speed settings, and monitoring status in real time via a graphical display showing target speed, current speed and torque. It also incorporates a type of Digital Storage Oscilloscope (μDSO) function with advanced trigger settings.

Uploading motor parameters using the MotorMind GUI

As illustrated in figure 1, motor parameters, such as pole pairs, current ratings, rotational directions, acceleration and encoder details can be entered and transferred to the CPU board using click-toupload controls. Proportional-Integral (PI) control settings and system parameters such as deadtime, PWM frequency, and shutdown/restart behaviour can also be set via the GUI. Settings can also be captured from the CPU board, either by clicking or by automatic download when the GUI is started.

The GUI presents several windows, including a system-load indicator that shows CPU usage, as well as a motor configuration window that provides a start/stop button and a slider control for setting rotation speed. In addition, two larger windows provide a Statistics view showing motor speed, torque and current against target speed, and the DSO display, as shown in figure 2.

comprehensive assessment of motor and application performance

The built-in μDSO function presents captured signals with resolution of up to 50μs, at a PWM frequency of 20kHz. Up to eight VE and firmware parameters can be displayed at any one time, which the user can choose from a list of 32 possible signals. These include phase voltages, phase currents, d- and q-axis currents, reference currents, proportional coefficients, and other internal signals from the microcontroller’s integrated vector engine (figure 3). The user can also select trigger sources, and set trigger conditions such as rising or falling edge, centre or left trigger, as well as the threshold value for the trigger, as with a conventional storage oscilloscope. In addition, the function can be programmed to log every nth event, (up to n = 256) for longer recordings. Tick duration and total recording time are displayed at the bottom of the window.

view into the microcontroller’s vector engine

When viewed as a whole, the MotorMind GUI allows the designer to observe in real time how modifying various parameters affects motor behaviour and MCU performance during acceleration, operation at target speed, and deceleration. This allows designers to quickly identify and resolve bugs and problems during prototyping and testing. Parameters can be easily exported to a header file for subsequent compiling into firmware. A storage and loading function allows the software to be used with different motor applications.

The motor-control evaluation kit and MotorMind configuration/analysis tool are used in conjunction with online resources such as a descriptive startup guide detailing software and hardware setup, sample applications and code, and application briefs covering subjects such as connecting Hall sensors. Schematics for assemblies such as the CPU board and power module are also available, helping to further simplify and streamline the product realisation process.


The combination of a high-performance microcontroller and FOC firmware provide a flexible platform for designers to build energy-efficient 3-phase BLDC motor drives. Using an industry-standard microcontroller development environment, and with the support of dedicated graphical configuration and analysis tools, it is possible to build, test and fine-tune motor drives for consumer or industrial use targeting a variety of applications and power ratings.


VN:F [1.9.17_1161]
Rating: 0.0/6 (0 votes cast)

This post was written by:

- who has written 791 posts on PowerGuru - Power Electronics Information Portal.

Contact the author

Leave a Response

You must be logged in to post a comment.