Dobici:
- Sposobnost preciznog uspostavljanja parametara obrade signala kao što su frekvencija uzorkovanja, tip filtera i prozori sa AI
- Sposobnost generiranja Python koda za FFT, dizajna filtera i analize buke i provjere Nyquista i aliasinga
- Sposobnost verifikacije interpretacije spektra generisane veštačkom inteligencijom upoređujući je sa merenjem i fizičkim očekivanjima
Sirovi podaci samo sa senzora, mikrofona ili dalekovoda često su besmisleni; Potrebno ga je obraditi i interpretirati na osi frekvencije, amplitude i vremena. Ekstrahovanje spektra sa FFT, filtriranje šuma, prepoznavanje vibracijskog potpisa... Sve su to obrada signala i AI generiše brzi Python kod u ovoj oblasti, objašnjava koncepte, izračunava koeficijent filtera. Ali mala greška parametra u obradi signala (pogrešna frekvencija uzorkovanja, pogrešan prozor, preskočena Nyquist kontrola) tiho uništava cijelu analizu; Kod ne daje greške, samo daje pogrešne rezultate. U ovoj cjelini ćemo pokriti postavljanje ispravnih parametara pomoću AI, provjeru generiranog koda u smislu Nyquista i aliasinga, te provjeru interpretacije spektra s fizičkom realnošću.
Osnovni parametri: Uzorkovanje, Nyquist, Aliasing
Prvo pravilo digitalne obrade signala je Nyquist-Shannon teorem: da bi se signal precizno predstavio, frekvencija uzorkovanja mora biti najmanje dvostruko veća od komponente najviše frekvencije u signalu. U suprotnom, visoke frekvencije će se pojaviti kao niske frekvencije (aliasing) i to se ne može poništiti.
Najviša frekvencija u signalu: f_max = 2 kHz Minimalna frekvencija uzorkovanja: f_s ≥ 2 · f_max = 4 kHz Da bi se ostavila margina u praksi: f_s ≈ 5 · f_max = 10 kHz je također odabrana.
Oprez: Kada AI predlaže frekvenciju uzorkovanja, obavezno provjerite daje li Nyquist na osnovu najviše komponente vašeg signala. Kod radi bez grešaka čak i pri niskoj frekvenciji uzorkovanja; ali rezultat je pogrešan zbog aliasa. Osim toga, nijedan softver ne može poništiti ovu grešku bez filtera za snižavanje u hardveru.
Rezolucija i prozori za FFT
Frekvencijska rezolucija FFT zavisi od frekvencije uzorkovanja i broja uzoraka: Δf = f_s / N. Za finiju rezoluciju ili prikupljate više uzoraka ili birate niže f_s (bez prekidanja Nyquista). Dodatno, diskontinuitet između početka i kraja signala stvara "spektralno curenje"; Da bi se ovo smanjilo, primjenjuju se funkcije prozora kao što su Hann i Hamming.
f_s = 10 kHz, N = 1024 uzorka Rezolucija frekvencije: Δf = 10000 / 1024 ≈ 9,77 Hz Ukupno vrijeme snimanja: T = N / f_s = 1024 / 10000 ≈ 102,4 ms
Generiranje i provjera FFT i filter koda
Navedite učestalost uzorkovanja, tip prozora i skalu osi eksplicitno kada tražite FFT kod od AI. Sljedeći kod daje jednostrani amplitudski spektar signala:
import numpy kao npfs = 10000 # frekvencija uzorkovanja (Hz) - provjeri Nyquist!N = 1024t = np.arange(N) / fs# uzorak signala: 500 Hz + 1500 Hzx = np.sin(2*np.pi*500*t) + 0,5*np.sin(2*np.pi*1500*t)w = np.hanning(N) # prozor: smanjuje spektralno curenje normalizovano pojačanjem# provjeri vršne frekvencijespeaks = f[np.argsort(mag)[-2:]]print("Dominantne frekvencije (peakssor.)):",(peakssort.):
Prilikom provjere ovog koda bit ćete upitani: Da li je frekvencijska osa stvarno Hz ili se koristi indeks uzorka (rfftfreq)? Je li amplituda normalizirana na pojačanje prozora? Da li se očekivani vrhovi od 500 i 1500 Hz zaista javljaju u tim tačkama? Ako provjerite kod s poznatim test signalom (single frekventni sinus), pouzdano ćete potvrditi os i normalizaciju.
Slaba prompt / jaka prompt
SLABO:"Primijeni FFT na ove podatke."(Rezultat: frekvencija uzorkovanja, skala osi i prozori su nejasni; graf je najvjerovatnije ucrtan na pogrešnoj osi.)JAKO:"Primijenite FFT na uzorkovani signal od 10 kHz. Obezbijedite:- Iscrtajte osu frekvencije u Hz (koristite rfftly Hanamp na normalnom prozoru). dobitak.- Digitalno odštampajte dvije dominantne frekvencije.- Označite Nyquistovu granicu (5 kHz) na grafikonu.
Dizajn filtera i analiza buke
AI može generirati niske/visoke/pojasni koeficijente filtera (FIR/IIR). Ali granična frekvencija, red i stabilnost filtera moraju se provjeriti. Može uzrokovati nestabilnost visokog reda i faznu distorziju, posebno u IIR filterima. Nakon dizajniranja filtera, nacrtajte frekvencijski odziv (slično Bodeu) da vidite da je granična vrijednost na pravom mjestu i da nema neželjenih talasa u propusnom opsegu.
Tipičan zadatak u analizi buke je odvajanje stvarnog signala od šuma. Ovdje procijenite prag ili filter koji je predložila AI u odnosu na fizički opseg signala: ako je vaš stvarni signal na 0-500 Hz, komponenta na 2 kHz je najvjerovatnije šum ili smetnja. AI daje statistiku; Vi pravite fizičku interpretaciju.
Potvrđivanje interpretacije spektra s fizičkom stvarnošću
Prilikom tumačenja spektra, AI pravi razumne, ali ne uvijek tačne zaključke kao što je „Postoji vrh na 50 Hz, ovo je interferencija mreže“. Uporedite ove komentare sa fizičkim očekivanjima: Da li sistem zaista ima mrežnu vezu od 50 Hz? Da li su očekivana frekvencija rotacije i harmonici skoro prisutni u spektru vibracija motora? Ako je moguće, ponovite mjerenje drugom metodom (drugačiji senzor, drugačiji softver) i vidite iste vrhove.
Savjet: Za svaku interpretaciju spektra, "kojoj fizičkoj pojavi odgovara ovaj vrh?" Postavite pitanje. Mreža 50/100/150 Hz i njeni harmonici, frekvencija rotacije i njeni višekratnici u rotirajućim mašinama, te frekvencija prebacivanja u prekidačkim izvorima napajanja su poznati potpisi. Nepoznati vrh je ili stvarni događaj ili greška mjerenja/procesiranja; Istražite oboje.
Mini Case
Inženjer za istraživanje i razvoj mjeri vibraciju ventilatora i daje AI da interpretira spektar. "Postoji dominantni vrh na 1200 Hz, ovo može biti kvar ležaja", kaže AI. Inženjer kontroliše brzinu ventilatora: 1800 o/min = 30 Hz. Očekuje se da će frekvencije prijelaza ležajeva i lopatica biti na određenim vrijednostima kompatibilnim s ovim ciklusom; 1200 Hz ne odgovara nijednom od ovih. Kontroliše frekvenciju uzorkovanja: signal nosi sadržaj do 2 kHz, ali se uzorkuje samo 2 kHz, tako da je Nyquist kršenje. Vrhunac na 1200 Hz je frekvencija duhova koja je rezultat aliasinga. Kada povećam frekvenciju uzorkovanja na 8 kHz, lažni vrh nestaje. Lekcija: uvijek testirajte interpretaciju spektra sa očekivanjem fizičkog ciklusa/frekvencije i ispravnim uzorkovanjem.
Uobičajene greške
- Odabir frekvencije uzorkovanja bez provjere Nyquistovog kriterija; Previdjeti aliasing.
- Ostavljanje FFT frekvencijske ose na indeksu uzorka umjesto Hz.
- Greška spektralnog curenja kao signala bez prozora.
- Nenormaliziranje amplitude prema broju prozora/uzoraka.
- Ne provjerava se stabilnost IIR filtera i fazno izobličenje.
- Tumačenje vrhova spektra bez testiranja u očekivanju fizičkog broja obrtaja/frekvencije.
Ukratko
- Frekvencija uzorkovanja mora biti najmanje dvostruko veća od najveće komponente signala; U suprotnom, aliasing će poremetiti cijelu analizu.
- FFT rezolucija Δf = f_s/N; Odaberite N i f_s prema vašim potrebama.
- Prozor smanjuje spektralno curenje; normalizovati amplitudu prema pojačanju prozora.
- Provjerite AI kod s poznatim test signalom da potvrdite os i normalizaciju.
- Provjerite stabilnost filtera i frekvencijski odziv tako što ćete ga nacrtati.
- Uvijek testirajte interpretaciju spektra uz očekivanje fizičke frekvencije.
Zadatak aplikacije
Generirajte testni signal poznate frekvencije (npr. 500 Hz + 1500 Hz sinus). Zatražite FFT i filter kod od AI. Zatim: (1) provjerite da li je Nyquistov kriterij ispunjen, (2) provjerite da li se FFT vrhovi stvarno pojavljuju na 500 i 1500 Hz, (3) namjerno smanjite frekvenciju uzorkovanja ispod Nyquista i promatrajte kako pseudonim stvara lažni vrh. Zabilježite svoja zapažanja i parametar koji ste ispravili.