Keuntungan:
- Kemampuan untuk secara akurat menetapkan parameter pemrosesan sinyal seperti frekuensi pengambilan sampel, jenis filter, dan windowing dengan AI
- Kemampuan untuk menghasilkan kode Python untuk FFT, desain filter dan analisis noise serta memeriksa Nyquist dan aliasing
- Kemampuan untuk memverifikasi interpretasi spektrum yang dihasilkan AI dengan membandingkannya dengan pengukuran dan ekspektasi fisik
Data mentah dari sensor, mikrofon, atau saluran listrik saja seringkali tidak ada artinya; Perlu diolah dan diinterpretasikan pada sumbu frekuensi, amplitudo dan waktu. Mengekstraksi spektrum dengan FFT, memfilter kebisingan, mengenali tanda getaran... Ini semua adalah pemrosesan sinyal dan AI menghasilkan kode Python cepat di area ini, menjelaskan konsep, menghitung koefisien filter. Namun kesalahan parameter kecil dalam pemrosesan sinyal (frekuensi pengambilan sampel salah, jendela salah, kontrol Nyquist dilewati) secara diam-diam merusak keseluruhan analisis; Kode tersebut tidak memberikan kesalahan, hanya memberikan hasil yang salah. Dalam unit ini, kita akan membahas pengaturan parameter yang benar dengan AI, memeriksa kode yang dihasilkan dalam kaitannya dengan Nyquist dan aliasing, dan memverifikasi interpretasi spektrum dengan realitas fisik.
Parameter Dasar: Sampling, Nyquist, Aliasing
Aturan pertama pemrosesan sinyal digital adalah teorema Nyquist-Shannon: untuk merepresentasikan suatu sinyal secara akurat, frekuensi sampling harus setidaknya dua kali komponen frekuensi tertinggi dalam sinyal. Jika tidak, frekuensi tinggi akan muncul sebagai frekuensi rendah (aliasing) dan hal ini tidak dapat dibalik.
Frekuensi tertinggi dalam sinyal: f_max = 2 kHzFrekuensi pengambilan sampel minimum: f_s ≥ 2 · f_max = 4 kHzUntuk meninggalkan margin dalam praktik: f_s ≈ 5 · f_max = 10 kHz dipilihSelain itu, filter anti-aliasing analog adalah WAJIB SEBELUM pengambilan sampel.
Perhatian: Saat AI menyarankan frekuensi pengambilan sampel, pastikan untuk memeriksa apakah AI menyediakan Nyquist berdasarkan komponen tertinggi sinyal Anda. Kode berjalan tanpa kesalahan bahkan pada frekuensi pengambilan sampel yang rendah; tapi hasilnya salah karena aliasing. Selain itu, tidak ada perangkat lunak yang dapat memperbaiki kesalahan ini tanpa filter anti-aliasing di perangkat keras.
Resolusi dan Windowing untuk FFT
Resolusi frekuensi FFT bergantung pada frekuensi pengambilan sampel dan jumlah sampel: Δf = f_s / N. Untuk resolusi yang lebih baik, Anda dapat mengumpulkan lebih banyak sampel atau memilih f_s yang lebih rendah (tanpa melanggar Nyquist). Selain itu, diskontinuitas antara awal dan akhir sinyal menciptakan "kebocoran spektral"; Untuk mengurangi hal ini, fungsi jendela seperti Hann dan Hamming diterapkan.
f_s = 10 kHz, N = 1024 sampelResolusi frekuensi: Δf = 10000/1024 ≈ 9,77 HzTotal waktu perekaman: T = N / f_s = 1024/10000 ≈ 102,4 ms
Menghasilkan dan Memeriksa Kode FFT dan Filter
Tentukan frekuensi pengambilan sampel, jenis jendela, dan skala sumbu secara eksplisit saat meminta kode FFT dari AI. Kode berikut mengeluarkan spektrum amplitudo satu sisi dari suatu sinyal:
import numpy as npfs = 10000 # frekuensi sampling (Hz) - verifikasi Nyquist!N = 1024t = np.arange(N) / fs# sinyal sampel: 500 Hz + 1500 Hzx = np.sin(2*np.pi*500*t) + 0.5*np.sin(2*np.pi*1500*t)w = np.hanning(N) # windowing: mengurangi kebocoran spektral yang dinormalisasi dengan penguatan# periksa frekuensi puncakpeaks = f[np.argsort(mag)[-2:]]print("Frekuensi dominan (Hz):", np.sort(puncak))
Saat memeriksa kode ini Anda akan ditanya: Apakah sumbu frekuensi benar-benar Hz atau indeks sampel (rfftfreq digunakan)? Apakah amplitudo dinormalisasi ke penguatan jendela? Apakah puncak 500 dan 1500 Hz yang diharapkan benar-benar terjadi pada titik tersebut? Jika Anda memverifikasi kode dengan sinyal uji yang diketahui (sinus frekuensi tunggal), Anda akan dengan yakin mengkonfirmasi sumbu dan normalisasi.
Prompt Lemah / Prompt Kuat
LEMAH:"Terapkan FFT ke data ini."(Hasil: frekuensi pengambilan sampel, skala sumbu, dan jendela tidak jelas; kemungkinan besar grafik diplot pada sumbu yang salah.)KUAT:"Terapkan FFT ke sinyal sampel 10 kHz. Sediakan:- Plot sumbu frekuensi dalam Hz (gunakan rfftfreq).- Terapkan jendela Hann dan normalkan amplitudo dengan penguatan jendela.- Cetak dua frekuensi dominan secara digital.- Tandai batas Nyquist (5 kHz) pada grafik. Perhatikan bahwa sumbu akan bergeser jika frekuensi pengambilan sampel salah."
Desain Filter dan Analisis Kebisingan
AI dapat menghasilkan koefisien filter rendah/tinggi/bandpass (FIR/IIR). Tapi frekuensi cut-off, ketertiban dan stabilitas filter harus diperiksa. Hal ini dapat menyebabkan ketidakstabilan tingkat tinggi dan distorsi fase, terutama pada filter IIR. Setelah merancang filter, plot respons frekuensi (seperti Bode) untuk melihat bahwa cutoff berada di tempat yang tepat dan tidak ada riak yang tidak diinginkan pada pita sandi.
Tugas umum dalam analisis derau adalah memisahkan sinyal nyata dari derau. Di sini, evaluasi ambang batas atau filter yang disarankan AI terhadap bandwidth fisik sinyal: jika sinyal Anda yang sebenarnya berada pada 0-500 Hz, komponen pada 2 kHz kemungkinan besar merupakan noise atau interferensi. AI memberikan statistik; Anda membuat interpretasi fisik.
Memvalidasi Interpretasi Spektrum dengan Realitas Fisik
Saat menafsirkan suatu spektrum, AI membuat kesimpulan yang masuk akal namun tidak selalu akurat seperti “Ada puncak pada 50 Hz, ini adalah gangguan jaringan.” Bandingkan komentar ini dengan ekspektasi fisik: Apakah sistem benar-benar memiliki sambungan listrik 50 Hz? Apakah frekuensi putaran dan harmonik yang diharapkan hampir mencapai spektrum getaran motor? Jika memungkinkan, ulangi pengukuran dengan metode kedua (sensor berbeda, perangkat lunak berbeda) dan lihat puncak yang sama.
Petunjuk: Untuk setiap interpretasi spektrum, "fenomena fisik apa yang berhubungan dengan puncak ini?" Ajukan pertanyaan. Jaringan 50/100/150 Hz dan harmoniknya, frekuensi rotasi dan kelipatannya pada mesin yang berputar, dan frekuensi switching pada catu daya switching merupakan tanda yang diketahui. Puncak yang tidak diketahui bisa jadi merupakan peristiwa nyata atau kesalahan pengukuran/pemrosesan; Teliti keduanya.
Kasus Mini
Seorang insinyur R&D mengukur getaran kipas dan meminta AI menafsirkan spektrumnya. “Ada puncak dominan di 1200 Hz, ini kemungkinan terjadi kegagalan bantalan,” kata AI. Insinyur mengontrol kecepatan kipas: 1800 rpm = 30 Hz. Frekuensi transisi bantalan dan sudu diharapkan berada pada nilai tertentu yang sesuai dengan siklus ini; 1200 Hz tidak sesuai dengan semua ini. Ia mengontrol frekuensi pengambilan sampel: sinyal membawa konten hingga 2 kHz, tetapi hanya 2 kHz yang diambil sampelnya, sehingga merupakan pelanggaran Nyquist. Puncak pada 1200 Hz merupakan frekuensi ghost yang dihasilkan dari aliasing. Ketika saya meningkatkan frekuensi sampling menjadi 8 kHz, puncak palsu menghilang. Pelajaran: selalu uji interpretasi spektrum dengan ekspektasi siklus/frekuensi fisik dan pengambilan sampel yang benar.
Kesalahan Umum
- Memilih frekuensi pengambilan sampel tanpa memeriksa kriteria Nyquist; Menghadap aliasing.
- Membiarkan sumbu frekuensi FFT pada indeks sampel, bukan Hz.
- Mengira kebocoran spektral sebagai sinyal tanpa jendela.
- Tidak menormalkan amplitudo berdasarkan jumlah jendela/sampel.
- Tidak memeriksa stabilitas filter IIR dan distorsi fase.
- Menafsirkan puncak spektrum tanpa mengujinya untuk mengantisipasi rpm/frekuensi fisik.
Singkatnya
- Frekuensi pengambilan sampel harus setidaknya dua kali komponen sinyal tertinggi; Jika tidak, aliasing akan mengganggu keseluruhan analisis.
- Resolusi FFT Δf = f_s/N; Pilih N dan f_s sesuai kebutuhan Anda.
- Windowing mengurangi kebocoran spektral; menormalkan amplitudo sesuai dengan penguatan jendela.
- Verifikasi kode AI dengan sinyal pengujian yang diketahui untuk mengonfirmasi sumbu dan normalisasi.
- Periksa stabilitas filter dan respons frekuensi dengan memplotnya.
- Selalu uji interpretasi spektrum dengan ekspektasi frekuensi fisik.
Tugas aplikasi
Hasilkan sinyal uji dengan frekuensi yang diketahui (misalnya 500 Hz + 1500 Hz sinus). Minta FFT dan filter kode dari AI. Kemudian: (1) verifikasi bahwa kriteria Nyquist terpenuhi, (2) periksa apakah puncak FFT benar-benar muncul pada 500 dan 1500 Hz, (3) dengan sengaja mengurangi frekuensi sampling di bawah Nyquist dan amati bagaimana aliasing menciptakan puncak palsu. Catat pengamatan Anda dan parameter yang Anda koreksi.