Malinovec

Objavljeno: 3.9.2012 12:40 | Avtor: Mihael Pajžlar | Kategorija: Dosje | Revija: Avgust 2012

Pred tridesetimi leti so Britanci krojili računalništvo z izdelki, kot sta bila Acorn Atom in ZX Spectrum. Danes je na Otoku položaj mračnejši. Rastoči panogi manjka talenta. Da bi računalništvo zopet postalo zabavno in pritegnilo več nadobudnih mladcev, so v Cambridgu ustanovili fundacijo Raspberry Pi, katere edina naloga je ustvariti poceni platformo za učenje nove generacije načrtovalcev strojne opreme.

Miniaturno vezje (pardon, računalnik) s procesorjem ARM, ki nas je stalo borih 38 evrov, je povsem dovolj močno, da na televizorji predvaja naš MonitorTV v polni ločljivosti FullHD.

Ko je Eben Upton nekega petkovega večera s sodelavci iz Cambridgea ob pivu ugotavljal, zakaj sta tako kakovost kot količina prijavljenih študentov v zadnjih letih drastično upadli, si ni nihče izmed njih niti v sanjah predstavljal, da bo iz čveka v gostilni nastal uspešen izdelek, ki bo dodobra razburkal računalniške vode po vsem svetu. V burni debati so se odločili napraviti računalnik, ki uporabnika ne bo ujčkal, temveč bo iz njega naredil programerja. Dovolj so imeli brucov, katerih programersko predznanje se je ustavilo pri izdelavi spletnih strani. Želeli so si zopet časov, ko so študentje poznali vsak kotiček naprave, s katero so ustvarjali. Če je bil včasih računalnik takoj po zagonu pripravljen za ustvarjanje, pet minut zatem, ko si ga prinesel domov, je v prvem programu že pozdravljal svet, je danes za dostop do take moči treba vanj najprej namestiti ustrezen program. Vedno zmogljivejše naprave s sposobnimi operacijskimi sistemi uporabnike preveč vodijo za roko. Ker jim za vsakdanja opravila ni treba zapreči sivih celic, programerska pamet krni. Želeli so ponuditi alternativo. Upton in prijatelji so bili za dorečene zamisli pripravljeni storiti marsikaj. Vedeli so, da morajo napravo ponuditi po silno nizki ceni. Ker so številni taki projekti v preteklosti že propadli ali pa se jim je strošek izdelave med procesom enormno napihnil, so se tega lotili skrajno previdno. Že spočetka so se odločili, da bo njihova dejavnost neprofitna, zato so se lahko posvetili zgolj ustvarjanju, medtem ko morajo sorodne avanture spotoma poskrbeti tudi za izplačljivost njihovega početja. Neprofitnost jim je omogočila svobodo. Trgu so nameravali ponuditi izdelek, ki ga bodo interesenti brez posledic posnemali, spreminjali ali širili. Skrbno so izbrali strojne komponente in izločili balast ter se lotili izdelave.

Raspberry Pi izdelujejo v serijah po 10.000 kosov. V celoti so narejeni na Kitajskem, saj le tako dosežejo zastavljeno nizko ceno. Zaradi majhne začetne naklade so imeli nemalo težav pri dobavi sestavnih delov. Razprodana prva pošiljka je stvari postavila na svoje mesto. Prvih 10.000 kosov je bilo namenjenih računalniškim navdušencem. Gre za golo osnovno ploščo, rojeno za prilagajanje uporabnikovi domišljiji. Drugi del splavitve bo zajemal učence in druge končne uporabnike. Njihov Raspberry Pi bo zapakiran v prozorno škatlo in nanj bodo nameščene aplikacije za učenje programiranja, kakršni sta Scratch in KidsRuby. Računalnik Raspberry Pi je velik kot plačilna kartica in za devetnajst evrov ponuja zares veliko. Čeprav nima shrambe, zaslona, brezžične povezljivosti ali ohišja, nas navduši s solidnim procesorjem (seveda ne Intelove arhitekture, temveč ARM), pomnilnikom in zmogljivo grafično enoto. Našteto je na vezju z množico priključkov (ethernet, HDMI, USB ...). Strojna oprema zaživi, ko na SD kartico naložimo iz spleta preneseni operacijski sistem. Seveda mora biti prirejen za arhitekturo ARM, to pa so danes bolj ali manj le razne različice Linuxa. Malčka lahko priključimo na katerikoli televizor in nanj privežemo poljubno miško in tipkovnico. Potem se začne zabava.

Nanj nalagamo različne izpeljanke operacijskega sistema Linux. Z njim ustvarimo medijski center za dnevno sobo, na daljavo upravljamo PC, dodamo pamet običajnemu televizorju ali ga v kombinaciji z diskom prelevimo v omreženo shrambo. Možnosti so praktično neomejene, saj je Raspberry Pi pravi računalnik. Zamisli poiščemo v spletu ali si jih izmislimo sami. Cilji fundacije in naprave same niso običajni. Malina nam ne bo nadomestila domačega računalnika ali video predvajalnika. Gre za igračo, ki bo spodbudila zakrnele čute in iz nas znova naredila čistokrvnega računalnikarja. Osnovni cilji neprofitnega projekta so združljivost strojne in programske opreme, zmanjševanje prepada med uporabo in razvojem ter dostopnost sleherniku. Poslanstvo majhnega vezja je dobaviti zmogljivo programersko orodje po izredno nizki ceni. Mokre sanje vsakega navdušenca, ki se rad ukvarja s strojno opremo in ustvarja inovativne programske pripomočke, so z dobavljivostjo en cilj že izpolnile. Kako bo z drugim, bomo videli čez čas, ko se (za zdaj) majhna skupnost, zbrana okoli izdelka, razširi in pokaže prve rezultate.

Da, to je računalnik.

V praksi

Za potreba tega članka smo "malino" kupili in nanjo kar nekaj časa čakali. To, kar smo dobili, v resnici ni videti kaj dosti podobno računalnikom, kot si jih predstavljamo danes. O tem, da nima ohišja, niti ne bi govorili, vendar zadeva nima niti napajalnika. Vse drugo pa v resnici je in deluje. Če imamo le malce samograditeljske žilice.

Za delovanje in zagon RPi (Raspberry Pi) potrebujemo tipkovnico USB, miško, pripravljeno SD kartico, na kateri je nameščen operacijski sistem, kabel HDMI (podpora je za različici 1.3 in 1.4, slednja je priporočena) za priklop monitorja ali z vmesnikom na DVI ali pa RCV priklop na televizijo oz. prek priklopa SCART, Micro USB adapter za napajanje celotnega sistema ter omrežni kabel, če smo kupili model B.

Za zagon RPi potrebujemo SD ali SDHC kartico, za katero je priporočeno, da je vsaj razreda 4 in ima 4 GB ali več prostora, čeprav smo uspešno preslikali in operacijski sistem pognali tudi na 2 GB SD kartici razreda 2 (za dodatne večje programe je na 2 GB kartici premalo prostora; npr. za namestitev XBMC). Namestitev oz. preslikavo operacijskega sistema na izbrano SD kartico lahko izvedemo v Oknih, Pingvinu in na Jabolku. Na izbiro imamo operacijske sisteme Debian GNU/Linux, Arch Linux ARM in QtonPi. Vsem omenjenim sistemom je osnova seveda Linux.

Električna moč

Za delovanje RPi potrebujemo polnilec, ki na izhodni strani zmore napetost 5 V in ima standardni mikro USB priključek (najdemo ga na skoraj vseh pametnih telefonih in tabličnih računalnikih), ker ga sprejme RPi. Priključek preprečuje, da sam uporabnik ne more nenamerno priklopiti višje napetosti od dovoljene, ker s tem lahko pride do trajne poškodbe naprave in seveda vseh drugih, ki so nanjo priklopljene.

Model A pri svojem delovanju potrebuje 500-700 mA toka, model B (ki smo ga preizkušali mi) pa 700-1200 mA. Minimalna poraba modela A je 2,5 W (500 mA pri 5 V), če nanj niso priključene kake druge naprave (npr. USB, ethernet, HDMI itd.), ter modela B 3,5W (700 mA pri 5V) prav tako brez dodatnih priključenih naprav. Če RPi ne dobi dovolj moči, pride do padca napetosti, to pa lahko povzroči nezanesljivo delovanje posameznih delov sistema. To opazimo kot nezanesljivo delovanje tipkovnice, miške ali omrežnih vrat. Vsekakor priporočamo, da uporabimo adapter, ki na izhodu zmore vsaj 1000 mA (1A). S tem, ko imamo adapter večje moči (moč = napetost x tok), zagotovimo, da bo adapter v sunkih zagotovil dovolj moči.

Če sumimo, da imamo težave z adapterjem in s tem dovajanjem napetosti, je treba izmeriti dejansko napetost na ploščici. Pri meritvi uporabimo meritveni točki TP1 in TP2 (označeni sta na sami ploščici), ki nam olajšata opravljanje meritev. Multimeter nastavimo na merilno območje 20 V enosmerne napetosti, izmerjena napetost pa mora biti v območju 4,75 V in 5,25 V. Če je napetosti onkraj tega območja, to pomeni, da imamo težave z napajalnikom ali pa napajalnim kablom.

Namestitev operacijskega sistema

Sama namestitev operacijskega sistema je zelo preprosta. Operacijski sistem snamemo z www.raspberrypi.org/downloads in v Oknih uporabimo program win32diskimager, ki si ga snamemo s https://launchpad.net/win32-image-writer. Zip razširimo in poženemo program brez predhodne namestitve. Uporabniki Ubuntu lahko uporabimo Ubuntu ImageWrite, ki ga lahko preprosto namestimo prek Programskega središča Ubuntu. Uporabniki Unix/Linux in X OS sistema bomo morali uporabiti orodje dd ali katero drugo orodje za zapisovanje slik na SD kartico.

Oba omenjena programa za Okna (win32diskimager) in Ubuntu (Ubuntu ImageWrite) sta si po uporabi in vizualnosti podobna. Program poženemo in mu vnesemo neposredno pot do slike ali jo poiščemo (izogibajmo se šumnikom v imenih map) na disku, nato izberemo še, na katero SD kartico želimo zapisati sliko, ter na koncu kliknemo "Write" oz. "Write to device". Sam proces zapisovanja slike na SD kartico lahko traja dlje časa in ga lahko spremljamo prek indikatorja napredka. Po končanem zapisovanju slike je SD kartica pripravljena, da jo vstavimo v režo, vse skupaj poženemo in se lotimo dela na delujočem računalniku RPi!

Če nismo uporabniki Oken in Ubuntuja, moramo uporabiti orodje dd, ki ga poženemo prek terminala v izbranem operacijskem sistemu. Najprej iz spleta snamemo operacijski sistem z že omenjenega naslova ter za prejeti zip dokument najprej preverimo SHA-1 ključ. Biti mora biti enak, kot je zapisan na strani, kjer smo prenesli dokument. Ob predpostavki, da smo zip dokument prenesli v naš domači imenik (~/), potem za overitev SHA-1 ključa vnesemo ukaz sha1sum ~/debian6-19-04-2012.zip in izpisala se nam bo dolga vrstica s hex kodo, ki naj bi ustrezala. Prejeto zip datoteko razširimo z naslednjim ukazom unzip ~/debian6-19-04-2012.zip. Preden vstavimo SD kartico v režo z ukazom df -h, pogledamo, katere naprave so že priključene na računalnik. Tako bomo najprej našli razdelke na naši SD kartici. Vstavimo SD kartico v bralnik kartic ter spet vnesemo ukaz df -h. Nato se nam prikažejo dodatni razdelki (particije), ki so na SD kartici. Ker smo imeli na kartici samo en razdelek, je temu primerna oznaka /dev/sdb1. Oznake za razdelke so odvisne od tega, kateri operacijski sistem Linux uporabljamo, a pri vseh označevanje deluje po istem ključu - najprej se zapiše ime pogona, v tem primeru sdb, nato pa sledi še številka razdelka.

Pred pisanjem slike na SD kartico moremo vse razdelke odklopiti. S tem onemogočimo pisanje in branje dokumentov. Odklop posameznega razdelka izvedemo z ukazom umount /dev/sdb1. Ker želimo celotno sliko operacijskega sistema zapisati na celotno SD kartico, moramo še odklopiti preostale razdelke, če jih imamo. Oznake preostalih razdelkov si ogledamo z uporabo ukaza df -h. Sedaj, ko imamo vse razdelke odklopljene, lahko zapišemo sliko operacijskega sistema na SD kartico. Upoštevati je treba, da pri naslednjem postopku pri zapisu slike na kartico potrebujemo root pravice. Vnesemo ukaz sudo su in vnesemo geslo za root uporabnika. Zapis slike na SD kartico izvedemo z ukazom

dd bs=1M if=/home/mihael/debian6-19-04-2012/debian6-19-04-2012.img of=/dev/sdb.

Pri argumentu if vnesemo pot, kjer je slika, ki jo želimo zapisati na kartico, pri argumentu of pa vnesemo to, na kateri pogon naj vpiše sliko. Pri slednjem argumentu moramo zelo paziti, kateri pogon vnesemo, kajti če vnesemo napačnega, lahko izgubimo podatke, ki so na tistem pogonu. Kot vidimo, moramo pri oznaki pogona vnesti samo ime pogona sdb brez dodatnih oznak razdelkov. To pomeni, da se bo celotna slika zapisala čez vse razdelke, oz. bo program sam naredil na novo razdelke. Sam proces zapisa slike na kartico lahko traja dlje časa. Ob uspešnem zapisu slike na kartico nas program o tem obvesti in izpiše Done. Sedaj je treba SD kartico le še odstraniti iz bralnika kartic in jo vstaviti v režo ter vse skupaj pognati.

Preslikave operacijskega sistema v Ubuntu 11.10 in Oknih.

Prvi zagon

Uporabil smo operacijski sistem Debian "squeeze", zato se vse naslednje nastavitve nanašajo na omenjeni operacijski sistem. Ko imamo vse dodatne komponente priklopljene in vstavljeno SD kartico (z operacijskim sistemom), še enkrat preverimo, vse priklopimo ali prižgemo zaslon in priključimo napajalnik. Najprej se nam bo prižgala rdeča LED dioda (PWR - Power ON), ki nas opozarja, da je celoten sistem pod napetostjo in da moramo biti previdni, saj lahko vezje, če se ga dotaknemo nenamerno in na neprimernem mestu, v celoti ali delno poškodujemo. Utripajoča zelena LED dioda (OK - OK status) signalizira, da se sistem nalaga, to lahko tudi vidimo in spremljamo na zaslonu. Če začne statusna LED dioda med delovanjem utripati ali se ugaša in prižiga, to pomeni, da imamo težavo z napajanjem. Ob omenjenih LED diodah so zraven še tri dodatne, ki so namenjene za prikazovanje delovanja omrežne kartice: zelena LED dioda FDX (Full duplex), zelena LED dioda LNK (Link) in rumena LED dioda 10M (10 Mb/s povezava).

Prvi zagon bo trajal malo dlje kot poznejši, saj se mora operacijski sistem sam konfigurirati in nastaviti. Med nalaganjem bomo videli, da nam bo sistem z rdečo barvo napisal "failed!". Zaradi tega nam ni treba skrbeti, saj je to samo spodletela povezava z NFS (Network File System). Nato se bo sistem sam samodejno znova zagnal. Če smo namesto monitorja s HDMI priklopom uporabili TV in se besedilo ne prilagaja, je treba na TVju spremeniti vidno razmerje (npr. 4 : 3, 16 : 9, širokozaslonsko itd).

Sedaj, ko se nam je operacijski sistem v celoti naložil in spet zagnal, v ukazno vrstico vnesemo uporabniško ime pi in geslo raspberry. Pozor, tipkovnica je angleška, zato je tipka Y na mestu naše tipke Z... Prav tako je sistemski čas vezan na britanski časovni pas, a ti dve malenkosti lahko hitro in enostavno odpravimo in prilagodimo na slovenski nabor znakov in časovni pas. Za zagon grafičnega vmesnika vnesemo v ukazno vrstico startx in lahko začnemo z delom in preizkušanjem zmogljivosti samega sistema. Za zaustavitev sistema v grafičnem okolju lahko izberemo gumb za izklop, ki ga najdemo v spodnjem desnem kotu, in izberemo Shutdown ali vtipkamo v konzolo sudo shutdown -h now.

Pri meritvi uporabimo meritveni točki TP1 in TP2.

Prve nastavitve

Da nam ne bosta britanska razporeditev tipk in nabor znakov delala preglavic in nas odvrnila od dela, moramo najprej pognati terminal. A le, če smo v grafičnem okolju, v nasprotnem primeru to ni potrebno, ter v ukazno vrstico zapisati sudo dpkg-reconfigure keyboard-configuration. Odpre se program, v katerem moremo najprej izbrati model naše tipkovnice, po programu se premikamo s smernimi tipkami gor in dol, za izbiranje ustreznih gumbov (ok, cancle) pa uporabljamo tipko tab. Če med naštetimi modeli tipkovnice ni naše, izberemo Generic 105-key (Intel) PC in izbiro potrdimo s tipko enter. Sedaj izberemo Other in med državami poiščemo Slovenia in še enkrat izberemo Slovenia, nato sledi določitev tipke AltGr in med podanimi možnostmi izberemo Right Alt (AltGr). Če potrebujemo t. i. compose tipko, izberemo ustrezno, v nasprotnem primeru izberemo No compose key. Na koncu moramo še, če želimo s kombinacijo tipk Control+Alt+Backspace prekiniti delovanje X strežnika, s tipko tab izbrati med yes in no.

Nastavitve bodo začele veljati šele po vnovičnem zagonu sistema, kar lahko naredimo z uporabo ukaz sudo restart ali pa poiščemo gumb za izklop v spodnjem desnem kotu in izberemo Restart. Po teh nastavitvah, ki smo jih naredili, se nam bo sistem vedno malo dlje nalagal kot pri britanski tipkovnici.

Za nastavitev časovnega pasa zaženemo spet terminal in vpišemo sudo dpkg-reconfigure tzdata ter v programu izberemo Europe in potrdimo. Nato izberemo mesto Ljubljana in vse skupaj še enkrat potrdimo. Program se nam zapre in v konzolo se nam izpiše trenutni lokalni čas ter čas po UTC-ju. HDMI med drugim omogoča, da ob sliki lahko prenašamo še zvok, kar je zelo velika prednost, saj nam tako odpade dodaten kabel.

Moč v malem

Res da je strojna oprema (procesorska moč in velikost delovnega pomnilnika) iz časa, ko smo prehajali v novo tisočletje, a lahko ta mali računalnik kaj hitro spremenimo v sodobno in napredno večpredstavno središče z uporabo programa, kot je XBMC. Kar težko je verjeti, da je tako majhen računalnik, hej, bolj ali manj le integrirano vezje, dovolj zmogljivo za predvajanje visokoločljivih video posnetkov. Vendar pa lahko potrdimo, z Raspberry Pijem smo brez težav poganjali naš polnoločljivi (1920 × 1080 pik) MonitorTV, ki je zakodiran z 8 Mb/s kodekom X.264. Posnetek je bil na disku USB, med predvajanjem pa se je procesor le malenkost segrel. Ravno tako nismo imeli nobenih težav pri predvajanju zvoka Dolby Digital in DTS na zunanjem ojačevalcu/dekoderju.

Še to - posebnost RPi računalnika v primerjavi z osebnim ali prenosnim računalnikom je v tem, da lahko uporabljamo dodatne komunikacijske protokole (I2C vodilo, ISP in UART) in dodatnih osem splošnonamenskih vhodnih/izhodnih vrat (GPIO). Ta nam omogočajo, da priklopimo še dodatne naprave, ne da bi potrebovali dodatne pretvornike, ki nam običajno predstavljajo ozko grlo pri sami hitrosti prenosa podatkov. RPi nam pokriva zelo velik spekter uporabe, od zabavne elektronike do zmogljivih nadzornih oz. kontrolnih sistemov.

Raspberry Pi

Mini računalnik s procesorjem ARM

Kje: www.raspberrypi.org

Koliko: 38,75 EUR za model B (vključuje poštnino), model A 10 dolarjev manj.

Za: Potrebuje minimalno električne energije, ne potrebuje hlajenja. Dovolj zmogljiv za predvajanje videa visoke ločljivosti, prek izhoda HDMI.

Proti: Potrebnega je nekaj samograditeljskega znanja, za začetek za napajalnik. Ne škodi tudi znanje Linuxa.

Naroči se na redna tedenska ali mesečna obvestila o novih prispevkih na naši spletni strani!
Prijava

Komentirajo lahko le prijavljeni uporabniki