Obsah:
- Krok 1: Potřebné nástroje
- Krok 2: Požadované součásti
- Krok 3: Jak to funguje (IR protokol)
- Krok 4: Dálkový ovladač
- Krok 5: Zachycení vzorků RAW
- Krok 6: Pozorování vzorků RAW a jejich převod do formátu čitelného pro člověka
- Krok 7: Pozorování vzorů porovnáním více surových vzorků
- Krok 8: VYSTUPUJTE dekódovaná data do sériového monitoru
- Krok 9: Dokončete
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
O IR protokolech se učím už nějakou dobu. Jak odesílat a přijímat IR signály. V tuto chvíli zbývá pouze IR protokol AC dálkových ovladačů.
Na rozdíl od tradičních dálkových ovladačů téměř všech elektronických zařízení (řekněme TV), kde jsou v tu chvíli odesílány pouze informace o jednom tlačítku, jsou v dálkových ovladačích AC kódovány a odesílány všechny najednou. Proto může být trochu složité dekódovat signál z mikrokontroléru.
V tomto pokynu vysvětlím, jak můžeme snadno dekódovat IR protokoly jakéhokoli dálkového ovladače AC. Budu používat svoji HID IR KLÁVESNICI ke čtení a dekódování IR signálů napsáním nového programu. ale můžete použít téměř jakýkoli mikrokontrolér, který znáte, pokud podporuje externí přerušení spojená s IR demodulátorem TSOP.
Krok 1: Potřebné nástroje
Pájecí stanice. (Např. TOTO)
I když můžete použít levnější žehličky, ale pokud máte rádi elektroniku, doporučujeme kvalitní pájecí stanici.
Pickit 2. (např. TOTO)
Můžete také použít PICKIT 3, ale pak budete muset použít samostatný převodník USB na UART ke čtení výstupu z mikrokontroléru.
Osciloskop
No to nemám. ale pokud ho máš, hodně ti to usnadní život. Určitě si jeden kupte, pokud si ho můžete dovolit.
Počítač
No.. Duh
Krok 2: Požadované součásti
- PIC18F25J50 (např. ZDE)
- TSOP IR přijímač. (Např. ZDE)
- Regulátor LM1117 3,3 V. (Např. ZDE)
- 2x220nf kondenzátory.
- Odpor 470 ohmů.
- Rezistor 10 kOhm.
Toto jsou součásti potřebné k vytvoření mého projektu HID IR klávesnice. Pokud máte jinou desku pro vývoj obrázků nebo arduino, budete potřebovat pouze modul dekodéru TSOP IR.
Dálkové ovládání AC
Dálkový ovladač, který je třeba dekódovat. Budu používat dálkové ovládání svého Videocon AC. Tenhle nemá displej, ale funguje podobně jako ostatní dálkové ovladače s displeji.
Krok 3: Jak to funguje (IR protokol)
Než budeme pokračovat, porozumějme některým základům.
IR dálkové ovladače používají infračervené LED k přenosu signálu ze vzdáleného přijímače rychlým zapínáním a vypínáním LED. Ale mnoho dalších světelných zdrojů produkuje také IR světlo. Aby byl náš signál speciální, používá se signál PWM na určité frekvenci.
Frekvence používané téměř ve všech IR dálkových ovladačích jsou 30 khz, 33 khz, 36 khz, 38 khz, 40 khz a 56 khz.
Nejběžnější jsou však 38 khz a 40 khz.
Modul TSOP demoduluje nosný signál (např. 38 khz) na vhodnější logiku TTL GND a VCC.
Trvání logiky HIGH of LOW označuje bit '1' nebo '0'. Trvání se liší podle každého vzdáleného protokolu. (Např. NEC)
Chcete -li podrobně porozumět IR protokolu, můžete se podívat na TENTO dokument.
Krok 4: Dálkový ovladač
Dálkový ovladač, který používám, patří k poměrně staré klimatizaci namontované v mém pokoji. Nemá tedy žádný fantastický displej, ale funguje téměř stejně jako jakýkoli dálkový ovladač s displejem.
Následující nastavení můžeme změnit pomocí dálkového ovladače.
- Zapnutí/vypnutí
- Režim spánku zapnutý/vypnutý
- Turbo režim zapnuto/vypnuto
- Swing on/off
- Rychlost ventilátoru (nízká, střední, vysoká)
- Volba režimu (chlazení, sušení, ventilátor)
- Teplota (od 16 do 30 stupňů Celsia)
Krok 5: Zachycení vzorků RAW
Na obrázku vidíte vzorky RAW vyplivnuté přijímačem TSOP ir. čísla označují dobu trvání shluku a znaménko +/- označuje MARK a SPACE signálu.
zde 1 jednotka označuje 12us (mikrosekundy.)
Série 80 znamená 960us a tak dále.
následující část kódu zachycuje data a výstupy na sériový monitor pickit2. (IDE je MikroC PRO pro PIC)
Z nějakého důvodu se editor Instructable popletl s kódovou značkou. Právě jsem připojil snímek obrazovky kódu, podívejte se na druhý obrázek tohoto kroku.
Připojil bych celou složku projektu, ale teď je to nepořádek a ještě není úplně připraven na to, čeho se snažím dosáhnout.
Krok 6: Pozorování vzorků RAW a jejich převod do formátu čitelného pro člověka
Podíváme -li se pozorně na vzorky RAW, můžeme snadno pozorovat, že existují čtyři rozsahy trvání výbuchu.
~80
~45
~170
~250
Poslední tři hodnoty jsou vždy +250 -250 +250. Můžeme tedy bezpečně předpokládat, že je to STOP bit dat shluku. Nyní, pomocí následujícího fragmentu kódu, můžeme tyto čtyři doby rozdělování rozdělit na '-', '.' a '1'.
Fragment kódu najdete na třetím obrázku tohoto kroku.
Možná jste si všimli, že jsem ignoroval číslo ~ 80 shluků v kódu. to proto, že každé liché umístění kódu je nevýznamné. Vytištěním pole _rawprocess na sériový monitor (jak vidíte na druhém obrázku tohoto kroku.) Máme velmi jasný obraz o přijatých datech. Nyní stisknutím různých tlačítek na dálkovém ovladači můžeme sledovat změny vzorů v datech, jak je vysvětleno v dalším kroku.
Krok 7: Pozorování vzorů porovnáním více surových vzorků
Tiskem pouze dekódovaných dat můžeme získat mnohem jasnější představu o tom, jaké bity jsou použity k odeslání jakých dat.
Nastavení POWER SLEEP a TURBO používá pouze jeden bit. tj. buď '.' nebo '1'.
SWING používá tři bity vedle sebe. který zní buď „…“nebo „111“.
Výběr ventilátoru a režimu také používá 3 bity, každý '1..' '.1.' a '..1'
Teplota používá čtyři bity, které odesílají hodnotu pomocí binárních kódovaných bitů s posunem 16, což znamená „…“. posílá hodnotu 16 stupňů Celsia, zatímco „111.“posílá 30 stupňů Celsia.
Krok 8: VYSTUPUJTE dekódovaná data do sériového monitoru
Jak vidíte na obrázku, úspěšně jsem dekódoval všechny bity odeslané dálkovým ovladačem AC.
Od nynějška ti, kteří mají zkušenosti se zpracováním ir protokolů, už vědí, jak překódovat signál a začít je posílat do AC. Pokud chcete vidět, jak to lze provést, počkejte na můj další pokyn, který zveřejním zhruba za týden.
Krok 9: Dokončete
Díky za váš čas.
zanechte prosím komentář, pokud se vám projekt líbil. nebo pokud jste si všimli nějaké chyby.
Hezký den.