首页/文章/ 详情

从Butler-Volmer方程查看电荷转移阻抗的依赖关系

11月前浏览556
Butler-Volmer方程:


 

其中:    固相最大锂浓度,    固相表明锂浓度,    液相锂浓度,    电化学反应过电位,    阳极和阴极传递系数,    法拉第常数,    气体常数。

在COMSOL中,采用归一化参考交换电流密度    代替反应速率常数    :

 

其中:    ,    。

   ,当    时,式(1)泰勒展开忽略高次项有:

 

有定义(基于面电阻    ):


考虑多孔电极的活性面积    ,总电阻(    ):

 

那么通过EIS测试得到    可以反向计算出参考交换电流密度    

 
 
 

其中    ,假设活性材料颗粒为半径均一的球形颗粒,活性比表面积:    ,    :活性材料体积分数,    :活性材料半径。

根据式(8),观察电荷转移阻抗的依赖关系:

(a).     ;

(b).     ;

(c).     ;

(d).      .

在    常规取值区间内,Rct单调递减。

在    ,不同    下,Rct随SoC的变化如Fig1所示,其变化趋势与实测DCR相似,呈现两端高中间低的特点。

Fig1:  
Fig2:  

现采用COMSOL进行EIS测试模拟验证式(8)的依赖关系,不同SoC(全电池)下的负极的Nyquist和Bode图如Fig3-4所示:

Fig3  
Fig4  

根据Fig3-4提取Rct,按式(8)拟合结果如Fig5所示:

Fig5 图中Soc为负极soc  

Matlab拟合代码:

sto=[0.0035
0.048786
0.094071
0.13936
0.18464
0.22993
0.27521
0.3205
0.36578
0.41107
0.45636
0.50164
0.54693
0.59221
0.6375
0.68278
0.72807
0.77335
0.81864
0.86393
0.90921];

Rct=[3.9746
1.0875
0.8036
0.6769
0.6055
0.5577
0.526
0.5035
0.4873
0.48
0.4717
0.4701
0.4721
0.4779
0.4883
0.5049
0.5278
0.5608
0.6084
0.6834
0.8165];

R = 8.314;       % 气体常数 J/(mol·K)
T = 318.15;      % 温度 K
alph = 0.5;      % 电荷转移系数
F = 96485;       % 法拉第常数 C/mol
Sa= 0.12343;
% 优化目标函数(残差平方和)
obj_fun = @(x) norm(R.*T./(2*x*F*Sa.*(sto.^0.5).*(1-sto).^0.5) - Rct);

% 初始猜测
x0 = [0.5];  % [I0]

% 优化选项
options = optimoptions('fminunc', ...
    'Algorithm', 'quasi-newton', ...
    'Display', 'iter', ...
    'MaxIterations', 1000, ...
    'MaxFunctionEvaluations', 2000);

% 执行优化
[x_opt, fval] = fminunc(obj_fun, x0, options);

% 计算拟合值
Rct_fit = R.*T./(2*x_opt*F*Sa.*(sto.^0.5).*(1-sto).^0.5);

% 拟合优度 R²
SS_res = sum((Rct - Rct_fit).^2);
SS_tot = sum((Rct - mean(Rct)).^2);
R_squared = 1 - SS_res / SS_tot;

% 绘图
figure
scatter(sto, Rct, 60, 'filled', DisplayName='exp');
hold on;
sto_fit = 0:0.001:1;
plot(sto_fit, R.*T./(2*x_opt*F*Sa.*(sto_fit.^0.5).*(1-sto_fit).^0.5), '-', ...
    LineWidth=2, DisplayName='fit');
grid on;
legend('Location', 'best');
xlabel('SoC'); ylabel('R_{ct}');

text(0.05, max(Rct)*0.9, {sprintf('R^2 = %.2f', R_squared), sprintf('i_0 = %.4f', x_opt)}, ...
    'FontSize', 12, 'FontWeight', 'bold', 'BackgroundColor', 'w');


Ref:

DOI 10.1149/1945-7111/acf161

来源:锂电芯动
Comsol化学MATLABUM材料
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-10-19
最近编辑:11月前
锂电芯动
博士 中科院博士,电芯仿真高级工程师
获赞 9粉丝 22文章 71课程 0
点赞
收藏
作者推荐

Matlab与Comsol联合仿真(三):多参数自动拟合

我相信很多仿真工程师都有过“建模一小时,调参一整天”的经历 。当模型建立后,参数拟合,尤其是涉及三个以上的多参数拟合,是一项非常不容易且耗时的工作。如果能借助软件自动实现多参数拟合,那将大大节省仿真工程师的宝贵时间,让他们能把时间放在更有意义的事情上面。COMSOL优化模块的局限性虽然 COMSOL 软件自带了优化模块,但个人感觉其参数拟合能力较弱 。这主要是因为其内置的优化算法多为常规的局部搜索方法(比如SNOPT、BOBYQA和Levenberg–Marquardt等),缺乏如遗传算法、粒子群算法、贝叶斯算法等更灵活的全局优化算法 。因此,当需要拟合的参数较多时,COMSOL 自带的优化算法很容易陷入局部最优状态 。我的实际感受常常是,即使花费了很长时间进行优化,参数的改动也不明显。因此,有必要将 COMSOL 与 MATLAB 联合使用,借助 MATLAB 强大的全局优化功能来弥补 COMSOL 在这方面的不足。MATLAB与COMSOL联合调参优势1. 调参效率显著提升传统的复杂参数调优过程需要工程师手动修改模型参数、运行仿真、导出数据、分析结果,然后重复这一循环,过程繁琐且效率低下。而利用MATLAB强大的脚本编程能力,用户可以轻松编写循环或批处理脚本,系统性地、自动化地改变COMSOL模型中的任意参数(如几何尺寸、材料属性、边界条件等),让计算机在夜间或周末自动执行,从而最大化利用计算资源,缩短研发周期。2. 可以融合高级优化算法工程师可以调用MATLAB的Optimization Toolbox™和Global Optimization Toolbox™,利用其中丰富的优化器,如遗传算法(ga)、粒子群算法(particleswarm)、模式搜索(patternsearch)以及各种梯度下降算法(fmincon)来解决COMSOL中的优化问题。这使得寻找非线性、非凸或多峰值复杂问题(在工程领域很常见)的全局最优解成为可能。3. 强大的数据后处理与可视化能力通过LiveLink™接口,仿真结果可以直接无缝地导入MATLAB工作空间。用户可以利用MATLAB强大的矩阵运算能力、信号处理工具箱、统计分析工具箱等对数据进行深入分析,例如执行傅里叶变换、数据拟合、相关性分析等。联合调参案例演示本次案例采用的是一个一维的 P2D(Pseudo-2-Dimension)模型,任务是拟合一条实验测的放电曲线,需要调整七个动力学参数,最终实现仿真的放电曲线与实验测的重合得很好。联合调参采用的是贝叶斯优化算法。选择该算法的原因是它具有极高寻优效率,能够在较少的仿真次数下找到最优的解,非常适合在计算资源受限或仿真周期较短的情况下使用。案例的关键结果展示如下:1. 寻优前的模拟与实验曲线 2. 待寻优的7个动力学参数 3. 最优参数及寻优时间 4. 最优参数的验证效果 补充说明本文展示的多参数自动拟合方法不仅仅局限于锂电池模型,只要在这个案例的代码基础上稍作修改,就可以适用于任何其他模型。为了方便大家根据自己的需求修改我的代码,我录制了一个视频详细地讲解了每一行代码的功能及注意事项。来源:锂电芯动

未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈