Obsah:

Tinku: osobný robot: 9 krokov (s obrázkami)
Tinku: osobný robot: 9 krokov (s obrázkami)

Video: Tinku: osobný robot: 9 krokov (s obrázkami)

Video: Tinku: osobný robot: 9 krokov (s obrázkami)
Video: Установка маяков под штукатурку. Углы 90 градусов. #12 2024, Septembra
Anonim
Tinku: osobný robot
Tinku: osobný robot

Od sw4p Nasledovať viac od autora:

Nehmotný povrch
Nehmotný povrch
Nehmotný povrch
Nehmotný povrch
Odstrániteľný návod
Odstrániteľný návod
Odstrániteľný návod
Odstrániteľný návod
Kartónový klavír
Kartónový klavír
Kartónový klavír
Kartónový klavír

Ahoj, Tinku nie je len robot; je to osobný robot. Je to všetko v jednom balení. Môže vidieť (počítačové videnie), počúvať (spracovanie reči), hovoriť a reagovať na situáciu. Môže vyjadrovať emócie a zoznam vecí, ktoré môže robiť, pokračuje. Pomenoval som ho; Hovorím tomu Tinku.

Stručný úvod toho, čo môže urobiť, je

  1. Počítačové videnie

    • Detekcia tváre
    • Sledovanie tváre
    • Fotografujte a nahrávajte video
    • Rozpoznajte značky ArUco
  2. Spracovanie reči

    • Offline spracovanie reči (detekcia kľúčových slov)
    • Rozumie tomu, čo hovoríte, rozpoznaním kľúčových slov.
  3. Vyjadrite emócie

    • Pohybuje sa hlavou k neverbálnej komunikácii a k vyjadreniu pocitov.
    • Na svojej obrazovke zobrazuje obrázky a gify na podporu súčasného sentimentu.
  4. Pohybovať

    Môže behať po kolesách a označovať miesta pomocou značiek ArUco

  5. Vyhýbanie sa prekážkam

    Má sonarové senzory, takže si je vždy vedomý svojho okolia a dokáže sa vyhnúť prekážkam

Dokáže oveľa viac vecí. Môžete tiež implementovať, aké nové funkcie chcete.

Dosť bolo rečí.

EDIT: Body Tinku začalo praskať, takže som ho musel úplne prepracovať. Tu sú nové obrázky, úplne čerstvé a lepšie Tinku. Ospravedlňujeme sa, nemám k dispozícii obrázky krokov pri redizajne Tinku.

Krok 1: Veci, ktoré budete potrebovať

Veci, ktoré budete potrebovať
Veci, ktoré budete potrebovať
Veci, ktoré budete potrebovať
Veci, ktoré budete potrebovať
Veci, ktoré budete potrebovať
Veci, ktoré budete potrebovať
Veci, ktoré budete potrebovať
Veci, ktoré budete potrebovať

Telo robota

  1. Akrylový list
  2. MDF doska
  3. Malé svorky L.
  4. Balenie matice a skrutky

Servá, motory a kolesá

  1. Dynamixel AX-12A (3 kusy)
  2. Bioloidná sada skrutiek a matíc
  3. Motory (2 kusy)
  4. Skladby (2 balenia)
  5. Kolieska (4 kusy)
  6. Svorky L pre motory (2 kusy)
  7. Svorka L na hriadeľ atrapy kolesa (2 kusy)
  8. Falošný hriadeľ kolesa (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 alebo Udoo Quad
  3. Vodič motora
  4. Webová kamera Logitech-c270 (má vstavaný mikrofón)
  5. Ultrazvukové snímače vzdialenosti (6 kusov)
  6. Lipo batéria (3300 Mah 3S)
  7. Zvýšte regulátor napätia (DC-DC)
  8. Krokový regulátor napätia (DC-DC)
  9. Dotyková obrazovka (7 palcov)
  10. Rozbočovač USB (iba ak používate Udoo Quad, pretože má iba 2 porty USB)
  11. 7404 hex invertor IC
  12. 74HC244 IC
  13. 14 -pinová IC základňa
  14. 20 pinová IC základňa

Konektory a káble

  1. Mužský konektor batérie T-plug
  2. Flexibilný kábel HDMI (iba ak má obrazovka konektor HDMI)
  3. Micro USB kábel
  4. Tri kolíky relimačný kábel žena-žena (6 kusov)
  5. Sieťová zástrčka DC sudového konektora (2 kusy)
  6. Servo konektory Dynamixel (3 kusy)
  7. Kábel USB A na B (iba ak nebol dodaný s Arduino)
  8. Prepojovacie vodiče
  9. Drôty na chlieb
  10. Burg pásy

Na výrobu DPS

  1. Laminát potiahnutý meďou
  2. Leptač PCB (Fecl3)
  3. Dierovaný PCB
  4. 1 mm vrták

Zmiešaný

  1. Lepidlo
  2. Chladiace trubice
  3. Medzery

Poznámka: Tu používam dosku Udoo, pretože má lepšiu výpočtovú rýchlosť ako moja malina pi 2. Používam skôr externé Arduino než vstavané Arduino dosky Udoo, pretože všetky moje senzory a moduly sú kompatibilné s napätím 5 V a Arduino v Doska Udoo je kompatibilná s napätím 3 V.

Krok 2: Telo robota

Telo robota
Telo robota
Telo robota
Telo robota
Telo robota
Telo robota
Telo robota
Telo robota

Na prípravu tela robota som použil akrylový plech a narezal som ho na uvedenú veľkosť, aby som vytvoril krabicovú štruktúru. Na obrázku som spomenul rozmer každej strany tela.

  1. Akrylový list odstrihnite podľa zadanej veľkosti.
  2. Na konkrétnych miestach vyvŕtajte otvory na pripevnenie motorov, senzorov, stojok a spojenie každej dosky.
  3. Do základnej dosky a hornej dosky vyvŕtajte väčší otvor na vedenie káblov.
  4. Na spodnej strane predného a zadného panela urobte malý zárez, aby cez ne mohli prechádzať káble prichádzajúce z ultrazvukového senzora.

Je čas pripraviť a namontovať motory a pásy.

  1. Spájajte ďalšie vodiče s kolíkmi motora, aby sa kábel dostal k vodičom motora.
  2. Namontujte svorky motora a svorky hriadeľa figuríny na základnú dosku robota.
  3. Pripojte motory a hriadeľ atrapy kolesa k svorkám a potom pripojte kolesá.
  4. Zostavte stopy a vytvorte slučku.
  5. Pásová dráha na kolesách. Majte na pamäti, že trať nepoľavuje a je na nej dostatočné napätie.

Teraz spojte predný, zadný a jeden bočný panel na základnom paneli pomocou malých svoriek L. Nemontujte horný panel a jeden bočný panel tak, aby nám zostal dostatok miesta na montáž elektroniky na robota.

Krok 3: Hlava a tvár robota

Image
Image
Hlava a tvár robota
Hlava a tvár robota
Hlava a tvár robota
Hlava a tvár robota
Hlava a tvár robota
Hlava a tvár robota

Robotu sme už dali telo a kolesá. Teraz je načase dať tomu hlavu, krk a tvár.

Krk:

Najkomplikovanejšia časť v hlave robota je krk. Najprv si ho teda pripravíme. So servami Dynamixel je trochu mätúce, ale sú spoľahlivé a odolné. K dispozícii je k nemu veľa montážnych svoriek, takže ich môžete ľubovoľne spájať.

V tomto videu nájdete lepšie vysvetlenie toho, ako spojiť servá dynamixel dohromady.

  1. Vložte matice do serva dynamixel a namontujte ich pomocou rámov.
  2. Umiestnite bioloidný rám F8 do stredu horného panelu a označte vŕtané otvory a vyvŕtajte ich.
  3. Pripojte bioloidný rám F8 k jednému zo servov a potom namontujte bioloidný rám F8 na horný panel.
  4. Spojte každé servo dohromady pomocou rôznych rámov a pripravte krk.
  5. Pripojte k sebe servá pomocou trojpólových servo konektorov dynamixel.

Oko a ucho:

Ako oko pre môjho robota používam webovú kameru Logitech webcam-c270. Je to dobrý fotoaparát, ktorý dokáže fotografovať a nahrávať videá v rozlíšení 720 p. Má tiež vstavaný mikrofón, takže sa stane ucho aj pre môjho robota. Po dlhom brainstormingu som zistil, že najlepšie miesto na pripevnenie fotoaparátu je v hornej časti obrazovky. Na montáž fotoaparátu však potrebujem držiak na fotoaparát. Tak si jednu vyrobme.

  1. Odstráňte kovové časti z webovej kamery, ktoré sú súčasťou dodávky, aby získali určitú váhu.
  2. Vystrihnite dva kusy z dosky MDF, jeden štvorcový a jeden trojuholníkový s rozmermi zobrazenými na obrázku.
  3. Vyvŕtajte otvor do spodnej časti webovej kamery a do štvorcového kusu MDF. Na štvorcovom diele urobte zárez, do ktorého vložíte drôt webovej kamery.
  4. Prilepte kusy MDF k sebe tak, aby vytvorili tvar T. Držiak fotoaparátu je pripravený.
  5. Pred pripevnením držiaka fotoaparátu a fotoaparátu k sebe najskôr pripravte hlavu.

Vedúci:

Hlava robota je spojená so servom. Musí byť čo najľahší, aby hlava na servá nevyvíjala veľké zaťaženie. Preto som namiesto akrylového plechu použil MDF dosku.

  1. Odrežte kus dosky MDF s rozmerom (18 cm x 13 cm) a vyvŕtajte otvory na pripevnenie obrazovky.
  2. Umiestnite bioloidný rám F10 do stredu dosky MDF a označte vŕtané otvory a vyvŕtajte ich.
  3. Nastavte bioloidný rám F10 a bioloidný rám F2 na každú stranu dosky MDF a spojte ich dohromady pomocou matice a skrutky.
  4. Teraz prilepte držiak fotoaparátu na zadnú stranu dosky.
  5. Pripojte bioloidný rámec F2 na konci konfigurácie serva.
  6. Namontujte obrazovku na dosku MDF pomocou podperiek.
  7. Pripojte webovú kameru k držiaku fotoaparátu.

Teraz sú naša hlava a tvár robota kompletné.

Krok 4: Vlastné dosky plošných spojov

Vlastné DPS
Vlastné DPS
Vlastné DPS
Vlastné DPS
Vlastné DPS
Vlastné DPS

Teraz je načase rozpustiť niektoré fecl3 a vyleptať niektoré PCB.

Prečo som vyrobil PCB na mieru?

  • Nemám servo regulátor dynamixel, takže ho musím vyrobiť.
  • K Arduinu musím čistejším spôsobom pripojiť množstvo senzorov, a tak som pre Arduino vyrobil štít.

Urobme.

  1. Stiahnite si súbory PCB a vytlačte ich na laminát potiahnutý meďou.
  2. Leptajte laminát potiahnutý meďou pomocou fecl3
  3. Vyvŕtajte 1 mm otvory na upevnenie integrovaných obvodov a lišty Burg.
  4. Aby hlavičky stohovania štítov skĺzli po plastových zátkach burgundského pásu smerom ku koncom čapov.
  5. Spájkujte IC základne a burgundový pás na PCB.
  6. Schémy som poskytol na referenčné účely.

Poznámka - Na otvorenie súboru.pcb použite softvér Express PCB a na otvorenie súboru.sch softvér Express SCH.

Krok 5: Napájanie

Zdroj
Zdroj
Zdroj
Zdroj

Je veľmi dôležité udržiavať konzistentný výkon v rôznych elektronických moduloch a motoroch robota. Ak výkon v akomkoľvek module klesne pod limitnú hodnotu, spôsobí to poruchu a je veľmi ťažké určiť dôvod.

Primárnym zdrojom energie v tomto robote je batéria 2200 mAh 3S Lipo. Táto batéria má tri články a výstupný napätie je 11,1 voltov. Doska Udoo potrebuje napájanie 12 V a doska Arduino 5 V. Rozhodol som sa teda použiť dva regulátory napätia, jeden je zosilnený a druhý zostupný. Jeden bude udržiavať súčasné napájanie všetkých 12v modulov a druhý zachová súčasné napájanie všetkých 5v modulov.

Obrázok obsahuje ručne kreslené schémy.

  • Spájkujte regulátory napätia na dierovaných doskách plošných spojov.
  • Spájkujte konektor zástrčky T-konektora batérie na vstup oboch regulátorov napätia.
  • Pripojte výstup „uzemnenia“oboch regulátorov.
  • Pripojte sudové konektory DC ku každému výstupu regulátora. Ponechajte dĺžku vodičov dostatočnú na to, aby sa dostala na dosku Udoo/Raspberry Pi a Arduino.
  • Pájecí burgundový prúžok spájkujte s každým z výstupov regulátora ako dodatočný výkon pre prípad, že by sme to v budúcej úprave potrebovali.
  • Pred pripojením napájania k akémukoľvek z elektronických modulov kalibrujte výstup každého regulátora pomocou upraveného potenciometra, ktorý je k dispozícii presne na 12 V a 5 V.

Krok 6: Konečná montáž

Konečné zhromaždenie
Konečné zhromaždenie
Konečné zhromaždenie
Konečné zhromaždenie
Konečné zhromaždenie
Konečné zhromaždenie

Teraz je čas. Po toľkých krokoch je čas zostaviť každý modul dohromady. Nadšení? Dobre, Ja som.

  • Odrežte obdĺžnikový kus dosky MDF s rozmerom (30 cm x 25 cm). Táto doska je základňou pre montáž elektronických modulov. Nechcem vŕtať veľa otvorov do základnej akrylovej dosky, preto používam dosku MDF. Pomáha tiež skryť drôty pod ním, aby náš robot vyzeral úhľadne a čisto.
  • Položte moduly na dosku MDF, označte montážne otvory a vyvŕtajte ich. Vytvorte niekoľko ďalších otvorov na vedenie drôtov pod doskou MDF.
  • Niektorým dieram som priradil čísla, takže je pre mňa ľahké ich odporučiť a porozumieť schémam zapojenia.

Zdroj:

  • Namontujte modul napájania na dosku a prevlečte konektor 12 V a 5 V cez otvor číslo 1 a vytiahnite konektor 12 V cez otvor číslo 2 a vytiahnite konektor 5 V cez otvor číslo 3.
  • Batériu som zatiaľ nechal uvoľnenú, pretože ju niekedy musím vybrať a nabiť.

Vodič motora:

  • Vytiahnite káble pripojené k motorom cez otvor číslo 4 a pripojte ich k doske vodiča motora.
  • Motory potrebujú na správnu funkciu 12 V napájací zdroj, preto zapojte 12 V a GND kolík vodiča s výstupom 12 V regulátora napätia.
  • Pripojte kolíky ovládača motora k Arduinu podľa kódu.

Arduino:

  • Pred montážou Arduina prevlečte vodiče troch ultrazvukových senzorov zadným panelom a prevlečte vodiče zvyšných troch ultrazvukových senzorov predným panelom a vytiahnite ich otvorom číslo 3.
  • Namontujte Arduino a pripevnite naň štít snímača.
  • Dal som čísla všetkým drôtom ultrazvukového senzora, aby bolo ľahké ladenie v prípade akejkoľvek chyby. Pripojte kolíky senzorov k štítu postupne od čísla 1 do 6.
  • Pripojte 5v napájací konektor k Arduinu.

Servopohon Dynamixel:

  • Namontujte servo regulátor dynamixel na dosku.
  • Pripojte pin 12 V a GND servopohonu k výstupu regulátora napätia 12 V.
  • Pripojte kolík 5v a GND servopohonu k výstupu regulátora napätia 5V.
  • Podľa kódu spojte kolíky servopohonu a Arduina.
  • Nechajte výstupný kolík serva zatiaľ odpojený. Pripojte ho po namontovaní horného panelu robota.

Udoo / Raspberry Pi:

Poznámka: Pred vykonaním nasledujúcich krokov sa uistite, že ste už nainštalovali operačný systém na kartu MicroSD a vložili ho na dosku Udoo / Raspberry Pi. Ak nie, postupujte podľa odkazov na inštaláciu Raspbian na Raspberry Pi alebo Udoobuntu na dosku Udoo.

  • Namontujte Udoo / Raspberry Pi na dosku a pripojte k nej napájací konektor.
  • Ak používate Udoo, pripojte rozbočovač USB k jednému z jeho konektorov USB.
  • Pripojte k nemu kábel HDMI a kábel micro USB. Tieto kolíky slúžia na dodávku údajov a napájania obrazovky.
  • Pripojte Arduino k Udoo / Raspberry Pi pomocou USB kábla A až B.

Horný panel:

  • Horný panel pripevnite k bočným, predným a zadným panelom robota pomocou svoriek L.
  • Pripojte kábel HDMI, kábel micro USB k obrazovke a webovú kameru k doske Udoo / Raspberry Pi.
  • Pripojte trojpólový servo konektor pochádzajúci zo základne servo dynamixel k servopohonu. Uistite sa, že pin je DATA, GND a +12 V. Lepšiu referenciu nájdete na obrázkoch v časti „Hlava a tvár robota“. Ak zapojíte vodiče v opačnom poradí, môže dôjsť k poškodeniu servopohonov.

Ultrazvukové snímače vzdialenosti:

Posledný kúsok skladačky. Potom sa naša montáž takmer skončila.

  • Odrežte šesť obdĺžnikových dielov z MDF dosky/akrylového plechu s rozmerom (6 cm x 5 cm).
  • Vyvŕtajte do nich otvory na požadovaných miestach.
  • Na každú dosku pripevnite ultrazvukové snímače a všetky dosky pripevnite k základnému panelu robota.
  • Pripojte senzory pomocou konektorov.

Nakoniec je hotovo. Pripojte batériu a spustite Udoo/Raspberry Pi

Krok 7: Softvér

Hardvér je kompletný, ale bez softvéru je tento robot iba škatuľou. Zoznam softvéru, ktorý potrebujeme, je

  • TightVNC
  • Python
  • OpenCV
  • Snowboy
  • Niektoré balíky pythonu

    • Pyautogui
    • otupený
    • pyserial
    • pyaudio

TightVNC:

TightVNC je bezplatný softvérový balík pre diaľkové ovládanie. S TightVNC môžete vidieť na plochu vzdialeného počítača a ovládať ho pomocou miestnej myši a klávesnice, rovnako ako by ste to robili, keby ste sedeli pred týmto počítačom.

Ak máte dodatočnú klávesnicu a myš, je to dobré. Ak nie, nainštalujte si do svojho počítača TightVNC a postupujte podľa týchto krokov.

K Udoo / Raspberry Pi prvýkrát pripojte klávesnicu a myš. Pripojte sa k sieti Wi -Fi. Otvorte terminál a napíšte

$ ifconfig

  • Poznačte si IP adresu robota.
  • Otvorte TightVNC na prenosnom počítači. Zadajte IP adresu do požadovaného poľa a stlačte Enter. Voila! Teraz ste pripojení. K robotovi sa dostanete pomocou touchpadu a klávesnice vášho notebooku.

Python:

Python je veľmi populárny a univerzálny jazyk, a preto ho používam ako primárny programovací jazyk pre tohto robota.

Tu používam python 2.7, ale ak chcete, môžete použiť aj python 3. Našťastie je Python predinštalovaný v OS Udoobuntu aj Raspbian. Preto ho nemusíme inštalovať.

OpenCV:

OpenCV je open-source knižnica zameraná predovšetkým na počítačové videnie v reálnom čase. OpenCV s Pythonom sa veľmi ľahko používa. Inštalácia OpenCV je trochu ťažkopádna, ale existuje veľa veľmi ľahko použiteľných sprievodcov. Môj osobný favorit je tento. Táto príručka je pre Raspberry Pi, ale môžete ju použiť aj pre dosku Udoo.

Snowboy:

Snowboy je knižnica napísaná chlapcami z Kitt.ai, zameraná predovšetkým na offline spracovanie reči/detekciu kľúčových slov. Použitie je veľmi jednoduché. Nasledujte tento odkaz a nainštalujte snowboy na Raspberry Pi. Ak používate dosku Udoo, choďte na tento projekt, ktorý napísal meto install snowboy v Udoo.

Balíky Pythonu:

Pri inštalácii niektorých balíkov pythonu postupujte podľa týchto ľahko použiteľných sprievodcov.

  1. Pyautogui - Pyautogui je balík na simuláciu stlačení klávesov alebo pohybov myši.
  2. Numpy - do shellu Linux zadajte „pip install numpy“a stlačte kláves Enter. Je to také jednoduché.
  3. Pyserial - Pyserial je balík zameraný na sériovú komunikáciu prostredníctvom pythonu. Budeme ho používať na komunikáciu s Arduino.

Krok 8: Kódy

Hardvérová časť je kompletná. Softvérová časť je kompletná. Teraz je načase dať dušu tomuto robotovi.

Poďme kódovať.

Kód pre tohto robota je trochu komplikovaný a v súčasnosti k nemu pridávam ďalšie funkcie. Preto som hostil kódy v mojom úložisku Github. Môžete si to skontrolovať a odtiaľ klonovať/sťahovať kódy.

Teraz to nie je len robot; teraz je Tinku.

Krok 9: Demo

Image
Image

Demo. jééé !!

Toto sú niektoré zo základných ukážok. Prídu ešte oveľa zaujímavejšie.

Zostaňte naladení na ďalšie aktualizácie a ak máte akékoľvek pochybnosti, neváhajte komentovať.

Ďakujem, že ste si prečítali môj projekt. Si úžasný.

Ak sa vám tento projekt páči, hlasujte v súťaži o mikrokontroléry a robotiku

Veselé tvorenie;-)

Odporúča: