FHEM > Automatisierung

Stromstossschalter

<< < (5/6) > >>

mcbain2k:
So hab das Problem jetzt soweit eingegrenzt um sagen zu können,

dass es an daran liegt, dass Fhem IN3 solange der Taster gedrückt ist alle paar Millisekunden auf on setzt.

Bei jedem on von IN3 erfolgt eine Umschaltung des OUT05 (Relais), dh. das Relais rattert wie ein MG.

Wie kann ich Fhem jetzt dazu überreden, IN3 nur einmal pro Druck auf den Taster auf on zu setzen?


--- Code: ---
define IN3 FRM_IN 3
attr IN3 room Arduino
attr IN3 stateFormat reading

define OUT05 FRM_OUT 26
attr OUT05 devStateIcon An:FS20.on Aus:FS20.off
attr OUT05 eventMap off:Aus on:An
attr OUT05 restoreOnReconnect off
attr OUT05 restoreOnStartup off
attr OUT05 room Arduino
attr OUT05 stateFormat value

define Arduino2_notify notify IN3.*on { if (Value("OUT05") eq "Aus") { fhem "set OUT05 An"} else { fhem "set OUT05 Aus"} }
--- Ende Code ---




MFG
 McBain

Puschel74:
Hallo,


--- Zitat ---Wie kann ich Fhem jetzt dazu überreden, IN3 nur einmal pro Druck auf den Taster auf on zu setzen?
--- Ende Zitat ---


Äh, gar nicht?
FHEM setzt IN3 sicher nicht auf on - das macht der Arduino.
FHEM bekommt nur den Trigger mit das IN3 flattert und reagiert entsprechend des Notify.


--- Zitat ---dass es an daran liegt, dass Fhem IN3 solange der Taster gedrückt ist alle paar Millisekunden auf on setzt.
--- Ende Zitat ---

Wie gesagt.
FHEM setzt IN3 nicht auf on - das macht der Arduino resp. der Taster der an IN3 angeschlossen ist.

Das einzige was FHEM macht ist den Ausgang setzen - wobei ich die Zykluszeit von FHEM auf deiner Plattform nicht kenne.

Aber wenn am Taster ja nix prellt kann es nur dran liegen das FHEM den Eingang des Arduino auf on setzt - alle paar Millisekunden.

Grüße

mcbain2k:
Hallo,


--- Code: ---Äh, gar nicht?
FHEM setzt IN3 sicher nicht auf on - das macht der Arduino.
FHEM bekommt nur den Trigger mit das IN3 flattert und reagiert entsprechend des Notify.
--- Ende Code ---


Bist Du dir ganz sicher???
IN3 ist immerhin eine Fhem-Dummy und der Arduino teilt Fhem ja nur mit das PIN3 on ist der weiß gar nichts von IN3.


--- Code: ---FHEM bekommt nur den Trigger mit das IN3 flattert und reagiert entsprechend des Notify.
--- Ende Code ---


Flattert? Da flattert nichts. IN3 wird von on auf on gesetzt, eigendlich keine Änderung des Zustandes.
Für Fhem aber anscheinend schon, leider.

Aber wenn das nicht der Lösungsansatz ist, wo liegt dann der Hund begraben?  

MFG
 McBain


   

Puschel74:
Hallo,

ich mach mir nochmal die Mühe ...

lt. dem hier


--- Code: ---define IN3 FRM_IN 3
attr IN3 room Arduino
attr IN3 stateFormat reading

define OUT05 FRM_OUT 26
attr OUT05 devStateIcon An:FS20.on Aus:FS20.off
attr OUT05 eventMap off:Aus on:An
attr OUT05 restoreOnReconnect off
attr OUT05 restoreOnStartup off
attr OUT05 room Arduino
attr OUT05 stateFormat value
--- Ende Code ---


ist IN3 ein digitaler Eingang am Arduino - ich seh hier keinen dummy.


--- Zitat ---Flattert? Da flattert nichts.
--- Ende Zitat ---


--- Zitat ---Es liegt leider nicht am Taster, der prellt definitiv nicht.
--- Ende Zitat ---

Dann poste mal bitte das Bild deines Speicheroszis welches auf steigende Flanke triggert während du den Taster betätigst.
Der Eingang des Oszi muss natürlich mit IN3 oder, besser gesagt, mit dem Eingang des Arduino verbunden sein an dem der Taster angeschlossen ist.

Oder woher weißt du das der Taster definitiv nicht prellt?

Für mich stellt sich dein Aufbau so dar:

Taster am Eingang IN3 des Arduino ---- Verbindung mit dem Netzwerk(?) --- fhem-Server
Relais am Ausgang OUT5 des Arduino ---|

Oder läuft bei dir fhem auf dem Arduino?

Da ich aber leider keinen Arduino besitze sondern nur einen AVR-NET-IO werde ich dir nun nicht mehr weiter helfen können da
ich deinen Aufbau nicht nachstellen (und auch nicht so ganz nachvollziehen) kann.

Grüße

mcbain2k:
Hallo,
also erstmal danke für deine Mühe,


--- Zitat ---ist IN3 ein digitaler Eingang am Arduino - ich seh hier keinen dummy.

--- Ende Zitat ---

Stimmt, dummy ist falsch muss Variable heissen.


Aufbau
Taster -- Entprellung Pulldown-- am Pin 3 des Arduino ---- USB --- fhem-Server Variable IN3
fhem-Server Variable OUT5   ---- USB ---  Pin 26 des Arduino --- Optokoppler---Relais

Taster prellt nicht weil:
Taster wurde Hardwaremäße plus Pulldown entprellt http://blog.cc-robotics.de/2007/03/25/entprellung-ohne-flipflop/.
Funktioniert auch direckt an einem anderen Arduino mit eigenem Programm prellfrei.
Schaltung regiert immer gleich auch nach langem gedrückt halten die gleiche schnelle aus an Folge des Relais
Bei prüfen des notify auf aus

--- Code: ---define Arduino2_notify notify IN3.*off
--- Ende Code ---

was ohne prellen funktioniert hat.


MFG
 McBain

 

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln