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).
Области применения:
• Серверы • Телекоммуникационное оборудование • Компьютеры • Управление питанием • Зарядные устройства • Блоки питания • Тестирующее оборудование
Рис. 1. Приложение с нижним (Low-Side Sensing) или верхним (High-Side Sensing) датчиками тока.
Рис. 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 это значения бит настройки времени преобразования)
Выходное напряжение лог. 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).
Рис. 13. Зависимость ошибки усиления входа VBUS от температуры.
Рис. 14. Ток смещения входа VBUS в зависимости от напряжения относительно GND.
Рис. 15. Входной ток смещения в зависимости от температуры.
Рис. 16. Входной ток смещения в зависимости от температуры в режиме "выключено".
Рис. 17. Ток покоя IQ в зависимости от температуры.
Рис. 18. Ток покоя IQ в зависимости от температуры, в режиме "выключено".
Рис. 19. Зависимость тока покоя IQ от частоты тактов I2C в активном состоянии.
Рис. 20. Зависимость тока покоя IQ от частоты тактов I2C в состоянии "выключено".
[Описание]
В INA226 встроен цифровой усилитель для измерения тока с I2C- и SMBus-совместимым интерфейсом. Одновременно измеряется напряжение и вычисляется потребляемая мощность. Программируемые регистры позволяют гибко настроить разрешающую способность измерений и непрерывное, многопрофильное функционирование. Подробное описание регистров см. далее, начиная с таблицы 10.
Рис. 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).
Рис. 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 показывает несколько вариантов выбора времени преобразования для иллюстрации влияния шума на измерение. Чтобы достичь самой высокой точности измерения, используют комбинацию самого большого допустимого времени преобразования и самого большого возможного количества усреднений, базируясь на требованиях по времени отклика системы.
Рис. 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 предела, определенного по спецификации. Выбор резисторов примерно такого номинала оказывает минимальное влияние на точность измерений.
Рис. 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.
Упрощенное использование 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-битных регистров посылаются старшим байтом вперед, за которым идет младший байт.
Рис. 25. Диаграмма для формата операции записи слова (Write Word Format).
Примечание (1): значение байта slave-адреса определяется настройками уровней ножек A0 и A1, см. таблицу 8.
Рис. 26. Диаграмма для формата операции чтения слова (Read Word Format).
Примечания:
(1) Значение байта slave-адреса определяется настройками уровней ножек A0 и A1, см. таблицу 8. (2) Чтение данных происходит по последнему указанному адресу в регистре указателя. Если нужен новый регистр, то для этого регистр указателя должен быть обновлен записью в него нового адреса, см. рис. 28. (3) Может быть также отправлен ACK от устройства master.
Рис. 27 показывает диаграмму времени для операции SMBus Alert Response. Рис. 28 иллюстрирует типовую конфигурацию регистра указателя.
Рис. 27. Диаграмма времени для SMBus ALERT Response.
Примечание (1): значение байта адреса (Slave Address Byte) определяется установками ножек A0 и A1, см. таблицу 8.
Рис. 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.
Рис. 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.
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.
Если разрешено усреднение, то этот регистр покажет усредненное значение тока.
Значение Current Register вычисляется умножением десятичного значения Shunt Voltage Register на десятичное значение регистра калибровки Calibration Register в соответствии с формулой 3.
Этот регистр предоставляет микросхеме значение резистора шунта, на котором измеряется дифференциальное напряжение, которое вызвано протекающим током. Значение Calibration Register также устанавливает разрешающую способность Current Register. Программирование этого регистра установит Current_LSB и Power_LSB. Calibration Register также подходит для общей калибровки системы. Дополнительную информацию см. выше в секции "Программирование регистра калибровки".
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, если арифметическая операция привела к ошибке переполнения. Это показывает, что данные тока и мощности могут быть недостоверными.
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.
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) расположением шунта тока.
Рис. 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 мкс.
Рис. 31. Alert Response, время преобразования 1.1 мс.
Рис. 32. Alert Response, время преобразования 140 мкс.
Таблица 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).
Рис. 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.
Комментарии
microsin: благодарю, исправил.
RSS лента комментариев этой записи