Spisu treści:

Obrotowy przycisk enkodera: 6 kroków
Obrotowy przycisk enkodera: 6 kroków

Wideo: Obrotowy przycisk enkodera: 6 kroków

Wideo: Obrotowy przycisk enkodera: 6 kroków
Wideo: #0271 Enkoder obrotowy - part 04 2024, Listopad
Anonim
Obrotowy przycisk enkodera
Obrotowy przycisk enkodera

Jest to pilot obrotowy oparty na enkoderze obrotowym. Posiada następujące cechy.

  • Zasilanie bateryjne z bardzo niskim zużyciem prądu po aktywacji
  • Automatyczna aktywacja po obróceniu sterowania
  • Automatyczny sen po okresie bezczynności
  • Konfigurowalne działania po zmianie kontroli

    • Prosty dostęp do sieci z raportowaniem pozycji
    • Raportowanie MQTT
    • Sterowanie ściemniaczem lampy Lightwaverf
  • Bardzo mały rozmiar
  • Niska cena
  • Aktualizacja oprogramowania przez wifi
  • Zarządzanie dostępem do sieci Wi-Fi

Krok 1: Potrzebne komponenty i narzędzia

Potrzebne komponenty i narzędzia
Potrzebne komponenty i narzędzia
Potrzebne komponenty i narzędzia
Potrzebne komponenty i narzędzia
Potrzebne komponenty i narzędzia
Potrzebne komponenty i narzędzia

Potrzebne są następujące składniki

Obudowa - obudowa drukowana w 3D dostępna w

www.thingiverse.com/thing:3173779

  • Moduł ESP-12F ESP8266
  • Sterowanie enkoderem obrotowym (EC11) + pokrętło
  • Włącznik/wyłącznik suwakowy
  • 3 pinowe gniazdo
  • Bateria LIPO 400mAh 802030
  • refulator napięcia 3,3V (xc6203)
  • Kondensator 220uF
  • Rezystory 1M, 4K7 (2)
  • Dioda Schottky'ego 1N5819 (2)
  • MOSFET z kanałem P (AO3401)
  • Drut emaliowany (do lutowania)
  • Podłączyć przewód

Potrzebne są następujące narzędzia

Lutownica punktowa

Krok 2: Elektronika

Elektronika
Elektronika

Elektronika oparta jest na module ESP-12F. Niewielka ilość elektroniki wspomagającej służy do regulacji baterii i zapewnia automatyczne włączanie i wyłączanie.

Sterowanie mocą odbywa się za pomocą sygnału EN na ESP-12F, który musi być wysoki, aby moduł mógł się włączyć. Jest on utrzymywany na niskim poziomie przez rezystor 1M, ale może być podwyższony przez tranzystor MOSFET. Kondensator 4u7 daje minimum kilka sekund aktywacji nawet po wyłączeniu MOSFET-u.

Tranzystor MOSFET jest początkowo włączany przez jeden z obrotowych przełączników kodowania, który jest uziemiony podczas obracania. Następnie może być podtrzymywany przez sygnał GPIO podczas uruchamiania kodu ESP8266.

MOSFET wyłącza się, gdy sygnał GPIO zostanie zwolniony po wykryciu braku aktywności przez określony czas.

Krok 3: Montaż

montaż
montaż
montaż
montaż

Wykonałem następujące kroki montażowe.

  • Wydrukuj obudowę 3d
  • Dopasuj włącznik/wyłącznik i 3-pinową ładowarkę. Użyj żywicy do zamocowania i przytnij wewnętrzne znaczniki do minimalnej długości
  • Przypnij nogi na obrotowym pokrętle, aby były równo z podstawą, aby zminimalizować wysokość
  • Podłącz 4 przewody do sterowania. Jedna strona przełącznika przyciskowego jest podłączona do środkowego złącza przełączników kodowania.
  • Zamocuj enkoder w obudowie i zabezpiecz nakrętką mocującą. Dodaj pokrętło
  • Zamontuj regulator na kondensatorze i podłącz przewody z niego do pinów zasilania modułu ESP-12F
  • Przylutuj inne elementy elektroniczne z tyłu modułu ESP-12F. Do ich podpięcia użyłem drutu miedzianego emaliowanego. Na bolcu EN zastosowano krótki odcinek drutu, ponieważ ma on kilka dołączonych do niego elementów.
  • Przylutuj przewód podłączeniowy do włącznika/wyłącznika
  • Przylutuj przewody akumulatora do punktu ładowarki i zasilaj z włącznika/wyłącznika
  • Przylutuj przewód od włącznika/wyłącznika do wejścia regulatora.
  • Podłącz 4 przewody z enkodera do płytki.

Uwaga: Użyłem komponentów smd w całym tekście, aby rozmiar był jak najmniejszy. Jeśli używasz większych komponentów, prawdopodobnie będziesz musiał zwiększyć wysokość obudowy 3d. Podobnie, jeśli używasz baterii o innym rozmiarze. Wymiary można łatwo regulować w pliku SCAD.

Krok 4: Oprogramowanie

Oprogramowanie do tego projektu jest dostępne pod adresem

Jest to projekt oparty na Arduino, więc skonfiguruj środowisko programistyczne esp8266 Arduino. Możesz ustawić hasła do WifiManagera i aktualizacji oprogramowania w pliku ino na coś bardziej sensownego.

Należy go skompilować w Arduino ESP8266 IDE i wgrać do modułu szeregowo.

Pierwsze użycie uruchomi punkt dostępowy, do którego należy podłączyć telefon lub tablet. Zobacz kod hasła. Następnie należy użyć przeglądarki na telefonie lub tablecie, aby uzyskać dostęp do 192.168.4.1, co pozwoli na wybór lokalnego identyfikatora Wi-Fi i hasła. Wystarczy to zrobić tylko raz lub jeśli zmieni się sieć Wi-Fi. Od tego momentu moduł połączy się z lokalną siecią Wi-Fi, jeśli będzie to wymagane.

Należy również przesłać niektóre pliki pomocnicze. Znajdują się one w folderze danych git. Można je przesłać, uzyskując dostęp do ip/upload. Po ich przesłaniu można użyć adresu ip/edit do dalszego przesyłania w łatwiejszy sposób.

Krok 5: Konfiguracja

Konfiguracja zawarta jest w pliku rotationEncoderConfig.txt

Ma to dwa podstawowe parametry (nazwa hosta i czas braku aktywności w milisekundach oraz konfiguracja do 3 enkoderów obrotowych.

Chociaż ta kompilacja używa tylko 1 kodera, używana biblioteka pozwala na maksymalnie 3.

Każdy koder ma w pliku konfiguracyjnym wiersz z szeregiem parametrów.

  • pin1, pin2, przycisk piny GPIO
  • minimalna wartość enkodera
  • maksymalna wartość enkodera
  • wartość pozycji początkowej (ostatnia wartość jest również zapamiętywana po aktywacji).
  • rodzaj akcji do wykonania 0=Brak, 1=web GET, 2=UDP / Lightwave, 3=MQTT
  • interwał to minimalny czas trwania w ms między czynnościami
  • szablon akcji jest podstawowym szablonem akcji
  • par1, par2, par3, par4, par5 to parametry dodatkowe

Szablon akcji posiada zmienne, które są podstawiane przed użyciem

  • $p Pozycja obrotowa
  • $d Kierunek obrotu
  • Numer kodera $e (0 jest pierwsze)
  • $l tworzy funkcję fal świetlnych
  • $x, $y, $z, $u, $v substytut par1 - par5
  • $t zastępczy licznik zmian
  • $c zastępczy przecinek

Krok 6: Operacja

Po skonfigurowaniu Wi-Fi sterowanie jest aktywowane, klikając je o jeden krok w obie strony. Nie zmienia to pozycji ani nie uruchamia akcji.

Od tego momentu każdy obrót będzie wyzwalał skonfigurowaną akcję. Minimalny interwał akcji potencjalnie ograniczy akcje wykonywane podczas obracania kontrolki. Na przykład, jeśli minimalny interwał wynosi 2000ms, to szybka rotacja może wysłać tylko pierwszą i ostatnią zmianę. Ostatnia pozycja zawsze wyzwala akcję, więc jeśli sterowany jest dimmer, jego wartość będzie odzwierciedlać pozycję końcową, nawet jeśli niektóre kroki pośrednie zostaną pominięte.

Działanie fal świetlnych RF

Przykład pokazano w dostarczonym pliku konfiguracyjnym. Podstawową akcją jest UDP do łącza Lightwaverf. IP hosta i numer portu są umieszczane w par1 i par2. Ciąg Room/Device jest umieszczany w par3.

Łącze musi najpierw zostać sparowane z łączem, aby umożliwić przyjmowanie poleceń z adresu mac esp8266. W tym celu umieść plik o nazwie initLink, txt do zbioru, a następnie wyślij polecenie, obracając kontrolkę o jeden krok (po aktywacji). Spowoduje to wysłanie polecenia parowania do łącza, które należy potwierdzić, naciskając przycisk na łączu. Plik initLink jest automatycznie usuwany.

Utrzymanie

Urządzenie można wprowadzić w tryb konserwacji, w którym nie wyłączy się automatycznie, poprzez włączenie z wciśniętym pokrętłem. Aby wyjść z tego trybu wystarczy wyłączyć i ponownie włączyć.

Zalecana: