Indholdsfortegnelse:

AIY Universal IR -fjernbetjening: 5 trin
AIY Universal IR -fjernbetjening: 5 trin

Video: AIY Universal IR -fjernbetjening: 5 trin

Video: AIY Universal IR -fjernbetjening: 5 trin
Video: 5 Способов монтажа ламината на стену. Разбираем от А до Я. Выбираем самый лучший 2024, December
Anonim
AIY Universal IR fjernbetjening
AIY Universal IR fjernbetjening

Denne instruktionsbog beskriver, hvordan man laver en AIY universal infrarød fjernbetjening. Dette kan bruges til at styre ethvert tv, soundbar, digibox, dvd eller bluray -afspiller ved hjælp af din stemme.

Jeg kalder det universelt, da det indeholder en IR -modtager, som kan bruges til at optage det infrarøde signal fra enhver fjernbetjening.

AIY -projektet bruger LIRC -programmet til at optage og transmittere IR -signalet.

Trin 1: Lav PCB

Lav PCB
Lav PCB
Lav PCB
Lav PCB

Liste over dele:

To 940nm 5 mm infrarøde LED -emittere

En TSOP38238 infrarød modtager

En 2n3904 transistor

En 10 ohm modstand

Et veroboard

Fire enkeltstik (valgfrit - jeg skar et sekspolet stik i enkeltstik)

Kabler til tilslutning til AIY -hatten.

Sørg for, at IR -lysdioderne har det lange ben på første række og korte ben på det andet. Anden LED med langt ben på anden række, og kort ben på tredje.

Transistoren skal have basen på den tredje, kollektoren på den fjerde og emitteren på den femte. Sørg for, at den flade side af modstanden vender mod stikket.

Modstanden går mellem række fem og række otte.

Brug et kort stykke ledning til at forbinde række 1 til række syv.

Tilslut IR -modtageren til række syv, otte og ni.

Tilføj stikkene til rækker et, fire, otte og ni.

Stik er:

1. række - +5V effekt

Række fire - sendersignal

Række otte - Jord

Række ni - modtagersignal

Trin 2: Opret forbindelse til AIY Hat

Opret forbindelse til AIY Hat
Opret forbindelse til AIY Hat
Opret forbindelse til AIY Hat
Opret forbindelse til AIY Hat

Jeg har loddet hovedstifter på min AIY for at gøre tilslutning af ting meget lettere.

De ben, jeg brugte, er Servo 0 (GPIO 26) og Servo 5 (GPIO 24) til signalet. Jeg brugte også +5v fra den vandrette stift ud over Servo -benene. Jeg tog jorden fra GND ved siden af Servo 0, men du kan bruge enhver jord, du ønsker.

Ved hjælp af de relevante kabler sluttede jeg AIY -hatten til brættet således:

+5V for at række en

Servo 0 (GPIO 26) til række fire

GND til række 8

Servo 5 (GPIO 24) til række ni.

Trin 3: Installer LIRC

Forudsat at du allerede har konfigureret og testet AIY:

Vi skal installere LIRC. Følg denne værdifulde instruerbare af mirza irwan Osman:

www.instructables.com/id/Install-Linux-Infrared-Remote-Control-LIRC-Package

ELLER en alternativ instruktion kan findes her af Alex Bane:

alexba.in/blog/2013/01/06/setting-up-lirc-on-the-raspberrypi/

BEMÆRK: til min opsætning havde jeg brug for at sikre, at filen /boot/config.txt havde følgende:

dtoverlay = lirc-rpi, gpio_in_pin = 24, gpio_out_pin = 26

Trin 4: Hent eller lav LIRC -filer til dine enheder

Dette næste trin opretter filen lircd.conf, som indeholder detaljerne om fjernbetjeningen til de enheder, du vil bruge.

Der er to måder at lave denne fil på:

1. Hvis du er heldig, kan du finde en eksisterende fil på LIRC -siderne til din enhed

2. Hvis du ikke kan finde den, skal du optage en fil ved hjælp af IR -modtageren og din fjernbetjening.

For trin 1 skal du gå til LIRC -startsiden og gennemse listen over understøttede enheder:

www.lirc.org/

Hvis du kan finde filen til enheden, skal du overføre oplysningerne i filen til filen lircd.conf /etc /lirc

Da min AIY er uden hoved, bruger jeg WINScP til at foretage ændringerne af lirc.conf.

De oplysninger, du har brug for, starter med "start fjernbetjening" og slutter med "slut fjernbetjening"

BEMÆRK: Hvis du vil styre mere end én enhed, skal du blot tilføje den ekstra fjernkode til den samme fil efter den eksisterende "slutfjernbetjening". Sørg for, at hver fjernbetjening har et unikt navn. Jeg bruger "mytv" til mit fjernsyn og "sky" til min sky digibox osv.

Hvis du ikke kan finde koden til din enhed, skal du registrere den.

Følg denne instruktion for at lære at optage hver fjernbetjening ved hjælp af LIRC:

www.instructables.com/id/Record-Infrared-Codes-of-Any-Remote-Control-Unit-f/

Når du har optaget den første fjernbetjening, skal du gentage processen, indtil du har optaget alle fjernbetjeninger. Du kan derefter opdatere filen lirc.conf med alle de koder, du har registreret. Jeg var nødt til at gøre dette for min soundbar.

Trin 5: Kode AIY til at styre dine enheder

For at styre IR -senderen fra AIY skal du foretage de nødvendige ændringer i filen "assistant_library_with_local_commands_demo.py"

Du kan køre "assistant_library_with_local_commands_demo.py" fra Start Dev Terminal for at se, om din kode virker.

Jeg får min AIY til at starte automatisk ved opstart ved at følge instruktionerne her:

aiyprojects.withgoogle.com/voice/#makers-guide-3-4--run-your-app-automatically

Vær opmærksom på, at hvis du vil ændre din kode, skal du stoppe AIY med at køre, og derefter starte den igen ved at bruge disse:

sudo service my_assistant stop

sudo service min_assistant start

Den vedhæftede kode indeholder mit nuværende arbejdsprogram.

(Bemærk, at denne kode også indeholder yderligere funktioner såsom internetradio).

Koden gør brug af variationer ved afsendelse af LIRC send_start og send_stop til at transmittere det nødvendige IR -signal. Jeg har fundet ud af, at det er nødvendigt at indføre en pause mellem start og stop af signalet, og dette kan variere mellem enheder (mit Panasonic TV kræver et længere signal end skyboxen). Så for eksempel:

subprocess.call ('irsend SEND_START mytv KEY_POWER', shell = True)

time.sleep (0,5)

subprocess.call ('irsend SEND_STOP mytv KEY_POWER', shell = True)

For at sende kombinationer af signaler, f.eks. Sky -tv -kanalen, oprettede jeg en liste, der angav en sætning til en kanalkode. Bemærk, at AIY engang ikke altid vil høre det rigtige ord, så jeg har også inkluderet variationer af sætningen (f.eks. Bbc 1 og bbc one, eller ordet 'guide' samt 'dave', da AIY altid returnerede det, når jeg sagde 'dave' - det må være min accent!). Jeg brugte derefter en rutine, der hentede koden med tre tegn fra listen og transmitterede hvert nummer (se modul ## Sky -kanal ændring rutine ##)

Det er også muligt at sende kombinationer af signaler til flere enheder. Så for eksempel har jeg en "system on" -rutine, som sender strøm til fjernsynet, tænder for soundbaren, starter skyboxen og skifter den til BBC 1.

Når IR -senderen arbejder med AIY, er det muligt at finde på alle forskellige kombinationer for at bruge den. For eksempel kan jeg sende en tidskommando til at justere lydstyrken på soundbaren.

Glad AIY IR fjernbetjening!

Anbefalede: