Obsah:

Tinku: Osobní robot: 9 kroků (s obrázky)
Tinku: Osobní robot: 9 kroků (s obrázky)

Video: Tinku: Osobní robot: 9 kroků (s obrázky)

Video: Tinku: Osobní robot: 9 kroků (s obrázky)
Video: Zavřete oči a poslouchejte 😂😂😂 2024, Červenec
Anonim
Tinku: osobní robot
Tinku: osobní robot

Autor: sw4p Sledovat více od autora:

Nehmotný povrch
Nehmotný povrch
Nehmotný povrch
Nehmotný povrch
Odstraněno Instructable
Odstraněno Instructable
Odstraněno Instructable
Odstraněno Instructable
Kartonový klavír
Kartonový klavír
Kartonový klavír
Kartonový klavír

Ahoj, Tinku není jen robot; je to osobní robot. Je to balíček vše v jednom. Může vidět (počítačové vidění), poslouchat (zpracování řeči), mluvit a reagovat na situaci. Může vyjadřovat emoce a seznam věcí, které může dělat, pokračuje. Dal jsem mu jméno; Říkám tomu Tinku.

Stručný úvod toho, co může udělat, je

  1. Počítačové vidění

    • Detekce obličeje
    • Sledování obličeje
    • Fotografujte a nahrávejte video
    • Rozpoznejte značky ArUco
  2. Zpracování řeči

    • Offline zpracování řeči (detekce klíčových slov)
    • Dokáže porozumět tomu, co říkáte, detekováním hesel.
  3. Vyjádřete emoce

    • Pohybuje hlavou k neverbální komunikaci a vyjadřování pocitů.
    • Na své obrazovce zobrazuje obrázky a gify, aby podpořil aktuální sentiment.
  4. Pohybovat

    Může běhat kolem a identifikovat místa pomocí značek ArUco

  5. Vyhýbání se překážkám

    Má sonarové senzory, takže si je vždy vědom svého okolí a dokáže se vyhýbat překážkám

Dokáže mnohem více věcí. Můžete také implementovat, jaké nové funkce chcete.

Dost řečí, pojďme se domluvit.

EDIT: Tělo Tinku začalo praskat, takže jsem ho musel úplně předělat. Zde jsou nové obrázky, zcela čerstvé a lepší Tinku. Omlouvám se, nemám k dispozici obrázky kroků předělání Tinku.

Krok 1: Věci, které budete potřebovat

Věci, které budete potřebovat
Věci, které budete potřebovat
Věci, které budete potřebovat
Věci, které budete potřebovat
Věci, které budete potřebovat
Věci, které budete potřebovat
Věci, které budete potřebovat
Věci, které budete potřebovat

Tělo robota

  1. Akrylový list
  2. MDF deska
  3. Malé svorky L.
  4. Balení matice a šroubu

Serva, motory a kola

  1. Dynamixel AX-12A (3 kusy)
  2. Sada bioloidních šroubů a matic
  3. Motory (2 kusy)
  4. Skladby (2 balení)
  5. Kolečka (4 kusy)
  6. Svorky L pro motory (2 kusy)
  7. Svorka L pro figurínu hřídele kola (2 kusy)
  8. Dummy hřídel kola (2 kusy)
  9. Bioloidní rám F8
  10. Bioloidní rám F3 (2 kusy)
  11. Bioloidní rám F2
  12. Bioloidní rám F10

Elektronika

  1. Arduino
  2. Raspberry Pi nebo Udoo Quad
  3. Řidič motoru
  4. Webová kamera Logitech-c270 (má vestavěný mikrofon)
  5. Ultrazvukové snímače vzdálenosti (6 kusů)
  6. Lipo baterie (3300 Mah 3S)
  7. Zvyšte regulátor napětí (DC-DC)
  8. Krokový regulátor napětí (DC-DC)
  9. Dotyková obrazovka (7 palců)
  10. Rozbočovač USB (pouze pokud používáte Udoo Quad, protože má pouze 2 porty USB)
  11. 7404 hex invertor IC
  12. 74HC244 IC
  13. 14pinová IC základna
  14. 20pinová IC základna

Konektory a kabely

  1. Zástrčka T-konektoru baterie
  2. Flexibilní kabel HDMI (pouze pokud má vaše obrazovka konektor HDMI)
  3. Micro USB kabel
  4. Tři kolíky kabel pro ženy a ženy pro relimaci (6 kusů)
  5. Napájecí zástrčka DC hlavní (2 kusy)
  6. Servo konektory Dynamixel (3 kusy)
  7. Kabel USB A na B (pouze pokud nebyl dodán s Arduino)
  8. Propojovací vodiče
  9. Dráty na prkénko
  10. Burg proužky

Pro výrobu desek plošných spojů

  1. Laminát potažený mědí
  2. PCB etcher (Fecl3)
  3. Děrovaná PCB
  4. 1 mm vrták

Smíšený

  1. Lepidlo
  2. Trubice chladiče
  3. Mezery

Poznámka: Zde používám desku Udoo, protože má lepší výpočetní rychlost než moje malina pi 2. Používám spíše externí Arduino než vestavěné Arduino na desce Udoo, protože všechny moje senzory a moduly jsou kompatibilní s 5v a Arduino v Deska Udoo je kompatibilní s 3v.

Krok 2: Tělo robota

Tělo robota
Tělo robota
Tělo robota
Tělo robota
Tělo robota
Tělo robota
Tělo robota
Tělo robota

K přípravě těla robota jsem použil akrylový list a rozřízl ho na uvedenou velikost, abych vytvořil krabicovou strukturu. Na obrázku jsem zmínil rozměr každé strany těla.

  1. Odřízněte akrylový list podle zadané velikosti.
  2. Na konkrétních místech vyvrtejte otvory pro montáž motorů, senzorů, distančních sloupků a spojení každé desky dohromady.
  3. Pro provlečení kabelů vyvrtejte do základní desky a horní desky větší otvor.
  4. Na spodní straně předního a zadního panelu vytvořte malý zářez, aby jím mohly procházet dráty přicházející z ultrazvukového senzoru.

Je čas připravit a namontovat motory a koleje.

  1. Na piny motoru připájejte další vodiče, aby se vodič dostal k ovladačům motoru.
  2. Namontujte svorky motoru a svorky hřídele figuríny kola na základní desku robota.
  3. Připojte motory a hřídel fiktivního kola ke svorkám a poté připojte kola.
  4. Sestavte koleje a vytvořte smyčku.
  5. Dráha popruhu na kolečkách. Mějte na paměti, že stopa nepoléhá a má na sobě dostatečné napětí.

Nyní spojte přední, zadní a jeden boční panel na základním panelu pomocí malých svorek L. Nemontujte horní panel a jeden boční panel, abychom měli dostatek místa pro montáž elektroniky na robota.

Krok 3: Hlava a tvář robota

Image
Image
Hlava a tvář robota
Hlava a tvář robota
Hlava a tvář robota
Hlava a tvář robota
Hlava a tvář robota
Hlava a tvář robota

Už jsme dali robotu tělo a kola. Nyní je čas dát tomu hlavu, krk a obličej.

Krk:

Nejsložitější částí v hlavě robota je krk. Nejprve ji tedy připravíme. Serva Dynamixel jsou trochu matoucí, ale jsou spolehlivá a odolná. K dispozici jsou tuny montážních svorek, takže je můžete libovolně spojovat.

Podívejte se na toto video, kde najdete lepší vysvětlení, jak spojit serva dynamixel dohromady.

  1. Vložte matice do serva dynamixel a namontujte je pomocí rámů.
  2. Umístěte bioloidní rámeček F8 doprostřed horního panelu a označte vrtné otvory a vyvrtejte je.
  3. Připojte bioloidní rámeček F8 k jednomu ze serva a poté namontujte rámeček bioloidu F8 na horní panel.
  4. Spojte každé servo dohromady pomocí různých rámů a připravte krk.
  5. Připojte k sobě serva pomocí třípólových konektorů servo dynamiky.

Oko a ucho:

Jako oko svého robota používám webovou kameru Logitech webcam-c270. Je to dobrý fotoaparát, který dokáže pořizovat fotografie a nahrávat videa v rozlišení 720p. Má také vestavěný mikrofon, takže se stává uchem i pro mého robota. Po dlouhém brainstormingu jsem zjistil, že nejlepší místo pro připevnění kamery je v horní části obrazovky. Ale pro montáž kamery potřebuji držák kamery. Pojďme si tedy jeden vyrobit.

  1. Odstraňte kovové části z dodané webové kamery, aby měla určitou váhu.
  2. Z desky MDF vystřihněte dva kusy, jeden čtverec a jeden trojúhelník o rozměrech uvedených na obrázku.
  3. Vyvrtejte otvor do spodní části webové kamery a na čtvercový kus MDF. Na čtvercovém dílu vytvořte zářez a vložte do něj kabel webové kamery.
  4. Slepte kusy MDF k sobě a vytvořte tvar T. Držák kamery je připraven.
  5. Před připevněním držáku kamery a fotoaparátu k sobě nejprve připravte hlavu.

Hlava:

Hlava robota je spojena se servy. Musí být co nejlehčí, aby hlava nepůsobila na serva příliš velkou zátěží. Proto jsem místo desky z akrylátu použil MDF desku.

  1. Odřízněte kus desky MDF o rozměrech (18 cm x 13 cm) a vyvrtejte otvory pro montáž obrazovky.
  2. Umístěte bioloidní rámeček F10 doprostřed desky MDF a označte vrtné otvory a vyvrtejte je.
  3. Umístěte bioloidní rámeček F10 a bioloidní rámeček F2 na každou stranu desky MDF a spojte je dohromady pomocí matice a šroubu.
  4. Nyní přilepte držák fotoaparátu na zadní stranu desky.
  5. Připojte bioloidní rámec F2 na konci konfigurace servo.
  6. Namontujte obrazovku na desku MDF pomocí distančních sloupků.
  7. Připojte webovou kameru k držáku fotoaparátu.

Nyní je naše hlava a tvář robota kompletní.

Krok 4: Vlastní desky plošných spojů

Vlastní PCB
Vlastní PCB
Vlastní PCB
Vlastní PCB
Vlastní PCB
Vlastní PCB

Nyní je čas rozpustit některé fecl3 a vyleptat některé PCB.

Proč jsem vyrobil vlastní PCB?

  • Nemám servo ovladač dynamixel, takže si ho musím vyrobit.
  • K Arduinu musím připojit spoustu senzorů čistším způsobem, proto jsem pro Arduino vyrobil štít.

Pojďme udělat.

  1. Stáhněte si soubory DPS a vytiskněte je na laminát potažený mědí.
  2. Leptejte měděný povlak pomocí fecl3
  3. Vyvrtejte 1 mm otvory pro montáž integrovaných obvodů a lišty.
  4. Aby hlavičky stohování štítů sklouzly po plastových zátkách burgundského pásu směrem ke konci kolíků.
  5. Na PCB pájejte IC báze a burg pásek.
  6. Schémata jsem poskytl pro referenční účely.

Poznámka - Pomocí softwaru Express PCB otevřete.pcb a Express SCH otevřete soubor.sch.

Krok 5: Napájení

Zdroj napájení
Zdroj napájení
Zdroj napájení
Zdroj napájení

Je velmi důležité udržovat konzistentní výkon v různých elektronických modulech a motorech robota. Pokud v kterémkoli modulu klesne výkon pod mezní hodnotu, způsobí to závadu a je velmi těžké určit důvod.

Primárním zdrojem energie v tomto robotu je baterie 2200mAh 3S Lipo. Tato baterie má tři články a výstupní napětí je 11,1 voltů. Deska Udoo potřebuje napájení 12 V a deska Arduino potřebuje napájení 5 V. Rozhodl jsem se tedy použít dva regulátory napětí, jeden je krokový a druhý krokový. Jeden bude udržovat aktuální napájení všech 12v modulů a druhý bude udržovat aktuální napájení všech 5v modulů.

Obrázek obsahuje ručně kreslená schémata.

  • Připájejte regulátory napětí na děrované desky plošných spojů.
  • Pájejte konektor zástrčky T-zástrčky na vstup obou regulátorů napětí.
  • Připojte výstup 'Ground' obou regulátorů.
  • Připojte DC zdířky ke každému výstupu regulátoru. Udržujte dostatečnou délku vodičů, aby dosáhla na desku Udoo/Raspberry Pi a Arduino.
  • Pájecí lištu připájejte na každý výstup regulátoru jako dodatečný výkon pro případ, že bychom to v budoucí úpravě potřebovali.
  • Před připojením napájecího zdroje k jakémukoli elektronickému modulu zkalibrujte výstup každého regulátoru pomocí dodaného trimovacího potenciometru přesně na 12 V a 5 V.

Krok 6: Konečná montáž

Konečné shromáždění
Konečné shromáždění
Konečné shromáždění
Konečné shromáždění
Konečné shromáždění
Konečné shromáždění

Teď je čas. Po tolika krocích je čas sestavit každý modul dohromady. Vzrušený? Dobře jsem.

  • Odřízněte obdélníkový kus desky MDF o rozměru (30 cm x 25 cm). Tato deska je základnou pro montáž elektronických modulů. Nechci do základní akrylové desky vyvrtat mnoho otvorů, proto používám desku MDF. Pomáhá také skrývat dráty pod ním, aby náš robot vypadal úhledně a čistě.
  • Umístěte moduly na desku MDF, označte montážní otvory a vyvrtejte je. Vytvořte několik dalších otvorů, kterými protáhnete dráty pod deskou MDF.
  • Některým otvorům jsem přiřadil čísla, takže je pro mě snadné je odkázat a vy porozumět schématům zapojení.

Zdroj napájení:

  • Namontujte napájecí modul na desku a protáhněte konektor 12 V a 5 V otvorem číslo 1 a vytáhněte konektor 12 V otvorem číslo 2 a vytáhněte konektor 5 V otvorem číslo 3.
  • Nechal jsem baterii prozatím uvolněnou, protože ji někdy musím vyjmout a nabít.

Řidič motoru:

  • Vytáhněte vodiče připojené k motorům otvorem číslo 4 a připojte je k desce ovladače motoru.
  • Motory ke správnému chodu potřebují napájecí zdroj 12 V, proto připojte pin 12 V a GND ovladače k výstupu regulátoru napětí 12 V.
  • Připojte piny ovladače motoru k Arduinu podle kódu.

Arduino:

  • Před montáží Arduina protáhněte vodiče tří ultrazvukových senzorů zadním panelem a protáhněte vodiče zbývajících tří ultrazvukových senzorů předním panelem a vytáhněte je otvorem číslo 3.
  • Namontujte Arduino a připevněte na něj štít senzoru.
  • Čísla jsem dal všem vodičům ultrazvukových senzorů, aby bylo snadné ladění v případě jakékoli chyby. Připojte postupně kolíky senzoru ke štítu od čísla 1 do 6.
  • Připojte 5v napájecí konektor k Arduinu.

Servomotor Dynamixel:

  • Namontujte na desku servo ovladač dynamixel.
  • Připojte pin 12 V a GND servoovládače k výstupu regulátoru napětí 12 V.
  • Připojte pin 5v a GND servoovládače k výstupu regulátoru napětí 5v.
  • Podle kódu propojte piny servo ovladače a Arduina.
  • Ponechejte výstupní kolík serva prozatím odpojený. Připojte jej po namontování horního panelu robota.

Udoo / Raspberry Pi:

Poznámka: Před provedením níže uvedených kroků se ujistěte, že jste již nainstalovali OS na kartu MicroSD a umístili ji na desku Udoo / Raspberry Pi. Pokud ne, postupujte podle odkazů pro instalaci Raspbian na Raspberry Pi nebo Udoobuntu na desku Udoo.

  • Namontujte Udoo / Raspberry Pi na desku a připojte k ní napájecí konektor.
  • Pokud používáte Udoo, připojte rozbočovač USB k jednomu z jeho konektorů USB.
  • Připojte k němu kabel HDMI a kabel micro USB. Tyto kolíky slouží k napájení dat a napájení obrazovky.
  • Připojte Arduino k Udoo / Raspberry Pi pomocí kabelu USB A to B.

Horní panel:

  • Připevněte horní panel k bočním, předním a zadním panelům robota pomocí svorek L.
  • Připojte kabel HDMI, kabel micro USB k obrazovce a webovou kameru k desce Udoo / Raspberry Pi.
  • Propojte třípólový servo konektor přicházející ze základny servo dynamixel se servopohonem. Ujistěte se, který pin je DATA, GND a +12v. Pro lepší orientaci viz obrázky v části „Hlava a tvář robota“. Připojíte -li vodiče v opačném pořadí, může dojít k poškození serv.

Ultrazvukové snímače vzdálenosti:

Poslední díl skládačky. Poté je naše montáž téměř u konce.

  • Odřízněte šest obdélníkových kusů desky MDF/akrylového listu o rozměru (6 cm x 5 cm).
  • Vyvrtejte do nich otvory na požadovaných místech.
  • Připojte ultrazvukové senzory ke každé desce a připevněte všechny desky k základnímu panelu robota.
  • Připojte senzory pomocí konektorů.

Nakonec je hotovo. Připojte baterii a spusťte Udoo/Raspberry Pi

Krok 7: Software

Hardware je kompletní, ale bez softwaru je tento robot pouhou krabicí. Seznam softwaru, který potřebujeme, je

  • TightVNC
  • Krajta
  • OpenCV
  • Snowboy
  • Některé balíčky pythonu

    • Pyautogui
    • otupělý
    • pyserial
    • pyaudio

TightVNC:

TightVNC je bezplatný softwarový balíček pro dálkové ovládání. S TightVNC můžete vidět na plochu vzdáleného počítače a ovládat ji místní myší a klávesnicí, stejně jako byste to dělali sedící před počítačem.

Pokud máte další klávesnici a myš, je to dobré. Pokud ne, nainstalujte TightVNC do svého notebooku a postupujte podle těchto kroků.

K Udoo / Raspberry Pi poprvé připojíte klávesnici a myš. Připojte se k síti Wi -Fi. Otevřete Terminál a napište

$ ifconfig

  • Poznamenejte si IP adresu robota.
  • Otevřete TightVNC na svém notebooku. Do požadovaného pole zadejte IP adresu a stiskněte Enter. Voila! Nyní jste připojeni. K robotu se dostanete pomocí touchpadu a klávesnice vašeho notebooku.

Krajta:

Python je velmi populární a univerzální jazyk, a proto jej používám jako primární programovací jazyk pro tohoto robota.

Zde používám python 2.7, ale pokud chcete, můžete také použít python 3. Naštěstí je Python předinstalován v operačním systému Udoobuntu i Raspbian. Nemusíme jej tedy instalovat.

OpenCV:

OpenCV je open-source knihovna zaměřená hlavně na počítačové vidění v reálném čase. OpenCV s Pythonem se velmi snadno používá. Instalace OpenCV je trochu těžkopádná, ale existuje spousta velmi snadno použitelných průvodců. Můj osobní favorit je tento. Tato příručka je pro Raspberry Pi, ale můžete ji použít i pro desku Udoo.

Snowboy:

Snowboy je knihovna napsaná kluky Kitt.ai, zaměřená hlavně na offline zpracování řeči/detekci klíčových slov. Použití je velmi snadné. Pomocí tohoto odkazu nainstalujete snowboy na Raspberry Pi. Pokud používáte desku Udoo, přejděte k tomuto projektu, který napsal meto install snowboy v Udoo.

Balíčky Pythonu:

Při instalaci některých balíků pythonu postupujte podle těchto snadno použitelných průvodců.

  1. Pyautogui - Pyautogui je balíček pro simulaci úhozů klávesnice nebo myši.
  2. Numpy - do shellu Linux zadejte „pip install numpy“a stiskněte Enter. Je to tak jednoduché.
  3. Pyserial - Pyserial je balíček zaměřený na sériovou komunikaci přes python. Použijeme ho ke komunikaci s Arduinem.

Krok 8: Kódy

Hardwarová část je kompletní. Softwarová část je kompletní. Nyní je čas dát duši tomuto robotovi.

Pojďme kódovat.

Kód pro tento robot je poněkud komplikovaný a aktuálně k němu přidávám další funkce. Proto jsem hostil kódy ve svém úložišti Github. Můžete si to prohlédnout a odtud klonovat/stahovat kódy.

Nyní to není jen robot; teď je to Tinku.

Krok 9: Demo

Image
Image

Demo. jééé !!

Toto jsou některá ze základních ukázek. Čeká je mnohem více zajímavých.

Zůstaňte naladěni na další aktualizace a pokud máte nějaké pochybnosti, neváhejte je komentovat.

Děkuji za přečtení mého projektu. Jsi úžasný.

Pokud se vám tento projekt líbí, hlasujte v soutěži o mikroprocesor a robotiku

Šťastné tvoření;-)

Doporučuje: