Mundarija:

Rotary Enkoder tugmasi: 6 qadam
Rotary Enkoder tugmasi: 6 qadam

Video: Rotary Enkoder tugmasi: 6 qadam

Video: Rotary Enkoder tugmasi: 6 qadam
Video: Lesson 97: Controlling Servo Motor using Rotary Encoder and Display Angle On LCD 2024, Noyabr
Anonim
Rotary kodlovchi tugmasi
Rotary kodlovchi tugmasi

Bu aylanadigan enkoderga asoslangan aylanadigan masofadan boshqarish pulti. U quyidagi xususiyatlarga ega.

  • Batareya yoqilganda juda kam oqim sarflanadi
  • Boshqaruv aylantirilganda avtomatik faollashtirish
  • Bir muncha vaqt harakatsizlikdan keyin avtomatik uyqu
  • Boshqarish o'zgartirilganda sozlanishi harakatlar

    • Joylashuv haqida xabar berilgan oddiy Internetga kirish
    • MQTT hisoboti
    • Lighwaverf chiroq dimmerini boshqarish
  • Juda kichik o'lcham
  • Arzon
  • Wi -Fi orqali dasturiy ta'minotni yangilash
  • Wi -Fi tarmog'iga kirishni boshqarish

1 -qadam: Komponentlar va asboblar kerak

Kerakli komponentlar va asboblar
Kerakli komponentlar va asboblar
Kerakli komponentlar va asboblar
Kerakli komponentlar va asboblar
Kerakli komponentlar va asboblar
Kerakli komponentlar va asboblar

Quyidagi komponentlar kerak

Koson - 3D bosma muhofaza mavjud

www.thingiverse.com/thing:3173779

  • ESP-12F ESP8266 moduli
  • Rotary enkoderni boshqarish (EC11) + tugma
  • Slaydni yoqish/o'chirish tugmasi
  • 3 pinli soket
  • LIPO batareyasi 400mAh 802030
  • 3.3V kuchlanish regulyatori (xc6203)
  • 220 uF kondansatör
  • Rezistorlar 1M, 4K7 (2)
  • Shottki diodi 1N5819 (2)
  • P kanali MOSFET (AO3401)
  • Emaye sim (lehim bilan)
  • Simni ulash

Quyidagi vositalar kerak bo'ladi

Nozik nuqtali lehim temir

2 -qadam: elektronika

Elektronika
Elektronika

Elektronika ESP-12F moduliga asoslangan. Batareyani tartibga solish va avtomatik yoqish va o'chirishni ta'minlash uchun oz miqdordagi qo'llab -quvvatlovchi elektronika ishlatiladi.

Quvvatni boshqarish ESP-12F-dagi EN signali orqali amalga oshiriladi, bu modulni yoqish uchun yuqori bo'lishi kerak. Bu 1M rezistor tomonidan past darajada saqlanadi, lekin uni MOSFET tranzistoridan baland ko'tarish mumkin. 4u7 kondansatör MOSFET o'chirilganidan keyin ham bir necha soniya faollashtirish imkonini beradi.

MOSFET tranzistorini dastlab aylanadigan kodli kalitlardan biri yoqadi. ESP8266 kodi ishga tushganda, uni GPIO signalida ushlab turish mumkin.

Vaqt o'tishi bilan harakatsizlik aniqlanganda GPIO signali chiqarilganda MOSFET o'chadi.

3 -qadam: yig'ish

O'rnatish
O'rnatish
O'rnatish
O'rnatish

Men quyidagi yig'ilish bosqichlarini qildim.

  • 3d korpusini chop eting
  • O'chirish/o'chirish tugmachasini va 3 pinli zaryadlovchi moslamasini joylashtiring. O'rnatish uchun qatronlardan foydalaning va ichki teglarni minimal uzunlikka kesib oling
  • Oyoqlarini pastga aylantiring, ular balandlikni minimallashtirish uchun taglik bilan yuviladi
  • Tekshirish uchun 4 ta simni ulang. Tugma tugmachasining bir tomoni kodli kalitlarning markaziy ulagichiga ulangan.
  • Enkoderni mahkamlang va mahkamlagich bilan mahkamlang. Tugmani qo'shish
  • Regulyatorni kondansatkichga o'rnating va undan simlarni ESP-12F modulidagi quvvat pimlariga ulang
  • ESP-12F modulining orqa tomonidagi boshqa elektron komponentlarni lehimlang. Men ularni ulash uchun emalli mis simni ishlatardim. EN pinida qisqa simli sim ishlatilgan, chunki unga bir nechta komponentlar biriktirilgan.
  • Simni ulash / o'chirish kalitiga ulash
  • Batareyadagi lehim zaryadlash nuqtasiga olib keladi va uni yoqish / o'chirish tugmachasidan quvvat oladi
  • Yoqish/o'chirish tugmachasidan regulyator kirishiga simli lehim.
  • Enkoderdan 4 ta simni taxtaga ulang.

E'tibor bering, iloji boricha kichikroq bo'lish uchun smd komponentlarini ishlatardim. Agar kattaroq komponentlardan foydalansangiz, ehtimol siz 3D korpusning balandligini oshirishingiz kerak bo'ladi. Agar siz boshqa o'lchamdagi batareyadan foydalansangiz. O'lchamlarni SCAD faylida osongina sozlash mumkin.

4 -qadam: dasturiy ta'minot

Ushbu loyiha uchun dasturiy ta'minot https://github.com/roberttidey/RotaryEncoderButton saytida mavjud.

Bu Arduino -ga asoslangan loyihadir, shuning uchun esp8266 Arduino rivojlanish muhitini o'rnating. Siz ino faylidagi WifiManager va dasturiy ta'minotni yangilash parollarini yanada oqilona qilib sozlashingiz mumkin.

U Arduino ESP8266 IDE -da tuzilishi va modulga ketma -ket yuklanishi kerak.

Birinchi marta ishlatilganda kirish nuqtasi ishga tushadi, u telefon yoki planshet telefonga ulanishi kerak. Parol uchun kodni ko'ring. Telefon yoki planshetdagi brauzer 192.168.4.1 ga kirish uchun ishlatilishi kerak, bu mahalliy Wi -Fi ssid va parolni tanlash imkonini beradi. Buni faqat bir marta yoki wifi tarmog'i o'zgarganda qilish kerak. Shundan so'ng, agar kerak bo'lsa, modul mahalliy Wi -Fi tarmog'iga ulanadi.

Ba'zi qo'llab -quvvatlash fayllari ham yuklanishi kerak. Bular gitning ma'lumotlar papkasida. Ularni ip/upload ga kirish orqali yuklash mumkin. Ular yuklanganidan so'ng, ip/tahrir yordamida yuklashni osonroq qilish mumkin.

5 -qadam: Konfiguratsiya

Konfiguratsiya rotaryEncoderConfig.txt faylida mavjud

Bu ikkita asosiy parametrga ega (xost nomi va harakatsizlik millisekundlari va 3 tagacha aylanuvchi kodlovchi.

Garchi bu qurilishda faqat 1 ta kodlovchi ishlatilsa -da, ishlatilgan kutubxona 3 tagacha ruxsat beradi.

Har bir kodlovchi konfiguratsiya faylida qator parametrlarga ega qatorga ega.

  • pin1, pin2, tugma GPIO pinlari
  • kodlovchining minimal qiymati
  • kodlovchining maksimal qiymati
  • boshlang'ich pozitsiyasi qiymati (oxirgi qiymat faollashtirilganda ham esda qoladi.
  • bajariladigan harakat turi 0 = Yo'q, 1 = veb GET, 2 = UDP / Lightwave, 3 = MQTT
  • interval - bu harakatlar orasidagi milodiy minimal vaqt
  • harakat shabloni - bu harakat uchun asosiy shablon
  • par1, par2, par3, par4, par5 qo'shimcha parametrlardir

Amal shabloni ishlatishdan oldin almashtiriladigan o'zgaruvchilarga ega

  • $ p Rotary pozitsiyasi
  • $ d aylanish yo'nalishi
  • $ e kodlovchi raqami (birinchi - 0)
  • $ l yorug'lik to'lqini funktsiyasini bajaradi
  • $ x, $ y, $ z, $ u, $ v substiute par1 - par5
  • $ t o'rnini bosadigan hisoblagich
  • $ c o'rnini bosuvchi vergul

6 -qadam: operatsiya

Wi -Fi o'rnatilgandan so'ng, boshqaruv tugmachasini bosish orqali faollashtiriladi. Bu pozitsiyani o'zgartirmaydi yoki harakatni qo'zg'atmaydi.

Shu vaqtdan boshlab har qanday aylanish konfiguratsiya qilingan harakatni ishga tushiradi. Minimal harakat oralig'i, boshqaruv aylantirilganda bajariladigan harakatlarni cheklab qo'yishi mumkin. Masalan, agar minimal interval 2000 mS bo'lsa, tez aylanish faqat birinchi va oxirgi o'zgarishlarni yuborishi mumkin. Oxirgi pozitsiya har doim harakatni qo'zg'atadi, shuning uchun agar dimmer boshqarilsa, uning qiymati oxirgi pozitsiyani aks ettiradi, hatto ba'zi oraliq qadamlar o'tkazib yuborilgan bo'lsa ham.

LightwaveRF ishlashi

Misol berilgan konfiguratsiya faylida ko'rsatilgan. Asosiy harakat - Lightwaverf havolasiga UDP. Asosiy IP va port raqami par1 va par2 ga qo'yiladi. Xona/qurilma satri par3 ga qo'yilgan.

Esp8266 mak manzilidan buyruqlarni qabul qilish uchun havola avval havola bilan bog'lanishi kerak. Buning uchun initLink deb nomlangan faylni fayl tizimiga txt -ga joylashtiring va boshqaruvni bir qadam aylantirish orqali buyruq yuboring (faollashtirilgandan so'ng). Bu bog'lanish buyrug'ini yuboradi, uni havoladagi tugmani bosish orqali tasdiqlash kerak. InitLink fayli avtomatik ravishda o'chiriladi.

Xizmat

Qurilmani parvarishlash rejimiga o'tkazish mumkin, bu erda u avtomatik ravishda o'chmaydi, aylantiruvchi qo'mondon tugmachasini bosib yoqiladi. Bu rejimdan chiqish uchun uni o'chiring va qaytadan yoqing.

Tavsiya: