《一种基于LABVIEW的锂电池管理系统.pdf》由会员分享,可在线阅读,更多相关《一种基于LABVIEW的锂电池管理系统.pdf(15页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103501026 A (43)申请公布日 2014.01.08 CN 103501026 A (21)申请号 201310422907.2 (22)申请日 2013.09.17 H02J 7/00(2006.01) H02H 7/18(2006.01) G05B 19/042(2006.01) G01R 31/36(2006.01) (71)申请人 武汉大学 地址 430072 湖北省武汉市武昌区珞珈山武 汉大学 (72)发明人 江金光 谭高建 (74)专利代理机构 武汉科皓知识产权代理事务 所 ( 特殊普通合伙 ) 42222 代理人 鲁力 (54) 发明名称 一。
2、种基于 Labview 的锂电池管理系统 (57) 摘要 本发明涉及一种基于 Labview 的锂电池监控 系统, 包括保护硬件模块与监控管理模块 ; 通用 计算机通过 SCI 串口与控制芯片相连接, 控制芯 片通过 I2C 总线与保护芯片连接, 保护芯片分别 通过均衡电路、 充放电电路与锂电池组相连接。 监 控软件模块包含操作系统、 通信程序、 Labview 监 控程序三部分。Labview 监控程序采用数据流编 程方式, 功能上包含串口通信模块, 用户操作模 块, 数据显示模块三部分。 串口通信模块实现与控 制芯片的串口通信 ; 用户操作模块接收用户操作 生成控制数据流 ; 数据显示模块。
3、接收反馈数据流 并显示在交互界面上。系统可以对锂电池进行实 时保护, 并显示锂电池工作状态, 用户可通过交互 界面直接控制保护芯片。 (51)Int.Cl. 权利要求书 2 页 说明书 8 页 附图 4 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书2页 说明书8页 附图4页 (10)申请公布号 CN 103501026 A CN 103501026 A 1/2 页 2 1. 一种基于 Labview 的锂电池监控系统其特征在于 : 包括保护硬件模块与监控管理模 块 ; 所述保护硬件模块包括保护电路、 控制芯片、 通用计算机平台 ; 所述监控模块包括设置 在计算机平。
4、台内的操作系统单元、 设置在计算机平台内 Labview 监控单元、 以及通信单元 ; 所述通用计算机平台通过 SCI 串口与控制芯片相连接, 控制芯片通过 I2C 总线与保护芯片 连接, 保护芯片分别通过均衡电路、 充放电电路与锂电池组相连接, 保护芯片、 均衡电路、 充 放电电路属于锂电池保护电路。 2. 根据权利要求 1 中所述一种基于 Labview 的锂电池管理系统其特征于 : Labview 监 控单元采用数据流编程方式, 由一个主 vi 模块调用多个子 vi 模块构成 ; 主 vi 模块实现监 控程的主要功能, 子 vi 模块受主 vi 模块调用做数据处理, 具体包括 : EEP。
5、ROM.vi : 受用户操作模块调用, 生成保护芯片的配置数据, 用户通过主 vi 模块输入 配置的数据后, 主 vi 模块用户操作模块调用 EEPROM.vi 生成保护芯片的配置数据 (属于控 制流数据) , 后传回串口通信模块 ; PhyValue.vi : 受数据显示模块调用, 从数据显示模块接收实时监控反馈数据流, 分解 数据得到, 得到每节锂电池的电压、 工作电流, 并转换为对应的显示数据格式后, 传回主 vi 模块数据显示模块 ; EXT1.vi : 受数据显示模块调用, 从数据显示模块中接收实时监控的反馈数据流, 得到 锂电池温度, 并传回主 vi 模块数据显示模块 ; Capa。
6、city.vi : 受数据显示模块调用, 根据 PhyValue.vi 中各节电池的电压, 采用分段 线性模型, 估算节锂电池的电量, 得到锂电池组的平均电量, 以及电量最低电池和最低的电 量, 并将这些数据传回主 vi 模块数据显示模块 ; Log.vi : 受用户操作模块调用, 从主 vi 模块数据显示模块中接收用户所选择数据, 记 录生成日志并保存。 3. 根据权利要求 2 中所述一种基于 Labview 的锂电池管理系统其特征于 : 主 vi 模块 工作流程包括三分支顺序结构 ; 第一分支为初始化 : 初始主 vi 模块前面板, 设定系统启动 主 vi 模块前面板显示控件与输入控件的初。
7、始值, 将控制栏初始为串口配置界面 ; 第三分支 结束处理 : 在一次监控结束而不退出系统时, 对主 vi 模块前面板进行结束处理, 控制栏保 持最后功能界面 ; 第二分支主循环 : 为一个循环结构循环, 包含串口通信模块、 用户操作模 块、 数据显示模块 ; 串口通信模块 : 处于二分支条件结构内, 从串口配置界面接收配置数据, 配置串口建立 串口通信, 将用户操作模块的数据通过串口发送到通信单元, 从串口接收数据并发送到数 据显示模块 ; 用户操作模块 : 一个多分支事件结构, 从主 vi 模块前面板的输入控件中接收用户操作 数据, 并生成控制数据流, 同时对数据进行查错, 当数据错误时提。
8、示用户改正, 用户操作正 确后, 将控制流数据传送给串口通信模块 ; 数据显示模块 : 一个多分支条件结构, 处于一个二分支条件结构内, 接收从串口通信模 块传来的反馈数据流, 如果反馈数据流标志位为失败, 则在状态栏上显示对应操作失败后, 结束对反馈数据流的处理 ; 否则根据反馈数据流的模式位, 得到用户操作指令后, 处理后实 时显示给用户 ; 串口通信模块与数据显示模块均处在 2 分支的条件结构中, 只在各自需要的时候被调 权 利 要 求 书 CN 103501026 A 2 2/2 页 3 用, 节约了计算机资源。 4. 根据权利要求 3 中所述一种基于 Labview 的锂电池管理系统。
9、其特征于 : 监控模块包 含以下两条数据流 : 控制数据流、 反馈数据流 ; 控制数据流中数据第一字节为模式位, 即用户操作指令 ; 数据位为用户输入的数据, 包 含 5 种控制数据流 : 实时监控、 EEPROM 配置、 读寄存器、 写寄存器、 EEPROM 操作, 实时监控无 数据位, EEPROM 配置数据位为 EEPROM 配置数据, 读寄存器数据位为读取地址, 写寄存器数 据位为写入地址与写入数据, EEPROM 操作数据位为操作指令、 操作地址、 操作数据, 控制流 数据传递步骤如下 : 步骤 1.1 : 前面板主 vi 模块输入控件接收用户操作, 生成操作数据传送到, 用户操作模。
10、 块 ; 步骤 1.2 : 用户操作模块接收操作数据, 当用户操作正确后, 在需要时调用 EEPROM.vi, 生成控制流数据 ; 步骤 1.3 : 串口通信模块接收用户操作模块生成的控制数据流, 通过串口发送到控制 芯片 ; 步骤 1.4 : 通信单元从串口接收控制数据流后, 按控制数据流格式分解出操作指令、 操 作地址与操作数据后, 调用对应操作函数通过 I2C 总线对保护芯片进行控制, 至此为一条 完整的控制流。 5. 根据权利要求 4 中所述一种基于 Labview 的锂电池管理系统其特征于 : 反馈数据 流中第一字节为模式位, 表示用户操作指令, 第二字节为标志位, 标志用户操作的成。
11、败, 后 续为数据位即用户所需的数据, 当操作失败时数据位为空, 写寄存器数据位为空 ; 读寄存器 数据位为读取数据 ; 实时监控数据位为锂电池状态寄存器值 ; EEPROM 操作的数据位依次为 EEPROM 操作指令、 反馈数据, 反馈数据流传递步骤如下 : 步骤 2.1 : 保护芯片接受用控制芯片控制, 并响应用户操作后, 采集数据存储存于寄存 器中, 作为初始反馈数据 ; 步骤 2.2 : 控制芯片读取保护芯片寄存器中的数据, 得到用户操作成败、 用户所需的数 据, 按反馈数据流格式整合后, 通过串口发到通用计算机 ; 步骤 2.3 : 主 vi 模块数据显示模块从串口通信模块接收数据后。
12、, 将数据按反馈数据流 格式进行分解, 按用户操作指令将数据, 送给前面板不同的显示控件显示 ; 步骤 2.4 : 实时监控显示的数据, 需要依次调用 PhyValue.vi、 Capacity.vi、 EXT1.vi 完 成数据处理后, 传递回数据显示模块并由实时监控界面显示 ; 步骤 2.5 : Log.vi 从数据显示模块接收数据后, 生成监控日志, 至此为一条完整的反馈 数据流。 6. 根据权利要求 1 中所述一种基于 Labview 的锂电池管理系统其特征于 : 系统包含报 错模块, 在硬件通信故障, 即 I2C 总线通信未建立、 SCI 串口通信未建立时, 能通知用户并要 求用户排。
13、除故障, 当用户输入数据错误、 用户操作不当时, 能通知用户并要求用户进行正确 的操作。 权 利 要 求 书 CN 103501026 A 3 1/8 页 4 一种基于 Labview 的锂电池管理系统 0001 技术领域 0002 本发明属于锂电池电源监控领域, 涉及一种基于 Labview 的锂电池监控系统, 特 别涉及一种采用 LabVIEW 编程可在通用计算机上运行的, 具有交互界面的锂电池监控系 统。 背景技术 0003 近些年来随着无人电子装备、 便携数码设备、 电动工具、 电动汽车等的发展, 其动 力核心蓄电池正受到越来越多的关注。锂电池以其高比能量、 长循环寿命、 自放电小、 。
14、无记忆效应和绿色环保等优点备受厂家青睐, 是动力电池领域研究的热点之一。 0004 由于锂电池内部结构复杂、 充放电化学反应复杂, 因而锂电池作为动力电源来使 用, 还存在不少问题。 首先锂电池不能承受过度充电与过度放电, 其次当电池串并联数目较 多时, 还会出先电池放电不均衡等新问题, 必须对电池组进行均衡放电监控。 因此锂电池要 能正常工作, 离不开锂电池监控系统的监控与保护。 完善的锂电池监控系统, 可以保护锂电 池不被损坏、 提高锂电池工作效率、 延长锂电池使用寿命。 0005 现阶段的锂电池监控系统, 以硬件保护功能设计为主, 即单独的硬件电路实现对 锂电池的保护。 在软件上以电池的。
15、电量显示、 电池的工作模式选择为主, 极少有软件监控系 统, 能完整地显示电池组的工作状态, 并允许用户直接从软件上控制保护电路的运行。 发明内容 0006 本发明的上述技术问题主要是通过下述技术方案得以解决的 : 一种基于 Labview 的锂电池监控系统, 其特征在于 : 包括保护硬件模块与监控管理模 块 ; 所述保护硬件模块包括保护电路、 控制芯片、 通用计算机平台 ; 所述监控模块包括设置 在计算机平台内的操作系统单元、 设置在计算机平台内 Labview 监控单元、 以及通信单元 ; 所述通用计算机平台通过 SCI 串口与控制芯片相连接, 控制芯片通过 I2C 总线与保护芯片 连接,。
16、 保护芯片分别通过均衡电路、 充放电电路与锂电池组相连接, 保护芯片、 均衡电路、 充 放电电路属于锂电池保护电路。 0007 本发明创造性的采用成熟的锂电池保护路, 结合 Labview 虚拟仪器技术, 设计了 一种基于 LabVIEW 编程的, 运行在通用计算机上的锂电池监控系统, 该系统包含保护硬件 模块、 监控软件两部分。 保护硬件模块采用成熟的锂电池保护电路, 监控软件模块由自主设 计完成, 采用 LabVIEW 8.5(NI 公司的 Labview 集成编程环境) 作为编程环境。经验证此监 控系统, 不仅能对锂电池进行过压、 欠压、 过流、 短路保护, 还能实时监控并显示锂电池组的。
17、 工作状态 (电池电压、 电量、 温度等) , 同时专业用户能够通过交互界面, 直接控制保护芯片, 以调整锂电池保护电路的工作状态。 0008 其中, 锂电池保护电路采用成熟的锂电池保护电路 ; 控制芯片采用 16 为单片机 ; 说 明 书 CN 103501026 A 4 2/8 页 5 通用计算机平台为市售普通台式机, 包含必要外设。 保护芯片是锂电池保护电路的核心, 保 护芯片控制锂电池保护电路实现对锂电池的保护。 保护芯片通过均衡电路对锂电池进行均 衡操作 ; 保护芯片通过控制充放电电路, 完成对锂电池进行保护。 锂电池保护电路的主要功 能如下 :(1) 实时监控并保护锂电池 ;(2)。
18、 实时采集电池的电压、 温度、 电流等工作状态数据 并储存到保护芯片寄存器中 ;(3) 受控制芯片控制, 调整锂电池工作状态。 0009 在上述一种基于 Labview 的锂电池管理系统, Labview 监控单元采用数据流编程 方式, 由一个主 vi 模块调用多个子 vi 模块构成 ; 主 vi 模块实现监控程的主要功能, 子 vi 模块受主 vi 模块调用做数据处理, 具体包括 : EEPROM.vi : 受用户操作模块调用, 生成保护芯片的配置数据, 用户通过主 vi 模块输入 配置的数据后, 主 vi 模块用户操作模块调用 EEPROM.vi 生成保护芯片的配置数据 (属于控 制流数据。
19、) , 后传回串口通信模块 ; PhyValue.vi : 受数据显示模块调用, 从数据显示模块接收实时监控反馈数据流, 分解 数据得到, 得到每节锂电池的电压、 工作电流, 并转换为对应的显示数据格式后, 传回主 vi 模块数据显示模块 ; EXT1.vi : 受数据显示模块调用, 从数据显示模块中接收实时监控的反馈数据流, 得到 锂电池温度, 并传回主 vi 模块数据显示模块 ; Capacity.vi : 受数据显示模块调用, 根据 PhyValue.vi 中各节电池的电压, 采用分段 线性模型, 估算节锂电池的电量, 得到锂电池组的平均电量, 以及电量最低电池和最低的电 量, 并将这些。
20、数据传回主 vi 模块数据显示模块 ; Log.vi : 受用户操作模块调用, 从主 vi 模块数据显示模块中接收用户所选择数据, 记 录生成日志并保存。 0010 控制芯片是通用计算机平台与锂电池保护电路通信的桥梁, 主要功能如下 :(1) 接收 Labview 监控程序发送的控制流数据, 并控制保护芯片响应 ;(2) 读取保护芯片寄存器 数据, 生成反馈数据流, 并发送到通用计算机。 0011 通用计算机平台为 Labview 监控程序提供运行平台, 包含兼容 LabVIEW 8.5 的操 作系统 ; 提供键盘、 显示器等必要外设 ; 提供 SCI 串口等通信接口 ; 同时为控制芯片供电。。
21、 0012 Labview 监控程序采用 LabVIEW 8.5 编写, 由主 vi 调用多个子 vi 间构成, vi(vi 是虚拟仪器的英文缩写, 也 LabVIEW 编程环境生成的程序文件的代称, 下文将用 vi 指代程 序文件) , 子 vi 被主 vi 调用做数据处理, 主 vi 实现了 Labview 监控程序的主要功能。从编 程结构上来看主 vi 分为前面板、 程序框图两部分。前面板用于与用户交互, 接收用户操作, 显示数据给用户。主 vi 程序框图控制各个 vi 间的数据流, 实现主 vi 的功能。从功能上 来说主 vi 分为串口通信模块、 用户操作模块、 数据显示模块三部分。串。
22、口通信模块实现与 控制芯片间的通信 ; 用户操作模块接收用户的操作, 并将用户操作转换为一定格式的数据, 通过串口通信模块发送给控制芯片以实现用户操作 ; 数据显示模块处理从串口通信模块, 接收控制芯片反馈数据并实时显示。用户操作模块需要调用 EEPROM.vi 实现对 EEPROM 的 操作, 及对保护芯片的配置 ; 数据显示模块需要调用 PhyValue.vi、 Capacity.vi、 EXT1.vi、 Log.vi 实现对锂电池状态信息的数据处理。 0013 系统运行时采用主 vi 前面板作为同用户的交互界面, 子 vi 主要用于数据处理, 在运行时不显示前面板。EEPROM.vi 被。
23、主 vi 调用生成 EEPROM 配置数据, 完成对锂电池保 说 明 书 CN 103501026 A 5 3/8 页 6 护芯片的控制 ; PhyValue.vi用于将接收到的锂电池状态信息 (十六进制数据) , 转换为对应 的物理数据并实时显示, Capacity.vi 被 PhyValue.vi 调用生成锂电池的电量, EXT1.vi 被 PhyValue.vi 调用生成锂电池的温度 ; Log.vi 被主 vi 调用生成监控日志。Labview 监控程 序经过封装处理, 在未安装 LabVIEW 8.5 的计算机上也可运行。 0014 通信程序运行于控制芯片上由嵌入 C 语言编写而成,。
24、 用于实现控制程序的功能, 即担任保护芯片与 Labview 监控程序间通信的桥梁。从串口接收 Labview 监控程序发送的 用户命令数据, 进行转换后通过 I2C 总线发送给保护芯片, 实现用户对保护电路的控制。从 I2C 总线接收到原始锂电池状态信息, 将这些信息进行转换后通过串口发送给 Labview 监 控程序, Labview 程序将这些信息转换为对应的电压、 电流、 电量等物理参数后实时显示给 用户。 0015 在上述一种基于Labview的锂电池管理系统, 主vi模块工作流程包括三分支顺序 结构 ; 第一分支为初始化 : 初始主 vi 模块前面板, 设定系统启动主 vi 模块前。
25、面板显示控件 与输入控件的初始值, 将控制栏初始为串口配置界面 ; 第三分支结束处理 : 在一次监控结 束而不退出系统时, 对主 vi 模块前面板进行结束处理, 控制栏保持最后功能界面 ; 第二分 支主循环 : 为一个循环结构循环, 包含串口通信模块、 用户操作模块、 数据显示模块 ; 串口通信模块 : 处于二分支条件结构内, 从串口配置界面接收配置数据, 配置串口建立 串口通信, 将用户操作模块的数据通过串口发送到通信单元, 从串口接收数据并发送到数 据显示模块 ; 用户操作模块 : 一个多分支事件结构, 从主 vi 模块前面板的输入控件中接收用户操作 数据, 并生成控制数据流, 同时对数据。
26、进行查错, 当数据错误时提示用户改正, 用户操作正 确后, 将控制流数据传送给串口通信模块 ; 数据显示模块 : 一个多分支条件结构, 处于一个二分支条件结构内, 接收从串口通信模 块传来的反馈数据流, 如果反馈数据流标志位为失败, 则在状态栏上显示对应操作失败后, 结束对反馈数据流的处理 ; 否则根据反馈数据流的模式位, 得到用户操作指令后, 处理后实 时显示给用户 ; 串口通信模块与数据显示模块均处在 2 分支的条件结构中, 只在各自需要的时候被调 用, 节约了计算机资源。 0016 在上述一种基于 Labview 的锂电池管理系统, 监控模块包含以下两条数据流 : 控 制数据流、 反馈数。
27、据流 ; 控制数据流中数据第一字节为模式位, 即用户操作指令 ; 数据位为用户输入的数据, 包 含 5 种控制数据流 : 实时监控、 EEPROM 配置、 读寄存器、 写寄存器、 EEPROM 操作, 实时监控无 数据位, EEPROM 配置数据位为 EEPROM 配置数据, 读寄存器数据位为读取地址, 写寄存器数 据位为写入地址与写入数据, EEPROM 操作数据位为操作指令、 操作地址、 操作数据, 控制流 数据传递步骤如下 : 步骤 1.1 : 前面板主 vi 模块输入控件接收用户操作, 生成操作数据传送到, 用户操作模 块 ; 步骤 1.2 : 用户操作模块接收操作数据, 当用户操作正。
28、确后, 在需要时调用 EEPROM.vi, 生成控制流数据 ; 步骤 1.3 : 串口通信模块接收用户操作模块生成的控制数据流, 通过串口发送到控制 说 明 书 CN 103501026 A 6 4/8 页 7 芯片 ; 步骤 1.4 : 通信单元从串口接收控制数据流后, 按控制数据流格式分解出操作指令、 操 作地址与操作数据后, 调用对应操作函数通过 I2C 总线对保护芯片进行控制, 至此为一条 完整的控制流。 0017 在上述一种基于 Labview 的锂电池管理系统, 反馈数据流中第一字节为模式位, 表示用户操作指令, 第二字节为标志位, 标志用户操作的成败, 后续为数据位即用户所需的 。
29、数据, 当操作失败时数据位为空, 写寄存器数据位为空 ; 读寄存器数据位为读取数据 ; 实时 监控数据位为锂电池状态寄存器值 ; EEPROM 操作的数据位依次为 EEPROM 操作指令、 反馈数 据, 反馈数据流传递步骤如下 : 步骤 2.1 : 保护芯片接受用控制芯片控制, 并响应用户操作后, 采集数据存储存于寄存 器中, 作为初始反馈数据 ; 步骤 2.2 : 控制芯片读取保护芯片寄存器中的数据, 得到用户操作成败、 用户所需的数 据, 按反馈数据流格式整合后, 通过串口发到通用计算机 ; 步骤 2.3 : 主 vi 模块数据显示模块从串口通信模块接收数据后, 将数据按反馈数据流 格式进。
30、行分解, 按用户操作指令将数据, 送给前面板不同的显示控件显示 ; 步骤 2.4 : 实时监控显示的数据, 需要依次调用 PhyValue.vi、 Capacity.vi、 EXT1.vi 完 成数据处理后, 传递回数据显示模块并由实时监控界面显示 ; 步骤 2.5 : Log.vi 从数据显示模块接收数据后, 生成监控日志, 至此为一条完整的反馈 数据流。 0018 在上述一种基于 Labview 的锂电池管理系统, 系统包含报错模块, 在硬件通信故 障, 即 I2C 总线通信未建立、 SCI 串口通信未建立时, 能通知用户并要求用户排除故障, 当用 户输入数据错误、 用户操作不当时, 能通。
31、知用户并要求用户进行正确的操作。 0019 因此, 本发明具有如下优点 : 1. 采用软硬结合的系统架构, 保护硬件模块即可自 主保护锂电池, 又可以通过软件接受用户控制, 实时调整锂电池及其工作电路的工作状态。 2. 监控软件模块实时监控并显示锂电池信息, 用户可查询锂电池的工作电流、 工作温度、 各 节电池电压、 电池组平均电量、 最低电量等全面的信息, 以判断锂电池的工作状态, 并对手 动调整锂电池工作状态。 3.监控软件模块可移植性好, 在保护硬件模块发生变化时, 只需重 新建立保护芯片与通用计算机平台的通信即可正常工作。4. 本监控系统包含除错功能, 当 系统硬件连接出错时, 通知用。
32、户并要求修复硬件连接 ; 当用户操作不当时, 通知用于并要求 进行更正操作。5. 本系统包含日志记录功能, 用户可保存并查看所需的锂电池状态记录。 附图说明 0020 图 1 所示为锂电池监控系统的整体框架示意图。 0021 图 2 所示为监控软件模块的数据流示意图。 0022 图 3 所示为监控系统主 vi 结构的示意图。 0023 图 4 所示为监控系统控制数据流格式示意图。 0024 图 5 所示为监控系统反馈数据流格式示意图。 0025 图 6 所示为通信程序运行流程示意图。 0026 图 7 所示为系统监控流程示意图。 说 明 书 CN 103501026 A 7 5/8 页 8 具。
33、体实施方式 0027 下面通过实施例, 并结合附图, 对本发明的技术方案作进一步具体的说明。 0028 实施例 : 附图 1 所示为锂电池监控系统的整体框图, 系统包括保护硬件模块、 监控软件模块两 部分。 0029 保护硬件模块 : 通用计算机通过 SCI 串口与控制芯片相连接, 控制芯片通过 I2C 总线与保护芯片连接, 保护芯片分别通过均衡电路、 充放电电路与锂电池组相连接, 保护芯 片、 均衡电路、 充放电电路属于锂电池保护电路。 0030 保护芯片 : 锂电池保护电路采用成熟的锂电池保护电路, 启动后可以自主完成对 锂电池的保护, 不一定需要监控软件模块的控制。保护芯片通过均衡电路对。
34、锂电池进行均 衡操作 ; 保护芯片通过控制充放电电路, 对锂电池进行保护。 锂电池保护电路的主要功能如 下 : 实时监控并保护锂电池 ; 实时采集电池的电压、 温度、 电流等工作状态数据并储 存到保护芯片寄存器中 ; 受控制芯片控制, 调保护电路工作状态。 0031 控制芯片 : 采用 16 位单片机模块, 主要功能如下 : 接收 Labview 监控程序发送的 控制数据流, 控制保护芯片响应用户操作 ; 读取保护芯片寄存器, 生成反馈数据流, 发送到 通用计算机, 显示给用户。 0032 通用计算机平台 : 普通台式机, 包含必要外设、 通信接口 ; 提供兼容 LabVIEW 8.5 的操作。
35、系统 ; 通用计算机平台为 Labview 监控程序提供运行平台。 0033 监控软件模块包含操作系统、 通信程序、 Labview 监控程序三部分。操作系统由通 用计算机平台提供, 不在所设计的范畴内。 0034 附图 2 所示为监控软件模块数据流示意图。Labview 监控程序采用数据流编程方 式构建, 由一个主vi调用一系列子vi构成, 主vi实现Labview监控程序的主要功能, 子vi 用于数据处理。主 vi 各个模块与各子 vi、 监控软件模块其他部分通过数据流相互连接。 0035 EEPROM.vi : 受用户操作模块调用, 生成保护芯片的配置数据。 用户通过主vi输入 配置的数。
36、据后, 主 vi 用户操作模块调用 EEPROM.vi 生成保护芯片的配置数据 (属于控制流 数据) , 之后通过串口通信模块发送给通信程序 ; PhyValue.vi : 受数据显示模块调用, 从数据显示模块接收实时监控的反馈数据流。分 解数据得到, 得到每节锂电池的电压、 工作电流, 并转换为对应的显示数据格式后, 传回主 vi 数据显示模块 ; EXT1.vi : 受数据显示模块调用, 从数据显示模块中接收实时监控的反馈数据流, 得到 锂电池温度, 并传回主 vi 数据显示模块 ; Capacity.vi : 受数据显示模块调用, 根据 PhyValue.vi 中各节电池的电压, 采用电。
37、量 对电池电压的分段线性模型, 估算锂电池组中每节电池的电量, 得到锂电池组的平均电量, 以及电量最低电池和最低的电量, 并将这些数据传回主 vi 数据显示模块 ; Log.vi : 受用户操作模块调用, 从主 vi 数据显示模块中接收用户所选择数据, 记录生 成日志并保存。 说 明 书 CN 103501026 A 8 6/8 页 9 0036 附图 3 所示为监控程序主 vi 结构图, 主 vi 包含前面板与程序框图两部分。前面 板用于与用户交互, 接收用户操作、 显示数据给用户。程序框图控制主 vi 各模块、 各子 vi 间的数据流, 实现主 vi 的功能。 0037 主 vi 前面板 。
38、: 显示控件显示信息给用户, 输入控件接收用户操作数据用户 (即用 户在前面板上进行操作生成的数据, 包括表征用户操作类型的数据与用户输入的数据两部 分组成) 。主 vi 前面板包含状态栏、 控制栏、 菜单栏三部分。状态栏属于显示控件指示系统 运行状态和用户操作成败, 菜单栏属于输入控件为用户提供操作菜单。控制栏用于包含以 下五个功能界面, 提供用户 5 种模式的操作 : 串口配置界面 : 提供了串口配置项目, 接收用户配置, 并将配置数据发送到串口通信模 块 ; 日志记录界面 : 显示生成的监控日志供用户查看, 并按用户操作保存日志 ; EEPROM 配置界面 : 提供了 EEPROM 配置。
39、表, 指导用户输入完整的 EEPROM 配置数据, 并输 入到用户操作模块 ; 实时监控界面 : 实时显示监控数据, 即锂电池的工作状态数据 ; Pro Operation 界面 : 提供用户三种直接控制保护芯片操作 : 读寄存器、 写寄存器、 EEPROM 操作。EEPROM 操作会改变保护芯片工作模。接收到操作数据后发送到用户操作模 块, 之后显示操作反馈的数据包括 : 读出寄存器的数据、 EEPROM 操作反馈数据两部分。 0038 主 vi 程序框图 : 一个三分支顺序结构。第一分支为初始化 : 初始主 vi 前面板, 设 定系统启动主 vi 前面板显示控件与输入控件的初始值, 将控制。
40、栏初始为串口配置界面。第 三分支结束处理 : 在一次监控结束而不退出系统时, 对主 vi 前面板进行结束处理, 控制栏 保持最后功能界面。第二分支主循环 : 一个循环结构循环, 包含串口通信模块、 用户操作模 块、 数据显示模块三部分。 0039 串口通信模块 : 处于二分支条件结构内, 从串口配置界面接收配置数据, 配置串口 建立串口通信, 将用户操作模块的数据通过串口发送到通信程序, 从串口接收数据并发送 到数据显示模块 ; 用户操作模块 : 一个多分支事件结构, 从主 vi 前面板的输入控件中接收用户操作数 据, 并生成控制数据流, 同时对数据进行查错, 当数据错误时提示用户改正。用户操。
41、作正确 后, 将控制流数据传送给串口通信模块。 0040 附图 4 所示为监控系统控制数据流的格式 : 数据第一字节为模式位, 即用户操作 指令 ; 数据位为用户输入的数据。包含 5 种控制数据流 : 实时监控、 EEPROM 配置、 读寄存器、 写寄存器、 EEPROM 操作。实时监控由实时监控界面输入没有数据位 ; EEPROM 配置数据位由 EEPROM配置界面输入的EEPROM配置数据 ; 读寄存器数据位为读取地址 ; 写寄存器数据位依 次为写入地址、 写入数据 ; EEPROM 操作数据位依次为操做命令、 操作地址、 操作数据, 后三 种数据有 Pro Operation 界面输入。。
42、 0041 数据显示模块 : 一个多分支条件结构, 处于一个二分支条件结构内, 接收从串口通 信模块传来的反馈数据流, 如果反馈数据流标志位为失败, 则在状态栏上显示对应操作失 败, 之后结束对反馈数据流的处理 ; 否则根据反馈数据流的模式位, 得到用户操作指令后, 处理后实时显示给用户。反馈数据流有以下四种 : 实时监控数据, 此部分数据需要调用 说 明 书 CN 103501026 A 9 7/8 页 10 PhyValue.vi、 EXT1.vi、 Capacity.vi 处理后显示在实时监控界面上 ;EEPROM 反馈数据 : 显示在 Pro Operation 界面上 ; 读寄存器数。
43、据 : 显示在 Pro Operation 界面上 ; 写寄 存器数据 : 只用将操作成败显示在状态栏上即可。 0042 附图 5 所示为监控系统反馈数据流的格式 : 第一字节为模式位, 表示用户操作指 令, 第二字节为标志位, 标志用户操作的成败, 后续为数据位即用户所需的数据, 当操作失 败时数据位为空。写寄存器数据位为空 ; 读寄存器数据位为读取数据 ; 实时监控数据位为 锂电池状态寄存器值 ; EEPROM 操作的数据位依次为 EEPROM 操作指令、 反馈数据。 0043 串口通信模块与数据显示模块均处在 2 分支的条件结构中, 只在各自需要的时候 被调用, 节约了计算机资源。为了实。
44、现上述监控系统设计了两条数据流。 0044 控制数据流 : 起点为用户操作终点为保护芯片, 实现用户对保护芯片的控制。 控制 数据流传输步骤如下。 0045 步骤 1.1 : 前面板主 vi 输入控件接收用户操作, 生成操作数据传送到, 用户操作模 块 ; 步骤 1.2 : 用户操作模块接收操作数据, 当用户操作正确后, 在需要时调用 EEPROM.vi, 生成控制流数据 ; 步骤 1.3 : 串口通信模块接收用户操作模块生成的控制数据流, 通过串口发送到控制 芯片 ; 步骤 1.4 : 通信程序从串口接收控制数据流后, 按控制数据流格式分解出操作指令、 操 作地址与操作数据后, 调用对应操作。
45、函数通过 I2C 总线对保护芯片进行控制。至此为一条 完整的控制流。 0046 反馈数据流 : 起点为保护芯片终点为显示设备, 告知用户操作的结果以及锂电池 状态。反馈数据流传输步骤如下 : 步骤 2.1 : 保护芯片接受用控制芯片控制, 并响应用户操作后, 采集数据存储存于寄存 器中, 作为初始反馈数据 ; 步骤 2.2 : 控制芯片读取保护芯片寄存器中的数据, 得到用户操作成败、 用户所需的数 据, 按反馈数据流格式整合后, 通过串口发到通用计算机 ; 步骤 2.3 : 主 vi 数据显示模块从串口通信模块接收数据后, 将数据按反馈数据流格式 进行分解, 按用户操作指令将数据, 送给前面板。
46、不同的显示控件显示 ; 步骤 2.4 : 实时监控显示的数据, 需要依次调用 PhyValue.vi、 Capacity.vi、 EXT1.vi 完 成数据处理后, 传递回数据显示模块并由实时监控界面显示 ; 步骤2.5 : Log.vi从数据显示模块接收数据后, 生成监控日志。 至此为一条完整的反馈 数据流。 0047 附图 6 所示为系统通信程序的运行流程示意图。采用 C 语言编写承担 Labview 监 控程序与保护芯片通信的桥梁, 其运行流程如下 : (1) 初始化 : 对硬件电路进行初始化, 包括控制芯片、 I2C 总线、 串口模块、 保护芯片等 模块 ; (2) 接收数据 : 等待。
47、并读取通过串口写入控制数据流 ; 说 明 书 CN 103501026 A 10 8/8 页 11 (3) 模式判断 : 根据控制数据流模式位判断用户操作指令, 并跳入对应的处理分支, 分 支处理完成后回到第 2 步重复进行 ; (4) 读寄存器 : 从控制数据流数据位中得到读取地址, 调用读函数通过 I2C 总线读取保 护芯片对应的寄存器 ; (5) 写寄存器 : 从控制数据流的数据位中得到写入地址与写入数据, 调用写函数通过 IC2 写保护芯片对应的寄存器 ; (6) 实时监控 : 调用实时监控函数, 扫描锂电池工作状态寄存器组 ; (7) EEPROM 操作 : 从控制数据流数据位中得到。
48、 EEPROM 操作指令, 再根据操作指令从后 续数据位中, 得到操作地址与操作数据, 之后调用 EEPROM 操作函数进行操作 ; (8) EEPROM 配置 : 从控制数据流的数据位中, 取得 EEPROM 配置数据, 再调用 EEPROM 配 置函数进行相应配置 ; (9) 完成所有任务后退。 0048 第4到7步中, 完成操作后, 需要判断操作成败, 并结合反馈数据、 操作指令生成反 馈数据流通过串口, 发送给 Labview 监控程序。如果操作失败, 反馈数据流不包含数据位。 0049 附图 7 所示为系统控流程图, 其中保持界面为特殊的一步即 : 用户无操作时, 保持 在用户最后操。
49、作的界面, 并进行相应的任务, 等待用户新的操作 : 步骤 1 : 启动系统进行初始化。硬件上 : 通信程序对控制芯片、 保护芯片、 I2C 总线、 SCI 串口进行初次化。软件上 : 主 vi 的前面板被初始化到串口配置界面。 0050 步骤 2 : 用户通过串口配置界面, 对串口进行配置建立串口通信, 一般情况系统默 认配置即可。 0051 步骤 3 : 用户通过 EEPROM 配置界面, 写入 EEPROM 配置数据, 设定保护芯片的工作 模式, 一般情况按系统默认配置即可。 0052 步骤 4 : 开启实时监控任务, 通过控制栏切换到实时监控界面, 开始监控锂电池的 工作状态, 实时监控并显示锂电池的状态, 完成后保持界面。 0053 步骤 5 : 日志记录, 通过控制栏切换到日志生成界面, 查看生成的日志, 并保存所 需数据, 完成后保持界面。 0054 步骤 6 : 在 Pro Operation 界面上按用户所需要进行操作, 并显示操作反馈的数 据, 完成后保持界面。 0055 步骤 4,5,6 可并列进行没有先后顺序之分, 可以自由切换任务,。