Печалби:
- Възможност за точно установяване на параметри за обработка на сигнала като честота на вземане на проби, тип филтър и прозорци с AI
- Възможност за генериране на код на Python за FFT, дизайн на филтри и анализ на шума и проверка на Nyquist и псевдоним
- Възможност за проверка на генерираната от изкуствен интелект интерпретация на спектъра чрез сравняване с измерване и физическо очакване
Суровите данни от сензор, микрофон или електропровод сами по себе си често са безсмислени; Необходимо е да се обработи и интерпретира по оста на честота, амплитуда и време. Извличане на спектър с FFT, филтриране на шум, разпознаване на вибрационна сигнатура... Всичко това е обработка на сигнала и AI генерира бърз Python код в тази област, обяснява концепции, изчислява коефициента на филтъра. Но малка грешка в параметъра при обработката на сигнала (грешна честота на вземане на проби, грешен прозорец, пропусната контрола на Найкуист) тихо съсипва целия анализ; Кодът не дава грешки, той просто дава грешни резултати. В този модул ще разгледаме настройването на правилните параметри с AI, проверката на генерирания код по отношение на Nyquist и псевдонимите и проверката на интерпретацията на спектъра с физическата реалност.
Основни параметри: семплиране, Nyquist, псевдоним
Първото правило на цифровата обработка на сигнала е теоремата на Найкуист-Шанън: за да се представи точно сигнал, честотата на дискретизация трябва да бъде най-малко два пъти най-високата честота на компонента в сигнала. В противен случай високите честоти ще се появят като ниски честоти (псевдоним) и това не може да бъде обърнато.
Най-висока честота в сигнала: f_max = 2 kHz Минимална честота на семплиране: f_s ≥ 2 · f_max = 4 kHz За да оставите граница на практика: f_s ≈ 5 · f_max = 10 kHz е избрано Също така, аналоговият филтър за антиалиасинг е ЗАДЪЛЖИТЕЛЕН ПРЕДИ семплирането.
Внимание: Когато AI предложи честота на семплиране, не забравяйте да проверите дали осигурява Nyquist въз основа на най-високия компонент на вашия сигнал. Кодът работи без грешки дори при ниска честота на семплиране; но резултатът е грешен поради псевдоним. Освен това нито един софтуер не може да отмени тази грешка без филтър за антиалиасинг в хардуера.
Резолюция и прозорци за FFT
Честотната разделителна способност на FFT зависи от честотата на вземане на проби и броя на пробите: Δf = f_s / N. За по-фина резолюция или събирате повече проби, или избирате по-ниски f_s (без да нарушавате Nyquist). Освен това, прекъсването между началото и края на сигнала създава "спектрално изтичане"; За да се намали това, се прилагат прозоречни функции като Hann и Hamming.
f_s = 10 kHz, N = 1024 проби Честотна разделителна способност: Δf = 10000 / 1024 ≈ 9,77 Hz Общо време на запис: T = N / f_s = 1024 / 10000 ≈ 102,4 ms
Генериране и проверка на FFT и филтърен код
Посочете изрично честотата на вземане на проби, типа на прозореца и мащаба на оста, когато изисквате FFT кода от AI. Следният код извежда едностранния амплитуден спектър на сигнал:
импортирайте numpy като npfs = 10000 # честота на вземане на проби (Hz) - проверете Nyquist!N = 1024t = np.arange(N) / fs# примерен сигнал: 500 Hz + 1500 Hzx = np.sin(2*np.pi*500*t) + 0,5*np.sin(2*np.pi*1500*t)w = np.hanning(N) # прозорци: намалява спектралното изтичане, нормализирано от усилването# проверка на пиковите честотиspeaks = f[np.argsort(mag)[-2:]]print("Доминиращи честоти (Hz):", np.sort(peaks))
Когато проверявате този код, ще бъдете попитани: честотната ос наистина ли е Hz или се използва примерният индекс (rfftfreq)? Нормализирана ли е амплитудата спрямо усилването на прозореца? Очакваните пикове от 500 и 1500 Hz наистина ли се появяват в тези точки? Ако проверите кода с известен тестов сигнал (едночестотен синус), вие уверено ще потвърдите оста и нормализацията.
Слаба подкана / Силна подкана
СЛАБО: „Приложете FFT към тези данни.“ (Резултат: честотата на дискретизация, мащабът на осите и прозорците са неясни; графиката най-вероятно е начертана на грешната ос.) СИЛНО: „Приложете FFT към 10 kHz дискретизиран сигнал. Осигурете: – Начертайте честотната ос в Hz (използвайте rfftfreq). – Приложете прозореца на Hann и нормализирайте амплитудата чрез прозореца усилване.- Отпечатайте двете доминиращи честоти цифрово.- Маркирайте границата на Найкуист (5 kHz) на графиката. Имайте предвид, че оста ще се измести, ако честотата на дискретизация е неправилна."
Проектиране на филтри и анализ на шума
AI може да генерира коефициенти на нисък/висок/лентов филтър (FIR/IIR). Но честотата на прекъсване, редът и стабилността на филтъра трябва да бъдат проверени. Може да причини нестабилност от висок порядък и фазово изкривяване, особено в IIR филтри. След проектирането на филтъра начертайте честотната характеристика (подобна на Bode), за да видите, че прекъсването е на правилното място и няма нежелана вълна в лентата на пропускане.
Типичната задача при анализа на шума е да се отдели реалният сигнал от шума. Тук оценете предложения от AI праг или филтър спрямо физическата честотна лента на сигнала: ако вашият реален сигнал е при 0-500 Hz, компонент при 2 kHz най-вероятно е шум или смущение. AI дава статистика; Вие правите физическата интерпретация.
Валидиране на интерпретацията на спектъра с физическата реалност
Когато интерпретира спектър, AI прави разумни, но не винаги точни изводи, като например „Има пик при 50 Hz, това е смущение в мрежата.“ Сравнете тези коментари с физическото очакване: системата наистина ли има 50 Hz мрежова връзка? Очакваната честота на въртене и хармониците почти ли са в спектъра на вибрациите на двигателя? Ако е възможно, повторете измерването с втори метод (различен сензор, различен софтуер) и вижте същите пикове.
Подсказка: За всяка интерпретация на спектъра, "на какво физическо явление отговаря този пик?" Задайте въпроса. 50/100/150 Hz мрежа и нейните хармоници, честотата на въртене и нейните кратни във въртящите се машини и честотата на превключване в импулсните захранвания са известни сигнатури. Неизвестен пик е или реално събитие, или грешка при измерване/обработка; Проучете и двете.
Мини калъф
Инженер по научноизследователска и развойна дейност измерва вибрациите на вентилатор и кара AI да интерпретира спектъра. „Има доминиращ пик при 1200 Hz, това може да е повреда в лагера“, казва AI. Инженерът контролира скоростта на вентилатора: 1800 rpm = 30 Hz. Очаква се честотите на преход на лагера и лопатката да бъдат на определени стойности, съвместими с този цикъл; 1200 Hz не отговарят на нито едно от тези. Той контролира честотата на семплиране: сигналът носи съдържание до 2 kHz, но само 2 kHz се семплират, така че нарушение на Nyquist. Пикът при 1200 Hz е призрачна честота в резултат на псевдоним. Когато увелича честотата на семплиране до 8 kHz, фалшивият пик изчезва. Урок: винаги тествайте интерпретацията на спектъра с очаквания физически цикъл/честота и правилно вземане на проби.
Често срещани грешки
- Избор на честота на дискретизация без проверка на критерия на Найкуист; Пренебрегване на псевдонимите.
- Оставяне на честотната ос на FFT при индекса на извадката вместо Hz.
- Погрешно приемане на спектрално изтичане като сигнал без прозорец.
- Не се нормализира амплитудата по брой прозорци/извадки.
- Не се проверява стабилността на IIR филтъра и фазовото изкривяване.
- Интерпретиране на пиковете на спектъра без тестването им в очакване на физически обороти/честота.
В обобщение
- Честотата на дискретизация трябва да бъде най-малко два пъти най-високата компонента на сигнала; В противен случай псевдонимът ще наруши целия анализ.
- FFT резолюция Δf = f_s/N; Изберете N и f_s според вашите нужди.
- Прозорецът намалява спектралното изтичане; нормализира амплитудата според усилването на прозореца.
- Проверете AI кода с известен тестов сигнал, за да потвърдите оста и нормализирането.
- Проверете стабилността на филтъра и честотната характеристика, като ги начертаете.
- Винаги тествайте интерпретацията на спектъра с очакване на физическа честота.
Задача за приложение
Генерирайте тестов сигнал с известна честота (напр. 500 Hz + 1500 Hz синус). Поискайте FFT и филтърен код от AI. След това: (1) проверете дали критерият на Nyquist е изпълнен, (2) проверете дали пиковете на FFT действително се появяват при 500 и 1500 Hz, (3) умишлено намалете честотата на вземане на проби под Nyquist и наблюдавайте как псевдонимът създава фалшив пик. Отбележете вашите наблюдения и параметъра, който сте коригирали.