我研究了UM-B-075以及如何使用智能片段工具分析电池。但是,如果没有这些设备,我就无法运行所提供的软件来生成lut。
我有一个DL3021A负载仪,有电池分析功能,我用来收集数据。
我用的是110mAh的锂离子电池。假设LUT是使用这些原则生成的,对吗?
100% = 0mAh从电池放电
90% = 11mAh电池放电
80% =电池放电22mAh
70% = 33mAh从电池放电
60% = 44mAh从电池放电
50% = 55mAh电池放电
40% = 66mAh从电池放电
30% = 77mAh电池放电
20% =电池放电88mAh
10% = 99mAh从电池放电
0% =电池放电110mAh
如果是这样,我使用110mA负载和2mA负载生成lut (1mA负载由于设备的准确性而无法实现)。
static const int16_t vol_dis_low_0[VOL2SOC_LUT_SIZE] = {
3450、3510、3561、3591、3634、3681、3743、3833、3934、4053、4170
};
static const int16_t vol_dis_high_0[VOL2SOC_LUT_SIZE] = {
2900、3193、3291、3346、3392、3443、3509、3595、3694、3802、4021
测试这些表,报告%似乎是关闭的。我使用焦耳电流计来验证通过BLE电池服务报告的值,以及查看DEBUG_SOC UART输出语句。
例如,该单元(自定义板)插入USB充电,在充满电(90mAh充电率)时,充电关闭后,UART调试语句报告Soc为875和电压为4190。充电结束时Soc不应该设置为1000或接近1000吗?
电压报告似乎准确地跟踪电池,但Soc是相当小康。
请确认这是创建lut的正确方法,如果是,为什么Soc报告的值是错误的?
谢谢你!
我添加了对socf_get_avg_current(active_count, active_period)的调用,它似乎报告了正确的值。如果我从socf_get_avg_current()取返回值并除以0.277,我应该得到uA的结果,这是正确的吗?
我使用的PXP_Reporter演示与以下修改:
_ 32MHz晶体而不是16MHz
_使用上面所附的代码更新custom_socf_battery_profile.h。
我算出来了
#定义SOCF_BATT_CAPACITANCE_ADJ (1)
在检测到充电结束后,将容量设置为1000。
报告的socf_soc似乎仍然相差很多。在我使用了44mAh(60%)电池后,socf_soc仍然报告了90%的电量。
嗨dlo,
请让我检查一下,然后再给你答复。
谢谢,PM_Dialog
1)将custom_socf_battery_profile.h还原为默认SDK
2) #定义DEBUG_SOC
3) pm_set_sleep_mode (pm_mode_active)
在pxp_reporter和构建调试选项。闪烁自定义板和观察终端输出。
电池的第一次读取似乎报告大致正确的SOC和电压报告是准确的。然而,随着时间的推移,当电池(运行pxp_reporter时,没有额外的负载)有~1.5mA的恒定损耗时,SOC水平随着电压下降而上升。日志如下:
嗨dlo,
很抱歉耽搁了。使用的电池是什么?你能告诉我电池规格吗?这是非常重要的特征,以正确的值正确地使用一个LUT电池。您是否使用SDK的pxp_reporter示例来测试它?
由于它是DA14683, SS Studio v1.6.3包括一个电池分析器工具-你应该需要使用一个源计,电压表和分流电阻的工具。在第6节电池分析工具中,您将找到电池分析所需的所有可用信息。
该工具安装在C:\Program Files (x86)\Dialog Semiconductoyabo国际娱乐r\Battery Profiler for DA1468x windows路径下。按照文件中描述的步骤进行电池分析。
谢谢,PM_Dialog
使用的电池为110mAh (https://www.digikey.com/en/亚博电竞菠菜products/detail/sparkfun-electronics/PRT-1385..。)
是的,使用PXP_Reporter进行测试。
下面是启用#debug_soc的一些发现:
Debug Count Average是socf_get_soc_active(void)期间所报告的active_count的平均计数。
Debug Current Average是socf_get_avg_current的平均计数除以1000,该计数来自socf_get_soc_active(void)中的active_count。
焦距是测量仪器在那段时间内的平均电流。
Delta是SOC和焦耳镜报告值的差值。
注意Delta不是线性的,它随着电流的增加而增加。
我认为库仑计数显然是不准确的。
请和我打个电话讨论一下。这是紧急的,它影响了我们的开发时间。特别地,我需要知道你的公式是从哪里来的,以及我们如何修正这些来得到正确的结果。
这个数字是如何确定的?
#定义SOCF_MAX_COULOMB_COUNT_PER_MA_SEC 73584 ll
为什么需要这两个场景?
嗨dlo,
很抱歉迟到了——可能我错过了你最后的评论。让我把这件事内部升级,我会尽快回复你。
谢谢,PM_Dialog
嗨dlo,
我们已经把这个从论坛离线,并将直接联系你。
谢谢,PM_Dialog