Dobici:
- Sposobnost točnog određivanja parametara obrade signala kao što su učestalost uzorkovanja, vrsta filtra i prozor s AI
- Sposobnost generiranja Python koda za FFT, dizajn filtera i analizu šuma i provjeru Nyquista i aliasinga
- Sposobnost provjere interpretacije spektra generirane umjetnom inteligencijom usporedbom s mjerenjem i fizičkim očekivanjima
Neobrađeni podaci samo iz senzora, mikrofona ili dalekovoda često su besmisleni; Potrebno ju je obraditi i interpretirati na osi frekvencije, amplitude i vremena. Izdvajanje spektra pomoću FFT-a, filtriranje buke, prepoznavanje vibracijskog potpisa... Sve je to obrada signala i AI generira brzi Python kod u ovom području, objašnjava koncepte, izračunava koeficijent filtra. Ali mala pogreška parametra u obradi signala (kriva frekvencija uzorkovanja, pogrešan prozor, preskočena Nyquist kontrola) tiho uništava cijelu analizu; Kod ne daje pogreške, samo daje krive rezultate. U ovoj jedinici pokrit ćemo postavljanje ispravnih parametara pomoću AI, provjeru generiranog koda u smislu Nyquista i aliasinga te provjeru interpretacije spektra s fizičkom stvarnošću.
Osnovni parametri: uzorkovanje, Nyquist, aliasing
Prvo pravilo digitalne obrade signala je Nyquist-Shannonov teorem: da bi se točno prikazao signal, 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 Kako bi se ostavila margina u praksi: f_s ≈ 5 · f_max = 10 kHz je odabrano Također, analogni filtar protiv aliasinga OBAVEZNO je PRIJE uzorkovanja.
Oprez: kada AI predloži frekvenciju uzorkovanja, svakako provjerite pruža li Nyquist na temelju najveće komponente vašeg signala. Kod radi bez grešaka čak i pri niskoj frekvenciji uzorkovanja; ali rezultat je pogrešan zbog aliasinga. Osim toga, nijedan softver ne može poništiti ovu pogrešku bez anti-aliasing filtera u hardveru.
Razlučivost i prozori za FFT
Frekvencijska razlučivost FFT-a ovisi o frekvenciji uzorkovanja i broju uzoraka: Δf = f_s / N. Za bolju rezoluciju prikupite više uzoraka ili odaberite niže f_s (bez kvara Nyquista). Dodatno, diskontinuitet između početka i kraja signala stvara "spektralno curenje"; Kako bi se to smanjilo, primjenjuju se funkcije prozora kao što su Hann i Hamming.
f_s = 10 kHz, N = 1024 uzorka Frekvencijska rezolucija: Δf = 10000 / 1024 ≈ 9,77 Hz Ukupno vrijeme snimanja: T = N / f_s = 1024 / 10000 ≈ 102,4 ms
Generiranje i provjera FFT i koda filtera
Eksplicitno navedite učestalost uzorkovanja, vrstu prozora i mjerilo osi kada tražite FFT kod od AI-ja. Sljedeći kod daje jednostrani amplitudni spektar signala:
import numpy kao npfs = 10000 # frekvencija uzorkovanja (Hz) - provjerite Nyquist!N = 1024t = np.arange(N) / fs# signal uzorka: 500 Hz + 1500 Hzx = np.sin(2*np.pi*500*t) + 0,5*np.sin(2*np.pi*1500*t)w = np.hanning(N) # prozoriranje: smanjuje spektralno curenje normalizirano pojačanjem# provjera vršnih frekvencija govori = f[np.argsort(mag)[-2:]]print("Dominantne frekvencije (Hz):", np.sort(peaks))
Kada provjeravate ovaj kod, bit ćete upitani: Je li frekvencijska os stvarno Hz ili se koristi indeks uzorka (rfftfreq)? Je li amplituda normalizirana na prozorsko pojačanje? Događaju li se očekivani vrhovi od 500 i 1500 Hz doista u tim točkama? Ako provjerite kod s poznatim ispitnim signalom (singlefrekvencijski sinus), pouzdano ćete potvrditi os i normalizaciju.
Slab upit / Jak upit
SLABO: "Primijenite FFT na ove podatke." (Rezultat: frekvencija uzorkovanja, skala osi i prozori su nejasni; grafikon je najvjerojatnije iscrtan na krivoj osi.) JAKO: "Primijenite FFT na uzorkovani signal od 10 kHz. Osigurajte: - Iscrtajte os frekvencije u Hz (koristite rfftfreq). - Primijenite Hannov prozor i normalizirajte amplitudu prema prozoru dobitak.- Digitalno ispišite dvije dominantne frekvencije.- Označite Nyquistovo ograničenje (5 kHz) na grafikonu. Imajte na umu da će se os pomaknuti ako je frekvencija uzorkovanja netočna."
Dizajn filtera i analiza buke
AI može generirati koeficijente niskog/visokog/pojasnog filtra (FIR/IIR). Ali moraju se provjeriti granična frekvencija, red i stabilnost filtra. Može uzrokovati nestabilnost visokog reda i fazno izobličenje, posebno u IIR filtrima. Nakon dizajniranja filtra, iscrtajte frekvencijski odziv (poput Bodea) kako biste vidjeli da je granična vrijednost na pravom mjestu i da nema neželjenih valova u propusnom pojasu.
Tipičan zadatak u analizi šuma je odvajanje stvarnog signala od šuma. Ovdje procijenite predloženi prag ili filtar umjetne inteligencije u odnosu na fizičku propusnost signala: ako je vaš stvarni signal na 0-500 Hz, komponenta na 2 kHz najvjerojatnije je šum ili smetnja. AI daje statistiku; Vi donosite fizičku interpretaciju.
Validacija interpretacije spektra s fizičkom stvarnošću
Prilikom tumačenja spektra, umjetna inteligencija donosi razumne, ali ne uvijek točne zaključke poput "Postoji vršna vrijednost na 50 Hz, to je smetnja mreže." Usporedite ove komentare s fizičkim očekivanjima: Ima li sustav stvarno 50 Hz mrežni priključak? Jesu li očekivana rotacijska frekvencija i harmonici gotovo prisutni u spektru vibracija motora? Ako je moguće, ponovite mjerenje drugom metodom (drugi senzor, drugačiji softver) i vidite iste vrhove.
Savjet: Za svaku interpretaciju spektra, "kojem fizičkom fenomenu odgovara ovaj vrh?" Postavite pitanje. Mreža 50/100/150 Hz i njeni harmonici, rotacijska frekvencija i njezini višekratnici u rotirajućim strojevima i sklopna frekvencija u sklopnim izvorima napajanja poznati su potpisi. Nepoznati vrh je ili stvarni događaj ili pogreška mjerenja/obrade; Istražite oboje.
Mini torbica
Inženjer za istraživanje i razvoj mjeri vibracije ventilatora i traži da AI interpretira spektar. "Postoji dominantan vrh na 1200 Hz, to može biti kvar ležaja", kaže AI. Inženjer kontrolira brzinu ventilatora: 1800 o/min = 30 Hz. Očekuje se da će prijelazne frekvencije ležaja i lopatice biti na određenim vrijednostima koje su kompatibilne s ovim ciklusom; 1200 Hz ne odgovara nijednom od ovoga. On kontrolira frekvenciju uzorkovanja: signal prenosi sadržaj do 2 kHz, ali se uzorkuje samo 2 kHz, što znači Nyquistovo kršenje. Vrh na 1200 Hz je ghost frekvencija koja je rezultat aliasinga. Kad povećam frekvenciju uzorkovanja na 8 kHz, lažni vrh nestaje. Lekcija: uvijek testirajte interpretaciju spektra s očekivanim fizičkim ciklusom/frekvencijom i ispravnim uzorkovanjem.
Uobičajene greške
- Odabir frekvencije uzorkovanja bez provjere Nyquistovog kriterija; Previd na aliasing.
- Ostavljanje frekvencijske osi FFT na indeksu uzorka umjesto Hz.
- Zamjena spektralnog curenja kao signala bez prozora.
- Nije normalizirana amplituda prema broju prozora/uzoraka.
- Ne provjerava stabilnost IIR filtra i fazno izobličenje.
- Tumačenje vrhova spektra bez njihovog testiranja u očekivanju fizičkih okretaja/frekvencije.
Ukratko
- Frekvencija uzorkovanja mora biti najmanje dvostruko veća od najveće komponente signala; Inače će aliasing poremetiti cijelu analizu.
- FFT rezolucija Δf = f_s/N; Odaberite N i f_s prema svojim potrebama.
- Prozori smanjuju spektralno curenje; normalizirajte amplitudu prema pojačanju prozora.
- Provjerite AI kod s poznatim testnim signalom kako biste potvrdili os i normalizaciju.
- Provjerite stabilnost filtra i frekvencijski odziv iscrtavanjem.
- Uvijek testirajte interpretaciju spektra s očekivanjem fizičke frekvencije.
Zadatak aplikacije
Generirajte ispitni signal poznate frekvencije (npr. 500 Hz + 1500 Hz sinus). Zahtjev za FFT i kod filtera od AI. Zatim: (1) provjerite je li zadovoljen Nyquistov kriterij, (2) provjerite pojavljuju li se FFT vrhovi stvarno na 500 i 1500 Hz, (3) namjerno smanjite frekvenciju uzorkovanja ispod Nyquista i promatrajte kako aliasing stvara lažni vrh. Zabilježite svoja zapažanja i parametar koji ste ispravili.