İçindekiler:
- Adım 1: Donanım Gerekli:
- Adım 2: Donanım Bağlantısı:
- Adım 3: Sıcaklık Ölçümü Kodu:
- Adım 4: Uygulamalar:
Video: MCP9803 ve Arduino Nano Kullanarak Sıcaklık Ölçümü: 4 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:18
MCP9803, 2 telli yüksek hassasiyetli bir sıcaklık sensörüdür. Sıcaklık algılama uygulamalarını kolaylaştıran, kullanıcı tarafından programlanabilen kayıtlarla yapılandırılmışlardır. Bu sensör, son derece gelişmiş çok bölgeli sıcaklık izleme sistemi için uygundur.
Bu eğitimde, MCP9803 sensör modülünün arduino nano ile arayüzlenmesi gösterilmiştir. Sıcaklık değerlerini okumak için I2c adaptörlü arduino 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. MCP9803
2. Arduino Nano
3. I2C Kablosu
4. arduino nano için I2C kalkanı
Adım 2: Donanım Bağlantısı:
Donanım bağlantısı bölümü, temel olarak sensör ve arduino nano 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:
MCP9803, I2C üzerinden ç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:
Şimdi arduino koduyla başlayalım.
Sensör modülünü arduino ile kullanırken Wire.h kütüphanesini dahil ediyoruz. "Wire" kütüphanesi, sensör ve arduino kartı arasındaki i2c iletişimini kolaylaştıran fonksiyonları içerir.
Tüm arduino kodu, kullanıcının rahatlığı için aşağıda verilmiştir:
#Dahil etmek
// MCP9803 I2C adresi 0x48(72)
#define Addr 0x48
geçersiz kurulum()
{
// I2C iletişimini MASTER olarak başlat
Wire.begin();
// Seri İletişimi Başlat, baud hızını ayarla = 9600
Seri.başla(9600);
// I2C İletimini Başlat
Wire.beginTransmission(Adr);
// Yapılandırma kaydını seç
Wire.write(0x01);
// Sürekli dönüştürme modu, Açılış varsayılanı
Wire.write(0x60);
// I2C İletimini Durdur
Wire.endTransmission();
gecikme(300);
}
boşluk döngüsü()
{
imzasız int veri[2];
// I2C iletişimini başlatır
Wire.beginTransmission(Adr);
// Veri kaydını seç
Wire.write(0x00);
// I2C iletimini durdur
Wire.endTransmission();
// 2 bayt veri iste
Wire.requestFrom(Adr, 2);
// 2 bayt veri oku
// temp msb, temp lsb
if(Wire.available() == 2)
{
data[0] = Wire.read();
data[1] = Wire.read();
}
// Veriyi 12 bit'e çevir
int temp = ((veri[0] * 256) + veri[1]) / 16.0;
if(sıcaklık > 2047)
{
sıcaklık -= 4096;
}
kayan nokta cTemp = sıcaklık * 0.0625;
kayan nokta fTemp = cTemp * 1.8 + 32;
// Verileri seri monitöre çıkar
Serial.print("Sıcaklık Santigrat Olarak: ");
Seri.print(cTemp);
Serial.println("C");
Serial.print("Sıcaklık Fahrenhayt Olarak: ");
Seri.print(fTemp);
Serial.println("F");
gecikme(500);
}
Tel kitaplığında Wire.write() ve Wire.read() komutları yazmak ve sensör çıkışını okumak için kullanılır.
Serial.print() ve Serial.println(), sensörün çıktısını Arduino IDE'nin seri monitöründe görüntülemek için kullanılır.
Sensörün çıkışı yukarıdaki resimde gösterilmektedir.
Adım 4: Uygulamalar:
MCP9803, kişisel bilgisayar ve çevre birimleri, sabit disk sürücüleri, çeşitli eğlence sistemleri, ofis sistemleri ve veri iletişim sistemlerini içeren geniş bir cihaz alanında kullanılabilir. Bu sensör çeşitli karmaşık sistemlere dahil edilebilir.
Önerilen:
STS21 ve Arduino Nano Kullanarak Sıcaklık Ölçümü: 4 Adım
STS21 ve Arduino Nano Kullanarak Sıcaklık Ölçümü: STS21 Dijital Sıcaklık Sensörü, üstün performans ve yerden tasarruf sağlayan bir ayak izi sunar. Dijital, I2C formatında kalibre edilmiş, doğrusallaştırılmış sinyaller sağlar. Bu sensörün üretimi, üstün özelliklere atfedilen CMOSens teknolojisine dayanmaktadır
ADT75 ve Arduino Nano Kullanarak Sıcaklık Ölçümü: 4 Adım
ADT75 ve Arduino Nano Kullanarak Sıcaklık Ölçümü: ADT75, son derece hassas, dijital bir sıcaklık sensörüdür. Bir bant aralığı sıcaklık sensöründen ve sıcaklığın izlenmesi ve sayısallaştırılması için 12 bitlik bir analogdan dijitale dönüştürücüden oluşur. Son derece hassas sensörü, onu benim için yeterince yetkin kılıyor
HIH6130 ve Arduino Nano Kullanarak Nem ve Sıcaklık Ölçümü: 4 Adım
HIH6130 ve Arduino Nano Kullanarak Nem ve Sıcaklık Ölçümü: HIH6130, dijital çıkışlı bir nem ve sıcaklık sensörüdür. Bu sensörler, ±%4 RH doğruluk seviyesi sağlar. Endüstri lideri uzun vadeli kararlılık, gerçek sıcaklık kompanzasyonlu dijital I2C, Endüstri lideri güvenilirlik, Enerji verimliliği ile
MCP9803 ve Parçacık Fotonu Kullanarak Sıcaklık Ölçümü: 4 Adım
MCP9803 ve Partikül Fotonu Kullanarak Sıcaklık Ölçümü: MCP9803, 2 telli yüksek hassasiyetli bir sıcaklık sensörüdür. Sıcaklık algılama uygulamalarını kolaylaştıran, kullanıcı tarafından programlanabilen kayıtlarla yapılandırılmışlardır. Bu sensör, son derece gelişmiş çok bölgeli sıcaklık izleme sistemi için uygundur
MCP9803 ve Raspberry Pi Kullanarak Sıcaklık Ölçümü: 4 Adım
MCP9803 ve Raspberry Pi Kullanarak Sıcaklık Ölçümü: MCP9803, 2 telli yüksek hassasiyetli bir sıcaklık sensörüdür. Sıcaklık algılama uygulamalarını kolaylaştıran, kullanıcı tarafından programlanabilen kayıtlarla yapılandırılmışlardır. Bu sensör, son derece gelişmiş çok bölgeli sıcaklık izleme sistemi için uygundur