Terrariumbewässerung

HMIP lokale Installation

Moderator: Co-Administratoren

Chris88
Beiträge: 10
Registriert: 18.12.2023, 21:55
System: CCU

Terrariumbewässerung

Beitrag von Chris88 » 18.12.2023, 22:23

Hallo,
ich habe folgendes Anliegen. Leider habe ich dazu nichts passendes hier im Forum gefunden. Ich habe eine kleine Dosierpumpe die mein Terrarium bewässern/befeuchten soll, und zwar in Abhängigkeit einer Systemvariable. Die Systemvariable hat fünf Zustände: 0%, 25%, 50%, 75% und 100%.
Bei 0% soll die Pumpe nie laufen,
bei 25% alle zwei Stunden,
bei 50% jede Stunde,
bei 75% jede halbe Stunde,
und bei 100% alle 15 Minuten.
Die Pumpe (Schaltaktor HmIP-PCBS) soll jeweils für eine Minute an sein.
Ich hab das schon mal hinbekommen, allerdings für jeden Prozentwert ein eigenes Programm erstellt. Da ich aber mehrere dieser Pumpen habe, werden das zu viele Programme. Ich möchte für jede Pumpe alles in einem Programm haben.
Kann mir da jemand weiterhelfen mit einem Skript? Mit dem normalen Zeitsteuerungsmodul wird's vermutlich nicht funktionieren. Hab mich schon den ganzen Tag damit beschäftigt, bekomme es aber nicht hin. Und beim Skripten bin ich raus.

Benutzeravatar
Roland M.
Beiträge: 9895
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 256 Mal
Danksagung erhalten: 1411 Mal

Re: Terrariumbewässerung

Beitrag von Roland M. » 18.12.2023, 22:53

Hallo und willkommen im Forum!
Chris88 hat geschrieben:
18.12.2023, 22:23
Ich habe eine kleine Dosierpumpe die mein Terrarium bewässern/befeuchten soll, und zwar in Abhängigkeit einer Systemvariable. Die Systemvariable hat fünf Zustände: 0%, 25%, 50%, 75% und 100%.
Bei 0% soll die Pumpe nie laufen,
bei 25% alle zwei Stunden,
bei 50% jede Stunde,
bei 75% jede halbe Stunde,
und bei 100% alle 15 Minuten.
Die Pumpe (Schaltaktor HmIP-PCBS) soll jeweils für eine Minute an sein.
Ich würde das mit einer zusätzlichen Systemvariablen lösen, ich nenne sie einmal SV_Start_Bewässerung (und deine vorhandene SV_Werteliste):

Code: Alles auswählen

WENN SV_Start_Bewässerung = wahr
UND SV_Werteliste = 100%
DANN Aktor für eine Minute ein
     SV_Start_Bewässerung sofort falsch
     SV_Start_Bewässerung verzögert um 15 min wahr
SONSTWENN SV_Werteliste = 75%
DANN Aktor für eine Minute ein
     SV_StartBewässerung sofort falsch
     SV_Start_Bewässerung verzögert um 30 min wahr
SONSTWENN SV_Werteliste = 50%
DANN Aktor für eine Minute ein
     SV_StartBewässerung sofort falsch
     SV_Start_Bewässerung verzögert um 60 min wahr
SONSTWENN SV_Werteliste = 25%
DANN Aktor für eine Minute ein
     SV_StartBewässerung sofort falsch
     SV_Start_Bewässerung verzögert um 240 min wahr
SONST
     SV_StartBewässerung sofort falsch
     SV_Start_Bewässerung verzögert um 30 min wahr
Bei der letzten Bedingung (0%) kannst du dir selber überlegen, wann die nächste Überprüfung stattfinden soll.

Alternativ kannst du auch einen CUxD-Timer nach dem gleichen Schema verwenden. Das hätte den Vorteil, dass der CUxD-Timer den Neustart der CCU "überlebt" und zur entsprechenden Zeit wieder überprüft.

Bei so einem Projekt würde ich aber auch über das Wohlergehen der anwesenden "Bevölkerung" nachdenken, falls die CCU einmal ausfallen sollte. Was passiert, wenn...


Roland
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

Benutzeravatar
Henke
Beiträge: 1538
Registriert: 27.06.2022, 20:51
System: CCU
Hat sich bedankt: 144 Mal
Danksagung erhalten: 313 Mal

Re: Terrariumbewässerung

Beitrag von Henke » 18.12.2023, 23:08

Haben alle Pumpen den gleichen Prozentsatz?

Chris88
Beiträge: 10
Registriert: 18.12.2023, 21:55
System: CCU

Re: Terrariumbewässerung

Beitrag von Chris88 » 18.12.2023, 23:15

Vielen Dank für die schnelle Antwort. Werde es morgen mal ausprobieren.
Der anwesenden Bevölkerung sollte nichts passieren. Das ist nur eine Dosierpumpe, da tropft es nur raus. Angetrieben von einem Schrittmotor durch einen Arduino Nano. Sollte der HmIP-PCBS Schaltaktor mal hängenbleiben und nicht abschalten erledigt das der Arduino. Das Programm auf dem Arduino läuft nur ca. 45 Sekunden und geht dann aus.

Chris88
Beiträge: 10
Registriert: 18.12.2023, 21:55
System: CCU

Re: Terrariumbewässerung

Beitrag von Chris88 » 18.12.2023, 23:16

Henke hat geschrieben:
18.12.2023, 23:08
Haben alle Pumpen den gleichen Prozentsatz?
Leider nein. Eine pumpe soll z.B. auf 50% laufen und eine andere auf 75%.

Benutzeravatar
Henke
Beiträge: 1538
Registriert: 27.06.2022, 20:51
System: CCU
Hat sich bedankt: 144 Mal
Danksagung erhalten: 313 Mal

Re: Terrariumbewässerung

Beitrag von Henke » 18.12.2023, 23:27

Dann kannst du Rolands Lösung vergessen.

Ich würde alle 15 Minuten ein Script laufen lassen und da dann anhand der Uhrzeit die Pumpen starten.

100% immer Starten
75% und Uhrzeit Minute == 0 oder == 30 Starten
50% und Uhrzeit Minute == 0 Starten
25% und Uhrzeit Stunde%2 wahr Starten
0% nix mit Starten

Die nächste Frage wäre, wie häufig werden diese % geändert.
Selten, dann im Script festlegen.
Häufig, dann Systemvariable mit Pumpe verknüpfen und über die Webui steuern.
Das wird jedoch im Script wieder aufwendiger.

Chris88
Beiträge: 10
Registriert: 18.12.2023, 21:55
System: CCU

Re: Terrariumbewässerung

Beitrag von Chris88 » 18.12.2023, 23:47

Henke hat geschrieben:
18.12.2023, 23:27
Dann kannst du Rolands Lösung vergessen.

Ich würde alle 15 Minuten ein Script laufen lassen und da dann anhand der Uhrzeit die Pumpen starten.

100% immer Starten
75% und Uhrzeit Minute == 0 oder == 30 Starten
50% und Uhrzeit Minute == 0 Starten
25% und Uhrzeit Stunde%2 wahr Starten
0% nix mit Starten

Die nächste Frage wäre, wie häufig werden diese % geändert.
Selten, dann im Script festlegen.
Häufig, dann Systemvariable mit Pumpe verknüpfen und über die Webui steuern.
Das wird jedoch im Script wieder aufwendiger.
Die Prozent werden nur alle paar Tage mal geändert. Wenn ich bemerke dass es z.B. mit 75% zu feucht ist, dann muss ich auf 50% runtergehen.

Benutzeravatar
Henke
Beiträge: 1538
Registriert: 27.06.2022, 20:51
System: CCU
Hat sich bedankt: 144 Mal
Danksagung erhalten: 313 Mal

Re: Terrariumbewässerung

Beitrag von Henke » 19.12.2023, 00:09

Dann dürftest du die entsprechenden Script Schnipsel bestimmt finden. Als Starthilfe:

Code: Alles auswählen

integer Minute = system.Date().StrValueByIndex(":",1);
integer Stunde = system.Date().StrValueByIndex(":",0);
var ungerade = Stunde.ToInteger()%2;
WriteLine( system.Date() # " " # Stunde # " " # Minute # " " # ungerade );

! 100%
! Hier die Pumpen, die alle 15 Minuten laufen
if ( true )
{
! Startbefehl, mit Laufdauer
}

! 75%
! Hier die Pumpen, die alle 30 Minuten laufen
if ( Minute == 30 )
{
! Startbefehl, mit Laufdauer
}

! 50%
! Hier die Pumpen, die alle 30 Minuten laufen
if ( (Minute == 0 ) || (Minute == 30 ) )
{
! Startbefehl, mit Laufdauer
}

! 25%
! Hier die Pumpen, die alle 30 Minuten laufen
if ( Minute == 0  )
{
! Startbefehl, mit Laufdauer
}

! 0%
! Startbefehl auskommentieren
 

Benutzeravatar
Roland M.
Beiträge: 9895
Registriert: 08.12.2012, 15:53
System: CCU
Wohnort: Graz, Österreich
Hat sich bedankt: 256 Mal
Danksagung erhalten: 1411 Mal

Re: Terrariumbewässerung

Beitrag von Roland M. » 19.12.2023, 00:55

Henke hat geschrieben:
18.12.2023, 23:27
Dann kannst du Rolands Lösung vergessen.
Oh, danke für die nette Beurteilung.

Ich gehe immer noch davon aus, dass es EINE Pumpe ist, wie aus dem Ursprungsposting ganz klar hervorgeht.
Und selbst wenn es mehrere Pumpen wären, würde mein Ansatz auch funktionieren.

Henke hat geschrieben:
19.12.2023, 00:09
Dann dürftest du die entsprechenden Script Schnipsel bestimmt finden.
Passt ja ganz hervorragend zur Aussage des OP:
Chris88 hat geschrieben:
18.12.2023, 22:23
Und beim Skripten bin ich raus.
Zur leichteren Hilfestellung bitte unbedingt beachten:
  • Bezeichnung (HM-... bzw. HmIP-...) der betroffenen Geräte angeben (nicht Artikelnummer)
  • Kurzbeschreibung des Soll-Zustandes (Was soll erreicht werden?)
  • Kurzbeschreibung des Ist-Zustandes (Was funktioniert nicht?)
  • Fehlermeldungen genau abschreiben, besser noch...
  • Screenshots von Programmen, Geräteeinstellungen und Fehlermeldungen (direkt als jpg/png) einstellen!

-----------------------------------------------------------------------
1. CCU2 mit ~100 Geräten (in Umstellung auf RaspberryMatic-OVA auf Proxmox-Server)
2. CCU2 per VPN mit ~50 Geräten (geplant: RaspberryMatic auf Charly)
3. CCU2 per VPN mit ~40 Geräten (geplant: RaspberryMatic auf CCU3)
CCU1, Test-CCU2, Raspi 1 mit kleinem Funkmodul, RaspberryMatic als VM unter Proxmox, Access Point,...

Chris88
Beiträge: 10
Registriert: 18.12.2023, 21:55
System: CCU

Re: Terrariumbewässerung

Beitrag von Chris88 » 19.12.2023, 07:06

Es sind zwar zwei Pumpen, es soll aber EIN Programm für EINE Pumpe geben. Also passt das von Roland auch.

Antworten

Zurück zu „HomeMatic IP mit CCU“