Arduino mikrodenetleyici üzerinde işaretçi göstergeli termometre

Şimdi, Arduino platformunu ve bir ds18b20 sıcaklık sensörünü kullanarak sıradan bir kadranlı (analog) voltmetreyi dijital termometreye nasıl çevireceğinizi öğreneceksiniz. Prensip olarak, bu teknoloji yalnızca sıcaklığı görüntülemek için uygun değildir - farklı sensörlerden gelen diğer (fiziksel ve elektriksel) değerler, bu yöntem kullanılarak bir komparatör üzerinde dijital olarak görüntülenebilir.

DS18B20 modülü

İyi bilinen hazır modül ds18b20, 9 bit sıcaklık ölçümü sağlayan ve uçucu olmayan programlanabilir üst ve alt çalışma noktası fonksiyonuna sahip dijital bir termometredir. Ayrıca, ds18b20, 1-Wire veri yolu üzerinden iletişim kurar ve mikroişlemci ile iletişim kurmak için yalnızca bir veri hattı gerektirir. Ek olarak, ds18b20'ye doğrudan veri hattından güç sağlanarak harici bir güç kaynağına olan ihtiyaç ortadan kalkar.

ds18b20 pin çıkışı

Aslında, her ds18b20, birden fazla DS18B20'nin bile aynı 1-Wire veriyolu üzerinde çalışmasına izin veren benzersiz bir 64-bit seri koduna sahiptir. Böylece, tek bir mikroişlemci kullanarak, geniş bir alana dağılmış birçok sıcaklık sensörünü izlemek mümkündür.

Termometre montaj şeması


Elemanları panoya bağlama

Devrenin kendisi o kadar basittir ki, onu çizmenin bir anlamı yoktur - fotoğrafta tüm bağlantılar görülebilir. Öncelikle ds18b20'yi Arduino topraklaması için (-) pinine, 5V için (+) pinine ve sinyal çıkışını dijital pin 2'ye bağlayın. Voltmetreyi kontrol etmek için pozitif kablosunu pin 9'a (PWM'den biri) bağlayın ve eksi bağlayın. GND'ye. Bundan sonra, voltmetre üzerindeki ölçeği bir termometreye değiştirmek için, makaleye ekli fotoğrafı yazdırmanız yeterlidir. Voltmetre burada 5 V'tur, ancak gerekli direnci seri olarak ekleyerek (yaklaşık 10-100 kOhm) normal bir mikroammetre de dahil olmak üzere başka herhangi bir gösterge alabilirsiniz.


İşaretçi termometre ve voltmetre

Gerekli parçaların listesi

  • Arduino Uno
  • DS18b20 sensörü
  • işaretçi voltmetre
  • Çoklu teller
  • Güç kaynağı (pil olabilir)

Termometre Parçaları

Çalışma prensibi

Darbe Genişliği Modülasyonu veya PWM, dijital araçları kullanarak analog sonuçlar elde etmek için bir tekniktir.


Darbe genişliği modülasyon anahtarı kontrolü

Mikrodenetleyici yanıp sönerken, ds18b20 sıcaklık sensörünü destekleyen kütüphane olduğu için Arduino geliştirme ortamınıza “DallasTemperature kütüphanesini” eklemelisiniz.

Kodun üç ana bölümü vardır:

  1. Sensörden sıcaklık okuma
  2. Sıcaklığı PWM'ye dönüştürme
  3. Değerin ölçekte görüntülenmesi

Termometre ayarı

Ayarlarda, sıcaklığı sensörden okuyacağız. Daha sonra bu değeri 0 ile 255 aralığında bir PWM fonksiyonuna çeviriyoruz. Bu bir program fonksiyonu içinde yapılabilir. Ardından, bir kadranlı voltmetreye bağlı olan pim 9'a bir sinyal uygulayalım.

Sıcaklık aralığını ayarlarken, uç değerler arasındaki boşluk ne kadar küçükse, termometrenin çözünürlüğünün o kadar büyük olduğunu unutmayın. Sensörün veri sayfasını ve ürün yazılımı kodunu indirebilirsiniz.

Cihaz çalışmasının videosu