Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi. Baca selengkapnya.

Raspberry Pi Pico adalah papan mikrokontroler murah yang memudahkan pemula untuk memulai proyek elektronik dan mempelajari cara membuat kode.

Untuk proyek ini, Anda akan mempelajari cara membaca sinyal analog dari potensiometer dan mengubahnya menjadi PWM (modulasi lebar-pulsa) sinyal untuk memanipulasi frekuensi, atau nada, bel dengan bantuan MicroPython kode.

Bagian Apa Yang Dibutuhkan?

Proyek ini didasarkan pada Kit Penemu Kitronik untuk Raspberry Pi Pico. Semua komponen elektronik yang diperlukan sudah termasuk dalam kit; namun, ini adalah komponen umum yang mungkin Anda miliki:

  • Bel elemen piezo
  • Potensiometer putar
  • 7x Kabel jumper pria-pria
  • Raspberry Pi Pico dengan pin header GPIO yang disolder
  • Papan tempat memotong roti

Jika Anda baru mengenal modulasi lebar-pulsa (PWM) dan potensiometer, pertama-tama lihat panduan kami di

instagram viewer
cara menggunakan potensiometer dengan Raspberry Pi Pico Anda, yang menguraikan cara menggunakannya untuk mengatur kecerahan LED dengan PWM.

Majelis yang Diperlukan

Satu kabel jumper (kuning pada foto) menghubungkan sisi kiri potensiometer ke rel positif (+) papan tempat memotong roti. Kabel jumper lain menghubungkan sisi kanan potensiometer ke sisi negatif (-) papan tempat memotong roti. Dari pin tengah potensiometer, Anda perlu menjalankan kabel jumper ke pin GP26/A0 di Pico.

Bel piezo harus memiliki satu kabel dari kaki negatifnya ke rel papan tempat memotong roti negatif dan kemudian koneksi lain dari kaki positifnya ke pin GP15 pada Raspberry Pi Pico.

Anda juga harus menjalankan kabel jumper dari pin GND di Pico ke rel negatif di papan tempat memotong roti, untuk membumikannya. Kabel jumper lain akan menghubungkan pin 3V3 Out pada Pico ke rel positif papan tempat memotong roti, untuk memberi daya pada komponen.

Buat Kode

Anda dapat mengambil kode dari Repositori MUO GitHub. Unduh file MicroPython bernama piezo-buzzer.py dan kemudian muat ini ke Pico Anda melalui komputer yang terhubung dengan USB yang menjalankan Thonny IDE. Lihat caranya mulai dengan MicroPython di Raspberry Pi Pico untuk rincian.

Berbagai bagian kode melakukan hal berikut:

  • Di bagian atas, kami mengimpor yang diperlukan mesin, matematika, Dan waktu modul MicroPython.
  • A bel variabel kemudian ditugaskan ke pin GP15 sebagai output PWM.
  • A potensiometer variabel ditugaskan ke analog-to-digital converter (ADC) pada pin GP26/A0 Pico.
  • Kami mendefinisikan a skala() fungsi yang menggunakan fungsi matematika untuk mengonversi rentang gerakan potensiometer menjadi output untuk buzzer.
  • Itu sementara: Benar infinite loop membaca input potensiometer, lalu menggunakan skala berfungsi untuk mengubahnya. Setelah memeriksa bahwa itu tidak berubah terlalu banyak dari frekuensi sebelumnya, kemudian mengirimkan perhitungannya frekuensi ke buzzer menggunakan PWM (pulse-width modulation).

Singkatnya, ada ratusan pulsa yang dikirim per detik dan nada buzzer akan bergeser antara 120Hz dan 5kHz saat potensiometer diputar searah jarum jam atau berlawanan arah jarum jam. Memutar potensiometer mengubah voltase yang dibaca oleh pin input analog Pico, yang pada gilirannya digunakan untuk mengatur frekuensi buzzer menggunakan PWM.

Jalankan kode dari Thonny (klik ikon play atau tekan F5 pada keyboard Anda) dan mencobanya sendiri. Setelah dijalankan pertama kali, apakah perubahan kode akan memengaruhi hasil fisik? Misalnya, apa yang terjadi jika Anda mengubah jangkauan (0 hingga 65535)? Bagian kode ini terletak tepat di bawah sementara Benar: Dimana frekuensi didefinisikan.

Mengatur Nada

Jika Anda berjiwa petualang, Anda mungkin ingin mencoba menggunakan buzzer untuk menghasilkan nada musik menggunakan alat musik martinkooij pi-pico-nada perpustakaan di GitHub. Secara default, perpustakaan ini akan menghasilkan gelombang sinus; generator empat nada dapat berjalan pada empat pin Pico yang berbeda sesuai pilihan Anda. Perhatikan bahwa proyek ini didasarkan pada C++ menggunakan Raspberry Pi Pico SDK, bukan MicroPython, tetapi instruksi lengkap diberikan di readme GitHub.

Dengungan Pico Electronics

Selamat: Anda telah mempelajari cara membaca input analog dari potensiometer dan mengubahnya menjadi sinyal PWM untuk mengontrol nada buzzer. Potensiometer adalah perangkat input serbaguna untuk elektronik. Buzzer piezo adalah komponen praktis lainnya: dengan penambahan sensor gerak inframerah PIR, misalnya, Anda dapat mendeteksi keberadaan penyusup dan membunyikan alarm.