Администрирование Железо INA226: монитор тока и мощности Fri, December 06 2024  

Поделиться

Нашли опечатку?

Пожалуйста, сообщите об этом - просто выделите ошибочное слово или фразу и нажмите Shift Enter.


INA226: монитор тока и мощности Печать
Добавил(а) microsin   

INA226 работает монитором шунта тока и потребляемой мощности, передавая данные через I2C или SMBUS-совместимый интерфейс. Микросхема мониторит одновременно падение напряжения на шунте (между выводами IN+ и IN–) и напряжение шины питания (напряжение на выводе VBUS). Программируются значение калибровки, интервалы преобразования и усреднения измерений, в комбинации с внутренним умножителем, что позволяет напрямую измерять ток потребления в амперах и потребляемую мощность в ваттах.

Микросхема INA226 может измерять напряжения VBUS в диапазоне от 0V до 36 V, независимо от своего напряжения питания. Напряжение питания микросхемы может находиться в диапазоне от 2.7V до 5.5V, и она обычно потребляет ток 330 мкА. Рабочий диапазон температуры –40°C .. 125°C. Для I2C можно запрограммировать до 16 адресов доступа к микросхеме.

Основные функции INA226:

• Работает с напряжением анализируемой шины питания VBUS от 0V до 36V.
• Датчик тока (шунт) может быть как "вверху" (High-Side Sensing), так и "внизу" (Low-Side Sensing).
• Сообщает о значениях тока, напряжения и потребляемой мощности.
• Высокая точность:
   – максимальная ошибка усиления 0.1%.
   – максимальное смещение 10 мкV.
• Конфигурируемые опции усреднения.
• 16 программируемых адресов.
• Напряжение питания микросхемы от 2.7V до 5.5V.
• Корпус с 10 выводами, DGS (VSSOP).

Области применения:

• Серверы
• Телекоммуникационное оборудование
• Компьютеры
• Управление питанием
• Зарядные устройства
• Блоки питания
• Тестирующее оборудование

INA226 High Side or Low Side Sensing Application fig01

Рис. 1. Приложение с нижним (Low-Side Sensing) или верхним (High-Side Sensing) датчиками тока.

INA226 DGS package VSSOP10 pinout top view fig02

Рис. 2. Расположение выводов на корпусе VSSOP10 (вид сверху).

Таблица 1. Назначение выводов.

Имя I/O Описание
1 A1 Цифровой вход Ножка установки адреса. Соедините с GND, SCL, SDA или VS. В таблице 8 показаны различные варианты установки адреса.
2 A0 Цифровой вход
3 Alert Цифровой выход Многофункциональный сигнал предупреждения о наступлении события.
4 SDA Цифровой вход/выход Сигнал данных интерфейса, вход и выход с открытым стоком.
5 SCL Цифровой вход Сигнал тактов интерфейса, подключается к выходу с открытым стоком.
6 VS Питание Напряжение питания от 2.7V до 5.5V.
7 GND Земля Общий провод для всех сигналов, минус питания.
8 VBUS Аналоговый вход Вход для измерения напряжения анализируемого источника питания.
9 IN- Аналоговый вход Подключается к датчику тока (шунт) со стороны нагрузки.
10 IN+ Аналоговый вход Подключается к датчику тока (шунт) со стороны анализируемого источника питания.

Таблица 2. Предельно допустимые абсолютные значения. Эти значения показаны для условий максимальной рабочей температуры, если не указано нечто другое(1).

Имя Комментарий min MAX Ед.
VVS Напряжение питания.   6 V
VIN+, VIN– Дифференциальное напряжение на аналоговых входах тока (VIN+ - VIN-)(2) -40 +40
Напряжение на аналоговых входах тока относительно GND -0.3 +40
VVBUS Напряжение на аналоговом входе измерения напряжения -0.3 +40
VSDA   GND - 0.3 6
VSCL   GND - 0.3 VVS + 0.3
IIN Входной ток на любой вывод   5 мА
IOUT Выходной ток выхода с открытым стоком   10
TJ Температура кристалла   150 °C
Tstg Температура хранения -65 150

Примечания:

(1) Стрессовые значения, перечисленные в таблице 2, могут привести к необратимому повреждению устройства. Эти параметры указаны только для справки, не подразумевается работа устройства в таких условиях или в условиях, отличающихся от рекомендованных (см. далее таблицу 4). Длительная работа в условиях, перечисленных в таблице 2, может повлиять на надежность устройства.
(2) IN+ и IN– допускают дифференциальное напряжение между ними в диапазоне между –40V и +40V. Однако напряжение на этих выводах относительно GND не должно выходить за диапазон от –0.3V до +40V.

Таблица 3. Защищенность от статического электричества (ESD).

Имя Комментарий MAX Ед.
VESD Модель тела человека (Human Body Model, HBM), по стандарту ANSI/ESDA/JEDEC JS-001, все выводы(1) ±2500 V
Charged Device Model (CDM), по стандарту JEDEC JESD22-C101, все выводы(2) ±1000
Machine Model (MM) ±150

Примечания:

(1) Документ JEDEC JEP155 устанавливает, что 500V HBM допускает безопасное производство со стандартным контролем процесса ESD.
(2) Документ JEDEC JEP157 устанавливает, что 250V CDM допускает безопасное производство со стандартным контролем процесса ESD.

Таблица 4. Рекомендуемые рабочие условия.

Имя Комментарий min Nom MAX Ед.
VCM Входное напряжение относительно GND   12   V
VVS Напряжение питания.   3.3  
TA Температура окружающей среды -40   125 °C

Таблица 5. Температурные параметры.

Имя Термальная метрика(1) INA226
DGS (VSSOP)
10 выводов
Ед.
RθJA Температурное сопротивление кристалл - окружающая среда
171.4 °C/W
RθJC(top) Температурное сопротивление кристалл - корпус (верхняя сторона)
42.9
RθJB Температурное сопротивление кристалл - печатная плата 91.8
ψJT Характеристический параметр кристалл - верхняя сторона 1.5
ψJB Характеристический параметр кристалл - нижняя сторона 90.2
RθJC(bot) Температурное сопротивление кристалл - корпус (нижняя сторона) -

Примечание (1): для дополнительной информации о традиционных и новых термальных метриках см. [2].

Таблица 6. Электрические параметры. Указаны для условий TA = 25°C, VVS = 3.3V, VIN+ = 12V, VSENSE = (VIN+ – VIN–) = 0 mV и VVBUS = 12 V, если не указано нечто другое.

Имя Параметр Условия тестирования min Typ MAX Ед.
Входные параметры
  Диапазон напряжений на шунте   -81.9175   81.92  mV
  Диапазон напряжений на VBUS(1)   0   36 V
CMRR Подавление синфазного сигнала  0V ≤ VIN+ ≤ 36V 126 140   dB
VOS Напряжение смещения шунта, RTI(2)     ±2.5 ±10 μV
  Напряжение смещения шунта, RTI(2), в зависимости от температуры –40°C ≤ TA ≤ 125°C   0.02 0.1 μV/°C
PSRR Напряжение смещения шунта, RTI(2), в зависимости от напряжения питания 2.7V ≤ VS ≤ 5.5V   2.5   μV/V
VOB Напряжение смещения VBUS, RTI(2)     ±1.25 ±7.5 mV
  Напряжение смещения VBUS, RTI(2), в зависимости от температуры –40°C ≤ TA ≤ 125°C   10 40 μV/°C
PBRR Напряжение смещения VBUS, RTI(2), в зависимости от напряжения питания     0.5   mV/V
IB Входной ток смещения (выводы IIN+, IIN–)     10   мкА
  Входное сопротивление VBUS     830   кОм
  Входной ток утечки(3) (вывод IN+ pin) + (вывод IN–), режим Power-down   0.1 0.5 мкА
Точность по постоянному току и напряжению
  Разрешающая способность АЦП     16   бит
  Вес младшего разряда Для напряжения шунта   2.5   μV
  Для напряжения VBUS   1.25   mV
  Ошибка напряжения шунта     0.02 0.1 %
  Ошибка напряжения шунта в зависимости от температуры –40°C ≤ TA ≤ 125°C   10 50 ppm/°C
  Ошибка напряжения VBUS     0.02 0.1 %
  Ошибка напряжения VBUS в зависимости от температуры –40°C ≤ TA ≤ 125°C   10 50 ppm/°C
  Дифференциальная нелинейность     ±0.1   LSB(5)
tCT Время преобразования АЦП (CT это значения бит настройки времени преобразования) CT = 000   140 154 мкс
CT = 001   204 224
CT = 010   332 365
CT = 011   588 646
CT = 100   1.1 1.21 мс
CT = 101   2.116 2.328
CT = 110   4.156 4.572
CT = 111   8.244 9.068
SMBus
  Таймаут SMBus(4)     28 35 мс
Цифровые входы/выходы
  Входная емкость     3   пФ
  Входной ток утечки 0V ≤ VSCL ≤ VVS,
0V ≤ VSDA ≤ VVS,
0V ≤ VAlert ≤ VVS,
0V ≤ VA0 ≤ VVS,
0V ≤ VA1 ≤ VVS
  0.1 1 мкА
VIH Входное напряжение лог. 1   0.7×VVS   6 V
VIL Входное напряжение лог. 0   –0.5   0.3×VVS
VOL Выходное напряжение лог. 0 для сигналов SDA, Alert IOL = 3 мА 0   0.4
  Гистерезис     500   mV
Напряжение питания
  Рабочий диапазон напряжений питания   2.7   5.5 V
IQ Ток покоя     330 420 мкА
  Ток покоя в режиме power-down (выключено)     0.5 2
VPOR Пороговое напряжения для сброса по питанию (Power-On Reset)     2   V

Примечания:

(1) Хотя входной диапазон 36V, полная шкала АЦП составляет 40.96V. См. далее описание основных функций АЦП. На подавайте на входы напряжение свыше 36V.
(2) RTI означает "относится ко входу" (referred-to-input).
(3) Входной ток положительный (втекает в вывод) для рабочих условий, показанных в заголовке этой таблицы. Отрицательный ток утечки может происходить из-за других рабочих условий.
(4) SMBus таймаут INA226 сбрасывает интерфейс при любой длительности лог. 0 сигнала SCL, больше чем 28 мс.
(5) LSB означает младший разряд (Least Significant Bit).

[Типовые характеристики]

INA226 Frequency Response fig03 INA226 Input Offset Voltage fig04
Рис. 3. Амплитудно-частотная характеристика. Рис. 4. Производственное распределение входного напряжения смещения шунта.
INA226 Shunt Input Offset Voltage vs Temperature fig05 INA226 Shunt Input Common Mode Rejection Ratio vs Temperature fig06
Рис. 5. Зависимость входного напряжения смещения шунта от температуры. Рис. 6. Коэффициент подавления синфазного сигнала входного напряжения шунта в зависимости от температуры.
INA226 Shunt Input Gain Error Production Distribution fig07 INA226 Shunt Input Gain Error vs Temperature fig08
Рис. 7. Производственное распределение ошибки усиления входного усиления шунта. Рис. 8. Зависимость ошибки входного усиления шунта от температуры.
INA226 Shunt Input Gain Error vs Common Mode Voltage fig09 INA226 Bus Input Offset Voltage Production Distribution fig10
Рис. 9. Ошибка усиления по входу шунта в зависимости от синфазного напряжения. Рис. 10. Производственное распределение смещения напряжения входа VBUS.
INA226 Bus Input Offset Voltage vs Temperature fig11 INA226 Bus Input Gain Error ProductionDistribution fig12
Рис. 11. Зависимость напряжения смещения входа VBUS от температуры. Рис. 12. Производственное распределение ошибки усиления входа VBUS.
INA226 Bus Input Gain Error vs Temperature fig13 INA226 Input Bias Current vs Common Mode Voltage fig14
Рис. 13. Зависимость ошибки усиления входа VBUS от температуры. Рис. 14. Ток смещения входа VBUS в зависимости от напряжения относительно GND.
INA226 Input Bias Current vs Temperature fig15 INA226 Input Bias Current vs Temperature Shutdown fig16
Рис. 15. Входной ток смещения в зависимости от температуры. Рис. 16. Входной ток смещения в зависимости от температуры в режиме "выключено".
INA226 Active IQ vs Temperature fig17 INA226 Shutdown IQ vs Temperature fig18
Рис. 17. Ток покоя IQ в зависимости от температуры. Рис. 18. Ток покоя IQ в зависимости от температуры, в режиме "выключено".
INA226 Active IQ vs I2C Clock Frequency fig19 INA226 Shutdown IQ vs I2C Clock Frequency fig20
Рис. 19. Зависимость тока покоя IQ от частоты тактов I2C в активном состоянии. Рис. 20. Зависимость тока покоя IQ от частоты тактов I2C в состоянии "выключено".

[Описание]

В INA226 встроен цифровой усилитель для измерения тока с I2C- и SMBus-совместимым интерфейсом. Одновременно измеряется напряжение и вычисляется потребляемая мощность. Программируемые регистры позволяют гибко настроить разрешающую способность измерений и непрерывное, многопрофильное функционирование. Подробное описание регистров см. далее, начиная с таблицы 10.

INA226 Functional Block Diagram fig21

Рис. 21. Функциональная блок-схема INA226.

Примечания: (1) только для чтения, (2) для чтения и записи.

INA226 выполняет 2 измерения интересующей шины питания. Ток, протекающий через резистор шунта, измеряется по разнице напряжений между выводами IN+ и IN–. Микросхема также может измерять напряжение шины питания, если подключить это напряжение к выводу VBUS. Дифференциальное напряжение шунта измеряется относительно ножки IN–, в то время как напряжение на VBUS измеряется относительно земли GND.

Микросхема INA226 обычно получает питание от отдельного источника напряжением от 2.7V до 5.5V. При этом VBUS может иметь напряжение от 0V до 36V. На основании регистра напряжения шины (Bus Voltage Register) с весом младшего разряда 1.25 mV вычисляется значение напряжения (полная шкала регистра 40.96V).

Важное замечание: не подавайте на входные выводы напряжение свыше 36V!

Нет специальных требований по последовательности подачи напряжений, потому что напряжение питания микросхемы и напряжение измеряемой шины питания VBUS не зависят друг от друга. Таким образом, напряжение VBUS может присутствовать, когда напряжение питания микросхемы выключено, обратное также допустимо.

Микросхема делает 2 измерения - напряжение шунта (между IN+ и IN-) и напряжение шины (VBUS), затем эти измерения преобразуются в ток на основании значения регистра калибровки (Calibration Register), и затем вычисляется потребляемая мощность (дополнительную информацию cм. в секции "Программирование регистра калибровки"). У микросхемы есть 2 рабочих режима - непрерывный (continuous) и с запуском по команде (triggered), которые определяют, как работает ADC после выполнения преобразований.

Режим continuous. Когда микросхема находится в нормальном рабочем режиме (биты MODE в Configuration Register 00h установлены в значение '111'), она непрерывно преобразует напряжение шунта, за которым следует преобразование напряжения VBUS. После измерения напряжения шунта значение тока вычисляется по формуле 3. Это значение тока затем используется для вычисления потребляемой мощности (с использованием формулы 4). Далее вычисленные значения сохраняются в аккумуляторе, и операции измерения/вычисления автоматически повторяются, пока не будет достигнуто количество усреднений, установленное в Configuration Register (00h). Во время набора усредняемых значений они складываются друг с другом и таким образом накапливаются. После того, как требуемое количество значений собрано, конечное значение напряжения шунта, напряжения VBUS и потребляемой мощности обновляется в соответствующих регистрах, которые можно прочитать через интерфейс управления. Эти значения остаются в выходных регистрах данных до тех пор, пока не появятся новые результаты измерения. Чтение регистров данных не влияет на процесс преобразований. Все вычисления тока и потребляемой мощности выполняются в фоновом режиме и не влияют на время преобразования.

Управление режимом в Conversion Register (00h) также позволяет выбрать режимы только для преобразования напряжения шунта, или только напряжения VBUS, чтобы разрешить пользователю сконфигурировать мониторинг в соответствии с требованиями приложения.

Режим triggered. В режиме triggered, который запускается записью одного из режимов в Configuration Register (когда биты MODE этого регистра устанавливаются в '001', '010' или '011'), происходит однократное преобразование. Это действие производит одиночный набор измерений; таким образом, чтобы запустить другое однократное измерение, Configuration Register должен быть записан снова, даже если набор требуемых измерений не поменялся.

В дополнение к двум рабочим режимам (continuous и triggered), микросхема имеет режим "выключено" (power-down mode), в котором уменьшается ток потребления, и отключается ток, втекающий во входы микросхемы, тем самым уменьшается общее потребления энергии, когда микросхема не используется. Полное восстановление из power-down требует 40 мкс. Регистры микросхемы можно записывать и считывать, когда она находится в power-down mode. Микросхема остаются в power-down mode до тех пор, пока в Configuration Register не будет установлен один из активных режимов.

Хотя микросхема может быть прочитана в любой момент, и при этом будут считаны данные от последнего преобразования, предоставляется флаг готовности преобразования Conversion Ready (Mask/Enable Register, бит CVRF), который помогает координировать однократные преобразования. Бит Conversion Ready (CVRF) устанавливается после завершения всех операций преобразования, усреднения и умножения.

Бит Conversion Ready (CVRF) очищается в следующих условиях:

• Запись в Configuration Register, за исключением случая, когда биты MODE устанавливаются для power-down mode.
• Чтение Mask/Enable Register (06h).

Вычисление мощности. Ток и мощность вычисляется по напряжению на шунте и напряжению VBUS, как показано на рис. 22. Измеряется ток, за ним может измеряться напряжение, этот процесс зависит от значения, установленного в Calibration Register. Если в Calibration Register не загружено никакое значение, то сохраненное значение тока равно 0. Мощность вычисляется из последующего измерения напряжения VBUS на основе предыдущего вычисления тока и измерения напряжения VBUS. Если в Calibration Register не было загружено значение, то сохраненное значение мощности также будет нулевым. Опять же, эти вычисления выполняются в фоновом режиме и не увеличивают общее время преобразования. Эти значения тока и мощности считаются промежуточными результатами (если усреднение не установлено в 1) и сохраняются во внутреннем регистре накопления, а не в соответствующих выходных регистрах. После каждой измеренной выборки новые вычисленные значения тока и мощности добавляются в этот регистр накопления до тех пор, пока не будут собраны все требуемое количества усредняемых выборок (количество усредняемых выборок устанавливается в Configuration Register).

INA226 Power Calculation Scheme fig22

Рис. 22. Схема вычисления мощности.

В дополнение к току и мощности, накапливаемых с каждой выборкой, также собираются значения напряжения VBUS. После того, как все выборки были измерены, и были произведены соответствующие вычисления тока и мощности, накопленное среднее значение всех этих параметров загружается в соответствующие выходные регистры, откуда они могут быть затем прочитаны.

Ножка Alert. У INA226 есть один Alert Limit Register (07h), позволяющий запрограммировать ножку Alert для ответа на одно из определяемое пользователем событие, или на уведомление о готовности к преобразованию (Conversion Ready), если это необходимо. Регистр Mask/Enable позволяет выбрать одну из 5 доступных функций для мониторинга и/или установки бита Conversion Ready, чтобы управлять ответом вывода Alert. На основе выбранной функции мониторинга пользователь затем вводит значение в Alert Limit Register, чтобы установить соответствующее значение порога, которое установит ножку Alert.

Ножка Alert позволяет отслеживать одну из следующих функций, если превышен заданный пользователем порог. Можно мониторить одну из 5 alert-функций:

• Перегрузка по току (Shunt Voltage Over-Limit, SOL).
• Недогрузка по току (Shunt Voltage Under-Limit, SUL).
• Превышение напряжения (Bus Voltage Over-Limit, BOL).
• Понижение напряжения (Bus Voltage Under-Limit, BUL).
• Перегрузка по потребляемой мощности (Power Over-Limit, POL).

Ножка Alert реализована как выход с открытым стоком. Alert установится, когда для выбранной (через Mask/Enable Register) alert-функции превышено значение, запрограммированное в Alert Limit Register. В любой момент времени может быть разрешена только одна из выше перечисленных alert-функций. Если разрешено несколько alert-функций, то выбирается только та функция, у которой позиция бита соответствует самому высшему по весу разряду, и только она отвечает за обработку значения в Alert Limit Register. Например, если выбраны обе функции Shunt Voltage Over-Limit и Shunt Voltage Under-Limit, то ножка Alert установится, когда значение в Shunt Voltage Register превысит значение в Alert Limit Register.

Также на выводе Alert может отслеживаться состояние Conversion Ready, чтобы информировать пользователя, когда микросхема завершит текущее преобразование, и станет готовой к новому преобразованию. Conversion Ready может отслеживаться на ножке Alert вместе с одной из alert-функций. Если разрешено отслеживание alert-функции и отслеживание Conversion Ready, то после того, как будет установлен вывод Alert, должен быть прочитан регистр Mask/Enable, чтобы определить источник события. Чтением бита Conversion Ready Flag (CVRF, бит 3), и бита Alert Function Flag (AFF, бит 4) в регистре Mask/Enable, можно определить alert-источник. Если функция Conversion Ready не нужна, и бит CNVR не установлен, то ножка Alert отвечает только за превышение предела выбранной alert-фунции.

Если alert-функция не используется, то ножка Alert может оставаться не подключенной, что никак не влияет на работу микросхемы.

На рис. 22 показан относительный тайминг, значение Alert Limit Register сравнивается с соответствующим преобразованным значением. Например, если разрешена alert-функция для Shunt Voltage Over-Limit (SOL), то после каждого преобразования напряжения шунта значение Alert Limit Register сравнивается с измеренным напряжением шунта, чтобы определить, был ли превышен запрограммированный лимит. AFF, бит 4 регистра Mask/Enable, установится в лог. 1 в любое время, когда измеренное значение превысит предел, запрограммированный в регистре Alert Limit Register. В дополнение к установке бита AFF, установится ножка Alert в соответствии с настройкой бита полярности Alert Polarity (APOL, бит 1 регистра Mask/Enable). Если разрешено защелкивание оповещения Alert Latch, то бит AFF и ножка Alert остается установленной до тех пор, пока не будет записан Configuration Register, или не будет прочитан регистр Mask/Enable.

Alert-функции напряжения VBUS сравнивают измеренное напряжение VBUS с регистром Alert Limit Register на каждом преобразовании напряжения VBUS, и устанавливают бит AFF и ножку Alert, если порог предела был превышен.

Alert-функция Power Over-Limit также сравнивает вычисленное значение мощности на каждом преобразовании напряжения VBUS, и установит бит AFF и ножку Alert, если порог был превышен.

[Функциональные режимы]

Усреднение и интервал преобразования. INA226 позволяет устанавливать программируемые интервалы преобразования (conversion times, tCT) как для напряжения шунта, так и для напряжения VBUS. Интервалы преобразования для этих измерений могут быть выбраны от быстрых преобразований 140 мкс до длительных 8.244 мс. Настройки времени преобразования вместе с программируемым режимом усреднения (averaging mode) позволяет сконфигурировать микросхему для оптимизации доступных требований в определенном приложении. Например, если система требует, чтобы данные считывались каждые 5 мс, то устройство должно быть сконфигурировано с интервалом преобразования 588 мкс для обоих измерений - напряжения шунта и напряжения VBUS, и режим усреднения должен быть установлен в 4. Эта конфигурация приведет к обновлению данных приблизительно каждые 4.7 мс. Микросхема также может быть сконфигурировано с разными интервалами преобразования для измерения напряжения шунта и измерения напряжения VBUS. Этот вариант настройки обычно применяется, когда напряжение VBUS имеет тенденцию быть стабильным. Эта ситуация может позволить уменьшить время, затрачиваемое на измерение напряжения VBUS, по сравнению с измерением напряжения шунта. Время преобразования напряжения шунта должно быть установлено 4.156 мс, с интервалом изменения напряжения VBUS 588 мкс, с режимом усреднения, установленным в 1. Эта конфигурация также приведет к тому, что данные будут обновляться каждые 4.7 мс.

Необходимо реализовать компромисс между используемым временем преобразования и режимом усреднения. Функция усреднения может значительно увеличить точность измерения путем эффективной фильтрации сигнала. Это позволяет устройству снизить любой шум в измерениях, который может быть вызван наводками от различных сигналов. Большое количество усреднений позволяет устройству более эффективно снижать составляющую шума в измерении.

Выбор времени преобразования также может повлиять на точность измерения. Рис. 23 показывает несколько вариантов выбора времени преобразования для иллюстрации влияния шума на измерение. Чтобы достичь самой высокой точности измерения, используют комбинацию самого большого допустимого времени преобразования и самого большого возможного количества усреднений, базируясь на требованиях по времени отклика системы.

INA226 Noise vs Conversion Time fig23

Рис. 23. Зависимость шума от интервала преобразования.

Фильтрация и входы. Измерение тока часто происходит в условиях сильного влияния шума, и такой шум может быть сложно локализовать и устранить (особенно атуально в современных импульсных источниках питания и преобразователях DC-DC). INA226 предоставляет несколько опций для фильтрации путем выбора в Configuration Register интервалов преобразования и режимов усреднения независимо друг от друга. Интервал преобразования может быть установлен независимо для измерения напряжения тока и для измерения напряжения VBUS, что добавляет гибкости в конфигурировании мониторинга VBUS питания.

Внутренний ADC основан на технологи delta-sigma (ΔΣ) с типовой частотой выборок 500 кГц (±30%). Эта архитектура хорошо защищена от внутреннего шума, однако могут создавать проблемы помехи и перепады измеряемого уровня, которые происходят с частотой гармоник частоты выборок или очень близко к ним. Поскольку такие сигналы и помехи имеют частоту 1 МГц и выше, ими можно управлять путем фильтрации на входе. Высокая частота помехи позволяет использовать для фильтра соединенные последовательно со входами резисторы небольшого сопротивления, что незначительно повлияет на точность измерения. В общем случае фильтрация по входу необходима только при наличии переходных процессов с частотой, совпадающей с частотой выборок и её гармониками - 500 кГц, 1 МГц, 1.5 МГц и т. д. (±30%). Фильтр может состоять из резисторов порядка 10 Ом и керамического конденсатора, рекомендуется емкость от 0.1 мкФ до 1 мкФ. Рис. 24 показывает устройство с добавленным фильтром на входе.

Перегрузки по измеряемым сигналам это другой момент, на что что необходимо обратить внимание для защиты входов. По спецификации входы микросхемы должны выдерживать 40V дифференциального напряжения. Сценарий с большим дифференциальным напряжением на входах может возникнуть при коротком замыкании на землю выхода на стороне шунта. Такой тип события может привести к подаче полного напряжения источника питания на шунт (когда источник и его конденсаторы обладают большим запасом энергии). Снятие короткого замыкания на землю приведет к выбросу напряжения на индуктивности проводов, который может превысить 40V дифференциального потенциала между входами, а также спецификаций по допустимому синфазному напряжению на входах. Индуктивные выбросы лучше всего ограничивать стабилитронами (Zener-диоды, или устройствами, которые называются трансорберами) в комбинации с конденсаторами достаточной емкости. Дополнительную информацию см. в документации от TI [3], где описан монитор верхнего шунта, используемый для измерения падения напряжения на токовом резисторе.

В приложениях, где нет больший электролитической емкости на одном или на обоих выводах токового шунта, перенапряжение по входу может произойти из-за слишком большой скорости изменения уровня dV/dt. Жесткое физическое короткое замыкание может привести к такому событию в частности в приложениях, где нет больших электролитических фильтрующих конденсаторов. Такая проблема возникает потому, что слишком большое значение dV/dt может активировать защиту ESD в устройстве, установленном в системе, где присутствуют большие токи нагрузки. Тестовые испытания показали, что добавление резисторов 10 Ом последовательно с каждым входом микросхемы эффективно защитит её входы от таких событий до 40V предела, определенного по спецификации. Выбор резисторов примерно такого номинала оказывает минимальное влияние на точность измерений.

INA226 Input Filtering fig24

Рис. 24. Входная фильтрация.

[Программирование]

Важный аспект микросхемы INA226 - она не обязательно измеряет ток или мощность. Микросхема измеряет оба напряжения: дифференциально прикладываемое напряжение между входами IN+ и IN-, и напряжение, прикладываемое к выводу VBUS. Чтобы микросхема сообщала оба значения тока и мощности, пользователь должен запрограммировать разрешающую способность в Current Register (04h) и значение резистора шунта, используемого в приложении, на котором падает дифференциальное напряжение, прикладываемое к входам IN+ и IN-. Внутренний Power Register (03h) устанавливается в значение, в 25 раз больше запрограммированного Current_LSB. Оба значения - Current_LSB и значение резистора шунта - используются для вычисления программируемого значения Calibration Register. Значение Calibration Register используется в микросхеме для вычисления соответствующих значений тока и мощности на основе измеренных величин напряжения на шунте и напряжения на VBUS.

Значение для Calibration Register вычисляется по формуле 1. Эта формула содержит значение Current_LSB, которое соответствует запрограммированному значению в младших битах Current Register (04h). Пользователь использует это значение для преобразования значения в Current Register (04h) в реальный ток в амперах.

           0.00512
CAL = --------------------                     (Формула 1)
      Current_LSB * RSHUNT

Примечание: 0.00512 это внутреннее фиксированное значение, используемое для обеспечения правильного масштабирования.

Самая высокая разрешающая способность для Current Register может быть получена при самых малых допустимых значениях Current_LSB, принимая во внимание максимальный ожидаемый ток, как показано в формуле 2. Хотя это значение дает наибольшее разрешение, обычно выбирают значение Current_LSB до ближайшего округленного вверх числа от числа, вычисленного по формуле 2. Это упрощает преобразование Current Register (04h) и Power Register (03h) в амперы и ватты соответственно. RSHUNT это значение внешнего резистора шунта, к которым подключены входы IN+ и IN-.

              максимальный ожидаемый ток
Current_LSB = --------------------------
        (Формула 2)
                       215

После программирования Calibration Register будут обновляться Current Register (04h) и Power Register (03h) в соответствии с измерениями напряжения на шунте и VBUS. Пока не будет запрограммирован Calibration Register, значения Current Register и Power Register остаются нулевыми.

Программирование регистра калибровки. В этой секции на примере показана техника вычисления значения для регистра калибровки (Calibration Register). На рис. 30 показана номинальная нагрузка 10A, которая создает дифференциальное падение напряжения 20 mV на резисторе шунта 2 мОм. Напряжение шины INA226 измеряет на внешнем входе VBUS, которое в этом примере подключено к выводу IN–, чтобы измерять напряжение, поступающее на нагрузку. Для этого примера вывод VBUS измерит меньшее напряжение, чем 12V, потому что напряжение на IN– составит 11.98V в результате падения напряжения на резисторе шунта RSHUNT.

Для этого примера предполагается, что максимальный ожидаемый ток может быть 15A, значение Current_LSB по формуле 2 вычислено 457.7 μA/bit. Использование значения 500 μA/Bit или 1 mA/Bit для Current_LSB значительно упростит преобразование значений Current Register (04h) и Power Register (03h) в амперы и ватты. Для этого примера было выбрано Current_LSB = 1 mA/bit. В результате такого компромисса незначительная потеря в разрешающей способности упрощает процесс преобразования конечных измеряемых величин на стороне пользователя. По формуле 1 в этом примере с Current_LSB value = 1 mA/bit и резистором шунта 2 мОм  результат в Calibration Register будет 2560, или A00h.

Затем значение Current Register получается умножением десятичного значения Shunt Voltage Register (01h) на десятичное значение Calibration Register, и делится на 2048, как показано в формуле 3. Для этого примера Shunt Voltage Register содержит значение 8000 (представляющее 20 mV), которое умножается на значение 2560 из Calibration Register, и затем делится на 2048, чтобы получить десятичное значение 10000 (или 2710h) для Current Register. Умножением этого значения на 1 mA/bit получаем реальное значение тока 10A.

                   ShuntVoltage * CalibrationRegister
Current Register = ----------------------------------
                               2048

Младшие биты Bus Voltage Register (02h) фиксированы на 1.25 mV/bit, что означает, что на VBUS присутствует напряжение 11.98V, что дает значение регистра 9584 (или 2570h). Обратите внимание, что старший бит всегда равен 0, потому что ножка VBUS может измерять только положительные напряжения.

Затем вычисляется значение Power Register (03h) путем умножения десятичного значения Current Register = 10000, на десятичное значение Bus Voltage Register = 9584, и последующего деления на 20000, как показано в формуле 4. Для этого примера результат в Power Register получится 4792 (или 12B8h). Умножением этого результата на мощность LSB (в 25 раз [1 × 10–3 Current_LSB]) получается мощность (4792 × 25 mW/bit), или 119.82 ВаттW. Мощность LSB имеет фиксированный коэффициент 25 для Current_LSB. Для этого примера запрограммированное значение 1 mA/bit для Current_LSB дает мощность LSB = 25 mW/bit. Этот коэффициент запрограммирован внутри микросхемы, чтобы обеспечить масштабирование вычисления мощности в приемлемый диапазон.

                 Current Register * Bus Voltage Register
Power Register = ---------------------------------------
                                 20000

При расчете мощности вручную с использованием напряжения VBUS 11.98V (12 VCM – 20 mV падения на шунте) при токе нагрузке 10A даст результат 119.8 Ватт.

В таблице 7 перечислены шаги по конфигурированию, измерению и вычислению значений тока и мощности.

Таблица 7. Вычисление тока и мощности(1).

Шаг Имя регистра Адрес регистра HEX Дес. LSB Знач.
1 Configuration Register 00h 4127h - - -
2 Shunt Register 01h 1F40h 8000 2.5 μV 20 mV
3 Bus Voltage Register 02h 2570h 9584 1.25 mV 11.98V
4 Calibration Register 05h A00h 2560 - -
5 Current Register 04h 2710h 10000 1 мА 10 А
6 Power Register 03h 12B8h 4792 25 мВт 119.82 Вт

Примечание (1): условия Load = 10A, VCM = 12V, RSHUNT = 2 мОм и VVBUS = 12V. Столбец HEX показывает содержимое регистра в шестнадцатеричном виде, столбец Дес. десятичное значение. Столбец LSB показывает вес младшего разряда, столбец Знач. показывает соответствующее физическое значение напряжения, тока или мощности.

Регистр калибровки и масштабирование. Calibration Register дает возможность пользователю масштабировать Current Register и Power Register до более полезного для приложения значения. Например, может быть сделана установка Calibration Register таким образом, что самое большое возможное генерируемое число в Current Register или Power Register будет соответствовать полной шкале. Этот метод дает самую высокую точность (разрешающую способность) с использованием ранее рассчитанного минимального Current_LSB по формуле для Calibration Register. Calibration Register может быть также выбран так, чтобы предоставлять значения в Current Register и Power Register таким образом, чтобы они давали прямой десятичный эквивалент измеряемых значений, или округленное значение LSB для каждого соответствующего регистра. После того, как такой выбор сделан, Calibration Register также предоставляет возможность пользовательской калибровки на системном уровне. После точного определения тока с помощью внешнего эталонного амперметра значение Calibration Register может быть уточнено на основе результата измеренного тока INA226, чтобы скомпенсировать общую ошибку системы, как показано в формуле 5.

Corrected_Full_Scale_Cal = trunc ((Cal * MeasShuntCurrent)/INA226_Current)          (Формула 5)

Упрощенное использование Current Shunt Monitor. Микросхема INA226 может использоваться без какого-либо программирования её регистров, если нужно всего лишь считывать падение напряжения на шунте и напряжение VBUS, принимая во внимание конфигурацию по умолчанию, которая вступает в силу после сброса по питанию (default power-on reset) и установку непрерывного (continuous) режима измерений напряжений шунта и VBUS. Без программирования Calibration Register микросхема не может предоставлять достоверное значение тока или мощности, потому что выходные значения выводятся на основе значений, загруженных в Calibration Register.

Настройки по умолчанию. Настройки по умолчанию, которые устанавливаются автоматически при включении питания, показаны в разделе "Карта регистров" далее. Эти регистры изменяемые, и если они запрограммированы в значения, отличающиеся от значений по умолчанию, показанных в таблице 10, то это программирование должно повторяться каждый раз при подаче питания на микросхему. Подробная информация по программированию Calibration Register специально предоставлена в разделе "Программирование", и значение для Calibration Register определяется по формуле 1.

INA226 предоставляет совместимость с интерфейсами шин I2C и SMBus. Протоколы I2C и SMBus по своей сути совместимы друг с другом.

Интерфейс I2C используется в даташите [1] как основной пример, при этом протокол SMBus упоминается только только когда есть отличия между системами I2C и SMBus. INA226 подключается двумя сигналами SCL и SDA.

Устройство, которое инициирует передачу данных, называется master, и устройства, которые управляются устройством master, называются slave. Шина должна обслуживаться устройством master генерацией сигналов последовательных тактов (SCL), управлением доступа к шине и генераций сигналов START и STOP.

Чтобы адресовать определенное slave-устройство, master инициирует сигнал START путем подтяжки сигнала данных (SDA) от лог. 1 к лог. 0, когда уровень SCL в состоянии лог. 1. Все slave-устройства на шине вдвигают адрес байта по фронту нарастания уровня SCL, где последний бит определяет, какая далее следует операция - чтение (read) или запись (write). На девятом импульсе тактов адресованное slave-устройство ответит устройству master генерацией сигнала Acknowledge переводом уровня SDA в лог. 0.

Затем инициируется транзакция данных и передаются 8 бит данных, за которыми идет бит Acknowledge. Во время передачи данных уровень SDA должен оставаться стабильным, когда уровень SCL находится в лог. 1. Любое изменение уровня SDA, когда SCL в лог. 1, интерпретируется как сигнал STOP.

После того, как все данные были переданы, master генерирует сигнал STOP, переводя SDA от лог. 0 в лог. 1, когда уровень SCL находится в лог. 1. Микросхема отслеживает таймаут 28 мс на своем интерфейсе, чтобы предотвратить блокировку шины интерфейса.

Адрес на шине. Для обмена с INA226 устройство master должно сначала передать адрес slave-устройства в байте slave-адреса. Этот байт адреса состоит из 7 бит адреса и бит операции (read или write).

У INA226 есть 2 ножки адреса A0 и A1. В таблице 8 перечислены логические уровни для каждого из 16 возможных slave-адресов. INA226 определяет состояние выводов A0 и A1 при каждом обмене по шине. Установите состояние выводов перед тем, как произойдет любая активность на шине.

Таблица 8. Выводы адреса A1A0 и соответствующие Slave-адреса I2C.

A1 A0 Адрес
GND GND 1000000
GND VS 1000001
GND SDA 1000010
GND SCL 1000011
VS GND 1000100
VS VS 1000101
VS SDA 1000110
VS SCL 1000111
SDA GND 1001000
SDA VS 1001001
SDA SDA 1001010
SDA SCL 1001011
SCL GND 1001100
SCL VS 1001101
SCL SDA 1001110
SCL SCL 1001111

Последовательный интерфейс. INA226 работает только как slave-устройство для обоих шин - I2C и SMBus. На сигналах интерфейса SDA и SCL реализованы встроенные фильтры подавления пиков выбросов и триггеры Шмитта для минимизации эффектов помех и шума на шине. Несмотря на наличие этих фильтров необходимо тщательно разводить сигналы, чтобы минимизировать влияние помех на сигналы обмена.

INA226 поддерживает протокол обмена для быстрого режима интерфейса (fast mode от 1 кГц до 400 кГц) и высокоскоростной режим (high-speed mode, от 1 до 2.94 МГц). Все байты данных передаются старшим битом вперед.

Запись и чтение INA226. Доступ к определенному регистру INA226 осуществляется записью соответствующего значения в регистр указателя. Обратитесь к таблице 10 для получения полного списка регистров и их соответствующих адресов. Значение для регистра указателя (как показано на рис. 25) это первый байт, передаваемый после байта slave-адреса с битом R/W в лог. 0. Каждая операция записи в INA226 требует записи значения в регистр указателя.

Запись в регистр начинается с первым байтом, переданным устройством master. Этот байт slave-адрес, с битом R/W = 0. Затем INA226 подтверждает свой адрес. Следующий байт, переданный master, это адрес регистра, куда будут записаны данные. Это значение адреса регистра обновляет регистр указателя, чтобы операция записи была произведена в нужный регистр. Следующие 2 байта записываются в регистр, на который указывает регистр указателя. INA226 подтверждает каждый байт. Устройство master может прерывать транзакцию данных путем генерации сигнала START или STOP.

При чтении из INA226 последнее значение, сохраненное в регистр указателя операцией записи, будет определять, какой регистр во время операции чтения будет прочитан. Чтобы поменять регистр указателя для операции чтения, в регистр указателя должно быть записано новое значение. Эта запись выполняется выдачей slave-адреса с битом R/W = 0, за которым следует байт для регистра указателя, дополнительные данные не требуются. Затем master генерирует сигнал START и посылает байт slave-адреса с битом R/W = 1 для инициации команды чтения. Следующий байт будет передан микросхемой INA226, и это будет старший байт регистра, на который указывает регистр указателя. За этим байтом идет Acknowledge от master; затем INA226 передает младший байт. Устройство master подтверждает и этот байт данных. Устройство master может завершить передачу данных генерацией генерацией Not-Acknowledge после приема любого байта данных, либо генерацией сигнала START или STOP. Если нужны повторяющиеся чтения из того же самого регистра, то больше не нужно постоянно передавать байт для регистра указателя. Микросхема INA226 сохраняет последнее значение регистра указателя, пока он не будет изменен операцией записи.

Рис. 25 показывает диаграмму времени операции записи, рис. 26 показывает диаграмму времени операции чтения.

Замечание: байты 16-битных регистров посылаются старшим байтом вперед, за которым идет младший байт.

INA226 Timing Diagram Write Word fig25

Рис. 25. Диаграмма для формата операции записи слова (Write Word Format).

Примечание (1): значение байта slave-адреса определяется настройками уровней ножек A0 и A1, см. таблицу 8.

INA226 Timing Diagram Read Word fig26

Рис. 26. Диаграмма для формата операции чтения слова (Read Word Format).

Примечания:

(1) Значение байта slave-адреса определяется настройками уровней ножек A0 и A1, см. таблицу 8.
(2) Чтение данных происходит по последнему указанному адресу в регистре указателя. Если нужен новый регистр, то для этого регистр указателя должен быть обновлен записью в него нового адреса, см. рис. 28.
(3) Может быть также отправлен ACK от устройства master.

Рис. 27 показывает диаграмму времени для операции SMBus Alert Response. Рис. 28 иллюстрирует типовую конфигурацию регистра указателя.

INA226 Timing Diagram SMBus ALERT fig27

Рис. 27. Диаграмма времени для SMBus ALERT Response.

Примечание (1): значение байта адреса (Slave Address Byte) определяется установками ножек A0 и A1, см. таблицу 8.

INA226 Typical Register Pointer Set fig28

Рис. 28. Типовая установка регистра указателя (Register Pointer).

Примечание (1): значение байта адреса (Slave Address Byte) определяется установками ножек A0 и A1, см. таблицу 8.

Режим High-Speed I2C. Когда шина находится в состоянии ожидания, оба сигнала SDA и SCL подтягиваются к лог. 1 верхними pullup-резисторами. Устройство master генерирует сигнал START, за которым идет допустимый последовательный байт, содержащий high-speed (HS) master-код 00001XXX. Эта передача делается в быстром (fast mode, 400 кГц) или стандартном (standard mode, 100 кГц) режиме (режим скорости F/S), но со скоростью не выше 400 кГц. Микросхема не подтверждает (not acknowledge) этот HS master-код, но распознает его, и переключит свои внутренние фильтры на поддержку коммуникации со скоростью 2.94 МГц.

Затем master генерирует сигнал START (повторенный START с таким же таймингом, как и предыдущий сигнал START). После этого повторного START протокол работает точно так же, как и в режиме F/S, за исключением скорости - она может достигать 2.94 МГц. Вместо сигнала STOP используйте повторны сигналы старта (REPEATED START), чтобы удерживать работу шины в режиме HS. Сигнал STOP завершит действие режима HS, и переключит все внутренние фильтры микросхемы на поддержку режима F/S.

INA226 Bus Timing Diagram fig29

Рис. 29. Диаграмма времени шины.

Таблица 9. Определения для диаграммы времени(1).

Параметр
FAST MODE HIGH-SPEED MODE Ед.
min MAX min MAX
Рабочая частота SCL f(SCL) 0.001 0.4 0.001 2.94 МГц
Время свободного состояния шины между STOP и START t(BUF) 600   160   нс
Время удержания после повторного старта (REPEATED START). Поле этого периода генерируется первый такт. t(HDSTA) 100   100  
Время установки REPEATED START t(SUSTA) 100   100  
Время установки STOP t(SUSTO) 100   100  
Время удержания данных t(HDDAT) 10 900 10 100
Время установки данных t(SUDAT) 100   20  
Длительность лог. 0 для SCL t(LOW) 1300   200  
Длительность лог. 1 для SCL t(HIGH) 600   60  
Время спада уровня SDA tF   300   80
Время спада уровня SCL   300   40
Время нарастания уровня SCL tR   300   40
Время нарастания уровня SCL/SDA для частоты SCL ≤ 100 кГц   1000    

Примечание (1): значения основаны на статистическом анализе однократной выборки устройств. Минимальные и максимальные значения не гарантируются и не были протестированы при производстве.

SMBus Alert Response. INA226 разработана для ответа на адрес SMBus Alert Response. SMBus Alert Response предоставляет быструю идентификацию отказа для простых slave-устройств. Когда возникает событие Alert, устройство master может выполнить широковещания на slave-адрес Alert Response (0001100) с установленным в лог. 1 битом R/W. После этого Alert Response любое slave-устройство, которое генерирует alert, идентифицирует себя подтверждением (Acknowledge) Alert Response с отправкой своего адреса по шине.

Alert Response может быть активировано несколькими slave-устроствами одновременно, наподобие I2C General Call. Если больше одного устройства пытаются сгенерировать ответ, вступают в действие правила арбитража шины. Проигравшее арбитраж устройство не генерирует подтверждение (Acknowledge) и продолжает удерживать линию Alert, пока прерывание не будет очищено.

[Карта регистров]

INA226 использует банк регистров для хранения настроек конфигурации, результатов измерения, пределов минимума/максимума и информации состояния. Таблица 10 суммарно показывает эти регистры; обратитесь к секции с функциональной блок-схемой для дополнительной информацией по регистрам.

Все 16-битные регистры передаются двумя 8-битными байтами через интерфейс I2C.

Таблица 10. Общее назначение регистров.

Адрес(1)
Имя регистра
Функция Power-On-Reset Тип(2)
HEX BIN HEX
00 Configuration Register Cброс всех регистров, установка интервалов преобразования  ADC для напряжения шунта и напряжения VBUS, настройка усреднения, установка рабочего режима. 0100000100100111 4127 R/W
01 Shunt Voltage Register Данные измерения напряжения шунта. 000000000000000 0000 R
02 Bus Voltage Register Данные измерения напряжения VBUS. 000000000000000 0000 R
03 Power Register(3) Содержит вычисленное значение мощности, которую потребляет нагрузка. 000000000000000 0000 R
04 Current Register(3) Содержит вычисленное значение тока, протекающего через резистор шунта. 0000000000000000 0000 R
05 Calibration Register Устанавливает диапазон полной шкалы и вес младшего разряда для измерений тока и мощности. Предназначен для общей калибровки системы. 00000000 0000000 0000 R/W
06 Mask/Enable Register Конфигурация Alert и флаг Conversion Ready. 00000000 0000000 0000 R/W
07 Alert Limit Register Содержит порог, используемый для сравнения в выбранной функции Alert. 0000000000000000 0000 R/W
FE Manufacturer ID Register Содержит уникальный идентификатор производителя. 0101010001001001 5449 R
FF Die ID Register Содержит уникальный идентификатор (ревизию) кристалла. 0010001001100000 2260 R

Примечания:

(1) Это адрес, загружаемый в Pointer Register.
(2) Тип обращения к регистру: R только для чтения (Read-Only), R/W запись и чтение (Read/Write).
(3) Current Register и Power Register по умолчанию равны 0, потому что Calibration Register по умолчанию равен 0, в результате вычисляемые значения тока и мощности будут всегда нулевые, пока не запрограммировано значение в Calibration Register.

Configuration Register управляет рабочими режимами INA226. Здесь устанавливается время преобразования для обоих измерений - шунта и VBUS, а также устанавливается используемый режим усреднения. Рабочий режим, который управляет тем, какие сигналы будут измеряться, также программируется в Configuration Register.

Configuration Register может быть прочитан в любой момент времени без влияния на настройки INA226 или на осуществляющийся процесс преобразования измерений. Запись в Configuration Register может приостановить любой процесс преобразования, пока не завершится последовательность записи, в результате чего новое преобразование запустится на основе нового содержимого Configuration Register. Эта приостановка предотвращает любую неопределенность в условиях, используемых для следующего завершенного преобразования.

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя RST - - - AVG2 AVG1 AVG0 VBUSCT2 VBUSCT1 VBUSCT0 VSHCT2 VSHCT1 VSHCT0 MODE3 MODE1 MODE0
POR 0 1 0 0 0 0 0 1 0 0 1 0 0 1 1 1

RST (бит 15): Reset Bit. Установка этого бита в 1 генерирует системный сброс, который действует так же, как сброс по питанию (power-on reset, POR). При этом все регистры сбрасываются в свои значения по умолчанию. Бит RST очищается автоматически.

AVG (биты 9-11): Averaging Mode. Определяют количество выборок, которое собирается и усредняется. Таблица 11 показывает все возможные настройки бит AVG и соответствующее количество усреднений.

Таблица 11. Возможные комбинации бит AVG.

AVG2 AVG1 AVG0 Количество усреднений(1)
0 0 0 1
0 0 1 4
0 1 0 16
0 1 1 64
1 0 0 128
1 0 1 256
1 1 0 512
1 1 1 1024

Примечание (1): значения на сером фоне соответствуют настройке по умолчанию.

VBUSCT (биты 6–8): Bus Voltage Conversion Time. Эти биты устанавливают время преобразования для измерения напряжения VBUS. Таблица 12 показывает опции бит VBUSCT и соответствующие им интервалы преобразования.

Таблица 12. Комбинации настроек бит VBUSCT [8:6].

VBUSCT2 VBUSCT1 VBUSCT0 Время преобразования(1)
0 0 0 140 мкс
0 0 1 204 мкс
0 1 0 332 мкс
0 1 1 588 мкс
1 0 0 1.1 мс
1 0 1 2.116 мс
1 1 0 4.156 мс
1 1 1 8.244 мс

Примечание (1): значения на сером фоне соответствуют настройке по умолчанию.

VSHCT (биты 3–5): Shunt Voltage Conversion Time. Эти биты устанавливают время преобразования для измерения напряжения на шунте. Таблица 13 показывает опции бит VSHCT и соответствующие интервалы времени.

Таблица 13. Комбинации настроек бит VSHCT [5:3].

VSHCT2 VSHCT1 VSHCT0 Время преобразования(1)
0 0 0 140 мкс
0 0 1 204 мкс
0 1 0 332 мкс
0 1 1 588 мкс
1 0 0 1.1 мс
1 0 1 2.116 мс
1 1 0 4.156 мс
1 1 1 8.244 мс

Примечание (1): значения на сером фоне соответствуют настройке по умолчанию.

MODE (биты 0-2): Operating Mode. Эти биты выбирают рабочий режим - непрерывный (continuous), оцифровка по команде (triggered) или режим "выключено" (power-down mode). По умолчанию выбрано continuous-измерение для шунта и для VBUS. Настройки режимов показаны в таблице 14.

Таблица 14. Комбинации настроек бит VSHCT [2:0].

MODE3 MODE2 MODE1 Режим(1)
0 0 0 Power-Down (или Shutdown), выключено
0 0 1 Напряжение шунта, Triggered
0 1 0 Напряжение VBUS, Triggered
0 1 1 Напряжение шунта и VBUS, Triggered
1 0 0 Power-Down (или Shutdown), выключено
1 0 1 Напряжение шунта, Continuous
1 1 0 Напряжение VBUS, Continuous
1 1 1 Напряжение шунта и VBUS, Continuous

Примечание (1): значения на сером фоне соответствуют настройке по умолчанию.

Shunt Voltage Register хранит текущий результат измерения напряжения на шунте, VSHUNT. Отрицательные значения представлены в формате двоичного дополнения (two's complement format). Генерация такого формата выполняется комплементом (побитной инверсией) абсолютного двоичного значения числа и добавлением 1. Значение старшего бита, равного 1, показывает отрицательное число. Ниже показан пример кодирования отрицательного значения -80 mV для VSHUNT.

1. Берется абсолютное значение: 80 mV.
2. Это число переводится в целое десятичное (80 mV / 2.5 μV) = 32000.
3. Десятичное число 32000 в двоичной форме будет 0111 1101 0000 0000.
4. Комплемент от этого числа 1000 0010 1111 1111.
5. Добавление 1 к комплементу создает число в формате двоичного дополнения = 1000 0011 0000 0000 = 8300h.

Если разрешено усреднение, то этот регистр покажет усредненное значение.

Диапазон полной шкалы = 81.92 mV (что соответствует HEX-значению 7FFF). Вес младшего разряда 2.5 μV.

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя SIGN SD14 SD13 SD12 SD11 SD10 SD9 SD8 SD7 SD6 SD5 SD4 SD3 SD2 SD1 SD0
POR 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Bus Voltage Register хранит самый последний результат измерения напряжения VBUS. Если разрешено усреднение, то в этом регистре будет находиться усредненное значение.

Диапазон полной шкалы 40.96V (что соответствует HEX-значению 7FFF). Вес младшего разряда 1.25 mV.

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя - BD14 BD13 BD12 BD11 BD10 BD9 BD8 BD7 BD6 BD5 BD4 BD3 BD2 BD1 BD0
POR 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Примечание (1). Старший разряд D15 всегда равен 0, потому что напряжение VBUS может быть только положительным.

Если разрешено усреднение, то этот регистр покажет усредненное значение мощности.

Power Register программируется внутри значением, в 25 раз большим значения Current_LSB. Power Register регистрирует мощность в ваттах путем умножения десятичных значений Current Register на десятичное значение Bus Voltage Register в соответствии с формулой 4.

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя PD15 PD14 PD13 PD12 PD11 PD10 PD9 PD8 PD7 PD6 PD5 PD4 PD3 PD2 PD1 PD0
POR 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Если разрешено усреднение, то этот регистр покажет усредненное значение тока.

Значение Current Register вычисляется умножением десятичного значения Shunt Voltage Register на десятичное значение регистра калибровки Calibration Register в соответствии с формулой 3.

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя CSIGN CD14 CD13 CD12 CD11 CD10 CD9 CD8 CD7 CD6 CD5 CD4 CD3 CD2 CD1 CD0
POR 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Этот регистр предоставляет микросхеме значение резистора шунта, на котором измеряется дифференциальное напряжение, которое вызвано протекающим током. Значение Calibration Register также устанавливает разрешающую способность Current Register. Программирование этого регистра установит Current_LSB и Power_LSB. Calibration Register также подходит для общей калибровки системы. Дополнительную информацию см. выше в секции "Программирование регистра калибровки".

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя - FS14 FS13 FS12 FS11 FS10 FS9 FS8 FS7 FS6 FS5 FS4 FS3 FS2 FS1 FS0
POR 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Mask/Enable Register выбирает функцию, которая разрешена для ножки Alert, а также выбирает, как эта ножка работает. Если для ножки Alert выбрано несколько функций, то приоритет получает самый старший бит Alert Function (самый старший из установленных бит D15 .. D11), и именно он отвечает на превышение предела в Alert Limit Register.

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя SOL SUL BOL BUL POL CNVR - - - - - AFF CVRF OVF APOL LEN
POR 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

SOL (бит 15): Shunt Voltage Over-Voltage. Установка в 1 этого бита конфигурирует установку ножки Alert, если измеренное напряжение шунта превысило значение, запрограммированное в Alert Limit Register.

SUL (бит 14): Shunt Voltage Under-Voltage. Установка в 1 этого бита конфигурирует установку ножки Alert, если измеренное напряжение шунта упало ниже значения, запрограммированного в Alert Limit Register.

BOL (бит 13): Bus Voltage Over-Voltage. Установка в 1 этого бита конфигурирует установку ножки Alert, если измеренное напряжение VBUS превысило значение, запрограммированное в Alert Limit Register.

BUL (бит 12): Bus Voltage Under-Voltage. Установка в 1 этого бита конфигурирует установку ножки Alert, если измеренное напряжение VBUS упало ниже значения, запрограммированного в Alert Limit Register.

POL (бит 11): Power Over-Limit. Установка в 1 этого бита конфигурирует установку ножки Alert, если вычисленная мощность после измерения напряжения VBUS превысило значение, запрограммированное в Alert Limit Register.

CNVR (бит 10): Conversion Ready. Установка в 1 этого бита конфигурирует установку ножки Alert, когда установится Conversion Ready Flag (бит 3), показывая тем самым готовность к следующему преобразованию.

AFF (бит 4): Alert Function Flag. Хотя в любой момент времени ножкой Alert может отслеживаться только одна функция Alert, ножкой Alert также может отслеживаться и флаг Conversion Ready. Чтение Alert Function Flag после события alert дает возможность пользователю определить, была ли источником этого события функция Alert.

Когда бит Alert Latch Enable установлен в режим Latch, бит Alert Function Flag очистится только когда был прочитан Mask/Enable Register. Когда бит Alert Latch Enable установлен в режим Transparent, бит Alert Function Flag очищается после следующего преобразования, которое не приводит к событию Alert.

CVRF (бит 3): Conversion Ready Flag. Хотя INA226 может быть прочитана в любой момент времени, и при этом будут доступны данные последнего преобразования, предоставляется бит Conversion Ready Flag, чтобы помочь координировать однократные преобразования (или triggered-преобразования). Бит Conversion Ready Flag установится после завершения всех преобразований, усреднений и умножений. Conversion Ready Flag очистится в следующих ситуациях:

1. Запись в Configuration Register (кроме выбора режима Power-Down).
2. Чтение Mask/Enable Register.

OVF (бит 2): Math Overflow Flag. Этот бит установится в 1, если арифметическая операция привела к ошибке переполнения. Это показывает, что данные тока и мощности могут быть недостоверными.

APOL (бит 1): Alert Polarity bit. Этот бит устанавливает полярность активации ножки Alert.

1 = инвертированная полярность (открытый коллектор с активной лог. 1).
0 = нормальная полярность (открытый коллектор с активным лог. 0, настройка по умолчанию).

LEN (бит 0): Alert Latch Enable. Конфигурирует разрешение защелкивания функции ножки Alert и бит Alert Flag.

1 = защелкивание разрешено (режим Latch).
0 = прозрачный режим (режим Transparent, настройка по умолчанию).

Когда бит Alert Latch Enable установлен в режим Transparent, ножка Alert и бит Alert Flag сбрасываются в неактивное состояние, когда изменение показало снятие отказа. Когда Alert Latch Enable установлен в режим Latch, ножка Alert и бит Alert Flag останутся активными при отказе до тех пор, пока не будет прочитан Mask/Enable Register.

Alert Limit Register содержит значение для сравнение с регистром, выбранным в Mask/Enable Register, чтобы определить, был ли превышен предел.

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя AUL15 AUL14 AUL13 AUL12 AUL11 AUL10 AUL9 AUL8 AUL7 AUL6 AUL5 AUL4 AUL3 AUL2 AUL1 AUL0
POR 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Manufacturer ID Register хранит уникальное идентификационное число для производителя.

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя ID15 ID14 ID13 ID12 ID11 ID10 ID9 ID8 ID7 ID6 ID5 ID4 ID3 ID2 ID1 ID0
POR 0 1 0 1 0 1 0 0 0 1 0 0 1 0 0 1

ID (биты 0-15): Manufacturer ID Bits, биты идентификатора производителя.

Die ID Register хранит уникальное идентификационное число и идентификатор ревизии кристалла (revision ID).

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя DID11 DID10 DID9 DID8 DID7 DID6 DID5 DID4 DID3 DID2 DID1 DID0 RID3 RID2 RID1 RID0
POR 0 0 1 0 0 0 1 0 0 1 1 0 0 0 0 0

DID (биты 4-15): Device ID Bits. Хранит биты идентификации устройства.

RID (биты 0-3): Die Revision ID Bits. Хранит биты идентификатора ревизии устройства.

[Указания по применению]

На рисунке ниже показано типовое применение с верхним (High-Side) расположением шунта тока.

INA226 Typical Circuit Configuration fig30

Рис. 30. Типовое включение микросхемы INA226.

INA226 измеряет падение напряжение на резисторе тока (резистор шунта, RSHUNT), когда через него проходит ток нагрузки. Также INA226 измеряет напряжение шины питания VBUS, и по обоим этим измерениям INA226 может вычислить потребляемую нагрузкой мощность, когда вся система откалибрована.

Ножка Alert может быть сконфигурирована на активацию в ответ на одно из событий (alert-функций) как было описано выше. Ножка Alert реализована как открытый сток, поэтому должна быть подтянута верхним резистором (pull-up) к уровню VVS. Регистр конфигурации настраивается на требуемое время преобразование и требуемое усреднение. Регистр Mask/Enable Register устанавливается для идентификации нужной Alert-функции, и для неё устанавливается сравниваемы предел в Alert Limit Register.

Рис. 31 показывает ответ ножки Alert на превышение напряжения шунта 80 mV для времени преобразования (tCT) 1.1 мс и усреднения 1. Рис. 32 показывает ответ для того же превышения, но с временем преобразования, уменьшенным до 140 мкс.

INA226 Alert Response Set fig31

Рис. 31. Alert Response, время преобразования 1.1 мс.

INA226 Alert Response Set fig32

Рис. 32. Alert Response, время преобразования 140 мкс.

Таблица 15. Настройки Configuration Register для рис. 31 (значение = 4025h).

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя RST - - - AVG2 AVG1 AVG0 VBUSCT2 VBUSCT1 VBUSCT0 VSHCT2 VSHCT1 VSHCT0 MODE3 MODE1 MODE0
знач. 0 1 0 0 0 0 0 0 0 1 0 0 0 1 0 1

Таблица 16. Настройки Configuration Register для рис. 32 (значение = 4005h).

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя RST - - - AVG2 AVG1 AVG0 VBUSCT2 VBUSCT1 VBUSCT0 VSHCT2 VSHCT1 VSHCT0 MODE3 MODE1 MODE0
знач. 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 1

Таблица 17. Настройки Mask/Enable Register для рис. 31 и 32 (значение = 8000h).

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя SOL SUL BOL BUL POL CNVR - - - - - AFF CVRF OVF APOL LEN
знач. 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Таблица 18. Настройки Alert Limit Register для рис. 31 и 32 (значение = 7D00h).

Бит    15       14       13       12       11       10       9       8       7       6       5       4       3       2       1       0   
Имя AUL15 AUL14 AUL13 AUL12 AUL11 AUL10 AUL9 AUL8 AUL7 AUL6 AUL5 AUL4 AUL3 AUL2 AUL1 AUL0
знач. 0 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0

Рекомендации по источнику питания. Входная схема INA226 может точно измерять сигналы, напряжения которых превышают относительно земли уровень напряжения питания VVS. Например, напряжение питания VVS может быть 5V, в то время как измеряемое напряжение VBUS (относительно GND) может быть до 36V. При этом устройство может выдерживать полный диапазон уровней от 0V до 36V на своих входах, независимо от того, подано напряжение питания VVS, или нет.

Установите необходимые блокировочные конденсаторы по питанию как можно ближе к выводам земли микросхемы, чтобы обеспечить стабильное функционирование. Типичное значение для этого конденсатора 0.1 мкФ. Приложения в большим уровнем помех, либо с высоким сопротивлением источника питания могут потребовать дополнительные развязывающие конденсаторы, чтобы подавить шум на напряжении питания.

Рекомендации по разводке печатной платы. Подключите ножки входов IN+ и IN- к сопротивлению шунта (датчику тока), используя соединение Kelvin-типа, или 4-проводное соединение. Такая техника подключения к датчику тока гарантирует, что между входами будет измеряться падение напряжения только от измеряемого тока. Неправильная разводка датчика тока приведет к дополнительному сопротивлению в цепи измеряемого тока, в результате чего измерения будут неверными. При очень малом сопротивлении датчика тока любые дополнительные сопротивления соединений из-за некорректной разводки приведут к значительным ошибкам в измерениях.

Блокирующий конденсатор по питанию микросхемы INA226 размещайте как можно ближе к её выводам корпуса (GND и VS).

INA226 Layout Example fig33

Рис. 33. Пример разводки платы для INA226.

Примечание (1): подключите ножку VBUS к шине питания анализируемого источника.

Габаритные размеры корпусов микросхем INA226, посадочного места на плате, информацию для заказа и техподдержке см. в даташите [1].

[Ссылки]

1. INA226 High-Side or Low-Side Measurement, Bi-Directional Current and Power Monitor I2C Interface site:ti.com.
2. SPRA953 Semiconductor and IC Package Thermal Metrics application report site:ti.com.
3. TIDA-00302 Transient Robustness for Current Shunt Monitor site:ti.com.

 

Комментарии  

 
+1 #2 Александр 25.01.2024 17:44
Не опечатка ли в "На рис. 27 показана номинальная нагрузка 10A"? На самом деле рисунок 30?

microsin: благодарю, исправил.
Цитировать
 
 
+5 #1 Fantasy 18.11.2022 08:14
Спасибо за труд. Очень полезно!
Цитировать
 

Добавить комментарий


Защитный код
Обновить

Top of Page