Sadržaj:
- Korak 1: Nekoliko informacija o NEC Infracrvenom protokolu
- Korak 2: Potrebne komponente
- Korak 3: Softver i rad uređaja
- Korak 4:
Video: Infracrveni odašiljač i prijemnik USB NEC: 4 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
Ovaj projekt je spin-off drugog projekta na kojem radim, a budući da postoji natječaj za daljinsko upravljanje 2017 na Instructables, mislio sam da objavljujem ovaj projekt. Dakle, ako vam se sviđa ovaj projekat, molimo vas da glasate za njega. Hvala.
Kao što možda znate, veliki sam ljubitelj 8-bitnih PIC kontrolera Microchip, pogledajte:
Koristim programski jezik JAL jer izgleda kao Pascal (koji mi se takođe sviđa). JAL kompajler i biblioteke mogu se preuzeti sa: https://www.justanotherlanguage.org/downloads (pomerite se nadole za najnoviju objavljenu verziju).
Obično sam pišem sav kôd kako bih u potpunosti razumio šta radim, ali za ovaj projekt mi je bilo potrebno spojiti PIC na USB priključak računala pa mi je trebao JAL USB serijski upravljački program za ovaj PIC kontroler. Koristio sam USB serijski upravljački program u JAL paketu za preuzimanje koji izgleda dobro radi. Budući da je ovaj USB serijski upravljački program napisan za jedan određeni PIC, koristio sam taj PIC koji je PIC18F14K50. Ovaj kontroler ima mnogo više funkcija nego što mi je potrebno za ovaj projekt, pa sam trenutno u procesu postavljanja ovog USB upravljačkog programa na jednostavniju PIC verziju, PIC16F1455, koja je također jeftinija.
Dakle, o čemu se radi u ovom projektu? S uređajem spomenutim u ovim uputama možete slati i primati naredbe daljinskog upravljača s infracrvenim daljinskim upravljačem sa i na vaš računar putem USB priključka koristeći popularni NEC Infra-Red protokol. Na ovaj način možete nadzirati Infra-Red naredbe i možete kontrolirati bilo koji uređaj koji koristi NEC Infra-Red protokol daljinskog upravljanja. Projekt dekodira i prevodi infracrvene poruke u bajt adrese i naredbeni bajt ili u ponovljenu poruku. Adresa se - naravno - koristi za adresiranje određenog uređaja poput televizora ili radija gdje naredbeni bajt označava funkciju koju je potrebno izvesti poput pojačavanja, smanjivanja glasnoće. Osim dekodiranja ovih poruka, one se mogu prenijeti i putem infracrvene boje pomoću ovog uređaja.
Korak 1: Nekoliko informacija o NEC Infracrvenom protokolu
Kratak uvod u ovaj protokol. NEC Infra Red protokol daljinskog upravljača koristi se u mnogim uređajima i daljinskim upravljačima koje možete kupiti. On modulira infracrveni signal na nosiocu od 38 kHz i koristi kodiranje udaljenosti impulsa za kodiranje logičkog '1' i logičkog '0'. Protokol koristi jednostavnu provjeru da vidi je li poruka u redu tako što će poslati adresu i bajt naredbe te obrnutu verziju oba u jednoj te istoj poruci i provjeriti jesu li iste nakon prijema. Kada se pritisne dugme na daljinskom upravljaču, ono jednom šalje kompletnu infracrvenu poruku sa adresom i komandom. Ako pritisnete dugme, poslaćete kraću ponovljenu poruku bez adrese i podataka o komandi. Vrijeme ponavljanja poslanih poruka uz zadržavanje pritisnutog dugmeta je fiksno.
Više informacija o protokolu NEC Infra Red može se, na primjer, naći na:
Korak 2: Potrebne komponente
Za ovaj projekt trebate imati sljedeće komponente:
- PIC mikrokontroler PIC18F14K50, pogledajte:
- Kristal 12 MHz
- Keramički kondenzator: 2 * 100nF, 1 * 220 nF, 2 * 18pF
- Elektrolitički kondenzator 47 uF/16V
- Infracrveni prijemnik TSOP4838, pogledajte:
- Otpornici: 2 * 33k, 1 * 4k7, 1 * 1k, 3 * 330 Ohm, 1 * 22 Ohm
- LED diode: 2 * infracrvena, 1 žuta, 1 zelena, 1 crvena
- Tranzistor BC640, pogledajte:
- Džemper (opcionalno)
- USB konektor
Pogledajte shematski dijagram kako spojiti komponente. Koristio sam ploču za ovaj projekt kao što možete vidjeti na slici i u videu. Krug se napaja iz USB priključka računara.
Korak 3: Softver i rad uređaja
Kao što je već spomenuto, softver je napisan za PIC18F14K50. Napisano je u JAL -u. Priložena je Intel Hex datoteka za programiranje vašeg PIC -a. Softver obavlja sljedeće funkcije:
- Dekodiranje NEC infracrvenih poruka i slanje na računar putem USB-a. Poruka se dekodira iz bitova koje generira infracrveni prijemnik i prevodi u adresu + naredbena poruka ili ponovljena poruka.
- Slanje NEC Infra Red poruka primljenih s računara putem USB -a. Imajte na umu da softver također stvara nosivu frekvenciju od 38 kHz koja direktno pokreće infracrvene LED diode. Paralelno sa infracrvenom LED diodom, žuta LED dioda je povezana kako bi prijenos poruke bio vidljiv.
Podrazumevano će ovo kolo isključiti prijemnik infracrvenog signala tokom prenosa infracrvene poruke. Ako je kratkospojnik postavljen na položaj „Uključi zvuk“, onemogućit će ovu funkciju isključivanja zvuka. U tom slučaju prenesena infracrvena poruka će se također dekodirati paralelno s prijenosom, a nakon potpunog prijema šalje se kao primljena infracrvena poruka na računar. Ako se primi valjana NEC infracrvena poruka, zasvijetlit će crvena LED dioda ‘IR OK’.
Da biste upravljali ovim uređajem, na računaru morate imati program Terminal Emulator. U tu sam svrhu upotrijebio ‘Termite’. Kada je uređaj povezan s računalom, Windows 10 će ga automatski prepoznati kao dodatni COM port jer izgleda da postoji upravljački program za mikročip za ovaj uređaj u Windows 10 unaprijed instaliran. Postavka za ovaj COM port bi trebala biti: 19200 bauda 8 bita, 1 stop-bit, bez pariteta i upotreba kontrole protoka RTS/CTS. Brzina prijenosa može se postaviti na bilo koju drugu vrijednost ako je potrebno, pa će i brzina prijenosa od 115200 također funkcionirati. Nakon što se uređaj konfigurira putem USB priključka povezivanjem na njega putem programa Terminal Emulator, zasvijetlit će zelena LED dioda „Konfigurirano“.
Primanje infracrvenih poruka
Kada primite infracrvenu poruku, u programu Terminal Emulator bit će prikazano sljedeće:
- „A: xx C: xx“u slučaju potpune poruke, gdje je xx heksadecimalni broj adrese (A) i naredbe (C). Vrijednosti za oboje mogu biti u rasponu od 0x00 (0) do 0xFF (255).
- ‘Ponovi’ u slučaju ponavljanja poruke.
Slanje infracrvenih poruka
Za to sam morao definirati protokol koji govori uređaju šta da radi. Budući da koristimo Terminal Emulator, za definiranje poruke koristila sam ASCII znakove. Protokol za slanje naredbe uređaju koristi sljedeći format: '! AACCRR#', gdje (svi znakovi ne razlikuju velika i mala slova):
- '!' Označava početak poruke.
- 'AA' je vrijednost adrese u heksadecimalnom zapisu pa od '0' do '9' i 'A' do 'F',
- 'CC' je vrijednost naredbe u heksadecimalnom zapisu pa od '0' do '9' i 'A' do 'F'
- 'RR' je broj poruka koje se ponavljaju i koje je potrebno prenijeti u heksadecimalnom zapisu tako da '0' do '9' i 'A' do 'F'. Vrijednost '00' znači da se ne šalje ponovljena poruka.
Primjer poruke s adresom 0x07, naredbom 0x05 i 3 ponavljanja tada bi trebalo upisati na sljedeći način u programu Terminal Emulator:! 070503#
Uređaj ima različite odgovore nakon slanja naredbe s računala:
- 'Y' znači da je poruka poslana. Imajte na umu da se ovaj odgovor daje nakon što se sve poruke - uključujući sva ponavljanja - prenose pa može proći neko vrijeme prije nego što se dobije ovaj odgovor kada je potrebno prenijeti mnogo ponovljenih poruka.
- 'N' znači da je u poruci poslanoj računaru bio nedozvoljen znak.
- 'B' znači da je infracrveni prijenos bio još zauzet kada je data naredba.
- ? 'Znači da je uređaj očekivao'! ', Ali je primio nešto drugo.
Korak 4:
Napravio sam kratak video uređaj u akciji. Za ovaj video upotrijebio sam komercijalnu LED lampu sa daljinskim upravljačem kako bih provjerio funkcioniraju li i prijenos i prijem. Video prikazuje sljedeće:
- Konfiguriranje USB uređaja iz programa Terminal Emulation. Kada je uređaj konfiguriran, on odgovara porukom ‘USB NEC infracrveni odašiljač i prijemnik’. Na uređaju se uključuje zelena LED lampica koja pokazuje da je uređaj konfiguriran od strane računara.
- Lampa se uključuje pomoću daljinskog upravljača. Za to daljinski upravljač koristi adresu 0x00 i naredbu 0x07 koje uređaj dekodira i prikazuje na računaru.
- Lampa se isključuje pomoću daljinskog upravljača. Za to daljinski upravljač koristi adresu 0x00 i naredbu 0x06 koju uređaj dekodira i prikazuje na računaru.
- Lampica se uključuje upisivanjem iste naredbe za daljinski upravljač na računaru s vrijednošću ponavljanja 0 (bez ponavljanja) pa upisivanjem '! 000700#'. Lampa se pali.
- Promena boje lampe u plavu pomoću adrese 0x00 i komande 0x0A i korišćenjem ponavljanja 0x30. Žuta lampica, koja je spojena paralelno sa infracrvenim LED diodama, treperi i prikazuje prenos ponovljene poruke putem infracrvene boje. Otkucana poruka je '! 000A30#'.
Imajte na umu da je tijekom snimanja ovog videa kratkospojna veza 'Unmute' bila aktivna pa ste mogli vidjeti i prenesenu poruku '! 000700#', primljenu kao 'A: 00 C: 07' u programu Terminal Emulation. U demonstraciji lampe koja je obojena u plavo također možete vidjeti da crvena LED lampica svijetli sve dok se važeće - ponavljajuće - poruke prenose jer se primaju i dekodiraju paralelno s prijenosom ponavljajućih poruka.
Zabavite se u izgradnji vlastitog projekta i radujte se vašim reakcijama. Ne zaboravite glasati za ovaj projekat na takmičenju Remote Control 2017 ako vam se sviđa. Hvala još jednom.
Preporučuje se:
Bluetooth odašiljač 3,5 mm odašiljač za slušalice: 7 koraka
Bluetooth Beanie 3.5mm odašiljač za slušalice: Ovo uputstvo govori vam kako od Bluetooth kapice napraviti Bluetooth predajnik za bežične ožičene slušalice. Ovo je moje prvo uputstvo, pa je nekako traljavo. Recite mi u komentarima kako to poboljšati
Infracrveni odašiljač: 4 koraka
Infracrveni odašiljač: Ovaj članak prikazuje kako napraviti infracrveni analogni odašiljač. Ovo je staro kolo. Danas se laserske diode koriste za prijenos digitalnih signala putem optičkih vlakana. Ovaj krug se može koristiti za prijenos audio signala putem infracrvene veze. Trebat će vam
Bežični audio odašiljač i prijemnik na bazi IC -a: 6 koraka
Bežični audio odašiljač i prijemnik zasnovan na infracrvenoj vezi: Bežični zvuk je već tehnički napredno područje u kojem su Bluetooth i RF komunikacije glavne tehnologije (iako većina komercijalne audio opreme radi s Bluetoothom). Dizajniranje jednostavnog IC Audio Link kola ne bi bilo od koristi
Izgradite Kodi / OSMC infracrveni prijemnik i šešir za resetiranje za Raspberry Pi: 5 koraka (sa slikama)
Napravite infracrveni prijemnik Kodi / OSMC i šešir za resetiranje za Raspberry Pi: Izgradite Kodi / OSMC IR prijemnik i resetirajte šešir za Raspberry Pi 3 Iz cijele prostorije želim: Upravljati Kodi / OSMC -om na Raspberry Pi -u daljinskim upravljačem Pogledajte da li je Raspberry Pi uključen. Također bih volio da moja porodica
Infracrveni daljinski i IC prijemnik (TSOP1738) sa Arduinom: 10 koraka
Infracrveni daljinski i IC prijemnik (TSOP1738) s Arduinom: Ovo uputstvo je za Arduino početnike. Ovo je jedan od mojih ranijih projekata s Arduinom. Mnogo sam uživao kad sam to napravio i nadam se da će se i vama svideti. Najatraktivnija karakteristika ovog projekta je “ Bežična kontrola ”. A to je