0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

INA219电量监测芯片的使用经验和资料及使用步骤详细说明

3qRk_Pow 来源:未知 作者:TI 2019-09-08 11:37 次阅读

手册如下,INA219 是TI推出的具有I2C 接口的零漂移双向电流/功率监测计,

INA219内部结构图如上,芯片同是支持差分分压电流检测跟总线电压检测

芯片外部引脚A0、A1引脚,支持支持16路地址设置,同时可挂载16路设备,

INA219操作其实很简单,内部共有六个寄存器,其中需要用户设置的只有两个

Configuration Register 配置寄存器(地址= 00h)[reset = 399Fh

Shunt Voltage Register 分流电压寄存器(地址= 01h)

Bus Voltage Register 总线电压寄存器(地址= 02h)

Power Register 功率寄存器(地址= 03h)[reset = 00h]

Current Register 当前寄存器(地址= 04h)[reset = 00h]

Calibration Register 校准寄存器(地址= 05h)[reset = 00h]

8.6.2.1 Configuration Register,配置寄存器(地址= 00h)[reset = 399Fh]

RST:重置位,将此位设置为“1”会产生与上电复位相同的系统复位。将所有寄存器重置为默认值; 这一点自我清除。

BRNG:总线电压范围,0 = 16V FSR,1 = 32V FSR(默认值)

PG:PGA(仅限分流电压),设置PGA增益和范围。请注意,PGA默认为÷8(320mV范围)。表4显示了各种产品增益设置的增益和范围。

BADC:BADC总线ADC分辨率/平均,这些位调整总线ADC分辨率(9位,10位,11位或12位)或设置总线电压寄存器的平均结果时使用的采样数(02H)。

SADC:SADC分流ADC分辨率/平均,这些位调整分流ADC分辨率(9位,10位,11位或12位)或设置分流电压寄存器的平均结果时使用的采样数(01H)。

BADC(总线)和SADC(分流)ADC分辨率/平均和转换时间设置如表5所示。

MODE:操作模式,选择连续,触发或断电操作模式。这些位默认为连续分流和总线

8.6.3.1 Shunt Voltage Register,分流电压寄存器(地址= 01h)

分流电压寄存器存储当前的分流电压读数VSHUNT。分流电压寄存器位根据配置寄存器(00h)中选择的PGA设置进行移位。当存在多个符号位时,它们将是相同的值。

负数以2的补码格式表示,通过补充绝对值二进制数并加1来得到负数的2的补码。

通过设置MSB = 1来扩展符号,表示负数。将符号扩展到任何其他符号位以形成16位字。

示例:对于值VSHUNT = -320 mV:

1.取绝对值(包括精度到0.01 mV)→320.00

2.将此数字翻译为整数十进制数→32000

3.将其转换为二进制→111 1101 0000 0000

4.补充二进制结果:000 0010 1111 1111

5.在Complement中添加1以创建Two‘s Complement格式化结果→000 0011 0000 0000

6.扩展符号并创建16位字:1000 0011 0000 0000 = 8300h(记住根据PGA设置,根据需要将符号扩展到所有符号位。)

8.6.3.2 Bus Voltage Register,总线电压寄存器(地址= 02h)

总线电压寄存器存储最新的总线电压读数VBUS。

满量程范围= 32 V(十进制= 8000,十六进制= 1F40),LSB = 4 mV。

满量程范围= 16 V(十进制= 4000,十六进制= 0FA0),LSB = 4 mV。

CNVR:转换就绪,虽然可以随时读取上次转换的数据,但INA219转换就绪位(CNVR)指示数据输出寄存器中何时有转换数据。

所有转换,平均和乘法完成后,CNVR位置1。 CNVR将在以下条件下清除:

1.)将新模式写入配置寄存器的工作模式位(掉电或禁用除外)

2.)读取功率寄存器

OVF:数学溢出标志,当功率或电流计算超出范围时,数学溢出标志(OVF)置位。 它表明当前和电力数据可能毫无意义。

8.6.3.3 Power Register,功率寄存器(地址= 03h)[reset = 00h]

满量程范围和LSB由校准寄存器设置。 请参见编程校准寄存器。

功率寄存器通过将电流值乘以总线值来记录功率,单位为瓦特

8.6.3.4 Current Register,当前寄存器(地址= 04h)[reset = 00h]

满量程范围和LSB取决于校准寄存器中输入的值。

有关详细信息,请参阅编程校准寄存器。 负值以2的补码格式存储。

通过将分流电压寄存器中的值乘以校准寄存器中的值,根据公式4计算电流寄存器的值:

8.6.4.1 Calibration Register,校准寄存器(地址= 05h)[reset = 00h]

电流和功率校准由校准寄存器的FS15至FS1位设置。 请注意,在计算中不使用位FS0。

该寄存器设置与分流器上的满量程压降相对应的电流。 满量程范围和电流和功率测量的LSB取决于在该寄存器中输入的值。

请参见编程校准寄存器。 该寄存器适用于整个系统校准。 请注意,0 POR值都是默认值。

FS0是一个空位,始终为0.无法向FS0写入1。 CALIBRATION是存储在FS15:FS1中的值。

接下来我们重点说一下各个寄存器等配置问题,INA219共有六个寄存器,其中只有Configuration跟Calibration需要用户自己配置具体的寄存器为上面已经做了详解。

Configuration配置寄存器

配置寄存器主要配置芯片测量的量程、精度及工作模式,复位值0x399F

PG位用于配置差分模式下,芯片测量差分分压电压的量程,说白了就是把IN+与IN-两引脚间的电压再等分多少分之一

BADC与SADC位同样适用上面的参数,用于设置ADC的采样精度及采样周期,

其中绿框内表示设置不同的精度只采样一次,采样周期不同,红框表示使用12bit精度,采集多少次取平均值,采样周期不同

MODE位用于设置芯片的工作模式,

一般用最后一项,默认差分电压与总线电压都连续采样

Calibration校准寄存器

校准寄存器的设置,要针对芯片外部使用的采样电阻的阻值,通知设置校准寄存器,方便芯片直接计算测量值,用户就可以直接从其余四个寄存器中直接读出测量的数据了

关于校准寄存器的计算,手册中给出了公式,如下所示

此处需要结合配置寄存器中我们设置的BRNG位,即总线电压范围是16V还是32V,下面我们以32V为例,说一下计算过程,参考如下程序

使用的电路如下

第一步

我们先根据测量需要,设定我们的电压测量范围0-32V,以及使用的采样电阻阻值0.05欧姆

并假定IN+与IN-引脚间的最大差分电压为±320mV

第二步

根据N+与IN-引脚间的最大差分电压±320mV,计算出电路中可测量的的最大电流为6.4A计算出

第三步

根据外部电路中可能流过的最大电流,配合Shunt Voltage Register查分分压寄存器的设置,

计算出使用15bit精度时的测量分度196uA,与使用12bit精度时的测量分度1562uA,

这两个数值即我们可以测量的线路中电流是可以达到的最小分度值范围

第四步

从第三步计算的范围中,选取一个比较方便计算,且符合测量要求的数值,即Current_LSB值

一般取比15bit精度时的分度196uA稍大一点的整数,必须我们此处使用的0.0002A(200uA);

此数值也可使用手册中给出的公式2计算得到

第五步

根据手册中给的计算公式1,我们使用即Current_LSB值及我们的外部采样电阻值,

可以计算出Calibration校准寄存器需要设置的数值,即程序中的 ina219_calValue = 4096;

第六步

由我们计算得到的Current_LSB,使用手册中给出的公式5,

我们可以计算的到Power功率寄存器的最小分度值为4mW

此数值与工具寄存器的值相乘及时我们电路中的功率了

第七步

此处主要用于说明几个主要测量值的范围

第八步

根据我们程序中设计的最大电流值及最大电压,计算出可以测量的最大功率值

并给出了此配置下的最小电流分度,ina219_current_LSB_uA = 200; // Current LSB = 200uA per bit

及最小功率分度,ina219_power_LSB_mW = 4; // Power LSB = 4mW per bit = 20 * Current LSB

第九步

根据我们上面的计算,设置我们的Configuration配置寄存器及Calibration校准寄存器

-

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    447

    文章

    47821

    浏览量

    409198
  • 寄存器
    +关注

    关注

    30

    文章

    5037

    浏览量

    117764
  • I2C
    I2C
    +关注

    关注

    28

    文章

    1348

    浏览量

    120880

原文标题:使用INA219电量监测芯片的一点经验

文章出处:【微信号:Power_Fan_,微信公众号:电源Fan】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    INA219电流采集驱动

    INA219 是一款具备 I 2C 或 SMBUS 兼容接口的分流器 和功率监测计。该器件监测分流器电压降和总线电源电 压,转换次数和滤波选项可通过编程设定。可编程校准 值与内部乘法器相结合,支持
    的头像 发表于 07-17 09:23 1166次阅读
    <b class='flag-5'>INA219</b>电流采集驱动

    转:USB电流、电压监测

    上传主控芯片是atmel的Atmega32,USB监测仪的另一个核心是TI的具有I2C接口、高精度的零漂移、双向电流/电压监控芯片INA219I
    发表于 07-22 10:50

    有关INA219芯片的使用问题

    在使用TI 公司的INA219芯片进行电流,电压以及功率的数值进行测量时,遇到了如下几个问题1.只有先配置Calibration Register 才能检测到电流吗?如何精准的配置
    发表于 01-20 10:26

    请问INA219软件怎样读出eZdspC5535上INA219的数据?

    INA219软件 怎样读出eZdspC5535上INA219的数据?
    发表于 06-18 11:33

    用msp430f5529通过软件iic与ina219电源检测计通信,为什么接收不到ina219回复的低电平信号(从机无应答)?

    `用msp430f5529通过软件iic与ina219电源检测计通信,为什么接收不到ina219回复的低电平信号?使用的是msp430f5529launchpad,以及INA219电源检测计我把
    发表于 04-19 20:06

    如何去使用INA219零漂移双向电流/功率监测计呢

    INA219是什么?如何去使用INA219零漂移双向电流/功率监测计呢?
    发表于 10-15 06:54

    INA219电压电流表的资料分享

    描述电压电流表INA219这真的是一个很酷的小设备,它不仅可以让你测量电流,还可以测量电压。通过一点乘法,您甚至可以测量功率。在电压方面,您可以直接超过 Arduino 5 伏的限制。事实上,您最多
    发表于 08-18 07:16

    INA219,pdf(Zerø-Drift,

    The INA219 is a high-side current shunt and power monitor with an I2C interface. The INA219
    发表于 09-24 23:17 57次下载

    INA219EVM User's Guide

    This user’s guide describes the characteristics, operation, and use of the INA219 evaluation module
    发表于 09-24 23:21 25次下载

    INA219 26V、双向、零漂移、低侧/高侧、I2C 输出电流/功率监控器

    电子发烧友网为你提供TI(ti)INA219相关产品参数、数据手册,更有INA219的引脚图、接线图、封装手册、中文资料、英文资料INA219
    发表于 11-02 18:02
    <b class='flag-5'>INA219</b> 26V、双向、零漂移、低侧/高侧、I2C 输出电流/功率监控器

    ti公司ina219 i2c接口 stm32驱动文件

    可以通过采样电阻测量电流解决了霍尔元件测量小电流不精准的问题ina219.c:#include "ina219.h"#include "delay.h"
    发表于 12-04 18:51 25次下载
    ti公司<b class='flag-5'>ina219</b> i2c接口 stm32驱动文件

    电压电流表INA219开源项目

    电子发烧友网站提供《电压电流表INA219开源项目.zip》资料免费下载
    发表于 07-29 10:42 23次下载
    电压电流表<b class='flag-5'>INA219</b>开源项目

    INA219电流电压检测模块

    电子发烧友网站提供《INA219电流电压检测模块.zip》资料免费下载
    发表于 08-09 11:31 11次下载
    <b class='flag-5'>INA219</b>电流电压检测模块

    使用传感器INA219电流分流器和具有I2C或SMBUS的电源监控器

    电子发烧友网站提供《使用传感器INA219电流分流器和具有I2C或SMBUS的电源监控器.zip》资料免费下载
    发表于 11-16 11:36 2次下载
    使用传感器<b class='flag-5'>INA219</b>电流分流器和具有I2C或SMBUS的电源监控器

    隔离INA219模块开源分享

    电子发烧友网站提供《隔离INA219模块开源分享.zip》资料免费下载
    发表于 11-22 09:18 3次下载
    隔离<b class='flag-5'>INA219</b>模块开源分享