Arduino ve OpenTherm Adaptör ile Akıllı Kombi / Kazan Kontrolü

👤 Yazar: admin 📅 Tarih: 28.10.2026 21:13 👁️ Görüntüleme: 1

Arduino ve OpenTherm Adaptör ile Akıllı Kombi / Kazan Kontrolü

OpenTherm protokolü, kombiler (boiler) ile oda termostatları veya kontrol üniteleri arasında çift yönlü dijital iletişim sağlayan standart bir protokoldür. Standart aç/kapa termostatların aksine, kombinin su sıcaklığını modüle etmesine, anlık gaz tüketimini, su basıncını ve arıza kodlarını okumaya olanak tanır. OpenTherm Adaptör kartı, kombinin yüksek voltajlı bus hattı ile mikrokontrolcünün (Arduino) 5V/3.3V mantık seviyeleri arasında opto-izolasyonlu güvenli bir köprü kurar.

Arduino ve OpenTherm Adaptör Bağlantı Şeması


1. Donanım Pin Eşleşme Tablosu

Görseldeki devre şemasına göre Arduino Uno, OpenTherm Adaptör ve Kombi (Boiler) arasındaki bağlantı haritası şu şekildedir:

Bileşen / Hat Adaptör / Kombi Terminali Arduino Uno Karşılığı Açıklama / Kablo Rengi
Güç ve Toprak 5V 5V Güç Beslemesi (Kırmızı Kablo)
GND GND Toprak Hattı (Siyah Kablo)
INT / RX (Interrupt) Pin 2 Kesme / Veri Giriş Hattı (Sarı Kablo)
Sinyal / Kontrol OUT / TX Pin 3 Veri Çıkış Hattı (Sarı Kablo)
Kombi Bağlantısı (OT) OT1 ve OT2 (Klemens) Kombi Termostat Girişi Çift Damarlı Kablo (Mavi Kablolar)
OpenTherm Hat Bağlantı Notu:
Kombinin arka panelinde yer alan termostat klemensleri (genellikle jumper ile köprülenmiştir) sökülerek OpenTherm adaptörünün üzerindeki OT1 ve OT2 klemenslerine bağlanır. Bu hat polaritesizdir ancak doğru temas sağlamak önemlidir.

2. C++ Arduino Kodu (OpenTherm Kütüphanesi ile Kombi Sıcaklık Ayarı)

Aşağıdaki C++ kodu, kombiye hedef su sıcaklığı göndermek ve kombiden gelen verileri okumak için popüler OpenTherm kütüphanesini kullanır:

C++ / Arduino Uno OpenTherm Boiler Control Example

#include <arduino.h>
#include <opentherm.h>

// Pin Tanımlamaları (Şemaya Göre)
const int inPin = 2;  // Interrupt pini (Sarı Kablo - Pin 2)
const int outPin = 3; // Sinyal çıkış pini (Sarı Kablo - Pin 3)

// OpenTherm Nesnesini Oluştur (false: Master modu)
OpenTherm ot(inPin, outPin, false);

void setup() {
  Serial.begin(115200);
  delay(500);

  // OpenTherm protokolünü başlat
  ot.begin();
  Serial.println("\nOpenTherm Kombi Kontrol Sistemi Başlatıldı.");
}

void loop() {
  // Kombiye istenen kalorifer su sıcaklığını gönder (Örn: 45.0 °C)
  float requestedWaterTemperature = 45.0;
  
  // Kombiyi çalıştır ve hedef sıcaklığı ilet
  unsigned long response = ot.setBoilerStatus(true, true, requestedWaterTemperature);
  
  if (ot.isResponseValid(response)) {
    Serial.println("Kombi İletişimi Başarılı.");
    
    // Kombiden gelen dönüş suyu sıcaklığını oku
    float returnTemperature = ot.getReturnTemperature();
    Serial.print("Dönüş Suyu Sıcaklığı: ");
    Serial.print(returnTemperature);
    Serial.println(" °C");

    // Kombi su basıncını oku
    float pressure = ot.getPressure();
    Serial.print("Kombi Su Basıncı: ");
    Serial.print(pressure);
    Serial.println(" bar");
    
  } else {
    Serial.println("Hata: Kombiden yanıt alınamadı veya bağlantı kopuk!");
  }

  delay(10000); // Her 10 saniyede bir veri alışverişi yap
}


Kütüphaneyi Arduino üzerinden eklemeyi unutmayınız. Ihor Melnyk opentherm kütüphanesi ekli olmalıdır.



💬 Yorumlar

Henüz yorum yapılmamış. İlk yorumu siz yapın!

Bir Yorum Bırakın

Güvenlik Kontrolü:

Yenidir.com
↑ Sayfa Başı
📞 İletişim ✉ E-Posta Gönder 🟥 YouTube
© 2026 Yenidir.com
Yenidir CMS V0.1