Isi kandungan:
Video: Pwm2pwm: 4 Langkah
2025 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2025-01-10 13:48
Tukar isyarat PWM input ke output isyarat PWM lain dengan Encoder.
Projek ini lahir semasa saya membeli pemotong laser pertama saya. Tidak mudah untuk menetapkan kuasa PWM, pada kali pertama, mengikut bahan yang ingin anda potong. Oleh itu, saya ingin membuat peranti kecil untuk menukar kuasa semasa pelaksanaan.
Langkah 1: Senarai Komponen
Untuk projek ini, anda memerlukan:
- 1 x Paparan Oled, dalam kes saya I2C
- 1 x Arduino, dalam kes saya arduino mini pro untuk dimensi kecil.
- 1 x Perapi dengan butang.
- 3 x 10k perintang, 2 untuk penarik perapi dan satu untuk penarik ke bawah.
Dalam gambar langkah ini, anda melihat Arduino mini pro lain, yang disebut laser, kerana saya mensimulasikan kemahiran pengawal laser (pwm dalam isyarat) dengan Arduino ini.
Langkah 2: Sambungan
Ingatlah untuk menyambungkan 3 perintang, pull-up dan pull-down, dalam skema ini.
Untuk pertama kalinya, saya mengesyorkan kepada anda untuk menyambungkan Arduino kedua (disebut laser pada langkah sebelumnya) untuk menguji sama ada kod dan sambungannya juga berfungsi.
Sekiranya anda lebih biasa dengan pandangan skematik, buka pwmTOpwm.svg.
Langkah 3: Lakaran Arduino
Anda boleh menyalin kod saya dengan mudah dari halaman GitHub:
Kemahiran utama kod ini adalah penyatuan arahan "pulseIn", maklumat lanjut:
Apabila anda cuba mengukur isyarat PWM masuk ke Mikrokontroler, anda perlu mengira berapa lama isyarat itu tetap naik (atau turun) dalam tempoh tersebut. Anda boleh menggunakan perintah "pulseIn".
Sekiranya anda cuba memplot isyarat pulseIn, anda dapat melihat sesuatu yang tidak stabil.
Untuk mengatasi masalah ini, kita perlu menggunakan penapis median, dalam kes saya purata bergerak eksponensial (EMA).
Anda boleh mencuba penapis yang sejuk dan mudah ini dengan contoh ini:
Jangan risau, penapis sudah terintegrasi dalam kod: h.
Sekiranya anda menggunakan Arduino kedua (laser), anda boleh memuat naik contoh arduino ini:
Langkah 4: PCB
Saya ingin membuat PCB untuk projek ini, dengan KiCad, dan membagikannya.
Sekiranya saya membuat perubahan pada PCB, saya akan membaginya di halaman GitHub.