Hallo,
ich bin Neueinsteiger mit FHEM und möchte ein Projekt realisieren, hab aber dazu noch nichts wirklich konkretes gefunden. Würde mich freuen wenn mir jemand weiterhelfen kann. ;)
Und zwar möchte ich 8 Stromstoßrelais über eine 8-Kanal Relaiskarte ansteuern (Zum Schalten jeweils einen Impuls von 1 Sekunde). Diese Relaiskarte möchte ich über die GPIO Pins meines Raspberry Pi 2 B steuern. Zudem möchte ich mit 8 weiteren GPIO auslesen ob ein Stromstoßrelais gerade geschaltet ist oder nicht ( Dies werde ich vermutlich über Optokoppler an die GPIO führen).
Meine Frage nun: Wie kann man das in FHEM integrieren, so dass ich über FHEM ein und ausschalten (1 Sek. Impuls) kann und das Birnchen im Interface leuchtet wenn es Tatsächlich eingeschaltet ist (da ich alle Stromstoßschalter auch manuell betätigen möchten, denn ich möchte, dass beim ausfall der Elektronik trotzdem noch alles ein und ausschaltbar ist).
Welche Software wird zusätzlich benötigt? Wie installiere ich diese? Wäre nett wenn mir das jemand für Dumme erkläre könnte, denn wie gesagt bin totaler Neueinsteiger. ;)
Grüße aus Bayern und Danke im Vorraus ;)
Hey,
es gibt bereits in FHEM integriert ein Modul zum steuern der GPIOs
Man kann die GPIOs auch auslesen, dafür habe ich aber keine Verwendung und das daher
bis jetzt auch noch nicht getestet. Das Leuchtende Birnchen in der FHEM-Oberfläche hast du automatisch
wenn du das Device als Output deklarierst. Das mit dem manuell schalten verstehe ich nicht ganz.
Willst du noch einen "Hardware"-Schalter dazubauen?
Device anlegen, dadurch sagst du dem FHEM dass der zu schaltende GPIO auf der angegebenen Nummer zu finden ist
define name_des_Device RPI_GPIO #GPIO_PIN
Dem Device sagen, was es sein soll(input oder output
attr name_des_Device direction output
Das Device einem raum zuordnen
attr name_des_Device room raumName
Und meiner Meinung nach wichtig bei benutzung der China-Relais, das invertieren, damit aus auch aus ist und nicht an...
attr name_des_Device active_low yes
Wenn du weitere Fragen hast schau dir einfach die Dokumentation dazu an, die findest du auf deiner FHEM Startseite unter "Commandref" und dann in dem Haufen an Einträgen unter "RPI_GPIO"
lg
Danke, dass war schonmal sehr Hilfreich ;)
Die Schalten kommt bei uns in unser "PartyGartenhäuschen"
und die Grundidee war, dass hinter die Bar ein Sicherungskasten kommt wo man dann alles ein und ausschalten kann, dann kam mir aber die Schnapsidee, alles zu Automatisieren und hab jetz desswegen Stromstoßrelais die manuell betätigbar sind angeschafft ( wie die von Eltako) und 2 Lampen und ein Lüfter kann noch manuell von jeweils einem Schalter aus geschalten werden.
Mfg ;D
Und wie kann ich jetzt die GPIOs für einen Impuls ansteuern, so dass sie bei einem klick auf on 1 Sekunde auf High gehen und dann wieder auf Low so dass das Stromstoßrelais anzieht und dann wieder ein Signal an einen GPIO anliegt welches ich dann auslesen kann in FHEM?
Zitat von: FabianRpi am 13 Mai 2016, 11:57:54
Und wie kann ich jetzt die GPIOs für einen Impuls ansteuern, so dass sie bei einem klick auf on 1 Sekunde auf High gehen und dann wieder auf Low so dass das Stromstoßrelais anzieht und dann wieder ein Signal an einen GPIO anliegt welches ich dann auslesen kann in FHEM?
In der Commandref (http://fhem.de/commandref_DE.html#RPI_GPIO) solltest du auch da fündig werden.
Das Modul unterstützt sie set extensions (http://fhem.de/commandref_DE.html#setExtensions), welche die Schaltfunktionen erweitern.
Dort findest du
on-for-timerset <devicename> on-for-timer 1
gibt dir einen high Puls von ca. 1s auf dem GPIO aus
Für das Rücklesen müsstest du einen weiteren GPIO verwenden, der als input konfiguriert ist und auf den Statusausgang des Stromstoßrelais (falls vorhanden) oder an dessen Ausgang (Vorsicht bei 230V) geht.
Bei 230V sollte ein Optokoppler dazwischen, wobei ich lieber auf Relais mit separatem Status setzen würde.
Danke ! :)
Ja als für den Input hätte ich ein Kondensatornetzteil gebaut welches einen Optokoppler ansteuert. Ich verwende keine Relais aus Platzgründen zudem möchte ich die Verlustleistung so gering wie möglich halten, und ein Kondensatornetzteil ist nahezu Verlustfrei ;)
Jetz kann ich den Pin für eine Sekunde über die Befehlszeile einschalten, jedoch wenn ich auf on drücke, bleibt dieser auf on und schaltet sich nicht wieder nach einer Sekunde aus. Gibt es da eine Möglichkeit die set extensions dauerhaft zu Speichern oder sowas wie einen Dummy anzulegen der dann bei on diesen Befehl on-for-timer 1 ausführt?.
mfg :D
Hallo FabianRpi
ich habe das mit dem Befehl:
attr <deviceName> webCmd "on-for-timer 1:off" in einem Dummy so eingerichtet.
Hoffentlich hilft Dir das weiter.
Schöne Grüße
Für das on-for-timer braucht es noch ein attr device follow-on-for-timer 1 zum Funktionieren.
Grüße, Markus
Hallo,
ich verwende dieses Relais für meine Schaltaufgaben:
http://www.ebay.de/itm/4-Channel-Relay-Module-With-Optocoupler-High-Level-Triger-for-Arduino-5V-12v-24v-/331456873817?var=&hash=item7de020182a
Das ist High Pegel gesteuert und ganz wichtig separate Pegel für VCC (+5V) und In (GPIO 3,3V).
Noch eine Frage, warum willst Du denn die Schaltzustände über den Optokoppler abfragen ? Ich würde hier eher eine Dummy Variable definieren und "mitschalten".
Ah, du schaltest auch manuell... ich würde aber eher die Taster über den Raspi einlesen und dann damit schalten.
Ich verwende so etwas ähnliches und hatte noch nie einen Ausfall der Elektronik.
Die Schaltzustände 230V über einer Optokoppler an den Raspi scheint mir eher aufwändig und etwas fertiges vermtl. relativ teuer.
VG, Michael
Hallo, ich verwende keine Taster die ich über den Pi auslesen lasse da ich als Elektroniker EGS ganz genau weiß, dass Elektronik immer fehler macht und ich ein System möchte, dass auch dann funktioniert, wenn mir die Elektronik abschmiert.
Zu der meiner Schaltung: Ich habe eine Lochrasterplatine genommen auf der ich 8 Kondensatornetzteile aufgelötet habe ( 2.2 kO + 3.3 kO in reihe an den eingang vom Optokoppler dazu ein 22nF Foko in reihe und zum Foko 2x 470 kO in reihe parallel geschalten. Ausgangsseitig werden die 3.3 V die der Pi ausgiebt an einen Pulldownwiderstand zu dem ich einen 10uF elko parallel geschalten habe zur Signalstabilisierung. Das ganze zum auflöten ca. 30 mins Arbeit und dann haben ich die Leiterplatte noch mit Epoxidhartz ausgegossen. Ich denke dass jede andere Lösung kostenintensiver gewesen wäre ;)
Gruß Fabian
Hi Fabian!
Zitat von: FabianRpi am 10 Oktober 2016, 08:30:18
... ausgiebt ...
... Epoxidhartz ...
ist wohl HARTZ IV?
Zitat von: FabianRpi am 10 Oktober 2016, 08:30:18
Ich habe eine Lochrasterplatine genommen auf der ich 8 Kondensatornetzteile aufgelötet habe ( 2.2 kO + 3.3 kO in reihe an den eingang vom Optokoppler dazu ein 22nF Foko in reihe und zum Foko 2x 470 kO in reihe parallel geschalten. Ausgangsseitig werden die 3.3 V die der Pi ausgiebt an einen Pulldownwiderstand zu dem ich einen 10uF elko parallel geschalten habe zur Signalstabilisierung.
Kannst du mal bitte ein Schaltbild dazu einstellen? So erklärt, ist es doch ziemlich unverständlich.
Eine Handskizze reicht völlig aus, muss ja nicht schön sein... ;)
Hier das Bild vom Schaltplan im Anhang