Když dáte Raspberry Pi kola, vrtule nebo balón

15. 2. 2013
Doba čtení: 6 minut

Sdílet

Raspberry Pi je malý počítač, na kterém už se podařilo rozběhnout řada zajímavých projektů. Jeho možnosti nekončí u USB periférií a HDMI výstupu, ale má řadu pinů, které mu dovolují komunikovat rozmanitými způsoby s fyzickým světem, což v Linuxu otevírá úplně nové možnosti. Je libo třeba let do vesmíru?

Když se objevilo Raspberry Pi, byl jsem nadšen stejně jako miliony dalších. Malý počítač v přepočtu za 700 Kč a stejně velká osekaná verze za 500 Kč, byly příslibem zábavy na dlouhé zimní i letní večery. Když se dostalo na první šťastlivce, začínal jsem dostávat pocit, že z Raspberry Pi se dělá klasické PC a jeho hodnota je určována tím, jak dokáže přehrát HD video. Ano, desktopové prostředí na něm běží a prohlédnete si i nějaký web, ano, XBMC nemá s HD videem žádné problémy, ale nefrustrující uživatelské rozhraní má určitou maximální odezvu, po jejímž překročení se přestáváme cítit pohodlně. Tuto hranici má každý uživatel jinou, ale Raspberry Pi s LXDE z raspbianu, tedy optimalizované distribuci pro Raspberry Pi, ji dokáže překročit na mnoha místech.

Ne ne, Raspberry Pi (RPi) vzniklo jako finančně dostupná pomůcka pro výuku počítačových a elektrotechnických oborů a tak je k němu třeba přistupovat a podle toho je třeba ho také hodnotit. V praktickém světě bych pak RPi označil jako nástroj, pomocí kterého se vytvářejí spíše věci typu „protože můžu“ než „protože potřebuji“. V první skupině se schovává zájem a zábava, pro kterou si RPi uživatelé pořizují. V druhé je zase určitý stres, který jsme ochotni potlačit i penězi. Například když instalujete na síť patnáctý router s téměř shodnou konfigurací jako u čtrnácti předchozích, určitě vám to nepřijde tak zajímavé a zábavné jako u prvního. Nakonec začnete přemýšlet, jak tuto činnost optimalizovat i za cenu větších finančních nákladů a třeba nahradíte i jinak spolehlivý linuxový operační systém něčím více uzavřeným, jen abyste u toho nemuseli trávit tolik času.

Základem RPi je procesor Broadcom BCM2835. Je to malý kousek křemíku, do kterého je připojeno téměř vše, co se na Raspberry Pi nachází. CPU, GPU, SD RAM a řadiče různých sběrnic včetně USB. Na USB jsou napojeny jak samotné USB porty, tak síťová karta. V rohu desky se pak nacházejí různé piny, na kterých nalezneme rozhraní pro GPIO, I²C, UART, SPI a napájení 3,3 V a 5 V. Ve zkratce obsahuje RPi vše, co byste mohli potřebovat při práci s mnoha nízkoúrovňovými periferiemi jako jsou displeje, různé motory, regulátory, relé nebo pro komunikaci s rozšiřujícími deskami, které možnosti spolupráce s periferiemi dále rozšiřují.

Když tučňák dostane kola

Ještě si vcelku živě pamatuji výuku na střední elektrotechnické škole, kde jsem čtyři roky opisoval tabule do sešitu a se součástkami přišel do styku maximálně při nudných měřeních nebo méně nudné automatizaci. Dalo mi to sice nějaký základ, ale nic co bych mohl prakticky využít. Když mi teď, po sedmi letech od střední školy, dorazilo zelené Raspberry Pi, začal jsem zkoumat, jakým způsobem se dá propojit s reálným světem a narazil na pár velmi zajímavých projektů. RPi totiž posunuje svět Linuxu, který je mně a milionům dalších známý, někam k řídícím obvodům. I se základní znalostí programování lze vytvořit RC auto ovládané telefonem nebo gamepadem, kvadrokoptéru nebo vytvořit mozek domu, který bude hlídat topení, osvětlení, spotřebu a podobně.

Velkou výhodou RPi je, že můžete mít pouze jedno a to používat na více místech. Operační systém je uložen na SD kartě a výměnou SD karty můžete úplně změnit jeho využití.

V další části článku bych chtěl ukázat lidi, kterým se z RPi podařilo udělat něco, co stojí za zmínku. Nebudou to samozřejmě všichni a podle různých měřítek to nemusí být to nejzajímavější, co se s RPi dá vytvořit, ale rozhodně to je zábavnější, než nainstalovat XBMC, nechat RPi ležet vedle televize a v diskusích psát že se to rozhraní nějak cuká.

Tom Rees a jeho Legocar

Tom Rees chtěl jako malý auto na dálkové ovládání, ale jeho rodiče mu ho nikdy nekoupili a po společné domluvě dal přednost variantě s videohrami. Kromě toho měl v dětství rád lego a když mu přistálo na stole RPi, nemusel se moc přesvědčovat, aby lego i touhu po RC autě propojil s RPi.

Na svém blogu popsal všechny postřehy, které získal při konstrukci šasi, při výběru správného obvodu pro pohon a pro řízení serva. Při výběru zvolil zajímavý obvod Adafruit 16-channel PWM driver, který pomocí dvou GPIO pinů na RPi umožní impulzně řídit až 16 zařízení. Díky tutoriálu na stránce produktu se Tomovi podařilo rozjet řízení motoru a serva během hodiny.

Pro ovládání motoru použil obvod TB6612FNG Dual Motor Driver Carrier, který slouží pro ovládání dvou malých motorů oběma směry.

Ovládání řeší Tom přes ovladač k XBoxu, který komunikuje s RPi a to překládá vstupy ovladače a předává je na dva z GPIO portů do Adafruit 16-channel PWM driver. Vše naprogramoval v Pythonu. Na výsledek se můžete podívat na následujícím videu:

Picoptéra: když Raspberry Pi dostane vrtule

Další projekt, který stojí za zmínku, je kvadrokoptéra Matthew Watsona. S kvadrokoptérami má už své zkušenosti, ale teprve RPi dalo jeho kvadrokoptéře dostatek výkonu, který může využít pro různé věci. Sám například oceňuje SD kartu, na kterou může během letu ukládat informace z čidel a nebo SSH přístup, který může kvadrokoptéru propojit s jeho notebookem. Během jediného letu dokáže Picoptéra, jak sám svůj výtvor nazývá, nasbírat až 200 MB dat.

RPi má při řízení podobných zařízení jeden problém. Používá operační systém Linux a tím pádem je pro podobné projekty nepředvídatelný. V případech, kdy je třeba, aby regulace reagovala v desítkách milisekund, se může stát, že v kritický moment nedostane řídící program od jádra čas k tomu, aby mohl včas zareagovat. Kvadrokoptéra pak samozřejmě spadne na zem.

Nicméně i přes všelijaká očekávání si preemtivní multitasking v Linuxu vede dobře. Sám Matthew v jednom z blogpostů píše, že v praxi na žádné problémy nedošlo. Všechny informace k jeho projektu naleznete na botched.co.uk/quadrocopter/ a na videu níže můžete vidět poslední výsledky.

Když Raspberry Pi dostane balón

RPi nemusí jen lítat u země nebo po ní jezdit, ale může se podívat i do stratosféry 40 km nad zem. Muž, který mu to umožnil, se jmenuje Dave Akerman a s podobnými balónovými lety má již své zkušenosti. Let popisuje na svém blogu na adrese daveakerman.com, kde se zmiňuje například o tom, co musí elektronika v takové výšce zvládnout. Komunikace je většinou jednosměrná a není možné v případě problémů zařízení restartovat.

Lidé se často bojí nízkých teplot (-50 °C), ale u zařízení se spotřebou, jakou RPi má, to není vůbec žádný problém. Zahřeje se samo. Naopak může nastat problém, že v místech, kde je pouze 1 % normální atmosféry, by se nemuselo teplo z čipu dostat dostatečně rychle. I když je RPi velké, těžké a žravé, Dave nemohl odolat USB portu, který mu poprvé při jeho stratosférických pokusech nabídne připojení levné web kamery a tím pádem i snímky z celého letu. Na ty se můžete podívat zde. RPi jednotlivé snímky posílalo Davovi na zem po celou dobu letu.

bitcoin_skoleni

RPi nakonec přistálo dobře a bylo nalezeno. V odkazovaném blogpostu najdete hromadu dalších informací o tom, s čím počítat, když Raspberry Pi zkusíte vyslat na okraj vesmíru.

Shrnutí

Raspberry Pi není deska, kterou byste měli degradovat na úroveň běžného počítače, ale je to zařízení, které propojuje reálný svět s linuxovým. Všechny znalostmi, které o Linuxu máte, nyní můžete snadno přenést do něčeho hmatatelného, něčeho užitečného, nebo i do úplné blbosti, která vás ale posune zase o kousek dál. Nenechávejte své Raspbbery Pi odpočívat u televize a vemte ho ven.

Autor článku

Adam Štrauch je redaktorem serveru Root.cz a svobodný software nasazuje jak na desktopech tak i na routerech a serverech. Ve svém volném čase se stará o komunitní síť, ve které je již přes 100 členů.