capacity estimation coupled with SOH estimation, Li-Ion cell
Show older comments
Goodmorning,
I'm trying to evaluate the state of health of a Li-Ion cell comparing the estimated results with the experimental data. In order to do this, I'm using the Capacity estimation block coupled with the SOH block (capacity based). I used the SOC estimation block as input for the capacity estimator and the parameters of the battery were set using Battery (table-based) block, in which I also set the capacity fade using the equation option already implemented in the block.
I'm not able to find reliable results because the capacity increases during the charging phase and decreases during the discharge, in such a way that the SOH oscillates from 1 to 0.6 or even to 0 after few cycles. Instead, using the SOH estimation based on the resistance increase I can obtain reliable results. I would like to compare the results using both methods.
I kindly ask what can be wrong in the estimation of the capacity or if the problem is in something else.
Thank You in advance,
Irene
21 Comments
akshatsood
on 5 Feb 2024
Hi @irene giusti, could you please share the model and any additional details so that I can reproduce the issue on my end and offer insights to address the issue.
irene giusti
on 5 Feb 2024
akshatsood
on 5 Feb 2024
Edited: akshatsood
on 5 Feb 2024
Hi @irene giusti, thank you for sharing the files. To be on the same ground, I would like to confirm that SOH estimated from the below section of model is far from expected.

While, for the below segment of mode, estimated SOH is in line with the expected value.

Please correct me if I am wrong in understanding the question.
irene giusti
on 5 Feb 2024
akshatsood
on 5 Feb 2024
The approach to estimate the State of Health (SOH) based on resistance increase is indeed viable when battery degradation primarily manifests as an increase in internal resistance. However, the challenge of scarce experimental data on resistance changes over the lifecycle makes this method less practical. Your strategy to construct a lookup table using capacity fade data is an alternative, as capacity metrics are more readily available.
The oscillation of the SOH from 1 to 0 due to the capacity estimation fluctuating between 1.5 and 8 suggests that there may be an issue with the setup or the model itself. Normally, you would expect the capacity to decrease gradually, not oscillate, as the battery degrades. The inclusion of a 'mean' block seems to be an attempt to smooth out these fluctuations, but it's crucial to consider whether this averaging has a physical basis or if it merely masks the underlying problem.
It is not typical for the estimated capacity to oscillate so widely, and it could indicate that the model or the input data is not accurately capturing the battery's behavior. This could be due to incorrect assumptions in the model, or other factors. This requires a more detailed investigation and I would share any updates I will have during the investigation.
irene giusti
on 5 Feb 2024
akshatsood
on 5 Feb 2024
Did you get a chance to go through this MATLAB Answer, it seems to address a similar issues pertaining to SOH. Kindly go through it and let me know if it helps in address the issue.
irene giusti
on 5 Feb 2024
akshatsood
on 5 Feb 2024
Hi @irene giusti, glad to know that. I am moving this discussion to the "Answers" section so that it helps someone out facing a similar issue as yours.
Athmane
on 19 Sep 2024
I am reaching out regarding the model you shared for State of Health (SoH) estimation. Unfortunately, I am using MATLAB 2018b, and it seems that your model is not compatible with this version, as I am unable to open it in Simulink.
Could you please provide a version of the model that is compatible with MATLAB 2018b? If that is not possible, could you suggest a method to view and use your model in this version?
Thank you in advance for your assistance.
akshatsood
on 19 Sep 2024
Please use "Upgrade Advisor" to make the model compatible to your current release.
Athmane
on 20 Sep 2024
I'm currently working with MATLAB 2018b and encountered an issue when trying to open the Simulink model you sent me. The model was created with MATLAB 2023b, which makes it incompatible with my version.
I also wanted to mention that the Upgrade Advisor tool does not allow me to downgrade a model to an earlier version, like MATLAB 2018b. It can only be used to upgrade models to a newer version, so it doesn't resolve the issue in this case.
To move forward, could you please:
- Export the model from MATLAB 2023b by selecting File > Export Model To > Previous Version and choosing MATLAB 2018b?
- If certain blocks (like the SOH Estimator block) are not compatible with MATLAB 2018b, could you suggest an alternative solution or provide a compatible SOH estimation model?
This would greatly help me continue with my project. I appreciate your assistance in advance !
Athmane
on 20 Sep 2024

akshatsood
on 20 Sep 2024
Please find the model attached.
Athmane
on 21 Sep 2024
Hi @akshatsood
Thank you very much, I will check out this model.
Athmane
on 21 Sep 2024
I would like to request @irene giusti Simulink model for estimating the state of health (SOH) based on capacity and resistance, compatible with MATLAB version 2018b. Could you kindly provide it?
Thank you in advance.
akshatsood
on 23 Sep 2024
Please note that I have provided you with the model that OP shared with me in our earlier conversation.
Athmane
on 23 Sep 2024
Yes, I am looking for the correct model to estimate the SoH (State of Health) based on capacity degradation. The problem is that I don't have experimental results on degradation. I only have data for voltage, current, and SOC (State of Charge), but I can calculate the variation in capacity by integrating the current.
Therefore, I would like a model that can estimate SoH based on capacity. I tried using the model you shared, but it didn't work. I would appreciate feedback on this issue, but I didn't understand how the problem was corrected.
Could you help me find a model that can estimate SoH based on capacity?
Athmane
on 23 Sep 2024

akshatsood
on 23 Sep 2024
Please note that the "SOH Estimator" was introduced in the R2023b release, which is why you are encountering this issue in your current release, R2018b.
Athmane
on 23 Sep 2024
Yes, I understand that. However, is it possible to create a model to estimate the SoH in version R2018b? If so, do you have a model you could suggest, or what alternatives or methods could be used?
Best regards,
Accepted Answer
More Answers (0)
Categories
Find more on Battery Management System in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!