FPGA Technology and Software IP in Power Electronics Applications

How to design a custom electric motor drive system using COTS components

If you are an electric motor drive designer, you might be interested in getting my brand new eBook:

alizem_ebook_200kThis eBook provides guidelines to make the process of designing a custom electric motor drive faster and easier. Hence, whether you are a project manager, a system / mechanical / electrical / software engineer, you will find in this document relevant informations to help you achieve your objectives.

TABLE OF CONTENT
1- Why would you design a custom electric motor drive system ?
2- Reasons to use Commercial Off-the-Shelf (COTS) components
3- Anatomy of an electric motor drive system and COTS component selection
4- Bottleneck is software: how to plan the software development ?
4.1 – Application Software
4.2 – Commodity Interfaces Software
4.3 – Motor Control Software
5- Embedded Motor Control Software: Expertise needed !
5.1 – Developping from scratch
5.2 – Developping from reference design
5.3 – Developping from 3rd-party software
6- Development of a custom electric motor drive: A 5 steps process
6.1 – Step #1: Requirements
6.2 – Step #2: Design
6.3 – Step #3: Prototype
6.4 – Step #4: Product development
6.5 – Step #5: Production
7- How can Alizem help you achieve your business and technical objectives ?
Format: Powerpoint presentation, 64 pages.

You can download a FREE copy on Alizem website, just click here !

Impacts of an embedded software bug in power electronics applications

We all know software is a difficult skill to master and there are tremendous differences in developping software for:

  • PC/desktop applications
  • mobile/tablet applications
  • … and real-time embedded control applications such as power electronics applications

While in all cases a software bug may lead to important financial and human losses (directly or indirectly), the case of embedded software for power electronics application is special since it is meant to directly control the flow of energy from a source (battery, solar, etc.) to a load (electric motor, power network, etc.), not a flow of informations/signals/data is in a typical software application.

Impact #1: System component destruction

It means that a software bug may lead in the bad management of the flow of energy which can itself cause the destruction of components such as power stage (“shoot-through” faults), electric motor (“overcurrent” faults) or electric motor load (pump damage caused by cavitation for example).

impact of a bug power electronics software

Of course, proper installation of electrical equipement protection (i.e. fuses) can prevent most of the damage that may happen on the system components in case of a bug (overcurrent), but not all of them. For example, noise in a transducer may lead to torque ripple which may lead over time into electric motor bearing problems. This is the whole idea of electric motor “condition monitoring”, i.e. tracking over time the state of healt of the motor in order to : (1) detect faults (is there a fault, what component ?) and (2) diagnose faults (what is the cause of the fault, how severe the fault is). Those further interested in the subject may read this article.

Impact #2: Unique embedded motor control software development process

Hence, the development of motor control software needs not only software programming and digital signal processing skills, but it also needs deep “domain knowledge” experience related to power electronics, electric motors, transducers and the type of application where the software is going to run (in a home appliance or in an electric vehicle ?). More on this in a previous blog article. This point is not unique to power electronics software, the same could be same for embedded computer vision software (i.e. smart camera).

However, since motor control software bug may lead to component destruction, this has an impact on how the motor control software development and testing process is going to be made. Blowing a power stage is expensive and takes time to repair : it means you cannot afford to simply “develop some code and test” just like you would while developping a PC/mobile software application. It means you need to be sure that when you are going to turn the power switch on, you are not going to destroy your system.

How can you do that ? Well, you know my pitch on this.

FPGA-based Motor Control: “The Brains behind the Motion Controller” Webinar

design_newsaltera_may30

I will be giving a webinar on the topic of FPGA-based Motor Control on May 30th 2013. Make sure to register by click this link.

Meanwhile, if you have any particular question you would like to be addressed during the Q&A session, feel free to contact me.

I look forward to talk with you on May 30th !

NOTE (June 3rd 2013): You can now here the webinar archive by clicking here.

Why developing power electronics embedded software is so hard ?

Here is a figure I did use in a recent presentation explaining why power electronics software is so hard to develop:

Hence, in order to create quality embedded software for power electronics applications, one must have advanced knowledge on :

  • the load (motor type, dynamics, etc),
  • the electrical source (topology of the power converter, devices technologies, etc.),
  • the electronics, i.e. the device on which the software is going to run and also transducers that are going to interface with the device and the system,
  • and embedded software development, of course.
Each of those topic is in itself a speciality and represent very different branches and cultures of electrical engineering (EE), i.e. ‘power’ vs ‘software’. Those cultures are so different that the following situation arises:
  • the ‘power engineer’ doesn’t know about software development and often minimize its importance (this most of the time leads to bad software development practices which makes the situation worse),
  • the ‘software engineer’ doesn’t know about power applications since this is way out of his traditionnal type of applications (web, internet, applicative) and neglect to consider that he is working with energy (i.e.  error is not leading to a blue screen but to a damaged system or to personel injury).
In a recent interview, I made an analogy with this situation naming embedded software for power electronics applications as the triathlon of electrical engineering. The best triathlete is not the perfect swimmer, the perfect cyclist or the perfect runner: he is the best at maximizing performance in those three sports.
It is the same with embedded software for power electronics applications and this is why it is so hard.

FPGA-based Custom Motor Drives Design: The Role of 3rd-party System-Level IP

For those who didn’t have the chance to be at the annual IEEE Industrial Electronics Conference (IECON) 2012 conference in Montréal, Qc last week, you may have a look at the slides of my presentation :

I take this opportunity to thank the organizers of the Industry Forum – Michael Condry and Richard Grisel  – for their kind invitation to participate at this conference.

FPGA-based Controllers – IEEE Industrial Electronics Mazagine March 2011

Another great ‘survey’ article has been written by Dr. Éric Monmasson and his team and published in the IEEE Industrial Electronics Magazine of March 2011 and titled ‘FPGA-based Controllers – Different Perspectives of Power Electronics and Drives Applications’. Here’s the abstract of their article:

This article presents the benefits of using field-programmable gate array (FPGA)-based controllers for power electronics and drive applications. For this purpose, an algorithm perspective is first proposed, where it is stated that, depending on the intrinsic parallelism properties as well as level of complexity, it makes sense to implement each control algorithm on a specific hardware and/or software architecture to get the best performances in terms of execution time or the best ratio performance versus cost. Then, an application perspective is proposed where the constraints specifically linked to the control of power converters are discussed.

You may access it here on the IEEE Xplore.

FPGA-based motor control – A Review of 2010

This time of the year is a great moment to take a few steps back and observe what the last year has been made of and to speculate on what we can expect in 2011. We already know that 2010 has been a very important year for FPGAs with 47% growth in sales (check Kevin Morris’ recap article ‘Banner Year: 2010 in FPGAs in Review’). With no surprise, 2010 has also been a great year for FPGA-based motor control / power electronics apps, here are the highlights:

FPGA vendors and motor control kits

After Altera released 2 motor control kits in 2008 (Arrow’s MotionFire and EBV’s Falcon Eye), Xilinx and Microsemi have both announced the release of a new FPGA-based motor control kit. Actel/Microsemi did initially demo theirs at ESC in April 2010 while Xilinx have announced their new Targeted Design Platform at SPS/IPC/DRIVES 2010 conference.

At the same conference, Altera has announced new EBV’s three-level inverter demo for motor control and solar power conversion applications. It is interesting to see such demo featuring advanced inverter topologies (i.e. something different than usual two-level inverter) in which FPGA can uniquely differentiate and provide application’s improvement (three-level inverter reduce time-harmonics losses in the converter and the load but require more computation than conventional two-level inverter, more in this article showing 44% power loss reduction in wind power conversion apps).

It is worth mentionning that National Instruments – with their FPGA-based CompactRIO platform – has made noticeable appearance at the EETimes Virtual Conference on Motor Control (having Altera & Texas Instrument as Gold sponsors) with NI’s VP of Industrial and Embedded Product Lines as keynote speaker.

Alizem COTS Motor Control IP

In May 2010, Alizem has released its COTS Motor Control IP for Pump and Fan applications for Altera FPGAs. It is the first application-specific COTS Motor Control IP to be designed and sold as a plug-and-play virtual chip and meant to take advantage of FPGA technical capabilities to increase application performance and to be used by non-motor control and non-FPGA experts (see this blog articles article Motor Control IC vs Motor Control IP and also Why FPGAs are better than DSP for Motor Control ?). This IP has been demoed at ECCE2010 conference and has been the object of an article published by EETimes Programmable Logic Designline.

Some important articles

In August, Motion Control Association published an article of FPGA Motor Control (“Playing the field“) featuring Alizem, Xilinx and National Instruments. A great article on FPGA-based motor control has also been published by Xilinx (“Creating a Greener Future for Industrial Motor Control“) in october.

FPGA-as-a-platform

I think one of the biggest event in 2010 has been one that’s impacting not only Motor Control but any high-level embedded system applications which is the paradigm shift toward “FPGA-as-a-platform”, that is considering the FPGA not as a chip (like a DSP or MCU) both rather as a component (IP) integration platform (like a “software” PCB). Of course, this idea is not new (i.e. that’s not the first year that we are speaking about the concept of system-on-chip), but many important event have happened in 2010 that’s making it a reality.

One of them is Cadence’s EDA 360 manifesto (that’s directed to the whole electronic industry not only FPGA SoC design) which is about “apps-driven” design, i.e. making the application’s requirements at the center of system design instead of the current hardware-first paradigm. Apple’s iPhone has been used by many people in the industry as a concrete example of this new approach to system-level design (Steve Leibson, Daniel Nenni, Kevin Morris, Jim Turley, Brian Bailey and many others).

This shift in design approach is opening a system-level IP/apps era providing new levels of productivity to the system designer (Altera has already upgraded its own tools in that direction with Qsys). That’s exactly what’s needed in complex applications such as motor control where designers are still loosing so much time learning tools and demystiyfing motor control while they could spend this time working on their true product’s differentiation (if you have doubts about this, attend a motor control webinar given by any motor control IC vendor).

Is anything important missing ?

Please let me know. Meanwhile, I wish you success in 2011 in your FPGA-based power electronics applications design ! Thanks for your interest in reading this blog !

FPGAs and Plug-in Hybrid Vehicles

During the summer, I have had the chance to drive during one week one of the five Toyota Plug-in Hybrid currently under test in Canada. Those vehicles are part of a experimental project involving Toyota and canadian universities, among them Université Laval and its power electronics lab LEEPCI (my former lab). Click here to see the public announcement made with Toyota during the summer.

The vehicle is actually working very fine and it is a real pleasure to drive. For those interested, I did use only 3L of gas for normal use during the week (around 80km) which is very energy efficient! Click on the figure below to see more pictures of the car :

Where’s the link with this blog ? EV are obviously heavy power electronics applications by being used to convert energy stored in the batteries to the motor and vice-versa (motor to batteries while braking). Where’s the link with FPGAs? You may be interested to read this SAE Report written by Delphi people in 2006 and titled “FPGA considerations for Automotive applications”. According to its authors,

The complexity of automotive products will continue to increase, even as the pressure to decrease the development cycle, decrease cost, and increase quality and reliability mounts. FPGA usage to meet application needs will continue to grow as a means of reducing cycle time and development costs. Understanding and developing all aspects of FPGA manufacturing, design, implementation, application usage and performance can address the quality and reliability aspects of using FPGAs as product solutions. A low unit cost should not be the only major driving factor in choosing an FPGA. It has been shown that there are other items that can significantly add to unit cost based on the design methodology used for the implementation and verification of an FPGA. The complexity and challenge of implementing an FPGA device will erode any advantages of a traditional design flow. FPGA development requires discipline in assuring adherence to robust practices.

Briefly, they mean to have a look to the total cost of ownership (TCO) against other IC solutions.

Smart Grid : An opportunity for FPGAs in Home Appliance space?

According to this EEtimes article, the Association of Home Appliance Manufacturers (AHAM) took the opportunity of being at the United Nations Climate Change Conference in Copenhagen to release a very well written 25 pages document titled “The Home Appliance Industry’s Principles & Requirements for Achieving a Widely Accepted Smart Grid“. In this document, the AHAM – based on its unique perspective to the Smart Grid Vision – is intended to provide three essential requirements for the Smart Grid’s interaction with consumers in order for the Smart Grid to be successful. Among those three requirements, the second one is the most interesting from a technological (embedded systems) perspective :

Communication Standards must be open, flexible, secure, and limited in number

This requirements then splits in four requirements : open, flexible, secure and limited in number.

From a FPGA perspective, flexible sounds very familiar because its embedded in the name of the technology itself : Field-Programmable. But is this flexibility may solve problems and help the development of Smart Grid enabled homes ? According to the authors,

Smart Grid enabled homes will have varying levels of sophistication, depending on the type of appliances, devices, and networks that are installed. There are many configurations, combinations, and options for energy management inside the home. Some possibilities could include a simple email notice for a manual demand response by the consumer, a smart meter directly communicating with a specific appliance to ask it to turn on and off, or a meter communicating with a Programmable Communicating Thermostat allowing for temperature adjustment.”

From now to the moment that every appliance is going to talk the same language – even with such standardization, that is limited to the US only – one can think that this is going to be long and costly. This process has been started since a long time on industrial side (with many types of protocols) and there is still no single communication standard. Altera and Xilinx are actually taking advantage of this massive willingness to connect but protocol-segmented environment. Their programmable chip solutions enables them to sell a platform on which industrial equipment manufacturers can then use to build their own platform which is going to be finally customized with a regional/market-specific set of IP blocks. This approach enables flexibility while also reducing costs and time to market.

Is the same idea is going to happen in Home Appliance space ? As we all know, this high-volume market is very focused on costs. Not considering smart grid, a chip to chip price analysis would probably give only small chances to FPGAs. But considering that :

– according to a recent Whirlpool survey, 84% of consumers choose energy – not water or time – as most important when it comes to home appliance efficiency, and that

– according to Electric Power Research Institute, the implementation of Smart Grid technologies could reduce electricity use by more than 4 percent by 2030 providing a mean savings of $20.4 billion for businesses and consumers,

… there may have an opportunity there for FPGA chip manufacturers. Among the most important ones, Altera is already there.

Acromag goes green with FPGA solutions in Wind Turbine Control applications

Here’s a very small article from Acromag positionning its FPGA products toward smart-grid and Wind Turbine Control applications.

The basic components of a control system to maximize energy capture from a wind turbine include: rotor pointing, blade speed regulation, minimization of pointing and pitch control, and the mitigation of disturbances (i.e. excessive rotor speed, wind gusts, etc.). Additionally, the environment inside the rotor head, or nacelle, is very hostile. Any control device used in this environment must be self-diagnostic, rebootable, extreme temperature tolerant, vibration tolerant, and of course, affordable.”