Raspberry Pi » Jednodoskový počítač vo vreckovom formáte
Rovnako, ako v prípade Arduino® Controller , sa pri vývoji zložitých riadiacich jednotiek alebo obvodov často používajú jednodoskové počítače. Asi najznámejší a súčasne najobľúbenejší jednodoskový počítač je Raspberry Pi, ktorý je k dispozícii v najrôznejších variantách.
V čom ale spočívajú rozdiely medzi oboma systémami? V našom Radcovi ku kontrolórom Arduino sme na jednoduchých príkladoch z praxe, podrobne popísali ako ich konštrukciu, tak aj spôsob ich fungovania. V tomto príspevku by sme vám bližšie chceli predstaviť jednodoskové počítače Raspberry Pi a niektoré z rozmanitých možností ich použitia.
Počítače, notebooky, laptopy alebo tablety si už z nášho života nedokážeme odmyslieť. Spĺňajú najrôznejšie úlohy a navzájom sa predbiehajú vo svojich maximálnych výkonoch, pokiaľ ide o rýchlosť a kapacitu pamäte. A to je dobre, pretože aplikácie sú čím ďalej zložitejšie, a napriek tomu od nich chceme, aby reagovali do pár sekúnd.
Čo sa ale deje, keď je úloha, ktorú musí počítač vykonať, skôr banálna? Príkladom by mohla byť situácia, kedy má byť napríklad 3D tlačiareň nepretržite a dlhšiu dobu zásobovaná dátami. Taktiež ovládanie komponentov Smart Home, prenos dát z meteostaníc a videokamier na internet, patrí medzi jednoduché úlohy. Dokonca aj prehrávanie filmov a videí z externého pevného disku je pre moderné desktopové počítače maličkosť. Pretože je pri týchto aplikáciách vyťaženie počítača minimálne, sú moderné počítače nedostatočne využité, resp. absolútne predimenzované. Čo je zbytočné. Presne v týchto situáciách totiž môžu múdre jednodoskové počítače, ako je napríklad Raspberry Pi, ukázať svoje silné stránky.
Napriek tomu, že nie sú väčšie ako platobná karta, disponujú tieto zariadenia všetkým, čo počítač potrebuje. Okrem procesora a pracovnej pamäte majú jednodoskové počítače všetky potrebné rozhrania, cez ktoré je možné pripojiť klávesnicu, myš, sieť, monitor a sieťový zdroj.
Namiesto pevného disku sa používa pamäťová karta, na ktorú sa nahrávajú potrebné aplikácie. V princípe je Raspberry Pi alebo „Raspi“, ako ho fanúšikovia prezývajú, plnohodnotným počítačom, ktorý len trochu zoštíhlil. Kvôli tomu je síce pomalší ako priemerný počítač, ale stále dosť rýchly na to, aby mohol bez problémov splniť všetky úlohy, ktoré dostane.
Pretože je Raspi výrazne lacnejší ako bežný počítač a okrem toho aj voľne programovateľný, ideálne sa hodí na domáce majstrovanie, experimentovanie a tiež vzdelávanie.
Označenie Raspberry Pi nepopisuje iba špeciálny jednodoskový počítač. Oveľa viac sa jedná o označenie kompletného produktového radu, resp. rodiny produktov Raspberry Pi Foundation. Raspberry Pi Foundation je všeobecne prospešná nadácia so sídlom vo Veľkej Británii.
Prvé modely Raspberry Pi sa na trhu objavili už v roku 2012 ako Raspberry Pi model 1B. O dva roky neskôr to bol Pi 1 model B+. Od februára 2015 už boli k dispozícii rýchlejšie Raspberry Pi 2, ktoré mali navyše aj ethernetový port. Rad Raspberry Pi 2 nahradili modely Raspberry Pi 3, ktoré sa začali predávať vo februári 2016. U týchto dosiek už bola 32-bitová architektúra upravená na 64-bitové procesory a pribudol aj WLAN, resp. Bluetooth. Tým sa tieto systémy stali výrazne výkonnejšími.
Raspberry Pi 5 – najnovší člen obľúbenej rodiny Raspberry Pi
Od septembra 2023 sa dá kúpiť nový Raspberry Pi 5. Vďaka CPU so zvýšeným výkonom je Raspberry Pi 5 asi dvakrát až trikrát rýchlejší ako jeho predchodcovia. Najnovšia verzia sa tak hodí nielen pre komplexné počítačové alebo kancelárske aplikácie. Taktiež výpočtovo náročné procesy v oblasti automatizácie, ktoré sú potrebné, napríklad v Priemysle 4.0 pri riadení cobotov, je možné s Raspberry Pi 5 realizovať lacno a efektívne.
Prehľad aktuálnych modelov a ich výkonových parametrov nájdete v nasledujúcej tabuľke:
Prehľadná tabuľka najbežnejších Raspberry Pi
Raspberry Pi Zero 2 W | Raspberry Pi 3B+ | Raspberry Pi 4B | Raspberry Pi 5 | |
---|---|---|---|---|
SOC | BCM2710A1 | BCM2837 | BCM2711 | BCM2712 |
CPU | ARM Cortex-A53 | ARM Cortex-A53 | ARM Cortex-A72 | ARM Cortex-A76 |
CPU-Takt | 4 x 1000 MHz | 4x 1400 MHz | 4x 1500 MHz | 4 x 2400 MHz |
RAM | 512 MB | 1 GB | 1 GB, 2 GB, 4 GB alebo 8 GB | 4 GB alebo 8 GB |
USB | 2 x USB 2.0 | 4 x USB 2.0 | 2 x USB 2.0 2 x USB 3.0 |
2 x USB 2.0 2 x USB 3.0 |
GPIOs | 40 pinov | 40 pinov |
40 pinov |
40 pinov |
Video | 1 x HDMI | 1 x HDMI | 2 x Micro-HDMI | 2 x Micro-HDMI |
Audio | HDMI (digital) | HDMI (digital) 3,5mm konektor na kompozitné video a audio |
HDMI (digital) 3,5mm konektor na kompozitné video a audio |
HDMI (digital) |
Sieť | ✗ | 10/100/1000 MBit(max. 300 MBit/s) | 10/100/1000 MBit | 10/100/1000 MBit |
WLAN | 2,4 GHz | 2,4 GHz | 2,4 GHz | 2,4/5 GHz |
Bluetooth | 4.2 | 4.2 | 5.0 | 5.0 |
Napájanie | 5 V cez Micro USB Min. 2,5 A |
5 V cez Micro USB Min. 2,5 A |
5 V cez USB-C Min. 3 A |
5 V cez USB-C Min. 5 A |
Veľkosť | 65 x 30 mm | 85,6 x 56 mm | 85,6 x 56 mm | 85,6 x 56 mm |
Nami odporúčané produkty
Na príklade Raspberry Pi 3 vám predstavíme najdôležitejšie súčasti Raspberry:
1. Jednotka WLAN/Bluetooth
2. Rozhranie GPIO
3. Piny Power over Ethernet (PoE)
4. Prípojky USB 2.0 (4x)
5. Ethernetová prípojka (LAN)
6. Kontrolór Ethernetu
7. Kompozitné video/audio 3,5 mm
8. Sokel s plochým káblom na kamery
9. Výstup HDMI
10. Procesor
11. Napájanie 5 V (microUSB)
12. LED kontrolky (aktivita a prevádzkové napätie)
13. Sokel s plochým káblom na displeje
14. Pamäť (IC) DRAM
15. Podstavec pre MicroSD kartu
Aby mohol počítač pracovať, musí mať okrem hardvéru k dispozícii aj softvér, teda operačný systém. Pomocou operačného systému je potom možné inštalovať ďalšie aplikácie a programy. Na Raspberry Pi, ktorý je v zásade taký „očesaný“ počítač, je tiež najskôr potrebné nahrať operačný systém Raspberry Pi OS (Rasbian), ktorý je založený na Linuxe. K tomu je potrebná microSD karta s kapacitou najmenej 8 GB, 16 GB alebo ešte lepšie 32 GB. U SD karty je vedľa kapacity pamäte v GB, dôležitá aj rýchlosť zápisu. Tá by mala byť čo možno najvyššia.
Aby sme mohli dosku Raspberry Pi rozbehať, budeme najskôr potrebovať počítač s prístupom k internetu a adaptér na pamäťovú kartu. Operačný systém pre počítač Raspi je možné stiahnuť z internetovej stránky https://www.raspberrypi.org/downloads/. Následne sa stiahnutý súbor nainštaluje priamo na sformátovanú pamäťovú kartu. Pritom je možné z menu vybrať ako verziu softvéru, tak aj pamäťovú kartu.
Po dokončení inštalácie sa pamäťová karta od adaptéra počítača odpojí a zasunie sa do slotu na karty, do počítača Raspi. Potom sa k minipočítaču pripojí myš a klávesnica (dongle alebo pripojenie cez kábel), rovnako ako obrazovka cez HDMI kábel.
Po pripojení sieťového adaptéra sa systém nabootuje a automaticky nainštaluje všetky potrebné ovládače. Pri prvom uvedení do prevádzky je potrebné zvoliť ešte krajinu, jazyk a sieť WLAN, rovnako ako nové heslo. Na konci inštalácie sa taktiež hneď načítajú najnovšie aktualizácie, aby bol operačný systém Raspberry Pi OS v najnovšej verzii.
Po úspešnej inštalácii je úvodná obrazovka s lištou menu k dispozícii na hornom okraji obrazovky. Jednodoskový počítač je teraz pripravený na prevádzku a je možné urobiť prvé nastavenie.
Ikonka Maliny vľavo hore je takmer identická s tlačidlom Štart vo Windows 10. Po kliknutí na ikonku maliny sa objavia ďalšie ponuky, ale aj ďalšie funkcie, ako je napr. správca súborov alebo vytváranie nových ikon na ploche. Obe sa veľmi podobajú funkciám Windows.
Preto je obsluha softvéru Raspi intuitívna a dá sa rýchlo naučiť.
Tip z praxe: Napájanie!
Pretože je Raspberry Pi funkčný počítač, nesmie sa počas prevádzky zástrčka jednoducho vytiahnuť zo zásuvky. Najprv je potrebné vypnúť operačný systém. Za týmto účelom sa klikne na ikonu maliny hore vľavo a následne sa operačný systém jednoducho odhlási a vypne. Akonáhle znovu pripojíte prevádzkové napätie, operačný systém samočinne nabehne. Pokiaľ majú byť vykonané určité užívateľské programy, musia byť neskôr začlenené do spúšťacej rutiny.
Diaľkové ovládanie Raspberry Pi cez VNC
Myš, klávesnica a monitor sú pri počítači Raspberry zvyčajne potrebné iba na inštaláciu, resp. nastavenie. Na neskoršie úlohy už nie sú potrebné. Aby ste ale mohli k počítaču Raspberry kedykoľvek pristupovať, má zmysel zriadiť diaľkové ovládanie cez domácu sieť. V takom prípade sa ponúka „Virtual Networking Computing“ alebo skrátene VNC. So sieťovým protokolom, ktorý funguje naprieč platformami, pracuje vlastne VNC ako pod Windowsom, tak aj pod Linuxom. Navyše je VNC pevnou súčasťou softvéru Raspian.
Ak chcete zariadiť diaľkové ovládanie, stačí, keď zvolíte Štart → Nastavenie a vyvoláte Konfiguráciu. V oblasti Rozhranie je potom potrebné VNC aktivovať a potvrdiť stlačením OK. Následne sa hore vpravo objaví ikona VNC.
Po kliknutí na ikonu, môžete v okne VNC odčítať IP adresu počítača Raspberry Pi. Na počítač, ktorý sa používa na diaľkové ovládanie, je potrebné nainštalovať len VNC Viewer.
Pri prvom vyvolaní softvéru bude opýtaná IP adresa Raspberry Pi. Pretože je používateľ „pi“ už prednastavený, je potrebné zadať iba heslo počítača Raspberry. Následne bude nadviazané spojenie s počítačom Raspberry a je ho možné ovládať na diaľku.
Alternatívne je možné k VNC použiť aj emulátor terminálu „PuTTY“. Emulátor terminálu je možné zadarmo stiahnuť z rôznych stránok. V tomto prípade sa musí v softvéri Raspian, pri rozhraní, aktivovať typ pripojenia „SSH“.
Predtým, než je možné obsadiť a ovládať jednotlivé piny GPIO, musí byť jasné, ktorý pin má aké označenie a akú funkciu. V prípade, keď sa používa Raspberry Pi 3, má 40 pinov nasledujúce obsadenie:
Obsadenie pinov zásuvkovej lišty GPIO pri Raspberry Pi 3:
Zostavenie jednoduchého obvodu so semaforom
Aby sme si mohli názorne ukázať ovládanie GPIO, rozhodli sme sa zostaviť malý obvod so semaforom. Najskôr je k tomu potrebné pripojiť tri LED diódy, každú s predradným odporom. Na rýchle a jednoduché zostavenie obvodu sa hodí malá zásuvná doska.
Pretože použité GPIO sú definované ako výstupy, a tým pádom vydávajú napätie, musia byť anódy LED diód spojené s výstupmi Raspberry Pi.
Červená LED sa spojí s pinom 11 (GPIO 17). Žltá LED sa pripojí na pin 13 (GPIO 27) a zelená LED na pin 15 (GPIO 22). Na katódy troch LED diód sa pripoja po jednom odpore (vždy 220 Ω) oproti kostre na pin 30 alebo na ľubovoľnú inú ukostrovaciu prípojku (GND).
Programovanie ovládania semaforu
Odporúčame vám, aby ste ovládanie semaforu naprogramovali v stále obľúbenejšom programovacom jazyku Python. Na rozdiel od programovania Arduina sa štruktúrovanie programových blokov nevyjadruje zloženými zátvorkami, ale odsadením jednotlivých riadkov. Preto je dôležité tieto odsadenia pri vytváraní kódu programu alebo pri kopírovaní kódu bezpodmienečne dodržiavať.
Kód programu na jednoduché ovládanie semaforu vyzerá takto:
Vysvetlivky ku kódu programu
import RPi.GPIO as GPIO
Vloženie knižnice „RPi.GPIO“ na ovládanie GPIO cez Python.
GPIO.setmode(GPIO.BCM)
Príkaz na použitie označenia GPIO. Pokiaľ sa namiesto toho majú použiť čísla pinov, musí sa namiesto „BCM“ použiť zadanie „Board“.
GPIO.setwarnings(False)
Vypnutie varovných pokynov GPIO.
import time
Vloženie knižnice „time“ na ovládanie časových priebehov.
GPIO.setup(17, GPIO.OUT)
GPIO.setup(27, GPIO.OUT)
GPIO.setup(22, GPIO.OUT)
Tieto tri príkazy definujú GPIO 17, 27 a 22 ako výstupy.
while True:
Nekonečná slučka so štyrmi rôznymi konšteláciami farieb semaforu, pri ktorých sú príslušné GPIO zapnuté (1) alebo vypnuté (0).
time.sleep
Zadanie doby rozsvietenia zapnutých LED diód v sekundách.
try:
except KeyboardInterrupt:
Podmienené pokyny umožňujú prerušenie nekonečnej slučky medzi oboma príkazmi pomocou kombinácie tlačidiel (Ctrl + C). Príslušný príkaz „GPIO.cleanup()“ sa vykoná a všetky GPIO sa vyresetujú. Tým LED diódy zhasnú. Pri prerušení programu by sa natrvalo znovu rozsvietili LED diódy, ktoré svietili v okamihu prerušenia.
Prenesenie kódu programu do programovacieho softvéru
Zvoľte Štart → Vývoj, vyvolajte Thonny Python IDE a kód programu vložte do nepomenovaného okna <untitled> (viď predchádzajúci obrázok so screenshotom). Následne je nutné kód uložiť pod ľubovoľným názvom. Ako spustenie, tak aj prerušenie programu je potom možné vykonať ručne, pomocou okrúhlych tlačidiel. V prípade potreby je možné program tiež začleniť do spúšťacej rutiny, aby sa pri zapnutí jednodoskového počítača automaticky rozbehol. Samozrejme je možné tiež vopred zadať doby prevádzky počítača Raspberry, takže už nie je potrebné ručné zapínanie a vypínanie. Ďalšie informácie k tejto téme a tiež k programovaciemu jazyku Python je možné ľahko nájsť na internete, po zadaní do vyhľadávača.
Dôležité!
GPIO nie sú schopné vydávať vysoké prúdy. Napájacia prípojka 3,3 V, ktorá zásobuje všetky GPIO, poskytuje maximálny prúd iba 50 mA.
Preto by sa pri zostavovaní obvodov s LED diódami mali výhradne používať nízkoprúdové LED.
Ak sú potrebné vyššie prúdy, je možné použiť zosilňovač, ako je napríklad ULN 2803.
Ďalšou veľkou oblasťou využitia jednodoskových počítačov je video-monitoring. Preto majú počítače Raspberry Pi aj sokel s plochým káblom na kamery Raspberry Pi. Tento sokel by sa mal použiť prednostne, pretože potom sa stane kamera pevnou hardvérovou súčasťou systému.
Samozrejme je potom možné na niektorej z USB prípojok prevádzkovať USB kameru. V takom prípade sú však ešte potrebné ovládače kamery, ktoré môžu za určitých okolností, pri niektorých aplikáciách vyvolávať problémy.
Na vyskúšanie pripojenej kamery sa hodí VLC Media Player, ktorý je pevnou súčasťou softvéru Raspberry Pi.
Ak chcete prehrávač médií otvoriť, musíte kliknúť na Štart → Médiá a VLC Media Player.
Rovnako ako vo Windowse, je možné prehrávač médií pretiahnuť a odložiť na plochu. V prehrávači médií sa cez Médiá → Otvoriť médium → otvorí Záznamový prístroj a tlačidlom Prehrať sa spustí kamera.
Pri správnej inštalácii bude vidieť obraz kamery, ktorý je k dispozícii cez VNC a potom v lokálnej sieti.
Počítač Raspberry Pi predstavuje ideálny základ na vstup do sveta jednodoskových počítačov a výučbu programovania, ktoré je na to potrebné. Hoci malé minipočítače disponujú všetkým, čo počítač potrebuje na prácu, sú k dostatiu za veľmi priaznivé ceny, takže nezaťažia rozpočet žiadneho domáceho majstra.
Ale majú aj rozsiahle voliteľné príslušenstvo. Okrem plášťa Raspberry Pi, displeja a kamery, existujú ešte najrôznejšie rozširujúce moduly (Pi HATs alebo pHat). Tie sa jednoducho zapoja do rozhrania GPIO na počítači Raspberry Pi. Elektrické spojenia medzi počítačom Raspberry a PI HAT sa pritom vytvoria automaticky a priestorovo úsporne. Okrem toho je tiež možné externé systémy veľmi ľahko pripojiť cez USB porty.
Vďaka enormnému potenciálu, ktorý tieto malé počítače Raspberry poskytujú, sa ideálne hodia na komerčné a priemyselné využitie. Aj bez veľkých nákladov sa tak dajú zrealizovať komplexné projekty, na ktoré by sa inak museli použiť predimenzované počítače alebo notebooky. Akonáhle prekonáte prvé prekážky pri vstupe do témy, otvoria sa vám prakticky neobmedzené možnosti využitia.