Drehgeber-Taste - Gunook
Drehgeber-Taste - Gunook
Anonim
Drehgeber-Taste
Drehgeber-Taste

Dies ist eine Drehfernbedienung basierend auf einem Drehgeber. Es hat die folgenden Funktionen.

  • Batteriebetrieben mit sehr geringem Stromverbrauch im aktivierten Zustand
  • Automatische Aktivierung beim Drehen des Reglers
  • Automatischer Schlaf nach einer Zeit der Inaktivität
  • Konfigurierbare Aktionen bei Änderung der Steuerung

    • Einfacher Webzugriff mit Positionsmeldung
    • MQTT-Berichte
    • Steuerung des Lichtwellen-Lampen-Dimmers
  • Sehr kleine Größe
  • Kostengünstig
  • Software-Update über WLAN
  • Verwaltung des Zugangs zum WLAN-Netzwerk

Schritt 1: Benötigte Komponenten und Werkzeuge

Benötigte Komponenten und Werkzeuge
Benötigte Komponenten und Werkzeuge
Benötigte Komponenten und Werkzeuge
Benötigte Komponenten und Werkzeuge
Benötigte Komponenten und Werkzeuge
Benötigte Komponenten und Werkzeuge

Folgende Komponenten werden benötigt

Gehäuse - 3D-gedrucktes Gehäuse erhältlich bei

www.thingiverse.com/thing:3173779

  • ESP-12F ESP8266-Modul
  • Drehgebersteuerung (EC11) + Drehknopf
  • Ein/Aus-Schiebeschalter
  • 3-polige Buchse
  • LIPO-Akku 400mAh 802030
  • 3.3V Spannungsreflektor (xc6203)
  • 220uF Kondensator
  • Widerstände 1M, 4K7 (2)
  • Schottky-Diode 1N5819 (2)
  • P-Kanal-MOSFET (AO3401)
  • Lackdraht (lötbar)
  • Draht anschließen

Folgende Werkzeuge werden benötigt

Lötkolben mit feiner Spitze

Schritt 2: Elektronik

Elektronik
Elektronik

Die Elektronik basiert auf einem ESP-12F-Modul. Eine kleine Unterstützungselektronik wird verwendet, um die Batterie zu regulieren und für das automatische Ein- und Ausschalten zu sorgen.

Die Leistungssteuerung erfolgt über das EN-Signal am ESP-12F, das hoch sein muss, damit das Modul hochfährt. Dies wird durch den 1M-Widerstand niedrig gehalten, kann aber durch den MOSFET-Transistor hochgezogen werden. Der 4u7-Kondensator ermöglicht eine Aktivierung von mindestens mehreren Sekunden, auch nachdem der MOSFET ausgeschaltet wurde.

Der MOSFET-Transistor wird anfänglich eingeschaltet, indem einer der Drehcodierschalter beim Drehen geerdet wird. Es kann dann durch ein GPIO-Signal eingeschaltet bleiben, wenn der ESP8266-Code startet.

Der MOSFET schaltet sich aus, wenn das GPIO-Signal freigegeben wird, nachdem eine Inaktivität für eine Zeitüberschreitung erkannt wurde.

Schritt 3: Montage

Montage
Montage
Montage
Montage

Ich habe die folgenden Montageschritte durchgeführt.

  • 3D-Gehäuse drucken
  • An/Aus-Schalter und 3-Pin-Ladeanschluss montieren. Verwenden Sie Harz zum Fixieren und befestigen Sie die internen Etiketten auf die minimale Länge
  • Klemmen Sie die Beine am Drehregler ab, damit sie bündig mit der Basis sind, um die Höhe zu minimieren
  • Bringen Sie 4 Drähte an, um zu steuern. Eine Seite des Tastschalters ist mit dem Zentralstecker der Kodierschalter verbunden.
  • Geber im Koffer anbringen und mit der Befestigungsmutter sichern. Knopf hinzufügen
  • Montieren Sie den Regler am Kondensator und befestigen Sie die Drähte davon an den Stromstiften des ESP-12F-Moduls
  • Löten Sie andere elektronische Komponenten auf der Rückseite des ESP-12F-Moduls. Ich habe Kupferlackdraht verwendet, um diese anzuschließen. Am EN-Pin wurde ein kurzer Drahtstumpf verwendet, da an diesem mehrere Komponenten befestigt sind.
  • Löten Sie den Anschlussdraht an den Ein / Aus-Schalter
  • Batterie anlöten führt zum Ladepunkt und Speisung vom Ein- / Ausschalter
  • Löten Sie das Kabel vom Ein/Aus-Schalter zum Reglereingang.
  • Befestigen Sie den 4-Draht vom Encoder an der Platine.

Hinweis Ich habe durchgehend SMD-Komponenten verwendet, um die Größe so klein wie möglich zu halten. Wenn Sie größere Komponenten verwenden, müssen Sie wahrscheinlich die Höhe des 3D-Gehäuses erhöhen. Ebenso, wenn Sie eine andere Batteriegröße verwenden. Die Abmessungen sind in der SCAD-Datei leicht einstellbar.

Schritt 4: Software

Die Software für dieses Projekt ist verfügbar unter

Es ist ein Arduino-basiertes Projekt, also richten Sie eine esp8266 Arduino-Entwicklungsumgebung ein. Vielleicht möchten Sie die Passwörter für WifiManager und Software-Update in der ino-Datei auf etwas Sinnvolleres setzen.

Es sollte in der Arduino ESP8266 IDE kompiliert und seriell auf das Modul hochgeladen werden.

Bei der erstmaligen Verwendung wird ein Zugangspunkt gestartet, der mit einem Telefon oder Tablet verbunden werden sollte. Siehe Code für Passwort. Der Browser auf dem Telefon oder Tablet sollte dann verwendet werden, um auf 192.168.4.1 zuzugreifen, was die Auswahl der lokalen WLAN-Ssid und des Passworts ermöglicht. Dies muss nur einmal durchgeführt werden oder wenn sich das WLAN-Netzwerk ändert. Von da an verbindet sich das Modul bei Bedarf mit dem lokalen WLAN-Netzwerk.

Einige Support-Dateien sollten ebenfalls hochgeladen werden. Diese befinden sich im Datenordner des Git. Sie können hochgeladen werden, indem Sie auf ip/upload zugreifen. Sobald diese hochgeladen wurden, kann ip/edit verwendet werden, um weitere Uploads auf einfachere Weise durchzuführen.

Schritt 5: Konfiguration

Die Konfiguration ist in der Datei rotationEncoderConfig.txt enthalten

Dies hat zwei Basisparameter (Hostname und Inaktivitäts-Timeout-Millisekunden sowie die Konfiguration von bis zu 3 Drehgebern.

Obwohl dieser Build nur 1 Encoder verwendet, ermöglicht die verwendete Bibliothek bis zu 3.

Jeder Encoder hat eine Zeile in der Konfigurationsdatei mit einer Reihe von Parametern.

  • Pin1, Pin2, Taste GPIO-Pins
  • min Wert des Encoders
  • Maximalwert des Encoders
  • Startpositionswert (letzter Wert wird bei Aktivierung auch gespeichert.
  • Art der auszuführenden Aktion 0=Keine, 1=Web GET, 2=UDP / Lightwave, 3=MQTT
  • Intervall ist die Mindestdauer in ms zwischen den Aktionen
  • Aktionsvorlage ist eine grundlegende Vorlage für Aktionen
  • par1, par2, par3, par4, par5 sind zusätzliche Parameter

Die Aktionsvorlage enthält Variablen, die vor der Verwendung ersetzt werden

  • $p Drehposition
  • $d Drehrichtung
  • $e Gebernummer (0 ist zuerst)
  • $l macht eine Lichtwellenfunktion
  • $x, $y, $z, $u, $v ersetzen par1 - par5
  • $t Ersatzgeldzähler
  • $c Ersatzkomma

Schritt 6: Betrieb

Nachdem das WLAN eingerichtet ist, wird die Steuerung aktiviert, indem Sie in beide Richtungen darauf klicken. Dadurch wird weder die Position verändert noch eine Aktion ausgelöst.

Von da an löst jede Drehung die konfigurierte Aktion aus. Das minimale Aktionsintervall begrenzt möglicherweise die Aktionen, die beim Rotieren des Steuerelements ausgeführt werden. Wenn das Mindestintervall beispielsweise 2000 ms beträgt, kann eine schnelle Rotation nur die erste und letzte Änderung senden. Die letzte Position löst immer eine Aktion aus. Wenn also ein Dimmer angesteuert wird, spiegelt sein Wert die Endposition wider, auch wenn einige Zwischenschritte ausgelassen werden.

LightwaveRF-Betrieb

Ein Beispiel ist in der mitgelieferten Konfigurationsdatei dargestellt. Die grundlegende Aktion ist UDP zum Lightwaverf-Link. Die Host-IP und die Portnummer werden in par1 und par2 eingetragen. Der String Room/Device wird in Par3 eingefügt.

Der Link muss zuerst mit dem Link gepaart werden, damit er Befehle von der Mac-Adresse des esp8266 annehmen kann. Legen Sie dazu eine Datei namens initLink, txt in das Ablagesystem und senden Sie dann einen Befehl, indem Sie den Regler einen Schritt drehen (nach Aktivierung). Dadurch wird ein Pairing-Befehl an den Link gesendet, der durch Drücken einer Taste auf dem Link bestätigt werden muss. Die initLink-Datei wird automatisch gelöscht.

Instandhaltung

Das Gerät kann durch Einschalten mit gedrücktem Drehregler in einen Wartungsmodus versetzt werden, in dem es sich nicht automatisch abschaltet. Um diesen Modus zu verlassen, schalten Sie es einfach aus und wieder ein.