Cuprins:
- Pasul 1: Componente și instrumente necesare
- Pasul 2: Electronică
- Pasul 3: Asamblare
- Pasul 4: Software
- Pasul 5: Configurare
- Pasul 6: Operațiune
Video: Buton codificator rotativ: 6 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:41
Aceasta este o telecomandă rotativă bazată pe un codificator rotativ. Are următoarele caracteristici.
- Baterie acționată cu un consum foarte redus de curent atunci când este activată
- Activare automată când comanda este rotită
- Somn automat după o perioadă de inactivitate
-
Acțiuni configurabile atunci când controlul este modificat
- Acces web simplu cu poziția raportată
- Raportarea MQTT
- Controlul regulatorului de lumină Lighwaverf
- Dimensiune foarte mică
- Cost scăzut
- Actualizare software prin wifi
- Gestionarea accesului la rețeaua wifi
Pasul 1: Componente și instrumente necesare
Sunt necesare următoarele componente
Carcasă - Carcasă imprimată 3D disponibilă la
www.thingiverse.com/thing:3173779
- Modul ESP-12F ESP8266
- Controlul codificatorului rotativ (EC11) + Buton
- Comutator de glisare On / Off
- Priză cu 3 pini
- Baterie LIPO 400mAh 802030
- Refulator de tensiune de 3,3 V (xc6203)
- Condensator 220uF
- Rezistoare 1M, 4K7 (2)
- Diodă Schottky 1N5819 (2)
- MOSFET canal P (AO3401)
- Sârmă emailată (lipibilă)
- Conectați sârmă
Sunt necesare următoarele instrumente
Fier de lipit cu punct fin
Pasul 2: Electronică
Electronica se bazează pe un modul ESP-12F. O cantitate mică de suport electronic este utilizată pentru a regla bateria și pentru a asigura pornirea și oprirea automată.
Controlul puterii se face prin semnalul EN de pe ESP-12F, care trebuie să fie ridicat pentru ca modulul să se alimenteze. Acest lucru este menținut scăzut de rezistorul de 1M, dar poate fi tras de sus de tranzistorul MOSFET. Condensatorul 4u7 oferă minimum câteva secunde de activare chiar și după oprirea MOSFET.
Tranzistorul MOSFET este pornit inițial de unul dintre comutatoarele de codificare rotative care este împământat pe măsură ce se întoarce. Apoi poate fi păstrat de un semnal GPIO pe măsură ce pornește codul ESP8266.
MOSFET se oprește atunci când semnalul GPIO este eliberat după detectarea inactivității pentru o perioadă de expirare.
Pasul 3: Asamblare
Am făcut următorii pași de asamblare.
- Imprimă carcasă 3D
- Montați comutatorul de pornire / oprire și punctul de încărcare cu 3 pini. Folosiți rășina pentru a fixa la loc și tăiați etichetele interne la lungimea minimă
- Prindeți picioarele pe comanda rotativă, astfel încât acestea să fie la nivelul bazei pentru a minimiza înălțimea
- Atașați 4 fire de control. O parte a butonului este conectată la conectorul central al comutatoarelor de codare.
- Atașați codificatorul în caz și fixați-l cu piulița sa de montare. Adăugați butonul
- Montați regulatorul pe condensator și atașați firele de acesta la pinii de alimentare de pe modulul ESP-12F
- Lipiți alte componente electronice pe partea din spate a modulului ESP-12F. Am folosit sârmă de cupru smalț pentru a le conecta. Pe știftul EN a fost utilizat un butuc scurt de sârmă, deoarece acesta are atașate mai multe componente.
- Lipiți cablul la comutatorul de pornire / oprire
- Lipirea bateriei duce la punctul de încărcare și se alimentează de la comutatorul de pornire / oprire
- Lipire pe fir de la comutatorul de pornire / oprire la intrarea regulatorului.
- Atașați cele 4 fire de la codificator la placa.
Rețineți că am folosit componente smd pe tot parcursul pentru a menține dimensiunea cât mai mică posibil. Dacă utilizați componente mai mari, atunci va trebui probabil să măriți înălțimea carcasei 3d. La fel dacă utilizați o baterie de dimensiuni diferite. Dimensiunile sunt ușor de reglat în fișierul SCAD.
Pasul 4: Software
Software-ul pentru acest proiect este disponibil la
Este un proiect bazat pe Arduino, deci configurați un mediu de dezvoltare Arduino esp8266. Poate doriți să setați parolele pentru WifiManager și actualizarea software-ului în fișierul ino la ceva mai sensibil.
Ar trebui să fie compilat în Arduino ESP8266 IDE și încărcat în serie în modul.
Prima utilizare va începe un punct de acces la care ar trebui să fie conectat un telefon sau o tabletă. Consultați codul pentru parolă. Browser-ul de pe telefon sau tabletă ar trebui să fie apoi utilizat pentru a accesa 192.168.4.1, ceea ce va permite selectarea SSD-ului local și a parolei. Acest lucru trebuie făcut numai o dată sau dacă se schimbă rețeaua wifi. De atunci modulul se va conecta la rețeaua WiFi locală, dacă este necesar.
Unele fișiere de asistență ar trebui, de asemenea, să fie încărcate. Acestea se află în folderul de date al git-ului. Acestea pot fi încărcate accesând ip / upload. Odată ce acestea au fost încărcate, atunci ip / edit poate fi folosit pentru a face încărcări ulterioare într-un mod mai ușor.
Pasul 5: Configurare
Configurarea este conținută în fișierul rotaryEncoderConfig.txt
Acesta are doi parametri de bază (numele gazdei și expirarea timpului de inactivitate în milisecunde, plus configurarea a până la 3 codificatoare rotative.
Deși această versiune folosește doar 1 codificator, biblioteca utilizată permite până la 3.
Fiecare codificator are o linie în fișierul de configurare cu un număr de parametri.
- pin1, pin2, buton pinii GPIO
- valoarea minima a codificatorului
- valoarea maximă a codificatorului
- valoarea poziției de pornire (ultima valoare este, de asemenea, amintită când este activată.
- tip de acțiune de realizat 0 = Niciuna, 1 = GET web, 2 = UDP / Lightwave, 3 = MQTT
- intervalul este durata minimă în ms între acțiuni
- șablonul de acțiune este un șablon de bază pentru acțiune
- par1, par2, par3, par4, par5 sunt parametri suplimentari
Șablonul de acțiune are variabile care se substituie înainte de utilizare
- $ p Poziția rotativă
- $ d Direcția rotativă
- $ e numărul codificatorului (0 este primul)
- $ l face o funcție lightwave
- $ x, $ y, $ z, $ u, $ v substiute par1 - par5
- $ t înlocuiește contorul de schimbare
- $ c virgulă înlocuitoare
Pasul 6: Operațiune
După ce wifi este configurat, atunci controlul este activat făcând clic pe el într-un singur pas. Aceasta nu schimbă poziția și nu declanșează o acțiune.
De atunci, orice rotație va declanșa acțiunea configurată. Intervalul minim de acțiune va limita potențial acțiunile efectuate pe măsură ce controlul este rotit. De exemplu, dacă intervalul minim este de 2000mS, atunci o rotație rapidă poate trimite doar prima și ultima modificare. Ultima poziție va declanșa întotdeauna o acțiune, astfel încât, dacă un regulator de intensitate este controlat, valoarea acesteia va reflecta poziția finală, chiar dacă unele etape intermediare sunt ratate.
Funcționare LightwaveRF
Un exemplu este prezentat în fișierul de configurare furnizat. Acțiunea de bază este UDP către legătura Lightwaverf. IP-ul gazdei și numărul portului sunt puse în par1 și par2. Șirul Room / Device este pus în par3.
Link-ul trebuie mai întâi asociat cu link-ul pentru a-i permite să accepte comenzi de la adresa Mac a esp8266. Pentru a face acest lucru, plasați un fișier numit initLink, txt în sistemul de înregistrare și apoi trimiteți o comandă prin rotirea controlului un pas (după activare). Aceasta va trimite o comandă de asociere către link, care trebuie confirmată prin apăsarea unui buton de pe link. Fișierul initLink este șters automat.
întreținere
Dispozitivul poate fi pus într-un mod de întreținere în care nu se va opri automat, pornind cu butonul rotativ apăsat. Pentru a-l scoate din acest mod, pur și simplu opriți și reporniți din nou.
Recomandat:
Timer cu Arduino și codificator rotativ: 5 pași
Temporizator cu Arduino și codificator rotativ: Temporizatorul este un instrument folosit adesea atât în activități industriale, cât și în gospodărie. Acest ansamblu este ieftin și ușor de realizat. Este, de asemenea, foarte versatil, putând încărca un program ales în funcție de nevoi. Există mai multe programe scrise de mine, pentru Ardui
Braț robot controlat codificator rotativ: 6 pași
Braț robot controlat codificator rotativ: am vizitat howtomechatronics.com și am văzut brațul robot controlat prin bluetooth acolo. Nu-mi place să folosesc Bluetooth, plus am văzut că putem controla servo cu codificator rotativ, așa că l-am reproiectat pentru a putea controla robotul utilizați codificatorul rotativ și înregistrați-l
Timer de alimentare cu Arduino și codificator rotativ: 7 pași (cu imagini)
Timer de alimentare cu Arduino și codificator rotativ: Acest timer de alimentare se bazează pe temporizatorul prezentat la: https: //www.instructables.com/id/Timer-With-Arduin … Un modul de alimentare cu energie și un SSR (releu de stare solidă) ) au fost atașate la acesta. Sarcini de putere de până la 1KW pot fi operate și cu modificări minime l
Utilizați un motor pas cu pas ca codificator rotativ: 9 pași (cu imagini)
Utilizați un motor pas cu pas ca codificator rotativ: codificatoarele rotative sunt excelente pentru utilizarea în proiecte de microcontroler ca dispozitiv de intrare, dar performanța lor nu este foarte bună și satisfăcătoare. De asemenea, având o mulțime de motoare pas cu pas de rezervă, am decis să le dau un scop. Deci, dacă aveți un pas cu pas
Cum se folosește motorul pas cu pas ca codificator rotativ și afișaj OLED pentru pași: 6 pași
Cum se folosește motorul pas cu pas ca codificator rotativ și afișaj OLED pentru pași: În acest tutorial vom învăța cum să urmăriți pașii motorului pas cu pas pe afișajul OLED. Urmăriți un videoclip demonstrativ. Creditul pentru tutorialul original este destinat utilizatorului YouTube „sky4fly”