U ovoj ćemo sesiji povezati džojstik s Raspberry Pi. Joystick se prvenstveno koristi za igranje raznih igara. Iako je USB tipke lako povezati, ali danas ćemo spojiti džojstik putem Raspberry Pi GPIO pinova, to će u mnogim slučajevima dobro doći.
Modul Raspberry Pi i džojstik:
Joystickovi su dostupni u različitim oblicima i veličinama. Tipični modul džojstika prikazan je na donjoj slici. Ovaj modul džojstika obično daje analogne izlaze, a izlazni naponi koje pruža ovaj modul neprestano se mijenjaju u skladu sa smjerom u kojem ga pomičemo. A smjer kretanja možemo dobiti tumačenjem tih promjena napona pomoću nekog mikrokontrolera. Prije smo koristili AVR mikrokontroler s džojstikom.

Ovaj modul joysticka ima dvije osi kao što vidite. To su osi X i Y osi. Svaka os JOY STICK-a pričvršćena je na potenciometar ili lonac. Srednje točke ovih lonaca istjeruju se kao Rx i Ry. Dakle, Rx i Ry su varijabilne točke prema ovim loncima. Kad je joystick u stanju pripravnosti, Rx i Ry djeluju kao djelitelj napona.
Kad se džojstik pomiče po vodoravnoj osi, napon na Rx pinu mijenja se. Slično tome, kada se pomiče duž okomite osi, mijenja se napon na Ry pinu. Tako imamo četiri smjera džojstika na dva ADC izlaza. Kad se palica pomakne, napon na svakom zatiču postaje visok ili nizak, ovisno o smjeru.
Kao što znamo, Raspberry Pi nema interni mehanizam ADC (analogni u digitalni pretvarač). Dakle, ovaj se modul ne može izravno povezati s Pi. Za provjeru naponskih izlaza upotrijebit ćemo komparatore bazirane na Op-amp-u. Ova OP-pojačala daju signale Raspberry Pi, a Pi prebacuje LED diode na ovisno o signalima. Ovdje smo upotrijebili četiri LED diode za prikaz kretanja džojstika u četiri smjera. Pogledajte demonstracijski video na kraju.
Svaka od 17 GPIO pinova ne može uzeti napon veći od + 3,3 V, tako da izlazi Op-pojačala ne mogu biti veći od 3,3 V. Stoga smo odabrali opcijsko pojačalo LM324, ovaj IC ima četverostruko operativno pojačalo koje može raditi na 3V. S ovim IC imamo odgovarajuće izlaze za izlaze za naše Raspberry pi GPIO pinove. Ovdje saznajte više o GPIO pribadačama Raspberry Pi. Također pogledajte našu seriju lekcija za Raspberry Pi zajedno s nekim dobrim IoT projektima.
Potrebne komponente:
Ovdje koristimo Raspberry Pi 2 Model B s Raspbian Jessie OS. Svi osnovni hardverski i softverski zahtjevi su prethodno raspravljeni, možete ih potražiti u Uvodu Raspberry Pi i Trepćući LED Raspberry PI za početak, osim onoga što nam treba:
- Kondenzator od 1000µF
- Modul džojstika
- LM324 Op-amp IC
- Otpor 1KΩ (12 komada)
- LED (4 komada)
- Otpor 2.2KΩ (4 komada)
Kružni dijagram:
Unutar LM324 IC nalaze se četiri OP-AMP komparatora za otkrivanje četiri smjera džojstika. Ispod je dijagram LM324 IC iz njegovog tehničkog lista.

Veze koje su izvedene za povezivanje modula Joystick s Raspberry Pi prikazane su na donjoj shemi spojeva. U1: A, U1: B, U1: C, U1: D označava četiri komparatora unutar LM324. Pokazali smo svaku usporednicu na shemi spojeva s pripadajućim pin-om br. od LM324 IC.

Radno objašnjenje:
Za otkrivanje kretanja džojstika duž Y osi imamo OP-AMP1 ili U1: A i OP-AMP2 ili U1: B, a za otkrivanje kretanja džojstika duž osi X imamo OP-AMP3 ili U1: C i OP-AMP4 ili U1: D.
OP-AMP1 otkriva pomicanje džojstika prema Y osi:
Negativni priključak usporednika U1: A je opremljen s 2,3 V (pomoću kruga djelitelja napona za 1K i 2,2K), a pozitivni priključak spojen je na Ry. Kada pomičete džojstik prema Y osi, Ry napon se povećava. Jednom kada ovaj napon prijeđe 2,3 V, OP-AMP daje izlaz + 3,3 V na svom izlaznom pinu. Ovaj VISOKI logički izlaz OP-AMP-a detektirat će Raspberry Pi, a Pi odgovara prebacivanjem LED diode.
OP-AMP2 otkriva okretanje džojstika naopako po Y osi:
Negativni priključak usporednika U1: B je opremljen s 1,0 V (pomoću kruga djelitelja napona za 2,2 K i 1 K), a pozitivni priključak spojen je na Ry. Pri pomicanju džojstika prema Y osi, Ry napon se smanjuje. Jednom kada ovaj napon padne na manje od 1,0 V, izlaz OP-AMP-a postaje nizak. Ovaj NIZKI logički izlaz OP-AMP-a detektirat će Raspberry Pi, a Pi odgovara prebacivanjem LED diode.
OP-AMP3 otkriva kretanje lijeve strane džojstika duž osi X:
Negativni priključak usporednika U1: C ima 2,3 V (pomoću kruga djelitelja napona za 1K i 2,2K), a pozitivni priključak spojen je na Rx. Pri pomicanju džojstika lijevo duž svoje osi x, Rx napon se povećava. Jednom kada ovaj napon prijeđe 2,3 V, OP-AMP daje izlaz + 3,3 V na svom izlaznom pinu. Ovaj VISOKI logički izlaz OP-AMP-a detektirat će Raspberry Pi, a Pi odgovara prebacivanjem LED diode.
OP-AMP4 otkriva kretanje desne strane džojstika duž osi X:
Negativni priključak usporednika U1: 4 ima 1,0 V (pomoću kruga djelitelja napona za 2,2 K i 1 K), a pozitivni priključak spojen je na Rx. Pri pomicanju joysticka desno duž njegove osi x, Rx napon se smanjuje. Jednom kada ovaj napon padne na manje od 1,0 V, izlaz OP-AMP-a postaje nizak. Ovaj NIZKI logički izlaz OP-AMP-a detektirat će Raspberry Pi, a Pi odgovara prebacivanjem LED diode.
Na taj se način sve četiri logike, koje određuju četiri smjera džojstika, povezuju s Raspberry Pi. Raspberry Pi uzima izlaze ovih komparatora kao ulaze i u skladu s tim odgovara prebacivanjem LED dioda. Ispod su rezultati prikazani na terminalu Raspberry Pi, jer smo također ispisali smjer džojstika na terminalu pomoću našeg Python koda.

Python kod i video su navedeni u nastavku. Kôd je jednostavan i može se razumjeti komentarima datim u kodu.
