Isi kandungan:
- Langkah 1: Uji FSR Dengan Arduino
- Langkah 2: Rangka Pelan Lembaga
- Langkah 3: Modelkan Papan di TinkerCad
- Langkah 4: Uji Skrin LCD
- Langkah 5: Uji Rotary Encoder Dengan Skrin LCD
- Langkah 6: Pasang Papan
- Langkah 7: Wire It All Up
- Langkah 8: Selesaikan Pengekodan SEMUA
- Langkah 9: Kesimpulannya
Video: Prototaip Papan Suara Arduino-Raspberry Pi: 9 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:11
Papan suara prototaip yang dibuat dengan Arduino dan Raspberry Pi dimaksudkan untuk menjadi cara mudah untuk memainkan 4 suara atau suara yang berbeza sambil memiliki pilihan untuk menukar set suara dengan tombol dan menampilkan set suara saat ini dengan layar LCD.
* Harap maklum: Kod untuk projek ini 99% lengkap, tetapi tidak berfungsi.
Raspberry Pi mengawal skrin LCD 16x2 dan pengekod putar sementara Arduino membaca input analog dari perintang peka daya (FSR) dan menghantar isyarat ke Arduino untuk memainkan suara. Kami berdua tidak pernah menggunakan Arduino atau Pi sebelum kelas ini, tetapi profesor kami memberi kami semua alat dan panduan yang diperlukan untuk membuat kod dan membina projek ini dengan mudah. TinkerCad, alat pemodelan 3D dalam talian percuma oleh AutoDesk, digunakan untuk memodelkan projek kami.
Bahagian paling sukar dalam projek ini adalah mencari jalan untuk membuat Arduino dan Raspberry Pi berkomunikasi dengan komunikasi bersiri. Pada asalnya kami hanya mahu menggunakan Pi untuk keseluruhan projek, tetapi kami memerlukan Arduino untuk membaca isyarat analog dari FSR. Kami dengan mudah menghantar baris kata atau angka dari Arduino dan memaparkannya di Pi, tetapi di mana masalahnya timbul ketika kami cuba membaca nilai-nilai tersebut ke dalam Python dan menerapkannya ke dalam pernyataan keadaan untuk memprosesnya.
Kemahiran Diperlukan
- Pemahaman ringkas mengenai C / C ++ untuk pengekodan Arduino
- Pemahaman ringkas mengenai pengekodan Python untuk Raspberry Pi
- Pengetahuan tentang bagaimana papan roti disambung
- Kemahiran pemodelan 3D asas
- Keinginan untuk belajar dan memperluas pengaturcaraan, pendawaian, dan membina sesuatu yang agak kemas
Senarai bahagian
1 x Raspberry Pi 3
1 x Elegoo Uno ATAU Arduino Uno
1 x 830 Tie Breadboard
1 x Papan Pemecahan GPIO (RSP-GPIO)
1 x Ribbon Cable untuk Breakout Board
4 x Perintang Sensitif Kekuatan Kecil
1 x Skrin LCD Karakter 16x2 Asas
1 x Modul Pengekod Rotary
24 x wayar lelaki hingga wanita
10 x wayar lelaki hingga lelaki
Perintang 4 x 10k
Potensiometer 1 x 10k
1 x pad lutut busa taman (kedai dolar)
Langkah 1: Uji FSR Dengan Arduino
Kami pertama kali memutuskan untuk mencuba FSR dengan Arduino. FSR menghantar isyarat analog dan oleh itu kami harus menggunakan Arduino kerana Pi tidak menerima analog tanpa litar lain. Kami ingin menguji ambang untuk memastikan bahawa tekanan berada pada tekanan yang baik. Kami mendapati jumlahnya sekitar 150 daripada jumlah keseluruhan 1000. Perancang siri di Arduino IDE sangat membantu untuk langkah ini.
Langkah 2: Rangka Pelan Lembaga
Kami kemudian menyusun dan mengukur rancangan untuk dewan. Kami ingin mempunyai 4 pad untuk memainkan suara, tempat untuk skrin LCD untuk memaparkan kumpulan suara semasa, dan pengekod putar untuk menukar kumpulan suara.
Langkah 3: Modelkan Papan di TinkerCad
Setelah rancangan dibuat, kami membuat model di laman web pemodelan 3D percuma dalam talian yang dipanggil TinkerCad oleh Autodesk. Kami sangat mengesyorkannya bagi anda yang tidak mahu menghabiskan banyak wang untuk perisian pemodelan 3D yang besar kerana mudah digunakan, berasaskan awan, dan mempunyai sokongan penuh untuk pencetakan 3D.
Setelah dimodelkan, kami harus memisahkannya menjadi 2 keping untuk memasangkannya pada pencetak. Ia dicetak dengan sangat baik, tetapi kesilapan saya tidak mengukur saiz skrin LCD dengan baik (jangan membuat kesilapan itu!) Kami telah memuat naik fail. STL sebelah kiri dan kanan jika anda ingin menyemaknya.
Langkah 4: Uji Skrin LCD
Kami telah menggunakan skrin di Arduino dan sangat mudah untuk disiapkan. Walau bagaimanapun, lebih sukar untuk menjalankannya dengan Pi. Dengan beberapa jam penyelesaian masalah di Google dan bermain dengan kabel, akhirnya kami berjaya. Sila lihat kod Python terakhir di akhir untuk melihat bagaimana ia berfungsi. Kami menggunakan beberapa laman web untuk membantu kami menyusunnya dan menulis kodnya. Lihatnya:
learn.adafruit.com/drive-a-16x2-lcd-direct…
www.raspberrypi-spy.co.uk/2012/07/16x2-lcd…
Langkah 5: Uji Rotary Encoder Dengan Skrin LCD
Kami kemudian ingin melihat apakah kami dapat membuat skrin LCD mengubah teksnya ketika pengekod diputar. Pengekod tidak mempunyai jumlah sudut atau putaran yang ditetapkan, jadi dalam kod kami menghitung berapa kali ia dipusingkan mengikut arah jam atau berlawanan arah jam dan membuatnya dikira menjadi 3. Sekiranya ia berlalu, ia akan kembali ke 0, dan jika berada di bawah 0, ia akan naik hingga 3. Angka-angka itu dapat ditetapkan untuk seberapa banyak set bunyi yang anda suka, tetapi kami hanya menguji satu set suara. Pastikan suara anda berada di folder / lokasi yang sama dengan kod Python utama yang sedang dijalankan.
Langkah 6: Pasang Papan
FSR meluncur di bawah empat slot yang berbeza. Kami memusatkan mereka dan mengetuknya. Kami mengesyorkan pita salur atau mungkin juga terpaku kerana pita scotch yang sederhana sangat melekat pada bahan cetak 3D. Selepas perjalanan cepat ke kedai dolar, kami menjumpai alas lutut taman yang lembut namun licin yang dapat kami potong menjadi empat keping untuk digunakan sebagai butang papan. Kami memotongnya sehingga mereka dapat pas dengan pas di tempat mereka sehingga mereka dapat tetap di tempatnya, tetapi juga mudah dikeluarkan jika perlu.
Langkah 7: Wire It All Up
Setelah memasang papan dan meletakkan FSR, pengekod, dan skrin di tempat, kami memasang semuanya. Anda boleh menggunakan 2 papan roti, tetapi kami dapat memuatkan semuanya pada satu. Gambarnya kelihatan seperti huru-hara, tetapi kami membuat rajah skematik dalam program percuma yang disebut Fritzing. Perhatikan bahawa anda boleh menukar pin yang ingin anda lampirkan semuanya, tetapi rajah tersebut sesuai dengan kod kami.
Langkah 8: Selesaikan Pengekodan SEMUA
Ini adalah bahagian yang sukar. Seperti yang dinyatakan dalam intro, kami tidak dapat menyelesaikan bahagian ini. Kodnya ada 99% di sana, tetapi satu bahagian yang tidak berfungsi adalah komunikasi bersiri dari Arduino ke Pi. Kami dapat menghantar maklumat dengan mudah ketika kami menghubungkan Arduino ke Pi dengan kabel USB, tetapi Pi tidak dapat melakukan apa-apa kecuali memaparkan maklumat tersebut di layar. Kami ingin mengetahui butang mana yang ditekan dan membuatnya memainkan suara tertentu, tetapi data yang datang melalui komunikasi tidak dapat dimasukkan ke dalam pernyataan syarat untuk menguji butang apa yang ditekan.
Sila lihat kod yang dilampirkan, nota telah dikomentari dalam kod Python untuk Pi. Kod Arduino mestilah 100%.
Langkah 9: Kesimpulannya
Secara keseluruhan, projek ini merupakan pengalaman pembelajaran yang BESAR untuk kami berdua dan kami berharap penulisan ini dapat memberi inspirasi kepada para pelajar, guru, atau pengedar masa depan untuk projek mereka sendiri dan membimbing mereka dengan belajar dari kesilapan kami. Beri tahu profesor robotik hebat kami yang banyak membantu sepanjang masa kami di kelas dan memberi kami peluang untuk bersenang-senang dan belajar banyak di kelas senior COMP! Terima kasih untuk membaca:)
Disyorkan:
ThreadBoard (Versi Tidak Dicetak 3D): Papan Prototaip Cepat E-Tekstil: 4 Langkah (dengan Gambar)
ThreadBoard (Versi Tidak Dicetak 3D): Papan Prototaip Cepat E-Tekstil: Instruktif untuk versi bercetak 3D ThreadBoard V2 boleh didapati di sini. Versi 1 dari ThreadBoard boleh didapati di sini. Melalui rintangan kos, perjalanan, pandemik, dan halangan lain, anda mungkin tidak mempunyai akses ke pencetak 3D tetapi ingin
The ThreadBoard: Papan Prototaip Cepat E-Tekstil: 5 Langkah (dengan Gambar)
ThreadBoard: Papan Prototaip Cepat E-Tekstil: The Instructable untuk versi ThreadBoard V2 yang tidak dicetak 3D boleh didapati di sini. Versi 1 ThreadBoard boleh didapati di sini. ThreadBoard adalah papan roti magnetik untuk pengkomputeran tertanam yang membolehkan untuk prototaip e-tekstil yang cepat
Papan MXY - Papan Robot Pelukis XY Belanjawan Rendah: 8 Langkah (dengan Gambar)
Papan MXY - Papan Robot Lukisan Plotter XY Belanjawan Rendah: Matlamat saya adalah untuk merancang papan mXY untuk membuat mesin lukisan plotter XY dengan anggaran yang rendah. Oleh itu, saya merancang papan yang memudahkan bagi mereka yang ingin membuat projek ini. Dalam projek sebelumnya, semasa menggunakan 2 pcs motor stepa Nema17, papan ini
ThreadBoard: Papan Prototaip E-Tekstil Mikro: bit: 5 Langkah (dengan Gambar)
The ThreadBoard: Micro: bit E-Textile Prototyping Board: The ThreadBoard adalah papan roti magnetik untuk pengkomputeran yang boleh dipakai yang memungkinkan untuk membuat prototaip litar e-tekstil yang cepat. Motivasi di sebalik ThreadBoard adalah untuk mengembangkan alat yang akan menyesuaikan diri dengan sekumpulan kekangan unik yang e-tekstil c
Papan Suara Arduino Mudah: 5 Langkah (dengan Gambar)
Papan Suara Arduino Mudah: Dalam eksperimen ini, anda akan memahami bagaimana buzzer pasif berfungsi dan bagaimana anda boleh membuat papan suara Arduino yang ringkas. Dengan menggunakan beberapa butang dan memilih nada yang sesuai, anda boleh membuat melodi! Bahagian yang saya gunakan adalah dari Kuman's Arduino U