评估1S2P架构
评估大略充电系统并测试其功能,常日可以利用评估套件来完成。这些套件包括配置充电系统所需的所有硬件和软件运用,以及基于图形用户界面(GUI)的工具和API。
但相应地,包含多个单元的繁芜系统的干系评估事情也更加繁琐。繁芜系统中可能有多个器件须要进行表征。开拓职员将须要编写一些软件代码来读取系统不同部分天生的旗子暗记,对其进行剖析,并采纳行动。MAX17330可帮助管理包含两节锂离子电池的并联电池快速充电系统。如数据手册所述,MAX17330可用于同时对两节锂离子电池进行充电和掌握。该系统须要两个MAX17330 IC,每个IC管理一节锂离子电池,以及一个能够即时调度输出电压的降压转换器(如MAX20743)。

该系统还须要利用一个微掌握器来配置和管理电池充电,以及处理两个IC之间的通信。本文选择的树莓派板是系统测试中普遍利用的平台,此外我们选用Python作为编程措辞。树莓派通过I2C管理通信,并记录有助于评估和调试的主要系统参数,包括充电电流、电池电压和电池荷电状态(SOC)。这些数值均存储在Excel文件中,方便进行离线剖析。
测试1S2P架构
本节将先容如何测试充电器和电量计(MAX17330)。本节还会解释并联充电可达到的实际性能。为了得到更大的灵巧性和可控性,该器件由微掌握器通过I2C进行编程。
图1显示了1S2P系统架构以及评估两节并联电池充电所需的连接。树莓派掌握三个EVKIT:一个MAX20743EVKIT(降压转换器)和两个MAX17330EVKIT(充电器+电量计)。数据记录在Excel文件中。
图1.利用树莓派的1S2P充电系统评估架构
可从MAX17330产品页面的“工具和仿真”选项卡中***并利用基于GUI的MAX17330评估套件软件。利用配置引导(从“器件”选项卡中选择)可为MAX17330天生初始化文件(.INI)。INI文件中包含寄存器地址/寄存器值格式的器件寄存器初始化信息。微掌握器需利用该文件来逐个配置MAX17330中的寄存器。
MAX17330EVKIT数据手册详细解释了天生初始化文件所需的各个步骤。图2所示的配置用于启动并联充电。接下来可按图3中的配置启用步进充电。图4显示了基于图3配置步进充电后的预期步进充电曲线。
图2.配置MAX17330进行并联充电
图3.启用步进充电
MAX20734降压转换器可在须要时提高两个MAX17330EVKIT上的电压。MAX20734降压转换器根据地址0x21处的内部寄存器值改变输出电压。降压转换器可以通过I2C掌握;已编写一个Python类来实行此操作。
末了,如图5所示,MAX20743EVKIT输出分压器被修正,输出范围为3 V至4.6 V(利用的值为R6 = 4K7和R9 = 1K3)。
表1.MAX20743基于寄存器0x21的转换输出电压
从表1可以得出如下曲线:
个中,x为要在输出端施加的电压。虽然这种方法会有轻微偏差,但也是根据电压估算所需寄存器值的好方法。
上电与初始化
当MAX17330首次连接电池时,默认寄存器值设置逼迫IC进入关断状态。要唤醒器件,请按PKWK按钮。这将使临时保护MOSFET短路,从而唤醒两个MAX17330EVKIT。
接下来,树莓派须要通过I2C与所有三个器件通信。小心地初始化I2C硬件,避免器件地址冲突。默认情形下,两个MAX17330EVKIT利用相同I2C地址。第一步是变动两个电量计之一的地址。
MAX17330兼有易失落性和非易失落性寄存器,非易失落性寄存器以“n”前缀标识。这也导致产生一对节点地址:6Ch(易失落性寄存器)和16h(NV寄存器)。
改变MAX17330器件节点地址的方法有两种:
► 利用I2CSid字段设置nPackCfg NV寄存器。此变动可以利用配置引导设置。拜会表3。
► I2CCmd寄存器支持动态变动I2C总线。拜会表4。
为了便于利用,我们采取第二种方法来改变地址,这样可以利用同一INI文件来初始化两个器件。天生两个器件的通用设置可以简化器件配置,并肃清有关手动输入地址的用户缺点。
图4.基于图3来配置步进充电的预期步进充电曲线
图5.输出分压器已被修正,输出范围为3 V至4.6 V(R6 = 4 K7且R9 = 1 K3)。
表2.MAX17330寄存器
表3. nPackCfg (1B5h)寄存器格式
表4.I2CCmd (12Bh)寄存器格式
由于两个MAX17330器件共用同一I2C总线,因此该程序哀求将一个器件的ALRT旗子暗记设置为低电平,并将另一个设置为高电平。
表5.I2C ALRT设置
表4中的数据来自MAX17330数据手册,显示了I2CCmd寄存器如何根据ALERT GPIO引脚值动态变动器件地址。在这种情形下,可利用GoToSID和INcSID字段变动I2C地址:
► Set ALRT_A logic low
► Set ALRT_B logic high
► Write I2CCmd = 0 × 0001 MAX17330_A address remains at 6Ch/16h
MAX17330_B address set to ECh/96h
每个器件都分配有唯一的地址后,全体系统便可以由单个微掌握器掌握。
下面是微掌握器完成I2C配置的脚本。这将是系统初始化的一部分。
► Load .INI file
► Assert ALRT_A and ALRT_B to keep the path between SYSP and BATTP open
► Read VBATT_A and VBATT_B
► VMAX = max (VBATT_A, VBATT_B)
► Set VOUT = VMAX + 50 mV
► Release ALRT_A and ALRT_B
► Set nProtCfg.OvrdEn = 0 to use ALRT as Output
非易失落性空间中的某些寄存器须要重启固件才能使变动生效。因此,须要实行以下步骤:
► 置位Config2.POR_CMD以重启固件
拜会表7。
接下来,我们须要启用充电器的中断:
► 设置(Config.Aen和Config.Caen)= 1
拜会表8。
现在器件已初始化。
记录数据和中断
我们须要能够读取寄存器以记录数据,并检讨ALERT GPIO线上是否已天生中断。我们可以利用如下脚本:
► 设置500 ms定时器
► VMIN = min (VBATT_A, VBATT_B)
► Vsys_min = nVEmpty[15:7]
► CrossCharge = False
► If (VMIN
评估最小电池电压是否超过系统的最小事情电压
► If FProtStat.IsDis = 0
检测到充电旗子暗记
► Clear Status.AllowChgB
向所有电池表明充电器存在
► If (VBATT > VMIN + 400 mV and !Cross Charge)
确定要阻挡哪个电池以避免交叉充电
Config2.BlockDis = 1
else
Config2.BlockDis = 0
如果低电量电池远低于高电量电池,则许可放电
拜会表9、10和11。
当MAX17330置位ALRT旗子暗记时,主机将实行以下操作:
Read Status register data
If Status.CA is set
Read ChgStat register
If ChgStat.Dropout = 1 increase VOUT
If (ChgStat.CP or ChgStat.CT) = 1 decrease VOUT
Clear Status.CA
拜会表12和13。
图6显示了从Excel文件的记录数据提取的并联充电曲线。请把稳该曲线随步进充电曲线的变革情形。
FProtStat寄存器
图6.并联充电曲线
其余,一旦器件从恒流(CC)阶段转为恒压(CV)阶段,降压转换器天生的电压可以降落如下:
► If VBATT = ChargingVoltage
Read ChgStat Register
If ChgStat.CV = 1 ecrease VOUT until VPCK = ChargingVoltage + 25 mV
以上便是管理1S2P充电配置所需的所有步骤。MAX17330-usercode.zip中包含了配置降压转换器(MAX20743)以及充电器和电量计(MAX17330)的Python代码。个中还包含了用于捕获主要充电参数和评估步进充电曲线的Excel数据日志。通过管理MAX17330产生的警报旗子暗记,微掌握器可保持MAX17330的线性充电器靠近压差,从而更大限度地降落功耗并支持高充电电流。利用MAX17330的电池包可存储已安装电池的参数,以便主机微掌握器实现高效快速充电。这使得OEM可以用更大略、更便宜的降压转换器取代标准充电器IC器件,而不影响性能或可靠性。
结论
设备充电韶光是最主要的用户体验考量成分之一。MAX17330降压转换器采取小型IC封装,可以有效管理非常高的电流,从而缩短充电韶光。通过采取两个MAX17330等的办法可支持以高电流并联充电,让开发职员能够以安全可靠的办法为多个电池充电,从而大幅节省充电韶光。