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结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

IDEA自动生成注释模板的配置教程

《IDEA自动生成注释模板的配置教程》本文介绍了如何在IntelliJIDEA中配置类和方法的注释模板,包括自动生成项目名称、包名、日期和时间等内容,以及如何定制参数和返回值的注释格式,需要的朋友可以... 目录项目场景配置方法类注释模板定义类开头的注释步骤类注释效果方法注释模板定义方法开头的注释步骤方法注

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

SpringShell命令行之交互式Shell应用开发方式

《SpringShell命令行之交互式Shell应用开发方式》本文将深入探讨SpringShell的核心特性、实现方式及应用场景,帮助开发者掌握这一强大工具,具有很好的参考价值,希望对大家有所帮助,如... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定

SpringBoot应用中出现的Full GC问题的场景与解决

《SpringBoot应用中出现的FullGC问题的场景与解决》这篇文章主要为大家详细介绍了SpringBoot应用中出现的FullGC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录Full GC的原理与触发条件原理触发条件对Spring Boot应用的影响示例代码优化建议结论F

Python虚拟环境终极(含PyCharm的使用教程)

《Python虚拟环境终极(含PyCharm的使用教程)》:本文主要介绍Python虚拟环境终极(含PyCharm的使用教程),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录一、为什么需要虚拟环境?二、虚拟环境创建方式对比三、命令行创建虚拟环境(venv)3.1 基础命令3

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S