<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=MichaS</id>
	<title>FHEMWiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=MichaS"/>
	<link rel="alternate" type="text/html" href="http://wiki.fhem.de/wiki/Spezial:Beitr%C3%A4ge/MichaS"/>
	<updated>2026-04-06T06:01:30Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Bew%C3%A4sserungssteuerung&amp;diff=11614</id>
		<title>Bewässerungssteuerung</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Bew%C3%A4sserungssteuerung&amp;diff=11614"/>
		<updated>2015-07-07T14:57:41Z</updated>

		<summary type="html">&lt;p&gt;MichaS: /* Definitionen */  Timerangaben periodisch/einmalig ergänzt&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;div style=&amp;quot;float:right&amp;quot;&amp;gt;&lt;br /&gt;
{{Infobox Modul&lt;br /&gt;
|ModPurpose=Kontrollinstanz der Bewässerungssteuerung&lt;br /&gt;
|ModType=contrib&lt;br /&gt;
|ModFTopic=22142&lt;br /&gt;
|ModForumArea=Unterstützende Dienste&lt;br /&gt;
|ModTechName=97_SprinkleControl.pm&lt;br /&gt;
|ModOwner=[http://forum.fhem.de/index.php?action=profile;u=118 Tobias]&lt;br /&gt;
}}&lt;br /&gt;
{{Infobox Modul&lt;br /&gt;
|ModPurpose=Spezialisiertes Modul zur Bewässerungssteuerung&lt;br /&gt;
|ModType=contrib&lt;br /&gt;
|ModFTopic=22142&lt;br /&gt;
|ModForumArea=Unterstützende Dienste&lt;br /&gt;
|ModTechName=98_Sprinkle.pm&lt;br /&gt;
|ModOwner=[http://forum.fhem.de/index.php?action=profile;u=118 Tobias]&lt;br /&gt;
}}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Seite beschreibt, wie man intelligent seine Bewässerung steuern kann wenn man Bodenfeuchtesensoren installiert hat.&lt;br /&gt;
Weiterhin kann man eine maximale Obergrenze von parallelen Bewässerungen angeben wenn man z.B. von einem Brunnen nur einen begrenzten Mengendurchfluss hat oder das Netzteil nicht alle Ventile gleichzeitig schalten kann.&lt;br /&gt;
&lt;br /&gt;
__INHALTSVERZEICHNIS__&lt;br /&gt;
&lt;br /&gt;
Es wird von folgenden Komponenten ausgegangen:&lt;br /&gt;
&lt;br /&gt;
* Gardena oder Hunter Magnetventile, angesprochen über einen FS20-Aktor (zb. S8M), Homematic-Aktor oder 1wireSchaltaktoren&lt;br /&gt;
* Bodenfeuchtesensoren, zb. FS20 BF oder andere (z. B. an einem [[AVR-NET-IO#Analoge_Eing.C3.A4nge_in_Fhem_einbinden|AVR-NET-IO]] oder funkangebunden per  [[PanStamp#Bodenfeuchte|Panstamp]])&lt;br /&gt;
&lt;br /&gt;
==allgemeine Vorbereitungen==&lt;br /&gt;
Wird ein 2- oder 8fach 1wire Schaltaktor verwendet, so muss jedes Ventil per [[ReadingsProxy|readingsProxy]] maskiert werden.&lt;br /&gt;
Bei jedem FS20 Aktor muss in Fhem das Attribut &#039;&#039;follow-on-for-timer&#039;&#039; auf 1 gesetzt werden. Andernfalls bitte die Prozedur [[On-for-timer_zur%C3%BCcksetzen|&amp;quot;on-for-timer-offcheck&amp;quot;]] anlegen. &lt;br /&gt;
&lt;br /&gt;
===Anlegen der Bodenfeuchtesensoren===&lt;br /&gt;
Für eines FS20 Sensor: FS20BF&lt;br /&gt;
 define Bodenfeuchtesensor FS20 34f2 00&lt;br /&gt;
 attr Bodenfeuchtesensor room Bewässerung&lt;br /&gt;
&lt;br /&gt;
Für eine 1wire Version: einen analogen Sensor (zb. Vegetronix), angeschlossen an einen 4fach A/D Converter DS2450&lt;br /&gt;
 define Bodenfeuchte OWAD DS2450 03140C000000 60&lt;br /&gt;
 attr Bodenfeuchte model DS2450&lt;br /&gt;
 attr Bodenfeuchte room Bewässerung&lt;br /&gt;
 attr Bodenfeuchte userReadings VWC_A {sprintf(&amp;quot;%.0f&amp;quot;,(11.6552 * ReadingsVal(&amp;quot;$name&amp;quot;,&amp;quot;A&amp;quot;,0)**4 + 7.10835 * ReadingsVal(&amp;quot;$name&amp;quot;,&amp;quot;A&amp;quot;,0)**2 - 0.569557) / (ReadingsVal(&amp;quot;$name&amp;quot;,&amp;quot;A&amp;quot;,0)**2 + 1))}&lt;br /&gt;
&lt;br /&gt;
Kabelgebundene Vegetronix Bodenfeuchtesensoren können per [[PanStamp#Bodenfeuchte|Panstamp-Anbindung]] auch funkbasiert arbeiten.&lt;br /&gt;
&lt;br /&gt;
===Bewässerungsventile definieren===&lt;br /&gt;
Falls für jedes Magnetventil ein eigenes Device existiert. Zb. bei Nutzung von eines SM8/SM4/FS20ST/HM-LC-SW4-DR&lt;br /&gt;
 define Bewaesserung_Ventil1 FS20 2305 51&lt;br /&gt;
 attr Bewaesserung_Ventil1 model fs20st&lt;br /&gt;
 attr Bewaesserung_Ventil1 room Bewässerung&lt;br /&gt;
&lt;br /&gt;
Wird die Bewässerungssteuerung mittels 1Wire betrieben, so verfügt 1 Device (i.d.R DS2406/DS2408/DS1413) über 2 oder 8 Ports. &lt;br /&gt;
An folgendem Device hängen die physischen Bewässerungsventile. Dieses muss natürlich an die eigenen Gegebenheiten angepasst werden :)&lt;br /&gt;
 define Schalter_rechts OWSWITCH DS2408 xxxxxxxxxxxxxx&lt;br /&gt;
 attr Schalter_rechts IODev 1wireBus&lt;br /&gt;
 attr Schalter_rechts model DS2408&lt;br /&gt;
 attr Schalter_rechts room Bewässerung&lt;br /&gt;
 attr Schalter_rechts stateS .&lt;br /&gt;
&lt;br /&gt;
Zusätzlich das readingsProxy-Device für den Port A&lt;br /&gt;
 define Bewaesserung_Ventil1 readingsProxy Schalter_rechts:A&lt;br /&gt;
 attr Bewaesserung_Ventil1 room Bewässerung&lt;br /&gt;
 attr Bewaesserung_Ventil1 setFn {&amp;quot;output A $CMD&amp;quot;}&lt;br /&gt;
 attr Bewaesserung_Ventil1 setList on off&lt;br /&gt;
 attr Bewaesserung_Ventil1 valueFn {($VALUE eq &amp;quot;ON.&amp;quot;)?&amp;quot;OFF&amp;quot;:&amp;quot;ON&amp;quot;}&lt;br /&gt;
 attr Bewaesserung_Ventil1 webCmd on:off&lt;br /&gt;
&lt;br /&gt;
===Module bereitstellen===&lt;br /&gt;
Als nächstes sind die benötigten Module aus dem Fhem SVN contrib Verzeichnis in das Fhem-Verzeichnis zu kopieren:&lt;br /&gt;
* [http://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/contrib/97_SprinkleControl.pm 97_SprinkleControl.pm]&lt;br /&gt;
* [http://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/contrib/98_Sprinkle.pm 98_Sprinkle.pm]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Definitionen==&lt;br /&gt;
Pro Bewässerung bzw Bewässerungsventil ist eine SprinkleInstanz zu definieren:&lt;br /&gt;
&lt;br /&gt;
 define MySprinkle1 Sprinkle Bewaesserung_Ventil1 Bodenfeuchte:VWC_A +00:05:00;&lt;br /&gt;
 attr MySprinkle1 Sprinkle_OnTimeSec 30;&lt;br /&gt;
 attr MySprinkle1 Sprinkle_SensorThreshold 55;&lt;br /&gt;
 attr MySprinkle1 room Bewässerung;&lt;br /&gt;
 attr MySprinkle1 webCmd Auto:An:Aus:Toggle:Disable;&lt;br /&gt;
 &lt;br /&gt;
Die Timerangabe kann periodisch z.B. +00:05:00 alle 5min (wie im Beispiel oben) oder einmalig am Tag z.b. 04:00:00 für 4:00 Uhr eingestellt werden. Nach Ablauf des Timers wird überprüft, ob die Bodenfeuchte im Reading &#039;&#039;VWC_A&#039;&#039; kleiner als der Wert im Attribut &#039;&#039;Sprinkle_SensorThreshold&#039;&#039; ist und gegebenenfalls ein &#039;&#039;on-for-timer&#039;&#039; Befehl auf den Aktor &#039;&#039;Bewaesserung_Ventil1&#039;&#039; abgesetzt. Die Dauer der Beregnung bzw. des on-for-timers richtet sich nach dem Attributwert &#039;&#039;Sprinkle_OnTimeSec&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Es sind folgende &#039;&#039;Set&#039;&#039; Befehle möglich:&lt;br /&gt;
* &#039;&#039;&#039;Disable&#039;&#039;&#039; &amp;lt;br&amp;gt; Deaktivierung. Erst ein erneuter Disable-Befehl aktiviert die Instanz wieder. Während einer Deaktivierung werden keine anderen Befehle akzeptiert&lt;br /&gt;
* &#039;&#039;&#039;An&#039;&#039;&#039; &amp;lt;br&amp;gt; Manuelles Starten eines Bewäserungsprozesses&lt;br /&gt;
* &#039;&#039;&#039;Aus&#039;&#039;&#039; &amp;lt;br&amp;gt; Manuelles Stoppen eines Bewäserungsprozesses&lt;br /&gt;
* &#039;&#039;&#039;Toggle&#039;&#039;&#039; &amp;lt;br&amp;gt; Je nach aktuellem Zustand wird ein Bewässerungsprozess gestartet oder gestoppt&lt;br /&gt;
* &#039;&#039;&#039;Auto&#039;&#039;&#039; &amp;lt;br&amp;gt; Der Auto-Modus ist nur verfügbar, wenn ein Bodenfeuchtesensor angegeben ist sowie die Attribute &#039;&#039;Sprinkle_OnTimeSec&#039;&#039; und &#039;&#039;Sprinkle_SensorThreshold&#039;&#039; angegeben sind.  &amp;lt;br&amp;gt;&lt;br /&gt;
Der erste Klick auf &#039;&#039;Auto&#039;&#039; versetzt die Instanz in den AutoModus. Jeder folgende Klick startet einen Bewässerungsprozess im AutoModus - Je nach Zustand der Bodenfeuchte wird nun bewässert oder nicht.&lt;br /&gt;
&lt;br /&gt;
==weitere Spezialfälle==&lt;br /&gt;
Ist die Anzahl der parallelen Bewässerungsprozesse zu begrenzen, so ist eine übergeordnete Kontrollinstanz zu definieren. Beispielsweise durch einen maximalen Wasserdurchfluss den ein Brunnen bedienen kann.&lt;br /&gt;
&lt;br /&gt;
 define MySprinkleControl SprinkleControl;&lt;br /&gt;
 attr MySprinkleControl SprinkleControl_MaxParallel 1;&lt;br /&gt;
 attr MySprinkleControl room Bewässerung;&lt;br /&gt;
&lt;br /&gt;
Hiermit wird maximal ein Bewässerungsprozess zugelassen. Alle folgenden werden in eine Queue eingereiht und nacheinander abgearbeitet.&amp;lt;br&amp;gt;&lt;br /&gt;
Die vorher definierte SprinkleInstanz ist nun noch mit der Kontrollinstanz zu verbinden.&lt;br /&gt;
&lt;br /&gt;
 attr MySprinkle1 SprinkleControl SprinkleControl;&lt;br /&gt;
&lt;br /&gt;
Mit einer einzelnen SprinkleInstanz kann man die Auswirkung noch nicht erkennen, dazu müssen weitere SprinkleInstanzen für weitere Bewässerungsventile angelegt werden&lt;br /&gt;
&lt;br /&gt;
==Links==&lt;br /&gt;
Forumsthread zum Modul: {{Link2Forum|Topic=22142}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Code Snippets]]&lt;/div&gt;</summary>
		<author><name>MichaS</name></author>
	</entry>
</feed>