Daftar Isi:

Tinku: Robot Pribadi: 9 Langkah (dengan Gambar)
Tinku: Robot Pribadi: 9 Langkah (dengan Gambar)

Video: Tinku: Robot Pribadi: 9 Langkah (dengan Gambar)

Video: Tinku: Robot Pribadi: 9 Langkah (dengan Gambar)
Video: Quincy part 2 #dewivanow #robot #quincyrobotartis #mobix 2024, Juli
Anonim
Tinku: Robot Pribadi
Tinku: Robot Pribadi

Oleh sw4pIkuti Lainnya oleh penulis:

Permukaan Tak Berwujud
Permukaan Tak Berwujud
Permukaan Tak Berwujud
Permukaan Tak Berwujud
Dihapus Dapat Diinstruksikan
Dihapus Dapat Diinstruksikan
Dihapus Dapat Diinstruksikan
Dihapus Dapat Diinstruksikan
Piano Karton
Piano Karton
Piano Karton
Piano Karton

Halo, Tinku bukan hanya robot; itu adalah robot pribadi. Ini adalah semua dalam satu paket. Ia dapat melihat (penglihatan komputer), mendengarkan (pemrosesan ucapan), berbicara, dan bereaksi terhadap situasi. Itu dapat mengekspresikan emosi, dan daftar hal-hal yang dapat dilakukannya terus berlanjut. Saya memberinya nama; Saya menyebutnya Tinku.

Pengantar singkat tentang apa yang dapat dilakukannya adalah

  1. Visi Komputer

    • Deteksi wajah
    • Pelacakan wajah
    • Ambil foto dan rekam video
    • Kenali penanda ArUco
  2. Pemrosesan Ucapan

    • Pemrosesan ucapan offline (Deteksi kata cepat)
    • Itu dapat memahami apa yang Anda katakan dengan mendeteksi Hotwords.
  3. Ekspresikan Emosi

    • Ini menggerakkan kepalanya untuk komunikasi non-verbal dan untuk mengekspresikan perasaan.
    • Ini menampilkan gambar dan-g.webp" />
  4. Bergerak di sekitar

    Itu dapat berlari menggunakan rodanya dan mengidentifikasi tempat menggunakan penanda ArUco

  5. Penghindaran Rintangan

    Ini memiliki sensor sonar sehingga selalu waspada terhadap sekitarnya dan dapat menghindari rintangan

Itu bisa melakukan lebih banyak hal. Anda juga dapat mengimplementasikan fungsionalitas baru yang Anda inginkan.

Cukup bicara mari kita buat.

EDIT: Tubuh Tinku mulai retak jadi saya harus mendesain ulang dia sepenuhnya. Inilah gambar-gambar baru, Tinku yang benar-benar segar dan lebih baik. Maaf, saya tidak memiliki gambar langkah-langkah mendesain ulang Tinku.

Langkah 1: Hal-hal yang Anda Butuhkan

Hal-hal yang Anda Butuhkan
Hal-hal yang Anda Butuhkan
Hal-hal yang Anda Butuhkan
Hal-hal yang Anda Butuhkan
Hal-hal yang Anda Butuhkan
Hal-hal yang Anda Butuhkan
Hal-hal yang Anda Butuhkan
Hal-hal yang Anda Butuhkan

Tubuh Robot

  1. lembaran akrilik
  2. papan MDF
  3. Klem L kecil
  4. Paket mur dan sekrup

Servo, Motor, dan Roda

  1. Dynamixel AX-12A (3 buah)
  2. Set baut dan mur bioloid
  3. Motor (2 buah)
  4. Trek (2 bungkus)
  5. Track roda (4 buah)
  6. L klem untuk motor (2 buah)
  7. L penjepit untuk poros roda dummy (2 buah)
  8. Poros roda dummy (2 buah)
  9. Bingkai Bioloid F8
  10. Bingkai Bioloid F3 (2 buah)
  11. Bingkai Bioloid F2
  12. Bingkai Bioloid F10

Elektronik

  1. Arduino
  2. Raspberry Pi atau Udoo Quad
  3. Pengemudi motor
  4. Logitech webcam-c270 (Ini memiliki mikrofon internal)
  5. Sensor jarak ultrasonik (6 buah)
  6. Baterai Lipo (3300 Mah 3S)
  7. Pengatur tegangan step up (DC-DC)
  8. Pengatur tegangan step-down (DC-DC)
  9. Layar Sentuh (7 inci)
  10. Hub USB (Hanya jika Anda menggunakan Udoo Quad karena hanya memiliki 2 port USB)
  11. 7404 hex inverter IC
  12. IC 74HC244
  13. Basis IC 14 pin
  14. 20 pin dasar IC

Konektor dan Kabel

  1. Konektor baterai pria T-plug
  2. Kabel HDMI fleksibel (Hanya jika layar Anda memiliki konektor HDMI)
  3. Kabel mikro USB
  4. Tiga pin kabel relimate perempuan-perempuan (6 buah)
  5. DC barrel jack steker listrik laki-laki (2 buah)
  6. Konektor servo Dynamixel (3 buah)
  7. Kabel USB A ke B (Hanya jika tidak disertakan dengan Arduino)
  8. Kabel jumper
  9. Kabel papan tempat memotong roti
  10. Strip Burg

Untuk Membuat PCB

  1. Laminasi berlapis tembaga
  2. Penggores PCB (Fecl3)
  3. PCB berlubang
  4. mata bor 1 mm

Aneka ragam

  1. Lem
  2. tabung heatsink
  3. Kebuntuan

Catatan: Di sini saya menggunakan papan Udoo karena memiliki kecepatan komputasi yang lebih baik daripada raspberry pi 2. Saya menggunakan Arduino eksternal daripada Arduino bawaan dari papan Udoo karena semua sensor dan modul saya kompatibel dengan 5v, dan Arduino di Papan Udoo kompatibel dengan 3v.

Langkah 2: Tubuh Robot

Tubuh Robot
Tubuh Robot
Tubuh Robot
Tubuh Robot
Tubuh Robot
Tubuh Robot
Tubuh Robot
Tubuh Robot

Untuk mempersiapkan tubuh robot, saya menggunakan lembaran akrilik dan memotongnya dalam ukuran tertentu untuk membuat struktur seperti kotak. Saya menyebutkan dimensi setiap sisi tubuh dalam gambar.

  1. Potong lembaran akrilik sesuai dengan ukuran yang ditentukan.
  2. Bor lubang di tempat-tempat tertentu untuk memasang motor, sensor, standoff dan untuk menyatukan setiap pelat.
  3. Bor lubang yang lebih besar di pelat dasar dan pelat atas untuk melewatkan kabel.
  4. Buat lekukan kecil di sisi bawah panel depan dan belakang agar kabel yang berasal dari sensor ultrasonik dapat melewatinya.

Saatnya untuk mempersiapkan dan memasang motor dan trek.

  1. Solder kabel ekstra ke pin motor sehingga kabel dapat mencapai driver motor.
  2. Pasang klem motor dan klem poros roda tiruan pada pelat dasar robot.
  3. Hubungkan motor dan poros roda dummy ke klem kemudian sambungkan roda.
  4. Kumpulkan trek dan buat lingkaran.
  5. Strap track pada roda. Ingatlah bahwa trek tidak kendur dan memiliki ketegangan yang cukup.

Sekarang gabungkan panel depan, belakang dan satu sisi pada panel dasar menggunakan klem L kecil. Jangan memasang panel atas dan satu panel samping sehingga kami memiliki cukup ruang tersisa untuk memasang elektronik pada robot.

Langkah 3: Kepala dan Wajah Robot

Image
Image
Kepala dan Wajah Robot
Kepala dan Wajah Robot
Kepala dan Wajah Robot
Kepala dan Wajah Robot
Kepala dan Wajah Robot
Kepala dan Wajah Robot

Kami sudah memberikan tubuh dan roda untuk robot kami. Sekarang saatnya untuk memberikan kepala, leher dan wajah.

Leher:

Bagian paling rumit di kepala robot adalah leher. Jadi kita siapkan dulu. Servo Dynamixel agak membingungkan untuk digunakan, tetapi mereka dapat diandalkan dan tahan lama. Ada banyak klem pemasangan yang tersedia untuk itu sehingga Anda dapat menghubungkannya bersama-sama dengan cara apa pun.

Tonton video ini untuk penjelasan yang lebih baik tentang cara menghubungkan servos dynamixel bersama-sama.

  1. Masukkan mur ke dalam servos dynamixel untuk memasangnya dengan bingkai.
  2. Tempatkan bingkai bioloid F8 di tengah panel atas dan tandai lubang pengeboran dan bor.
  3. Pasang bingkai bioloid F8 ke salah satu servos kemudian pasang bingkai bioloid F8 di panel atas.
  4. Gabungkan setiap servo bersama-sama menggunakan bingkai yang berbeda dan siapkan lehernya.
  5. Hubungkan servos satu sama lain menggunakan konektor servo tiga pin dynamixel.

Mata dan Telinga:

Saya menggunakan webcam-c270 Logitech sebagai mata untuk robot saya. Ini adalah kamera yang bagus yang dapat mengambil foto dan merekam video dalam 720p. Ini juga memiliki mikrofon internal, oleh karena itu menjadi telinga untuk robot saya juga. Setelah brainstorming yang lama, saya menemukan bahwa tempat terbaik untuk memasang kamera adalah di atas layar. Tetapi untuk memasang kamera, saya membutuhkan dudukan kamera. Jadi mari kita buat satu.

  1. Lepaskan potongan logam dari webcam yang disediakan untuk memberikan bobot.
  2. Potong dua bagian dari papan MDF, satu persegi dan satu segitigadengan dimensi yang ditunjukkan pada gambar.
  3. Bor lubang di dasar webcam dan di bagian MDF persegi. Buat takik pada potongan persegi untuk memasukkan kabel webcam ke dalamnya.
  4. Rekatkan potongan-potongan MDF bersama-sama untuk membentuk bentuk-T. Dudukan kamera sudah siap.
  5. Sebelum memasang dudukan kamera dan kamera secara bersamaan, siapkan kepala terlebih dahulu.

Kepala:

Kepala robot terhubung ke servos. Itu harus seringan mungkin sehingga kepala tidak memberikan banyak beban pada servos. Oleh karena itu saya menggunakan papan MDF sebagai pengganti lembaran akrilik.

  1. Potong sepotong papan MDF dengan dimensi (18cm x 13cm) dan bor lubang untuk memasang layar.
  2. Tempatkan bingkai bioloid F10 di tengah papan MDF dan tandai lubang pengeboran dan bor.
  3. Atur bingkai bioloid F10 dan bingkai bioloid F2 di setiap sisi papan MDF dan gabungkan keduanya menggunakan mur dan sekrup.
  4. Sekarang rekatkan dudukan kamera di sisi belakang papan.
  5. Bergabunglah dengan bingkai bioloid F2 dengan ujung konfigurasi servo.
  6. Pasang layar pada papan MDF menggunakan penyangga.
  7. Pasang webcam pada dudukan kamera.

Sekarang kepala dan wajah robot kita sudah lengkap.

Langkah 4: PCB khusus

PCB khusus
PCB khusus
PCB khusus
PCB khusus
PCB khusus
PCB khusus

Sekarang saatnya untuk melarutkan beberapa fecl3 dan mengetsa beberapa PCB.

Mengapa saya membuat PCB kustom?

  • Saya tidak memiliki pengontrol servo dynamixel, jadi saya harus membuatnya.
  • Saya harus menghubungkan banyak sensor ke Arduino dengan cara yang lebih bersih, jadi saya membuat perisai untuk Arduino.

Ayo buat.

  1. Unduh file PCB dan cetak pada laminasi berlapis tembaga.
  2. Etsa laminasi berlapis tembaga menggunakan fecl3
  3. Bor lubang 1mm untuk memasang IC dan strip burg.
  4. Untuk membuat header susun perisai meluncur ke bawah sumbat plastik strip burg menuju ujung pin.
  5. Solder basis IC dan strip burg pada PCB.
  6. Saya menyediakan skema untuk tujuan referensi.

Catatan - Gunakan software Express PCB untuk membuka.pcb dan software Express SCH untuk membuka file.sch.

Langkah 5: Catu Daya

Sumber Daya listrik
Sumber Daya listrik
Sumber Daya listrik
Sumber Daya listrik

Mempertahankan daya yang konsisten di berbagai modul elektronik dan motor robot sangat diperlukan. Jika daya turun di bawah nilai batas dalam modul apa pun yang akan menyebabkan kesalahan dan sangat sulit untuk mengidentifikasi alasan di baliknya.

Sumber energi utama dalam robot ini adalah baterai Lipo 3S 2200mAh. Baterai ini memiliki tiga sel, dan tegangan output 11,1 volt. Papan Udoo membutuhkan pasokan 12v, dan papan Arduino membutuhkan pasokan 5v. Jadi saya memilih untuk menggunakan dua regulator tegangan, satu step-up, dan yang lainnya step-down. Satu akan mempertahankan suplai arus ke semua modul 12v, dan yang lainnya akan menjaga suplai arus ke semua modul 5v.

Gambar berisi skema yang digambar tangan.

  • Solder regulator tegangan pada papan PCB berlubang.
  • Solder konektor baterai male T-plug ke input kedua regulator tegangan.
  • Hubungkan output 'Ground' dari kedua regulator.
  • Hubungkan jack barel DC ke masing-masing output regulator. Pertahankan panjang kabel yang cukup sehingga dapat mencapai papan Udoo/Raspberry Pi dan Arduino.
  • Solder burg strip ke masing-masing output regulator sebagai output daya tambahan jika kita membutuhkannya di masa mendatang.
  • Sebelum menghubungkan catu daya ke salah satu modul elektronik, kalibrasikan output masing-masing regulator menggunakan potensiometer trim yang disediakan tepat pada 12v dan 5v.

Langkah 6: Majelis Akhir

Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir

Saatnya sekarang. Setelah begitu banyak langkah saatnya untuk merakit setiap modul bersama-sama. Bergairah? Yah, aku.

  • Potong papan MDF berbentuk persegi panjang dengan dimensi (30cm x 25cm). Papan ini adalah dasar untuk memasang modul elektronik. Saya tidak ingin mengebor banyak lubang di pelat dasar akrilik, jadi saya menggunakan papan MDF. Ini juga membantu menyembunyikan kabel di bawahnya untuk membuat robot kita terlihat rapi dan bersih.
  • Tempatkan modul pada papan MDF dan tandai lubang pemasangan dan bor. Buat beberapa lubang tambahan untuk melewatkan kabel di bawah papan MDF.
  • Saya menetapkan nomor ke beberapa lubang, sehingga menjadi mudah bagi saya untuk merujuknya dan bagi Anda untuk memahami skema pengkabelan.

Sumber Daya listrik:

  • Pasang modul catu daya di papan dan lewati jack 12v dan 5v melalui lubang nomor 1 dan cabut jack 12v melalui lubang nomor 2 dan tarik keluar jack 5v melalui lubang nomor 3.
  • Saya membiarkan baterai longgar untuk saat ini karena saya perlu melepas dan mengisi daya kadang-kadang.

Pengemudi Motor:

  • Tarik keluar kabel yang terhubung ke motor melalui lubang nomor 4 dan hubungkan ke papan driver motor.
  • Motor membutuhkan catu daya 12v untuk berjalan dengan baik, jadi sambungkan pin 12v dan GND driver dengan output regulator tegangan 12v.
  • Hubungkan pin driver motor ke Arduino sesuai dengan kode.

Arduino:

  • Sebelum memasang Arduino, lewati kabel dari tiga sensor ultrasonik melalui panel belakang dan lewati kabel dari tiga sensor ultrasonik yang tersisa melalui panel depan dan tarik keluar melalui lubang nomor 3.
  • Pasang Arduino dan pasang pelindung sensor di atasnya.
  • Saya memberikan nomor ke semua kabel sensor ultrasonik sehingga mudah untuk di-debug jika ada bug. Hubungkan pin sensor ke pelindung mulai dari nomor 1 hingga 6 secara berurutan.
  • Hubungkan colokan listrik 5v ke Arduino.

Pengontrol Servo Dynamixel:

  • Pasang pengontrol servo dynamixel di papan.
  • Hubungkan pin 12v dan GND dari pengontrol servo dengan output regulator tegangan 12v.
  • Hubungkan pin 5v dan GND dari pengontrol servo dengan output regulator tegangan 5v.
  • Hubungkan pin servo controller dan Arduino sesuai dengan kode.
  • Biarkan pin output servo dicabut untuk saat ini. Pasang setelah memasang panel atas robot.

Udoo / Raspberry Pi:

Catatan: Sebelum mengikuti langkah-langkah di bawah ini pastikan Anda telah menginstal OS pada kartu MicroSD dan meletakkannya di papan Udoo / Raspberry Pi. Jika tidak, ikuti tautan untuk menginstal Raspbian di Raspberry Pi atau Udoobuntu di papan Udoo.

  • Pasang Udoo / Raspberry Pi di papan dan sambungkan colokan listrik ke sana.
  • Jika Anda menggunakan Udoo, sambungkan hub USB ke salah satu jack USB-nya.
  • Hubungkan kabel HDMI dan kabel micro USB ke sana. Pin ini digunakan untuk memasok data dan daya ke layar.
  • Hubungkan Arduino ke Udoo / Raspberry Pi menggunakan kabel USB A ke B.

Panel Atas:

  • Pasang panel atas ke panel samping, depan dan belakang robot menggunakan klem L.
  • Hubungkan kabel HDMI, kabel micro USB ke layar dan webcam ke board Udoo/Raspberry Pi.
  • Hubungkan konektor servo tiga pin yang berasal dari servo dynamixel dasar dengan pengontrol servo. Harap perhatikan pin mana yang DATA, GND, dan +12v. Lihat gambar di bagian "Kepala dan Wajah Robot" untuk referensi yang lebih baik. Jika Anda menghubungkan kabel dengan urutan yang berlawanan, ini dapat merusak servos.

Sensor Jarak Ultrasonik:

Bagian terakhir dari teka-teki. Setelah ini, pertemuan kami hampir selesai.

  • Potong enam potong persegi panjang papan MDF/lembar akrilik dengan dimensi (6cm x 5cm).
  • Bor lubang di dalamnya di tempat yang diperlukan.
  • Pasang sensor ultrasonik ke masing-masing papan dan pasang semua papan dengan panel dasar robot.
  • Hubungkan sensor dengan konektor.

Akhirnya, selesai. Hubungkan baterai dan boot Udoo/Raspberry Pi

Langkah 7: Perangkat Lunak

Hardwarenya lengkap, tapi tanpa software, robot ini hanya sebuah kotak. Daftar perangkat lunak yang kita butuhkan adalah

  • KetatVNC
  • Python
  • OpenCV
  • anak salju
  • Beberapa paket python

    • Pyautogui
    • mati rasa
    • pyserial
    • paudio

VNC ketat:

TightVNC adalah paket perangkat lunak kendali jarak jauh gratis. Dengan TightVNC, Anda dapat melihat desktop mesin jarak jauh dan mengontrolnya dengan mouse dan keyboard lokal Anda, sama seperti Anda melakukannya di depan komputer itu.

Jika Anda memiliki keyboard dan mouse tambahan, itu bagus. Jika tidak maka instal TightVNC di laptop Anda dan ikuti langkah-langkah ini.

Untuk pertama kalinya sambungkan keyboard dan mouse ke Udoo / Raspberry Pi. Hubungkan ke jaringan wifi. Buka Terminal dan ketik

$ ifconfig

  • Catat alamat IP robot.
  • Buka TightVNC di laptop Anda. Masukkan alamat IP di bidang yang diperlukan dan tekan Enter. Voila! Anda terhubung sekarang. Gunakan touchpad dan keyboard laptop Anda untuk mengakses robot.

ular piton:

Python adalah bahasa yang sangat populer dan serbaguna, itulah sebabnya saya menggunakannya sebagai bahasa pemrograman utama untuk robot ini.

Di sini saya menggunakan python 2.7 tetapi jika Anda mau, Anda juga dapat menggunakan python 3. Untungnya Python sudah diinstal sebelumnya di OS Udoobuntu dan Raspbian. Jadi kita tidak perlu menginstalnya.

OpenCV:

OpenCV adalah perpustakaan sumber terbuka yang terutama ditujukan untuk visi komputer waktu nyata. OpenCV dengan Python sangat mudah digunakan. Menginstal OpenCV agak rumit, tetapi ada banyak panduan yang sangat mudah diikuti yang tersedia. Favorit pribadi saya adalah yang ini. Panduan ini untuk Raspberry Pi, tetapi Anda juga dapat menggunakannya untuk papan Udoo.

anak salju:

Snowboy adalah perpustakaan yang ditulis oleh Kitt.ai guys, terutama ditujukan untuk pemrosesan ucapan offline/deteksi kata cepat. Hal ini sangat mudah digunakan. Ikuti tautan ini untuk menginstal snowboy di Raspberry Pi. Jika Anda menggunakan papan Udoo, buka proyek ini, yang ditulis oleh saya untuk menginstal snowboy di Udoo.

Paket Python:

Ikuti panduan yang mudah digunakan ini untuk menginstal beberapa paket python.

  1. Pyautogui - Pyautogui adalah paket untuk mensimulasikan penekanan tombol keyboard atau gerakan mouse.
  2. Numpy - ketik "pip install numpy" di shell Linux dan tekan enter. Sesederhana itu.
  3. Pyserial - Pyserial adalah paket yang ditujukan untuk komunikasi serial melalui python. Kami akan menggunakannya untuk berkomunikasi dengan Arduino.

Langkah 8: Kode

Bagian perangkat keras selesai. Bagian perangkat lunak selesai. Sekarang saatnya memberikan jiwa pada robot ini.

Mari kita kode.

Kode untuk robot ini agak rumit, dan saat ini saya menambahkan lebih banyak fungsi ke dalamnya. Oleh karena itu, saya telah meng-host kode di repositori Github saya. Anda dapat memeriksanya dan mengkloning/mengunduh kode dari sana.

Sekarang bukan hanya robot; itu Tinku sekarang.

Langkah 9: Demo

Image
Image

Demo. yeee!!

Ini adalah beberapa demo dasar. Masih banyak yang lebih menarik yang akan datang.

Tetap disini untuk pembaruan lebih lanjut dan jika Anda ragu, jangan ragu untuk berkomentar.

Terima kasih telah membaca proyek saya. Kamu Menakjubkan.

Jika Anda menyukai proyek ini, silakan pilih dalam kontes Mikrokontroler dan Robotika

Selamat Berkreasi;-)

Direkomendasikan: