This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] INA219:INA219溢出

Guru**** 664280 points
Other Parts Discussed in Thread: INA219
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/amplifiers-group/amplifiers/f/amplifiers-forum/1266755/ina219-ina219-mathoverflow

器件型号:INA219

您好!

我是您的 INA219传感器的用户、在我的数据读取过程中偶尔会遇到标记为"状态溢出"的问题。 下面是我的配置的详细信息:

CONFIGURATION_REG = 0x0773 // FSR = 16V;增益= 1;范围= 40mV;BADC = SADC = 64 (过采样);MODE =分流和总线触发

R_shunt = 0.004 Ω

Current_LSB = 0.00030517578125 //范围[V]/R_shunt [欧姆]/2^15

CALIB_VALUE = 0x8312 // (uint16_t)(0.04096 /(范围[V]/2^15)

此外、我在写入时应该将校准值向左移动一位吗?

此外、我观察到、每次我修改配置寄存器中的增益值时、输出看起来都乘以2。 我已经使用上面注释中提供的公式计算了当前 LSB 和 CALIB_VALUE。 对这种行为的任何见解都将不胜感激。

我会寻求您的指导、以解决在数据采集过程中间歇性出现的问题。 我们非常感谢您提供任何见解或帮助。

此致、Genadi。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Genadi、

    我注意到、您的校准值高于该位数的最大值。 校准值为15位、您使用的是0x8312、高于最大值0x7FFF。 您需要将校准值向左移动。 由于不使用0位、因此该值需要移位。  

    如需查找新的校准值的帮助、请使用此计算器工具: https://www.ti.com/tool/download/SBOR021。有关如何使用它的详细信息、请参阅以下应用手册: https://www.ti.com/lit/an/sboa511a/sboa511a.pdf?ts = 1693949588347。  

    此致!  

    穆罕默德

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢 Mohamed,

    将修复它  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    没问题、如果有任何进一步的问题、请随时告诉我!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Mohamed:

    我的新设置如下:

    • INA219_CONFIG_VALUE = 0x0773
    • INA219_current_LSB_mA = 0.0004
    • INA219_CALIB_VALUE = 0xC800 (移位操作后)

    但是、我仍然偶尔会遇到"数学溢出"(这是我在更改前习惯的程度更低)。 您是否对导致此问题的原因有任何见解?

    此致、Genadi。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Genadi、  

    您可能溢出、因为在给定这些参数的情况下、最大电流高于限值。 您打算测量的最大预期电流是多少?  

    此致!  
    穆罕默德

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。


    您好,Mohamed:

    这是不太可能的。 此器件由最大输出电流约为2A 的电池供电、在其当前状态下、仅消耗约20 mA 的电流。

    Vshunt 值是否可能超出我配置的范围、从而导致采样数学溢出问题?

    此致、Genadi。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Genadi、  

    这很奇怪、数学标志不应跳闸于您的当前配置。 您能告诉我 VBUS 、以便我重新创建测试吗? 但是值得注意的是、您的配置不会产生很好的结果、即使它可以正常工作也是如此。  我运行了您通过我们的误差计算工具提供的参数(您可以在此处找到: https://www.ti.com/tool/CS-AMPLIFIER-ERROR-TOOL) 、它给出了以下结果:  

    在20mA、您将获得非常高的误差。 值得尝试使用该工具来找到新配置、为您的设置带来更好的结果。  

    此致!  

    穆罕默德  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Mohamed:

    V_BUS 在3.2至4.1伏之间变化。
    电流将从20增加到大约1Arms。

    抱歉,您所提供的链接不起作用。 我猜服务器会出现什么情况。

    谢谢、Genadi。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    抱歉,您访问的页面不存在!  请注意、在找到更适合您的设置的校准值时、使用该工具甚至可能解决数学过载问题。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Mohamed。
    非常感谢您提供该工具。  

    遗憾的是、我没有对配置和校准值的部分进行详细说明。 您能指导我在哪里可以找到它吗?
    Br, Genadi.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Genadi、

    配置和校准值不会影响误差计算、因为误差计算工具会测量直流误差、而配置值只是平均噪声。  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,Mohamed。

    我注意到、这是在其中一个外设开启时发生的。 这是一款使用 I2C 的模拟前端器件、能够以高频率切换 LED 和光电二极管。 数学溢出问题的原因是否是由此导致的电流测量值出现巨大差异?

    祝您度过美好的一天!Genadi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    这可能就是这种情况。 您知道电流测量值之间的差异是多少吗?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    亮起和熄灭 LED 状态之间的差异取决于200 mA。 每个 LED 亮起2微秒、然后熄灭约40微秒。 此模式持续重复。

    顺便说一下:

    我尝试写入寄存器的校准值为:  1100100000000000

    但是、当我读取寄存器时(在写入操作之后)、我得到:  1100100001000100

    写入 CONFIG 寄存器也是如此。  我正在发送- 11101110011 和读取  11101001111。

    对您来说有意义吗?

    有趣的事实:

    当我将 BADC 和 SADC 配置为单个采样(无过采样)时、出现这个问题的频率要低得多。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Genadi、  

    由于读取和写入不同的值、I2C 总线可能会出现问题。 噪声可能太多、所以高低起伏不定。  使用示波器来监控 I2C 总线可能是一个好主意。  

    此致!

    穆罕默德