Rasbperry pi puutetundlik ekraan ja LED-tuled
<- eelmine peatükk
järgmine peatükk ->
Selles praktikumis ühendame oma Raspberry puutetundliku ekraaniga. Seejärel ühendame oma miniarvuti LED-tulukestega ning kasutame programmeerimiskeelt Python, et LEDid sisse lülitada.
Puuteekraani ühendamine ning seadistamine
Kogu juhend pärineb siit.
Järgi õpetusi ning ühenda ekraan Raspberry Pi’ga:
1. Samm
2. Samm
3. Samm
4. Samm
5. Samm
6. Samm
7. Samm
8. Samm
Raspberry Pi käivitamisel peaks ekraan tööle minema ning Raspberry käivituma.
Ekraanipildi pööramine
Kui peaksid leidma, et Sul on ekraani mugavam laual hoida teistpidi, siis pildi pööramiseks toimi järgnevalt:
Ava terminal ning sisesta käsklus
sudo nano /boot/config.txt
Keri faili lõppu ning lisa sinna rida
lcd_rotate=2
Seejärel tee Kasutajaliidest kasutades Raspberry'le restart.
Puuteekraani eelis on see, et meil ei ole vaja ühendada füüsilist arvutihiirt ja klaviatuuri. Häda korras saab kõik ekraani pealt küll ära teha, aga samas on 7 tolline ekraan liiga väike, et sellel mugavasti trükkida. Soovitame kasutada füüsilist klaviatuuri.
Virtuaalse klaviatuuri installeerimise juhend
1. Ühenda füüsiline klaviatuur Raspberry Pi’ga
2. Loo ühendus Internetiga - kas läbi WiFi või läbi kaabli
3. Ava terminal ning sisesta "sudo apt install matchbox-keyboard"
4. Kui installeerimine on lõppenud, siis tee Raspberry Pi’le restart
5. Klaviatuuri leiad, kui vajutad Menüü -> Tarvikud -> Klaviatuur
Kui Sa oma ees olevat Raspberry Pi’d vaatad, siis näed, et sellel on kaks rida viike (väiksed pulgakesed). Olenevalt versioonist on neid kokku 26 või uuematel 40 tükki. Kuigi nende välimus on identne, siis tegelikult täidavad viigud erinevaid ülesandeid ning juhtmete valesti ühendamisel võime parimal juhul saada ebaõnnestunud katse ning halvimal juhul katkise Raspberry pi.
Ülemisel joonisel on välja toodu viikude numbrilised järjestused ning nende nimetused. Viigud 1, 2 ja 4 on väljundviigud, mille eesmärk on andureid, sensoreid, ekraani või muud sellist vooluga toetada. Viik üks on pingega 3.3v ja viigud 2 ja 4 on pingega 5v. Edasi näeme, et plaadil on 26 GPIO viiku. GPIO tähendab General-purpose input/output.
Need on enimkasutatavad viigud projektides. Nende abil saab välja saata või vastu võtta 3.3v pingega voolu. Täpsemalt vaatlusel näed, et GPIO viigud on joonisel tähistatud erinevate värvidega. Põhjus seisneb selles, et kindlad GPIO viigud järgivad erinevaid protokolle ning on mõeldud näiteks andmete saatmiseks või vastu võtmiseks. Tekstiga “ground” ning musta värvusega tähistatud viigud on mõeldud loodud elektriühenduse maanduseks. Neid viike läheb Sul tarvis iga loodava ühenduse jaoks. Oluline on tähelepanu pöörata ka nummeratsioonile ning tuleb jälgida, kas loetavate materjalide puhul räägitakse viikude plaadipealsest nummeratsioonist (numbrid ühest neljakümneni) või GPIO viikude nummeratsioonist (numbrid ühest kahekümnekuueni). Programmeerides kasutame just viimasena välja toodu numbriloogikat.
Kui soovid selle kohta täpsemalt lugeda, siis uuri edasi siit või siit.
Järgnevates ülesannetes kasutame programmeerimiskeelt Python. Tegu on lihtsasti loetava ning alustamiseks väga sobiliku programmeerimiskeelega. Enne edasi liikumist teeme koos läbi esimese koodijupi kirjutamise Pythoni keeles. Käivita Raspberry Pi ning klõpsa vaarika-kujulisele ikoonile üleval vasakul. Avanenud menüüst vali ""Programmeerimine"" ning seejärel Thonny Python IDE
. Oota kuni Thonny on avanenud. Thonny on programmeerimiskeskkond Pythoni koodi kirjutamiseks.
Avanenud programmis näed kahte sulle olulist valget kasti - esimene neist asub keskel üleval ning teine keskel all. Ülemisse kasti saad kirjutada oma koodi ning alumises kastis kuvatakse veateated või koodi käivitamisel kuvatav informatsioon. Esimeseks testkoodiks kirjuta rida:
print(“Hello, World!”)
Seejärel tee klõps salvestamisnupul ning salvesta koodifail näiteks kausta Documents nimega hello
. Kui see on tehtud, saame oma koodi käivitada vajutades nuppu “run” (Roheline ring, mille sees asub kolmnurk, mis näitab paremale). Seejärel käivitus kood ning alumises kastis peab olema kuvatud tekst “Hello, World!”. Proovi muuta koodis olevat lauset ning käivita kood uuesti (salvestamist pole vaja enam läbi teha). Kui aga all kastis kuvatakse punase värvusega teksti, siis uuri, mida veateade sulle ütleb ning proovi probleem parandada.
Kui eelnev kood on edukalt käivitatud võid praktikumiga edasi liikuda. Edaspidi soovitame kasutada Thonny keskkonda koodi kirjutamiseks.
LED-tulede vilgutamiseks kasutame eraldi juurdeostetavat lisakomplekti CamJam Edukit #2 -Sensors, mis sisaldab mitmeid sensoreid, vajalike juhtmeid ning maketeerimislauda. Kui teil on antud lisakomplekt olemas, siis jätkake oma tegevusi järgneva juhendi abil. Kindlasti loe informatsiooni hoolega, ära jäta samme vahele ning elektriringi konstrueerimise ajaks lülita Raspberry pi välja ning võta toitejuhe Raspberry pi küljest ära.
Juhend
NB! Kui teil puudub maketeerimislaud, kuid on olemas vajalikud juhtmed, takisti ning LED-tuluke, siis looge ühendus järgneva joonise järgi:
NB2! Enamuste sensorite, tulukeste ning muude vidinate puhul on juhtmete ühendamiseks kaks eripikkusega traati, kusjuures pikem traat ehk anood ühendatakse elektriringi positiivse poolega ning lühem traat ehk katood negatiivse poolega. Ehk pikemat traati pidi liigub vool sisse ning lühemat pidi läheb vool välja (enamasti Ground-viiku).
Pilt pärineb aadressilt https://projects.raspberrypi.org/en/projects/physical-computing/3
Kui juhtmed on ühendatud, siis lülita sisse Raspberry pi. Järgnevalt on sinu ülesanne ühendatud LED-tuluke tööle saada. Selleks uuri Edukit’i tööjuhendit (üleval pool), peamiselt keskendu väljatoodud koodile. Vaata, millised koodiread on Sinu süsteemi jaoks vajalikud ning mida peaksid muutma, et oma LED tööle saada (mõtle nummeratsioonile).
Lisaülesanne
Kui Sul jäi veel aega üle, siis võid teha mõnda järgnevatest valikutest:
a) Kui sul pole maketeerimislauda, kuid on veel lisaks kolm juhet, takisti ja LED-tuleke, siis ühenda juurde veel üks LED-tuli. Plusspoolena võid kasutada viiku GPIO18 ning maandamiseks suvalist Ground-viiku.
b) Uuri tööle pandud koodi/koode ning proovi kirjutada kood, kus kasutajalt küsitakse küsimus ning kui kasutaja vastab valesti, siis sütib punane LED. Kui aga vastus on õige ja sul on kaks LEDi, siis võid õige vastuse korral süüdata teise LEDi. Võid ka ise endale põneva ülesande välja mõelda.
Programmeerimiseks võid abi saada järgnevast õpikust.
Näide kasutajalt küsimuse küsimisest ning vastuse kontrollimisest:
vastus = input("Kumb oli enne, kas kana või muna? ") if vastus == "muna": print("Tubli!")