Guten Tag zusammen, Folgende Situation: Ich möchte meine Lampen, nebst Tastdimmer, mit dem ESP8266 An- und Ausschalten sowie dimmen, indem ich einfach ein Relais parrallel zum Taster für die Ansteuerung des Dimmers setze. Das ganze kommt in den Schaltschrank, die zusätzlichen adern liegen bereits in der Unterputzdose. Das An/Aus an sich ist jetzt kein Thema, allerdings macht mir meine nicht sehr weitreichende Erfahrung Schwierigkeiten was das Dimmen angeht. An und Ausschalten funktioniert, indem ich eine Adresse (meinetwegen IP/gpio/1) aufrufe(wie in der Arduino IDE das Webserver Beispiel für den ESP). Beim dimmen aber brauche ich ja theoretisch eine durchgehend vorhandene Verbindung, bei der der ESP erkennt, wie lange ich jetzt diesen Button gedrückt halte um damit genau die Helligkeit bestimmen zu können. Nochmal kurz: Solange ich den Button für das Licht betätige, soll ein Relais vom ESP8266 angesteuert werden, welches mir das Licht dimmt, bzw. bei kurzer Ansteuerung das Licht an und ausschaltet. Hat jemand vielleicht eine Idee, einen Rat/Vorschlag, wie UND OB das ganze soweit überhaupt möglich ist? Ich bedanke mich Voraus!
Hallo, Im Browser hast du ja für den Button entsprechende Ereignisse für Drücken und Loslassen das sollte kein Problem sein. Wenn du jetzt damit einen entaprechenden Aufruf an deinen ESP sendest wird die Verzögerung für diesen Zweck allerdings zu groß sein um sinnvoll einen Dimmer zu steuern. Für den Zweck einer möglichst verzögerungsfreien Weiterleitung der Aktion auf Weboberfläche und dem Server kommt eigentlich nur eine Websocket-Verbindung in Frage. Dort bleibt die TCP-Verbindung dauerhaft geöffnet und Client und Server können beliebig Daten hin- und hersenden. Darüber habe ich z.B. einen Steuerung für RGB-LEDs per Schieberegler realisiert. Ob du auf dem ESP einen entsperchenden Websocketserver zum laufen bringst weiß ich jedoch nicht. Sascha
Hab mich mal über websockets schlau gemacht und einige erlärungen gefunden. Das könnte mein Problem.tatsächlich lösen! Jetzt muss ich aber leider doch noch etwas nachhaken: Ich habe jetzt eine dauerhafte verbindung zwischen client und server, ich weiß jetzt, dass der ESP websocket kann. Jetzt fehlt mir nur ein wenig die Erfahrung, wie ich dem esp sagen kann er soll einen ausgang solange schalten, wie ich den button gedrückt halte... er soll ja genau dann reagieren sobald ich den button drücke, wie kann ich ihm sagen, dass er den status dauerhaft überwachen soll, ohne zwischendurch den ausgang wieder wegzuschalten?
Guest schrieb: > Jetzt fehlt mir nur ein > wenig die Erfahrung, wie ich dem esp sagen kann er soll einen ausgang > solange schalten, wie ich den button gedrückt halte... Da brauchst Du eigentlich garnichts erfinden oder selbst programmieren, lies mal unter OpenHAB und ESP8266 + MQTT nach. http://www.openhab.org/ https://github.com/tuanpmt/esp_mqtt und wenn Du ein bi0chen suchst, findet Du fertige Images für den ESP... Das OpenHAB stellt Dir die Webseite(n) für alle gesteuerten, geschalteten oder sonstwie angebundenen Devices. Im OpenHAB legst Du auch fest, wie das Device auf Knopfdruck reagieren soll (bpw: kurz -> ON, bzw. 255, lang -> 0...254) die Daten werden per MQTT an den ESP (oder per Mosquitto an den ESP) übertragen... Just my 2 cents Elux
Guest schrieb: > Hab mich mal über websockets schlau gemacht und einige erlärungen > gefunden. Das könnte mein Problem.tatsächlich lösen! Jetzt muss ich aber > leider doch noch etwas nachhaken: > Ich habe jetzt eine dauerhafte verbindung zwischen client und server, > ich weiß jetzt, dass der ESP websocket kann. Jetzt fehlt mir nur ein > wenig die Erfahrung, wie ich dem esp sagen kann er soll einen ausgang > solange schalten, wie ich den button gedrückt halte... er soll ja genau > dann reagieren sobald ich den button drücke, wie kann ich ihm sagen, > dass er den status dauerhaft überwachen soll, ohne zwischendurch den > ausgang wieder wegzuschalten? Du definierst auf der Website für deinen Button die zwei Ereignisse für Gedrückt und Losgelassen. Mit dem einen Ereigniss sendest du z.B "a" und mit anderen "b". Wenn der ESP jetzt ein "a" erkennt dann schaltet er deinen Ausgang ein. Erkennt er ein "b" schaltet er ihn wieder aus. Wird die Verbindung getrennt oder es dauert ewig dann sollte er den Ausgang natürlich auch wieder abschalten. Sascha
@Reiner: vielen Dank, werde ich mir gleich mal durchlesen! @Sascha: So in etwa hatte ich mir das auch gedacht. Nur wie genau ich das ganze umsetzen kann, was dafür zun tun ist, da haperts noch^^ Aber ich glaube ich lese mich erst mal weiter schlau was websockets angeht oder schaue mir auch den Einwurd von Reiner an. Vielen Dank erstmal für die Hilfe!
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.