Sisällysluettelo:

Tinku: henkilökohtainen robotti: 9 vaihetta (kuvilla)
Tinku: henkilökohtainen robotti: 9 vaihetta (kuvilla)

Video: Tinku: henkilökohtainen robotti: 9 vaihetta (kuvilla)

Video: Tinku: henkilökohtainen robotti: 9 vaihetta (kuvilla)
Video: 🔺 Kostya Tszyu VS Zab Judah Full Fight #720p 🔻 2024, Heinäkuu
Anonim
Tinku: henkilökohtainen robotti
Tinku: henkilökohtainen robotti

Seuraa lisää tekijältä:

Aineettomat pinnat
Aineettomat pinnat
Aineettomat pinnat
Aineettomat pinnat
Poistettu Instructable
Poistettu Instructable
Poistettu Instructable
Poistettu Instructable
Pahvi Piano
Pahvi Piano
Pahvi Piano
Pahvi Piano

Hei siellä, Tinku ei ole vain robotti; se on henkilökohtainen robotti. Se on kaikki yhdessä paketissa. Se voi nähdä (tietokonevisio), kuunnella (puheen käsittely), puhua ja reagoida tilanteeseen. Se voi ilmaista tunteita, ja luettelo asioista, joita se voi tehdä, jatkuu. Annoin sille nimen; Kutsun sitä Tinkuksi.

Lyhyt esittely siitä, mitä se voi tehdä

  1. Konenäkö

    • Kasvojentunnistus
    • Kasvojen seuranta
    • Ota valokuvia ja tallenna video
    • Tunnista ArUco -merkit
  2. Puheen käsittely

    • Offline -puheen käsittely (Hotword -tunnistus)
    • Se voi ymmärtää sanomasi havaitsemalla Hotwords.
  3. Ilmaise tunteita
    • Se liikuttaa päätään ei-sanalliseen viestintään ja tunteiden ilmaisemiseen.
    • Se näyttää kuvia ja-g.webp" />
  4. Liikkua

    Se voi juosta ympäri pyöriensä avulla ja tunnistaa paikat ArUco -merkkien avulla

  5. Esteiden välttäminen

    Siinä on kaikuluotaintunnistimet, joten se on aina tietoinen ympäristöstään ja voi välttää esteitä

Se voi tehdä paljon enemmän asioita. Voit myös toteuttaa mitä uusia toimintoja haluat.

Puhetta riittää.

EDIT: Tinkun runko alkoi halkeilla, joten minun piti suunnitella hänet kokonaan uudelleen. Tässä uudet kuvat, täysin tuore ja parempi Tinku. Olen pahoillani, minulla ei ole kuvia Tinkun uudelleensuunnittelun vaiheista.

Vaihe 1: Tarvitsemasi asiat

Asioita, joita tarvitset
Asioita, joita tarvitset
Asioita, joita tarvitset
Asioita, joita tarvitset
Asioita, joita tarvitset
Asioita, joita tarvitset
Asioita, joita tarvitset
Asioita, joita tarvitset

Robotin runko

  1. Akryylilevy
  2. MDF -levy
  3. Pienet L -kiinnikkeet
  4. Pakkaus mutteria ja ruuvia

Servot, moottorit ja pyörät

  1. Dynamixel AX-12A (3 kpl)
  2. Bioloidinen pultti- ja mutterisarja
  3. Moottorit (2 kpl)
  4. Kappaleet (2 pakkausta)
  5. Telaketjut (4 kpl)
  6. L -puristimet moottoreille (2 kpl)
  7. L -puristin pyörän akselille (2 kpl)
  8. Nuken pyörän akseli (2 kpl)
  9. Bioloidikehys F8
  10. Bioloid Frame F3 (2 kpl)
  11. Bioloidikehys F2
  12. Bioloidikehys F10

Elektroniikka

  1. Arduino
  2. Raspberry Pi tai Udoo Quad
  3. Moottorin kuljettaja
  4. Logitech webcam-c270 (siinä on sisäänrakennettu mikrofoni)
  5. Ultraääni -etäisyysanturit (6 kpl)
  6. Lipo -akku (3300 Mah 3S)
  7. Jännitteen säädin (DC-DC)
  8. Jännitteen säädin (DC-DC)
  9. Kosketusnäyttö (7 tuumaa)
  10. USB -keskitin (vain jos käytät Udoo Quadia, koska siinä on vain 2 USB -porttia)
  11. 7404 hex -invertteri IC
  12. 74HC244 IC
  13. 14 -nastainen IC -pohja
  14. 20 -nastainen IC -pohja

Liittimet ja kaapelit

  1. T-pistoke uros akun liitin
  2. Joustava HDMI -kaapeli (vain jos näytössäsi on HDMI -liitin)
  3. Micro -USB -kaapeli
  4. Kolmen nastan naaras-naaras-uudistuskaapeli (6 kpl)
  5. DC -piippuliitin urosvirtapistoke (2 kpl)
  6. Dynamixel -servoliittimet (3 kpl)
  7. USB A - B -kaapeli (vain jos se ei tullut Arduinon mukana)
  8. Hyppyjohdot
  9. Leipälevyn johdot
  10. Burg -nauhat

Piirilevyjen valmistukseen

  1. Kuparilla päällystetty laminaatti
  2. PCB -etsuri (Fecl3)
  3. Rei'itetty PCB
  4. 1 mm poranterä

Sekalaisia

  1. Liima
  2. Jäähdytyselementtiputket
  3. Seisokit

Huomautus: Tässä käytän Udoo -korttia, koska sillä on parempi laskenopeus kuin vadelmallani 2. Käytän ulkoista Arduinoa Udoo -kortin sisäänrakennetun Arduinon sijasta, koska kaikki anturit ja moduulit ovat 5v -yhteensopivia, ja Arduino on Udoo -levy on 3v -yhteensopiva.

Vaihe 2: Robotin runko

Robotin runko
Robotin runko
Robotin runko
Robotin runko
Robotin runko
Robotin runko
Robotin runko
Robotin runko

Robotin rungon valmistamiseksi käytin akryylilevyä ja leikkasin sen tietyn kokoiseksi laatikon kaltaisen rakenteen tekemiseksi. Mainitsin kuvassa kehon molempien puolien mitat.

  1. Leikkaa akryylilevy määritetyn koon mukaan.
  2. Poraa reiät tiettyihin paikkoihin moottorien, antureiden, seisokkien asentamiseksi ja kunkin levyn liittämiseksi yhteen.
  3. Poraa isompi reikä pohjalevyyn ja ylälevyyn kaapeleiden kuljettamiseksi.
  4. Tee etu- ja takapaneelin alapuolelle pieni lovi, jotta ultraäänianturista tulevat johdot pääsevät läpi.

On aika valmistella ja asentaa moottorit ja telat.

  1. Juotos ylimääräiset johdot moottorin nastoihin, jotta lanka pääsee moottorin ohjaimiin.
  2. Kiinnitä moottorin kiinnikkeet ja nuken pyörän akselin kiinnikkeet robotin pohjalevyyn.
  3. Liitä moottorit ja nuken pyörän akseli puristimiin ja sitten pyörät.
  4. Kokoa raidat ja tee silmukka.
  5. Hihnarata pyörissä. Muista, että raita ei löysty ja siinä on tarpeeksi jännitystä.

Liitä nyt etu-, taka- ja yksi sivupaneeli pohjapaneeliin pienillä L -puristimilla. Älä asenna ylä- ja toista sivupaneelia niin, että meillä on riittävästi tilaa elektroniikan asentamiseen robottiin.

Vaihe 3: Robotin pää ja kasvot

Image
Image
Robotin pää ja kasvot
Robotin pää ja kasvot
Robotin pää ja kasvot
Robotin pää ja kasvot
Robotin pää ja kasvot
Robotin pää ja kasvot

Olemme jo antaneet robotille korin ja pyörät. Nyt on aika antaa sille pää, niska ja kasvot.

Kaula:

Monimutkaisin osa robotin päässä on niska. Joten valmistamme sen ensin. Dynamixel -servot ovat hieman hämmentäviä työskennellä, mutta ne ovat luotettavia ja kestäviä. Sille on saatavana tonnia kiinnityspuristimia, joten voit yhdistää ne millään tavalla.

Katso tämä video saadaksesi paremman selityksen siitä, miten dynamixel -servot liitetään yhteen.

  1. Aseta mutterit dynamixel -servoihin kiinnittääksesi ne kehyksillä.
  2. Aseta bioloidikehys F8 yläpaneelin keskelle ja merkitse porausreiät ja poraa ne.
  3. Kiinnitä bioloidikehys F8 johonkin servosta ja asenna bioloidikehys F8 yläpaneeliin.
  4. Liitä jokainen servo yhteen eri kehyksillä ja valmistele niska.
  5. Liitä servot toisiinsa käyttämällä dynamixel-kolminapaisia servoliittimiä.

Silmät ja korvat:

Käytän Logitech webcam-c270: tä robotin silmänä. Se on hyvä kamera, joka voi ottaa valokuvia ja tallentaa videoita 720p. Siinä on myös sisäänrakennettu mikrofoni, joten siitä tulee korva myös robotilleni. Pitkän aivoriihen jälkeen huomasin, että paras paikka kameran kiinnittämiseen on näytön yläreuna. Mutta kameran asentamiseen tarvitsen kameratelineen. Joten tehdään yksi.

  1. Irrota mukana toimitetut web -kameran metalliosat, jotta se painaa hieman.
  2. Leikkaa MDF -levystä kaksi kappaletta, yksi neliö ja yksi kolmio, joiden mitat näkyvät kuvassa.
  3. Poraa reikä verkkokameran pohjaan ja neliömäiseen MDF -kappaleeseen. Tee lovi neliön muotoiseen kappaleeseen ja työnnä verkkokameran johto siihen.
  4. Liimaa MDF-kappaleet yhteen muodostaaksesi T-muodon. Kameran kiinnike on valmis.
  5. Ennen kuin kiinnität kameratelineen ja kameran yhteen, valmistele ensin pää.

Pää:

Robotin pää on kytketty servoihin. Sen on oltava mahdollisimman kevyt, jotta pää ei kuormita paljon servoja. Siksi käytin MDF -levyä akryylilevyn sijasta.

  1. Leikkaa pala mitoitettua MDF -levyä (18 cm x 13 cm) ja poraa reiät näytön kiinnittämiseksi.
  2. Aseta bioloidikehys F10 MDF -levyn keskelle ja merkitse porausreiät ja poraa ne.
  3. Aseta bioloidikehys F10 ja bioloidikehys F2 MDF -levyn kummallekin puolelle ja liitä ne yhteen mutterilla ja ruuvilla.
  4. Liimaa nyt kameran kiinnike levyn takapuolelle.
  5. Liitä bioloidikehys F2 servokokoonpanon loppuun.
  6. Kiinnitä näyttö MDF -levylle käyttämällä pysäytyksiä.
  7. Kiinnitä verkkokamera kameratelineeseen.

Nyt robotin pää ja kasvot ovat valmiit.

Vaihe 4: Mukautetut piirilevyt

Mukautetut piirilevyt
Mukautetut piirilevyt
Mukautetut piirilevyt
Mukautetut piirilevyt
Mukautetut piirilevyt
Mukautetut piirilevyt

Nyt on aika liuottaa fecl3 ja syövyttää joitakin PCB -yhdisteitä.

Miksi tein mukautettuja piirilevyjä?

  • Minulla ei ole dynamixel -servo -ohjainta, joten minun on tehtävä sellainen.
  • Minun on liitettävä paljon antureita Arduinoon puhtaammalla tavalla, joten tein kilven Arduinolle.

Tehdään.

  1. Lataa PCB -tiedostot ja tulosta ne kuparipäällysteiselle laminaatille.
  2. Etsaa kuparipäällysteinen laminaatti fecl3: lla
  3. Poraa 1 mm: n reiät IC: iden ja puristusnauhan kiinnittämistä varten.
  4. Saadaksesi kilven pinoamispäät liukumaan alas muovisen tulpan muovitulppia alaspäin nastojen loppua kohti.
  5. Juotetaan piirilevyjen IC -pohjat ja puristusliuska.
  6. Annoin kaaviot viitteellisiä tarkoituksia varten.

Huomautus - Avaa.pcb ja Express SCH -ohjelmisto avataksesi.sch -tiedosto Express PCB -ohjelmistolla.

Vaihe 5: Virtalähde

Virtalähde
Virtalähde
Virtalähde
Virtalähde

Robotin eri elektronisten moduulien ja moottoreiden tasaisen tehon ylläpitäminen on erittäin tärkeää. Jos teho laskee alle raja -arvon missä tahansa moduulissa, joka aiheuttaa häiriön ja on hyvin vaikea tunnistaa sen syytä.

Tämän robotin ensisijainen energialähde on 2200 mAh: n 3S Lipo -akku. Tässä akussa on kolme kennoa ja lähtöjännite on 11,1 volttia. Udoo -kortti tarvitsee 12 voltin jännitteen ja Arduino -levy 5 voltin jännitteen. Joten päätän käyttää kahta jännitesäädintä, joista toinen on askel ylöspäin ja toinen askel alas. Toinen ylläpitää virransyöttöä kaikkiin 12 voltin moduuleihin ja toinen pitää virran kaikkiin 5 voltin moduuleihin.

Kuva sisältää käsin piirrettyjä kaavioita.

  • Juotos jännitteen säätimet rei'itetyille piirilevyille.
  • Juotos T-pistokkeen urospariston liitin kummankin jännitesäätimen tuloon.
  • Liitä molempien säätimien maadoituslähtö.
  • Liitä DC -tynnyrin liittimet kuhunkin säätimen ulostuloon. Pidä johtojen pituus riittävän suurena, jotta ne voivat saavuttaa Udoo/Raspberry Pi- ja Arduino -levyt.
  • Juottaa burg -nauha jokaiseen säätimen lähtöön lisäteholähtönä, jos tarvitsemme sitä tulevassa muutoksessa.
  • Ennen kuin liität virtalähteen mihinkään elektroniseen moduuliin, kalibroi kunkin säätimen ulostulo käyttämällä säädettävää potentiometriä tarkasti 12 ja 5 volttiin.

Vaihe 6: Lopullinen kokoonpano

Lopullinen kokoonpano
Lopullinen kokoonpano
Lopullinen kokoonpano
Lopullinen kokoonpano
Lopullinen kokoonpano
Lopullinen kokoonpano

Nyt on aika. Monien vaiheiden jälkeen on aika koota jokainen moduuli yhteen. Innoissaan? No minä olen.

  • Leikkaa suorakulmainen pala MDF -levystä, jonka koko (30 cm x 25 cm). Tämä levy on pohja elektronisten moduulien asentamiseen. En halua porata paljon reikiä pohjaakryylilevyyn, joten käytän MDF -levyä. Se auttaa myös piilottamaan johdot sen alle, jotta robotti näyttää siistiltä ja puhtaalta.
  • Aseta moduulit MDF -levylle ja merkitse kiinnitysreiät ja poraa ne. Tee ylimääräisiä reikiä johtimien johtamiseksi MDF -levyn alle.
  • Määritin numeroita joillekin reikille, joten minun on helppo viitata niihin ja sinun on ymmärrettävä kytkentäkaaviot.

Virtalähde:

  • Asenna virtalähdemoduuli levylle ja vie 12v ja 5v liitin reiän numero 1 läpi ja vedä 12v liitin reiän numero 2 läpi ja vedä 5v liitin reiän numero 3 läpi.
  • Pidin akun toistaiseksi löysänä, koska minun on joskus poistettava ja ladattava se.

Moottorin kuljettaja:

  • Vedä moottoriin liitetyt johdot reiän 4 läpi ja liitä ne moottorin ohjainkorttiin.
  • Moottorit tarvitsevat 12 voltin virtalähteen toimiakseen kunnolla, joten kytke ohjaimen 12 voltin ja GND -nasta 12 voltin jännitesäätimen lähtöön.
  • Liitä moottoriajurin nastat Arduinoon koodin mukaisesti.

Arduino:

  • Ennen Arduinon asentamista vie kolmen ultraäänianturin johdot takapaneelin läpi ja loput kolme ultraäänianturia johdot etupaneelin läpi ja vedä ne ulos reiän 3 läpi.
  • Asenna Arduino ja kiinnitä anturisuojus siihen.
  • Annoin numerot kaikille ultraääni -anturijohdoille, jotta virheiden korjaaminen on helppoa. Liitä anturin tapit suojaan alkaen numerosta 1-6 peräkkäin.
  • Liitä 5 voltin virtaliitin Arduinoon.

Dynamixel Servo -ohjain:

  • Asenna dynamixel -servosäädin piirilevylle.
  • Liitä servo -ohjaimen 12v- ja GND -nasta 12v -jännitesäätimen lähtöön.
  • Liitä servo -ohjaimen 5v- ja GND -nasta 5v -jännitesäätimen lähtöön.
  • Liitä servo -ohjaimen ja Arduinon nastat koodin mukaisesti.
  • Jätä servon ulostulonappi irralliseksi toistaiseksi. Liitä se robotin yläpaneelin asentamisen jälkeen.

Udoo / Vadelma Pi:

Huomautus: Varmista ennen alla olevien vaiheiden noudattamista, että olet jo asentanut käyttöjärjestelmän MicroSD -kortille ja asettanut sen Udoo / Raspberry Pi -levylle. Jos ei, seuraa linkkejä Raspbianin asentamiseen Raspberry Pi- tai Udoobuntu -ohjelmaan Udoo -kortilla.

  • Kiinnitä Udoo / Raspberry Pi levylle ja kytke virtaliitin siihen.
  • Jos käytät Udooa, liitä USB -keskitin johonkin sen USB -liittimestä.
  • Liitä siihen HDMI -kaapeli ja mikro -USB -kaapeli. Näitä nastoja käytetään tiedon ja virran syöttämiseen näyttöön.
  • Liitä Arduino Udoo / Raspberry Pi -laitteeseen A -B -USB -kaapelilla.

Yläpaneeli:

  • Kiinnitä yläpaneeli robotin sivu-, etu- ja takapaneeliin L -puristimilla.
  • Liitä HDMI -kaapeli, mikro -USB -kaapeli näyttöön ja verkkokamera Udoo / Raspberry Pi -levyyn.
  • Kytke dynamixel-peruspalvelosta tuleva kolminapainen servoliitin servo-ohjaimeen. Huolehdi siitä, mikä nasta on DATA, GND ja +12v. Katso "Robotin pää ja kasvot" -osion kuvat saadaksesi paremman viittauksen. Jos liität johdot päinvastaisessa järjestyksessä, se voi vaurioittaa servoja.

Ultraääni -etäisyysanturit:

Palapelin viimeinen pala. Tämän jälkeen kokoonpanomme on melkein ohi.

  • Leikkaa kuusi suorakulmaista kappaletta MDF -levystä/akryylilevystä, joiden koko (6 cm x 5 cm).
  • Poraa niihin reikiä haluttuihin paikkoihin.
  • Kiinnitä ultraäänianturit jokaiseen levyyn ja kiinnitä kaikki levyt robotin pohjapaneeliin.
  • Liitä anturit liittimillä.

Lopulta se on tehty. Liitä akku ja käynnistä Udoo/Raspberry Pi

Vaihe 7: Ohjelmisto

Laitteisto on valmis, mutta ilman ohjelmistoa tämä robotti on vain laatikko. Luettelo tarvitsemistamme ohjelmistoista ovat

  • TightVNC
  • Python
  • OpenCV
  • Lumipoika
  • Jotkut python -paketit

    • Pyautogui
    • numpy
    • pysyvä
    • pyaudio

TightVNC:

TightVNC on ilmainen kaukosäätimen ohjelmistopaketti. TightVNC: n avulla voit nähdä etäkoneen työpöydän ja ohjata sitä paikallisella hiirellä ja näppäimistöllä aivan kuten tekisit sen tietokoneen edessä.

Jos sinulla on ylimääräinen näppäimistö ja hiiri, se on hyvä. Jos ei, asenna TightVNC kannettavaan tietokoneeseen ja noudata näitä ohjeita.

Yhdistä näppäimistö ja hiiri ensimmäistä kertaa Udoo / Raspberry Pi -laitteeseen. Yhdistä wifi -verkkoon. Avaa terminaali ja kirjoita

$ ifconfig

  • Kirjoita muistiin robotin IP -osoite.
  • Avaa TightVNC kannettavassa tietokoneessa. Kirjoita IP -osoite vaadittuun kenttään ja paina Enter. Voila! Olet nyt yhteydessä. Käytä kannettavan tietokoneen kosketuslevyä ja näppäimistöä päästäksesi robottiin.

Python:

Python on erittäin suosittu ja monipuolinen kieli, minkä vuoksi käytän sitä tämän robotin ensisijaisena ohjelmointikielenä.

Tässä käytän python 2.7: tä, mutta jos haluat, voit käyttää myös python 3. Onneksi Python on esiasennettu sekä Udoobuntun että Raspbian -käyttöjärjestelmään. Joten meidän ei tarvitse asentaa sitä.

OpenCV:

OpenCV on avoimen lähdekoodin kirjasto, joka on tarkoitettu pääasiassa reaaliaikaiseen tietokonenäköön. OpenCV Pythonilla on erittäin helppokäyttöinen. OpenCV: n asentaminen on hieman hankalaa, mutta saatavilla on paljon helppokäyttöisiä oppaita. Henkilökohtainen suosikkini on tämä. Tämä opas on tarkoitettu Raspberry Pi: lle, mutta voit käyttää sitä myös Udoo -levylle.

Lumipoika:

Snowboy on Kitt.ai -kavereiden kirjoittama kirjasto, joka on tarkoitettu pääasiassa offline -puhekäsittelyyn/hotword -tunnistukseen. Se on erittäin helppokäyttöinen. Asenna Snowboy Raspberry Pi -laitteeseen tästä linkistä. Jos käytät Udoo -levyä, siirry tähän projektiin, jonka on kirjoittanut meto install snowboy Udoossa.

Python -paketit:

Asenna joitakin python -paketteja noudattamalla näitä helppokäyttöisiä oppaita.

  1. Pyautogui - Pyautogui on paketti, joka simuloi näppäimistön tai hiiren liikkeitä.
  2. Numpy - kirjoita "pip install numpy" Linux -kuoreen ja paina enter. Se on niin yksinkertaista.
  3. Pyserial - Pyserial on paketti, joka on tarkoitettu sarjaviestintään pythonin kautta. Käytämme sitä kommunikoidaksesi Arduinon kanssa.

Vaihe 8: Koodit

Laitteisto -osa on valmis. Ohjelmisto -osa on valmis. Nyt on aika antaa sielu tälle robotille.

Koodataan.

Tämän robotin koodi on hieman monimutkainen, ja olen parhaillaan lisäämässä siihen toimintoja. Siksi olen isännöinyt koodit Github -arkistossani. Voit tarkistaa sen ja kloonata/ladata koodit sieltä.

Nyt se ei ole vain robotti; se on nyt Tinku.

Vaihe 9: Esittely

Image
Image

Esittely jeeeeee !!

Nämä ovat joitain perusesitteitä. Paljon mielenkiintoisempia on tulossa.

Pysy kuulolla lisää päivityksiä ja jos sinulla on epäilyksiä, voit kommentoida.

Kiitos, että luit projektini. Olet mahtava.

Jos pidät tästä projektista, äänestä sitä Microcontroller and Robotics -kilpailussa

Hyvää tekemistä;-)

Suositeltava: