Kazanimlar:
- Örnekleme frekansı, filtre tipi ve pencereleme gibi sinyal işleme parametrelerini AI ile doğru kurabilme
- FFT, filtre tasarımı ve gürültü analizi için Python kodunu üretip Nyquist ve aliasing kontrolü yapabilme
- AI'ın ürettiği spektrum yorumunu ölçüm ve fiziksel beklentiyle karşılaştırarak doğrulayabilme
Bir sensörden, mikrofondan veya güç hattından gelen ham veri, tek başına çoğu zaman anlamsızdır; onu frekans, genlik ve zaman ekseninde işleyip yorumlamak gerekir. FFT ile spektrum çıkarmak, gürültüyü filtrelemek, bir titreşim imzasını tanımak... Bunların hepsi sinyal işlemedir ve AI bu alanda hızlı Python kodu üretir, kavramları açıklar, filtre katsayısı hesaplar. Ama sinyal işlemede küçük bir parametre hatası (yanlış örnekleme frekansı, yanlış pencere, atlanan Nyquist kontrolü) tüm analizi sessizce bozar; kod hata vermez, sadece yanlış sonuç verir. Bu ünitede AI ile doğru parametre kurmayı, üretilen kodu Nyquist ve aliasing açısından denetlemeyi ve spektrum yorumunu fiziksel gerçeklikle doğrulamayı işleyeceğiz.
Temel Parametreler: Örnekleme, Nyquist, Aliasing
Sayısal sinyal işlemenin ilk kuralı Nyquist-Shannon teoremidir: bir sinyali doğru temsil etmek için örnekleme frekansı, sinyaldeki en yüksek frekans bileşeninin en az iki katı olmalıdır. Aksi halde yüksek frekanslar düşük frekans gibi görünür (aliasing) ve bu geri döndürülemez.
Sinyaldeki en yüksek frekans: f_max = 2 kHzMinimum örnekleme frekansı: f_s ≥ 2 · f_max = 4 kHzPratikte pay bırakmak için: f_s ≈ 5 · f_max = 10 kHz seçilirAyrıca örneklemeden ÖNCE analog anti-aliasing filtresi ŞART.
Dikkat: AI bir örnekleme frekansı önerdiğinde, sinyalinizin en yüksek bileşenine göre Nyquist'i sağlayıp sağlamadığını mutlaka kontrol edin. Kod, düşük örnekleme frekansında bile hatasız çalışır; ama sonuç aliasing yüzünden yanlıştır. Ayrıca donanımda anti-aliasing filtresi olmadan hiçbir yazılım bu hatayı geri alamaz.
FFT için Çözünürlük ve Pencereleme
FFT'nin frekans çözünürlüğü, örnekleme frekansı ve örnek sayısına bağlıdır: Δf = f_s / N. Daha ince çözünürlük için ya daha çok örnek toplarsınız ya da daha düşük f_s seçersiniz (Nyquist'i bozmadan). Ayrıca sinyalin başı ve sonu arasındaki süreksizlik "spektral sızıntı" yaratır; bunu azaltmak için Hann, Hamming gibi pencere fonksiyonları uygulanır.
f_s = 10 kHz, N = 1024 örnekFrekans çözünürlüğü: Δf = 10000 / 1024 ≈ 9.77 HzToplam kayıt süresi: T = N / f_s = 1024 / 10000 ≈ 102.4 ms
FFT ve Filtre Kodunu Üretmek ve Denetlemek
AI'dan FFT kodu isterken örnekleme frekansını, pencere tipini ve eksen ölçeğini açıkça belirtin. Aşağıdaki kod bir sinyalin tek taraflı genlik spektrumunu çıkarır:
import numpy as npfs = 10000 # örnekleme frekansı (Hz) - Nyquist'i doğrula!N = 1024t = np.arange(N) / fs# örnek sinyal: 500 Hz + 1500 Hzx = np.sin(2*np.pi*500*t) + 0.5*np.sin(2*np.pi*1500*t)w = np.hanning(N) # pencereleme: spektral sızıntıyı azaltırX = np.fft.rfft(x * w)f = np.fft.rfftfreq(N, 1/fs) # frekans ekseni (Hz)mag = np.abs(X) / np.sum(w) * 2 # pencere kazancına göre normalize# tepe frekansları kontrol etpeaks = f[np.argsort(mag)[-2:]]print("Baskın frekanslar (Hz):", np.sort(peaks))
Bu kodu denetlerken sorulacaklar: Frekans ekseni gerçekten Hz mi, yoksa örnek indeksi mi (rfftfreq kullanılmış mı)? Genlik pencere kazancına göre normalize edilmiş mi? Beklenen 500 ve 1500 Hz tepeleri gerçekten o noktalarda mı çıkıyor? Bilinen bir test sinyaliyle (tek frekanslı sinüs) kodu doğrularsanız, ekseni ve normalizasyonu güvenle teyit edersiniz.
Zayıf Prompt / Güçlü Prompt
ZAYIF:"Bu veriye FFT uygula."(Sonuç: örnekleme frekansı, eksen ölçeği ve pencereleme belirsiz;grafik büyük olasılıkla yanlış eksende çizilir.)GÜÇLÜ:"10 kHz örneklenmiş bir sinyale FFT uygula. Şunları sağla:- Frekans eksenini Hz cinsinden çiz (rfftfreq kullan).- Hann penceresi uygula ve genliği pencere kazancına göre normalize et.- Baskın iki frekansı sayısal olarak yazdır.- Nyquist sınırını (5 kHz) grafikte işaretle.Örnekleme frekansı yanlışsa eksenin kayacağını not düş."
Filtre Tasarımı ve Gürültü Analizi
AI, alçak/yüksek/bant geçiren filtre katsayılarını (FIR/IIR) üretebilir. Ama filtrenin kesim frekansı, mertebesi ve kararlılığı kontrol edilmelidir. Özellikle IIR filtrelerde yüksek mertebe kararsızlık ve faz bozulması getirebilir. Filtreyi tasarladıktan sonra frekans yanıtını (Bode benzeri) çizip kesim noktasının doğru yerde olduğunu ve geçiş bandında istenmeyen dalgalanma olmadığını görün.
Gürültü analizinde tipik iş, gerçek sinyali gürültüden ayırmaktır. Burada AI'ın önerdiği eşiği veya filtreyi, sinyalin fiziksel bant genişliğine göre değerlendirin: gerçek sinyaliniz 0-500 Hz'deyse, 2 kHz'deki bir bileşen büyük olasılıkla gürültü ya da girişimdir. AI istatistik verir; fiziksel yorumu siz yaparsınız.
Spektrum Yorumunu Fiziksel Gerçeklikle Doğrulama
AI bir spektrumu yorumlarken "50 Hz'de tepe var, bu şebeke girişimidir" gibi makul ama her zaman doğru olmayan çıkarımlar yapar. Bu yorumları fiziksel beklentiyle karşılaştırın: Sistemde gerçekten 50 Hz şebeke bağlantısı var mı? Bir motorun titreşim spektrumunda beklenen dönüş frekansı ve harmonikleri neredeyse orada mı? Ölçümü mümkünse ikinci bir yöntemle (farklı sensör, farklı yazılım) tekrar edip aynı tepeleri görün.
İpucu: Her spektrum yorumunda "bu tepe hangi fiziksel olaya karşılık geliyor?" sorusunu sorun. 50/100/150 Hz şebeke ve harmonikleri, dönen makinelerde devir frekansı ve katları, anahtarlamalı güç kaynaklarında anahtarlama frekansı bilinen imzalardır. Bilinmeyen bir tepe, ya gerçek bir olaydır ya da bir ölçüm/işleme hatasıdır; ikisini de araştırın.
Mini Vaka
Bir Ar-Ge mühendisi, bir fanın titreşimini ölçüp AI'a spektrum yorumlatıyor. AI, "1200 Hz'de baskın tepe var, bu rulman arızası olabilir" diyor. Mühendis fanın devrini kontrol ediyor: 1800 dev/dak = 30 Hz. Rulman ve kanat geçiş frekansları bu devirle uyumlu belirli değerlerde beklenir; 1200 Hz bunların hiçbirine denk gelmiyor. Örnekleme frekansını kontrol ediyor: sinyal 2 kHz'e kadar içerik taşıyor ama örnekleme yalnızca 2 kHz yapılmış, yani Nyquist ihlali. 1200 Hz'deki tepe, aliasing sonucu ortaya çıkan bir hayalet frekans. Örnekleme frekansını 8 kHz'e çıkarınca sahte tepe kayboluyor. Ders: spektrum yorumunu her zaman fiziksel devir/frekans beklentisiyle ve doğru örneklemeyle sınayın.
Yaygın Hatalar
- Nyquist kriterini kontrol etmeden örnekleme frekansı seçmek; aliasing'i gözden kaçırmak.
- FFT frekans eksenini Hz yerine örnek indeksinde bırakmak.
- Pencereleme yapmadan spektral sızıntıyı sinyal sanmak.
- Genliği pencere/örnek sayısına göre normalize etmemek.
- IIR filtre kararlılığını ve faz bozulmasını kontrol etmemek.
- Spektrum tepelerini fiziksel devir/frekans beklentisiyle sınamadan yorumlamak.
Özetle
- Örnekleme frekansı, sinyalin en yüksek bileşeninin en az iki katı olmalı; yoksa aliasing tüm analizi bozar.
- FFT çözünürlüğü Δf = f_s/N; ihtiyacınıza göre N ve f_s seçin.
- Pencereleme spektral sızıntıyı azaltır; genliği pencere kazancına göre normalize edin.
- AI kodunu bilinen bir test sinyaliyle doğrulayıp eksen ve normalizasyonu teyit edin.
- Filtre kararlılığını ve frekans yanıtını çizerek kontrol edin.
- Spektrum yorumunu daima fiziksel frekans beklentisiyle sınayın.
Uygulama görevi
Bilinen frekanslı bir test sinyali oluşturun (örneğin 500 Hz + 1500 Hz sinüs). AI'dan FFT ve filtre kodu isteyin. Sonra: (1) Nyquist kriterinin sağlandığını doğrulayın, (2) FFT tepelerinin gerçekten 500 ve 1500 Hz'de çıktığını kontrol edin, (3) örnekleme frekansını bilerek Nyquist'in altına düşürüp aliasing'in nasıl sahte tepe yarattığını gözlemleyin. Gözlemlerinizi ve düzelttiğiniz parametreyi not edin.