Daftar Isi:

Prima - Robot yang Memainkan Piano: 13 Langkah
Prima - Robot yang Memainkan Piano: 13 Langkah

Video: Prima - Robot yang Memainkan Piano: 13 Langkah

Video: Prima - Robot yang Memainkan Piano: 13 Langkah
Video: Rush " XYZ " crazy finger "14" 2024, November
Anonim
Prima - Robot yang Memainkan Piano
Prima - Robot yang Memainkan Piano

Gagasan tentang robot yang memainkan alat musik selalu membuat saya terpesona, dan saya selalu ingin membuatnya sendiri. Namun, saya tidak pernah memiliki banyak pengetahuan tentang musik dan alat musik, jadi saya tidak pernah tahu bagaimana sebenarnya saya akan memulainya. Sampai baru-baru ini, saya tertarik untuk membuat musik, mulai mempelajari hal-hal produksi musik, dan setelah mendapatkan keyboard MIDI, saya menyadari bahwa ini bukanlah instrumen yang sulit untuk dimainkan dan saya benar-benar dapat membuat robot yang dapat memainkannya. Jadi, begitulah awal pembuatan Prima.

Saya tidak yakin tentang keberhasilan proyek ini, jadi tidak perlu repot-repot mendokumentasikannya. Tetapi karena ternyata bekerja dengan baik, saya memutuskan untuk membagikan detailnya dengan komunitas Instructables. Ini tidak akan menjadi log pembangunan langkah-ke-langkah, melainkan lebih merupakan pedoman untuk Anda mulai. Saya akan menjelaskan bagaimana setiap bagian dari robot ini bekerja, membagikan gambarnya dan kode untuk Arduino. Semoga itu cukup jika Anda ingin mereplikasi proyek ini.

Dan, desainnya terinspirasi oleh instruksi ini, teriaklah kepada JimRD!

Jadi, mari kita mulai

Langkah 1: Ikhtisar Keseluruhan Proyek

Prima adalah robot yang bisa memainkan keyboard/piano atau alat musik sejenis lainnya. Ini memiliki Arduino Uno sebagai otak, layar LCD untuk output visual dan sensor ultrasonik untuk start tanpa sentuhan. Adaptor daya apa pun yang menghasilkan 5 volt 2 amp harus dapat menyalakannya.

Ini memiliki fitur berikut -

  • Dapat diprogram - Dapat diprogram untuk memainkan komposisi apa pun yang dibatasi dalam satu oktaf.
  • Adjustable Tempo - Tempo yang akan diikuti saat memainkan instrumen dapat diatur dalam kode.
  • Mulai Tanpa Sentuhan - Pengguna dapat memicu permainan hanya dengan menggesekkan tangannya pada sensor, yang akan sangat membantu jika pengguna sibuk memainkan instrumen lain dan ingin Prima bermain bersamanya setelah waktu tertentu. Jamming pemain manusia dengan pemain robot - bahkan ini dapat dicapai juga, dengan bantuan fitur ini.

Langkah 2: Video

Image
Image

Anda dapat menontonnya memainkan keyboard di video.

Langkah 3: Membuat Model 3D

Membuat Model 3D
Membuat Model 3D
Membuat Model 3D
Membuat Model 3D

Setelah menyelesaikan apa yang seharusnya bisa dilakukan, saya mendesain bodi di TinkerCAD sehingga saya bisa mulai membangunnya dengan memiliki gagasan yang jelas tentang apa yang saya lakukan.

Pendekatan ini sangat membantu saya untuk mendapatkan robot yang tampak rapi yang bekerja persis seperti yang dirancang. Meskipun saya harus sedikit memodifikasi desain aslinya saat membangunnya, model 3D tetap menghemat banyak waktu dan tenaga saya. Anda dapat melihat model 3D lebih detail di sini.

Langkah 4: Suku Cadang dan Alat

Bagian dan Alat
Bagian dan Alat
Bagian dan Alat
Bagian dan Alat
Bagian dan Alat
Bagian dan Alat

Untuk bagian elektronik, Anda perlu -

  • Arduino Uno (Jumlah - 1)
  • Layar LCD 16x2 (Jumlah - 1)
  • Adaptor I2C untuk Layar LCD (Jumlah - 1)
  • TowerPro SG90 Micro Servo (Jumlah - 2)
  • Sensor Ultrasonik HC-SR04 (Jumlah - 1)
  • Sakelar Tekan Toggle (Jumlah - 1)
  • Buzzer (Jumlah - 1)
  • Papan Vero/Papan Dot/Papan Perf
  • Kabel jumper Pria ke Pria dan Pria ke Wanita

Untuk membuat tubuh -

  • Lembaran PVC 5 mm
  • Siklus berbicara (Jumlah - 2)
  • Sekrup
  • Tabung pemegang isi ulang pena
  • Cat semprot (Jika Anda ingin mengecatnya)

Alat yang Anda perlukan -

  • Lem super
  • Pistol lem panas
  • Solder Besi
  • Anti-pemotong (A. K. A Pemotong kertas)

Langkah 5: Sirkuit

sirkuit
sirkuit
sirkuit
sirkuit
sirkuit
sirkuit

Bagian sirkuitnya cukup mudah. Saya menjelaskan bagaimana saya melakukan setiap segmen itu -

Segmen LCD - Saya menggunakan adaptor I2C untuk LCD sehingga Arduino dapat berkomunikasi dengannya melalui I2C, yang tidak diperlukan tetapi menyederhanakan rangkaian dan mengurangi jumlah kabel. Anda dapat menggunakan LCD standar dengan sedikit memodifikasi kode.

Segmen daya - Saya membuat rangkaian sederhana pada veroboard yang terdiri dari sakelar tekan sakelar, bel, LED (yang saya putuskan untuk tidak digunakan setelahnya) dan bus daya umum 5V. Bus daya seperti pada, pin 5V dan ground servo, sensor sonar, LCD, dan Arduino semuanya terhubung satu sama lain. Satu pin sakelar dorong terhubung ke saluran 5V+, dan pin lainnya terhubung ke pin VCC catu daya. Saluran ground terhubung ke pin ground catu daya secara langsung. Jadi, Prima dapat dihidupkan/dimatikan menggunakan sakelar. Buzzer dan LED terhubung secara paralel, dan pin VCC-nya masuk ke pin 13 Arduino. Ground mereka terhubung ke ground bus listrik umum.

Modifikasi konektor servo - Karena kabel jumper sering cenderung terputus dari konektor servo, saya memotong VCC dan kabel ground dari kedua servo dan menyoldernya langsung ke bus daya. Untuk pin sinyal, saya menggunakan kabel jumper untuk menghubungkannya ke Arduino.

Sensor sonar - Menyolder dua kabel masing-masing ke VCC dan pin ground dari sensor sonar, yang menuju ke bus daya umum, dan menggunakan kabel jumper untuk menghubungkan pelatuk dan pin gema ke Arduino.

Arduino - Didukung melalui konektor jack barel.

Yang pergi ke mana -

Pin pemicu Sonar Sensor -> pin A2 Arduino

Pin gema Sonar Sensor -> pin A3 Arduino

Pin SDA Adaptor I2C -> pin A4 Arduino

Pin SCL Adaptor I2C -> pin A5 Arduino

VCC Buzzer -> pin D13 Arduino

Pin sinyal servo menekan tombol -> pin D9 Arduino

Pin sinyal servo sumbu X -> pin D8 Arduino

Semua pin VCC dan ground terhubung ke bus daya umum.

Langkah 6: Sonar Sensor Mount

Pemasangan Sensor Sonar
Pemasangan Sensor Sonar

Gambarnya cukup jelas, hanya menempelkan rak berbentuk L di "dinding" dan menempelkan sensor sonar di rak.

Langkah 7: Membuat Rel Sumbu X

Membuat Rel Sumbu X
Membuat Rel Sumbu X
Membuat Rel Sumbu X
Membuat Rel Sumbu X

Konsep rel sumbu X saya pinjam dari mesin CNC. Ini hanya dua jari-jari siklus yang ditempatkan sejajar satu sama lain, dan "dinding" memiliki lubang yang dilalui oleh jari-jari siklus. Di ujung lain dinding, jari-jari siklus direkatkan ke dinding agar tidak bergerak. Jari-jari siklus cukup kuat untuk mendukung platform sumbu X.

Langkah 8: Platform Sumbu X

Platform Sumbu X
Platform Sumbu X
Platform Sumbu X
Platform Sumbu X
Platform Sumbu X
Platform Sumbu X
Platform Sumbu X
Platform Sumbu X

Ini adalah bagian yang menyamping untuk mencapai tombol tertentu dan memiliki servo yang memiliki lengan yang menempel padanya yang menekan tombol.

Ini memiliki dua tabung pemegang isi ulang pena yang direkatkan di bagian bawahnya di mana jari-jari siklus memungkinkannya untuk meluncur di atasnya. Saya mendapatkan tabung ini dari pena, Anda dapat menggunakan apa saja yang sesuai dengan jari-jarinya seperti sedotan.

Kemudian, di tengah lembaran PVC bawah, ada lembaran PVC lain yang berdiri tegak. Ini memiliki potongan lubang di bagian bawah yang sesuai dengan badan servo dan servo dimasukkan melaluinya. Servo telah diamankan menggunakan lem panas.

Servo memiliki lengan yang terhubung dengannya. Ketika robot harus menekan tombol, servo memutar lengan ke bawah menghasilkan penekanan tombol dan memutarnya ke posisi semula sesudahnya.

Langkah 9: Memindahkan Platform Sumbu X

Memindahkan Platform Sumbu X
Memindahkan Platform Sumbu X
Memindahkan Platform Sumbu X
Memindahkan Platform Sumbu X
Memindahkan Platform Sumbu X
Memindahkan Platform Sumbu X

Servo "X axis mover" dipasang pada platform yang ditinggikan yang berada di sisi kiri robot. Platform sumbu X memiliki rak di bagian atas tempat lengan disambung menggunakan sekrup. Di ujung lengan yang lain, lengan lain disambung menggunakan sekrup dan yang ini terhubung ke tanduk servo. Semua sambungan dapat digerakkan, dan servo dapat menggerakkan platform sumbu X pada rel sumbu X dengan memutar klaksonnya ke kiri/kanan yang akan membuat lengan mendorong/menarik platform pada rel.

Sambungan dibuat menggunakan sekrup.

Langkah 10: Kode

Setelah selesai membangun bodi dan sirkuit, unggah kode di Arduino. Letakkan robot sejajar dengan keyboard/piano Platform sumbu x pertama-tama akan mulai bergerak ke kiri dan berhenti di titik tertentu. Gerakkan robot sampai kunci C piano memenuhi titik itu. Ini adalah langkah penting, karena tanpa memposisikan robot dengan cara ini, ia tidak akan memainkan melodi dengan benar. Kemudian nyalakan robot, itu akan mulai memainkan melodi dalam beberapa detik.

Kode ini cukup mendasar dan memiliki ruang untuk perbaikan. Jika Anda ingin robot memainkan melodi Anda sendiri, Anda hanya perlu memasukkannya ke dalam kode yang cukup mudah.

Langkah 11: Melukisnya

Jika Anda ingin melukisnya seperti saya (saya sangat menyarankan untuk melakukannya, itu terlihat lebih baik dicat), buat semua bagian tubuh terlebih dahulu, pastikan dipotong dengan benar. Kemudian, cuci menggunakan sabun agar bebas dari minyak dan kotoran. Orang biasanya mengampelas permukaan sebelum mengecatnya, tetapi di sini Anda tidak perlu melakukannya. Semprotkan satu lapisan terlebih dahulu, beri waktu yang cukup untuk mengering (Beberapa jam), lalu cat lapisan lain. Anda dapat mulai merakit bagian-bagiannya dan merekatkannya setelah cat mengering.

Saya menggunakan cat semprot untuk melukis milik saya

Langkah 12: Menempatkan dan Mengatur Elektronik

Menempatkan dan Menata Barang Elektronik
Menempatkan dan Menata Barang Elektronik
Menempatkan dan Menata Barang Elektronik
Menempatkan dan Menata Barang Elektronik

Saya memasang Arduino ke lembaran PVC dasar dan menempelkan sirkuit daya dan LCD pada papan dasar. Atur kabel dengan lem panas.

Langkah 13: Kesimpulan: Terima kasih telah Membaca Instruksi

Jadi, beginilah cara saya membangun Prima. Semoga log build jelas dan mudah dimengerti. Jika Anda memiliki pertanyaan, jangan ragu untuk meninggalkannya di bagian komentar, saya akan mencoba menjawab sedini mungkin.

Rencana masa depan dengan proyek ini -

  • Pembuatan software untuk pemrograman Prima lebih mudah.
  • Menambahkan fitur ketukan tempo sehingga Anda cukup mengetuk tombol untuk menyesuaikan tempo.
  • Mengganti servo dengan yang lebih tenang dan lebih cepat

Jika Anda membuat ini, berikan gambar di komentar, saya akan senang melihat milik Anda!:)

Direkomendasikan: