Die Regel, die das Pumpenrelais bei Sonnenuntergang einschaltet, lässt den Pi bei jeder Ausführung neu starten
Von Türkçe mit KI übersetzt ·
Ich habe eine Anlage für eine Gartenbewässerungs- und Tankbefüllungspumpe gebaut, nicht bei der Arbeit, sondern in meinem eigenen Zuhause.Raspberry Pi 3B, darauf eine fertige 4-Kanal-Relaiskarte (SRD-05VDC, auf der Karte steht Optokoppler). Das Relais steuert die Spule eines 230-V-Schützes, und das Schütz schaltet die 1,1-kW-Pumpe. Der Pi ist über MQTT mit Hermetry verbunden. Im Profil gibt es einen Befehl namens pump.set. Auf der Rules-Karte habe ich einen Auslöser nach Sonnenuntergang eingerichtet, er schaltet nach 20 Minuten wieder ab. Der Befehl kommt an, das Relais zieht an, die Pumpe läuft.Problem: Beim Abfallen des Relais (manchmal auch beim Anziehen) setzt sich der Pi zurück oder SSH friert ein. Im Log-Tab des Geräts in Hermetry sehe ich jeden Abend zur gleichen Uhrzeit keepalive_timeout und eine Minute später Connected. Eine SD-Karte ist auch schon einmal kaputtgegangen.Die Karte ist so angeschlossen: Pi 5V an Karte VCC, Pi GND an Karte GND, GPIO17 an IN1. Der JD-VCC-Jumper bleibt gesteckt. Die Schützspule wird über eine Verlängerung an derselben Steckdose wie der Pi versorgt.Warum passiert das, obwohl die Relaiskarte galvanisch getrennt ist? Könnte es ein Softwareproblem sein, dass das Python-Skript beim Empfang des Befehls abstürzt?
Bahçe sulama + depo dolum pompası için kurduğum düzenek var, iş yerinde değil, kendi evimde.
Raspberry Pi 3B, üstünde 4 kanallı hazır röle kartı (SRD-05VDC, üstünde optokuplör yazıyor), röle 230 V’luk bir kontaktörün bobinini sürüyor, kontaktör de 1,1 kW’lık pompayı. Pi Hermetry’ye MQTT ile bağlı, profilde pump.set diye bir komut var, Rules kartında gün batımına göre tetikleyici kurdum, 20 dakika sonra kapatıyor. Komut geliyor, röle çekiyor, pompa çalışıyor.
Sorun: röle bırakırken (bazen çekerken de) Pi resetleniyor ya da SSH donuyor. Hermetry’de cihazın Log sekmesinde her akşam aynı saatte keepalive_timeout ve bir dakika sonra Connected görüyorum. Bir kere SD kart da bozuldu.
Kart şöyle bağlı: Pi 5V → kart VCC, Pi GND → kart GND, GPIO17 → IN1. JD-VCC jumper’ı takılı duruyor. Kontaktör bobini Pi ile aynı prizdeki uzatmadan besleniyor.
Röle kartının izolasyonu varken bu neden oluyor? Yazılımsal bir şey mi acaba, komutu alınca Python betiği çöküyor olabilir mi?
Von Türkçe mit KI übersetzt ·
Ich denke, es liegt an der Software. Wenn im Command-Handler eine Exception auftritt, könnte das Skript abstürzen. Habt ihr mal im systemd-Log nachgesehen?
Bence yazılım. Komut handler’ında exception olunca betik düşüyor olabilir, systemd log’una baktınız mı?
Von Türkçe mit KI übersetzt ·
Ich habe in journalctl nachgesehen, das Skript gibt keinen Fehler aus, der Pi selbst wird zurückgesetzt, die Uptime startet wieder bei null.
journalctl’e baktım, betik hata vermiyor, Pi’nin kendisi resetleniyor, uptime sıfırlanıyor.
Von Türkçe mit KI übersetzt ·
Müsste nicht eine Diode parallel zur Schützspule liegen? Im Unterricht haben wir gelernt, dass an den Spulenanschlüssen eine Rückwärtsspannung entsteht.
Kontaktör bobinine paralel bir diyot koymak lazım değil mi? Derste bobin uçlarında ters gerilim oluşur diye görmüştük.
Von Türkçe mit KI übersetzt ·
Bei mir zu Hause ist fast dasselbe passiert, ein befreundeter Elektriker hat es gelöst, und ich habe dabei etwas gelernt. Es gibt zwei Probleme.Erstens der JD-VCC-Jumper. Solange er steckt, trennt der Optokoppler auf der Platine nichts: Die Relaisspule wird ebenfalls aus dem 5-V-Anschluss des Pi versorgt, und die Masse ist gemeinsam. Der Impuls, der beim Abfallen der Relaisspule entsteht, geht direkt auf die Versorgung des Pi. Vorgehen:
- Den Jumper entfernen.
- JD-VCC und die GND der Spulenseite der Platine von einem separaten 5-V-Netzteil versorgen (ein günstiges 5 V 1 A reicht).
- Vom Pi zur Platine sollen nur VCC (3,3 V ist auch möglich, für die LED des Optokopplers) und IN1 führen. Die GND des Pi nicht mit der GND der Spulenseite verbinden.
Zweitens die Schützspule. Die Diode, die Ayşe erwähnt hat, ist für DC-Spulen gedacht; deine ist 230 V AC, dort bringt eine Diode nichts. Parallel zu den Spulenanschlüssen einen RC-Snubber (100 Ω + 0,1 µF X2, als fertiges Modul erhältlich) oder einen Varistor setzen. Der Lichtbogen beim Abfallen erzeugt Störungen an den Relaiskontakten, und wenn die Leitungen am Pi vorbeiführen, gelangen sie auch dorthin.Auch wenn das erledigt ist: Den Pi 20–30 cm von den Relais entfernt aufstellen und die 230-V-Leitungen nicht zusammen mit den GPIO-Leitungen des Pi in demselben Kanal verlegen.Und auf Hermetry-Seite: Nach dem Senden des Befehls pump.set soll das Gerät den tatsächlichen Zustand der Pumpe melden (den Hilfskontakt des Schützes an einen Eingang anschließen und als pump.running senden). So zeigt die Regel auch bei einem Reset des Pi an, was das Gerät meldet, und nicht nur, was „gesendet“ wurde.
Evde neredeyse aynısını yaşadım, elektrikçi bir arkadaş çözdü, ben de öğrendim. İki sorun var.
Birincisi JD-VCC jumper’ı. Takılı olduğu sürece kart üzerindeki optokuplör hiçbir şeyi ayırmıyor: rölenin bobini de Pi’nin 5V’undan besleniyor ve toprak ortak. Röle bobini bırakırken oluşan darbe doğrudan Pi’nin beslemesine biniyor. Yapılacak:
- Jumper’ı çıkar.
- JD-VCC ve kartın bobin tarafı GND’si ayrı bir 5V adaptörden beslensin (ucuz bir 5V 1A yeter).
- Pi’den karta sadece VCC (3.3V da olur, optokuplör LED’i için) ve IN1 gitsin. Pi GND’sini bobin tarafının GND’sine bağlama.
İkincisi kontaktör bobini. Ayşe’nin dediği diyot DC bobin için; seninki 230 V AC, ona diyot olmaz. Bobin uçlarına RC snubber (100 Ω + 0,1 µF X2, hazır modül olarak satılıyor) ya da varistör koy. Bırakma anındaki ark röle kontağında parazit yapıyor ve kablolar Pi’nin yanından geçiyorsa oraya da sızıyor.
Bunlar bitince bile Pi’yi rölelerden 20-30 cm uzağa al, 230 V kabloları Pi’nin GPIO kablolarıyla aynı kanaldan geçirme.
Bir de Hermetry tarafında: pump.set komutunu gönderdikten sonra pompanın gerçek durumunu cihazın raporlamasını sağla (kontaktörün yardımcı kontağını bir girişe bağla, pump.running diye gönder). Böylece Pi resetlense de kural „gönderdim“ diye değil cihazın söylediğine göre görünür.
Von Türkçe mit KI übersetzt ·
Selim, danke, es waren tatsächlich beide Ursachen zusammen. Ich habe den Jumper entfernt und ein separates 5V-Netzteil angeschlossen sowie ein RC-Snubber-Modul direkt an die Spule gesetzt. Seit einer Woche zieht das Relais jeden Abend an und fällt wieder ab, und im Log-Tab gibt es kein einziges keepalive_timeout mehr. Ich hatte nie verstanden, wofür JD-VCC gedacht ist, und dachte, wegen der Optokoppler auf der Platine gäbe es eine Trennung. Außerdem habe ich die Idee mit dem Hilfskontakt umgesetzt, jetzt zeigt das Panel an, ob die Pumpe tatsächlich läuft.
Selim teşekkürler, ikisi birden sorunmuş. Jumper’ı çıkarıp ayrı 5V adaptör bağladım, bobine hazır RC snubber modülü taktım. Bir haftadır her akşam röle çekip bırakıyor, Log sekmesinde tek bir keepalive_timeout yok. JD-VCC’nin ne işe yaradığını hiç anlamamışım, kartta optokuplör var diye izolasyon var sanıyordum. Yardımcı kontak fikrini de uyguladım, artık panoda pompanın gerçekten çalışıp çalışmadığı görünüyor.
Von Türkçe mit KI übersetzt ·
Ich wusste nicht, dass an der AC-Spule keine Diode vorhanden sein wird, danke 🙏
AC bobine diyot olmayacağını bilmiyordum, sağ olun 🙏
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.
Mitdiskutieren
Melde dich an, um Fragen zu stellen und zu beantworten, hilfreiche Beiträge mit „Gefällt mir“ zu markieren und die Antwort zu kennzeichnen, die dein Problem gelöst hat. Jeder Beitrag bringt Punkte und Stufen.

