
Isi kandungan:
2025 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2025-01-23 15:00

Saya peminat yang sangat hebat yang dapat dipelajari oleh akellyirl mengenai Pengesanan Frekuensi Boleh dipercayai Menggunakan Teknik DSP tetapi kadang kala teknik yang digunakannya tidak cukup baik jika anda mempunyai ukuran bising.
Salah satu penyelesaian yang mudah untuk mendapatkan input yang lebih baik untuk pengesan frekuensi adalah dengan menggunakan beberapa jenis penapis di sekitar frekuensi yang ingin anda kesan.
Malangnya, membuat penapis digital tidak banyak dan banyak matematik yang terlibat. Oleh itu, saya berfikir untuk membuat beberapa jenis program untuk mempermudah pembuatan penapis tersebut, untuk membolehkan sesiapa sahaja menggunakannya dalam projek mereka tanpa menggali butirannya.
Dalam Instructable ini, saya akan mengesan gelombang sinus 50Hz dalam pengukuran yang bising dengan Arduino Uno (Arduino sebenarnya tidak diperlukan).
Langkah 1: Masalahnya

Bayangkan data input yang diukur kelihatan seperti lengkung di atas - cukup bising.
Sekiranya kita membina alat pengesan frekuensi sederhana seperti yang ada di akellyirl's Instructable, hasilnya adalah "-inf" atau dalam kes kod di bawah: "Ya, terlalu banyak bunyi …"
Nota: Saya menggunakan hampir semua kod akellyirl tetapi menambahkan array RawData di bahagian atas yang mengandungi ukuran bising.
Di bawah ini anda dapat menemui keseluruhan kod dalam fail yang disebut "unfiltered.ino".
Langkah 2: Penyelesaiannya

Oleh kerana data input bising tetapi kita tahu frekuensi yang kita cari, kita dapat menggunakan alat yang saya buat yang disebut easyFIR untuk membuat filter Bandpass dan menerapkannya pada data input, yang menghasilkan input yang jauh lebih bersih untuk pengesan frekuensi (gambar di atas).
Langkah 3: EasyFIR

Alat easyFIR cukup mudah digunakan, cukup muat turun repositori GitHub dan jalankan fail easyFIR.py dengan satu contoh ukuran anda (dalam format CSV).
Sekiranya anda membuka fail easyFIR.py, anda akan menemui 5 parameter (lihat gambar di atas) yang boleh dan harus berubah bergantung pada hasil yang ingin anda capai. Selepas anda mengubah 5 parameter, dan melaksanakan fail python, anda akan melihat pekali yang dihitung di terminal anda. Pekali ini sangat penting untuk langkah seterusnya!
Maklumat lebih lanjut mengenai penggunaan yang tepat boleh didapati di sini:
Langkah 4: Menapis

Sekarang jika anda telah mengira pekali penapis yang diperlukan, cukup mudah menerapkan pemfail sebenar ke pengesan frekuensi.
Seperti yang anda lihat dalam gambar di atas, anda hanya perlu menambahkan pekali, fungsi menerapkanFilter dan kemudian menapis ukuran input.
Di bawah ini anda dapat menemui keseluruhan kod dalam fail yang disebut "filtered.ino".
Nota: terima kasih besar kepada Stack Overflow Post ini untuk algoritma aplikasi penapis yang hebat!
Langkah 5: Nikmati

Seperti yang anda lihat, sekarang kita dapat mengesan isyarat 50Hz walaupun dalam persekitaran yang bising?
Jangan ragu untuk menyesuaikan idea dan kod saya dengan keperluan anda. Saya akan sangat berterima kasih untuk memasukkan peningkatan anda!
Sekiranya anda menyukai karya saya, saya sangat menghargai jika anda menyokong karya saya dengan bintang di GitHub!
Terima kasih atas sokongan anda!:)
Disyorkan:
Sensor Sentuh Mudah, Murah & Boleh dipercayai Dengan Hanya 3 Bahagian: 3 Langkah

Sensor Sentuh yang Mudah, Murah & Boleh dipercayai Dengan Hanya 3 Bahagian: Mengawal semua jenis alat elektronik dengan sentuhan jari anda boleh berguna. Dalam arahan ini saya akan menunjukkan kepada anda, bagaimana membina sensor sentuh yang mudah tetapi kuat dan berfungsi dengan sempurna. Yang anda perlukan hanyalah transistor standard dan dua
Alat kawalan jauh SMS yang boleh dipercayai, selamat, disesuaikan (Arduino / pfodApp) - Tidak Perlu Pengekodan: 4 Langkah

Alat kawalan jauh SMS yang boleh dipercayai, selamat, disesuaikan (Arduino / pfodApp) - Tidak Perlu Pengekodan: Kemas kini 6 Julai 2018: Versi 3G / 2G projek ini, menggunakan SIM5320, boleh didapati di sini Kemas kini: 19 Mei 2015: Gunakan pfodParser library Versi 2.5 atau lebih tinggi. Ia menyelesaikan masalah yang dilaporkan kerana tidak membiarkan masa yang cukup untuk perisai untuk menyambung ke
Pengesanan Pencemaran Udara + Penapisan Udara: 4 Langkah

Pengesanan Pencemaran Udara + Penapisan Udara: Pelajar (Aristobulus Lam, Victor Sim, Nathan Rosenzweig dan Declan Loges) dari Sekolah Antarabangsa Swiss Jerman bekerjasama dengan kakitangan MakerBay untuk menghasilkan sistem pengukuran pencemaran udara dan keberkesanan penapisan udara yang bersepadu. Ini
Lebih Selamat Lebih Baik: Menjadikan Stesen Keretapi Lebih Selamat: 7 Langkah

Lebih Selamat Lebih Baik: Menjadikan Stesen Kereta Api Lebih Selamat: Banyak stesen kereta api hari ini tidak selamat kerana kekurangan keselamatan, halangan, dan amaran kereta api masuk. Kami melihat perlunya diperbaiki. Untuk menyelesaikan masalah ini, kami membuat Safer Better. Kami menggunakan sensor getaran, sensor gerakan, dan
Jadikan Shock Kereta RC Anda Lebih pendek untuk Pengendalian yang Lebih Baik pada Kelajuan Tinggi: 5 Langkah

Jadikan Shock Kereta RC Anda Lebih pendek untuk Pengendalian yang Lebih Baik pada Kelajuan Tinggi: Dalam Instruksional ini, saya akan menunjukkan kepada anda cara memendekkan kejutan anda sehingga anda dapat membawa kereta anda lebih dekat ke tanah sehingga anda dapat mengambil putaran kelajuan yang lebih tinggi tanpa mengepakkan. Saya akan menggunakan Instruksional lain mengenai cara melakukan penyelenggaraan kejutan pada kereta anda sehingga