Satura rādītājs:

Tinku: personīgais robots: 9 soļi (ar attēliem)
Tinku: personīgais robots: 9 soļi (ar attēliem)

Video: Tinku: personīgais robots: 9 soļi (ar attēliem)

Video: Tinku: personīgais robots: 9 soļi (ar attēliem)
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, Novembris
Anonim
Tinku: personīgais robots
Tinku: personīgais robots

Seko vairāk autora:

Nemateriālā virsma
Nemateriālā virsma
Nemateriālā virsma
Nemateriālā virsma
Izdzēsts Instructable
Izdzēsts Instructable
Izdzēsts Instructable
Izdzēsts Instructable
Kartona klavieres
Kartona klavieres
Kartona klavieres
Kartona klavieres

Sveiki, Tinku nav tikai robots; tas ir personīgais robots. Tas ir viss vienā iepakojumā. Tas var redzēt (datora redze), klausīties (runas apstrāde), runāt un reaģēt uz situāciju. Tas var izteikt emocijas, un to lietu saraksts, ko tā var darīt, turpinās. Es tam devu nosaukumu; Es to saucu par Tinku.

Īss ievads par to, ko tā var darīt

  1. Datora redze

    • Sejas noteikšana
    • Sejas izsekošana
    • Fotografējiet un ierakstiet video
    • Atpazīt ArUco marķierus
  2. Runas apstrāde

    • Bezsaistes runas apstrāde (Hotword noteikšana)
    • Tā var saprast jūsu teikto, atklājot Hotwords.
  3. Izteikt emocijas

    • Tas virza galvu neverbālai saziņai un jūtu izteikšanai.
    • Tā ekrānā tiek parādīti attēli un gif, lai atbalstītu pašreizējo noskaņojumu.
  4. Pārvietoties

    Tas var skriet apkārt, izmantojot riteņus, un noteikt vietas, izmantojot ArUco marķierus

  5. Izvairīšanās no šķēršļiem

    Tam ir hidrolokatori, tāpēc tas vienmēr apzinās apkārtni un var izvairīties no šķēršļiem

Ar to var paveikt daudz vairāk. Varat arī ieviest jaunas funkcijas.

Pietiek runāt.

EDIT: Tinku ķermenis sāka plaisāt, tāpēc man nācās viņu pilnībā pārveidot. Šeit ir jauni attēli, pilnīgi svaigs un labāks Tinku. Atvainojiet, man nav Tinku pārveidošanas soļu attēlu.

1. darbība: lietas, kas jums būs nepieciešamas

Lietas, kas jums būs nepieciešamas
Lietas, kas jums būs nepieciešamas
Lietas, kas jums būs nepieciešamas
Lietas, kas jums būs nepieciešamas
Lietas, kas jums būs nepieciešamas
Lietas, kas jums būs nepieciešamas
Lietas, kas jums būs nepieciešamas
Lietas, kas jums būs nepieciešamas

Robota ķermenis

  1. Akrila loksne
  2. MDF plāksne
  3. Mazas L skavas
  4. Uzgrieznis un skrūve

Servo, motori un riteņi

  1. Dynamixel AX-12A (3 gab.)
  2. Bioloīdu skrūvju un uzgriežņu komplekts
  3. Motori (2 gab.)
  4. Dziesmas (2 iepakojumi)
  5. Sliežu riteņi (4 gab.)
  6. L skavas motoriem (2 gab.)
  7. L skava manekena riteņa vārpstai (2 gab.)
  8. Manekena riteņa vārpsta (2 gab.)
  9. Bioloīda rāmis F8
  10. Bioloīds rāmis F3 (2 gab.)
  11. Bioloīds rāmis F2
  12. Bioloīda rāmis F10

Elektronika

  1. Arduino
  2. Raspberry Pi vai Udoo Quad
  3. Motora vadītājs
  4. Logitech webcam-c270 (tajā ir iebūvēts mikrofons)
  5. Ultraskaņas attāluma sensori (6 gab.)
  6. Lipo akumulators (3300 Mah 3S)
  7. Palieliniet sprieguma regulatoru (DC-DC)
  8. Pazemināms sprieguma regulators (DC-DC)
  9. Skārienekrāns (7 collas)
  10. USB centrmezgls (tikai tad, ja izmantojat Udoo Quad, jo tam ir tikai 2 USB porti)
  11. 7404 hex invertors IC
  12. 74HC244 IC
  13. 14 kontaktu IC bāze
  14. 20 kontaktu IC bāze

Savienotāji un kabeļi

  1. T-kontaktdakšas akumulatora savienotājs
  2. Elastīgs HDMI kabelis (tikai tad, ja ekrānam ir HDMI savienotājs)
  3. Mikro USB kabelis
  4. Trīs tapas sieviešu un sieviešu atjaunošanas kabelis (6 gab.)
  5. Līdzstrāvas cilindra ligzdas strāvas kontaktdakša (2 gab.)
  6. Dynamixel servo savienotāji (3 gab.)
  7. USB kabelis no A līdz B (tikai tad, ja tas nebija komplektā ar Arduino)
  8. Jumper vadi
  9. Maizes dēļa vadi
  10. Burg sloksnes

PCB izgatavošanai

  1. Vara plaķēts lamināts
  2. PCB kodinātājs (Fecl3)
  3. Perforēts PCB
  4. 1 mm urbis

Dažādi

  1. Līme
  2. Radiatora caurules
  3. Atšķirības

Piezīme. Šeit es izmantoju Udoo plati, jo tam ir labāks skaitļošanas ātrums nekā manai aveņu pi 2. Es izmantoju ārēju Arduino, nevis Udoo plates iebūvēto Arduino, jo visi mani sensori un moduļi ir saderīgi ar 5 V, un Arduino Udoo dēlis ir saderīgs ar 3v.

2. solis: robota korpuss

Robota ķermenis
Robota ķermenis
Robota ķermenis
Robota ķermenis
Robota ķermenis
Robota ķermenis
Robota ķermenis
Robota ķermenis

Lai sagatavotu robota korpusu, es izmantoju akrila loksni un sagriezu to noteiktā izmērā, lai izveidotu kastē līdzīgu struktūru. Attēlā es pieminēju katras ķermeņa puses izmēru.

  1. Izgrieziet akrila loksni atbilstoši norādītajam izmēram.
  2. Izurbiet caurumus noteiktās vietās, lai uzstādītu motorus, sensorus, atdalītājus un savienotu katru plāksni kopā.
  3. Izurbiet lielāku caurumu pamatplāksnē un augšējā plāksnē, lai izvadītu kabeļus.
  4. Priekšējā un aizmugurējā paneļa apakšējā malā izveidojiet nelielu iecirtumu, lai caur ultraskaņas sensoru izplūstu vadi.

Ir pienācis laiks sagatavot un uzstādīt motorus un sliedes.

  1. Lodējiet papildu vadus pie motora tapām, lai vads varētu sasniegt motora vadītājus.
  2. Uzmontējiet motora skavas un manekena riteņa vārpstas skavas uz robota pamatnes.
  3. Pievienojiet motorus un fiktīvo riteņa vārpstu skavām, pēc tam pievienojiet riteņus.
  4. Salieciet sliedes un izveidojiet cilpu.
  5. Siksnas sliede uz riteņiem. Paturiet prātā, ka sliežu ceļš nav vaļīgs un tam ir pietiekami daudz spriedzes.

Tagad pievienojiet priekšējo, aizmugurējo un vienu sānu paneli pamatnes panelī, izmantojot mazas L skavas. Neuzstādiet augšējo paneli un vienu sānu paneli tā, lai mums būtu pietiekami daudz vietas, lai uzstādītu elektroniku uz robota.

3. solis: Robota galva un seja

Image
Image
Robota galva un seja
Robota galva un seja
Robota galva un seja
Robota galva un seja
Robota galva un seja
Robota galva un seja

Mēs savam robotam jau uzdāvinājām virsbūvi un riteņus. Tagad ir pienācis laiks piešķirt tai galvu, kaklu un seju.

Kakls:

Sarežģītākā daļa robota galvā ir kakls. Tāpēc mēs vispirms to sagatavosim. Dynamixel servos ir nedaudz mulsinoši strādāt, taču tie ir uzticami un izturīgi. Tam ir pieejamas daudzas stiprinājuma skavas, lai jūs tās varētu savienot jebkurā veidā.

Skatiet šo videoklipu, lai iegūtu labāku skaidrojumu par to, kā savienot dinamixel servos.

  1. Ievietojiet riekstus dynamixel servos, lai tos piestiprinātu ar rāmjiem.
  2. Novietojiet bioloīda rāmi F8 augšējā paneļa centrā un atzīmējiet urbumus un urbiet tos.
  3. Pievienojiet bioloīda rāmi F8 vienam no serviem, pēc tam uzstādiet bioloīda rāmi F8 uz augšējā paneļa.
  4. Savienojiet katru servo kopā, izmantojot dažādus rāmjus, un sagatavojiet kaklu.
  5. Savienojiet servos, izmantojot dynamixel trīs kontaktu servo savienotājus.

Acs un auss:

Es izmantoju Logitech tīmekļa kameru-c270 kā sava robota aci. Tā ir laba kamera, kas var uzņemt fotoattēlus un ierakstīt video 720p. Tam ir arī iebūvēts mikrofons, tāpēc tas kļūst par ausu arī manam robotam. Pēc ilgas prāta vētras es uzzināju, ka labākā vieta kameras uzstādīšanai ir ekrāna augšdaļā. Bet kameras uzstādīšanai man ir nepieciešams kameras stiprinājums. Tātad, izveidosim vienu.

  1. Noņemiet no tīmekļa kameras esošos metāla gabalus, lai piešķirtu tai zināmu svaru.
  2. Izgrieziet divus gabalus no MDF plātnes, vienu kvadrātu un vienu trīsstūri ar izmēriem, kas parādīti attēlā.
  3. Izurbiet caurumu tīmekļa kameras pamatnē un uz kvadrātveida MDF gabala. Uz kvadrātveida gabala izveidojiet iegriezumu, lai tajā ievietotu tīmekļa kameras vadu.
  4. Līmējiet MDF gabalus kopā, lai izveidotu T formu. Kameras stiprinājums ir gatavs.
  5. Pirms kameras stiprinājuma un kameras pievienošanas vispirms sagatavojiet galvu.

Galva:

Robota galva ir savienota ar servo. Tam jābūt pēc iespējas vieglākam, lai galva neradītu lielu slodzi servos. Tāpēc es izmantoju MDF plāksni akrila loksnes vietā.

  1. Izgrieziet MDF plātnes gabalu ar izmēru (18 cm x 13 cm) un urbiet caurumus ekrāna montāžai.
  2. Novietojiet bioloīda rāmi F10 MDF plātnes centrā un atzīmējiet urbumus un urbiet tos.
  3. Uzstādiet bioloīda rāmi F10 un bioloīda rāmi F2 katrā MDF plātnes pusē un savienojiet tos kopā, izmantojot uzgriezni un skrūvi.
  4. Tagad pielīmējiet kameras stiprinājumu tāfeles aizmugurē.
  5. Pievienojiet bioloīda rāmi F2 ar servo konfigurācijas beigām.
  6. Uzstādiet ekrānu uz MDF plātnes, izmantojot atdalītājus.
  7. Pievienojiet tīmekļa kameru kameras stiprinājumam.

Tagad mūsu robota galva un seja ir pabeigta.

4. solis: pielāgotas PCB

Pielāgotas PCB
Pielāgotas PCB
Pielāgotas PCB
Pielāgotas PCB
Pielāgotas PCB
Pielāgotas PCB

Tagad ir pienācis laiks izšķīdināt dažus fecl3 un kodināt dažus PCB.

Kāpēc es izveidoju pielāgotas PCB?

  • Man nav dynamixel servo kontroliera, tāpēc man tas ir jāizveido.
  • Man ir jāpievieno daudz sensoru Arduino tīrākā veidā, tāpēc es izveidoju Arduino vairogu.

Taisīsim.

  1. Lejupielādējiet PCB failus un izdrukājiet tos uz vara pārklāta lamināta.
  2. Kodiniet vara pārklātu laminātu, izmantojot fecl3
  3. Izurbiet 1 mm caurumus IC un burg sloksnes montāžai.
  4. Lai vairoga sakraušanas galviņas slīdētu lejup pa urbuma sloksnes plastmasas aizbāžņiem uz tapām līdz galam.
  5. Lodējiet IC pamatnes un burg sloksni uz PCB.
  6. Es sniedzu shēmas atsauces nolūkos.

Piezīme. Izmantojiet Express PCB programmatūru, lai atvērtu.pcb, un Express SCH programmatūru, lai atvērtu.sch failu.

5. solis: barošanas avots

Enerģijas padeve
Enerģijas padeve
Enerģijas padeve
Enerģijas padeve

Ir ļoti svarīgi uzturēt nemainīgu jaudu visos robota elektroniskajos moduļos un motoros. Ja jauda jebkurā modulī nokrītas zem robežvērtības, kas izraisīs traucējumus, un ir ļoti grūti noteikt tā cēloni.

Šī robota galvenais enerģijas avots ir 2200 mAh 3S Lipo akumulators. Šim akumulatoram ir trīs šūnas, un izejas spriegums ir 11,1 volts. Udoo plāksnei ir nepieciešama 12 V barošana, un Arduino plāksnei ir nepieciešama 5 V barošana. Tāpēc es izvēlos izmantot divus sprieguma regulatorus, viens ir pakāpenisks, bet otrs-pakāpenisks. Viens uzturēs strāvas padevi visiem 12 voltu moduļiem, bet otrs nodrošinās strāvas padevi visiem 5 voltu moduļiem.

Attēlā ir ar rokām zīmētas shēmas.

  • Lodējiet sprieguma regulatorus uz perforētajām PCB plāksnēm.
  • Lodējiet T-kontaktdakšas akumulatora savienotāju pie abu sprieguma regulatoru ieejas.
  • Pievienojiet abu regulatoru "Zemes" izeju.
  • Pievienojiet līdzstrāvas mucas ligzdas katrai regulatora izejai. Saglabājiet vadu garumu pietiekami, lai tas varētu sasniegt Udoo/Raspberry Pi un Arduino plāksni.
  • Lodēt burg sloksni katrai regulatora izejai kā papildu jaudas jaudu, ja mums tas būs vajadzīgs turpmākajā modifikācijā.
  • Pirms barošanas avota pievienošanas kādam no elektroniskajiem moduļiem, kalibrējiet katra regulatora izeju, izmantojot komplektā iekļauto apdares potenciometru līdz precīzi 12v un 5v.

6. solis: galīgā montāža

Galīgā montāža
Galīgā montāža
Galīgā montāža
Galīgā montāža
Galīgā montāža
Galīgā montāža

Tagad ir pienācis laiks. Pēc tik daudzām darbībām ir pienācis laiks salikt katru moduli kopā. Satraukti? Nu es esmu.

  • Izgrieziet taisnstūrveida MDF plātnes gabalu ar izmēru (30 cm x 25 cm). Šī plāksne ir pamats elektronisko moduļu montāžai. Es nevēlos urbt daudz caurumu akrila pamatplāksnē, tāpēc es izmantoju MDF plāksni. Tas arī palīdz paslēpt vadus zem tā, lai mūsu robots izskatītos glīts un tīrs.
  • Novietojiet moduļus uz MDF plātnes un atzīmējiet montāžas caurumus un urbiet tos. Izveidojiet dažus papildu caurumus, lai izvadītu vadus zem MDF plātnes.
  • Es piešķīru numurus dažiem caurumiem, tāpēc man kļūst viegli tos novirzīt un jums saprast elektroinstalācijas shēmas.

Enerģijas padeve:

  • Uzstādiet barošanas moduli uz tāfeles un izlaidiet 12 un 5 voltu ligzdu caur caurumu Nr. 1 un izvelciet 12 voltu ligzdu caur caurumu Nr. 2 un izvelciet 5 v ligzdu caur caurumu Nr. 3.
  • Es pagaidām turēju vaļā akumulatoru, jo dažreiz tas ir jāizņem un jāuzlādē.

Motora vadītājs:

  • Izvelciet vadus, kas savienoti ar motoriem, caur cauruma numuru 4 un pievienojiet tos motora vadītāja panelim.
  • Motoriem ir nepieciešams 12 V barošanas avots, lai tie darbotos pareizi, tāpēc pievienojiet vadītāja 12 V un GND tapu ar 12 V sprieguma regulatora izeju.
  • Pievienojiet motora vadītāja tapas Arduino saskaņā ar kodu.

Arduino:

  • Pirms Arduino uzstādīšanas izlaidiet trīs ultraskaņas sensoru vadus caur aizmugurējo paneli un atlikušo trīs ultraskaņas sensoru vadus caur priekšējo paneli un izvelciet caur caurumu 3.
  • Uzstādiet Arduino un piestipriniet pie tā sensora vairogu.
  • Es norādīju numurus visiem ultraskaņas sensora vadiem, lai to būtu viegli atkļūdot jebkuras kļūdas gadījumā. Savienojiet sensora tapas ar vairogu, sākot no numura 1 līdz 6 pēc kārtas.
  • Pievienojiet 5 V strāvas kontaktligzdu Arduino.

Dynamixel servo kontrolieris:

  • Uz paneļa uzstādiet dynamixel servo kontrolieri.
  • Pievienojiet servo regulatora 12v un GND tapu ar 12v sprieguma regulatora izeju.
  • Pievienojiet servo regulatora 5v un GND tapu ar 5v sprieguma regulatora izeju.
  • Savienojiet servo kontrollera un Arduino tapas saskaņā ar kodu.
  • Pagaidām atstājiet servo izejas tapu atvienotu. Pievienojiet to pēc robota augšējā paneļa uzstādīšanas.

Udoo / Raspberry Pi:

Piezīme: Pirms veicat tālāk norādītās darbības, pārliecinieties, vai esat jau instalējis OS MicroSD kartē un ievietojis to Udoo / Raspberry Pi panelī. Ja nē, tad sekojiet Raspbian instalēšanas saitēm uz Raspberry Pi vai Udoobuntu uz Udoo tāfeles.

  • Uzstādiet Udoo / Raspberry Pi uz tāfeles un pievienojiet tam strāvas ligzdu.
  • Ja izmantojat Udoo, pievienojiet USB centrmezglu kādai no USB ligzdām.
  • Pievienojiet tam HDMI kabeli un mikro USB kabeli. Šīs tapas tiek izmantotas datu un strāvas padevei ekrānam.
  • Savienojiet Arduino ar Udoo / Raspberry Pi, izmantojot A līdz B USB kabeli.

Augšējais panelis:

  • Piestipriniet augšējo paneli pie robota sānu, priekšējā un aizmugurējā paneļa, izmantojot L skavas.
  • Pievienojiet HDMI kabeli, mikro USB kabeli ekrānam un tīmekļa kameru pie Udoo / Raspberry Pi plates.
  • Savienojiet trīs kontaktu servo savienotāju, kas nāk no pamata dynamixel servo, ar servo kontrolieri. Lūdzu, parūpējieties par to, kura tapa ir DATA, GND un +12v. Lai iegūtu labāku informāciju, skatiet attēlus sadaļā "Robota galva un seja". Ja pievienojat vadus pretējā secībā, tas var sabojāt servos.

Ultraskaņas attāluma sensori:

Pēdējais puzles gabals. Pēc tam mūsu asambleja ir gandrīz beigusies.

  • Izgrieziet sešus taisnstūra formas MDF plātnes/akrila loksnes izmērus (6 cm x 5 cm).
  • Izurbiet tajos vajadzīgās vietās caurumus.
  • Pievienojiet ultraskaņas sensorus katrai plāksnei un pievienojiet visus dēļus ar robota pamatnes paneli.
  • Savienojiet sensorus ar savienotājiem.

Visbeidzot, tas ir izdarīts. Pievienojiet akumulatoru un ielādējiet Udoo/Raspberry Pi

7. solis: programmatūra

Aparatūra ir pabeigta, bet bez programmatūras šis robots ir tikai kaste. Mums ir vajadzīgās programmatūras saraksts

  • TightVNC
  • Python
  • OpenCV
  • Sniega puika
  • Daži python iepakojumi

    • Pyautogui
    • dūšīgs
    • pyserial
    • pyaudio

TightVNC:

TightVNC ir bezmaksas tālvadības programmatūras pakotne. Izmantojot TightVNC, jūs varat redzēt attālās mašīnas darbvirsmu un vadīt to ar vietējo peli un tastatūru, tāpat kā jūs to darītu, sēžot datora priekšā.

Ja jums ir papildu tastatūra un pele, tas ir labi. Ja nē, tad instalējiet TightVNC savā klēpjdatorā un izpildiet šīs darbības.

Pirmo reizi pievienojiet tastatūru un peli Udoo / Raspberry Pi. Izveidojiet savienojumu ar wifi tīklu. Atveriet termināli un ierakstiet

$ ifconfig

  • Pierakstiet robota IP adresi.
  • Atveriet TightVNC savā klēpjdatorā. Nepieciešamajā laukā ievadiet IP adresi un nospiediet taustiņu Enter. Voila! Jūs tagad esat savienots. Lai piekļūtu robotam, izmantojiet klēpjdatora skārienpaliktni un tastatūru.

Python:

Python ir ļoti populāra un daudzpusīga valoda, tāpēc es to izmantoju kā šī robota primāro programmēšanas valodu.

Šeit es izmantoju python 2.7, bet, ja vēlaties, varat izmantot arī python 3. Par laimi Python ir iepriekš instalēts gan Udoobuntu, gan Raspbian OS. Tāpēc mums tas nav jāinstalē.

OpenCV:

OpenCV ir atvērtā koda bibliotēka, kuras galvenais mērķis ir reāllaika datora redze. OpenCV ar Python ir ļoti ērti lietojams. OpenCV instalēšana ir nedaudz apgrūtinoša, taču ir pieejami daudzi ļoti viegli izpildāmi ceļveži. Mans personīgais favorīts ir šis. Šī rokasgrāmata ir paredzēta Raspberry Pi, bet to var izmantot arī Udoo dēlim.

Sniega puika:

Sniega zēns ir bibliotēka, ko uzrakstījuši Kitt.ai puiši un kuras galvenais mērķis ir bezsaistes runas apstrāde/karsto vārdu noteikšana. Tas ir ļoti ērti lietojams. Izpildiet šo saiti, lai instalētu Snowboy uz Raspberry Pi. Ja izmantojat Udoo dēli, dodieties uz šo projektu, ko uzrakstījis meto install snowboy Udoo.

Python paketes:

Izpildiet šos viegli lietojamos norādījumus, lai instalētu dažas python pakotnes.

  1. Pyautogui - Pyautogui ir pakete, kas simulē tastatūras taustiņus vai peles kustību.
  2. Numpy - ierakstiet "pip install numpy" Linux apvalkā un nospiediet enter. Tas ir tik vienkārši.
  3. Pyserial - Pyserial ir pakete, kuras mērķis ir sērijveida saziņa, izmantojot python. Mēs to izmantosim, lai sazinātos ar Arduino.

8. darbība: kodi

Aparatūras daļa ir pabeigta. Programmatūras daļa ir pabeigta. Tagad ir pienācis laiks dot šim robotam dvēseli.

Kodēsim.

Šī robota kods ir nedaudz sarežģīts, un šobrīd es tam pievienoju vairāk funkciju. Tāpēc es esmu mitinājis kodus savā Github krātuvē. Jūs varat to pārbaudīt un no turienes klonēt/lejupielādēt kodus.

Tagad tas nav tikai robots; tas tagad ir Tinku.

9. darbība: demonstrācija

Image
Image

Demo. jāeeeee !!

Šie ir daži no pamata demonstrācijām. Gaidāmi vēl daudz interesanti.

Sekojiet līdzi jaunumiem un, ja jums ir kādas šaubas, nekautrējieties komentēt.

Paldies, ka izlasījāt manu projektu. Tu esi lielisks.

Ja jums patīk šis projekts, lūdzu, balsojiet par to mikrokontrolleru un robotikas konkursā

Laimīgu darīšanu;-)

Ieteicams: