Obsah:
- Krok 1: Demonstrační video
- Krok 2: Příběh ROVIER
- Krok 3: Součásti a součásti
- Krok 4: Teorie hlasového ovládání
- Krok 5: Teorie ovládání gest
- Krok 6: Teorie ovládání Bluetooth
- Krok 7: Teorie vyhýbání se překážkám
- Krok 8: Sestavení podvozku
- Krok 9: Příprava hlasového modulu
- Krok 10: Provádění připojení
- Krok 11: Kód Arduino
- Krok 12: Vyřešení problémů a vylepšení
- Krok 13: Hraní s robotem
Video: DIY víceúčelový robot s Arduinem: 13 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:23
Tento robot byl postaven hlavně pro porozumění Arduinu a kombinování různých projektů Arduina za vzniku víceúčelového robota Arduino. A dále, kdo by nechtěl mít domácího robota? Pojmenoval jsem to tedy BLUE ROVIER 316. Mohl jsem si koupit krásný pásový podvozek, ale jeho výroba od nuly vás naučí více a po dokončení vás bude více hrdá. Robot je schopen porozumět hlasovým příkazům, odpovídat na jednoduché otázky, ovládat jako RC auto a dokonce se vyhýbat překážkám při pohybu. Ovládá se hlavně prostřednictvím telefonu Android, který je k němu připojen přes Bluetooth. Na základě funkcí systému Android, jako je Google Voice Recognition a Tilt sensing, se opravdu může chovat jako roztomilý, chytrý robot. Do jejího názvu jsem přidal BLUE, protože je založen hlavně na Bluetooth. Byl to vlastně můj první projekt Arduino a chtěl jsem, aby byl jedinečný. Pokud se vám projekt líbí, hlasujte pro mě v soutěži Robotics Contest!
Krok 1: Demonstrační video
Demo robota můžete sledovat na tomto webu:
Krok 2: Příběh ROVIER
Pokud nechcete projít roztomilým malým příběhem BLUE ROVIER 316, můžete přeskočit na další krok. Asi před rokem jsem od svého otce dostal jako dárek Arduino UNO. Protože to byl můj první krok v oblasti Arduina, chtěl jsem z obecných projektů Arduino vytvořit něco jiného a jedinečného. Musel to být roztomilý a chytrý robot, který dokáže rozumět hlasovým příkazům a dělat mnohem více inteligentních věcí, jako je dálkové ovládání, sledování linek, vyhýbání se překážkám atd. Otázkou bylo, jak je spojit dohromady. A poté, co jsem surfoval po internetu opravdu hezky, jsem usoudil, že Bluetooth bude nejlevnější režim. A tak se BLUE ROVIER dal do pohybu. Nastala však situace, kdy jsem musel vyloučit mnoho funkcí robota, u kterého jsem očekával, že ho bude mít, hlavně kvůli nedostatku paměti na Arduino UNO (i ten menší počet digitální piny na UNO). Nevadí, pokračoval jsem. Trvalo mi opravdu dlouho, než jsem vytvořil konečnou verzi Robota. A tak po mnoha pokusech a neúspěších BLUE ROVIER konečně vznikl. A tak můžeme nyní přejít k výrobě robota.
Krok 3: Součásti a součásti
Budete potřebovat pouze následující součásti: 1. Systém Android 2. Arduino Uno 3. modul wtv020-sd-16p a reproduktor 8ohm4. 2x obvod ovladače motoru L293d 5. 4x motory a kola 6. Ultrazvukový senzor HC SR04 7. 9g servo8. 8 Držák baterie AA a baterie 9. 1 GB micro SD karta 10. malá spínací skříňka pro šasi.11. Modul Bluetooth HC 05 Vím, že to vypadá nákladně! Ale nebojte se, bude to stát jen asi dva nebo tři tisíce rupií. Když mluvíme o Androidu, nebude to žádný velký problém vlastnit jeden, protože většina z nich ho dnes má. Ale s novějšími verzemi (nad 5,0) může dojít ke zvýšení výkonu. Zkuste si koupit motory s mírnými otáčkami (60 až 100). To by pomohlo udržet rychlost robota pod kontrolou, protože není nainstalován žádný další obvod pro řízení rychlosti. A 8 AA baterií stačí k dobrému napájení robota. A vzhledem k Bluetooth je HC 05 vhodný pro robota, protože je dostatečně levný a výkon je také vynikající. 1 GB micro SD karta je potřebná k ukládání hlasových souborů, které se přehrávají, když je robotovi položena jakákoli otázka [Podrobně diskutováno v pozdější části nestrukturovatelného]. Ostatní komponenty jsou podrobně probrány v jejich příslušném kroku.
Nyní přejdeme k několika jednoduchým „teoriím“, které se v tomto robotu používají.
Krok 4: Teorie hlasového ovládání
Robot rozumí hlasovým příkazům prostřednictvím telefonu Android. Myslím, že každý je obeznámen s Google Voice Recognition, funkcí v systému Android, kde řekneme slovo a Google jej zadá. Stejná funkce se zde používá k rozpoznávání hlasových příkazů a jejich převodu na textové příkazy. Aplikace zde převádí řeč na text prostřednictvím Googlu a odesílá ji robotovi přes Bluetooth. Robot je naprogramován tak, aby se řídil těmito příkazy přijatými přes Bluetooth. Je také schopen odpovědět na velký počet otázek. Do kódu můžete dokonce přidat několik dalších příkazů, aby robot dokázal ještě více úžasných věcí. Zde je aplikace pro Android:
Krok 5: Teorie ovládání gest
Režim ovládání gesty nebo pohybem se také provádí prostřednictvím systému Android. V tomto režimu lze robota ovládat jako RC auto pomocí Androidu jako volantu. V tomto režimu se používá senzor nazvaný „Akcelerometr“ve všech Androidech. Tento akcelerometr může určit úhel, pod kterým je telefon titulován, měřením sil zrychlení působících na Android. Je to tento senzor, díky kterému Android otočí obrazovku, když nakloníme telefon. Aplikace zde pomocí akcelerometru telefonu určuje úhel, pod kterým je telefon nakloněn. Poté je robotovi přes Bluetooth odeslán znak (A, B….). Arduino je naprogramováno tak, aby fungovalo podle přijatých dat. Pokud je telefon nakloněn dopředu, odešle se znak A a robot se pohne vpřed. Když se nakloní dozadu, odešle se znak B a robot se posune dozadu a tak dále doleva a doprava. Když je Android umístěn vodorovně, odešle se znak E a robot se přestane pohybovat.
Krok 6: Teorie ovládání Bluetooth
V tomto režimu robot funguje jako obecné RC auto. V tomto režimu není nic nového, je to stejné jako běžné dálkově ovládané auto dostupné na trhu, jediný rozdíl je v tom, že k ovládání robota používáme aplikaci pro Android. V aplikaci jsou různá tlačítka, každé má jiné znaky s tím spojené. Když se dotknete kterékoli klávesy, robot je poslán postavě přes Bluetooth, stejně jako režim ovládání gesty. Kromě toho jsou stejné znaky odeslány po dotyku příslušných kláves a robot sleduje příchozí znaky. Pomocí tlačítek 360 a -360 stupňů v aplikaci robot vypadal vpravo a vlevo. Můžete to změnit v kódu, pokud chcete, aby robot dělal jiné věci.
Krok 7: Teorie vyhýbání se překážkám
V tomto režimu robot funguje jako robot pro vyhýbání se překážkám, který brání srážce s jakýmkoli předmětem. To se provádí pomocí senzoru HC SR04. Myslím, že víte o SONAR (Sound Navigation And Ranging). Senzor HC SR04 nepřetržitě vydává ultrazvukové zvukové vlny. Tyto vlny se po dopadu na pevný povrch odrazí a vrátí se zpět k senzoru. Zaznamená se doba, kterou vlny potřebují k návratu do senzoru. Protože zvuk se šíří přibližně 340 m/s a víme, že RYCHLOST × ČAS = VZDÁLENOST, můžeme určit vzdálenost dopředu. Například pokud zvuk trvá 2 sekundy abychom se vrátili, můžeme určit vzdálenost pomocí výše uvedeného vzorce, tj. 340 × 2 = 680 m. Tímto způsobem může robot měřit vzdálenost před sebou pomocí senzoru. Během pohybu robot nepřetržitě měří vzdálenost dopředu senzorem. Pokud vycítí, že volný prostor před ním je menší než 30 cm, zastaví se. Poté se podívá doleva a doprava a porovná vzdálenost každé strany. Pokud má levá strana větší vzdálenost, robot se otočí doleva. Jinak je -li pravá strana větší, robot se otočí doprava. Pokud mají obě strany stejnou vzdálenost, robot se otočí zpět. Tento jednoduchý mechanismus pomáhá robotovi vyhýbat se překážkám.
Krok 8: Sestavení podvozku
Při výrobě podvozku svépomocí musíte být velmi opatrní při měření a zarovnání. Rozhodl jsem se tak učinit, protože jsem na síti nemohl najít žádný, který by mě uspokojil. Jako podvozek je použit obecný spínací box sloužící k napájení. Myslím, že jeden snadno dostanete v obchodě s elektrickými spotřebiči. Nejprve připevněte čtyři motory ve spodní části lepidlem nebo svorkami a poté připevněte kola. Poté musíte vyrobit hlavu robota (servo a snímač HC SR04). Pro hlavu odřízněte malý kousek perfboardu a pomocí šroubu jej připevněte k servu. Poté pomocí lepidla připevněte ultrazvukový senzor k perfboardu. Vyřízněte malý čtvercový otvor v horní části krabice a upevněte do něj servo. Poté pomocí šroubku připevněte držák baterie na zadní straně robota. Vložte obvody a ostatní komponenty do krabice a váš podvozek je připraven. Nezapomeňte před reproduktorem udělat několik otvorů, aby zvuk vycházel a produkoval lepší kvalitu.
Krok 9: Příprava hlasového modulu
Režim mluvení robota splňuje modul WTV 020 SD. Modul slouží k přehrávání hlasových souborů pro robota. Když je položena jakákoli otázka, arduino přiměje modul přehrát příslušný hlasový soubor na SD kartě. V modulu jsou čtyři sériové datové linky pro komunikaci s arduino, reset, hodiny, data a zaneprázdněné piny. Pamatujte, že názvy souborů by měly být v desítkové soustavě (0001, 0002…). A že soubory by měly být buď ve formátu AD4 nebo WAV. Modul dále funguje pouze na 1 GB micro SD kartě. Některé moduly dokonce fungují na 2 GB kartách a karta pojme maximálně 504 hlasových souborů. Můžete tedy zahrnout velký počet hlasových souborů, které lze přehrát pro velký počet otázek. Můžete dokonce vytvořit vlastní hlasové soubory AD4 (Tuto část můžete přeskočit, pokud ji můžete upravit pomocí poskytnutých hlasových souborů spolu s touto nestrukturovatelnou). „Musíte mít dva softwarové nástroje, software pro úpravu zvuku a software nazvaný 4D SOMO TOOL, který by převáděl soubory do formátu AD4. Za druhé, musíte připravit Robot Voices. Můžete buď převést text na řeč, nebo dokonce nahrávat svůj vlastní hlas a dělat hlasy robota. Obojí lze provést v softwaru pro úpravu zvuku. Ale jistě, roboti nevypadají dobře, pokud mluví lidskými hlasy. Mělo by tedy být lepší převést text na řeč. K tomu vám pomohou různé motory jako Microsoft Anna a Microsoft Sam Your Computer. Po přípravě zvukových souborů je musíte uložit na 32 000 Hz a ve formátu WAV. Důvodem je, že modul může přehrávat hlasové soubory až do 32 000 Hz. Poté pomocí nástroje 4D SOMO TOOL převeďte soubory do formátu AD4. Chcete -li to provést, stačí otevřít nástroj SOMO TOOL, vybrat soubory a kliknout na kódování AD4 a vaše hlasové soubory jsou připraveny. Můžete si prohlédnout referenční obrázek výše. Pokud chcete další podrobnosti při vytváření robotických hlasů, můžete jít sem:
[Robotické hlasy] Zde jsou původní hlasové soubory a software:
Krok 10: Provádění připojení
Zkratujte všechny Vcc piny příslušných modulů dohromady a připojte je k 5v pinu na arduinu. Totéž proveďte pro gnd piny. Zde jsou zapojení různých modulů. HC 05 modul: RX pin na arduino dig pin 0. TX pin na arduino dig pin 1. HC SR04 senzor: echo pin na arduino dig pin 6. Trig pin na arduino dig pin 7WTV020-SD modul: pin1 (reset pin) na arduino dig pin2.pin4 na reproduktor +pin5 na reproduktor -pin7 (hodiny) na arduino dig pin3.pin8 na gnd.pin10 (data) na arduino dig pin4.pin15 (zaneprázdněn) na arduino dig pin5.pin16 až 3,3vPoté připojte vodič signálu signálu (žlutý) a vykopejte pin 12. Ovladač motoru L293d: pin A1 na arduino kopací pin 8.pin A2 na arduino dig pin 9.pin B1 na arduino dig pin 10.pin B2 na arduino dig pin 11. Pamatujte, že v tomto robotu používáme dva moduly L293d. Důvodem je, že jeden modul má kapacitu k napájení až dvou motorů. K ovládání čtyř motorů používáme dva ovladače motorů. Nezapomeňte tedy provést duplicitní připojení na obou modulech řadiče motoru. Například připojte pin Arduino 8 na pin A1 obou modulů ovladače. Nezapomeňte připojit výstup jednoho modulu na dva motory a druhý modul na další dva motory. Další diagram naleznete ve schématu.
Krok 11: Kód Arduino
Bylo vzrušující vytvářet kód. Není to vůbec složitý kód, jen používá některé knihovny ke komunikaci s Androidem a zvukovým modulem. Hlavní část práce se provádí v systému Android, a nikoli v Arduinu. Kód je založen na komunikaci Bluetooth a příchozích datech z Bluetooth. Kód je vytvořen takovým způsobem, že musíme robotovi dávat hlasové příkazy k provádění různých režimů a Arduino nepřetržitě kontroluje příchozí signály Bluetooth. Chcete -li zastavit jakýkoli režim, stačí říct „stop“. Jediným problémem s kódem je, že musíme ručně vypnout robota, když je v režimu vyhýbání se překážkám. V tomto režimu nemůžeme použít příkaz „stop“. Zapnutí této funkce totiž ovlivňuje rychlost skenování vzdálenosti objektů. Arduino bude muset současně číst jak vzdálenost objektu, tak příchozí signály Bluetooth. To narušuje režim a robot se nedokáže plně chránit před překážkami. Robot se nemusí okamžitě zastavit, i když je vzdálenost vpředu menší než 30 cm. Bylo by tedy dobré tuto funkci nezahrnout do tohoto režimu. Stačí stáhnout knihovny a kód a nahrát jej do Arduina. Před nahráním ale nezapomeňte z Arduina vyjmout piny TX a RX (0, 1). Tyto piny se používají pro sériovou komunikaci a používají se během odesílání kódu. A v tomto robotu tyto kolíky slouží k připojení modulu Bluetooth. Nezapomeňte je sundat, jinak by to mohlo narušit váš modul Bluetooth. Zde je kód a knihovny:
Krok 12: Vyřešení problémů a vylepšení
Tento krok můžete přeskočit, protože se zabývá pouze vylepšeními robota. V modulu WTV-020-SD-16p dochází k mnoha problémům s kapacitou paměťové karty. Důvodem je, že některé moduly fungují na 2 GB kartách, zatímco některé ne. Je tedy lepší použít kartu micro SD o velikosti 1 GB. Při používání různých verzí komponent by nebyl velký problém. Lze zmínit různé verze modulu wtv 020 sd. Důvodem je, že mezi moduly existuje pouze rozdíl v balení, zatímco většina ostatních vnitřních věcí zůstává stejná. Další důležitou věcí je, že použití desky plošných spojů pro robota do značné míry pomůže snížit spotřebu proudu. Pokud připojujete různé komponenty stejně jako já, bude vás to stát nějaký proud, protože jeho velké množství bude ztraceno ve vodičích s vysokým odporem. Důvodem je, že obvod je dostatečně velký. Tato nestrukturovatelná nezahrnuje návrh desky plošných spojů (protože jsem ji nevytvořil), ale může zvýšit energetickou účinnost robota. BLUE ROVIER 316 však ještě není hotový! Napadlo mě zahrnout některé další funkce, jako jsou následující řádky, řešení bludišť a mnoho dalších věcí. Ale zůstal to sen kvůli nedostatku pinů na Arduino UNO (BLUE ROVIER opravdu žere mnoho pinů Arduina). Napadlo mě tedy vylepšit všechny funkce tohoto robota a spojit je dohromady a vytvořit tak důmyslnější a užitečnější robot Arduino. Buďte tedy připraveni vidět upravený pohled na ROVIER za několik měsíců !!! Dokonce si přeji vidět další upravené verze robota některými jinými lidmi, kteří mají větší kreativitu než já !!!!
Krok 13: Hraní s robotem
Zapněte robota a uvidíte, jak vás zdraví, hraje si s vámi. Položte jakoukoli otázku (ne hloupou!) A sledujte její odpověď. Můžete říct, abyste se řídili liniemi nebo pokračovali. Pokud chcete robota zastavit, řekněte „zastavit“.
Runner Up in the Robotics Contest 2017
Doporučuje:
DIY - RGB LED odstíny ovládané Arduinem: 5 kroků (s obrázky)
DIY | RGB LED odstíny ovládané Arduinem: Dnes vás naučím, jak si můžete velmi snadno a levně postavit vlastní RGB LED brýle. To byl vždy jeden z mých největších snů a nakonec se to splnilo! Obrovský výkřik společnosti NextPCB za sponzorování tento projekt. Jsou výrobcem desek plošných spojů
Víceúčelový koblihový ventilátor: 7 kroků
Víceúčelový prstencový ventilátor: Jste unavení z pájecích výparů, které se vám při pájení dostávají do zorného pole? Už vás nebaví testovat váš nový design letadla, když to potřebujete? Pak zkuste sestrojit toto úžasné zařízení! Tento projekt je víceúčelový přenosný ventilátor, který může být
DIY LED-fotometr s Arduinem pro hodiny fyziky nebo chemie: 5 kroků (s obrázky)
DIY LED-fotometr s Arduinem pro lekce fyziky nebo chemie: Dobrý den! Kapaliny nebo jiné předměty vypadají barevné, protože odrážejí nebo přenášejí určité barvy a zase pohlcují (absorbují) jiné. Takzvaným fotometrem lze určit ty barvy (vlnové délky), které jsou absorbovány kapalinami. Základní cena
DIY chytré elektronické ukulele s Arduinem: 14 kroků (s obrázky)
DIY chytré elektronické ukulele s Arduinem: Krok za krokem vám vysvětlíme, jak si můžete navrhnout vlastní ukulele a přidat nějaké efekty, díky nimž bude jedinečný, jako nakreslit něco, co chceme na povrch ukulele nebo přidat nějaké světelné efekty. K tomu je nutné zakoupit
Víceúčelový snímač vzdálenosti světla: 5 kroků
Víceúčelový senzor vzdálenosti světla: Existuje několik způsobů, jak využít úžasnou tvorbu, jako je tento senzor vzdálenosti světla! Důvod, proč jsem se to rozhodl vytvořit, byl pro moji mimoškolní třídu kódování se žáky 6. ročníku. Studenti pracují se svým Sphero Ollies a učí se, jak