Купил плату с микросхемой INA219 для измерения I и U c шиной связи I2C на aliexpress. В комплекте с платой поставляется разъём и штырьки BLS, которые можно или установить, или не устанавливать на плату.



Основные параметры платы указаны на самой плате.

Основным элементом на плате является микросхема INA219. Микросхема INA219, несмотря на маленький размер и малое количество выводов, обладает большими возможностями. Микросхема измеряет напряжение на шунте (на выводах Vin+ и Vin_) – резисторе с малым сопротивлением и на контакте Vin- относительно контакта GND поочерёдно. Результаты вычислений записываются в регистры, затем по шине связи I2C передаются на микроконтроллер. На плате установлен шунт с сопротивлением 0,1 Ом. Напряжение в микросхеме измеряет аналогово - цифровой преобразователь АЦП. АЦП может работать в 9-ти, 10-ти, 11-ти, 12-тибитных режимах. Настраивается режим работы микросхемы изменением регистра конфигурации. У производителя есть бесплатная программа INA219 EVM для настройки конфигурации микросхемы INA219. Файл программы - sboc271.zip
Файл даташита на микросхему INA291 -
Посмотреть онлайн файл: ina219.pdf
Микросхема имеет возможность подстраивать точность производимых ею измерений, другими словами, есть возможность калибровки результатов измерений.
Для проверки работы платы на микросхеме INA219 была собрана следующая схема.
Питание на плату с микросхемой INA219 нужно подать с платы Arduino или другого источника питания.
Для работы с платой на микросхеме INA219 в системе программирования Arduino IDE нам понадобится библиотека. Поиски в сети интернет дали положительный результат. Я нашел несколько библиотек, но у меня все заработало только с двумя.
Первой была найдена библиотека от Adafruit - Adafruit_INA219-master.zip
Она рабочая, но я не смог подключиться к плате с микросхемой INA219, когда изменил адрес шины I2C. По умолчанию плата с микросхемой INA219 имеет адрес шины I2C 0х40. Она также не позволяет настраивать режим работы микросхемы INA219.
Вторая библиотека была лишена недостатков первой. Вторая рабочая библиотека - это Arduino-INA219-master.zip
Как устанавливаются библиотеки в системе программирования Arduino IDE? Ответ на этот вопрос вы сможете получить из моих статей или из информации, размещенной в сети интернет.
Я хочу применить плату с микросхемой INA219 для экспериментов. Мне с ней будет работать удобнее, если я запаяю на плату разъём и штырьки BLS.
Я собрал схему, подключил к плате Arduino UNO выводы Data(SDA) и Clok(SCL). Вывод Data(SDA) подключим к разъёму А4, вывод Clok(SCL) подключим к разъёму А5 платы Arduino UNO. Затем открываем программу Arduino IDE. Библиотеки я уже установил. Открываем пример первой библиотеки.
Я поменял в коде строку 9 вместо 115200, установил 9600. Иначе в мониторе последовательного порта вместо цифр и букв будут появляться каракули. Com порт компьютера я также настроил на скорость 9600. Это было проверено мной на практике.
Выполняем компиляцию примера getcurrent. Загружаем данные в контроллер платы Arduino UNO. Открываем в программе Arduino UNO монитор последовательного порта и видим результат измерения, получаемый от микросхемы INA219.
Результат измерений микросхемы INA219 оказался точным.
Далее я решил изменить адрес шины I2C. А перед этим я определил адрес шины I2C платы с микросхемой INA219 с помощью скетча, как я это делал в статье «Домашняя метеостанция на GY-BMP280-3.3 и Ds18b20»

Для изменения адреса шины I2C платы с микросхемы INA219 я запаял перемычку и определил новый адрес шины I2C.

Затем я загрузил пример из второй библиотеки.
Для того, чтобы код скомпилированный (преобразованный в вид пригодный для записи в микроконтроллер платы Arduino UNO) смог работать с платой на микросхеме INA219 c адресом 0х44, надо изменить в примере строку ina.begin(); на строку ina.begin(68);
Почему 68? А потому, что 68 = 0 х 44, 68 – число в десятеричной системе счисления, 0 х 44 – число в восьмеричной системе счисления.
Для перевода чисел можно использовать стандартный калькулятор.
После изменения строки компиляции примера, прошивки кода в Arduino UNO в мониторе последовательного порта я увидел следующее.

Удачи всем в ваших начинаниях и делах!