Hallo Forum
Ich habe hier ein kleines Projekt für eine temporäre Gartenbewässerung (Ferienabwesenheit).
Es geht eigentlich um folgendes: mit einem Vegetronix VH400 die Bodenfeuchte messen und dann in Abhängikeit der Tageszeit für eine gewisse Zeit das Ventil (24VDC) über das Relais einschalten.
Es gibt sicher bessere Lösungen, aber ich habe alles Material hier und muss es nur noch zusammenbauen.
folgende Frage habe ich:
- Wie stabil läuft die Schnittstelle einem 1W Slave am GPIO4?
- ich habe noch keine Ahnung wie ich im FHEM den GPIO fürs Relais einbinde. Geht das wirklich
Ich bin wirklicher Anfänger mit Fhem, bitte habt etwas Geduld
Andi
Hi,
kennst Du diese Seite: http://www.fhemwiki.de/wiki/1-Wire_Feuchtemessung ?
Der untere Abschnitt beschäftigt sich mit dem Vegetronix-Sensor. Für die Relaissteuerung würde ich persönlich ein 1-Wire-Relaislösung bevorzugen, d.h. Messung und Relais am selben Bussystem.
Die Relaislösung gibts billig und unpraktisch aus Bulgarien bei eBay für ca. 50 EUR oder professional aus Deutschland für die Hutschiene für 90-140 EUR je nach Belastbarkeit der Ausgänge...
Ciao, -MN
Definition des Relais sieht wie folgt aus:
define rel1 GenShellSwitch /opt/rc-switch/wiringPi/gpio/gpio write 4 0 1
Damit ist der wiringPi GPIO 4 definiert mit den möglichen Status 0 = off oder 1 = on.
Du musst natürlich noch wiringPi auf dem RPi installieren.
Vielen Dank für die Hinweise.
Ich habe noch gelesen, das es noch ein 1W Anpasswiderstand oder Schaltung braucht, weil der 1W ja eigentlich 5V ist und der GPIO 3.3V.
Hier im Forum wie auch im Web habe ich nun die verschiedensten Ansätze dazu gesehen, welche Variante kann einem Anfänger für eine provisorisches Projekt empfohlen werden?
Mein Favorit ist eigentlich: den DS2438 nur mit 3.3V versorgen (sollte gem. Datenblatt ja gehen).
Bei mir hier zuhause läuft seit längerem ein USB-to-1W Interface mit diversen 1W-Chip wie auch mit einem 8-fach Relais dran einwandfrei, somit kenne ich die Lösung mit den 1W Komponenten schon.
Nur für das Ferienhaus in diesem Sommer suche ich eine kleine autonome Lösung.
Ich möchte das ganz einfach machen 1stk Fühler + 1stk Ventil und eine Print auf dem Raspi GPIO draufgesteckt der alles notwenige drauf hat.
Hallo RaspiCOC
Ich habe ein kleines Problem: fhem schaltet mir den GPIO nicht.
fhem.cfg:
define rel1 GenShellSwitch /opt/rc-switch/wiringPi/gpio/gpio write 1 0 1
geht so nicht.
wenn ich mir die Pfadangabe anschaue und dort kontrolliere gibt es den nicht?
Ich habe heute ein "Test-Rsp" kommplet neu aufgesetzt und auch mit dem 1W etwas Mühe gehabt. Vermutlich ist das irgendwo anderst abgelegt?
Wenn ich direkt auf der Raspi-Konsole mittels "sudo gpio write 1 1" schalte, leuchtet meine Diode.
Einfach so für die Nachwelt das Modul 00_GenShellSwitch.pm" habe ich von www.froschkeller.de (http://www.froschkeller.de)
Edit: mit folgendem Code geht es:
define rel1 GenShellSwitch /usr/bin/gpio write 1 1 0
(zum Glück gibt es die Linux "Dateisuche")
Ich erinnere mich: Den Kampf habe ich auch irgendwann mal geführt. Da das aber nun schon seit 3 Jahren zuverlässig läuft, habe ich mich auch nicht mehr weiter damit befasst.
Du hast aber wohl auch nicht wiringPi installiert, oder?
Hallo RaspiCOC
Doch, doch "sudo apt-get install wrinigPi" macht das sehr gut.
Unterdessen habe ich nicht nur den Pfad korrigiert sondern auch hrausgefunden das man dem GPIO zuerst noch sagen muss was er sein soll.
Da braucht es zuerst noch ein "..... gpio mode 1 out" vorne weg, damit geht es jetzt.
Ups, ja, dieses kleine Detail habe ich in der Tat nicht erwähnt. Sorry.
Ist es möglich das die 1W Schnittstelle am GPIO4 die DS2438 nicht erkennt?
edit: nach dem lesen aller möglichen Doku habe ich gesehen, dass eigentlich nur die DS1820 erkannt werden. Wieso ist es so?
Der Raspi macht eigentlich alles richtig, ich kann sämtliche auf dem Tisch liegenden 1-W Chip anhängen und es wird für jeden ein eigenes Verzeichnis erstellt, nur eben fhem kann zb. die Gruppe 26 nicht erkennen. Auch wenn ich den selber mit define erstellen will, kommt die Meldung Gruppe 26 wird nicht unterstützt.
Wieso ist das so?
Andi
ZitatWieso ist das so?
Weil jeder, der etwas von der Sache versteht, lieber einen ordenlichen Busmaster mit USB, I2C oder LAN/WLAN Interface einsetzt als den GPIO-Port.
LG
pah
Hallo pah
Ich habe beim mit im Haushalt diverse 1-W Komponente mit einem USB-to-1W Master eim Einsatz. Auf dem Raspi dreht ein OWFS, so geht das wunderbar.
Eingentlich wollte ich für die provisorische Bewässerung (nur für diesen Sommer) mit bereits vorhandenen Komponenten eine teure Gardena-Bewässerungs-Uhr umgehen. Darum habe ich eben gedacht, wenn der Raspi am GPIO4 die DS1820 richtig versteht, wieso kann er dann nicht auch ein einzelner DS2438 richtig verstehen. Da kommt garantiert nicht mehr dran, denn sonst würde ich ein ext. Master kaufen.
Ich bin nicht Programierer, aber ich habe mal versucht das 58_GPIO4.pm Modul etwas zu verstehen. Wenn ich das richtig gesehen habe, ist ja dort die "blockierung" drin, könnte man das nicht einfach weglassen? Ich weiss es ist gegen jegliche Logik, aber es würde mir einiges an Kosten ersparen für ein provisorisches Projekt mit 1stk DS2438 für den Vegetronix Bodenfeuchtefühler. Ich brauche auch nur das Reading vom VAD alles andere interessiert mich hier absolut nicht.
Kann ich das selber machen, oder wärest du so nett und würdest mir das als spezial Modul anpassen?
Gruss Andi
Zitatoder wärest du so nett und würdest mir das als spezial Modul anpassen?
Mache ich gerne, Stundensatz 260 €. Soll ich ein formelles Angebot schicken ?
LG
pah
Hallo pah
Ich habe mich mal versucht und einfach aufs Risiko hin, das gar nichts mehr geht, die Datei angepasst. Ich habe in der Zeile 68 gem. dem Muster ergänzt, zusätzlich die Zeilen 110-112 kopiert und entsprechend angepasst.
Wenn ich nun denn DS2438 im Fhem lösche und den Raspi neu boote, erstellt mir das Fhem den DS2438 und den DS18B20 (den ich testweise angeschlossen habe) korrekt mit dem Autocreate. Das einzige was noch nicht geht ist das Reading vom DS2438, der vom DS18B20 kommt richtig.
Wo kann man da noch schrauben, das es geht? mit dem 1W-to-USB geht das eben direkt richtig.
Gruss
Andi
Hallo zusammen
Ich habe mir nun ein USB-to-1W Interfaces organisiert (blauer Adapter) und damit den DS2438 angeschlossen, so geht es auf anhiebt richtig. Unterdessen geht mittels DOIF auch die Ventilsteuerung je nach Feuchte/Temperatur richtig. Jetzt muss ich das nur noch im Ferienhaus anschliessen.
Vielen Dank allen die mir geholfen haben.
Eine ganz kleine Sache habe ich noch nicht lösen können: die korrekte Anzeige des Ventilstatus im SVG-Plot. Da komme ich mit den Vorschlägen zur Umsetztung von "On/Off" zu 1/0 nicht klar, das begreife ich irgendwie einfach nicht. Vieleicht gibt es irgendwo eine einfache Erklärung dazu?
Jetzt habe ich einfach einen zusätzlichen Plot gemacht und nur die Punkte angezeigt, geht auch ist nur nicht besonders toll.
Gruss
Andi
Ich bin mir jetzt nicht so 100% sicher, ob ich Deine Fragestellung richtig verstehe. Anbei mal mein zugehöriges GPlot-File, der Plot und ein Screenshot der Plot-Definition in FHEM selbst.
# Created by FHEM/98_SVG.pm, 2016-06-08 08:52:09
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title 'Bewässerung Rasen'
set ytics
set y2tics
set grid
set ylabel ""
set y2label ""
set yrange [0:105]
set y2range [0:105]
#Filelog_Bew_Rasen 3:Bew_Rasen.*:0:$fld[2]=~"on"?100:0
#Filelog_Bew_Rasen_Haupt 3:Bew_Rasen_Haupt.*:0:$fld[2]=~"on"?60:0
#Filelog_Bew_Hauptschalter 3:Bew_Hauptschalter.*:0:$fld[2]=~"on"?100:0
#FileLog_XT300_2 4:XT300_2.humidity\x3a:0:
#HM_403B2A_Device_Channels 4:HM_403B2A_T1.T\x3a:0:
plot "<IN>" using 1:2 axes x1y2 title 'Rasen on / off' ls l1fill_stripe lw 1 with steps,\
"<IN>" using 1:2 axes x1y2 title 'Rasen Haupt on / off' ls l2fill lw 1 with steps,\
"<IN>" using 1:2 axes x1y2 title 'Hauptschalter on / off' ls l0fill lw 1 with steps,\
"<IN>" using 1:2 axes x1y2 title 'Feuchtigkeit OPUS' ls l3 lw 1 with lines,\
"<IN>" using 1:2 axes x1y2 title 'Feuchtigkeit HM' ls l7 lw 1 with lines
Folgendes ist hier zu verstehen:
- Ich schalte meine NC-Ventile (normally closed) quasi dreistufig (hatte das Problem, dass die Ventile öffneten, wenn der RPi hängenblieb)
- Stufe 1 gibt die Stromversorgung via Relais für alle anderen Relais frei. Ist quasi Bwässerungshauptschalter (das ist im Plot leider nur der kleine rote Balken gegen 11:00 Uhr)
- Stufe 2 schaltet die nächste Stufe über ein doif frei (Bewässerungsbedarf liegt vor) (das ist der blaue Balken)
- Stufe 3 schließt den letzten Stromkreis, so dass das Ventil öffnet. Das passiert über ein at zu vordefinierten Zeiten (nach Sonnenuntergang) (das sind die grünen Balken, wobei ich zum Zeitpunkt der Plotgenerierung noch einen Fehler drin hatte, wodurch der grüne Balken zwischen 00:00 h und 19:00 h hätte nicht sichtbar sein dürfen. Ab ca. 19:00 h stimmt es dann. Die Ausschläge nach oben zeigen die geöffneten Ventile)
Der im Screenshot eingekringelte Teil ist folgender:
$fld[2]=~"on"?100:0
Das Reading "on" wird hier durch den Wert 100 ersetzt. Jedes andere Reading mit "off". Hier kannst Du dann auch andere Werte nehmen.
Hoffe, das hilft weiter...
Hallo RaspiCOC
Dank deiner Hilfe habe ich es erreicht, beim Raspi fürs Ferienhaus habe ich jetzt schöne Balken, genau so wie ich es gewünscht habe. (Bild folgt nocht)
Bei meinem Raspi zuhause schalte ich die Ventile über ein 1W Print mit "ReadingsProxy", wenn ich hier ein FileLog einrichte, schreibt mir fhem bei jedem "Event" immer ein "on" ins log. Sowohl beim einschalten wie auch beim ausschalten. Ich verstehe nicht ganz wieso er nicht den Status schreibt sondern einfach immer "on"
./log/Ventil_Genuese-%Y.log Kanal_H:.*
Ich nehme an, dass ich irgendwo etwas falsch gemacht habe, aber das ganze ist unterdessen so umfangreich, das ich nicht mehr so genau weiss wo suchen.
Gruss Andi
Da bin ich leider völlig überfragt. Habe bislang die Finger on 1W gelassen...
Hier wie versprochen noch ein Bild von meinem Ferienhausbewässerung Fhem.
Ich denke jetzt wird auch klarer, wieso ich eigentlich gerne den GPIO für die 1W Schnittstelle haben wollte. Die grauen Klemmen sind die 24VDC Spannungsversorgung inkl. DC/DC Wandler auf 5V. Den DS2438 habe ich direkt ins Kabel gelötet und mit Schrumpfschlauch eingepackt. So kann ich das ganze nun in die Elektroverteilung einbauen.
Gruss Andi