电子说
在电子项目中,准确测量电流是一项常见且重要的任务。无论是监测 LED 的低电流,还是评估某个设备的整体电流消耗,都需要合适的工具。INA169 芯片就是这样一个出色的选择,它是一款“高端电流监测器”,能够帮助我们轻松实现电流测量。今天,我们就来详细了解一下 INA169 breakout 板的使用方法。
文件下载:SEN-12040.pdf
要使用 INA169 breakout 板进行电流测量,我们需要准备以下材料:
此外,建议你在开始之前阅读一些相关资料,如电压、电流、电阻和欧姆定律,电阻、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 个引脚,它们的连接方式如下:
除了 VIN+ 和 VIN- 引脚外,板子上还有两个大焊盘,可用于临时连接鳄鱼夹。不过,为了使板子正常工作,GND 和 VCC 仍然需要连接。
| 默认情况下,INA169 breakout 板的设置限制了其测量的电流范围约为 3.5mA 到 35mA。通过改变 (R{S}) 或 (R{L}) 的值,可以改变电流测量范围。不同 (R_{S}) 值对应的电流测量范围如下: | (R_{S}) | 电流测量范围 |
|---|---|---|
| 10Ω | 3.5mA - 35mA | |
| 1Ω | 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 板和 Arduino:
如果要测量其他设备的电流,可以在 (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 芯片在很多场景下都非常有用,例如:
总之,INA169 breakout 板为我们提供了一种简单而有效的方法来测量电流。通过合理设置电阻和正确连接电路,我们可以在不同的项目中准确地监测电流消耗。你在使用 INA169 时遇到过什么问题吗?欢迎在评论区分享你的经验和疑问。
全部0条评论
快来发表一下你的评论吧 !