Matlab电池充放电画图
nasa B005即5号电池

在1.5A的恒流(CC)模式下充电,直到电池电压达到4.2V,然后继续以恒压(CV)模式充电,直到充电电流下降到20mA。
在恒流(CC) 2A水平下放电,直到电池电压分别降至2.7V、2.5V、2.2V和2.5V(电池5、6、7和18)。
阻抗测量通过电化学阻抗谱(EIS)频率扫描进行,范围从0.1Hz到5kHz。
当电池达到寿命结束(EOL)标准时,实验停止,即额定容量下降30%(从2Ahr到1.4Ahr)。
充电
Voltage_measured:电池端电压(伏特)
Current_measured:电池输出电流(安培)
Temperature_measured:电池温度(℃)
Current_charge:在充电器上测量的电流(安培)
Voltage_charge:在充电器处测量的电压(伏特)
时间:周期的时间向量(秒)
放电
Voltage_measured:电池端电压(伏特)
Current_measured:电池输出电流(安培)
Temperature_measured:电池温度(℃)
Current_charge:负载时测量的电流(安培)
Voltage_charge:负载时测量的电压(伏特)
时间:周期的时间向量(秒)
容量:电池容量(Ahr),放电至2.7V

plot画图
使用 title 函数向图中添加标题
title(‘Line Plot of Sine and Cosine Between -2\pi and 2\pi’)

使用 xlabel 和 ylabel 函数向图中添加轴标签。
xlabel(‘-2\pi < x < 2\pi’)
ylabel(‘Sine and Cosine Values’)

使用 legend 函数向图中添加标识每个数据集的图例。按照绘制线条的顺序指定图例说明。(可选)使用八个基本或斜角方位之一指定图例位置,在本例中为 ‘southwest’。
legend({‘y = sin(x)’,‘y = cos(x)’},‘Location’,‘southwest’)

使用 text 函数在特定数据点旁边添加文本。在本例中,为点 (π,sin(π)) 添加文本。text 函数的前两个输入参数指定位置。第三个参数指定了文本。

通过将 FontSize 属性设置为 text 函数的名称-值对组参数,指定文本的字体大小。使用 title、xlabel、ylabel 或 legend 函数时,可以通过类似的方法更改字体大小。

数据预处理之平滑处理
smooth函数
smooth函数调用格式如下:

  1. yy=smooth(y)
    利用移动平均滤波器对列向量y进行平滑处理,返回与y等长的列向量yy。计算方法如下:
    yy(5)=(y(3)+y(4)+y(5)+y(6)+y(7))/5
  2. yy=smooth(y,span)
    用span参数指定移动平均滤波器的窗宽,span为奇数。
  3. yy=smooth(y,method)
    用method参数指定平滑数据的方法,method是字符串变量,可用的字符串如下表

筛选数组(矩阵值
1、利用find
示例1:获取矩阵中满足一定条件的元素组成新的数组。
a = [ -1, 2; 3, -1 ]
b = a( find(a > 0) )
2、利用逻辑表达式
示例2:把矩阵中大于零的元素置为无穷大,其它元素按照某个运算法则更改。
a = [ -1, 2; 3, -1 ]
b( a > 0 ) = Inf;
b( a <= 0 ) = a( a <= 0 ).^2 + 1;
b %此时b是列向量
3,
差分函数diff
4,
格式二: B = cumsum(A,dim)
这种调用格式返回A中由标量dim所指定的维数的累加和

Matlab提取矩阵的某几行某几列的操作方法
在matlab命令行窗口中输入a=[1 2 3;2 3 4;3 4 5;4 5 6],
2、通过a(:,1:2)提取矩阵的1,2列,可以根据需要提取某几列,如图所示:
3、通过a(2:4,:)提取矩阵的2,3,4行,可以根据需要提取某几行,如图所示:
提取矩阵不连续的某几行某几列
通过a(:,[1 3])提取矩阵的第1,3列,可以按需要提取不连续的几列,如图所示:
步长指定:A(1:2:end) A(2:2:end,:)分别提取矩阵A的奇数行和偶数行数据;
A(end:1:1,) A(:,end:1:1)分别返回A矩阵行倒序和列倒序的矩阵
变量指定:A(B(:,1,:),其中B的第一列含有数据,用来指定取矩阵A的哪些行

load('C:\Users\岑\Desktop\BMS\电池数据集\NASA_Battery Data Set\第一组数据\B0005.mat')
prompt='请输入第几字段';%测量电流最大组数
X1=input(prompt);
prompt='测量电流最大组数';
I2=input(prompt);
I=B0005.cycle(X1).data.Current_measured(:,3:I2);%从第三开始
I=I(I>1.5);%删除小于1.5A的T1=length(I);
T=B0005.cycle(X1).data.Time(:,3:T1+3);%diff少一个,从3开始算少两个、
T=diff(T);V=B0005.cycle(X1).data.Voltage_measured(:,3:T1+2);
V1=B0005.cycle(X1).data.Voltage_measured(:,3:I2);
V1=diff(V1);%保证大于0
V1=V1(V1>0);
V1=V1(:,1:T1);Q=I.*T./3600;
% Q=Q(:,1:3:end);
% V1=V1(:,1:3:end);
ic=Q./V1;
ic=ic(ic<15);
icl=length(ic);% V=V(:,1:3:end);
V=V(:,1:icl);
%  plot(V,ic);
% hold on;
ic2=smooth(ic,15,'rlowess');
plot(V,ic2,'LineWidth',1);
xlabel('电压/V');
ylabel('dQ/dV/(Ah/V)');
% legend('原始数据','平滑处理');
% legend('平滑处理');

NASA锂电池容量增量数据处理相关推荐

  1. 数仓建模—增量数据处理

    增量数据处理 这一节我们不讲技术,讲一个故事,关于数据同步这一块的落地方案可以参考我们之前的文章 数仓建模-数据集成 数仓建模-数据同步方案设计 数仓建模-美团DB数据同步到数据仓库的架构与实践 因为 ...

  2. 万用表怎么测量电池容量_万用表测量锂电池容量的方法

    万用表测量锂电池容量的方法 严格上说,万用表只能测量电流,电压,电阻,测量不了容量.但是可以用万用表大致测量一下锂电池是否容量不足,那就是用万用表的直流电流档(最好是指针表).瞬间测量一下电池的正负极 ...

  3. 基于Arduino锂电池容量测试仪

    基于Arduino的18650锂电池容量测试仪 基于Arduino锂电池容量测试仪 为什么我们需要电池容量测试仪? 所需元器件 计算和显示单元 恒定负载电流电路 电压测量 测量电池容量的 Arduin ...

  4. 苹果8p电池多少毫安的_18650锂电池容量最大多少毫安

    18650锂电池选择多大容量的电池区间好 自2020年以来,电池的大小固定,其最大容量已经吸引许多实践者的关注,每个制造商技术近年来已有所改善,也会增加能力,三星.松下.LG.索尼.东芝可以做超过36 ...

  5. 加权迭代最小二乘法在线估计锂电池容量研究

    摘要 电池容量的在线估计精度影响着车辆续驶里程与功率输出的准确性.考虑到复杂的实际车载环境,提高电池容量在线估计精度是一项不小的挑战.传统的SOC-电量增益法通常选取两个不同时刻点作为SOC增量,而选 ...

  6. 锂电池容量电压对照表_雾化器低温锂电池生产厂家报价

    随着我们对锂电池更深一步的认知,大家都了解到了锂电池的特点及发展前景.所以,现在锂电池的市场非常火爆.但又随着锂电池厂家的不断增多,各锂电池厂的生产工艺不同,造成了市场上锂电池质量的参差不齐,价格有很 ...

  7. 创意小项目:单片机锂电池容量测试仪设计制作 附C语言源代码

    前几天在家看到我家的锂电吸尘器没电了,但是充满后用了一会就又没了,电量明明显示还有两格,心想这个东西太不靠谱了,于是就寻思如果能测试出电池的容量就好了,便自己动手做了一个锂电容量测试仪, 老规矩废话不 ...

  8. 锂电池容量电压对照表_机器人锂电池厂家价格一般是多少钱

    锂电池快速充放电的本质便是,锂离子能够快速在正负极资料间脱嵌.电池资料性质.工艺规划.充放电制度都会对大电流充电功能有影响.正负极资料的结构安稳性利于在快速脱锂的进程中不会构成结构的坍塌损坏,锂离子在 ...

  9. 锂电池电量百分比计算_锂电池容量计算

    锂离子电池容量的测算 锂离子电池开路电压与电池容量的对应关系分析 先给出一个表格 : 如下 , 百分比是电池的剩余容量 , 右侧是对应的电池的开路 电压 (OCV). 100%----4.20V 90 ...

最新文章

  1. Oracle慌了!华为终于对JDK下手了!
  2. python程序跑得慢_Python程序慢的重要原因
  3. C# 读取在存储过程多结果集
  4. win7怎么合并计算机窗口,win7 已设置任务栏窗口从不合并,游戏多开,如何固定窗口顺序?...
  5. Windows 下 Anaconda3 的安装配置
  6. RabbitMQ 简介和使用
  7. Java StringBuilder codePointBefore()方法与示例
  8. 高性能滚动scroll(防抖和节流)
  9. python中tmp什么意思_python中temp是什么意思-问答-阿里云开发者社区-阿里云
  10. java web-inf_对JavaWeb项目中WEB-INF目录的理解
  11. 配置TOMCAT和IIS协同工作
  12. igbt原理动画演示视频_简单易懂的IGBT工作原理分析
  13. mysql 缺省date值_关于MySQL中date类型缺省值
  14. 在250美元5天城市
  15. js过滤英文双引号变成中文双引号
  16. 重庆电信助力新一代物联网商用平台
  17. cas:27025-41-8 Glutathione oxidized氧化型谷胱甘肽 活性氧抑制剂
  18. C0216:输入矩形的长和宽,输出周长和面积
  19. cad画图要求计算机最低配置,AutoCAD电脑配置要求:AutoCAD LT 2022 系统要求
  20. 智慧城市八大应用,助力城市更加智慧

热门文章

  1. 一帆基金投资报告:下周初股指将选择方向
  2. SQL语句编写经典50题
  3. rm -rf是什么意思?
  4. 《JavaScript学习笔记》
  5. 关于2048小游戏的开发感想
  6. 十分钟搭建私有化人脸识别服务
  7. 解决Appium Desktop 测试中,元素不能准确定位的问题
  8. rate-limiting
  9. 导出pdf内容包换特殊符号,或转行符号等解决方法
  10. 关于惠普暗影精灵2 pro用一段时间之后,插上电源充不了电的问题