Turinys:

Hario Poterio IR nuotolinio valdymo pultas su „Raspberry Pi“: 5 žingsniai
Hario Poterio IR nuotolinio valdymo pultas su „Raspberry Pi“: 5 žingsniai

Video: Hario Poterio IR nuotolinio valdymo pultas su „Raspberry Pi“: 5 žingsniai

Video: Hario Poterio IR nuotolinio valdymo pultas su „Raspberry Pi“: 5 žingsniai
Video: CS50 2015 - Week 10 2024, Lapkritis
Anonim

Sekite daugiau autoriaus:

Neskausmingas tinklelis „M5Stack Core2“
Neskausmingas tinklelis „M5Stack Core2“
Neskausmingas tinklelis „M5Stack Core2“
Neskausmingas tinklelis „M5Stack Core2“

Apie: Aš esu elektros inžinierius, suinteresuotas, kad paspaudus mygtuką įvyktų magija. Vis dėlto kartais išleidžiate stebuklingą mėlyną dūmą. Daugiau apie coleminer31 »

Šioje pamokoje aprašoma, kaip sukurti paprastą „Python“scenarijų, valdomą „The Noble Collection“pagaminta universalia Hario Poterio nuotolinio valdymo lazdele. Norint valdyti scenarijaus funkcijas, reikalingas „Raspberry Pi“kaip valdiklis ir „Flirc“USB IR imtuvas kartu su universalia nuotolinio valdymo lazdele.

Prie šio sprendimo priėjau pabandęs modifikuoti įvairius lazdele valdomus įrenginius, kuriems kiti žmonės paskelbė instrukcijas „Instructables“, „Hackster“ir kitur. Garsiausias iš jų yra „Rasberry Potter“projektas, kurį sukūrė Seanas O'Brienas (https://www.raspberrypotter.net/about). Dauguma programuojamų lazdelių suaktyvinamų projektų veikia atspindėdami infraraudonųjų spindulių šaltinį nuo lazdelės galo, aptikdami atspindėtą šviesą naudodami „Raspberry Pi NoIR“kamerą ir stebėdami tą šviesą naudodami skirtingus kompiuterio regėjimo algoritmus. Šie projektai veikia, o lankstumas, kurį suteikia kompiuterinės vizijos metodai, yra tikrai stebuklingas. Tačiau kompiuterinės regos metodai leidžia tam tikro lygio klaidingus aptikimus, ir man reikėjo kažko labiau nuspėjamo.

Mano pagrindinis tikslas buvo sukurti stebuklingą, lazdelėmis valdomą lobių dėžę, kurią mano sesuo galėtų naudoti kaip atramą savo pirmos klasės klasėje (ir mano sesuo, ir mama yra mokytojos, ir jos yra tikroji magija). Pradėjau nuo Raspberry Potter projekto atkūrimo, tačiau, kaip jau pastebėjau, man buvo sunku atsikratyti klaidingų aptikimų. Klasės, švelniai tariant, yra nenuspėjamos vietos. Yra daug įvairių judančių kūrinių, kurie gali atspindėti šviesą arba kurie patys gali būti šviesos šaltiniai, ir jūs negalite lengvai pritemdyti klasės, kad atsikratytumėte galimų šaltinių, kuriuos kompiuterinio regėjimo algoritmai bandys stebėti.

Žinojau, kad man reikia kažko užkoduoto, ko negalima klaidingai susieti su atsitiktiniais šviesos šaltiniais klasėje. Tuo pat metu žinojau, kad nenoriu kažko panašaus statyti pati. Laimei, „Nobel Company“jau gamina „Hario Poterio“universalųjį lazdelės nuotolinio valdymo pultą, o „Flirc“USB imtuvas suteikia galimybę bet kurią IR nuotolinio valdymo komandą susieti su klavišo paspaudimu. Rašydamas „Python“scenarijų, kuris laukia konkretaus klavišo paspaudimo, galėjau aptikti Hario Poterio universalios lazdelės nuotolinio valdymo pulto siunčiamą komandą kiekvieną kartą, kai ją apdorojo „Flirc“USB imtuvas. Ši sąranka suteikė man reikalingą valdymą.

Rezultatus galite pamatyti mano paskelbtuose gifuose. Šiuose vaizdo įrašuose naudoju savo scenarijų „harrypottercontroller.py“, norėdamas vairuoti servo variklį, kuris atidaro ir uždaro lobių dėžutę, kuri bus įdiegta mano sesers klasėje.

Prekės

Rasberry Pi 3b+

www.amazon.com/CanaKit-Raspberry-Premium-C…

„Flirc“USB imtuvas

flirc.tv/flirc-usb

Hario Poterio universali nuotolinė lazdelė

www.amazon.com/HARRY-POTTER-Remote-Control..

1 žingsnis: Paruoškite „Raspberry Pi“

Paruoškite „Raspberry Pi“
Paruoškite „Raspberry Pi“

Šiam projektui naudojau „Raspberry Pi 3 Model B+“, tačiau „python“scenarijus turėtų veikti su kitais modeliais. (Ir tai greičiausiai veiks su kitomis sąrankomis, kurios gali paleisti „Python“, taip pat turi USB prievadą.) Jei dar neturite „Raspberry Pi“, jums reikės klaviatūros, pelės ir ekrano.

Kai paleisite „Raspberry Pi“sąranką, vadovaukitės šiomis „Sparkfun“instrukcijomis, kad pradėtumėte naudoti „Python“.

learn.sparkfun.com/tutorials/python-progra…

2 žingsnis: Paruoškite „Flirc“USB imtuvą

Paruoškite „Flirc“USB imtuvą
Paruoškite „Flirc“USB imtuvą

Dabar, kai „Raspberry Pi“veikia „Python“, prijunkite „Flirc UCB“imtuvą prie USB plokštės savo plokštėje.

Vykdykite šias instrukcijas, kad įdiegtumėte „Flirc“programinę įrangą „Rasberry Pi“.

flirc.gitbooks.io/flirc-instructions/conte…

3 žingsnis: Paruoškite savo Hario Poterio lazdelę

Paruoškite savo Hario Poterio lazdelę
Paruoškite savo Hario Poterio lazdelę

Jums reikės dviejų AA baterijų ir IR televizoriaus nuotolinio valdymo pulto. Kai juos turite, vadovaukitės šiomis „The Noble Collection“instrukcijomis, kad paleistumėte lazdelę, atlikite kai kuriuos gestus, tada užprogramuokite tam tikrą gestą, kad jis atitiktų jūsų televizoriaus nuotolinio valdymo pulto siunčiamą kodą.

www.noblecollection.com/ItemFiles/Manual/R…

4 žingsnis: suporuokite savo Flirc ir Hario Poterio lazdelę

Suporuokite savo Flirc ir Hario Poterio lazdelę
Suporuokite savo Flirc ir Hario Poterio lazdelę

Dabar, kai turite „Flirc“ir „Hario Poterio“lazdelių sąranką, turite jas suporuoti. Tai galite padaryti naudodami „Flirc“GUI, naudodami šias instrukcijas.

flirc.gitbooks.io/flirc-instructions/conte…

Vykdykite „Išplėstinio susiejimo“vadovą, kad įrašytumėte IR komandą, siunčiamą mojuojant lazdele, kai ji yra valdymo režime, ir susiekite ją su klavišo paspaudimu. Tada nutraukite „Flirc“įrašymo režimą, atidarykite „Raspberry Pi“terminalą ir vėl pamojuokite lazdele, norėdami pamatyti, ar terminale pasirodo jūsų užprogramuotas klavišo paspaudimas.

Tai galite padaryti ir terminale, nenaudodami GUI, vadovaudamiesi šiomis instrukcijomis.

flirc.gitbooks.io/flirc-instructions/conte…

Tai buvo mano pageidaujamas metodas dirbant su projektu, ir tai yra metodas, kurį rekomenduoju, jei jums patogu dirbti „Linux“terminale.

5 veiksmas: nustatykite „Python“kodą (PASKUTINIS ŽINGSNIS!)

Nustatykite „Python“kodą (PASKUTINIS ŽINGSNIS!)
Nustatykite „Python“kodą (PASKUTINIS ŽINGSNIS!)

Pirmiausia atsisiųskite „Harrypottercontroller.py“„Python“scenarijų iš šios instrukcijos arba gaukite ją iš „git repo“čia.

github.com/coleminer31/HarryPotterRaspberr…

Įdėkite „python“scenarijų į pasirinktą katalogą ir atidarykite jį pasirinktu redaktoriumi.

Viskas, ką jums reikia padaryti, tai pakeisti „ĮRENGTI CHARAKTERĮ ČIA“Flirc simboliu, kurį suporavote su lazdele. Tada pakeiskite #DO SOMETHING here čia stebuklingoje ciklo cikle funkcija, kurią norite paleisti. (Patarimas: galbūt norėsite sukurti funkciją, kuri nutraukia kilpą po tam tikro klavišo paspaudimo, kad išvengtumėte begalinės kilpos ir tinkamai sustabdytumėte scenarijų.)

Štai ir viskas! Esi burtininkas, programuotojas. Dabar savo lazdele galite valdyti „Python“funkcijas. Tiesiog paleiskite scenarijų ir sukite jį.

Šią sąranką galite naudoti norėdami valdyti bet kokį programų skaičių - nuo robotikos iki daiktų interneto. Nekantriai laukiu, ką sukursite!

Rekomenduojamas: