Бірлік 4 / 9

Сигналдарды өңдеу және деректерді талдау

Табыстар:

  • Таңдау жиілігі, сүзгі түрі және AI көмегімен терезелеу сияқты сигналды өңдеу параметрлерін дәл орнату мүмкіндігі
  • FFT үшін Python кодын жасау, сүзгі дизайны және шуды талдау және Nyquist және бүркеншік атын тексеру мүмкіндігі
  • Өлшеу және физикалық күтумен салыстыру арқылы AI жасаған спектрдің интерпретациясын тексеру мүмкіндігі

Тек сенсордан, микрофоннан немесе электр желісінен алынған шикі деректер көбінесе мағынасыз болады; Оны жиілік, амплитуда және уақыт осі бойынша өңдеу және түсіндіру қажет. FFT көмегімен спектрді шығару, шуды сүзу, діріл белгісін тану... Мұның бәрі сигналды өңдеу және AI осы салада жылдам Python кодын жасайды, түсініктерді түсіндіреді, сүзгі коэффициентін есептейді. Бірақ сигналды өңдеудегі кішігірім параметр қатесі (қате іріктеу жиілігі, қате терезе, Nyquist басқаруын өткізіп жіберу) бүкіл талдауды үнсіз бұзады; Код қателер бермейді, ол дұрыс емес нәтижелер береді. Бұл бөлімде біз AI көмегімен дұрыс параметрлерді орнатуды, генерацияланған кодты Nyquist және бүркеншік атау тұрғысынан тексеруді және спектрдің интерпретациясын физикалық шындықпен тексеруді қарастырамыз.

Негізгі параметрлер: Sampling, Nyquist, Aliasing

Сандық сигналды өңдеудің бірінші ережесі Найквист-Шеннон теоремасы: сигналды дәл көрсету үшін дискреттеу жиілігі сигналдағы ең жоғары жиілік құрамдас бөлігінен кемінде екі есе болуы керек. Әйтпесе, жоғары жиіліктер төмен жиіліктер (бүркеніш) ретінде пайда болады және оны кері қайтару мүмкін емес.

Сигналдағы ең жоғары жиілік: f_max = 2 кГц Ең аз іріктеу жиілігі: f_s ≥ 2 · f_max = 4 кГц Тәжірибеде маржаны қалдыру үшін: f_s ≈ 5 · f_max = 10 кГц таңдалды Сондай-ақ, аналогтық антибұзару сүзгісі таңдалғанға дейін МІНДЕТТІ болып табылады.

Абайлаңыз: AI үлгілеу жиілігін ұсынғанда, оның сигналыңыздың ең жоғары құрамдас бөлігі негізінде Nyquist қамтамасыз ететінін тексеріңіз. Код тіпті төмен іріктеу жиілігінде қатесіз жұмыс істейді; бірақ бүркеншік атқа байланысты нәтиже дұрыс емес. Сонымен қатар, ешбір бағдарламалық құрал аппараттық құралдағы антиалиазинг сүзгісіз бұл қатені қайтара алмайды.

FFT үшін ажыратымдылық және терезелеу

FFT жиілік ажыратымдылығы іріктеу жиілігіне және үлгілер санына байланысты: Δf = f_s / N. Жақсырақ ажыратымдылық үшін сіз көбірек үлгілерді жинайсыз немесе төменгі f_s таңдайсыз (Nyquist-ті бұзбай). Сонымен қатар, сигналдың басы мен соңы арасындағы үзіліс «спектрлік ағып кетуді» тудырады; Мұны азайту үшін Hann және Hamming сияқты терезе функциялары қолданылады.

f_s = 10 кГц, N = 1024 үлгі Жиілік ажыратымдылығы: Δf = 10000 / 1024 ≈ 9,77 ГцЖалпы жазу уақыты: T = N / f_s = 1024 / 10000 ≈ 102,4 мс

FFT және сүзгі кодын жасау және тексеру

AI-дан FFT кодын сұрау кезінде таңдау жиілігін, терезе түрін және ось шкаласын нақты көрсетіңіз. Келесі код сигналдың бір жақты амплитудалық спектрін шығарады:

import numpy as npfs = 10000 # дискретизация жиілігі (Гц) - Nyquist!N = 1024t = np.arange(N) / fs# үлгі сигналын тексеріңіз: 500 Гц + 1500 Гцx = np.sin(2*np.pi*500*t) + 0,5*np.sin(2*np.pi*1500*t)w = np.hanning(N) # терезелеу: күшейту арқылы қалыпқа келтірілген спектрлік ағып кетуді азайтады# шың жиілігін тексеруpeaks = f[np.argsort(mag)[-2:]]print("Үстем жиіліктер (Гц.)):(npsort),(npssort)

Бұл кодты тексеру кезінде сізден сұралады: Жиілік осі шынымен Гц пе немесе үлгі индексі (rfftfreq пайдаланылады) ма? Амплитудасы терезенің күшеюіне нормаланған ба? Күтілетін 500 және 1500 Гц шыңдары шынымен де сол нүктелерде бола ма? Кодты белгілі сынақ сигналымен (бір жиілік синусы) тексерсеңіз, ось пен қалыпқа келтіруді сенімді түрде растайсыз.

Әлсіз шақыру / Күшті шақыру

ӘЛСІЗ:"Осы деректерге FFT қолдану."(Нәтиже: іріктеу жиілігі, ось шкаласы және терезелеу түсініксіз; график қате осьте сызылған болуы мүмкін.)КҮШІЛІ:"10 кГц таңдалған сигналға FFT қолданыңыз. Мынаны қамтамасыз етіңіз: - Жиілік осін Гц-ге салыңыз (rfftfreq пайдаланыңыз).- Терезені екі күшейту арқылы басып шығарыңыз. басым жиіліктерді цифрлық түрде.- Графикте Nyquist шегін (5 кГц) белгілеңіз, егер таңдау жиілігі дұрыс болмаса, ось ауысады."

Сүзгі дизайны және шуды талдау

AI төмен/жоғары/өткізгіштік сүзгі коэффициенттерін (FIR/IIR) жасай алады. Бірақ сүзгінің кесу жиілігін, тәртібін және тұрақтылығын тексеру керек. Ол жоғары ретті тұрақсыздықты және фазалық бұрмалануды тудыруы мүмкін, әсіресе IIR сүзгілерінде. Сүзгіні құрастырғаннан кейін кесу дұрыс жерде екенін және өткізу жолағында қажетсіз толқындар жоқ екенін көру үшін жиілік реакциясын (Bode тәрізді) сызыңыз.

Шуды талдаудың типтік міндеті – нақты сигналды шуылдан ажырату. Мұнда AI ұсынған шекті немесе сүзгіні сигналдың физикалық өткізу қабілетіне қарсы бағалаңыз: егер сіздің нақты сигналыңыз 0-500 Гц аралығында болса, 2 кГц құрамдас бөлігі шу немесе кедергі болуы мүмкін. AI статистиканы береді; Сіз физикалық интерпретация жасайсыз.

Спектрдің интерпретациясын физикалық шындықпен растау

Спектрді интерпретациялау кезінде AI ақылға қонымды, бірақ әрқашан дәл емес тұжырымдар жасайды, мысалы, «50 Гц-те шың бар, бұл тордың кедергісі». Осы түсініктемелерді физикалық күтумен салыстырыңыз: Жүйеде шынымен 50 Гц желі қосылымы бар ма? Күтілетін айналу жиілігі мен гармоника қозғалтқыштың діріл спектрінде дерлік бар ма? Мүмкін болса, өлшеуді екінші әдіспен (басқа сенсор, әртүрлі бағдарламалық құрал) қайталаңыз және бірдей шыңдарды көріңіз.

Нұсқау: Әрбір спектрді түсіндіру үшін «бұл шың қандай физикалық құбылысқа сәйкес келеді?» Сұрақ қойыңыз. 50/100/150 Гц желісі және оның гармоникасы, айналу жиілігі және айналмалы машиналардағы оның еселіктері, коммутациялық қоректендіру көздеріндегі коммутация жиілігі белгілі белгілер болып табылады. Белгісіз шың - бұл нақты оқиға немесе өлшеу/өңдеу қатесі; Екеуін де зерттеңіз.

Шағын корпус

R&D инженері желдеткіштің дірілін өлшейді және AI спектрді түсіндіреді. «1200 Гц жиілікте басым шыңы бар, бұл мойынтіректердің сәтсіздігі болуы мүмкін», - дейді AI. Инженер желдеткіштің жылдамдығын басқарады: 1800 айн / мин = 30 Гц. Мойынтіректердің және қалақтардың ауысу жиіліктері осы циклмен үйлесімді белгілі бір мәндерде болады деп күтілуде; 1200 Гц бұлардың ешқайсысына сәйкес келмейді. Ол таңдау жиілігін басқарады: сигнал 2 кГц-ке дейінгі мазмұнды тасымалдайды, бірақ тек 2 кГц таңдалады, сондықтан Nyquist бұзу. 1200 Гц-тегі шың - бүркеншік атау нәтижесінде пайда болатын елес жиілік. Таңдау жиілігін 8 кГц-ке дейін арттырған кезде жалған шың жоғалады. Сабақ: физикалық цикл/жиілік күту және дұрыс іріктеу арқылы спектрді интерпретациялауды әрқашан сынап көріңіз.

Жалпы қателер

  • Nyquist критерийін тексермей іріктеу жиілігін таңдау; Бүркеншік атқа мән бермеу.
  • Гц орнына үлгі индексінде FFT жиілік осін қалдыру.
  • Спектрлік ағып кетуді терезесіз сигнал ретінде қателесу.
  • Терезелер/үлгілер саны бойынша амплитуданы қалыпқа келтірмеу.
  • IIR сүзгісінің тұрақтылығын және фазаның бұрмалануын тексермеу.
  • Спектрдің шыңдарын физикалық айн/мин/жиілігін күтпей сынамай интерпретациялау.

Қысқаша айтқанда

  • Таңдау жиілігі сигналдың ең жоғары құрамдас бөлігінен кемінде екі есе көп болуы керек; Әйтпесе, бүркеншік ат бүкіл талдауды бұзады.
  • FFT рұқсаты Δf = f_s/N; Сіздің қажеттіліктеріңізге сәйкес N және f_s таңдаңыз.
  • Терезелер спектрлік ағып кетуді азайтады; терезенің күшеюіне сәйкес амплитуданы қалыпқа келтіріңіз.
  • Ось пен қалыпқа келтіруді растау үшін белгілі сынақ сигналымен AI кодын тексеріңіз.
  • Сүзгі тұрақтылығын және жиілік реакциясын график арқылы тексеріңіз.
  • Әрқашан физикалық жиілікті күте отырып, спектрдің интерпретациясын сынап көріңіз.

Қолданбалы тапсырма

Белгілі жиіліктегі сынақ сигналын жасаңыз (мысалы, 500 Гц + 1500 Гц синус). AI-дан FFT және сүзгі кодын сұраңыз. Содан кейін: (1) Nyquist критерийінің орындалғанын тексеріңіз, (2) FFT шыңдарының шын мәнінде 500 және 1500 Гц-те пайда болуын тексеріңіз, (3) Nyquist-тен төмен іріктеу жиілігін әдейі азайтыңыз және бүркеншік аттың жалған шыңды қалай жасайтынын бақылаңыз. Бақылауларыңызды және түзетілген параметрді ескеріңіз.