Obsah:

Candy-házející robot s Arduinem, recyklovanými díly a dlib .: 6 kroků
Candy-házející robot s Arduinem, recyklovanými díly a dlib .: 6 kroků

Video: Candy-házející robot s Arduinem, recyklovanými díly a dlib .: 6 kroků

Video: Candy-házející robot s Arduinem, recyklovanými díly a dlib .: 6 kroků
Video: Arianka řádí v obřím nafukovacím zábavním parku! | Rozsekl jsem si holeň na Býkovi! 2024, Listopad
Anonim
Candy-házející robot s Arduinem, recyklovanými díly a dlib
Candy-házející robot s Arduinem, recyklovanými díly a dlib

S několika recyklovanými součástmi, motorovým štítem Arduino + a počítačovým softwarem Dlib můžete vytvořit funkční vrhač cukrovinek rozpoznávající obličej.

Materiály:

  • Dřevěný rám
  • Notebook/počítač (nejlépe jeden výkonnější než Raspberry Pi!).
  • Arduino (nejlépe Uno, nebo takové, které odpovídá štítu vašeho motoru.)
  • Motorový štít Arduino (použil jsem starý štít Adafruit, jak se zde stále prodává)
  • Jakákoli standardní webová kamera
  • Malá pračka

Recyklované díly:

  • Pouzdro (stará kovová krabice funguje dobře.)
  • Krokový motor, stejnosměrný motor z rozebrané staré tiskárny.
  • Starý napájecí zdroj tiskárny
  • Zásobník na cukrovinky (velká nádoba na jogurt).

Vnitřnosti hotového výrobku budou vypadat trochu jako přiložený přehled.

Varování

Před zapojením/opětovným zapojením nezapomeňte odpojit napájení Arduina/nastavení motoru. Nezapomeňte zapojit napájecí kabel se správnou polaritou!

Jedná se o středně pokročilý projekt využívající Arduino a software, který je třeba nainstalovat nebo zkompilovat do počítače. Pokyny se mohou lišit a byly testovány v systému Ubuntu.

Pokud nepoužíváte starý štít motoru Adafruit, možná budete muset upravit kód Arduino na jakýkoli štít motoru, který používáte.

Krok 1: Vrtání, připojení a montáž motoru

Vrták, připojte a namontujte motor
Vrták, připojte a namontujte motor
Vrták, připojte a namontujte motor
Vrták, připojte a namontujte motor

Do pouzdra vyvrtejte otvory a připevněte krokový motor, aby se webová kamera mohla pohybovat nahoře, a dávkovač se může otáčet dole.

Krokové motory se mohou pohybovat v malých přírůstcích (4 vodiče), na rozdíl od stejnosměrných motorů (2 vodiče), které běží dozadu/dopředu, nikoli po krocích.

Stejnosměrný motor má 2 vodiče (běží oběma směry), volitelný krokový motor bude mít 4 ve dvou cívkách (otestujte multimetrový odporový měřič, abyste zjistili, kde jsou cívky zapojeny, jak je zde popsáno.)

Pokud používáte starý štít Adafruit jako v mém příkladu, měli byste připojit motor DC candy spinner k motoru #3 a stepper k prvním dvěma motorům (#1, #2), jak je popsáno v jejich dokumentaci.

Po připojení připojte motory k štítu motoru Arduino připojenému k Arduinu. Pro dosažení nejlepších výsledků se doporučuje mít k motorům druhý napájecí zdroj, který můžete zapojit až na stejnosměrný výstup na bradavici ve zdi za 2 dolary z antikvariátu.

Krok 2: Připevnění kontejneru

Připevnění kontejneru
Připevnění kontejneru
Připevnění kontejneru
Připevnění kontejneru
Připevnění kontejneru
Připevnění kontejneru
Připevnění kontejneru
Připevnění kontejneru

Změřte střed nádoby na jogurt nebo jinou velkou plastovou nádobu a vyvrtejte držák větší než konec motoru.

Připojte nádobu k krabici pomocí malé podložky - Krazy ji přilepte na dno nádoby a na vřeteno elektromotoru.

Nechte lepidlo jeden nebo dva dny zaschnout, aby úplně ztvrdlo - možná budete chtít mezi krabici a spřádací nádobu umístit malý rozpěrný kroužek, aby se zajistilo, že nebude křivý.

Krok 3: Vytvořte malou díru pro vrhač cukrovinek

Vytvořte malou díru pro Candy Thrower
Vytvořte malou díru pro Candy Thrower

Jakmile je číselník správně připevněn, nakreslete koncem ostrého nože malý otvor pro vyhození cukrovinek z konce - to by mělo být těsně nad dnem, kde je pysk.

(Nejlepších výsledků dosáhnete, když na konec víka dávkovače, které bude spodní část, lze vložit asi 30 kusů cukrovinek.)

Udržujte jemný obrys ostrým nožem, dokud nevyskočí a nezanechá malý otvor (otvor můžete podle potřeby později rozšířit).

Krok 4: Nastavení Arduina

Pokud jste ještě nenainstalovali software Arduino, stáhněte si jej z

www.arduino.cc/en/Main/Software

Jakákoli nejnovější verze by měla fungovat.

Otestujte DC/krokový motor podle příkladů uvedených v ukázkovém kódu vašeho Arduino Shieldu.

Pokud náhodou používáte tento štít (stále dostupný u některých prodejců), můžete přímo použít můj kód:

github.com/programmin1/HowToTrainYourRobot…

Jakmile vyzkoušíte a můžete vydávat bonbóny zadáním „d“v sériovém okně Arduino, je na čase to připojit k rozpoznávači Dlib.

Krok 5: Nastavení kopírování

Dlib (https://dlib.net/) poskytuje open-source, snadno použitelnou knihovnu pro rozpoznávání obrázků. Nainstalujte modul Python Dlib pomocí:

sudo pip install Dlib

- nebo -

sudo easy_install Dlib

Počkejte, až se Dlib nainstaluje a zkompilová. (Budete potřebovat počítač s výhodou pár gigů RAM, nebo budete muset dlouho čekat a rozšířit odkládací prostor). Kód také používá OpenCV pro modul webové kamery, takže spusťte:

sudo apt-get install python-opencv

Kroky instalace se mohou lišit, pokud používáte MacOS nebo jiné operační systémy.

Nyní uchopte data orientačních bodů detekce obličeje

dlib.net/files/shape_predictor_68_face_land…

Rozbalte jej (pomocí Správce archivů/7zip) a umístěte jej do DOMŮ/Stahování/shape_predictor_68_face_landmarks.dat

Krok 6: Připojení rozpoznávání tváře k vašemu robotu

Připojení rozpoznávání tváře k vašemu robotu
Připojení rozpoznávání tváře k vašemu robotu

Připojte USB ovládající Arduino k počítači a ověřte, že existuje soubor „/dev/ttyACM0“(toto je zařízení, do kterého lze odesílat sériové příkazy). Pokud to nefunguje a jiný podobně pojmenovaný adresář, který se zobrazí v /dev, když jej připojíte, nahraďte /dev /ttyACM0 v souboru faceDetectThreadCorrelationCV2FaceSmile.py v repo.

Připojte webovou kameru (pokud v počítači, který používáte, není vestavěná webová kamera) a spusťte soubor.py na příkazovém řádku nebo pomocí příkazu Run/F5 v textovém editoru Geany. Pokud chcete na notebooku použít druhou/externí webovou kameru, můžete změnit „VideoCapture (0)“na „VideoCapture (1)“a použít druhou webovou kameru, kterou můžete umístit na krokový motor na vrchu robota.

Pokud vše dobře dopadne, uvidíte před webovou kamerou obrys úsměvu.

Přečtěte si přehled a zdrojový kód souboru.py a podívejte se na matematiku, jak funguje detekce úsměvu z bodů, které Dlib dává z funkce orientačního bodu obličeje.:)

Doporučuje: