Let’s start by asking you a question! Which of these automotive products are driven by embedded software- Anti-lock Braking System (ABS), Electronic Power Steering (EPS), Seating Systems, HVAC Systems, and Infotainment System?
The answer is, each one of them! Yes, you heard it right. Even your humble car seats are now capable of storing and recollecting the last setting (positioning of the seat), give you a back massage in different ways and more.
To cut the story short, a modern-day connected and smart car can have as much as 20 million lines of source code running inside it. On top of it, 90% of the innovation in the automotive industry is now driven by the software code.
Among this mammoth stride in software capabilities in the automotive ecosystem, the system that has transformed the max is the Motor Control System.
To understand the migration from Brushed DC to Brushless DC, check out this blog – The Great Migration of Automotive OEM’s, from Brushed DC to BLDC Motors.
To find out how a Motor Control Solution works, read this blog – Automotive Motor Control System: The Brain Behind the Brushless DC Motors in an Automotive Application
Almost every automotive component that we mentioned at the onset of this blog, are driven by a motor controller solution. Whether the motor is a BLDC or an AC induction motor, motor controllers are essential in order to drive these motors efficiently.
Essentially, a motor control system is an electronic system (i.e. a combination of hardware and software components). The hardware includes Microprocessor Platform, MOSFETS, and the Electric Motor. Whereas, the software part is the control logic or the drive logic that drives the motor as per the use-case.
Automotive Motor Control System
What is the Need to Reduce Hardware Components in any Automotive System?
As the number of such motor control systems are increasing in an automobile, the focus has now shifted to making it lighter not only in terms of weight, but also the cost.
And the most reasonable solution to this problem is to reduce the hardware component inside a motor controller. Obviously, we cannot do away with the MOSFETS or the processors, as they are the backbones. However, there are a few such components whose function can be replicated with the help of a software component.
Let’s find more about these components!
Current Filtering: Replacing a Dedicated Hardware with a Smart Software
Usually, when you run a motor with current controlling feature, current sensors and hardware component for current feedback filtering are must-have inclusions. This filtering is among the most important functionality in a motor controller, as a smooth current curve is paramount to efficient functioning of the motor.
When such current filtering hardware (essentially a circuit) is used, it has an elaborate mix of resistors and capacitors. And these components create Electromagnetic Interference (EMC effect) which again needs to be filtered.
Now to counter the EMC effect, additional circuitry needs to be included in the system. All these inclusions escalate the BOM cost, which ideally should be low.
Before, we explore how a software component manages this filtering, lets understand what exactly happens during this signal smoothening process.
A motor controller drives an electric motor with the help of Pulse Width Modulation (PWM) method, where analog signals are generated using a digital source.
The PWM signal is defined by two attributes:
- Duty Cycle
- Frequency.
*Duty Cycle is the time for which the signal was on a high state. It is represented as a percentage of total time required to complete one cycle.
*Frequency measures how fast the signal switches between a high and low state
When the PWM signal is switched on, the current increases and reaches its peak before coming down, as the PWM signal is switched off.
So, when there are multiple PWM signals switched on at an instance, the current graph resembles a saw tooth (multiple current waves).
In order to smoothen the current, the current filtering hardware needs to pick the Root Mean Square (RMS) value of the current. Considering any other value of the current will not give the right output. And this RMS value will be accurate only if the duty cycle is set at the optimum level.
A hardware filtering circuitry decides this perfect time to read the current.
For instance, a 3V signal is to be created from a digital source who’s high is on 5V and low on 0V. To achieve this, the digital signal will have to be cycled at a duty cycle of 60%. Current filtering circuit and the current sensors together make sure that the current is read when the duty cycle is 60%.
i.e 60% of 5 V = 3 V
Now, for a software component to achieve the same, the logic to read the current at a duty cycle needs to be implemented.
The software will have to pick the current value in time and for that additional timers are to be put into place. The timer will read the perfect time based on the duty cycle and frequency of the PWM signal so that the output current is smooth.
Logical Steps followed by a Current Filtering Software:
- Start Reading the ADC Feedback Current
- ADC feedback value is converted to mA (milliamperes).
- Current is read only when the PWM is one, so to get the Mean value, we consider the Duty Cycle percentage. Eg. At Duty Cycle 60%, if we read XmA of current, mean current is 60% of XmA
- The filtered current is fed to the electric motor
Challenges Faced during Development of Current Filtering Software
High-end microprocessors come equipped with hardware filtering capabilities. In such scenarios, a software counterpart for current filtering is not required.
However, simple microprocessors which are most commonly used due to cost constraints, need additional signal smoothening feature.
Using a software (with necessary logic) definitely reduces the cost. But to design such software, there are certain challenges that need to be overcome.
Afterall, writing logic for such complex calculation is in itself a complicated process. Let’s have a look at some of these challenges and how do developers find the work-arounds.
Challenge 1: Reading Current at the Right Time: As the PWM signal is triggered, reading the mean value of the current is the most crucial part of the current filtering process. The time instance at which the current needs to be read by the software has to be precise and doing that is a major challenge.
The engineers overcome this challenge by assigning a separate timer, that will start in sync with the timer value of the PWM signal.
Essentially, this timer will start as soon as the PWM signal is triggered. And just as the PWM signal is at its falling edge, it will capture the required data. Easier said than done, the engineers toil hard to keep the timers in sync.
Challenge 2: One ADC, many roles! : In simpler microprocessors, the Analog to Digital Converter (ADC) is usually a software triggered one and hence, a simplistic version.
However, when a current filtering software is in place, this humble ADC has to switch jobs instantly and perform multiple functions.
For example, when the software must read the current, the ADC pauses its current job of analog to digital conversion and joins the software in reading the precise value of current.
After the job is done, it goes back to its usual job. This cycle continues at every instance of PWM triggering.
The timer that we discussed in the previous challenge decides when the ADC will come to aid the current filtering software and when it returns to the normal mode.
What do we conclude?
Reducing the hardware components from a motor control system is done to keep the cost under check.
This advantage is important enough for the product engineering service providers and suppliers to invest their time and effort on it.
Building such a software is a one-time investment compared to a hardware filter, where every component entails cost. Going by the recent developments and researches, engineers will be able to reduce more such hardware components from the motor control systems.
Definitely, a great news for automotive industry in general and Electric Vehicle industry in particular where a lot of success depends on motor controller solutions.