» Aliexpress » Componentes eletrônicos »Placa com chip INA219 para medir I e U com barramento de comunicação I2C

Placa com chip INA219 para medir I e U com barramento de comunicação I2C

Comprei uma placa com um chip INA219 para medir I e U com um barramento de comunicação I2C no aliexpress. O conector e os pinos BLS são fornecidos com a placa, que pode ser instalada ou não na placa.
Placa com chip INA219 para medir I e U com barramento de comunicação I2C



Os principais parâmetros do painel estão indicados no próprio painel.

O principal elemento da placa é o chip INA219. O chip INA219, apesar de seu tamanho pequeno e número pequeno de pinos, possui excelentes recursos. O microcircuito mede a tensão no shunt (nos terminais Vin + e Vin_) - um resistor com baixa resistência e no pino Vin em relação ao pino GND, por sua vez. Os resultados dos cálculos são gravados em registradores, depois são transmitidos ao microcontrolador através do barramento de comunicação I2C. Um shunt com resistência de 0,1 ohms é instalado na placa. A voltagem no chip mede o conversor analógico-digital do ADC. O ADC pode operar nos modos 9, 10, 11, 12 tibit. O modo de operação do chip é configurado alterando o registro de configuração. O fabricante possui um programa gratuito, INA219 EVM, para configurar o chip INA219. Arquivo de Programa - sboc271.zip
sboc271.zip [3.55 Mb] (downloads: 367)

Arquivo de folha de dados no chip INA291 -
ina219.pdf [1,14 Mb] (downloads: 361)
Visualizar arquivo online:


O microcircuito tem a capacidade de ajustar a precisão de suas medições, ou seja, é possível calibrar os resultados das medições.

Para verificar o funcionamento da placa no chip INA219, o seguinte circuito foi montado.

A alimentação na placa com o chip INA219 deve ser fornecida a partir da placa Arduino ou outra fonte de energia.
Para trabalhar com a placa no chip INA219 no sistema de programação IDE do Arduino, precisamos de uma biblioteca. As pesquisas na Internet produziram um resultado positivo. Encontrei várias bibliotecas, mas funcionou para mim com apenas duas.
A primeira biblioteca de Adafruit foi encontrada - Adafruit_INA219-master.zip
adafruit_ina219-master.zip [11.97 Kb] (downloads: 177)

Está funcionando, mas não consegui conectar à placa com o chip INA219 quando alterei o endereço do barramento I2C. Por padrão, uma placa com um chip INA219 possui um endereço de barramento I2C 0x40. Também não permite configurar o modo de operação do chip INA219.
A segunda biblioteca estava desprovida das deficiências da primeira. A segunda biblioteca de trabalho é Arduino-INA219-master.zip
arduino-ina219-master.zip [17.52 Kb] (downloads: 451)

Como as bibliotecas são instaladas no sistema de programação Arduino IDE? Você pode obter a resposta para esta pergunta nos meus artigos ou em informações postadas na Internet.
Quero usar a placa com o chip INA219 para experimentos. Será mais conveniente trabalhar com ele se soldar o conector e os pinos do BLS na placa.


Montei o circuito, conectei os pinos Data (SDA) e Clok (SCL) à placa UNO do Arduino. Conecte a saída de dados (SDA) ao conector A4, conecte a saída Clok (SCL) ao conector A5 da placa UNO do Arduino. Em seguida, abra o programa IDE do Arduino. Eu já instalei bibliotecas. Abrimos um exemplo da primeira biblioteca.

Alterei a linha 9 no código em vez de 115200, defina 9600. Caso contrário, rabiscos aparecerão no monitor da porta serial em vez de números e letras. Também configurei a porta de comunicação do computador para uma velocidade de 9600. Isso foi testado por mim na prática.


Nós compilamos o exemplo getcurrent. Carregamos dados no controlador da placa UNO do Arduino. Abra o monitor da porta serial no programa Arduino UNO e veja o resultado da medição obtido no chip INA219.

O resultado da medição do chip INA219 foi preciso.
Em seguida, decidi alterar o endereço do barramento I2C. Antes disso, determinei o endereço do barramento I2C da placa INA219 com a ajuda de um esboço, como fiz no artigo "Estação meteorológica doméstica em GY-BMP280-3.3 e Ds18b20»

Para alterar o endereço do barramento I2C da placa do chip INA219, soldei o jumper e determinei um novo endereço de barramento I2C.


Então baixei o exemplo da segunda biblioteca.

Para que o código compilado (convertido em um formato adequado para gravação no microcontrolador da placa UNO do Arduino) possa trabalhar com a placa no chip INA219 com o endereço 0x44, é necessário alterar a linha ina.begin () no exemplo; para a corda ina.begin (68);

Por que 68? E como 68 = 0 x 44, 68 é um número no sistema de números decimais, 0 x 44 é um número no sistema de números octais.
Para traduzir números, você pode usar a calculadora padrão.

Depois de alterar a linha de compilação do exemplo, exibindo o código no Arduino UNO no monitor de porta serial, vi o seguinte.

Boa sorte a todos em seus empreendimentos e ações!

Custo: ~ 80

Adicionar um comentário

    • sorrirsorrisosxaxaoknão seiyahoonea
      chefearranhartolosimsim simagressivosegredo
      desculpedançardance2dance3perdãoajudabebidas
      pararamigosbomgoodgoodapitodesmaiarlíngua
      fumaçapalmascraydeclararirônicodon-t_mentionbaixar
      calorirritantelaugh1mdareuniãomoskingnegativo
      not_ipipocapunirlerassustarsustospesquisar
      provocarthank_youistoto_clueumnikagudoconcordar
      malbeeeblack_eyeblum3corargabar-setédio
      censuradobrincadeirasecret2ameaçarvitóriayusun_bespectacled
      sacudirrespektlolpreviubem vindoKrutoyya_za
      ya_dobryiajudantene_huliganne_othodifludproibirfechar
3 comentário
68 = 0 x 44, 68 é o número no sistema decimal, 0 x 44 é o número no sistema octal.
0x44 é um número no sistema hexadecimal, não no octal. ((
Guest Vadim
O diagrama de fiação mostrado na figura está incorreto! Autor, você já conferiu o que oferece? Parece que as evidências foram retiradas do trator.
O que acontecerá nesse esquema com leituras de sensores sem carga? E como o sensor pode determinar a tensão na bateria (BusVoltage) usando este circuito? E em carga?
Pavel convidado
Por que não escrever ina.begin (0x44)?

Aconselhamos que você leia:

Entregue-o para o smartphone ...