Kartın ana parametreleri kartın üzerinde gösterilir.
Karttaki ana eleman INA219 yongasıdır. INA219 yongası, küçük boyutuna ve az sayıda pimine rağmen, büyük yeteneklere sahiptir. Mikro devre şönt (Vin + ve Vin_ terminallerinde) - düşük dirençli bir direnç ve GND pimine göre Vin-pinindeki voltajı ölçer. Hesaplama sonuçları kayıtlara yazılır, daha sonra I2C iletişim veri yolu üzerinden mikrodenetleyiciye iletilir. Tahtaya 0,1 ohm dirençli bir şant takılmıştır. Çipteki voltaj, ADC'nin analog-dijital dönüştürücüsünü ölçer. ADC 9, 10, 11, 12 tibit modlarında çalışabilir. Çipin çalışma modu, yapılandırma yazmacı değiştirilerek yapılandırılır. Üretici, INA219 yongasını yapılandırmak için ücretsiz bir INA219 EVM programına sahiptir. Program Dosyası - sboc271.zip
INA291 yongasındaki veri sayfası dosyası -
Çevrimiçi dosyayı görüntüle:
Mikro devre, ölçümlerinin doğruluğunu ayarlama yeteneğine sahiptir, başka bir deyişle, ölçüm sonuçlarını kalibre etmek mümkündür.
Kartın INA219 yongasındaki çalışmasını doğrulamak için aşağıdaki devre monte edildi.
INA219 yongasıyla kart üzerindeki güç karttan sağlanmalıdır Arduino veya başka bir güç kaynağı.
Arduino IDE programlama sistemindeki INA219 yongasındaki kartla çalışmak için bir kütüphaneye ihtiyacımız var. İnternet aramaları olumlu bir sonuç verdi. Birkaç kütüphane buldum, ama sadece iki kütüphaneyle çalıştı.
Adafruit'ten ilk kütüphane bulundu - Adafruit_INA219-master.zip
Çalışıyor, ancak I2C veri yolu adresini değiştirdiğimde INA219 yongasıyla panoya bağlanamadım. Varsayılan olarak, INA219 yongalı bir anakartın I2C 0x40 veri yolu adresi vardır. Ayrıca INA219 yongasının çalışma modunu yapılandırmanıza izin vermez.
İkinci kütüphane birincinin eksikliklerinden yoksundu. İkinci çalışma kütüphanesi Arduino-INA219-master.zip
Arduino IDE programlama sistemine kütüphaneler nasıl kurulur? Bu sorunun cevabını makalelerimden veya internette yayınlanan bilgilerden alabilirsiniz.
Tahtayı INA219 yongasıyla deneyler için kullanmak istiyorum. BLS'nin konnektörünü ve pimlerini tahtaya lehimlersem onunla çalışmak daha uygun olacaktır.
Devreyi monte ettim, Veri (SDA) ve Clok (SCL) pimlerini Arduino UNO kartına bağladım. Veri çıkışını (SDA) A4 konektörüne, Clok (SCL) çıkışını Arduino UNO kartının A5 konektörüne bağlayın. Ardından Arduino IDE programını açın. Zaten kütüphaneler kurdum. İlk kütüphaneye bir örnek açıyoruz.
Kodda 115200 yerine 9 satırını değiştirdim, 9600 ayarladım. Aksi takdirde, seri bağlantı noktası monitöründe rakamlar ve harfler yerine karalamalar görünecektir. Ayrıca bilgisayarın com bağlantı noktasını 9600 olarak yapılandırdım.
Getcurrent örneğini derliyoruz. Arduino UNO kartının denetleyicisine veri yüklüyoruz. Arduino UNO programında seri port monitörünü açın ve INA219 yongasından elde edilen ölçüm sonucunu görün.
INA219 yongasının ölçüm sonucu doğruydu.
Sonra I2C otobüsünün adresini değiştirmeye karar verdim. Ondan önce, INA219 kartının I2C veri yolu adresini bir taslak yardımıyla belirledim.Ev hava istasyonu GY-BMP280-3.3 ve Ds18b20»
Kartın I2C veri yolu adresini INA219 yongasından değiştirmek için jumperı lehimledim ve yeni bir I2C veri yolu adresi belirledim.
Sonra ikinci kütüphaneden örnek indirdim.
Derlenmiş kodun (Arduino UNO kartının mikrodenetleyicisine yazmak için uygun bir forma dönüştürülmüş), INA219 yongasındaki kartla 0x44 adresiyle çalışabilmesi için, örnekteki ina.begin () satırını değiştirmeniz gerekir; ina.begin (68) dizesine;
Neden 68? Ve 68 = 0 x 44, 68 ondalık sayı sistemindeki bir sayı olduğu için, 0 x 44 sekizli sayı sistemindeki bir sayıdır.
Sayıları çevirmek için standart hesap makinesini kullanabilirsiniz.
Örneğin derleme satırını değiştirdikten sonra, seri port monitöründe Arduino UNO'daki kodu yanıp söndükten sonra, aşağıdakileri gördüm.
Çalışmalarınızda ve eylemlerinizde herkese bol şanslar!
Maliyet: ~ 80