System-Level Simulation Technique for Optimizing Battery Thermal Management System of EV
Vipin Venugopal, MEML
Electric vehicles are powered by lithium-ion batteries which require an effective but low power consuming battery thermal management system (BTMS). In this presentation we’ll learn about how 1D simulation has been used in MEML to optimise the BTMS. The ease of 1D modelling allows it to be used during concept development and in parameter tuning to choose the best components at its best operating point. The model explained here consists of a driver model, vehicle model, equivalent circuit model, battery box model, and refrigeration cycle model. After validating the model with test data, thermal algorithms have been tested for optimizing energy requirements. In this system model, the battery, cooling circuit, and refrigeration circuit were effectively implemented using Simscape®. The vehicle, driver, and equivalent circuit model were implemented on the Simulink® platform.
Hello, everyone. So my name is Vipin Venugopal. I work in Mahindra Electric. So I am administering testing responsible for an upcoming electric vehicle. So I have been using MATLAB Simulink for the past one and a half years, and we are using the same for optimizing our thermal management logics.
So the title, you can see that it's System Level Simulation Technique for Optimizing Battery Thermal Management Systems of Electric Vehicles. So what we are doing here is that we are doing the complete system level simulation, not just the battery. We are simulating the entire system, including the vehicle model, a drive cycle model, as well as equivalent circuit model.
And with using all these things we are predicting how the battery temperature will change with time. And we are optimizing the thermal management logic so that we can improve the range, as well as the efficiency of the entire system.
So it has been done. I have been working mainly on this thing for the past two years now. And Chandrasekaran is my Manager, and Shrivatsal is the Electrical Head over there. So I will move on to my contents.
So I will start with the uses of 1D simulation. I will explain how 1D simulation can be used in the automotive industry. After that I will give you an overview of battery cooling circuit. So I will talk about how the battery cooling is done in an electric vehicle, and what is the importance of that.
And after that, I will move to how I have been modeling the battery thermal management system in our vehicles. I will explain about the physical system modeling tool. Basically I was using Simscape for most of the modeling. So I will explain how it has been done.
After that I will talk about model validation. So just modeling a system won't help us to predict how the system will respond. So we have to validate the model with some test results, which we have done with the test results we obtained from our proto build. I will explain that one.
After that I will talk about some logic developments. That is, once the model is validated we can use it for testing different logics. So we have used the logic development as well as the results that we bot with the model.
Uses of 1D simulation. So the first one is component selection. So if you are planning to use 1D simulation, even from the early stages of developing a new product, we can use it for dimensioning the components.
For example, in our case, since we had the 1D models we were able to predict what would be the heat load that would be happening from the battery. So the heat loads will have mainly two components, the heat loads or heat risings in the battery pack.
One component is the internal heat generation in the battery. And the other component is the heat load acting on the battery because of the ambient. So if the ambient temperature is 40 or 45, like if the vehicle is in idle state or something, so there will be a huge load on the battery because of the ambient itself.
So the total heat that we will have to remove will be a combination of both these component. That is, one is the heat load-- that is the internal heat load And the next one would be the ambient heat load.
So what we did was that we took the worst case scenario. That is, we assumed a worst driver profile, plus we assumed a very high ambient temperature-- 50 or 55. And we predicted, OK, this will be the maximum for the battery has to handle. And we designed the components based on that. So that is the first one. That is for component selection.
The next one is for logic development. So logic development, as I explained before, we can use the same 1D model to try different combinations of logics. So in my case, for thermal management I was basically checking when to turn on the compressor, when to turn on the pump, and I can optimize the vehicle's performance with that one.
And third one is controller testing. I think most of the people here may be aware of the issues in the vehicle. So electronic control units are the main driving components in the vehicle. And now most of the companies are moving to model-based development.
So MATLAB based models will be flashed into the ECU, which will be used for driving the vehicle. So if we had a 1D model that is basically a model of the entire system we can use that as a plan model, and we can test whether the controller is responding as per our request. So this is known as hardware and loop testing.
And the fourth one is system optimization. So once our model is ready we can start testing in the actual vehicle. So once we have the test data also we can compare the different cases there, and optimize the system for that.
Another use case is we can try different new components. Giving an example, in India there has been a push for FAME regulations. So FAME regulations basically ask companies to try to make more products in India and reduce the import, so that there will be a better "made in India" initiative happening here.
So for sure there will be some changes in the properties or the capabilities of the components. So we can actually plug and play different components, and we can see whether the system is responding properly. So these are the means for uses. There are many others, also. I am just explaining the main four.
So from this I will move on to the generic battery cooling and heating circuit. So I will start with the battery test. So the battery in an EV vehicle. So you know, almost all the vehicles now are following lithium ion batteries. And there are two main chemistries-- NMC chemistry and electric chemistry that are followed now.
And both these chemistries, the battery temperature we will have to maintain in between 25 degrees and 45 degrees. This is a generic thing. It will be different for different battery chemistries. But in general, it has to be within these limits.
So if the temperature rises 50 or 55, it can lead to something called thermal runaway. So thermal runaway is something that will result in a fire in the battery pack, and which will finally cause the entire vehicle to burn off.
So we have to prevent it. So that is the main reason why we are trying to maintain the battery temperature within the limits. So in this model I am showing this T as the temperature sensor. So usually in all vehicles there will be temperature sensors placed inside the battery to make sure that the battery temperature is within the limit.
And so this circuit is called the chiller circuit. So in the vehicles if the battery temperature crosses 30 degrees we will try to pass a coolant through the circuit so that we can reduce the battery temperature.
So here the refrigeration circuit is similar to how the refrigerator in our home works. So this coolant, after passing through the battery, it will come to the refrigeration system. And this refrigeration system cools down the coolant to maybe 20 degrees or 18 degrees. And it is again passed through the circuit.
So this represents the pump. And we can see there will be temperature sensors inside the coolant line also. So what we will do is that when the coolant temperature reaches some particular value, we will request for the refrigeration system to stop to save energy.
And the next one is the PTC heater. So in case the battery temperature drops below 10 degrees, we have to heat the cooling so that the battery temperature is brought within our record limit. So you can see that there will be other temperature sensors here also. And this will be the complete circuit here.
And another component which has to be considered is the compartment cooling. In most of the vehicles there will be only a single refrigeration system that will be supporting battery thermal management as well as the cabin thermal management.
So usually there has to be a proper split that has to be logically planned beforehand, so that there won't be any loss of power anywhere. So both the things has to be properly managed for getting optimized cooling.
And the next component that I want to speak is BMS ECU. So BMS stands for battery management system ECU. So BMS ECU is the one that controls all the thermal management functions of the battery. So it will take inputs from all the different sensors.
So here you can see all the temperature sensor inputs will go to the BMS ECU. And BMS ECU will control each of the components. So if the battery temperature is low BMS ECU will record the PTC heater to operate.
And if the battery temperature is low, so high allows the refrigeration system to operate. Even it will control and adjust the pump RPMs so that we will get the required flow inside the circuit.
So with that one I hope you got a brief intro of the generic cooling circuit. Now I am moving to how I have done the modeling using Simulink and Simscape.
So I will start with the basic element. For me, like how we call atoms the basic element. For me, the basic element is the cell modelling. So this one is the cell that I have assumed. It looks like a power bank here. So in the actual vehicle there will be hundreds of similar cells which will be used to make the entire battery box.
So this cell, you can see there are this ambient temperature emissions. So from the five sides it will be interacting with the ambient. And at the bottom you can see something called the cooling plate.
So this cooling plate is where the coolant passes through. So the cooling will go into this thing, and it will come out through the other way. So you can see the temperature difference. So blue element is like the coolant will be a lower temperature. And when it is coming out it will be at higher temperature. I am considering a case where the battery temperature is already higher.
And there'll be something called TIM. TIM stands for thermal interface material. So this will make sure that there is a proper interaction between the cooling plate and the battery. So if there is no proper form back there will be chances of less heat transfer between cooling plate and the battery. We have seen it in actual test cases where there will be an issue if we didn't place it properly.
So this particular system I have modeled like this in Simscape. So this M8C1 represents the thermal mass. That is the cell. So M8 stands for module eight, and C1 stands for cell one. So there will be many cells in particular in this single module.
And there will be many modules inside the same battery box. So that M8C1 represent one particular cell in one particular module. So I will have similarly many different models here.
And these blocks are the convection and the conduction blocks that are available in the Simscape lab bucket. So this mimics how the actual system will respond.
Also, here you can see the coolant line over the mount here. So this is also interacting with my thermal mass. Also there is another coolant line which is going out, so this will continue.
So I have just shown one particular part of it. So this will form one particular set. So you can also see the ambient being considered here. So this ambient is interacting with all the other five surfaces.
So I hope it is clear. So with this I will tell how I had moved forward with my model. So I had actually started with the cell level. So whatever you are seeing here, this particular model is M8C1. This is the one that is inside this particular block here.
So I started with cell level. Then I moved to module level. So module level you can see, there are many like this. There are many modules being arranged together. Then there is pack level. So in addition to modules we have different cooling plates. So in this particular model there were four cooling plates. And this forms the pack level modeling.
So after pack level I have system level modeling. In system level modeling I will consider the entire closed loop cooling system. Along with that I will consider the other elements.
So for predicting how, during a vehicle drive, how the vehicle will respond, we have used some drive cycle modeling, as well as we have modeled the other components-- which I will explain in the coming slides-- to get our proper response.
So next I will talk about refrigeration cycle modeling. So in addition to battery model I even did the refrigeration cycle model to predict how the compressor will be cooling down. So you can see that in the refrigeration circuit, which includes the evaporator, compressor, condenser, and expansion valve has been modeled.
So I took the basic model that was available in Simscape, then I made some changes. Some tweaks has been done to mimic our system. For example, with refrigerant flow rate in kilograms per second. So actual model takes it as a constant, but I needed it in terms of RPMs. So I had to make some changes to meet my requirements.
Similarly, there has been other changes done even in the expansion valve and some interim apparatus so that my system will mimic how my actual test system responds.
So after that I'm moving to vehicle modeling. So in order to predict how the vehicles respond for different vehicle operation we needed a simplified vehicle model.
So I am taking inputs like wheel radius, gross vehicle weight, gradient, as well as the speed of the vehicle and gear ratio. And I am predicting the battery power that would be demanded from the battery. Even the auxiliary power.
So in the actual system even the compressor will be demanding power from the battery itself. So we have to make a closed looped system so that all the components are accounted for.
So for this particular vehicle traction model I have considered all the different resistances that will act on the vehicle, like rolling resistance, gradient resistance, inertia, aerodynamics, and even the vehicle traction power has been calculated. I think even Simscape currently provides a power train block, but I was not using that. I made a model of mine in Simulink. And so I used the same.
So just this time explaining. So this vehicle model will predict the instantaneous power demanded from the battery. Also the different drive cycles can be tested here. So I was testing using MIDC, MIDC Part1, NEDC, and WLTP.
Also the traction force is calculated by considering all the resistance that I have explained before. Even the motor shaft torque depends on vehicle torque, gear ratio, as well as transmission efficiency. I used a motor map to get the motor profile here.
So next one is the equivalent circuit modeling. So as I told, for thermal model the main thing I had to consider is how the internal heat is generated inside the battery box.
So I have used a two RC equivalent circuit model to predict what would be the thermal voltage, based on the present current demand and all the other factors. And with the two RC model I will be able to get the thermal voltage, even I have the open circuit voltage plots available with me.
And making use of these two things, as well as the current instantaneous current demand, I was able to predict the heat loss from each individual cell.
So a detailed study has been done by our Electrochemistry Team. So I have basically taken the values from the model. There are many parameters that are here, which has been provided to me by our Electrochemistry Team.
So now I am moving to model validation. As I told, just making the model won't help me to optimize my system. Once I develop the model I have to use the test results and validate the model.
The first validation I did was to check that whether I was able to properly model the refrigeration circuit. So here you can see the dotted line shows the test results, and the straight line shows my simulation results.
So this is the coolant temperature drop when the refrigeration system has been turned on. So one is the actual and one is the test system. So I was able to closely match it with an absolute percentage error of about 0.7%.
So this is considered to be almost accurate, from the test point of view. There will be many different factors in the actual vehicle system that we may not be able to simulate, or may not be able to accord in our system. But we are reasonably able to bring it close to the actual test results.
And once I have validated the coolant temperature I used the same coolant and passed it through my battery model to see that whether the battery model is validated.
So here are the results. So these top two show the battery module top temperatures. And these two show the battery bottom temperatures. So one is simulation and one is the test results.
So the bottom temperature I was able to bring it as close as 0.68%. And top temperature, I had a deviation of 1.3%. So as you can see for the test results, the lead score was between 0.4 and 0.5 degrees, so that's why there is a step kind for profile here. But whatever Simscape predicted, it was a continuous scope. So this has been done for a particular module-- Module Number Nine.
Similarly, there is results for all the other modules. So in this case, I have shown only from two different modules-- Module Number 13 and Nine.
Logic Development Result testing. I have validated my model. So now I can use the same model for checking my new logics. I mean, I haven't added too many logics under consideration. I have just added a single logic for explaining what can be done.
So this is a simple compressor on-off logic. Even thought it is mentioned current, this was for all logics. Currently we are following the new logic that based on our Simscape simulations.
So the initial logics, we were basically using only the battery temperature to predict what should be the compressor operation. Whether to turn on the compressor, or if the compressor worked, purely based only on the battery temperature.
So with the new logics we are using battery temperature as well as coolant temperature to decide when to on or off the compressor. I'll explain more in the upcoming slide.
So here what we have done is that a new compressor operations will consider both battery temperature as well as coolant temperature. Once the coolant temperature drops to the set temperature, or the battery temperature drops below the set value, compressor will turn off. In the previous logic it was only based on battery temperature. Now it is considering both the coolant as well as the battery temperature.
Also, it will turn back on again only if the battery temperature is still above the set value, and the coolant temperature rises by three degrees. So I have kept a band of three degrees for coolant temperature also to decide when to operate the compressor.
So next slide I will show the results. But before that, these are the parameters that I have used. So I did the simulation for two different charging theories, so 1C as well as 0.3C. And I took the ambient temperature as well as the battery initial temperature to be 41 degrees.
And these are the results. So with our old algorithm, so the first one is for simulation for 0.3C charging. So with our old algorithm the battery final temperature, after the entire simulation, was 34 degrees. That is considering only the battery temperature.
And with our new algorithm battery final temperature is 35.7 degrees. Yes, the temperature had gone up high, but if you see the energy consumed by compressor did all the logic it was consuming were almost 1.3 kilowatt. And the new one, the compressor is consuming only 0.83 kilowatt-hour.
Similarly, we did the same simulation for 1C charging. So in 1C charging with our old algorithm the battery final temperature was 43 degrees. And with the new algorithm it became 44 degrees. But the energy consumed has reduced from 1.842 kilowatt-hour to 0.92 kilowatt-hour.
So if you see in terms of percentage, when the charging was at 0.3C there was 37% reduction in power consumption with the new algorithm. And when the simulation was at 1C there was almost 50% less power consumption with the new algorithm. And it was purely possible only because we did the entire simulation using MATLAB Simulink.
So this is just one example. So we are trying different other combinations also to make sure that the system is responding as per our demand, and to improve the range. As everyone knows, the electric vehicle range is one of the main concerns. So we are trying to make use of all tools so that we can improve the efficiency of the vehicle. So thank you all.
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.