İçindekiler:

Döner Kodlayıcı Düğmesi: 6 Adım
Döner Kodlayıcı Düğmesi: 6 Adım

Video: Döner Kodlayıcı Düğmesi: 6 Adım

Video: Döner Kodlayıcı Düğmesi: 6 Adım
Video: Apple watch su kilidi nasıl açılır? 2024, Kasım
Anonim
Döner Kodlayıcı Düğmesi
Döner Kodlayıcı Düğmesi

Bu, döner kodlayıcıya dayalı döner bir uzaktan kumandadır. Aşağıdaki özelliklere sahiptir.

  • Aktive edildiğinde çok düşük akım tüketimi ile çalışan pil
  • Kontrol döndürüldüğünde otomatik aktivasyon
  • Bir süre hareketsiz kaldıktan sonra otomatik uyku
  • Kontrol değiştirildiğinde yapılandırılabilir eylemler

    • Konum bildirilerek basit web erişimi
    • MQTT raporlaması
    • Lightwaverf lamba dimmerinin kontrolü
  • Çok küçük boyut
  • Düşük maliyetli
  • Wifi üzerinden yazılım güncelleme
  • Wifi ağına erişim yönetimi

Adım 1: Gerekli Bileşenler ve Araçlar

Gerekli Bileşenler ve Araçlar
Gerekli Bileşenler ve Araçlar
Gerekli Bileşenler ve Araçlar
Gerekli Bileşenler ve Araçlar
Gerekli Bileşenler ve Araçlar
Gerekli Bileşenler ve Araçlar

Aşağıdaki bileşenler gereklidir

Kasa - 3D baskılı muhafaza şu adreste mevcuttur:

www.thingiverse.com/thing:3173779

  • ESP-12F ESP8266 modülü
  • Döner Kodlayıcı kontrolü (EC11) + Düğme
  • Açma/Kapama kaydırma anahtarı
  • 3 pinli soket
  • LIPO pil 400mAh 802030
  • 3,3V voltaj reflatörü (xc6203)
  • 220uF kapasitör
  • Dirençler 1M, 4K7 (2)
  • Schottky diyot 1N5819 (2)
  • P kanalı MOSFET (AO3401)
  • Emaye tel (lehimlenebilir)
  • Kabloyu bağla

Aşağıdaki araçlar gereklidir

İnce nokta havya

2. Adım: Elektronik

Elektronik
Elektronik

Elektronik, bir ESP-12F modülüne dayanmaktadır. Pili düzenlemek ve otomatik açma ve kapama sağlamak için az miktarda destek elektroniği kullanılır.

Güç kontrolü, modülün açılması için yüksek olması gereken ESP-12F üzerindeki EN sinyali aracılığıyla yapılır. Bu, 1M direnç tarafından düşük tutulur ancak MOSFET transistörü tarafından yükseğe çekilebilir. 4u7 kapasitör, MOSFET kapandıktan sonra bile minimum birkaç saniye etkinleştirme sağlar.

MOSFET transistörü başlangıçta, dönerken topraklanan döner kodlama anahtarlarından biri tarafından açılır. Daha sonra ESP8266 kodu başlatılırken bir GPIO sinyali ile açık tutulabilir.

MOSFET, bir zaman aşımı süresi boyunca hareketsizlik algılandıktan sonra GPIO sinyali serbest bırakıldığında kapanır.

Adım 3: Montaj

toplantı
toplantı
toplantı
toplantı

Aşağıdaki montaj adımlarını yaptım.

  • 3B muhafazayı yazdır
  • Açma/kapama düğmesini ve 3 pinli şarj noktasını takın. Yerine sabitlemek için reçine kullanın ve dahili etiketleri minimum uzunluğa klipsleyin
  • Yüksekliği en aza indirmek için ayakları tabanla aynı hizada olacak şekilde döner kumandaya klipsleyin
  • Kontrol etmek için 4 kablo bağlayın. Basmalı düğme anahtarının bir tarafı, kodlama anahtarlarının merkezi konektörüne bağlanır.
  • Enkoderi kasaya takın ve montaj somunu ile sabitleyin. Düğme Ekle
  • Regülatörü kondansatöre monte edin ve kabloları ESP-12F modülündeki güç pinlerine bağlayın
  • ESP-12F modülünün arka tarafındaki diğer elektronik bileşenleri lehimleyin. Bunları bağlamak için emaye bakır tel kullandım. EN pimine bağlı birkaç bileşene sahip olduğu için kısa bir kablo saplaması kullanıldı.
  • Açma / kapama anahtarına bağlı teli lehimleyin
  • Akü üzerindeki lehim, şarj noktasına ve açma/kapama anahtarından beslemeye yol açar
  • Açma/kapama anahtarından regülatör girişine tel üzerinde lehim.
  • Enkoderden gelen 4 kabloyu karta bağlayın.

Not Boyutu olabildiğince küçük tutmak için baştan sona smd bileşenleri kullandım. Daha büyük bileşenler kullanıyorsanız, muhtemelen 3d muhafazanın yüksekliğini artırmanız gerekecektir. Aynı şekilde farklı boyutta bir pil kullanırsanız. Boyutlar SCAD dosyasında kolayca ayarlanabilir.

4. Adım: Yazılım

Bu projenin yazılımı https://github.com/roberttidey/RotaryEncoderButton adresinde mevcuttur.

Arduino tabanlı bir projedir, bu nedenle bir esp8266 Arduino geliştirme ortamı kurun. WifiManager ve ino dosyasındaki yazılım güncellemesi için şifreleri daha mantıklı bir şekilde ayarlamak isteyebilirsiniz.

Arduino ESP8266 IDE'de derlenmeli ve modüle seri olarak yüklenmelidir.

İlk kullanımda, bir telefon veya tablet telefona bağlanması gereken bir erişim noktası başlatılacaktır. Şifre için koda bakın. Telefon veya tablet üzerindeki tarayıcı daha sonra yerel wifi ssid ve şifre seçimine izin verecek olan 192.168.4.1'e erişmek için kullanılmalıdır. Bunun yalnızca bir kez veya wifi ağı değiştiğinde yapılması gerekir. O andan itibaren modül, gerekirse yerel wifi ağına bağlanacaktır.

Bazı destek dosyaları da yüklenmelidir. Bunlar git'in veri klasöründedir. IP/upload'a erişilerek yüklenebilirler. Bunlar yüklendikten sonra, daha kolay bir şekilde daha fazla yükleme yapmak için ip/edit kullanılabilir.

Adım 5: Yapılandırma

Yapılandırma, rotaryEncoderConfig.txt dosyasında bulunur

Bunun iki temel parametresi vardır (ana bilgisayar adı ve hareketsizlik zaman aşımı milisaniye artı 3 adede kadar döner kodlayıcıyı yapılandırma.

Bu derleme yalnızca 1 kodlayıcı kullanmasına rağmen, kullanılan kitaplık 3'e kadar izin verir.

Her kodlayıcının yapılandırma dosyasında bir dizi parametre içeren bir satırı vardır.

  • pin1, pin2, buton GPIO pinleri
  • enkoderin min değeri
  • enkoderin maksimum değeri
  • başlangıç konumu değeri (etkinleştirildiğinde son değer de hatırlanır.
  • gerçekleştirilecek eylem türü 0=Yok, 1=web GET, 2=UDP / Lightwave, 3=MQTT
  • aralık, eylemler arasındaki ms cinsinden minimum süredir
  • eylem şablonu, eylem için temel şablondur
  • par1, par2, par3, par4, par5 ek parametrelerdir

Eylem şablonu, kullanımdan önce değiştirilen değişkenlere sahiptir.

  • $p Döner konum
  • $d Döner yön
  • $e kodlayıcı numarası (0 ilktir)
  • $l bir ışık dalgası işlevi yapar
  • $x, $y, $z, $u, $v ikame par1 - par5
  • $t ikame değişim sayacı
  • $c yerine virgül

Adım 6: Çalıştırma

Wifi kurulduktan sonra, her iki şekilde de bir adım tıklanarak kontrol etkinleştirilir. Bu, konumu değiştirmez veya bir eylemi tetiklemez.

O andan itibaren herhangi bir döndürme, yapılandırılmış eylemi tetikleyecektir. Minimum eylem aralığı, kontrol döndürülürken gerçekleştirilen eylemleri potansiyel olarak sınırlayacaktır. Örneğin, minimum aralık 2000mS ise, hızlı bir dönüş yalnızca ilk ve son değişikliği gönderebilir. Son konum her zaman bir eylemi tetikleyecektir, bu nedenle bir dimmer kontrol ediliyorsa, değeri bazı ara adımlar atlanmış olsa bile son konumu yansıtacaktır.

LightwaveRF işlemi

Verilen yapılandırma dosyasında bir örnek gösterilmektedir. Temel eylem, Lightwaverf bağlantısına UDP'dir. Ana bilgisayar ip ve port numarası par1 ve par2'ye konur. Oda/Aygıt dizisi par3'e yerleştirilir.

Bağlantının, esp8266'nın mac adresinden komutları kabul etmesine izin vermek için önce bağlantıyla eşleştirilmesi gerekir. Bunu yapmak için initLink, txt adlı bir dosyayı dosyalama sistemine yerleştirin ve ardından kontrolü bir adım döndürerek (etkinleştirdikten sonra) bir komut gönderin. Bu, bağlantıdaki bir düğmeye basılarak onaylanması gereken bağlantıya bir eşleştirme komutu gönderir. initLink dosyası otomatik olarak silinir.

Bakım onarım

Cihaz, döner kumanda basılı tutularak açılarak otomatik olarak kapanmayacağı bir bakım moduna alınabilir. Bu moddan çıkmak için cihazı kapatıp tekrar açmanız yeterlidir.

Önerilen: