INA169 breakout 板使用指南:精确测量电流

电子说

1.4w人已加入

描述

INA169 breakout 板使用指南:精确测量电流

引言

在电子项目中,准确测量电流是一项常见且重要的任务。无论是监测 LED 的低电流,还是评估某个设备的整体电流消耗,都需要合适的工具。INA169 芯片就是这样一个出色的选择,它是一款“高端电流监测器”,能够帮助我们轻松实现电流测量。今天,我们就来详细了解一下 INA169 breakout 板的使用方法。

文件下载:SEN-12040.pdf

所需材料

要使用 INA169 breakout 板进行电流测量,我们需要准备以下材料:

  1. 开发板:Arduino、RedBoard 或任何 Arduino 兼容板。
  2. 引脚:用于焊接到板上,使其与面包板兼容的公头引脚。
  3. 跳线:用于从面包板连接到 Arduino。
  4. 面包板:将所有组件连接在一起。
  5. LED:一个基本的红色 LED,用于点亮。
  6. 电阻:一个 330Ω 的电阻,用于限制通过 LED 的电流。

此外,建议你在开始之前阅读一些相关资料,如电压、电流、电阻和欧姆定律,电阻、LED 的使用方法,如何使用面包板,Arduino 的基本知识,焊接技巧以及电线的处理方法等。

板子概述

工作原理

从原理图可以看出,INA169 breakout 板上已经安装了一些电阻。当电流从 (V{IN-}) 通过分流电阻 (R{S}) 流向 (V{IN+}) 时,会在 (R{S}) 上产生电压降。INA169 芯片内部的运算放大器会测量 (V{IN-}) 和 (V{IN+}) 之间的电压差,并根据这个差值输出一个电压。这个输出电压通过内部晶体管放大,从而从 INA169 芯片输出一个电流。

注意事项

需要注意的是,INA169 只能测量直流电流。(V{IN+}) 引脚的电位必须高于 (V{IN-}) 引脚,这意味着它不能测量交流电流。

电流测量

我们可以使用示波器或模数转换器来测量 (V{OUT}) 处的电压。通过以下公式可以将测量到的电压转换为源电流 (I{S}): [I{S}=frac{V{OUT } × 1 k Omega}{R{S} × R{L}}] 其中,(I{S}) 是我们要测量的电流,(V{OUT}) 是在 INA169 输出端测量到的电压,1kΩ 是由于 INA169 内部结构需要包含的一个恒定电阻值。如果不修改板子,(R{S}) 的值默认设置为 10Ω,(R{L}) 的值默认设置为 10kΩ。

示例计算

例如,当我们测量到 (V{OUT}) 为 2.8V 时,将其代入上述公式可得: [I{S}=frac{2.8 V × 1 k Omega}{10 Omega × 10 k Omega}=0.028 A] 这表明线路中有 0.028A(即 28mA)的电流流过。

引脚说明

INA169 breakout 板上只有 5 个引脚,它们的连接方式如下:

  • GND:应连接到要测量的电路的地。
  • VIN+:需要连接到电源的正极(如电池、输出引脚等)。
  • VIN-:需要连接到负载的正极(如 Arduino 上的 VCC、LED 的正极等)。
  • VOUT:是测量输出,应连接到能够测量电压水平的设备,如万用表、示波器或 Arduino 的 ADC 引脚。
  • VCC:是 INA169 的供电电源,需要连接到 3.3V、5V 等电源。其电压范围可以从 0 到 75V,但要注意 (V_{OUT}) 的范围取决于 VCC 提供的电压。

除了 VIN+ 和 VIN- 引脚外,板子上还有两个大焊盘,可用于临时连接鳄鱼夹。不过,为了使板子正常工作,GND 和 VCC 仍然需要连接。

功能修改

默认情况下,INA169 breakout 板的设置限制了其测量的电流范围约为 3.5mA 到 35mA。通过改变 (R{S}) 或 (R{L}) 的值,可以改变电流测量范围。不同 (R_{S}) 值对应的电流测量范围如下: (R_{S}) 电流测量范围
10Ω 3.5mA - 35mA
35mA - 350mA
0.1Ω 350mA - 3.5A

在更换电阻时,要注意电阻的功率额定值。例如,如果更换的电阻可能会产生 1.2W 的热量,那么普通的 ¼W 电阻就无法承受,需要使用至少 2W 的电阻。推荐使用的功率电阻有 Ohmite 1Ω 1% 3W 和 Ohmite 0.1Ω 1% 3W。

连接示例

组装

首先,我们需要将电线或直公头引脚焊接到板子上的 5 个引脚孔中。如果需要测量超过 35mA 的电流,还需要将 (R{S}) 电阻焊下,并焊接一个较低阻值(如 1Ω)、较高功率(如 3W)的电阻到 (R{S}) 周围的孔中。如果使用面包板,建议安装引脚。

连接 INA169 breakout 板

按照以下步骤连接 INA169 breakout 板和 Arduino:

  1. 将 Arduino 的 5V 连接到 INA169 的 VCC,将 Arduino 的 GND 连接到 INA169 的 GND。
  2. 为了读取输出电压水平,需要从 Arduino 的 A0 引脚连接一根跳线到 INA169 的 VOUT 引脚。
  3. 使用跳线将 INA169 的 VCC 和 VIN+ 引脚连接起来,因为我们希望使用 Arduino 的 5V 为 LED 供电。如果使用其他电源(除了 Arduino 的 5V 或 3.3V)通过 VIN+ 和 VIN- 供电,要确保将电源的地连接到 INA169 板的地,并且从 VIN+ 到地的电压水平不超过 60V,否则板子可能会损坏。
  4. 将一个 330Ω 的电阻从 INA169 的 VIN- 连接到 LED 的阳极,将一根跳线从 LED 的阴极连接到 GND。

如果要测量其他设备的电流,可以在 (R_{S}) 周围的裸金属焊盘上使用鳄鱼夹。要确保 INA169 板与正电源轨串联,并且 INA169 的 GND 连接到目标设备的 GND。

示例代码

以下是一个用于 Arduino 的示例代码,用于读取 INA169 测量的电流并将其显示在串口监视器上:

const int SENSOR_PIN = A0;
const float VOLTAGE_REF = 5.0;
const float RS = 10;

float sensorValue;
float current;

void setup() {
  Serial.begin(9600);
}

void loop() {
  // 从 INA169 板读取一个值
  sensorValue = analogRead(SENSOR_PIN);
  // 将 ADC 值重新映射为电压值(5V 参考)
  sensorValue = (sensorValue * VOLTAGE_REF) / 1023;
  // 根据 INA169 数据手册中的公式计算通过 RS 的电流
  // 假设 RL = 10k
  // Is = (Vout x 1k) / (RS x RL)
  current = sensorValue / (10 * RS);
  // 将电流值(以安培为单位)输出到串口监视器,保留 3 位小数
  Serial.print(current, 3);
  Serial.println(" A");
  // 延迟程序几毫秒
  delay(500);
}

将上述代码复制到 Arduino 程序中,选择合适的开发板(如 Arduino Uno)和正确的 COM 端口,然后点击上传按钮。上传完成后,打开串口监视器,你应该会看到电流测量值被打印出来。如果使用基本的红色 LED、330Ω 电阻和 5V 电源,你应该会在串口监视器上看到 0.009A(9mA)的电流值。我们可以使用万用表测量 330Ω 电阻两端的电压,验证这个读数。根据欧姆定律计算得到的电流值应该与 INA169 的测量值相符。

拓展应用

INA169 芯片在很多场景下都非常有用,例如:

  • 在 The Uncertain 7 - Cube 中,可以将 INA169 与电池的正电源线串联,测量电流消耗,从而估算电池的续航时间。
  • 同样,将 INA169 连接到 HUB - ee Buggy 的电源上,可以确定在更换 AA 电池之前还能使用多长时间。
  • 还可以使用 INA169 来确定 Humidor Control Box 一直开启时的功耗。

资源链接

总之,INA169 breakout 板为我们提供了一种简单而有效的方法来测量电流。通过合理设置电阻和正确连接电路,我们可以在不同的项目中准确地监测电流消耗。你在使用 INA169 时遇到过什么问题吗?欢迎在评论区分享你的经验和疑问。

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分