2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
Úvod
Ahoj všetci, vitajte pri mojom prvom pokyne.
Dnes sa naučíme, ako už názov napovedá, emulovať diaľkové ovládanie na televíziu alebo niečo podobné, čo funguje s infračervenými signálmi pomocou Arduina (akýkoľvek model).
Problém bol: Ako môžem prenášať kódy na objekt, ak ho nepoznám?
Pri hľadaní na internete som nenašiel odpoveď na svoju otázku, tak som začal premýšľať a túto metódu som vynašiel sám.
V tomto návode vám ukážem, ako na to.
P. S.:
Skôr ako začneme, poviem vám, že komunikácia Ir je veľmi zložitá a vyžaduje si najskôr trochu znalostí.
Krok 1: Materiál
Potrebujete menej komponentov, ako si myslíte:
-Arduino (použil som Leonarda)
-470 ohmov alebo podobný odpor! POZOR !: hodnota odporu sa môže meniť v závislosti od vašej IR LED
-IR LED (použil som SFH4546)
-Niektoré prepojky
-IR prijímač (použil som TSOP38238)
-Breadboard
Práve to som použil na tento jednoduchý, ale zásadný obvod.
EDIT: Ak používate moju rovnakú LED diódu, nepoužívajte medzi pinom Arduino a LED žiadny odpor, pretože to značne zníži vzdialenosť od vás, ktorú môžete používať pomocou diaľkového ovládača
Ak nepoužívate rovnakú LED diódu, navrhujem dať zastrihávač a regulovať ho, ako chcete
Krok 2: Obvod a kódovanie
Teraz sa pozrieme na okruh.
Potrebujeme postaviť 2 obvody:
-Prvý obvod potrebuje zachytiť signál z diaľkového ovládača.
-Druhý prenáša signál, ktorý sme zachytili predtým.
Vezmite arduino, dosku, káble a prijímač a môžete začať pracovať
Najprv pripojte 5v a GND k svojmu prijímaču (môj má v poradí OUT, GND, 5V)
Kolík OUT je potrebné pripojiť k kolíku Arduino 2. (Ako obvod vyzerá)
Akonáhle to urobíte, musíme pripojiť anódu našich LED k odporu a katódu k zemi.
Z rezistora sa neskôr spojíme s kolíkom, ktorý je definovaný knižnicou Ir. (Ako obvod vyzerá)
Kód je veľmi jednoduchý:
Najprv musíme nainštalovať knižnice:
-Knižnica IrLib2 pre prijímaciu pasáž
Potom musíte otvoriť súbor zip a skopírovať priečinky v tomto súbore do priečinka knižníc.
-Knižnica IrRemote na odoslanie
Akonáhle to urobíte, otvorte Arduino IDE a z ponuky príkladov prejdite do priečinka s príkladmi IrLib2, potom načítajte skicu „RawRecv.ino“na svoju dosku Arduino.
Akonáhle je načítaný na doske, otvorte sériový monitor, vezmite diaľkový ovládač, ktorý chcete emulovať, namierte na Ir prijímač a stlačte na ňom tlačidlo: na monitore uvidíte nejaký výstup (surový kód), takže ho skopírujte schránka.
Ďalšou pasážou je odoslanie kódov, ktoré sme získali.
Každý jeden model Arduino má svoj vlastný pin pre triedu IRsend a nemôžete ho zmeniť kvôli určitým obmedzeniam hardvéru.
Tu je tabuľka s nastavením pinov niektorých dosiek Arduino.
Toto je môj náčrt, ktorý odosiela príkaz channel_up do starej televízie Samsung:
#zahrnúť
IRsend irsend; #define RAW_DATA_LEN 68 // výstup RawRecv uint16_t rawData [RAW_DATA_LEN] = {4458, 4482, 546, 1698, 550, 1690, 554, 1690, 546, 606, 518, 610, 526, 602, 522, 606, 526, 602, 522, 1694, 554, 1686, 550, 1694, 550, 602, 522, 606, 530, 598, 526, 602, 522, 606, 526, 602, 522, 1694, 554, 598, 522, 606, 530, 1686, 554, 602, 518, 610, 522, 602, 522, 1694, 554, 602, 522, 1694, 550, 1690, 546, 610, 526, 1690, 546, 1694, 554, 1690, 546, 1 000}; neplatné nastavenie () {} prázdna slučka () {irsend.sendRaw (rawData, RAW_DATA_LEN, 38); // odoslanie surových dát s oneskorením frekvencie 38KHz (1000); // 1sekundové oneskorenie medzi každým zhlukom signálu}
UPOZORNENIE: Vyrovnanie a vloženie do IDE nemusí fungovať, ak nefunguje, musíte napísať každý jeden riadok
Krok 3: Testovanie a dokončovanie
Teraz je čas na test!
Namierte LED na prijímač rovnakým spôsobom, akým nasmerujete diaľkový ovládač a zapnite Arduino, počkajte chvíľu a uvidíte, že prijímacie zariadenie začne robiť to, čo mu prikazujeme, aby to bolo!
Ak niečo nie je v poriadku, zanechajte komentár nižšie.
To je koniec nášho pokynu. Dúfam, že je to pre vás užitočné.
Komentujte, ak chcete video z tohto tutoriálu a ……….
k ďalšiemu Inštruovateľnému!