Reklama

Raspberry Pi je perfektný počítač na výučbu. Operačný systém Raspbian založený na Linuxe má zabudovaný Python, čo z neho robí vynikajúci prvý systém pre začiatočníkov. Jeho kolíky GPIO (General Purpose Input / Output) uľahčujú začínajúcim výrobcom experimentovať s elektronickými projektami pre domácich majstrov.

Je to obzvlášť jednoduché, keď používate knižnice kódov, ktoré kontrolujú tieto kolíky, a populárne RPi. Knižnica GPIO Python je vynikajúcim príkladom takejto knižnice. Je to však najlepšia cesta pre začiatočníkov? Pripojte sa k nám pri vyšetrovaní.

Čo je GPIO Zero?

Knižnica GPIO Zero je knižnica Python pre prácu s kolíkmi GPIO. Napísal ho Raspberry Pi komunitný manažér Ben Nuttall. Zameriava sa na intuitívne a „priateľské“ zefektívnenie kódu Python vo väčšine bežných prípadov použitia Raspberry Pi.

Kombináciou jednoduchých postupov pomenovávania a popisných funkcií je GPIO Zero prístupnejšie pre začiatočníkov. Dokonca aj skúsení používatelia RPi. Knižnica GPIO to môže uprednostniť - a aby sme pochopili prečo, pozrime sa, ako RPi. GPIO sa porovnáva s GPIO Zero.

Čo je zlé na RPi. GPIO?

Nič. Vôbec nič. RPI. Spoločnosť GPIO bola prepustená začiatkom roku 2012 vývojárom Benom Crostonom. Je to robustná knižnica, ktorá umožňuje používateľom ovládať GPIO piny z kódu. Vyznačuje sa takmer každý začiatočný projekt 11 najlepších projektov Raspberry Pi pre začiatočníkovTieto projekty Raspberry Pi pre začiatočníkov sú skvelé na to, aby ste mohli začať s funkciami ktoréhokoľvek modelu Raspberry Pi. Čítaj viac sme zakrytí.

Napriek rozsiahlemu použitiu RPi. Spoločnosť GPIO nebola nikdy navrhnutá pre koncových používateľov. Je to svedectvo o RPi. Dobrý dizajn spoločnosti GPIO, ktorý ju napriek tomu používa toľko začiatočníkov.

Čo je dobré na GPIO Zero?

Keď ste učenie kódu Python, zistíte, že by malo byť ľahko čitateľné a čo najkratšie. Cieľom GPIO Zero je pokryť oba body. Postavený na vrchole RPi. GPIO ako predný jazykový modul zjednodušuje nastavenie a používanie GPIO.

Zvážte nasledujúci príklad, nastavenie a zapnutie LED:

Kód na nastavenie a LED na výstup pomocou RPi. Knižnica GPIO

Vyššie uvedený kód by mal byť každému dobre známy použili svoj Pi na ovládanie LED.

RPi. Knižnica GPIO je importovaná a je deklarovaný pin pre LED. Je nastavený typ rozloženia špendlíkov (režim BCM a BOARD sú vysvetlené v našej príručke GPIO Všetko, čo potrebujete vedieť o Raspberry Pi GPIO PinsRaspberry Pi je fantastický malý počítač, ale čo robia kolíky GPIO (univerzálny vstup / výstup) presne? Stručne povedané, otvárajú celý svet domácich majstrov a vynálezov pre domácich majstrov. Čítaj viac ) a špendlík je nastavený ako výstup. Potom sa kolík zapne.

Tento prístup má zmysel, ale postup GPIO Zero je oveľa jednoduchší:

Nastavenie LED s GPIO Zero

GPIO Zero má na začiatku importovaný modul pre LED diódy. To znamená, že môžete nahlásiť číslo PIN a zavolať na led.on () metóda.

Prečo je prístup GPIO Zero lepší?

Existuje niekoľko dôvodov, prečo tento spôsob práce predstavuje zlepšenie RPi. GPIO.

Po prvé, spĺňa požiadavku „ľahko čitateľnej, čo najkratšej“. Zatiaľ čo RPi. Príkazy nastavenia GPIO sú dostatočne ľahké na pochopenie, nie sú potrebné. LED bude vždy výstupom, takže GPIO Zero nastavuje kolíky za scénami. Výsledkom je nastavenie troch riadkov kódu, potom rozsvietenie kontrolky LED.

Môžete si všimnúť, že v príklade GPIO Zero nie je nastavené žiadne nastavenie režimu dosky. Knižnica používa len kolíky Broadcom (BCM) pre kolíky. Návrhár knižnice Ben Nuttall vysvetľuje prečo v roku 2015 Rozhovor RasPi.tv:

„Číslovanie BOARD sa môže zdať jednoduchšie, povedal by som však, že to vedie nových používateľov k tomu, aby si mysleli, že všetky kolíky sú univerzálnym účelom - a nie sú. Pripojte LED na kolík 11, prečo nepripojiť viac na piny 1, 2, 3 a 4? Jamka 1 je 3V3. 2 a 4 sú 5V. Nebezpečenstvo môže byť nedostatočné povedomie o tom, aký je účel kolíkov. ““

Týmto spôsobom je absolútne rozumné používať čísla BCM. Vzhľadom k tomu, že GPIO Zero bude v budúcnosti štandardom v dokumentácii Raspberry Pi, oplatí sa to naučiť!

Je GPIO Zero skutočne lepší?

Aj keď to vyzerá priamočiara na povrchu, má nová knižnica nejaké problémy? Rovnako ako v prípade každej novej kódovacej knižnice je to otázka názoru. Na jednej strane je odstránenie inštalačného kódu vynikajúce pre začiatočníkov aj skúsených programátorov. Písanie kódu je jednoduchšie a rýchlejšie.

Na druhej strane je pre učenie dôležité presne vedieť, čo sa deje. Zoberme si príklad nastavenia tlačidla z internetu Dokumentácia GPIO Zero:

Príklad kódu GPIO Zero Button

gombík modul zjednodušuje nastavenie tlačidiel. Vie, že tlačidlá sú vstupy, takže na nastavenie používa deklarované číslo PIN. Kontrola stlačenia tlačidla je tiež jednoduchšia .is_pressed na detekciu stlačení tlačidla.

Túto presnú funkčnosť sme použili v systéme Windows Príručka pre tlačidlo Raspberry Pi 2 spôsoby, ako pridať tlačidlo do projektu Raspberry PiAko pripojíte tlačidlo k Raspberry Pi? Tu sú dva spôsoby, ako začať, demonštrované pomocou Pythonu a LED. Čítaj viac , čo je skvelý spôsob, ako sa zoznámiť s rozdielmi v knižniciach.

Používatelia RPi. Knižnica GPIO si všimne, že interné pull-up / pull-down rezistory Pi nie sú nastavené v kóde. To vyvoláva zaujímavú otázku. Je nevyhnutné, aby začiatočníci vedeli o pull-up / down odporoch? Ben Nuttall má opäť na túto otázku odpoveď:

„Možno tvrdíte, že je dobré vedieť o ťahoch a pádoch a mali by ste pravdu - ale prečo to musím naučiť v prvý deň? […] Ak Ak chcete učiť elektroniku do väčšej hĺbky, máte na to veľa priestoru - nemalo by to však byť povinné, ak práve získavate začalo. "

Celkovo je jednoduchý prístup GPIO Zero pravdepodobne vhodný pre začiatočníkov aj veteránov. Okrem toho, RPi. GPIO nikam nevedie. V prípade potreby sa tam vždy prepne späť.

Je Python jedinou možnosťou?

Python je jazyk, ktorý je Pi známy, ale nie je to jediná možnosť. Ak ste už oboznámení s programovaním v jazyku C, potom Zapojenie Pi pokrývaš vás.

Prípadne, ak už programujete v jazyku JavaScript, Node.js sa dá ľahko nainštalovať na Pi. Prístup k GPIO je k dispozícii prostredníctvom internetu knižnica rpi-gpio npm. Ruby on Rails môže byť nainštalovaný aj na Raspberry Pi, ale Pi nemusí byť najlepší spôsob, ako sa naučiť Rails!

Všetky tieto alternatívy spolu s mnohými jazykovými knižnicami sú vynikajúce pigpio môže spôsobiť zmätok knižnice. Tu vyniká GPIO Zero: pre začiatočníkov, ktorí sa pýtajú, ako a kde začať.

Ak ste v bode, kde potrebujete niečo, čo neposkytuje, budete viac ako pripravení ponoriť sa do týchto ostatných knižníc svojím vlastným tempom.

Začíname s GPIO Zero Yourself

GPIO Zero je najnovšia knižnica, ktorá urobí rozruch pre Pi as dobrým dôvodom. Pre väčšinu používateľov to uľahčuje čítanie a rýchlejšie zapisovanie na piny GPIO.

Vzhľadom na využitie Raspberry Pi vo vzdelávaní je všetko, čo robí učenie prirodzenejším, dobrou vecou. Zatiaľ čo RPi. Spoločnosť GPIO bola doteraz perfektná, spoločnosť GPIO Zero má dobrý nápad a vylepšuje ju.

Skvelý spôsob, ako začať s programom GPIO Zero, je začať s projektom začiatočníka ako je Hudobný senzor dverí Zahrajte si svoju vlastnú melódiu témy, keď vstúpite do miestnosti s Raspberry PiChceli ste niekedy prísť domov na osobné privítanie? V tomto jednoduchom projekte Raspberry Pi použijeme jazýčkový spínač na spustenie melódie pri otvorení dverí. Čítaj viac a preneste ho do novej knižnice.

Ian Buckley je nezávislý novinár, hudobník, performer a video producent žijúci v Berlíne v Nemecku. Keď nepíše alebo je na pódiu, pohráva sa s elektronikou alebo kódom pre domácich majstrov v nádeji, že sa stane šialeným vedcom.