INHOUDSOPGAWE:

AIY Universele IR -afstandsbediening: 5 stappe
AIY Universele IR -afstandsbediening: 5 stappe

Video: AIY Universele IR -afstandsbediening: 5 stappe

Video: AIY Universele IR -afstandsbediening: 5 stappe
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, November
Anonim
AIY Universele IR -afstandsbediening
AIY Universele IR -afstandsbediening

Hierdie instruksie beskryf hoe u 'n AIY universele infrarooi afstandsbediening kan maak. Dit kan gebruik word om enige TV, klankbalk, digibox, dvd of bluray -speler te beheer deur u stem te gebruik.

Ek noem dit universeel, aangesien dit 'n IR -ontvanger bevat wat gebruik kan word om die infrarooi sein vanaf enige afstandsbediening op te neem.

Die AIY -projek gebruik die LIRC -program om die IR -sein op te neem en oor te dra.

Stap 1: Maak PCB

Maak PCB
Maak PCB
Maak PCB
Maak PCB

Onderdele lys:

Twee 940nm 5mm infrarooi LED -emitters

Een infrarooi ontvanger TSOP38238

Een 2n3904 transistor

Een weerstand van 10 ohm

Een verboord

Vier enkelverbindings (opsioneel - ek sny 'n sespen -aansluiting in enkele verbindings)

Kabels om aan te sluit op die AIY -hoed.

Maak seker dat die IR LED's die lang been op die eerste ry en die kort been op die tweede ry. Tweede LED met lang been op tweede ry, en kort been op derde.

Die transistor moet die basis op die derde hê, die kollektor op die vierde en die emitter op die vyfde. Maak seker dat die plat kant van die weerstand na die aansluiting kyk.

Die weerstand loop tussen ry vyf en ry agt.

Gebruik 'n kort stuk draad om ry een met ry sewe te verbind.

Koppel die IR -ontvanger aan ry sewe, agt en nege.

Voeg die verbindings by rye een, vier, agt en nege.

Verbindings is:

Ry een - +5V krag

Ry vier - sender sein

Ry agt - Grond

Ry nege - ontvanger sein

Stap 2: Koppel aan die AIY -hoed

Koppel aan die AIY -hoed
Koppel aan die AIY -hoed
Koppel aan die AIY -hoed
Koppel aan die AIY -hoed

Ek het kopstukke op my AIY gesoldeer om dinge baie makliker te maak.

Die penne wat ek gebruik het, is Servo 0 (GPIO 26) en Servo 5 (GPIO 24) vir die sein. Ek het ook +5v gebruik van die horisontale pen bo die Servo -penne. Ek het die grond van die GND langs Servo 0 geneem, maar u kan enige grond gebruik wat u wil.

Met die toepaslike kabels het ek die AIY -hoed só aan die bord gekoppel:

+5V om een te ry

Servo 0 (GPIO 26) om vier te ry

GND na ry 8

Servo 5 (GPIO 24) om nege te ry.

Stap 3: Installeer LIRC

As u aanneem dat u reeds AIY opgestel en getoets het:

Ons moet LIRC installeer. Volg hierdie waardevolle instruksie deur mirza irwan Osman:

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

OF 'n alternatiewe instruksie kan hier gevind word deur Alex Bane:

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

LET WEL: vir my opstelling moes ek seker maak dat die /boot/config.txt -lêer die volgende het:

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

Stap 4: Kry of maak LIRC -lêers vir u toestelle

Hierdie volgende stap skep die lircd.conf -lêer wat die besonderhede bevat oor die afstandsbediening vir die toestelle wat u wil gebruik.

Daar is twee maniere om hierdie lêer te maak:

1. As u gelukkig is, kan u 'n bestaande lêer op die LIRC -bladsye vir u toestel vind

2. As u dit nie kan vind nie, moet u 'n lêer opneem met behulp van die IR -ontvanger en u afstandsbediening.

Vir stap 1, gaan na die LIRC -tuisblad en kyk deur die lys met ondersteunde toestelle:

www.lirc.org/

As u die lêer vir die toestel kan vind, moet u die inligting in die lêer na die lircd.conf -lêer /etc /lirc oordra

Aangesien my AIY koploos is, gebruik ek WINScP om die veranderinge aan lirc.conf aan te bring.

Die inligting wat u benodig, begin met 'begin op afstand' en eindig met 'eindig op afstand'

OPMERKING: as u meer as een toestel wil beheer, voeg dan die ekstra afstandskode in dieselfde lêer by na die bestaande "eindafstandsbediening". Maak seker dat elke afstandsbediening 'n unieke naam het. Ek gebruik "mytv" vir my televisie, en "sky" vir my sky digibox, ens.

As u nie die kode vir u toestel kan vind nie, moet u dit opneem.

Volg hierdie instruksies om te leer hoe om elke afstandbeheer met LIRC op te neem:

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

Nadat u die eerste afstandsbediening opgeneem het, herhaal die proses totdat al die afstandsbedienings opgeneem is. U kan dan die lirc.conf -lêer opdateer met al die kodes wat u opgeteken het. Ek moes dit vir my klankbalk doen.

Stap 5: Kodeer AIY om u toestelle te beheer

Om die IR -sender van AIY te beheer, maak die nodige veranderings aan die lêer "assistant_library_with_local_commands_demo.py"

U kan 'assistant_library_with_local_commands_demo.py' vanaf die Start Dev Terminal uitvoer om te sien of u kode werk.

Ek begin outomaties met opstart deur die instruksies hier te volg:

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

Hou in gedagte dat as u u kode wil verander, AIY moet stop, en dan weer begin deur die volgende te gebruik:

sudo diens my_assistant stop

sudo diens my_assistant begin

Die aangehegte kode bevat my huidige werkprogram.

(Let daarop dat hierdie kode ook addisionele funksies soos internetradio bevat).

Die kode maak gebruik van variasies vir die stuur van die LIRC send_start en send_stop om die vereiste IR -sein oor te dra. Ek het gevind dat dit nodig is om 'n pouse in te stel tussen die begin en stop van die sein, en dit kan wissel tussen toestelle (my Panasonic TV benodig 'n langer sein as die skybox). So byvoorbeeld:

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

tyd. slaap (0,5)

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

Om kombinasies van seine, byvoorbeeld die lug -TV -kanaal, te stuur, het ek 'n lys gemaak wat 'n frase vir 'n kanaalkode aandui. Let daarop dat die AIY soms nie altyd die regte woord sal hoor nie, so ek het ook variasies op die frase ingesluit (soos bbc 1 en bbc one, of die woord 'gids' sowel as 'dave', aangesien AIY altyd teruggekeer het toe ek sê 'dave' - dit moet my aksent wees!). Ek gebruik toe 'n roetine wat die kode met drie tekens uit die lys haal en elke nommer stuur (sien module ## Sky channel change routine ##)

Dit is ook moontlik om kombinasies van seine na verskeie toestelle te stuur. So byvoorbeeld het ek 'n "stelsel aan" -roetine wat die TV aanskakel, die klankbalk aanskakel, die skybox begin en dit oorskakel na BBC 1.

Sodra die IR -sender met AIY werk, is dit moontlik om alle verskillende kombinasies te bedink om dit te gebruik. Ek kan byvoorbeeld 'n tydopdrag stuur om die volume op die klankbalk aan te pas.

Gelukkige AIY IR afstandsbediening!

Aanbeveel: