Zajímavé a nekomplikované robotkterý se pohybuje za objektem určité barvy.
K určení polohy objektu se používá fotoaparát smartphonu namontovaný na rámu robota. Můžete použít hotový konstruktor, o kterém jsem již psal zde. Zde je seznam toho, co autor potřeboval. S výjimkou smartphonu byla cena tohoto robota 60 $
- Arduino Uno
- Smartphone s operačním systémem Android
- Robotový podvozek
- kabely pro připojení
- H most pro stejnosměrné motory (autor použil pololu TB6612FNG)
Obrázek ukazuje, jak se připojují TB6612FNG a Arduino Uno
Závěry řidiče a za co jsou odpovědné:
1) GND - Připojte jej k pinům GND na Arduino
2) VCC - napájecí napětí logiky ovladače. Připojte jej k 5V pinu na Arduino.
3) A01 - výstupní kontakt, který je připojen k kladné svorce motoru A.
4) A02 - výstupní kontakt, který je připojen k zápornému pólu motoru A
5) B02 - výstupní kontakt, který je připojen k zápornému pólu motoru B.
6) B01 - výstupní kontakt, který je připojen k kladné svorce motoru B
7) VMOT - výstupní napětí motorů. Připojte jej k kladnému pólu baterie. (K pohonu motorů)
8) GND - Připojte jej k zápornému pólu baterie.
9) GND - Připojte jej ke kolíku GND na Arduino.
10) Kolík PWMB-PWM ovladače motoru pro nastavení rychlosti motoru B. Připojte jej k některému z kolíků PWM na Arduino a zadejte hodnotu otáček pro motor od 0-255.
11 a 12) a BIN2 BIN1 - Vstupní kontakty motorového ovladače pro motor B, které určují směr otáčení motoru B. Připojte jej k libovolným dvěma digitálním pinům Arduino.
13) STBY- Připojte jej k libovolnému digitálnímu výstupu. Při instalaci na vysoké úrovni obsahuje ovladač
14 a 15) AIN1 a AIN2- Vstupní kontakty motorového ovladače pro motor, které označují směr otáčení motoru A. Připojte jej k libovolným dvěma digitálním pinům Arduino.
16) Výstup PWMA-PWM ovladače motoru pro nastavení otáček motoru A. Připojte jej k některému z kolíků PWM na Arduino a zadejte hodnotu otáček pro motor od 0-255.
Bluetooth modul HC-06
Aliexpress stojí asi 6 $
Jak to všechno funguje?
Tento projekt používá smartphone Android se speciální aplikací, která zpracovává informace z kamery, aby určila, kde je červený objekt, vypočítá jeho souřadnice a odesílá data přes Bluetooth do Arduina.Aplikace používá ke zpracování obrázků knihovnu openCV. Toto je knihovna algoritmů pro počítačové vidění, zpracování obrazů s otevřeným zdrojovým kódem. Můžete si o tom přečíst nebo. Následuje úryvek kódu pro tuto aplikaci, která provádí tyto výpočty. Níže je část kódu aplikace pro Android, která provádí tyto výpočty
bitmap = Bitmap.createBitmap (mRgba.cols (), mRgba.rows (), Bitmap.Config.ARGB_8888); Utils.matToBitmap (mRgba, bitmap);
int x = 0;
int y = 0;
int all_x = 0;
int all_y = 0;
while (x <176) {
while (y <144) {
int pixel = bitmap.getPixel (x, y);
int redValue = Color.red (pixel);
int blueValue = Color.blue (pixel);
int greenValue = Color.green (pixel);
if (redValue> 200 && blueValue <70 && greenValue <70) {
body ++;
all_x = all_x + x;
all_y = all_y + y;
}
y ++;
}
x ++;
y = 0;
}
y = 0;
x = 0;
x_center = all_x / points;
y_center = all_y / points;
V archivu je schéma zapojení a deska plošných spojů pro robota, pro ty, kteří nechtějí koupit Arduino UNO
Co je potřeba pro montáž:
- Vše, co je uvedeno výše, atmega 8, 128 nebo 328
- LED, bez ohledu na barvu
- 5V lineární stabilizátor (pro verzi bez Arduino)
- Pinové konektory M a F
- Leptané a vrtané PCB (u verze bez Arduino)
- Vrták, páječka.
- Arduino Uno. Pro ty, kteří nevědí, jaké závěry jsou Arduino Uno potřebné, v přiloženém popisu souboru.
Program pro Arduino
Program pro Arduino je velmi jednoduchý. Archivační kód tohoto programu.
Program pro telefon
V tomto archivu je nainstalován program pro telefon jako běžná aplikace a zdrojový kód tohoto programu. Importujte jej do aplikace Android Studio, sbírejte soubor apk a nainstalujte jej do smartphonu.
Tento program používá Bluetooth pouze k odesílání dat. Popis knihovny (openCV) lze nalézt na internetu. Autor vytvořil desku s plošnými spoji pro atmega 328. Nezapomeňte na to, pokud nebudete používat prkénko, ale bude distribuovat váš podpis: