Съдържание:

Бутон за въртящ се енкодер: 6 стъпки
Бутон за въртящ се енкодер: 6 стъпки

Видео: Бутон за въртящ се енкодер: 6 стъпки

Видео: Бутон за въртящ се енкодер: 6 стъпки
Видео: LDmicro 19: Rotary Encoder Menu Navigation (Microcontroller PLC Ladder Programming with LDmicro) 2024, Ноември
Anonim
Бутон за въртящ се енкодер
Бутон за въртящ се енкодер

Това е въртящо се дистанционно управление, базирано на въртящ се енкодер. Той има следните характеристики.

  • Батерията работи с много ниска консумация на ток, когато е активирана
  • Автоматично активиране при завъртане на управлението
  • Автоматичен сън след период на бездействие
  • Конфигурируеми действия при промяна на контрола

    • Опростен уеб достъп с отчетена позиция
    • MQTT отчитане
    • Управление на диммера на лампата Lighwaverf
  • Много малък размер
  • Ниска цена
  • Актуализация на софтуера чрез wifi
  • Управление на достъпа до wifi мрежа

Стъпка 1: Необходими компоненти и инструменти

Необходими компоненти и инструменти
Необходими компоненти и инструменти
Необходими компоненти и инструменти
Необходими компоненти и инструменти
Необходими компоненти и инструменти
Необходими компоненти и инструменти

Необходими са следните компоненти

Калъф - 3D принтиран корпус на разположение на

www.thingiverse.com/thing:3173779

  • Модул ESP-12F ESP8266
  • Управление на въртящ се енкодер (EC11) + копче
  • Плъзгащ превключвател за включване/изключване
  • 3 -пинов контакт
  • LIPO батерия 400mAh 802030
  • 3.3V рефулатор на напрежение (xc6203)
  • 220uF кондензатор
  • Резистори 1M, 4K7 (2)
  • Диод Шотки 1N5819 (2)
  • P канал MOSFET (AO3401)
  • Емайлирана тел (спойка)
  • Закачете тел

Необходими са следните инструменти

Поялник с фина точка

Стъпка 2: Електроника

Електроника
Електроника

Електрониката се основава на модул ESP-12F. Малко количество поддържаща електроника се използва за регулиране на батерията и осигуряване на автоматично включване и изключване.

Контролът на мощността се осъществява чрез EN сигнал на ESP-12F, който трябва да бъде висок, за да се включи модулът. Това се поддържа ниско от 1M резистора, но може да бъде изтеглено високо от MOSFET транзистора. Кондензаторът 4u7 дава минимум няколко секунди активиране дори след изключване на MOSFET.

MOSFET транзисторът първоначално се включва от един от превключвателите на ротационен кодиране, който е заземен, докато се завърта. След това може да се поддържа от GPIO сигнал при стартиране на кода ESP8266.

MOSFET се изключва, когато GPIO сигналът се освободи след засичане на период на изчакване.

Стъпка 3: Монтаж

Монтаж
Монтаж
Монтаж
Монтаж

Направих следните стъпки за сглобяване.

  • Печат на 3d корпус
  • Поставете превключвател за включване/изключване и 3 -пинова точка на зарядно устройство. Използвайте смола, за да фиксирате на място и да отрежете вътрешните етикети до минималната дължина
  • Затегнете краката на въртящото се управление, така че да са в едно ниво с основата, за да сведете до минимум височината
  • Прикрепете 4 проводника за управление. Едната страна на бутонния превключвател е свързана към централния конектор на кодиращите превключватели.
  • Прикрепете енкодера в кутията и го закрепете с монтажната му гайка. Добавете копчето
  • Монтирайте регулатора върху кондензатора и прикрепете проводници от него към захранващи щифтове на модула ESP-12F
  • Запояйте други електронни компоненти от задната страна на модула ESP-12F. Използвах емайлирана медна тел, за да ги закача. На щифта EN беше използван къс кабел, тъй като към него има няколко компонента.
  • Запоявайте свързващия проводник към превключвателя за включване / изключване
  • Запояването на батерията води до зарядното място и се захранва от превключвателя за включване / изключване
  • Запоявайте проводника от превключвателя за включване/изключване към входа на регулатора.
  • Прикрепете 4 -те проводника от енкодера към платката.

Забележка Използвах smd компоненти навсякъде, за да поддържам размера възможно най -малък. Ако използвате по -големи компоненти, вероятно ще трябва да увеличите височината на 3d корпуса. По същия начин, ако използвате батерия с различен размер. Размерите са лесно регулируеми в SCAD файла.

Стъпка 4: Софтуер

Софтуерът за този проект е достъпен на

Това е проект, базиран на Arduino, така че създайте среда за разработка на esp8266 Arduino. Може да искате да зададете паролите за WifiManager и актуализацията на софтуера във файла ino на нещо по -разумно.

Тя трябва да бъде компилирана в Arduino ESP8266 IDE и серийно качена в модула.

При първото използване ще се стартира точка за достъп, към която трябва да бъде свързан телефон или таблет. Вижте кода за парола. След това браузърът на телефон или таблет трябва да се използва за достъп до 192.168.4.1, което ще позволи избор на локален wifi ssid и парола. Това трябва да се направи само веднъж или ако wifi мрежата се промени. От този момент нататък модулът ще се свърже с локална wifi мрежа, ако е необходимо.

Някои файлове за поддръжка също трябва да бъдат качени. Те са в папката с данни на git. Те могат да бъдат качени чрез достъп до ip/upload. След като те са качени, ip/edit може да се използва за по -лесно качване по -нататък.

Стъпка 5: Конфигурация

Конфигурацията се съдържа във файла rotaryEncoderConfig.txt

Това има два основни параметъра (име на хост и време за изчакване на неактивност милисекунди плюс конфигуриране на до 3 въртящи се енкодера.

Въпреки че тази компилация използва само 1 кодер, използваната библиотека позволява до 3.

Всеки енкодер има ред в конфигурационния файл с редица параметри.

  • pin1, pin2, бутон GPIO щифтове
  • минималната стойност на енкодера
  • максимална стойност на енкодера
  • стойност на началната позиция (последната стойност също се запомня, когато е активирана.
  • вид действие за изпълнение 0 = Няма, 1 = уеб GET, 2 = UDP / Lightwave, 3 = MQTT
  • интервалът е минималната продължителност в ms между действията
  • шаблон за действие е основен шаблон за действие
  • par1, par2, par3, par4, par5 са допълнителни параметри

Шаблонът за действие има променливи, които се заменят преди употреба

  • $ p Ротационна позиция
  • $ d Посока на въртене
  • $ енкодер номер (0 е първият)
  • $ l прави функция на светлинна вълна
  • $ x, $ y, $ z, $ u, $ v заместване par1 - par5
  • $ t заместващ брояч за смяна
  • $ c заместваща запетая

Стъпка 6: Операция

След като wifi е настроен, контролът се активира, като щракнете върху него една стъпка във всяка посока. Това не променя позицията и не задейства действие.

От този момент нататък всяко завъртане ще задейства конфигурираното действие. Минималният интервал на действие потенциално ще ограничи действията, извършвани при завъртане на контролата. Например, ако минималният интервал е 2000 mS, тогава бързото завъртане може да изпрати само първата и последната промяна. Последната позиция винаги ще задейства действие, така че ако се регулира димер, стойността му ще отразява крайната позиция, дори ако някои междинни стъпки са пропуснати.

LightwaveRF операция

Пример е показан в предоставения конфигурационен файл. Основното действие е UDP към връзката Lightwaverf. IP хостът и номерът на порта са поставени в par1 и par2. Низът за стая/устройство се поставя в пар3.

Връзката първо трябва да бъде сдвоена с връзката, за да й позволи да приема команди от mac адреса на esp8266. За да направите това, поставете файл, наречен initLink, txt в файловата система и след това изпратете команда, като завъртите контролата на една стъпка (след активиране). Това ще изпрати команда за сдвояване към връзката, която трябва да бъде потвърдена чрез натискане на бутон на връзката. Файлът initLink се изтрива автоматично.

Поддръжка

Устройството може да бъде поставено в режим на поддръжка, където няма да се изключи автоматично, като се включи с натиснат ротационен контрол. За да го извадите от този режим, просто изключете и включете отново.

Препоръчано: