Mainos
Raspberry Pi on täydellinen tietokone oppimiseen. Linux-pohjaisessa Raspbian-käyttöjärjestelmässä on sisäänrakennettu Python, mikä tekee siitä loistavan ensimmäisen järjestelmän aloittelijoille. Sen yleiskäyttöisten tulo- ja lähtötappien (GPIO) avulla aloittajien on helppo kokeilla DIY-elektroniikkaprojekteja.
Se on erityisen helppoa, kun käytät koodikirjastoja, jotka ohjaavat näitä nastaa, ja suosittua RPi: tä. GPIO Python -kirjasto on erinomainen esimerkki tällaisesta kirjastosta. Mutta onko se paras tapa aloittelijoille? Liity tutkittavaksi.
Mikä on GPIO Zero?
GPIO Zero -kirjasto on Python-kirjasto käytettäväksi GPIO-nastat kanssa. Sen kirjoitti Raspberry Pi -yhteisön johtaja Ben Nuttall. Sen tarkoituksena on olla intuitiivinen ja ”ystävällinen” ja se virtaviivaistaa Python-koodia useimpiin Raspberry Pi -käyttötapauksiin.
Yhdistämällä yksinkertaiset nimeämiskäytännöt ja kuvaavat toiminnot GPIO Zero on helpompi ymmärtää aloittelijoille. Jopa kokeneet RPi-käyttäjät. GPIO-kirjasto voi pitää siitä parempana - ja ymmärtääksesi miksi, katsotaanpa kuinka RPi: n toiminta on. GPIO on verrattavissa GPIO Zero -sovellukseen.
Mikä on väärässä RPi: ssä. GPIO?
Ei mitään. Ei mitään. RPI. Kehittäjä Ben Croston julkaisi GPIO: n vuoden 2012 alussa. Se on vankka kirjasto, jonka avulla käyttäjät voivat hallita GPIO-nastaa koodista. Se sisältyy melkein jokainen aloittelijaprojekti 11 parasta vadelmapi-projektia aloittelijoilleNämä Raspberry Pi -projektit aloittelijoille ovat hienoja aloittamiseen minkä tahansa Raspberry Pi -mallin ominaisuuksilla. Lue lisää olemme peittäneet.
Laajasta käytöstä huolimatta RPi. GPIO: ta ei koskaan suunniteltu loppukäyttäjille. Se on todistus RPi: lle. GPIO: n hyvä muotoilu, että niin monet aloittelijat käyttävät sitä silti.
Mikä on niin hyvä GPIO Zero -sovelluksessa?
Kun sinä olet Python-koodin oppiminen, opit, että sen pitäisi olla helppo lukea ja mahdollisimman lyhyt. GPIO Zero pyrkii kattamaan molemmat kohdat. Rakennettu RPi: n päälle. GPIO käyttöliittymänä käyttöliittymänä, se yksinkertaistaa GPIO: n määritystä ja käyttöä.
Mieti seuraavaa esimerkkiä LEDin asettamisesta ja kytkemisestä päälle:
Yllä olevan koodin pitäisi olla melko tuttu kaikille, joilla on käyttivät Pi: tä LEDien ohjaamiseen.
RPi. GPIO-kirjasto tuodaan ja LED-nasta ilmoitetaan. Tappien asettelutyyppi on asetettu (BCM ja BOARD-tila ovat selitetty GPIO-oppaassamme Kaikki mitä sinun tarvitsee tietää Raspberry Pi GPIO -tapeistaRaspberry Pi on fantastinen pieni tietokone, mutta mitä GPIO (yleiskäyttöinen tulo / lähtö) -tapit tekevät tarkalleen? Lyhyesti sanottuna, ne avaavat kokonaisuuden DIY-elektroniikan keksintöjen ja keksintöjen maailmaan. Lue lisää ), ja tappi on asetettu lähtöön. Sitten tappi kytketään päälle.
Tämä lähestymistapa on järkevä, mutta GPIO Zero -tapa tehdä se on paljon yksinkertaisempi:
GPIO Zero -laitteessa on LED-moduuli, joka tuodaan alussa. Tämä tarkoittaa, että voit ilmoittaa pin-numeron ja soittaa led.on () menetelmä.
Miksi GPIO Zero -lähestymistapa on parempi?
On joitain syitä, miksi tämä työskentelytapa on parannus RPi: hen. GPIO.
Ensinnäkin se täyttää ”helppo lukea, mahdollisimman lyhyt” -vaatimuksen. Vaikka RPi. GPIO-asennuslausunnot ovat riittävän helppoja ymmärtää, niitä ei tarvita. LED on aina lähtö, joten GPIO Zero asettaa tapit kulissien takana. Tuloksena on vain kolme koodiriviä, jotka asetetaan, ja sytyttää sitten LED.
Saatat huomata, että GPIO Zero -esimerkissä ei ole hallitustilan asetuksia. Kirjasto käyttää vain Broadcom (BCM) -numerointia nastoille. Kirjaston suunnittelija Ben Nuttall selittää miksi vuonna 2015 RasPi.tv -haastattelu:
”BOARD-numerointi saattaa tuntua yksinkertaisemmalta, mutta sanoisin, että se saa uudet käyttäjät ajattelemaan, että kaikki nastat ovat yleisiä tarkoituksia - eivätkä he ole. Kytke LED-valo napaan 11, miksi et kytke vielä lisää nastaihin 1, 2, 3 ja 4? Kaivo 1 on 3V3. 2 ja 4 ovat 5 V. Tietoisuuden puute siitä, mikä nastat on, voi olla vaarallinen. ”
Tällä tavalla on ehdottoman järkevää käyttää BCM-numeroita. Ottaen huomioon, että GPIO Zero on vakiomuotoinen Raspberry Pi -dokumentaatiossa, se on oppimisen arvoinen!
Onko GPIO Zero tosiasiallisesti parempi?
Vaikka uudessa kirjastossa se näyttääkin suoraviivaisemmalta, onko sillä mitään ongelmia? Kuten kaikissa uusissa koodauskirjastoissa, se on mielipiteen kysymys. Yhtäältä asennuskoodin poistaminen on erinomaista aloittelijoille ja kokenneille koodareille. Koodin kirjoittaminen on selkeämpää ja nopeampaa.
Toisaalta tietäminen tarkalleen mitä tapahtuu on tärkeää oppimiseen. Ota esimerkki painikkeen asettamisesta GPIO Zero -dokumentaatio:
nappi moduuli yksinkertaistaa painikkeiden asettamista. Se tietää, että painikkeet ovat tuloja, joten käyttää ilmoitettua pin-numeroa asennukseen. Painikkeen painalluksen tarkistaminen on myös helpompaa, painikkeilla .is_pressed painikepainikkeiden tunnistamiseksi.
Käytimme tätä tarkkaa toimintoa Vadelma Pi-painike opetusohjelma 2 tapaa lisätä painike Raspberry Pi -projektiisiKuinka kytket painikkeen Raspberry Pi -sovellukseen? Tässä on kaksi tapaa aloittaa, esitelty käyttämällä Pythonia ja LEDiä. Lue lisää , joka on hieno tapa tutustua kirjastojen eroihin.
RPi: n käyttäjät. GPIO-kirjasto huomaa, että Pi: n sisäisiä vetovastuksia ei ole asetettu koodiksi. Tämä herättää mielenkiintoisen kysymyksen. Onko aloittelijoille tärkeää tietää vetovasteista? Ben Nuttallilla on jälleen vastaus tähän kysymykseen:
”Saatat väittää, että on hyvä tietää vetovoimista ja alamäkeistä, ja olit oikeassa - mutta miksi minun täytyy opettaa se ensimmäisenä päivänä? […] Jos haluat opettaa elektroniikkaa perusteellisemmin, siihen on runsaasti tilaa - mutta sen ei pitäisi olla pakollista, jos olet juuri saamassa alkoi.”
Kaiken kaikkiaan GPIO Zero -yrityksen yksinkertainen lähestymistapa on todennäköisesti hyvä asia aloittelijoille ja veteraaneille. Lisäksi RPi. GPIO ei ole menossa minnekään. Se on aina paikalla vaihtaa takaisin tarvittaessa.
Onko Python ainoa vaihtoehto?
Python on kieli, josta Pi tunnetaan, mutta se ei ole ainoa vaihtoehto. Jos olet jo perehtynyt ohjelmointiin C-kielellä, niin Johdotus Pi oletko peittänyt.
Vaihtoehtoisesti, jos ohjelmoit jo JavaScriptin, Node.js voidaan helposti asentaa Pi: hen. GPIO-yhteys on saatavana rpi-gpio npm -kirjasto. Ruby on Rails voidaan myös asentaa Raspberry Pi: hen, vaikka Pi ei ehkä olekin paras tapa oppia Rails!
Kaikki nämä vaihtoehdot, kuten monikieliset kirjastot, pitävät erinomaisista pigpio voi tehdä kirjaston valinnan hämmentäväksi. GPIO Zero on tässä erinomainen: aloittelijoille, jotka ihmettelevät kuinka ja mistä aloittaa.
Jos olet kohdassa, jossa tarvitset jotain, jota se ei tarjoa, olet enemmän kuin valmis sukeltamaan näihin muihin kirjastoihin omassa tahdissasi.
Aloittaminen itse GPIO Zero -sovelluksella
GPIO Zero on uusin kirjasto, joka antaa tilkkaa Pi: lle ja hyvästä syystä. Useimmille käyttäjille se tekee GPIO-nastakoodauksen yksinkertaisemman luettavuuden ja nopeamman kirjoittamisen.
Kun otetaan huomioon vadelmapiin käyttö koulutuksessa, mikä tekee oppimisesta luonnollisempaa, on hyvä asia. Vaikka RPi. GPIO on ollut täydellinen tähän päivään asti, GPIO Zero vie hyvän idean ja tekee siitä vielä paremman.
Upea tapa aloittaa GPIO Zero -sovellus on ottaa aloittelijaprojekti kuten Musikaalinen ovianturi Soita oma teemaviritys, kun syötät huoneeseen Raspberry Pi: lläOletko koskaan halunnut saapua kotiin henkilökohtaiseen tervehdykseen? Tässä yksinkertaisessa Raspberry Pi -projektissa käytämme ruokokytkintä virheen saamiseksi oven avautuessa. Lue lisää ja siirrä se uuteen kirjastoon.
Ian Buckley on freelance-toimittaja, muusikko, esiintyjä ja videotuottaja, joka asuu Berliinissä, Saksassa. Kun hän ei kirjoita tai näyttämöllä, hän söpöi DIY-elektroniikkaa tai -koodia toivossa tullakseen hulluksi tiedemieheksi.