Portapack应用开发教程(十八)电池选型 下

2023-12-12 06:32

本文主要是介绍Portapack应用开发教程(十八)电池选型 下,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

电池选型已经完成了,后面都用900mAh电池就行了。

接下来我想继续挖掘一下源表的功能,比如电池仿真功能。利用这个功能,我可以测试PortaPack在不同电量百分比时的反应——看看右上角的电量显示的颜色到底对应于百分之多少的剩余电量。

为实现这个功能,需要做以下步骤:

1.需要在源表上对电池充满电。

2.用ARB功能按照一定的规律对电池放电,放电过程中用LOG功能把电压电流都存在U盘里。

3.放到最低电压后可以把U盘里的LOG拿到电脑上,并用源表提供的配套battery_modelling.py程序计算出电池模型。

4.把这个模型导入到源表里去。

下面做第一步,设定充电的最高电压4.2V,源表会先恒流充电,到达4.2V后再恒压充电(涓流补电?)

第二步要先手动设置ARB,两个电流分别对应放电和开路,然后不停循环,电压就是放电的最低电压,确保这个值比电池最低允许电压大,这样就不会损坏电池。

接下来就能用这个ARB给电池放电了

可以看到电流一会儿是0.5A左右,一会儿是0.7mA左右,这就是ARB对应的两个状态,两个状态电压有区别,是因为电流不同,在电池内阻上的压降不同,这样端口上的电压就会不一样。

放完电后就到了第三步,这时就可以用battery_modelling.py脚本把U盘里的记录做一下处理。

会得到如下图形,以及一个新的CSV文件(电池特性文件)。

第四步就可以把这个电池特性CSV重新导入源表,让它模仿成一个电池对PortaPack供电。

可以看到电池图标颜色在不同的电量百分比上会变化。

蓝色图标对应96%~100%

绿色图标对应56%~95%

橘黄色图标对应6%~56%

黄色图标对应0%~5%

后来我感觉电池特性曲线跟电池理论值不太相符,内阻中间2个波峰我估计是因为我测试过程中有动过鳄鱼夹导致的,最左侧的跌落是因为放电到3V后变为了恒压模式,因此我又做了一次测量。

可以看到这个图形就看着更符合理论了,但是又有了一个新的问题,电池仿真时最大电量从前面一次的863mAh变为了差不多750mAh左右,并且不同颜色对应的电量百分比也有变化。显然针对最大电量这个参数第一次实验反而更准确。可能是因为第二次实验充电过程我没完全充满,一进入4.2V恒压我就停止充电了。并且我观察到其实第一次实验的放电曲线其实形状还可以,形状造成的误差并不大,但它的最大值比第二次实验的更高,应该说第一次实验的放电电压曲线更能反应电池特性,而决定PP上的图标颜色的也就是放电电压(因为传感器读的就是放电电压),因此我认为第一次实验找出的不同颜色对应的电量百分比是准确的。

当然这些百分比是针对PP亮屏待机,不开启任何APP的状态而言的,如果你打开了APP可能输出电流不一样,那么相同电量时的端口电压就会有所不同,导致对于你而言的电池图标颜色对应的电量百分比与我前面给出的会有一些差异。

另外,还学习到针对电池特性的测试工作,充电时一定要多冲一会儿,用恒压模式小电流冲到最满,放电过程比较漫长,期间不要碰电池,放到最低电压并变为恒压模式时要立刻停止测试。这样才能拿到最完美的结果。

这篇关于Portapack应用开发教程(十八)电池选型 下的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/483576

相关文章

基于Python开发Windows屏幕控制工具

《基于Python开发Windows屏幕控制工具》在数字化办公时代,屏幕管理已成为提升工作效率和保护眼睛健康的重要环节,本文将分享一个基于Python和PySide6开发的Windows屏幕控制工具,... 目录概述功能亮点界面展示实现步骤详解1. 环境准备2. 亮度控制模块3. 息屏功能实现4. 息屏时间

CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比

《CSS中的Static、Relative、Absolute、Fixed、Sticky的应用与详细对比》CSS中的position属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布... css 中的 position 属性用于控制元素的定位方式,不同的定位方式会影响元素在页面中的布局和层叠关

SpringBoot3应用中集成和使用Spring Retry的实践记录

《SpringBoot3应用中集成和使用SpringRetry的实践记录》SpringRetry为SpringBoot3提供重试机制,支持注解和编程式两种方式,可配置重试策略与监听器,适用于临时性故... 目录1. 简介2. 环境准备3. 使用方式3.1 注解方式 基础使用自定义重试策略失败恢复机制注意事项

Python实例题之pygame开发打飞机游戏实例代码

《Python实例题之pygame开发打飞机游戏实例代码》对于python的学习者,能够写出一个飞机大战的程序代码,是不是感觉到非常的开心,:本文主要介绍Python实例题之pygame开发打飞机... 目录题目pygame-aircraft-game使用 Pygame 开发的打飞机游戏脚本代码解释初始化部

使用Python开发一个现代化屏幕取色器

《使用Python开发一个现代化屏幕取色器》在UI设计、网页开发等场景中,颜色拾取是高频需求,:本文主要介绍如何使用Python开发一个现代化屏幕取色器,有需要的小伙伴可以参考一下... 目录一、项目概述二、核心功能解析2.1 实时颜色追踪2.2 智能颜色显示三、效果展示四、实现步骤详解4.1 环境配置4.

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技

Python使用Tkinter打造一个完整的桌面应用

《Python使用Tkinter打造一个完整的桌面应用》在Python生态中,Tkinter就像一把瑞士军刀,它没有花哨的特效,却能快速搭建出实用的图形界面,作为Python自带的标准库,无需安装即可... 目录一、界面搭建:像搭积木一样组合控件二、菜单系统:给应用装上“控制中枢”三、事件驱动:让界面“活”