Isi kandungan:

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: Asekkk๐Ÿ˜€๐Ÿ˜€๐Ÿ˜€ #shorts #pontianak #komedi 2024, November
Anonim
Prima - Robot yang Memainkan Piano
Prima - Robot yang Memainkan Piano

Idea robot memainkan alat muzik selalu memikat saya, dan saya selalu mahu membuatnya sendiri. Namun, saya tidak pernah mempunyai banyak pengetahuan mengenai muzik dan alat muzik, jadi tidak pernah dapat mengetahui bagaimana sebenarnya saya akan memulakannya. Sehingga baru-baru ini, saya berminat untuk membuat muzik, mula mempelajari barang-barang produksi muzik, dan setelah mendapat papan kekunci MIDI, saya menyedari ini bukan alat yang sukar untuk dimainkan dan saya sebenarnya dapat membina robot yang dapat memainkannya. Jadi, begitulah bermulanya pembuatan Prima.

Saya tidak pasti akan kejayaan projek ini, jadi tidak bersusah payah mendokumentasikannya. Tetapi kerana ternyata berjaya, saya telah memutuskan untuk berkongsi butiran dengan komuniti Instructables. Ini bukan log pembuatan langkah-demi-langkah, melainkan lebih banyak panduan untuk memulakan anda. Saya akan menerangkan bagaimana setiap bahagian robot ini berfungsi, berkongsi gambarnya dan kod untuk Arduino. Harap itu akan mencukupi sekiranya anda mahu meniru projek ini.

Dan, reka bentuknya diilhamkan oleh instruksional ini, berteriak kepada JimRD!

Oleh itu, mari kita mulakan

Langkah 1: Tinjauan Keseluruhan Projek

Prima adalah robot yang boleh memainkan papan kekunci / piano atau instrumen berasaskan kunci yang serupa. Ia memiliki Arduino Uno sebagai otak, layar LCD untuk output visual dan sensor ultrasonik untuk permulaan tanpa sentuhan. Mana-mana penyesuai kuasa yang memberikan amp 5 volt 2 harus dapat menghidupkannya.

Ia mempunyai ciri-ciri berikut -

  • Diprogramkan - Boleh diprogramkan untuk memainkan komposisi yang terhad dalam oktaf.
  • Tempo Boleh Diselaraskan - Tempo yang akan diikuti semasa memainkan instrumen boleh diatur dalam kod.
  • Permulaan Tanpa Sentuhan - Pengguna dapat memicu permainan hanya dengan menggesekkan tangannya ke sensor, yang akan sangat membantu jika pengguna sibuk memainkan alat lain dan mahu Prima bermain bersamanya setelah waktu tertentu. Pemain manusia bermain dengan pemain robot - malah ini dapat dicapai juga dengan bantuan ciri ini.

Langkah 2: Video

Image
Image

Anda mungkin menontonnya bermain papan kekunci dalam video.

Langkah 3: Membuat Model 3D

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

Setelah menyelesaikan apa yang boleh dilakukan, saya merancang badan di TinkerCAD sehingga saya dapat mula membinanya dengan mempunyai idea yang jelas tentang apa yang saya lakukan.

Pendekatan ini sangat membantu saya untuk menggunakan robot yang kelihatan kemas dan berfungsi dengan tepat seperti yang dirancang. Walaupun saya sedikit sebanyak perlu mengubah reka bentuk asalnya semasa membuatnya, model 3D tetap menjimatkan banyak masa dan usaha saya. Anda mungkin melihat model 3D dengan lebih terperinci di sini.

Langkah 4: Bahagian dan Alat

Bahagian dan Alat
Bahagian dan Alat
Bahagian dan Alat
Bahagian dan Alat
Bahagian dan Alat
Bahagian dan Alat

Untuk bahagian elektronik, anda memerlukan -

  • Arduino Uno (Kuantiti - 1)
  • Skrin LCD 16x2 (Kuantiti - 1)
  • Adaptor I2C untuk Skrin LCD (Kuantiti - 1)
  • Servo Mikro TowerPro SG90 (Kuantiti - 2)
  • Sensor Ultrasonik HC-SR04 (Kuantiti - 1)
  • Toggle Push Switch (Kuantiti - 1)
  • Buzzer (Kuantiti - 1)
  • Vero board / Dot Board / Perf Board
  • Kabel jumper Lelaki ke Lelaki dan Lelaki ke Perempuan

Untuk membuat badan -

  • Lembaran PVC 5 mm
  • Cycle berbicara (Kuantiti - 2)
  • Skru
  • Tiub pemegang isi semula pen
  • Semburkan cat (Sekiranya anda mahu mengecatnya)

Alat yang anda perlukan -

  • Superglue
  • Senapang Gam Panas
  • Besi pematerian
  • Anti-pemotong (A. K. A Kertas-pemotong)

Langkah 5: Litar

Litar
Litar
Litar
Litar
Litar
Litar

Bahagian litarnya agak mudah. Saya menerangkan bagaimana saya melakukan setiap segmennya -

Segmen LCD - Saya menggunakan penyesuai I2C untuk LCD sehingga Arduino dapat menyampaikannya melalui I2C, yang tidak diperlukan tetapi mempermudahkan litar dan mengurangkan bilangan wayar. Anda boleh menggunakan LCD standard dengan sedikit mengubah kod.

Segmen kuasa - Saya membuat litar sederhana di papan kenyataan yang terdiri daripada suis tekan togel, buzzer, LED (yang saya memutuskan untuk tidak menggunakannya selepas itu) dan bas kuasa biasa 5V. Power bus seperti dalam, pin 5V dan ground servos, sensor sonar, LCD dan Arduino masing-masing saling terhubung. Satu pin suis tekan disambungkan ke garis 5V +, dan satu lagi pin disambungkan ke pin VCC bekalan kuasa. Talian tanah disambungkan ke pin ground bekalan kuasa secara langsung. Jadi, Prima boleh dihidupkan / dimatikan menggunakan suis. Bel dan LED disambungkan secara selari, dan pin VCC dari mereka menuju ke pin 13 Arduino. Tanah mereka dihubungkan ke tanah bas biasa.

Pengubahsuaian penyambung servos - Oleh kerana wayar pelompat sering cenderung terputus dari penyambung servo, saya memotong VCC dan wayar arde dari kedua-dua servo dan menyoldernya terus ke bas kuasa. Walau bagaimanapun, untuk pin isyarat, saya menggunakan wayar jumper untuk menghubungkannya ke Arduino.

Sensor Sonar - Memasukkan dua wayar masing-masing ke VCC dan pin ground sensor sonar, yang masuk ke bas kuasa biasa, dan menggunakan kabel jumper untuk menghubungkan pemicu dan pin gema ke Arduino.

Arduino - Dikuasakan melalui penyambung bicu tong.

Yang menuju ke mana -

Pin pencetus Sonar Sensor -> pin A2 Arduino

Pin gema Sonar Sensor -> pin A3 Arduino

Pin SDA Adaptor I2C -> pin A4 Arduino

Pin SCL Adapter I2C -> Pin A5 Arduino

Buzzer's VCC -> pin D13 Arduino

Pin isyarat servo menekan kekunci -> pin D9 Arduino

Pin isyarat servo paksi X -> pin D8 Arduino

Semua pin VCC dan ground disambungkan ke bas kuasa biasa.

Langkah 6: Pemasangan Sensor Sonar

Pemasangan Sensor Sonar
Pemasangan Sensor Sonar

Gambarnya cukup jelas, hanya terpaku rak berbentuk L di "dinding" dan terpasang sensor sonar panas di rak.

Langkah 7: Membuat Rel Paksi X

Membuat Rel Paksi X
Membuat Rel Paksi X
Membuat Rel Paksi X
Membuat Rel Paksi X

Saya meminjam konsep rel sumbu X dari mesin CNC. Cuma dua putaran kitaran diletakkan selari antara satu sama lain, dan "dinding" mempunyai lubang yang melaluinya. Di hujung dinding yang lain, jari-jari siklus terpaku panas ke dinding sehingga tidak bergerak. Ujung kitaran cukup kuat untuk menyokong platform paksi X.

Langkah 8: Platform Axis X

Platform X Axis
Platform X Axis
Platform X Axis
Platform X Axis
Platform X Axis
Platform X Axis
Platform X Axis
Platform X Axis

Ini adalah bahagian yang bergerak ke samping untuk mencapai kunci tertentu dan mempunyai servo yang mempunyai lengan yang melekat padanya yang menekan kekunci.

Ia mempunyai dua tiub penahan isi ulang pen yang dilekatkan panas di bahagian bawahnya yang melintasi jari-jari siklus yang membolehkannya meluncur pada mereka. Saya mendapatkan tabung ini dari pen, anda mungkin menggunakan apa sahaja yang sesuai dengan jari seperti minum straw.

Kemudian, di tengah kepingan PVC bawah, ada kepingan PVC lain yang berdiri tegak. Ia mempunyai lubang di bahagian bawah yang sesuai dengan badan servo dan servo dimasukkan ke dalamnya. Servo telah diamankan menggunakan lem panas.

Servo mempunyai lengan yang disambungkan kepadanya. Apabila robot harus menekan kekunci, servo memutar lengan ke bawah sehingga menghasilkan kekunci dan memutarnya ke kedudukan sebelumnya selepas itu.

Langkah 9: Memindahkan Platform Paksi X

Menggerakkan Platform Paksi X
Menggerakkan Platform Paksi X
Menggerakkan Platform Paksi X
Menggerakkan Platform Paksi X
Menggerakkan Platform Paksi X
Menggerakkan Platform Paksi X

Servo "X axis mover" dilampirkan ke platform tinggi yang berada di sebelah kiri robot. Platform sumbu X mempunyai rak di bahagian atas di mana lengan disambungkan menggunakan skru. Di hujung lengan yang lain, lengan yang lain disambung menggunakan skru dan yang satu ini disambungkan ke servo horn. Semua sendi boleh bergerak, dan servo dapat menggerakkan platform sumbu X pada rel paksi X dengan memutar tanduknya ke kiri / kanan yang akan membuat lengan mendorong / menarik platform di rel.

Sendi dibuat menggunakan skru.

Langkah 10: Kod

Setelah selesai membina badan dan litar, muat naik kod di Arduino. Letakkan robot selari dengan papan kekunci / piano Platform sumbu x akan mula bergerak ke arah kiri dan berhenti pada titik tertentu. Gerakkan robot sehingga kunci C piano memenuhi tahap itu. Ini adalah langkah penting, kerana tanpa meletakkan robot dengan cara ini, ia tidak akan memainkan melodi dengan betul. Kemudian hidupkan robot, ia akan mula memainkan melodi dalam beberapa saat.

Kodnya cukup asas dan mempunyai ruang untuk diperbaiki. Sekiranya anda mahu robot memainkan melodi anda sendiri, anda hanya perlu memasukkannya ke dalam kod yang cukup mudah.

Langkah 11: Melukisnya

Sekiranya anda ingin melukisnya seperti saya (saya sangat menyarankan untuk melakukannya, ia kelihatan lebih baik dicat), buat semua bahagian badan terlebih dahulu, pastikan ia dipotong dengan betul. Kemudian, basuh dengan sabun sehingga bebas dari minyak dan kotoran. Orang biasanya mengoles permukaannya sebelum melukisnya, tetapi di sini anda tidak perlu. Semburkan lapisan pada mereka terlebih dahulu, berikan masa yang cukup untuk mengeringkan (Beberapa jam), kemudian cat lapisan lain. Anda mungkin mula memasang bahagian dan menempelkannya bersama-sama setelah cat kering.

Saya menggunakan cat semburan untuk melukis tambang

Langkah 12: Meletakkan dan Menyusun Elektronik

Meletakkan dan Menyusun Elektronik
Meletakkan dan Menyusun Elektronik
Meletakkan dan Menyusun Elektronik
Meletakkan dan Menyusun Elektronik

Saya mengacukan Arduino ke kepingan PVC asas dan terpaku panas kedua litar kuasa dan LCD di papan asas. Menyusun wayar dengan gam panas.

Langkah 13: Kesimpulan: Terima kasih kerana Membaca Arahan

Jadi, inilah cara saya membina Prima. Semoga log binaannya jelas dan senang difahami. Sekiranya anda mempunyai sebarang pertanyaan, silakan tinggalkan di bahagian komen, saya akan cuba membalas seawal mungkin.

Rancangan masa depan dengan projek ini -

  • Membuat perisian untuk memprogram Prima dengan lebih mudah.
  • Menambah fitur tempo tapping sehingga anda hanya dapat mengetuk butang untuk menyesuaikan tempo.
  • Tukar servo dengan yang lebih senyap dan pantas

Sekiranya anda membina ini, jatuhkan gambar dalam komen, saya ingin melihatnya!:)

Disyorkan: