Bewässerungssteuerung - Vorstellung und Ideensammlung

Begonnen von funclass, 29 Oktober 2016, 22:22:41

Vorheriges Thema - Nächstes Thema

funclass

Hallo Ralf,

auch wenn du die Fragen schon selbst klären konntest, von mir noch ein paar Hinweise.

Ja, meine Ventile für die Regner werden von Relais01 bis Relais04 geschaltet (bald kommen noch 4 Weitere hinzu). Die Unterscheidung in Getriebe- und Sprühregner mache ich nur, da die Wassermenge unterschiedlich ist und ich somit unterschiedliche Einschaltdauern für die Kreise brauche.

Die Readings für den Tages- und Niederschlagszähler habe ich damals der Einfachheit halber am "Hauptschalter" angedockt. Diese könnten theoretisch auch irgendwo anders stehen.

Das manuelle Starten des Bewässerungszyklus über den "Pfeilbutton" funktioniert derzeit noch nicht, da auch dort die Logikabfrage für Tage und Niederschlagsmenge greift. Das muss ich noch umbauen. Da ich meine Bewässerung grade erweitere, werde ich das nach den Bauarbeiten gleich mal mit angehen.

Bisher habe ich leider noch keinen gefunden, der mich bei der Entwicklung eines Moduls für die Steuerungslogik unterstützt. Mir fehlen hierfür einfach weitergehende Perl-Kenntnisse. Damit könnte man die Einrichtung und Erweiterung nochmal ein ganzes Stück vereinfachen.

Bei weiteren Fragen einfach schreiben. Zu großen Dokumentationen komme ich derzeit nicht, aber neue Beiträge schaue ich mir immer zeitnah an und kann darauf auch reagieren.

Gruß Christian

tante ju

Zitat von: jensweber am 30 März 2017, 09:11:51
Hallo tante ju,

kannst Du vielleicht noch ein paar Bilder Deiner Anlage posten ? Würde mich schon sehr interessieren. :-)

Muß nächste Tage mal Fotos machen. Hab leider keine Fotos vom Aufbau gemacht. Reicht das? Sind aber nicht spannend. Eine UVT mit Sicherung, dem Steuermodul, 24V Netzteil für die Ventile und 3 Koppelrelais.

pnewman

Hallo Christian,

da ich erhebliche schwierigkeiten mit deiner steuerung hatte, da ich sie noch nicht ganz verstanden habe, habe ich diese wieder deinstalliert und erstmal etwas einfacheres installiert.


##Bewässerungssteuerung##
define Bewaesserung_DI DOIF ([Beregnung] eq "An")(set B_Garten_Pumpe on, set B_Garten_Rasen on)(set B_Garten_Rasen off)(set B_Garten_Beete on)(set B_Garten_Pumpe off, set B_Garten_Beete off)\
DOELSEIF ([[$SELF:mybegin,"00:00"]] and [Beregnung] eq "Automatik") (set B_Garten_Pumpe on, set B_Garten_Rasen on)(set B_Garten_Rasen off)(set B_Garten_Beete on)(set B_Garten_Pumpe off, set B_Garten_Beete off)\
DOELSEIF ([Beregnung] eq "Aus")(set B_Garten_Pumpe off, set B_Garten_Rasen off)(set B_Garten_Beete off)
attr Bewaesserung_DI cmdState Rasen,Kein,Beete,Ende|AutoRasen,Kein,AutoBeete,Autoende|Ausgeschaltet,Ausgeschaltet
attr Bewaesserung_DI do resetwait
attr Bewaesserung_DI group Bewässerung
attr Bewaesserung_DI icon humidity
attr Bewaesserung_DI readingList mybegin
attr Bewaesserung_DI room Garten
attr Bewaesserung_DI setList mybegin:time
attr Bewaesserung_DI sortby 1
attr Bewaesserung_DI wait 0,300,0,300:0,300,0,300
attr Bewaesserung_DI webCmd mybegin

##Hauptschalter##
define Beregnung dummy
attr Beregnung alias Bewässerung
attr Beregnung devStateIcon An:10px-kreis-gruen Aus:10px-kreis-rot
attr Beregnung eventMap on:An off:Aus
attr Beregnung group Bewässerung
attr Beregnung icon control_arrow_turn_right
attr Beregnung room Garten
attr Beregnung sortby 0
attr Beregnung webCmd on:off:Automatik


Mein Wasser kommt aus einem Brunnen mittels Pumpe (B_Garten_Pumpe)
Die Getrieberegner (B_Garten_Rasen)
Die Sprayer (B_Garten_Beete)


Jetzt habe ich etwas geforscht und gesehen das mein AgroWeather(Proplanta) über fc0_rain die Niederschlagsmenge für Heute angibt (Niederschlagsmenge (1 mm ~ 1 l/qm))
fc1_rain für Morgen usw.

Sobald Ich wieder mehr Zeit habe gehe Ich das Thema wieder an.
Ich muss noch eine Leitung für die 2. Sprayer (B_Garten_Beet_Rasen) legen.

Vielen Dank für deine Hilfe.

Gruß
Ralf
Raspberry Pi3B+ / Nano-Cul 868 - MAX!=Heizung, HM-Lan - Rollo+Licht, JeeLink-Clone 868 - LaCrosse, JeeLink-Clone 868 - PCA301, CUL 434 - IT-Steckdosen+Fernbedienung

pnewman

Hallo Christian,

Es ließ mir keine Ruhe, hier mal der abgeänderte Code:

"Hauptschalter"
define Beregnung dummy
attr Beregnung alias Bewässerung
attr Beregnung devStateIcon on:10px-kreis-gruen off:10px-kreis-rot
attr Beregnung eventMap on:on off:off
attr Beregnung group Bewässerung
attr Beregnung icon humidity
attr Beregnung room Garten
attr Beregnung sortby 0
attr Beregnung userReadings Automatik_Aktiv,Aktiver_Regner,Tage,Menge
attr Beregnung webCmd on:off

"Intensität"
define Beregnungsmenge dummy
attr Beregnungsmenge alias Intensität
attr Beregnungsmenge group Bewässerung
attr Beregnungsmenge icon weather_rain_gauge
attr Beregnungsmenge room Garten
attr Beregnungsmenge setList state:slider,0,1,100
attr Beregnungsmenge sortby 1
attr Beregnungsmenge stateFormat state%</br>GR: Getrieberegner min</br>SR: Spruehregner min
attr Beregnungsmenge userReadings Getrieberegner {60/100*ReadingsVal("Beregnungsmenge","state",100)}, Spruehregner {20/100*ReadingsVal("Beregnungsmenge","state",100)}, Last
attr Beregnungsmenge webCmd state

"Niederschlagszähler"
define Niederschlag_schreiben at *23:59:30 {\
my $aktuell = ReadingsVal('Beregnung', 'Menge', '0');;\
my $niederschlag = ReadingsVal('AgroWeather', 'fc0_rain', '0') + $aktuell;;\
my $tage = ReadingsVal('Beregnung', 'Tage', '0') + 1;;\
# wenn Niederschlagsmenge >= 10, dann Werte zurücksetzen\
{if ($niederschlag >= 10) {\
$niederschlag = 0;;\
$tage = 1;;\
}}\
fhem "setReading Beregnung Menge $niederschlag";;\
fhem "setReading Beregnung Tage $tage";;\
}
attr Niederschlag_schreiben group Bewässerung
attr Niederschlag_schreiben icon weather_rain_meter
attr Niederschlag_schreiben room Garten

"Bewässerungskreissteuerung"
define notify_Beregnungskreis notify Beregnung:Aktiver_Regner:.* {\
# Prüfen welcher Beregnungskreis aktiviert werden soll...\
my $beregnungskreis = ReadingsVal('Beregnung', 'Aktiver_Regner', '0');;\
{if ($beregnungskreis eq '0') {\
# alles ausschalten und ggf. Zeitgeber löschen\
fhem ("set B_Garten_Pumpe,B_Garten_Rasen,B_Garten_Beete,B_Garten_Beet_Rasen off");;\
{if (ReadingsVal('Beregnung', 'Automatik_Aktiv', '0') eq 'ja') {\
fhem ("setReading Beregnung Automatik_Aktiv nein");;\
fhem ("delete autoRegner.*");;\
fhem ("set Pushover_Client msg 'Beregnung' 'Automatikprogramm Rasenbewässerung beendet.' -1 ''");;\
# Beregnungsmenge wieder zurücksetzen\
my $menge_aktuell = ReadingsVal('Beregnungsmenge', 'state', '0');;\
my $menge_last = ReadingsVal('Beregnungsmenge', 'Last', '0');;\
fhem ("set Beregnungsmenge $menge_last");;\
fhem ("setReading Beregnungsmenge Last $menge_aktuell");;\
# Tageszähler zurücksetzen\
my $menge = ReadingsVal('Beregnung', 'Menge', '0') + ($menge_aktuell / 10);;\
fhem ("setReading Beregnung Menge $menge_aktuell");;\
}}\
}}\
my $min_gr = ReadingsVal("Beregnungsmenge","Getrieberegner",'0');;\
my $sek_gr = $min_gr * 60 - 10;;\
my $min_sr = ReadingsVal("Beregnungsmenge","Spruehregner",'0');;\
my $sek_sr = $min_sr * 60 - 10;;\
\
{if ($beregnungskreis eq '1') {\
fhem ("set B_Garten_Pumpe,B_Garten_Rasen on-for-timer $sek_gr");;\
fhem ("set Pushover_Client msg 'Beregnung' 'Regner Rasen für $min_gr Minuten eingeschaltet.' -1 ''");;\
}}\
{if ($beregnungskreis eq '2') {\
fhem ("set B_Garten_Pumpe,B_Garten_Beete on-for-timer $sek_sr");;\
fhem ("set Pushover_Client msg 'Beregnung' 'Regner Beete für $min_sr Minuten eingeschaltet.' -1 ''");;\
}}\
{if ($beregnungskreis eq '3') {\
fhem ("set B_Garten_Pumpe,B_Garten_Beet_Rasen on-for-timer $sek_sr");;\
fhem ("set Pushover_Client msg 'Beregnung' 'Regner Beete+Rasen für $min_sr Minuten eingeschaltet.' -1 ''");;\
}}\
}
attr notify_Beregnungskreis group Bewässerung
attr notify_Beregnungskreis icon control_arrow_rightward
attr notify_Beregnungskreis room Garten

"Bewässerung beenden / deaktivieren"
define notify_BeregnungAus notify Beregnung:off {\
# falls gerade automatikprozess aktiv ist, dann diesen unterbrechen und Zeitgeber löschen\
{if (ReadingsVal('Beregnung','Automatik_Aktiv','0') eq 'ja') {\
fhem ("setReading Beregnung Automatik_Aktiv nein");;\
fhem ("delete autoRegner.*");;\
fhem ("set Pushover_Client msg 'Beregnung' 'Automatikprogramm Rasenbewässerung unterbrochen.' -1 ''");;\
# Beregnungsmenge wieder zurücksetzen\
my $menge_aktuell = ReadingsVal('Beregnungsmenge', 'state', '0');;\
my $menge_last = ReadingsVal('Beregnungsmenge', 'Last', '0');;\
fhem ("set Beregnungsmenge $menge_last");;\
fhem ("setReading Beregnungsmenge Last $menge_aktuell");;\
}}\
# falls ein Beregnungskreis aktiv ist, diesen ausschalten\
{if (ReadingsVal('Beregnung','Aktiver_Regner','0') > 0) {\
fhem ("setReading Beregnung Aktiver_Regner 0");;\
}}\
}
attr notify_BeregnungAus group Bewässerung
attr notify_BeregnungAus icon general_aus
attr notify_BeregnungAus room Garten

define notify_BeregnungskreisAus notify Relais01.value:.off|Relais02.value:.off|Relais03.value:.off|Relais04.value:.off {\
# Kennzeichen für Beregnungskreis nach Einzelbetrieb zurücksetzen\
{if (ReadingsVal('Beregnung', 'Automatik_Aktiv', '0') eq "nein") {\
fhem ("setReading Beregnung Aktiver_Regner 0");;\
}}\
}
attr notify_BeregnungskreisAus group Bewässerung
attr notify_BeregnungskreisAus icon general_aus
attr notify_BeregnungskreisAus room Garten

"Hinweis für anstehende Bewässerung"
define BeregnungsHinweis at *19:55:00 {if (Value("Beregnung") eq "on") {\
## wenn Bewässerungsautomatik aktiviert\
my $liter_soll = 10;;\
my $tage_max = 4;;\
my $niederschlag = ReadingsVal('Beregnung', 'Menge', '0');;\
my $tage = ReadingsVal('Beregnung', 'Tage', '0');;\
## prüfen ob Niederschlag der letzten x Tage kleiner als x Liter\
{if (($tage > $tage_max) && ($niederschlag < $liter_soll)) {\
# dann Pushmeldung versenden\
fhem ("set Pushover_Client msg 'Beregnung' 'Morgen wird voraussichtlich der Rasen bewässert.'");;\
}}\
}}
attr BeregnungsHinweis icon message_attention
attr BeregnungsHinweis room Aktionen

"Bewässerungszyklus (automatisch) starten"
define bewaesserung_starten at *03:59:00 {if (Value("Beregnung") eq "on") {\
## wenn Bewässerungsautomatik aktiviert\
my $liter_soll = 10;;\
my $tage_max = 5;;\
my $niederschlag = ReadingsVal('Beregnung', 'Menge', '0');;\
my $tage = ReadingsVal('Beregnung', 'Tage', '0');;\
## prüfen ob Niederschlag der letzten x Tage kleiner als x Liter\
{if (($tage > $tage_max) && ($niederschlag < $liter_soll)) {\
## Beregnungsmenge einstellen (min. 35%)\
my $menge = int(100 - $niederschlag / $liter_soll * 100);;\
{if ($menge < 35) {\
$menge = 35;;\
}}\
my $menge_aktuell = ReadingsVal('Beregnungsmenge', 'state', '0');;\
# aktuellen Wert vor Änderung speichern\
fhem ("setReading Beregnungsmenge Last $menge_aktuell;;");;\
fhem ("set Beregnungsmenge $menge;;");;\
my $min_gr = ReadingsVal("Beregnungsmenge","Getrieberegner",'0');;\
my $sek_gr = $min_gr * 60 - 10;;\
my $min_sr = ReadingsVal("Beregnungsmenge","Spruehregner",'0');;\
my $sek_sr = $min_sr * 60 - 10;;\
## Logik zum Schalten der Beregnungskreise\
my $sek = 60;;\
my $zeit0 = myOffset($sek);;\
$sek = $sek + $sek_gr + 10;;\
my $zeit1 = myOffset($sek);;\
$sek = $sek + $sek_gr + 10;;\
my $zeit2 = myOffset($sek);;\
$sek = $sek + $sek_sr + 10;;\
my $zeit3 = myOffset($sek);;\
$sek = $sek + $sek_sr + 10;;\
my $zeit4 = myOffset($sek);;\
fhem ("setReading Beregnung Automatik_Aktiv ja;;");;\
fhem ("set Pushover_Client msg 'Beregnung' 'Automatikprogramm Rasenbewässerung startet in einer Minute mit $menge%.' 0 ''");;\
fhem ("defmod autoRegner1 at +$zeit0 setReading Beregnung Aktiver_Regner 1");;\
fhem ("defmod autoRegner2 at +$zeit1 setReading Beregnung Aktiver_Regner 2");;\
fhem ("defmod autoRegner3 at +$zeit2 setReading Beregnung Aktiver_Regner 3");;\
fhem ("defmod autoRegner4 at +$zeit3 setReading Beregnung Aktiver_Regner 4");;\
fhem ("defmod autoRegnerEnde at +$zeit4 setReading Beregnung Aktiver_Regner 0");;\
fhem ("attr autoRegner.* room Garten;; attr autoRegner.* group Bewässerung;;");;\
}}\
}}
attr bewaesserung_starten cmdIcon execNow:audio_play
attr bewaesserung_starten group Bewässerung
attr bewaesserung_starten icon control_arrow_turn_right
attr bewaesserung_starten room Garten
attr bewaesserung_starten sortby 2
attr bewaesserung_starten webCmd execNow


Gestern hatte ich im Log folgende Fehler:

2017.03.30 18:36:00 1: ERROR evaluating {if (Value("Beregnung") eq "on") {
## wenn Bewässerungsautomatik aktiviert
my $liter_soll = 10;;
my $tage_max = 2;;
my $niederschlag = ReadingsVal('Beregnung', 'Menge', '0');;
my $tage = ReadingsVal('Beregnung', 'Tage', '0');;
## prüfen ob Niederschlag der letzten x Tage kleiner als x Liter
{if (($tage > $tage_max) && ($niederschlag < $liter_soll)) {
## Beregnungsmenge einstellen (min. 35%)
my $menge = int(100 - $niederschlag / $liter_soll * 100);;
{if ($menge < 35) {
$menge = 35;;
}}
my $menge_aktuell = ReadingsVal('Beregnungsmenge', 'state', '0');;
# aktuellen Wert vor Änderung speichern
fhem ("setReading Beregnungsmenge Last $menge_aktuell;;");;
fhem ("set Beregnungsmenge $menge;;");;
my $min_gr = ReadingsVal("Beregnungsmenge","Getrieberegner",'0');;
my $sek_gr = $min_gr * 60 - 10;;
my $min_sr = ReadingsVal("Beregnungsmenge","Spruehregner",'0');;
my $sek_sr = $min_sr * 60 - 10;;
## Logik zum Schalten der Beregnungskreise
my $sek = 60;;
my $zeit0=myOffset($sek);;
$sek = $sek + $sek_gr + 10;;
my $zeit1=myOffset($sek);;
$sek = $sek + $sek_gr + 10;;
my $zeit2=myOffset($sek);;
$sek = $sek + $sek_sr + 10;;
my $zeit3=myOffset($sek);;
$sek = $sek + $sek_sr + 10;;
my $zeit4=myOffset($sek);;
fhem ("setReading Beregnung Automatik_Aktiv ja;;");;
fhem ("set pushmsg msg 'Beregnung' 'Automatikprogramm Rasenbewässerung startet in einer Minute mit $menge%.' 'iPhone' 0 ''");;
fhem ("defmod autoRegner1 at +$zeit0 setReading Beregnung Aktiver_Regner 1");;
fhem ("defmod autoRegner2 at +$zeit1 setReading Beregnung Aktiver_Regner 2");;
fhem ("defmod autoRegner3 at +$zeit2 setReading Beregnung Aktiver_Regner 3");;
fhem ("defmod autoRegner4 at +$zeit3 setReading Beregnung Aktiver_Regner 4");;
fhem ("defmod autoRegnerEnde at +$zeit4 setReading Beregnung Aktiver_Regner 0");;
fhem ("attr autoRegner.* room Garten;; attr autoRegner.* group Bewässerung;;");;
}}
}}: Undefined subroutine &main::myOffset called at (eval 363225) line 24.

2017.03.30 18:36:00 3: bewaesserung_starten: Undefined subroutine &main::myOffset called at (eval 363225) line 24.


Womit hat er denn da ein Problem? Mit "myOffset" ?
Wie bekomme ich das bereinigt?

Gruß
Ralf
Raspberry Pi3B+ / Nano-Cul 868 - MAX!=Heizung, HM-Lan - Rollo+Licht, JeeLink-Clone 868 - LaCrosse, JeeLink-Clone 868 - PCA301, CUL 434 - IT-Steckdosen+Fernbedienung

funclass

Hi,

sorry, da fällt mir auf, dass ich euch doch glatt die Funktion zur Berechnung der Einschaltzeitpunkte für die Beregnungskreise unterschlagen habe. Ich habe mir den ganzen code nicht angesehen, aber wenn du die folgende Funktion in 99_myUtils.pm ergänzt, dann sollte die Fehlermeldung verschwinden.


sub myOffset($) {

my ($Sekunden) = @_;

my $Stunden = int($Sekunden / 3600);
   $Sekunden %= 3600;

my $Minuten = int($Sekunden / 60);
   $Sekunden %= 60;

return sprintf("%02d:%02d:%02d", $Stunden, $Minuten, $Sekunden)

}

thorschtn

Hallo funclass,

steuerst Du die Beregnungsmenge tatsächlich ausschliesslich anhand der Voreinstellung und des Niederschlages der vergangenen Tage? Macht es, wenn es besispielsweise vorgestern ausreichend geregnet hat, nicht einen wesentlichen Unterschied ob seit dem letzten Regen 16° oder 36° sind, bei bewölktem Himmel oder bei praller Sonne? Ich hätte gemutmasst, dass entweder das aktuelle Wetter (Verdunstung) oder die Bodenfeuchte mit in die Steuerung einbezogen werden müssten. Wie sind Deine Erfahrungen?

Danke & viele Grüße

thorschtn
NUC - FHEM & HA
MapleCUN, Homematic, 433MHz, AB440, 1-Wire Bewässerung & Pool, Jarolift (Signalduino), Signal Messenger, Denon AVR, LG WebOS, AmazonEcho, Jura S90 (ESP8266), Sonoff, Xiaomi Mii Sauger, Worx SO500i

funclass

Moin thorschtn,

ja, aktuell sind die Niederschlagsmenge und vergangenen Tage die einzigen Einschaltbedingungen. Natürlich macht es einen Unterschied ob brühende Hitze oder nur kühle Frühlingstage sind. Mit meinen 5 Tagen bin ich bisher ganz gut gefahren. Ich könnte mir eine Art Faktor vorstellen, der temperaturabhängig ist. Vielleicht fällt dir ja was gutes ein. Ich will es nur nicht unendlich kompliziert machen (aus Pflanzenbewässerung lässt sich schnell ne Wissenschaft machen).
Verbesserungen integriere ich gern.

Gruß Christian

Tom71

Hallo,
ich habe auch gerade eine Regnersteuerung aufgebaut mit 4 Relais, die ich paarweise schalten möchte. Ich habe deine Commandos alle eingefügt und auch das WetterReading. Ich bekomme aber beim schreiben des Nierderschlags:
2017.05.15 15:30:30 3: Niederschlag_schreiben: Usage: setreadingdesc <devspec> <readingspec> [noCheck] <key>=[<value>|?]
where <devspec> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.
<readingspec> can be a single reading name, a list separated by comma (,) or a regexp.

2017.05.15 15:33:30 5: exec at command Niederschlag_schreiben
2017.05.15 15:33:30 3: Niederschlag_schreiben: Usage: setreadingdesc <devspec> <readingspec> [noCheck] <key>=[<value>|?]
where <devspec> is a single device name, a list separated by comma (,) or a regexp. See the devspec section in the commandref.html for details.
<readingspec> can be a single reading name, a list separated by comma (,) or a regexp.
2017.05.15 15:33:30 5: redefine at command Niederschlag_schreiben as *15:33:30 {
my $aktuell = ReadingsVal('Beregnung', 'Menge', '0');
my $niederschlag = ReadingsVal('wu_conditions', 'current_observation_precip_today_metric', '0') + $aktuell;
my $tage = ReadingsVal('Beregnung', 'Tage', '0') + 1;
# wenn Niederschlagsmenge >= 10, dann Werte zurücksetzen
{if ($niederschlag >= 10) {
    $niederschlag = 0;
    $tage = 1;
}}
fhem "setReading Beregnung Menge $niederschlag";
fhem "setReading Beregnung Tage $tage";
}

Homematic | RaspberryMatic

funclass

Hi,

ändere den letzten Teil mal bitte in...


fhem "setreading Beregnung Menge $niederschlag";
fhem "setreading Beregnung Tage $tage";
}


Hab grad nochmal in die CommandRef geschaut und gesehen, dass setreading komplett klein geschrieben werden muss. Im letzten Sommer hat es bei mir noch problemlos mit der Ursprungsvariante geklappt, in der aktuellen Version scheint FHEM da etwas genauer "hinzuschauen". Hab's bei mir auch gleich mal geändert. Hab in dieser Saison die Bewässerung noch nicht in Betrieb genommen. Gerade läuft noch das "Ansaat-Programm" (ausgewählte Kreise für 1...3 min alle 2h), da ich etwas nachgesät habe.

carlos

Hallo,
Dann will ich euch mal zeigen, wie ich das gemacht habe.
Wie ihr an dem Bild seht sind es 2 Bewässerungskreise, einer für die Beete(mit Perlschlauch) einer für den Rasen.
Verwendet habe ich folgende Komponenten:


Dazu habe ich noch einen 3. Bewäserungskreis der genau so aufgebaut ist für die andere Seite des Hauses auch mit Beet und Rasen(mit Beregner) zusammen. Der wird aber auch noch aufgeteilt in 2 Kreise.
Funktioniert seit ca. 2 Wochen bestens mit einem doif in FHEM jeweils Abends mit on-for-timer.

Gruß

Carlos


FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

Jewe

#40
Zitat von: carlos am 31 Mai 2017, 09:31:46
Hallo,
Dann will ich euch mal zeigen, wie ich das gemacht habe.

Hallo,
ist schon Ideenreich umgesetzt, aber leider auch ohne Einhaltung einer Norm. Nach VDE ist es nicht zulässig, 230V und Wasser in einem
Gehäuse zusammen unterzubringen. Es ist auch grob Fahrlässig.
Die restlichen Fehler mal ausgenommen...

Grüssle, Jens

MegaData

Definitiv !
Ich würde Ventile und Steuerung jeweils separat in eine wasserdichte Box packen - so wird es auch vom Profi angeboten :)

VG

carlos

Hi,
Da habt ihr natürlich recht. Ich hatte mir das auch schon überlegt.
Das werde ich auf jeden Fall auch noch so machen.
Gruß

Carlos
FHEM svn auf Intel NUC mit proxmox,1 UDOO, 3 Raspberry Pi, signalduino, nanoCUL, div. Homematic Komponenten, toom Baumarkt Funksteckdosen, einige sonoffs, hue, shelly

tante ju

Zitat von: tante ju am 30 März 2017, 20:49:12
Muß nächste Tage mal Fotos machen. Hab leider keine Fotos vom Aufbau gemacht. Reicht das? Sind aber nicht spannend. Eine UVT mit Sicherung, dem Steuermodul, 24V Netzteil für die Ventile und 3 Koppelrelais.

Ich wollte ja noch ein paar Bilder posten. Das erste ist die Unterverteilung im Gartenhaus. Man sieht in der oberen Reihe das Steuergerät, welches im nächsten Bild in Großaufnahme zu sehen ist. In der zweiten Reihe sind Koppelrelais, über die zum Beispiel die Pumpe oder Außenversorgung am Gartenhaus gesteuert wird. Daneben ist das 24V Netzteil für die Ventile. Die werden direkt vom Steuergerät geschaltet. Daneben noch die Sicherung.

Zweite Bild, wie gesagt, ist das Steuergerät in Großaufnahme. Man sieht die Struktur der Frontplatte, die ich gedruckt habe. Jeder Schaltausgang hat eine Taste, um auch bei Bedarf direkt am Gerät schalten zu können. Die LED zeigt an, ob der Ausgang eingeschaltet ist und ob eine Schaltzeit abläuft (dann blinkt die LED). Rechts das OLED zeigt nochmal die Schaltausgänge an und welche Restzeit gesteuerte Ausgänge noch haben. Es zeigt auch die MySensor Id des Gerätes und des Uplinks an, damit man sehen kann, wo sich das Gerät eingebucht hat. Da es ja mit Signatur arbeitet, kann es sich eigentlich nicht falsch einbuchen. Aber am Anfang fand ich das ganz hilfreich. Die aktuelle Zeit und die Temperatur im Gerät sind weitere Gimmicks auf dem Display. Die grüne LED zeigt an, daß das Steuergerät Funkverbindung hat und flackert mit jedem Datagram. Ich hätte da nur nicht einen extra hellen Typen nehmen sollen. Im Arbeitszimmer war das in Ordnung, aber im Gartenhaus bei Nacht sieht man jetzt immer einen grünen Lichtschein unter der Tür :)

Das nächste Bild zeigt die Ventilbox. Nix spannendes. Drei 24V Ventile. Vielleicht sollte ich erwähnen, daß über das Steuergerät die Ventilbox komplett freigeschaltet werden kann. Es sind also 4 Relais für 3 Ventile, so daß im Winter auch keinerlei Kriechstrom fließen kann. Ist zwar alles nur 24V und galvanisch getrennt, aber ich wollte galvanisieren der Klemmen soweit möglich verhindern.

Das letzte Bild habe ich noch gemacht, als ich den Druckminderer für das MicroDrip austauschen musste. Der ursprüngliche war nicht für Unterflur geeignet und hatte auch zu wenig Durchfluß. Da kann man erahnen, wie das ganze verrohrt ist.

Mittlerweile läuft das alles super. Ich suche aber nun "Wassersteckdosen" für das MicroDrip, da auch Blumen auf den Terrassen angeschlossen werden sollen. Wenn da jemand Ideen hat, immer her damit.

Tom71

#44
Ich benutze die Wassersteckdosen von Gardena, die im Boden eingelassen werden. Davor hab ich ein Hunter-Ventil gesetzt. An der Wassersteckdose hab ich z.Zt. einen Tropfschlauch angeschlossen. Den konnte ich mit einem Ventil am Schlauch einstellen.

Als MikroDrip hab ich mir was bei Lidl bestellt aber noch nicht eingebaut.

Gesendet von iPhone mit Tapatalk
Homematic | RaspberryMatic