İçeriğe geç

Soba - yanma kontrolü

Okuma süresi 8 dakika

Güncellendi - 3 Şubat 2026

Modern bir odun sobası genellikle entegre bir yanma kontrol sistemine sahiptir. Eğer hala bu otomatik sisteme sahip olmayan bir odun sobanız varsa, Smarthome (Raspberry Pi) ile birlikte kendi kontrol sisteminizi kurabilirsiniz.

Pelet sobaları dışında odun yüklemesini otomatikleştirmek henüz mümkün olmasa bile, otomasyon daha eşit bir yanma, sabit sıcaklıklar ve daha yüksek verimlilikle 30 %'ye kadar daha düşük odun tüketimi sağlar.

Eğer hemen „cesaret edemezseniz“, bir zamanlar benim de aynı şekilde hissettiğimi söyleyebilirim. Ancak konuya ve RaspberryMatic'in Raspberry Pi üzerinde sunduğu olanaklara daha yakından bakarsanız, örneğin, kısa sürede „yapabileceğinize“ ikna olacaksınız!

Ve hayatta sık sık olduğu gibi: birlikte daha iyi! Hadi üstesinden gelelim!

Teori

Alev deseninden ve alevin renginden çıplak gözle görebildiklerimiz, yanma odasının yaklaşık 20 cm yukarısında baca gazı borusuna vidalanmış bir yüksek sıcaklık sensörü tarafından algılanır.

Yaklaşık 200 °C'de tutulması gereken sıcaklığa bağlı olarak, daha önce manuel olarak yapılması gereken besleme havası kapağını açmak ve kapatmak için Raspberry Pi üzerindeki basit bir programı kullanır - eğer fırına bakıyorsanız ...

Prensip olarak basit bir mekanizma. Mekanizma, kelimenin tam anlamıyla, burada bir step motor tarafından hareket ettirilen doğrusal bir tahrik aracılığıyla gerçekleştirilir. Gerçek sıcaklık değerinin ayar noktası değeriyle karşılaştırılmasına bağlı olarak step motor, sıcaklık çok düşükse besleme havasını artırması veya azaltması gerektiği bilgisini alır. Buna göre, doğrusal kızağa mekanik olarak bağlı olan besleme havası damperinin (manuel) çalıştırma kolu ileri veya geri hareket ettirilir ve damper açılır veya kapatılır.

RaspberryMatic bir step motoru doğrudan adresleme imkanı sunmadığından, bir step motor kontrolörü bağlantısı sunan ve böylece aynı motorun kontrolünü devralabilen küçük bir bilgisayar olan ESP32-IDF ile idare ediyoruz.

RaspberryMatic ve ESP32-IDF arasındaki iletişim, ESP32-IDF'ye zaten entegre edilmiş olan WLAN üzerinden gerçekleşir. ESP32-IDF, C++, Arduino IDE'de programlanmıştır ve birkaç parametreyi değiştirdikten sonra kolay aktarım için bu makaleye dahil edilmiştir.

Doğrusal step motorun sıcaklığını ve konumlandırmasını kaydetmek için program da kolay aktarım için sağlanmıştır.

Alışveriş listesi

  • Raspberry Pi 4 Model B Gövde, fan, güç kaynağı ünitesi ile set - yaklaşık 95 Euro
  • SD kart 16 GB (RaspberryMatic kurulumu için) - yaklaşık 10,- Euro
  • RaspberryMatic (İndir) - ücretsiz
    (ile Raspberry Pi Fırıncı (Mac) veya Raspberry Pi Görüntüleyici (Windows) SD karta kopyalayın;
    Değişkenler oluşturun Burning_status (Tip Karakter dizisi); Burning_flap_actual (Tip Sayı); Burn_off_flap_desired (Tip Sayı); ISD-ID der drei Variablen ermitteln und im Code unter VAR_STATUS, VAR_IST und VAR_SOLL eintragen (Ermitteln der ISE-ID -> „http://IP_RaspberrPi:8181/rega.exe?x=dom.GetObject(%22Variablen_Name%22).ID()“ – das Sonuç sondan bir önceki çıktı satırında bulunabilir, örneğin „19827“)
  • ESP32 Geliştirme Kartı (örn. ESP32 DevKit V1) - yaklaşık 12,- Euro
    Arduino IDE 2.x İndir (Mac) (Pencereler)
  • CL86Y Step motor sürücüsü (veya TB6600)*
  • NEMA 17 step motor (200 adım/devir)* - Set yaklaşık 80,- Euro
  • Doğrusal tahrik 100 mm, 150 mm yukarıda belirtilen step motor tipi için uygun yaklaşık 50,- Euro
  • 2x limit anahtarı (mekanik) - yaklaşık 4,- Euro
  • 48V DC güç kaynağı ünitesi (12A motor için) - yaklaşık 39,- Euro
  • Güç kaynağı ünitesi 5V DC (ESP32 için, örn. USB) - yaklaşık 7,- Euro
  • ELV PT1000 yüksek sıcaklık sensörü 4 telli Art. No. 258570 - yaklaşık 24,- Euro
  • ELV platin sıcaklık sensörü arayüzü - Sanat. No. 162126 - yaklaşık 45,- Euro
  • Pirinç boru bağlantı parçası M10 x 6 mm PT1000 sıcaklık sensörü için - yaklaşık 4,- Euro

Toplamda yaklaşık 370 avroya mal olan bu ürün, genellikle 750 ila 1.500 avroya mal olan bir güçlendirme kitine (eğer soba için varsa) tam teşekküllü ve aynı zamanda çok ucuz bir alternatiftir!

Hazırlıklar

RaspberryMatic'in Raspberry Pi 4 B için SD karta yüklenmesi şu şekildedir Burada kit satın alınmamışsa muhafaza montajı da dahil olmak üzere ayrıntılı olarak açıklanmıştır.

ESP32 - Kurulum

macOS

Adım 1: Arduino IDE'yi yükleyin

  1. İndirin:
    • Git: https://www.arduino.cc/en/software
    • macOS için „Arduino IDE 2.x“ indirin
    • Seçin .dmg Intel için veya .dmg Apple Silicon için (M1/M2/M3)
  2. Kurulum:
    • .dmg Dosya aç
    • Arduino IDE'yi program klasörüne sürükleyin
    • Arduino IDE'yi başlatın

ESP32 Kart Desteğini Yükleme

  1. Açık Arduino IDE
  2. Açık Kurul Müdürü:
    • Menü: Arduino IDEAyarlar (veya Cmd + ,)
    • URL'leri „Ek pano yöneticisi URL'leri“ altına girin:
    https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
    • Tıklayınız TAMAM.
  3. ESP32 kartlarını takın:
    • Soldaki pano simgesine tıklayın (veya Menü çubuğu AraçlarYönetim KuruluKurullar Müdürü)
    • Arayın: esp32
    • Yükle: „Espressif Systems tarafından esp32“ (Sürüm 2.0.17 veya daha yeni)
    • Kurulum tamamlanana kadar bekleyin (5-10 dakika sürebilir)

USB sürücüsü (OS 10.14'e kadar)

ESP32 tanınmazsa:

  1. İndirin: https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
  2. Dosya: macOS_VCP_Driver.zip İndir
  3. Mac'i yükleme ve yeniden başlatma

CH340 çipi için:

ESP32'nin Bağlanması

  1. ESP32'yi USB üzerinden bağlayın
  2. Kontrol noktası:
    • Arduino IDE Menü çubuğu: AraçlarLiman
    • Şuna benzer bir bağlantı noktası seçin:
      • /dev/cu.usbserial-0001 veya
      • /dev/cu.SLAB_USBtoUART veya
      • /dev/cu.wchusbserial*

Yönetim kurulu seçin

  1. Arduino IDE:
    • Menü çubuğu AraçlarYönetim Kuruluesp32„ESP32 Dev Modülü“
  2. Ayarlar:
    • Yükleme Hızı: 115200
    • Flaş Frekansı: 80MHz
    • Flaş Modu: QIO
    • Flaş Boyutu: 4MB (32Mb)
    • Bölme Şeması: Spiff'lerle birlikte varsayılan 4MB

Test yüklemesi

  1. Örnek kodu açın:
    • Menü çubuğu DosyaÖrnekler01.temel bilgilerGöz kırpma
  2. Yükleme kodu:
    • Yükle düğmesine tıklayın (→)
    • „Bağlanıyor...“ görünene kadar bekleyin
    • „Bağlanıyor...“ kilitlenirse: ESP32 üzerindeki BOOT düğmesine basın ve basılı tutun
  3. Başarılar:
    • „RTS pini üzerinden sert sıfırlama...“ = Yükleme başarılı!
    • ESP32 üzerindeki LED yanıp sönmelidir

PENCERELER

Arduino IDE'yi yükleyin

  1. İndirin:
    • Git: https://www.arduino.cc/en/software
    • Windows için „Arduino IDE 2.x“ İndirin
    • Seçin .exe Yükleyici
  2. Kurulum:
    • Yükleyiciyi çalıştırın (yönetici olarak)
    • Tüm seçenekleri etkin bırakın
    • Kurulumu tamamlayın

ESP32 Kart Desteğini Yükleme

  1. Açık Arduino IDE
  2. Board Manager'ı yapılandırın:
    • Menü çubuğu DosyaTercihlerURL'leri „Ek pano yöneticisi URL'leri“ altına girin:
    https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
    • Tıklayınız TAMAM.
  3. ESP32 kartlarını takın:
    • Menü çubuğu AraçlarYönetim KuruluKurullar Müdürü
    • Arayın: esp32
    • Yükle: „Espressif Systems tarafından esp32“ (Sürüm 2.0.17+)
    • Kurulum bitene kadar bekleyin

USB sürücüsünü yükleme

Windows genellikle ESP32'yi otomatik olarak TANIMAZ!

CP2102/CP2104 çipi için (en yaygın):
  1. İndirin:
  2. Kurulum:
    • ZIP paketini aç
    • CP210xVCPInstaller_x64.exe Yönetici olarak çalıştır
    • Kurulumu tamamlayın
    • Windows'u Yeniden Başlat
CH340/CH341 çipi için:
  1. İndirin:
  2. Kurulum:
    • ZIP paketini aç
    • CH341SER.EXE Yönetici olarak çalıştır
    • „KUR“ üzerine tıklayın“
    • Windows'u Yeniden Başlat
Çip tipini öğrenin:
  • ESP32'nin Bağlanması
  • Aygıt Yöneticisini açın: Windows + XAygıt Yöneticisi
  • Bağlantılar (COM ve LPT) açılmak
  • Arayın:
    • „Silicon Labs CP210x...“ = CP2102
    • „USB-SERIAL CH340“ = CH340
    • „SLAB_USBtoUART“ = CP2102

ESP32'yi bağlayın ve bağlantı noktasını kontrol edin

  1. ESP32'yi USB üzerinden bağlayın
  2. Limanı bulun:
    • Menü çubuğu AraçlarLiman
    • Seçin: COM3, COM4, COM5 vs.
    • (sayı sisteme bağlı olarak değişir)

Port görünmüyor mu? → Sürücü yüklü değil veya yanlış sürücü!

Yönetim kurulu seçin

  1. Seçim kurulu:
    • Menü çubuğu AraçlarYönetim Kuruluesp32„ESP32 Dev Modülü“
  2. Yükleme ayarları:
    • Yükleme Hızı: 115200
    • Flaş Frekansı: 80MHz
    • Flaş Modu: QIO
    • Flaş Boyutu: 4MB (32Mb)
    • Bölme Şeması: Spiff'lerle birlikte varsayılan 4MB

Test yüklemesi

  1. Yük örneği:
    • Menü çubuğu DosyaÖrnekler01.temel bilgilerGöz kırpma
  2. Yükle:
    • Yükle düğmesine tıklayın (→)
    • „Bağlanıyor...“ için muhtemelen. BOOT düğmesi ESP32 üzerinde tutun
  3. Başarılar:
    • „Sert sıfırlama...“ = ✅ Yükleme başarılı!

Yanma kontrolü için kütüphaneler

Otomatik olarak dahil edilir (ESP32 Çekirdek):

  • WiFi.h
  • HTTPClient.h
  • WebServer.h
  • Preferences.h
  • esp_task_wdt.h

Sorun Giderme

Sorun: „Bağlantı noktası bulunamadı“

Mac:

# Terminali açın ve kontrol edin:
ls /dev/cu.*

# Gösterilmelidir:
/dev/cu.usbserial-XXXX
/dev/cu.SLAB_USBtoUART

Pencereler:

  • Aygıt Yöneticisini Açın
  • Bağlantıları kontrol edin (COM ve LPT)
  • Sürücüyü yeniden yükleyin
  • Windows'u Yeniden Başlat

„Bağlanıyor...“ askıda kalıyor

Çözüm:

  1. BOOT düğmesi ESP32'ye basın ve basılı tutun
  2. Ardından yükle düğmesine tıklayın
  3. „Yazılıyor...“ görüntülenene kadar BOOT düğmesini basılı tutun
  4. Serbest bırakma düğmesi

Alternatif:

  • EN düğmesine kısaca basın (sıfırlama)
  • Sonra tekrar yüklemeyi deneyin

„Derleme hatası“

Yaygın nedenler:

  • Yanlış kart seçildi
  • ESP32 Kart Desteği yüklü değil
  • Kodda sözdizimi hatası

Çözüm:

  • Panoyu tekrar kontrol edin: ESP32 Dev Modülü
  • Board Manager'ı açın → esp32'yi yeniden yükleyin

Yükleme çalışıyor, ancak seri monitör boş

Çözüm:

  1. Baud hızını kontrol edin:
    • Kod: Serial.begin(115200);
    • Seri Monitör: Ayrıca 115200 Set
  2. Kontrol noktası:
    • Doğru COM bağlantı noktası seçildi mi?
  3. EN düğmesine basın:
    • Yüklemeden sonra sıfırla

İlk yüklemeden önce kontrol listesi

  • [ ] Arduino IDE yüklü
  • [ ] ESP32 Kart Desteği yüklü (Sürüm 2.0.17+)
  • [ ] USB sürücüsü yüklü (Windows!)
  • [ ] USB üzerinden bağlı ESP32
  • [ ] Arduino IDE'de görünen port
  • [ ] Kart: „ESP32 Dev Modülü“ seçildi
  • [ ] Yükleme Hızı: 115200
  • [ ] Flaş Boyutu: 4MB
  • [ ] Seri Monitör Baud hızı: 115200
  • [ ] Yönlendirici NTP sürümü

NTP sürümü

Bazı yönlendiriciler varsayılan olarak NTP paylaşımı olmadan yapılandırılmıştır, bu da NTP bağlantı noktası 123 üzerinden gelen isteklerin iletilmediği ve sonuç olarak adreslenen NTP sunucusundan hiçbir veri talep edilemeyeceği anlamına gelir.

Bu nedenle ilgili bir kural tanımlanmalıdır:

Öğrenme kaynakları

Resmi belgeler:

Kod yükle

  1. Dosyayı aç:
  2. WiFi'yi özelleştirin: const char* WIFI_SSID = "DEIN_WIFI"; const char* WIFI_PASSWORD = "DEIN_PASSWORT";
  3. XML-API belirtecini girin: const char* XML_API_TOKEN = "DEIN_TOKEN_HIER";
    XML API eklentisi RaspberryMatic'e yüklenmelidir. Daha sonra XML API eklentisinin ayarlarını aşağıdakilere tıklayarak değiştirebilirsiniz tokenregister.cgi bir belirteç oluşturulabilir. Belirteç gelecekteki tüm GUI girişleri için geçerlidir ve büyük ve küçük harflerden oluşan 16 karakterlik bir diziden oluşur. ESP32 kodunda uygun konuma yerleştirilmelidir.
  4. Yükle:
    • Doğrula (✓) → Kodu kontrol et
    • Yükle (→) → ESP32'ye yükle
  5. Seri Monitörü açın:
    • AraçlarSeri Monitör
    • Baud hızı: 115200 (ARAÇLAR menüsü altında görüntülenir - Yükleme Hızı: .... durduruldu)
    • Çıkışı izleyin!

Devreye alma

Başarılı kurulumdan sonra:

  1. WiFi bağlantısını test edin
  2. Yanma kontrol kodunu yükle
  3. Motor ve limit anahtarını bağlayın
  4. RaspberryMatic belirteci oluştur
  5. Test sistemi

ESP32 Kodu

Gerekli kod tamamen yorumlanmıştır ve bu nedenle izlenebilir ve gerekirse özelleştirilebilir. (İndir)

ESP32 GUI

GUI'de bu, egzoz gazı sıcaklığının damper açıklığına bağımlılığını belirlemek için test amacıyla manuel ve sürekli olarak ayarlanabilir.

Alev paterni gözlemlenir ve ilgili zamanda damper açıklığının görsel olarak „uygun“ yüzde değeri ayarlanır. RaspberryMatic'ten o anda okunan sıcaklık değeri, değişiklik için başlangıç değeri olarak damper açıklığının ayarlanan yüzde değerine atanır. Sıcaklık değeri, damper açıklığının bir sonraki görsel olarak „gerekli“ düzeltmesinden kaynaklanır.

Örneğin, 80%„ye açma için 150°C başlangıç noktası (...'den) ve 45%'ye indirgeme için 200°C değer olarak kabul edilirse, ilk DİĞER EĞER fonksiyonu altında gösterilen konstelasyon "Yanma kontrolü - Sıcaklık kontrolü“ resimde gösterildiği gibi.

„ESP32“ye henüz hiçbir çevre birimi bağlanmamışsa ve değişken "const bool TEST_MODE =" hala „gerçek“ duruyor.
„ olarak değiştirin„Yanlış“ test modunu iptal eder ve limit anahtarları tarafından tanımlanan başlangıç ve bitiş konumlarını belirlemek için bağlı motorun referans çalışmasını başlatır.

Canlı kayıt

Teşhis

Otomatik hata işleme

Olası hata durumlarını yakalamak, sürekli ve sorunsuz çalışma için çok önemlidir. Bu nedenle kod, hataları tanımak ve uygun önlemleri kullanarak düzeltmek için aşağıdaki rutinlerle donatılmıştır:

  • Yığın taşmasının tedavisi
  • Brownout algılama
  • SIFIR ile Bölme
  • Limit anahtarı acil kapatma
  • HTTP Hata İşleme
  • HTTP İstisna İşleme
  • Tamsayı taşma kontrolü
  • Bellek izleme
  • millis() Taşması
  • Motor alarmı algılama
  • Tercih Kurtarma
  • Pozisyon kısıtlamaları
  • Çok uzun engelleme işlemlerine karşı koruma
  • Telnet İstemci Yönetimi
  • Telnet NULL işaretçisi
  • İplik güvenliği
  • Jeton doğrulama
  • Watchdog zamanlayıcı
  • WiFi Otomatik Yeniden Bağlanma

RaspberryMatic - Programlar

Yanma kontrolü

Program

IF sistem durumu Burnup_Damper_Setpoint 0 ve 101'den küçük değer aralığında (yüzde)

SONRA SENARYO ... HEMEN

! ESP32 IP adresi (BURAYA ÖZELLEŞTİRİN!)
string esp32_ip = "IP_Adresse_ESP32_eingeben";

! Sistem değişkeninin mevcut değerini al
var sollwert = dom.GetObject("Abbrand_Klappe_Soll").Value();

! ESP32 geri çağrısı için URL oluşturun
string url = "http://" # esp32_ip # "/setSoll?value=" # sollwert;

! ESP32'yi arayın
string cmd = "wget -q -O /dev/null '" # url # "'";
system.Exec(cmd);

! Günlük çıktısı (isteğe bağlı, hata ayıklama için)
WriteLine("Burn-up: Send " # setpoint # "% to ESP32 " # esp32_ip);

Yanma kontrolü - Sıcaklık kontrolü

Program

EĞER cihaz seçimi "PT1000_temperature_sensor_flue_gas" GERÇEK sıcaklık için ... ila ...

SONRA Sistem durumu Burn-off_Damper_Setpoint HEMEN xxx*

AKSI TAKDIRDE ...

Burada, üstteki iki satır, gerekli tüm aralıklar kapsanana kadar bir DİĞER EĞER işlevi kullanılarak farklı sıcaklık aralıkları ve yüzde değerleri ile sürekli olarak tamamlanır.

* xxx„ kanat açıklığının istenen yüzde değeridir.

Lineer aktüatör ve limit anahtarı grubu

Klape mekanizmasının altındaki mevcut alana bağlı olarak, motorla donatılmış doğrusal tahrik altına monte edilir. Taşıyıcıya bir „çatal“ takılır ve bu çatal, elle çalıştırılan mekanizmanın içine geçtiği mil tarafından ileri veya geri hareket ettirilir.

„Kol“ genellikle hafifçe yukarı ve aşağı hareket ettirilebilecek şekilde tasarlanmıştır. „Çatalların“ uzunluğu buna göre ayarlanır, böylece kol hala manuel olarak hareket ettirilebilir ve tamamen AÇIK konuma itilebilir.

Bir yandan bu, elektronik kontrol henüz 100%'ye tam olarak ayarlanmamışsa yakıt eklerken maksimum hava akımı oluşturmaya yarar.

Öte yandan, örneğin bir güç kaynağı arızası durumunda tamamen mekanik çalışma seçeneği hala mevcuttur.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir