AlphaBot2 žije!

AlphaBot2 je malý jezdící robot, který je díky vysoce integrovanému a modulárnímu designu velice jednoduchý na sestavení. Robot dokáže sledovat čáru, vyhnout se překážkám, změřit vzdálenost, přijímat pokyny přes Bluetooth/IR port/WiFi vzdálené ovládání, natáčet video a mnoho dalších věcí. AlphaBot2 se prodává ve 4 verzích, ale tento návod je funkční jen pro Raspberry Pi Zero/Zero W a Raspberry Pi 3B.

Potřebný Hardware

Waveshare AlphaBot2 pro Raspberry Pi 3B
– nebo Waveshare AlphaBot2 pro Raspberry Pi Zero/Zero W
Raspberry Pi 3B+
– nebo Raspberry Pi Zero(W)
– MicroSD karta
– 2x 3,6V Li-Ion AA baterie 14500

AlphaBot2

Vyberte si svého AlphaBota a užijte si spoustu zábavy!

AlphaBot2

Potřebný Software

– Operační systém Raspbian
– Python
– knihovna bcm2835

Získané dovednosti

– Co a jak doinstalovat do Raspbianu
– Co a jak nastavit v Raspbianu
– Základy ovládání AlphaBota

V tomto článku si ukážeme jak zprovoznit AlphaBota: Instalaci potřebných knihoven, konfiguraci rozhraní a samotné testování funkcí AlphaBota pomocí předpřipravených kódů.

Instalace potřebných knihoven

AlphaBot potřebuje různé knihovny na to, aby jste ho mohli správně ovládat, a tak si ukážeme jak je nainstalovat.

Instalace knihovny WiringPi

Pro instalaci knihovny WiringPi nejdříve musíte nainstalovat GIT příkazem:

sudo apt-get install git-core

Pokud se Vám objeví nějaký error, ujistěte se, že máte nejnovější verzi Raspbianu příkazy:

sudo apt-get update 
sudo apt-get upgrade

Nyní už můžete nainstalovat samotné WiringPi příkazy:

git clone git://git.drogon.net/wiringPi 
cd wiringPi
git pull origin
./build
Instalace knihovny wiringPi

Instalace knihovny bcm2835

Do Vašeho Raspberry Pi si stáhněte soubor Bcm2835-1.45.tar.gz a rozbalte ho do adresáře /home/pi.

V Terminálu pak pomocí níže uvedených příkazů knihovnu nainstalujte.

cd /home/pi/bcm2835-1.45 
./configure
make 
sudo make check 
sudo make install
Instalace knihovny BCM2835

Instalace knihovny Python

Knihovna Pythonu bývá v Raspbianu již předinstalována ale pokud si nejste jistí nebo knihovnu v systému nemáte nainstalujte jí pomocí těchto příkazů:

sudo apt-get update    
sudo apt-get install python-dev 
sudo python setup.py install 
sudo apt-get install python-smbus 
sudo apt-get install python-serial 
sudo python setup.py install 
sudo apt-get install python-imaging  

Konfigurace rozhraní

Povolení I2C funkce

Pro správnou funkčnost AlphaBota budeme muset povolit I2C funkci. To uděláme pomocí příkazu:

sudo raspi-config

V menu následně vybereme Interfacing options > I2C > yes.

Povolení I2C funkce

Také budeme muset upravit konfigurační složku. Pro upravení složky použijte tento příkaz:

sudo nano /etc/modules

Do tohoto souboru připište na konec dva řádky: i2c-bcm2708 a i2c-dev

Povolení I2C funkce – úprava souboru /etc/modules

Povolení sériové funkce

Pro ovládáni AlphaBota přes sériový port potřebujeme mít tuto funkci povolenou. Do Terminálu napište příkaz: sudo raspi-config. V menu přejděte na Interfacing options > Serial > yes

Povolení sériové funkce

Testování AlphaBota

Pro otestování funkcí AlphaBota WaveShare vytvořil soubor s ukázkovými kódy, díky kterým můžete rychle a jednoduše vyzkoušet jestli Váš AlphaBot funguje tak jak má.

Stáhněte si soubor AlphaBot2-Demo.7z a rozbalte ho do adresáře /home/pi. Pokud Vám nepůjde soubor rozbalit nainstalujte si příkazem sudo apt install p7zip-full program p7zip, který umí soubory .7z rozbalit.

Nyní již máte vše potřebné nainstalováno a můžeme se pustit do testovaní jednotlivých částí AlphaBota.

Testování motoru

Do Terminálu ve Vašem Raspberry Pi napište tyto příkazy:

cd ~/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/python
sudo python AlphaBot2.py

Výsledkem by mělo být to, že by se AlphaBot měl rozjet dopředu. (Pokud se kola AlphaBota otáčí ve špatném směru, tak pro levé kolo prohoďte, v souboru AlphaBot2.py, hodnoty ain1 = 12 a ain2 = 13. Pro pravé kolo prohoďte hodnoty bin1=20 a bin2=21).

def __init__(self,ain1=12,ain2=13,ena=6,bin1=20,bin2=21,enb=26)

5směrný joystick

Pro zprovoznění joysticku který se nachází přímo na AlphaBotovi napište do Terminálu tyto příkazy:

cd ~/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/python 
sudo python Joystick.py

Výsledkem by měla být možnost ovládat AlphaBota pomocí joysticku, který je na něm umístěn. Aktuální směr jízdy se vypisuje do terminálu.

Infračervené dálkové ovládaní

Pro ovládání robota na dálku můžeme použít dálkový ovladač, který je součástí balení. Pro jeho zprovoznění napište do Terminálu tyto příkazy:

cd ~/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/python
sudo python IRremote.py

Po provedení těchto příkazů byste měli být schopní robota ovládat pomocí dálkového ovladače (2-dopředu, 8-dozadu, 4-doleva, 6-doprava, 5-zastavení. Pomocí „+“ a „-“ můžete ovládat rychlost motoru a tlačítko „EQ“ nastaví rychlost na původní).

Ultrazvukový senzor vzdálenosti

Pro vyzkoušení ultrazvukového senzor vzdálenosti zadejte do Terminálu tyto příkazy:

cd ~/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/python 
sudo python Ultrasonic_Ranging.

V Terminálu uvidíte výpis vzdáleností nejbližší věci před AlphaBotem.

Ultrazvukový senzor vzdálenosti je použit i v následujícím programu, díky kterému se AlphaBot dokáže vyhýbat překážkám před ním. Program spustíte příkazy:

cd ~/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/python sudo python Ultrasonic_Obstacle_Avoidance.py

Sensor pro sledování dráhy

Sensor pro sledování dráhy umožňuje AlphaBotovi rozeznávat barvy povrchu (bílá/černá) a díky tomu ho můžete naprogramovat tak, aby sledoval například černou pásku na zemi. Pro zprovoznění senzoru napište do Terminálu Vašeho Raspberry Pi tyto příkazy:

cd ~/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/python 
sudo python TRSensors.py

V terminálu uvidíte výpis dat. Když je AlphaBot na bílé KT desce uvidíte čísla 800-900, když je držen ve vzduchu 0-100 a na černé barvě bude ukazovat čísla od 100-300.

Program pro sledování černé pásky můžete spustit příkazy:

cd ~/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/python
sudo python LineFollow.py

Po provedení příkazu se robot začne kalibrovat hýbáním do stran, až se přestane hýbat postavte ho na černou pásku a zmáčkněte tlačítko joysticku na AlphaBotovi.

Servo motor

Do Terminálu napište tyto příkazy:

 ~/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/python
sudo python PCA9685.py

Servo motor s kamerou by se měl začít otáčet zleva doprava v rozmezí 180°.

Vzdálený přístup přes Bottle

Bottle je jednoduché a efektivní mikro python webové rozhraní, díky kterému můžete AlphaBota ovládat vzdáleně přes internet. Pro instalaci Bottle na Raspberry Pi zadejte do Terminálu příkaz:

sudo apt-get install python-bottle

Pro zapnutí video streamu přejděte do složky:
home/pi/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/python/Web-Control, zde otevřete v textovém editoru soubor index.html a změňte IP adresu na IP adresu svého Raspberry Pi. Pokud IP adresu neznáte, zjistíte ji např. příkazem ifconfig.

<img width="320" height="240" src="http://10.0.3.51:8000/?action=stream">

Pro zapnutí vzdáleného přístupu napište do Terminálu tyto příkazy:

cd ~/AlphaBot2-Demo/'Raspberry Pi'/AlphaBot2/Web-Control 
sudo python main.py

Po vykonání příkazu otevřete internetový prohlížeč a do adresového řádku napište IP adresu Vašeho Raspberry Pi a port 8000 (např. 192.168.0.1:8000).

Webové rozhraní Bottle

V tomto návodu jsme si ukázali, jak zprovoznit a vyzkoušet AlphaBota díky předpřipraveným programům. Teď už je jen na Vás jestli zůstanete jen u toho nebo začnete s tvořením vlastních programů. Pokud vytvoříte nějaký zajímavý program a budete se s ním chtít pochlubit, můžete ho sdílet na našem fóru.

Zdroje článku
Odkazy

Napsat komentář