Tartalomjegyzék:

Gesztusvezérelt univerzális távirányító csomópont-MCU-val: 12 lépés
Gesztusvezérelt univerzális távirányító csomópont-MCU-val: 12 lépés

Videó: Gesztusvezérelt univerzális távirányító csomópont-MCU-val: 12 lépés

Videó: Gesztusvezérelt univerzális távirányító csomópont-MCU-val: 12 lépés
Videó: VII. Országos Interaktív Tábla Konferencia - összefoglaló 2024, November
Anonim
Gesztusvezérelt univerzális távirányító csomópont-MCU-val
Gesztusvezérelt univerzális távirányító csomópont-MCU-val

Üdv mindenkinek és üdvözlöm ezt a projektet! Elég lusta ember vagyok, és egy lusta ember rémálma az, ha tévét néz, amikor rájön, hogy a távirányító túl messze van! Rájöttem, hogy a távirányítóm sosem lesz túl messze, ha mindig kéznél van. Ez inspirált engem a LAZr, a gesztusokkal vezérelt univerzális távirányító létrehozására.

Ebben a projektben olyan kesztyűt fogok készíteni, amely érzékelőkkel van felszerelve, és amelyek képesek érzékelni a kézmozdulatokat, és egyszerű ujjmozdulattal jeleket tudnak küldeni a TV -hez vagy más készülékhez.

Remélem tetszeni fog ez a projekt, és szavazni fogtok rá az Epilog Lézerversenyen!

1. lépés: Az alkatrészek

A részek
A részek

Ez a projekt a következő részeket tartalmazza:

Kesztyű (5,00 USD)

Node-MCU / ESP8266 (3,00 USD)

Ez a projekt mikrokontrollere és agya. Képes csatlakozni a WiFi -hez, ami nagyon hasznosá teszi az otthoni automatizálási alkalmazásokban és az ehhez hasonló projektekben, mivel a WiFi vezérlés megvalósítható ebben a projektben.

5 flex érzékelő (egyenként 7,00 USD)

Ezek az érzékelők mérik a hajlítást, hasonlóan ahhoz, ahogyan az LDR (fényfüggő ellenállás) a fényszinteket méri. Ezeket az ujjak hajlításának és kézmozdulatainak mérésére használják.

IR -adó ($ 0.30)

Ez az alkatrész infravörös jeleket továbbít olyan eszközökre, mint a tévék, DVD -lejátszók stb.

IR -vevő (1,00 USD)

Ez az alkatrész a távirányítók által küldött IR jeleket fogadja. A távirányítókról érkező jelek dekódolására van szükség. Ezeket a jeleket lehet használni a készülék kesztyűből történő vezérléséhez. Ajánlom a TSOP4838 -at, mivel sikeresen teszteltem Sharp, Samsung és Apple TV -vel.

5 db 10 k ohmos ellenállás (egyenként 0,01 dollár)

Ezekre az ellenállásokra mindegyik Flex érzékelőre szükség van.

220 ohmos ellenállás (egyenként 0,01 USD)

Ezekre az ellenállásokra mindegyik Flex érzékelőre szükség van.

Tranzisztor (0,39 USD)

A tranzisztor infravörös átvitelre szolgál.

74HC4051N Multiplexer IC (0,22 USD)

Mivel a csomópont-MCU-nak csak egy analóg portja van, ezt az IC-t arra használják, hogy az analóg érintkezőt több részre "ossza", amelyek a flex érzékelőkhöz vannak csatlakoztatva. Erről bővebben később.

Sok jumper kábel! (Ha úgy dönt, hogy kenyérlapot használ)

Az alábbi részek nem kötelezőek, de hasznosak, ha használják:

16 tűs IC aljzat

Női fejlécek

2. lépés: A multiplexer IC (74HC4051N)

A Multiplexer IC (74HC4051N)
A Multiplexer IC (74HC4051N)

Bár a Node-MCU olyan kiváló tulajdonságokkal rendelkezik, mint a WiFi és az Arduino IDE kompatibilitás, vannak hátrányai. Csak egy analóg csapja van, ami nem elegendő ehhez a projekthez. Mivel a kesztyű öt flex érzékelővel rendelkezik, működéséhez öt analóg bemenetre van szükség. Egy egyszerű és olcsó megoldás erre a problémára a Multiplexer IC (74HC4051N) használata. Ez az IC képes egy analóg bemenetet nyolcra konvertálni!

Hogyan működik?

Az IC úgy működik, hogy bekapcsol egy analóg bemenetet, leolvassa és kikapcsolja. Ezután bekapcsolja a következő analóg bemenetet. Ezzel egyszerre csak egy érzékelőt olvas be, és elküldi azt a mikrokontroller analóg érintkezőjére. Az IC olyan gyorsan képes be-, olvasni és kikapcsolni az analóg bemeneteket, hogy úgy tűnik, mintha egyszerre olvasná őket. Ez hasonló a számítógépek és okostelefonok képernyőinek működéséhez; Minden képpontnak nem lehet saját kijelölt csapja (ez katasztrófa lenne!), Ezért olyan gyorsan kapcsolja be és ki a képpontokat, hogy szemünk egyszerre érzékeli őket. A működéshez az IC -nek három digitális tűre van szüksége. A csapok be- és kikapcsolási állapotának kombinációinak megváltoztatásával az IC be- és kikapcsolhatja mind a 8 analóg bemenetet.

3. lépés: A kenyértábla elrendezése

Breadboard elrendezés
Breadboard elrendezés

Az eszköz elrendezése a fenti képen látható.

FONTOS: Vegye figyelembe a használt tranzisztor típusát, a tranzisztor kollektorcsapjának az IR LED -hez kell csatlakoznia, nem pedig a GND csapnak.

4. lépés: Jelek fogadása

Ahhoz, hogy a kesztyű tudja a helyes jelet küldeni, jeleket kell kapnia a TV -jétől/készülékétől, és be kell programozni a kesztyű kódjába. Ezen jelek vételéhez infravörös vevő szükséges.

Megjegyzés: nézze meg a TV -távirányító modellszámát, és próbálja meg megtalálni a jel specifikációit az interneten. Néhány infravörös vevő és adó nem működik egyes távirányítókkal, ezért fontos, hogy olyan adót/vevőt találjon, amelynek frekvenciája megfelel a TV -nek. 4838 -as IR -vevőt használok, amely a Samsung TV -távirányítóval működik.

5. lépés: A jelek fogadásának kódja

A jelek fogadásának kódja
A jelek fogadásának kódja
A jelek fogadásának kódja
A jelek fogadásának kódja

A kód használatához le kell tölteni az IRremoteESP8266 könyvtárat. A letöltési link az alábbi:

IRremoteESP8266

Az Arduino IDE -ben válassza a Vázlat> Könyvtár beillesztése>. ZIP könyvtár hozzáadása lehetőséget. Keresse meg a két letöltött könyvtárat, és adja hozzá őket az IDE -hez. Az infravörös jelek fogadásához szükséges kód eléréséhez lépjen a Fájl> Példák> IRremoteESP8266> IRrecvDumpV2 elemre. A kódban módosítsa a kRecvPin értéket 14-ről 5-re. Ez biztosítja, hogy a csomópont-MCU a megfelelő tűt (D1) olvassa.

A kenyértábla-kapcsolatok bekötése után töltse fel ezt a kódot a Node-MCU-hoz, és nyissa meg a soros monitort (állítsa az átviteli sebességet 115200-ra). Ha megnyom egy gombot a TV távirányítóján, a jelek a soros monitorra kerülnek nyomtatásra. Siker!

Hosszú számkészletet fog látni a rawData értékkel. Jegyezze fel ezeket a számokat, és jegyezze fel azt a gombot, amelyet megnyomott, hogy megkapja ezeket a számokat. Ezekre később szüksége lesz.

6. lépés: PCB vázlat

PCB vázlat
PCB vázlat

A PCB vázlat az Autodesk Eagle -ben készült, és a fenti képen látható. Minden Eagle fájl ebben az utasításban található, és a következő lépésben letölthető.

7. lépés: A NYÁK tervezése

A NYÁK -tervezés
A NYÁK -tervezés

Itt van a NYÁK -tervezésem. Ennek az áramköri lapnak az összes Eagle -fájlja az alábbiakban található, így felhasználhatja vagy módosíthatja ezt a kialakítást saját PCB -jének létrehozásához! SMD párnákat adtam hozzá az extra 3 analóg bemenethez, valamint a 3V3 és GND porthoz. Ez lehetővé teszi számomra, hogy szükség esetén kibővítsem ezt a rendszert, erőforrásokat és időt spórolva, valamint sokoldalúvá téve a NYÁK -ot.

8. lépés: Összerakni

Összerakni
Összerakni

Pár nap várakozás után végre postára kaptam a PCB -ket. Most itt az ideje a szórakoztató résznek, összeforrasztani az egészet! A vázlat követésével a NYÁK forrasztása meglehetősen egyszerű volt. A tervezés során IC aljzatot és női fejléceket használtam a multiplexer IC és a Node-MCU számára. Ez azért szükséges, hogy eltávolíthassam ezeket a chipeket, ha cserélnem vagy újra kell használnom őket. Ha karcsúbb formát szeretne, nyugodtan forgassa a zsetonokat közvetlenül a táblához, de ne feledje, hogy később nagyon nehéz lesz eltávolítani ezeket.

9. lépés: A kesztyű összerakása

A kesztyű összerakása
A kesztyű összerakása

A flex érzékelőknek a kesztyűbe történő beszereléséhez apró gumicsöveket ragasztottam a kesztyű ujjai közé, és helyeztem bele az érzékelőket. Ily módon az érzékelőknek volt némi ingatag helyük, és szükség esetén eltávolíthatták őket. A NYÁK tartásához rögzítettem a kesztyűre egy tépőzáras szalag segítségével. Ennek összeállítása ismét csak rajtad múlik. Lehet kreatív!

10. lépés: A parancsok programozása

Most, hogy a hardverről gondoskodtak, itt az ideje a szoftvernek. Kesztyűjéhez töltse le az alábbi kódot.

Ahhoz, hogy a kód működjön a TV -vel, meg kell változtatnia néhány számot. Emlékszel azokra a számokra, amiket leírtál? Most itt az ideje használni őket. Ha nincsenek meg a számok, ne aggódjon, ezeket a jeleket nagyon könnyű összegyűjteni; Egyszerűen térjen vissza az IR vételi lépéshez. Másolja ki a rawData adatkészletet, és illessze be a megjegyzésbe: "PASTE DATA ITT" a kódban. Nevezze át ezt az adatkészletet powerOn -ra. Másolja a számot a powerOn mellett (esetemben 95). Ez a szám az adatkészletben szereplő számok száma. Most menjen a kód aljára, a "KIJELZŐ TELJESÍTMÉNY" megjegyzés alatt. Cserélje ki a "95" értéket a másolt értékre. Most töltse fel a kódot a Node-MCU-ba, és vegye fel a kesztyűt. Ha a kezét a TV -hez fordítja, és az egyik ujját behajlítja, a TV bekapcsol!

Ez könnyen testreszabható. További funkciók hozzáadásához egyszerűen adjon hozzá további adatkészleteket, majd másolja be a DISPLAY POWER funkciót, és módosítsa annak információit a megfelelő adatkészletre és értékek számára. Mivel minden hajlítóérzékelő eltérő, előfordulhat, hogy módosítania kell a "310" számot, hogy az regisztrálja az ujj összehajtását. Akár többujjas gesztusokat és "főkapcsolókat" is tehet. Például úgy állítottam be a kódomat, hogy amikor meghajlítom a gyűrűsujjam és a hüvelykujjam, a tévé hangereje elnémul, és a forrás is megváltozik. A bővíthetőség végtelen!

11. lépés: Kész

Kész!
Kész!
Kész!
Kész!

Ott van, egy univerzális gesztusvezérelt TV -távirányító! Remélem tetszett ez a projekt, és remélem, hogy rám szavaz az Epilog Laser versenyen. Ha bármilyen kérdése van, írjon megjegyzést, és megpróbálok válaszolni rájuk. Még egyszer remélem tetszett!

Ajánlott: