İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
AD7416ARZ, dört adet tek kanallı analogdan dijitale dönüştürücü ve içinde yerleşik bir yerleşik sıcaklık sensörü bulunan 10-Bit sıcaklık sensörüdür. Parçaların üzerindeki sıcaklık sensörüne multiplexer kanalları üzerinden erişilebilir. Bu yüksek hassasiyetli sıcaklık sensörü, dijital, I2C formatında kalibre edilmiş, doğrusallaştırılmış sensör sinyalleri sağlayarak biçim, faktör ve zeka açısından bir endüstri standardı haline geldi.
Bu eğitimde, AD7416ARZ sensör modülünün ahududu pi ile arayüzlenmesi ve python dili kullanılarak programlanması da gösterilmiştir. Sıcaklık değerlerini okumak için I2C adaptörlü ahududu pi kullandık. Bu I2C adaptörü sensör modülüne bağlantıyı daha kolay ve daha güvenilir hale getiriyor.
Adım 1: Donanım Gerekli:
Hedefimizi gerçekleştirmek için ihtiyaç duyduğumuz malzemeler aşağıdaki donanım bileşenlerini içerir:
1. AD7416ARZ
2. Ahududu Pi
3. I2C Kablosu
4. Ahududu pi için I2C Kalkanı
5. Ethernet Kablosu
Adım 2: Donanım Bağlantısı:
Donanım bağlantısı bölümü temel olarak sensör ve ahududu pi arasında gerekli olan kablo bağlantılarını açıklar. İstenilen çıktı için herhangi bir sistem üzerinde çalışırken doğru bağlantıların sağlanması temel zorunluluktur. Yani, gerekli bağlantılar aşağıdaki gibidir:
AD7416ARZ, I2C üzerinde çalışacaktır. Sensörün her bir arayüzünün nasıl bağlanacağını gösteren örnek kablo şeması buradadır.
Kutudan çıktığı gibi, kart bir I2C arayüzü için yapılandırılmıştır, bu nedenle, aksi takdirde agnostik iseniz bu bağlantıyı kullanmanızı öneririz.
Tek ihtiyacınız olan dört tel! Vcc, Gnd, SCL ve SDA pinlerinden sadece dört bağlantı gereklidir ve bunlar I2C kablosu yardımıyla bağlanır.
Bu bağlantılar yukarıdaki resimlerde gösterilmiştir.
Adım 3: Sıcaklık Ölçümü Kodu:
Raspberry pi kullanmanın avantajı, kartı programlamak istediğiniz programlama dilinin, sensör ile arayüz oluşturmak için size esneklik sağlamasıdır. Bu kartın bu avantajından yararlanarak, burada programlamasını python'da gösteriyoruz. AD7416ARZ için python kodu, Her Şeyi Kontrol Et Topluluğu olan github topluluğumuzdan indirilebilir.
Kullanıcıların kolaylığının yanı sıra, kodu burada da açıklıyoruz:
Kodlamanın ilk adımı olarak, python olması durumunda smbus kitaplığını indirmeniz gerekir, çünkü bu kitaplık kodda kullanılan işlevleri destekler. Bu nedenle, kütüphaneyi indirmek için aşağıdaki bağlantıyı ziyaret edebilirsiniz:
pypi.python.org/pypi/smbus-cffi/0.5.1
Bu sensör için çalışan python kodunu buradan da kopyalayabilirsiniz:
smbus'u içe aktar
ithalat zamanı
# I2C veri yolunu alın
veri yolu = smbus. SMBus(1)
# AD7416ARZ adresi, 0x48(72)
# 0x00(00), 2 bayttan verileri geri oku
# temp MSB, temp LSB
veri = bus.read_i2c_block_data(0x48, 0x00, 2)
# Veriyi 10 bit'e dönüştürün
sıcaklık = ((veri[0] * 256) + (veri[1] & 0xC0)) / 64
sıcaklık > 511 ise:
sıcaklık -= 1024
cTemp = sıcaklık * 0.25
fTemp = cTemp * 1.8 + 32
# Ekrana veri çıkışı
print "Sıcaklık Santigrat cinsinden: %.2f C" %cTemp
print "Sıcaklık Fahrenheit cinsinden: %.2f F" %fTemp
Aşağıda belirtilen kod kısmı, python kodlarının doğru yürütülmesi için gerekli kitaplıkları içerir.
smbus'u içe aktar
ithalat zamanı
Komut istemine aşağıda belirtilen komutu yazarak kod çalıştırılabilir.
$> piton AD7416ARZ.py
Sensörün çıkışı da kullanıcının referans olması açısından yukarıdaki resimde gösterilmektedir.
Adım 4: Uygulamalar:
AD7416ARZ, dört tek kanallı analogdan dijitale dönüştürücüye sahip 10 Bit Sıcaklık sensörüdür, ortam sıcaklığı izleme ile Veri toplama işlemini gerçekleştirebilir. Ayrıca Endüstriyel proses kontrol sistemlerinde, Otomotiv Akü şarj uygulamalarında ve Kişisel bilgisayarlarda kullanılabilir.