Jak převzít kontrolu nad Raspberry Pi
Obsah
- stupně
- Část 1 Nainstalujte operační systém
- Část 2 Stáhněte si NOOBS
- Část 3 Naformátujte SD kartu
- Část 4 Zkopírujte NOOBS na SD kartu
- Část 5 Převezměte kontrolu nad malinovým pi
- Část 6 Konfigurace sítě
- Konfigurace kabelové sítě
- Nastavení bezdrátové sítě (SSH / wifi)
- Část 7 Nainstalujte Geany IDE
- Část 8 Řízení stejnosměrného motoru v Pythonu (část zapojení)
- Část 9 Dokončete připojení
- Část 10 Řízení stejnosměrného motoru v Pythonu (programovací část)
- Část 11 1. výzva
- Použijte ultrazvukové čidlo HC-SR04 (zapojení)
- Použijte ultrazvukový senzor HC-SR04 (programovací část)
- Část 12 2. výzva
Raspberry Pi je počítač o velikosti kreditní karty. Je navržen a vyroben nadací Raspberry Foundation, což je nezisková organizace, která se věnuje tomu, aby počítače a programy byly co nejpřístupnější. Původním posláním projektu Raspberry bylo navrhnout co nejlevnější počítač s dobrými programovacími schopnostmi. Takže to dejte do rukou studentů. Cílem této příručky je položit základy pro používání Raspberry Pi a usnadnit tak její manipulaci.
Varování. Tento článek je určen lidem s dobrým pozadím v počítači.
stupně
Část 1 Nainstalujte operační systém
- Pochopte, co je NOOBS (New Out Of Box Stoftware). Jedná se o správce instalace pro různé operační systémy, které lze použít s Raspberry Pi. Jeho účelem je usnadnit instalaci operačního systému (OS) dle našeho výběru. Toto je první kontakt, který budeme mít se softwarovou částí našeho mikropočítače. V operačních systémech NOOBS jsou zahrnuty následující operační systémy:
- Raspbian
- Pidora
- OpenELELC
- RaspBMC
- RISC OS
- Arch Linus
- Vybavení potřebné pro tento tutoriál jsou:
- PC
- Karta SD třídy 4 o velikosti nejméně 8 GB
- Originální krabička obsahující Raspberry Pi již obsahuje předinstalovanou paměťovou kartu SD s NOOBS. Následující kroky jsou proto užitečné pouze při instalaci na novou SD kartu.
Část 2 Stáhněte si NOOBS
-
„NOOBS“ si můžete stáhnout na následující adrese: noobs
Část 3 Naformátujte SD kartu
- Je nezbytně nutné mít SD kartu alespoň 4 GB. Doporučená velikost je však 8 GB.
Část 4 Zkopírujte NOOBS na SD kartu
- Rozbalte soubory. Rozbalte dokumenty ze souboru ZIP s názvem NOOBS staženého v prvním kroku. Zkopírujte extrahované soubory na nově naformátovanou SD kartu. Buďte však opatrní, že v některých případech mohou extrahované soubory přejít do nové složky a v tomto případě je lepší zkopírovat soubory samotné než do složky.
- Při prvním spuštění se zobrazí seznam dostupných operačních systémů.
Část 5 Převezměte kontrolu nad malinovým pi
- Chcete-li použít Raspberry Pi, postupujte podle následujících kroků.
- Vložte SD kartu do Raspberry, dokud neuslyšíte cvaknutí.
- Připojte kabel HDMI a připojte jej k obrazovce. Nezapomeňte připojit a zapnout
- obrazovka. Napájejte Raspberry pomocí Micro USB Charger
- Připojte klávesnici a myš k libovolnému portu USB.
- Po provedení těchto kroků na monitoru uvidíte, že se software NOOBS načítá. Po načtení se zobrazí seznam operačních systémů, které lze nainstalovat. Raspbian je doporučený operační systém pro instalaci. Vyberte Raspbian a klikněte na tlačítko "install" umístěné v horní části okna.
-
Instalace trvá přibližně 20 minut. Po dokončení instalace se zobrazí černá obrazovka s příkazy. Bude-li to vyžadováno programem, bude nutné zadat uživatelské jméno: "pi" a heslo: "malina". Poté zadejte do příkazového řádku následující příkaz a stiskněte klávesu „Enter“:startx
- Gratulujeme! Podařilo se vám nainstalovat prostředí nutné k používání Raspberry pi :)! Nyní přejdeme na konfiguraci sítě.
Část 6 Konfigurace sítě
Připojte se k internetu. Jakmile bude Raspberry Pi funkční, je třeba provést připojení k internetu pro Raspberry Pi. Jakmile to uděláte, budete moci surfovat po internetu stejně jako s úplně jiný počítač. Existují dva způsoby, jak nastavit připojení, buď kabelové (pomocí kabelu Ethernet), nebo bezdrátově přes Wi-Fi. Při nastavování sítě postupujte podle následujících pokynů.
Konfigurace kabelové sítě
- Potřebné vybavení je:
- funkční Raspberry Pi (viz Začínáme s Raspberry Pi)
- ethernetový kabel
- Jednoduše připojte jednu z ethernetových kabelových hlav k poskytnutému portu na Raspberry Pi a druhou k routeru nebo routeru pro přístup k internetu. Díky tomu bude Raspberry Pi automaticky připojeno k internetu.
Nastavení bezdrátové sítě (SSH / wifi)
- Potřebné vybavení je:
- funkční Raspberry Pi (viz Začínáme Raspberry Pi 3)
- WiFi USB klíč
- Připojte USB WiFi stick do jednoho z dostupných portů Raspberry Pi.
-
Otevřete službu nastavení WiFi poklepáním na ikonu v nabídce.- Po otevření služby se zobrazí následující rozhraní.
- Po otevření služby se zobrazí následující rozhraní.
-
Klikněte na tlačítko skenování. Objeví se nové okno. Proto bude zdvojnásobit síť, kterou chceme použít. -
Zadejte heslo. Zadejte heslo pro přístup k síti do pole Předsdílený klíč (PSK), jak je uvedeno níže.- Nyní klikněte na „Uložit“ a přidejte síť. Poté budete připojeni k internetové síti.
- Nyní klikněte na „Uložit“ a přidejte síť. Poté budete připojeni k internetové síti.
Část 7 Nainstalujte Geany IDE
- Geany je lehký e vydavatel využívající GTK + a Scintilla a obsahující základní vlastnosti integrovaného vývojového prostředí. Navržen tak, aby měl málo závislostí a začal rychle, podporuje jazyky C / C ++, Java, JavaScript, PHP, HTML, CSS, Python, Perl, Ruby, Pascal a Haskell.
-
Otevřete příkazový řádek v nabídce. - Zadejte příkazový řádek „kořen sudo“, který má být v kořenové složce Raspberry. Poté zadejte uživatelské jméno „pi“ a heslo „malina“.
- Zadejte následující příkazový řádek.
apt-get install python geany xterm
- Instalace trvá několik sekund.
- Otevřete Geany IDE v nabídce.
- Nyní můžete napsat svůj první program vytvořením prvního souboru na kartě „soubor“.
- Jakmile je váš kód zapsán, stačí se zaregistrovat a zkompilovat kód.
Část 8 Řízení stejnosměrného motoru v Pythonu (část zapojení)
V této části vám ukážeme, jak připojit stejnosměrný motor k Raspberry Pi a jak vytvořit malý program v pythonu schopný měnit rychlost otáčení a směr stejnosměrného motoru.
-
Tento malý návod vám pravděpodobně pomůže později při realizaci vašeho projektu robotů. - Porozumět principu. Nejprve to musíte vědět stejnosměrný motor se nepřipojuje přímo k pinům GPIO Raspberry Pi, Ve skutečnosti bude proud, který bude použit k otáčení motoru (motorů), pro náš malý Raspberry Pi docela vysoký a mohl by být poškozen.
- Proto budeme používat čip určený k řízení až dvou stejnosměrných motorů. Čip L293D.
- Důležitou vlastností Raspberry Pi je řada kolíků GPIO v rohu desky. Jakýkoli z pinů GPIO lze při programování označit jako vstupní nebo výstupní pin.
- Proto budeme používat čip určený k řízení až dvou stejnosměrných motorů. Čip L293D.
- Zapojte L293D.
- Kolíky 4, 5, 12 a 13 L293D musí být připojeny k GND, jak je vidět na obrázku. Kolík 16 L293D umožňuje jeho napájení. Nakrmíme to v 5V. Toto napětí není přenášeno na motor, ale pouze na čip L293D.
- K napájení motoru použijte kolík 8 L293D (kladný pól) připojený k bateriím nebo baterii. Záporný terminál musí být připojen k zemi (GND). Dejte pozor, abyste nepřekročili mez napětí pro motor.
- Kolíky 4, 5, 12 a 13 L293D musí být připojeny k GND, jak je vidět na obrázku. Kolík 16 L293D umožňuje jeho napájení. Nakrmíme to v 5V. Toto napětí není přenášeno na motor, ale pouze na čip L293D.
-
Připojte motor. Chcete-li připojit první motor, jednoduše jej připojte na piny 3 a 6 (výstup 1A a 1B) čipu L293D.
Část 9 Dokončete připojení
- Kolík 1 čipu L293D je „aktivační“ kolík prvního motoru. Když je tento kolík logicky „vysoký“, motor běží maximální rychlostí a když je tento kolík logicky „nízký“, motor je v klidu. Pro umožnění snížené rychlosti motoru stačí na tyto dva stavy hrát velmi rychlým střídáním. Tomu se říká "PWM" (Pulse Width Modulation). Chystáme se připojit pin 1 čipu L293D na pin 22 Raspberry Pi pro řízení rychlosti.
- Chcete-li ovládat směr otáčení motoru, musíte se bavit s kolíky 2 a 7 čipu L293D. Když je kolík 2 „vysoký“ a kolík 7 „nízký“, motor se bude otáčet jedním směrem. Pokud jsou oba logické stavy obráceny mezi těmito dvěma kolíky, motor se otočí opačným směrem. Chystáme se připojit pin l293D 2 pin k Raspberry pin 18 a pin l293D 7 pin k Raspberry 16 pin.
- Chcete-li ovládat směr otáčení motoru, musíte se bavit s kolíky 2 a 7 čipu L293D. Když je kolík 2 „vysoký“ a kolík 7 „nízký“, motor se bude otáčet jedním směrem. Pokud jsou oba logické stavy obráceny mezi těmito dvěma kolíky, motor se otočí opačným směrem. Chystáme se připojit pin l293D 2 pin k Raspberry pin 18 a pin l293D 7 pin k Raspberry 16 pin.
Část 10 Řízení stejnosměrného motoru v Pythonu (programovací část)
- Tento malý kód umožňuje řídit směr a rychlost otáčení motoru. Otáčí se nejprve jedním směrem s vysokou rychlostí po dobu 3 sekund. Pak při snížené rychlosti. Poté je směr otáčení obrácen a motor běží s nižší rychlostí, než s vysokou rychlostí. Nyní vám dovolíme prozkoumat tento kód:
import GPIO.setmode (GPIO.BOARD) GPIO z importu času spánku RPi.GPIO
- Nyní můžeme nakonfigurovat porty GPIO.
Motor1A = 16 ## Výstup A prvního motoru, pin 16 Motor1B = 18 ## Výstup B prvního motoru, pin 18 Motor1E = 22 ## Povolení prvního motoru, pin 22 GPIO.setup (Motor1A, GPIO.OUT) ## 3 piny jsou výstupem (OUT) GPIO.setup (Engine1B, GPIO.OUT) GPIO.setup (Engine1E, GPIO.OUT)
- Zde nakonfigurujeme PWM.
pwm = GPIO.PWM (Motor1E, 50) ## Pin 22 v PWM při frekvenci 50 Hz pwm.start (100) ## zavazujeme se 100% pracovním cyklem
- Stavy portů GPIO jsou aktivní.
„Přímý směr otáčení, maximální rychlost s pracovním cyklem 100%“ GPIO.output (Motor1A, GPIO.HIGH) GPIO.output (Motor1B, GPIO.LOW) GPIO.output (Motor1E, GPIO.HIGH)
- Nyní nechte motor běžet 3 sekundy.
spánek (3)
- Pracovní cyklus se změní na 20%, aby se snížila rychlost.
pwm.ChangeDutyCycle (20)
„Přímá rotace, s pracovním cyklem 20%“ spánek (3) „Zpětná rotace, s pracovním cyklem 20%“ GPIO.output (Motor1A, GPIO.LOW) GPIO.output (Motor1B, GPIO.HIGH) spánek (3) pwm.ChangeDutyCycle (100) „Zpětná rotace, maximální rychlost (pracovní cyklus 100%)“ spánek (3) „Zastavení motoru“ GPIO.output (Engine1E, GPIO.LOW) pwm.stop () ## stop PWM GPIO.cleanup ()
Část 11 1. výzva
Tentokrát vytvořte malý kód se dvěma motory. Je to na vás!
Použijte ultrazvukové čidlo HC-SR04 (zapojení)
- Vybavení potřebné pro tuto fázi je:
- ultrazvukový modul HC-SR04,
- odpor 1 kΩ,
- odpor 2 kΩ,
- připojovací kabely,
- Breadbord
- Ultrazvukový senzor HC-SR04 měří vzdálenost 2 až 400 cm vysíláním zvukových signálů při 40 kHz. V závislosti na čase, který odděluje emise od příjmu ultrazvukového signálu, se pomocí výpočtu zjistí vzdálenost.
- HC-SR04 má 4 piny:
- kolík (Gnd), používaný k uvedení modulu na kostru (0 V),
- výstupní kolík (Echo), používaný k informování o konci emise dultrasonovského vlaku a jeho návratu po odrazu na překážce,
- vstupní pin (Trig for Trigger), který se používá ke spuštění emise vlaku dultrason,
- pin (Vcc), používaný k napájení senzoru v 5 V.
- Výstupní napětí dodávané pinem Echo je 5 V. Avšak vstupní pin (GPIO) Rapsberry Pi je navržen pro až 3,3 V.
- Abychom se vyhnuli poškození Rapsberry Pi, budeme proto používat můstek děliče napětí sestávající ze dvou rezistorů, abychom snížili výstupní napětí senzoru.
- V tu chvíli, jak vidíte výše, připojte:
- borovice "Vcc" na 5 V Raspberry Pi (červená nit)
- kolík „Trig“ na kolíku GPIO 23 (kolík 16) maliny (žluté vlákno)
- kolík „Echo“ na kolíku GPIO 24 (kolík 18) maliny (modrý drát)
- GND borovice s Raspberry GND (černý drát)
- Nezapomeňte na své dva malé odpory!
- Senzor je nyní připojen k Raspberry Pi. Je pryč pro programování pythonu!
Použijte ultrazvukový senzor HC-SR04 (programovací část)
- Jako první krok musí být různé knihovny importovány do:
- Správa portů GPIO.
- Správa hodin
importovat RPi.GPIO jako GPIO importovat čas GPIO.setmode (GPIO.BCM)
- Potom musíme identifikovat různé kolíky, které budeme používat. V našem případě výstupní pin „GPIO 23“ (TRIG: spouštěcí signál do ultrazvukového senzoru) a vstupní pin „GPIO 24“ (ECHO: získání zpětného signálu).
TRIG = 23 ECHO = 24
- Nyní můžeme nakonfigurovat porty GPIO.
GPIO.setup (TRIG, GPIO.OUT) GPIO.setup (ECHO, GPIO.IN)
- Aby bylo zajištěno, že pin "Trig" je zpočátku nízký, nastavíme jej na "False" a vyčkáme, aby se senzor mohl resetovat.
GPIO.output (TRIG, False) "Čekání na usazení senzoru" time.sleep (2)
- Ultrazvukový senzor potřebuje k aktivaci svého modulu puls 10 μs. Pro vytvoření spouště musí být Trig pin vynucen vysoko po dobu 10 μs a poté resetován na nízkou hodnotu:
GPIO.output (TRIG, True) time.sleep (0,00001) GPIO.output (TRIG, False)
- Pro časové razítko různých událostí, které přicházejí ze změny stavu kolíku, použijeme smyčku while a funkci time.time (). Zjistit změnu stavu signálu. Prvním krokem je detekování a časové razítko okamžiku těsně před změnou stavu z nízkého stavu do vysokého stavu. Tento okamžik (pulse_start) bude okamžikem ukončení emise dultrasonovského vlaku senzorem.
while GPIO.input (ECHO) == 0: pulse_start = time.time ()
- Jakmile je ultrazvuk vyzařován, zůstane kolík Echo vysoký, dokud se ultrazvuk odražený překážkou nevrátí. Potom se pokusíme znovu detekovat přepnutí signálu Echo do nízkého stavu. Tato časová známka (pulse_end) bude detekcí návratu ultrazvuku.
while GPIO.input (ECHO) == 1: pulse_end = time.time ()
- Trvání impulsu (pulse_duration) můžeme znát výpočtem rozdílu mezi dvěma pulzy:
pulse_duration = pulse_end - pulse_start
- Abychom věděli vzdálenost, použijeme vzorec:
distance = pulse_duration * 17150
- Zaokrouhlíme naši vzdálenost na dvě desetinná místa:
vzdálenost = kulatá (vzdálenost, 2)
- Zobrazení vzdálenosti v "cm":
"Vzdálenost:", vzdálenost, "cm"
- Abychom resetovali piny GPIO, přidáváme:
GPIO.cleanup ()
- Jediné, co musíte udělat, je uložit kód například pojmenováním „senzor_distance“ a jeho spuštěním v příkazovém řádku:
sudo python remote_capteur.py
- Gratulujeme! jste schopni řídit motor a detekovat vzdálenost pomocí ultrazvukového senzoru!
Část 12 2. výzva
- Pokud máte toto tříkolové vozidlo. S tím, co jste se dosud naučili, musíte být schopni řídit toto vozidlo, aby se při pohybu mohlo tvořit „E“. Bude také schopen zastavit, pokud narazí na překážku pomocí ultrazvukových senzorů.
- Je to na vás!