2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
TCN75A, sıcaklıktan dijitale dönüştürücüyle birleştirilmiş iki kablolu seri sıcaklık sensörüdür. Sıcaklık algılama uygulamaları için esneklik sağlayan kullanıcı tarafından programlanabilir kayıtlarla birleştirilmiştir. Kayıt ayarları, kullanıcıların güç tasarrufu modu, kapatma modu, tek çekim modu vb. yapılandırmasına olanak tanır. Sensör, tek bir seri veri yolunda sekiz adede kadar cihazın bağlantısını kolaylaştırabilen i2c uyumlu bir seri arayüze sahiptir. İşte python kodunu kullanarak ahududu pi ile gösterimi.
Adım 1: İhtiyacınız Olan Şey..!
1. Ahududu Pi
2. TCN75A
3. I²C Kablosu
4. Raspberry Pi için I²C Kalkanı
5. Ethernet Kablosu
Adım 2: Bağlantı:
Ahududu pi için bir I2C kalkanı alın ve ahududu pi'nin gpio pimlerinin üzerine hafifçe itin.
Ardından I2C kablosunun bir ucunu TCN75A sensörüne ve diğer ucunu I2C blendajına bağlayın.
Ayrıca Ethernet kablosunu pi'ye bağlayın veya bir WiFi modülü kullanabilirsiniz.
Bağlantılar yukarıdaki resimde gösterilmiştir.
Adım 3: Kod:
TCN75A için python kodu, github deposu-DCUBE Mağazamızdan indirilebilir.
İşte aynısı için bağlantı:
github.com/DcubeTechVentures/TCN75A/blob/master/Python/TCN75A.py
Python kodu için SMBus kütüphanesini kullandık, raspberry pi'ye SMBus kurma adımları burada açıklanmıştır:
pypi.python.org/pypi/smbus-cffi/0.5.1
Kodu buradan da kopyalayabilirsiniz, aşağıdaki şekilde verilmiştir:
# Özgür irade lisansıyla dağıtılır.
# İlgili eserlerinin lisanslarına uyması koşuluyla, istediğiniz şekilde, kârlı veya ücretsiz olarak kullanın.
# TCN75A
# Bu kod, TCN75A_I2CS I2C Mini Modülü ile çalışmak üzere tasarlanmıştır.
smbus'u içe aktar
ithalat zamanı
# I2C veri yolunu alın
veri yolu = smbus. SMBus(1)
# TCN75A adresi, 0x48(72)
# Yapılandırma kaydını seçin, 0x01(01)
# 0x60(96) 12 bit ADC çözünürlüğü
bus.write_byte_data(0x48, 0x01, 0x60)
zaman.uyku(0.5)
# TCN75A adresi, 0x48(72)
# 0x00(00), 2 bayttan veriyi geri oku
# temp MSB, temp LSB
veri = bus.read_i2c_block_data(0x48, 0x00, 2)
# Veriyi 12 bit'e dönüştürün
sıcaklık = ((veri[0] * 256) + (veri[1] & 0xF0)) / 16
sıcaklık > 2047 ise:
sıcaklık -= 4096
cTemp = sıcaklık * 0.0625
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
Adım 4: Uygulamalar:
TCN75A, kişisel bilgisayarlarda ve sunucularda kullanılabilen bir sıcaklık sensörüdür. Ayrıca eğlence sistemlerinde, ofis ekipmanlarında, hard disk sürücülerinde ve diğer PC çevre birimlerinde de kullanılabilir. Bu sensör ayrıca veri iletişim ekipmanlarında da uygulama bulur.