Kitengo 4 / 9

Usindikaji wa Mawimbi na Uchambuzi wa Data

Faida:

  • Uwezo wa kuanzisha kwa usahihi vigezo vya usindikaji wa mawimbi kama vile masafa ya sampuli, aina ya vichungi na kuweka madirisha kwa kutumia AI
  • Uwezo wa kutoa nambari ya Python ya FFT, muundo wa kichungi na uchanganuzi wa kelele na angalia Nyquist na aliasing.
  • Uwezo wa kuthibitisha tafsiri ya wigo inayotokana na AI kwa kuilinganisha na kipimo na matarajio ya kimwili

Data ghafi kutoka kwa kitambuzi, maikrofoni, au laini ya umeme pekee mara nyingi haina maana; Inahitajika kusindika na kutafsiri kwenye mhimili wa frequency, amplitude na wakati. Inatoa wigo kwa kutumia FFT, kelele ya kuchuja, kutambua saini ya mtetemo... Haya yote ni usindikaji wa mawimbi na AI huzalisha msimbo wa Python haraka katika eneo hili, hufafanua dhana, hukokotoa mgawo wa kichujio. Lakini hitilafu ndogo ya parameter katika usindikaji wa ishara (mzunguko usio sahihi wa sampuli, dirisha lisilofaa, udhibiti wa Nyquist uliruka) kimya kimya uchambuzi mzima; Nambari haitoi makosa, inatoa tu matokeo mabaya. Katika kitengo hiki, tutashughulikia uwekaji wa vigezo sahihi na AI, kuangalia msimbo uliotolewa kulingana na Nyquist na utapeli, na kuthibitisha tafsiri ya wigo kwa uhalisia halisi.

Vigezo vya Msingi: Sampuli, Nyquist, Aliasing

Kanuni ya kwanza ya usindikaji wa ishara ya dijiti ni nadharia ya Nyquist-Shannon: ili kuwakilisha ishara kwa usahihi, mzunguko wa sampuli lazima uwe angalau mara mbili ya sehemu ya juu zaidi ya mawimbi ya ishara. Vinginevyo, masafa ya juu yataonekana kama masafa ya chini (aliasing) na hii haiwezi kutenduliwa.

Masafa ya juu zaidi katika mawimbi: f_max = 2 kHzMarudio ya chini ya sampuli: f_s ≥ 2 · f_max = 4 kHzIli kuacha ukingo katika mazoezi: f_s ≈ 5 · f_max = 10 kHz imechaguliwaPia, kichujio cha kuzuia analogi ni LAZIMA KABLA YA sampuli.

Tahadhari: Wakati AI inapopendekeza mzunguko wa sampuli, hakikisha umeangalia ikiwa inatoa Nyquist kulingana na sehemu ya juu zaidi ya mawimbi yako. Nambari inaendesha bila makosa hata kwa mzunguko mdogo wa sampuli; lakini matokeo yake sio sawa kwa sababu ya kualika. Zaidi ya hayo, hakuna programu inayoweza kutendua hitilafu hii bila kichujio cha kuzuia aliasing katika maunzi.

Azimio na Dirisha kwa FFT

Azimio la marudio ya FFT inategemea marudio ya sampuli na idadi ya sampuli: Δf = f_s / N. Kwa msongo bora zaidi unaweza kukusanya sampuli zaidi au uchague f_s za chini (bila kuvunja Nyquist). Zaidi ya hayo, kutoendelea kati ya mwanzo na mwisho wa ishara hujenga "kuvuja kwa spectral"; Ili kupunguza hii, vitendaji vya dirisha kama vile Hann na Hamming vinatumika.

f_s = 10 kHz, N = 1024 sampuli Azimio la mara kwa mara: Δf = 10000 / 1024 ≈ 9.77 Hz Jumla ya muda wa kurekodi: T = N / f_s = 1024 / 10000 ≈ 102.4 ms

Inazalisha na Kuangalia FFT na Msimbo wa Kichujio

Bainisha mzunguko wa sampuli, aina ya dirisha, na kipimo cha mhimili kwa uwazi wakati wa kuomba msimbo wa FFT kutoka kwa AI. Nambari ifuatayo hutoa wigo wa amplitude ya upande mmoja wa ishara:

leta numpy kama npfs = 10000 # masafa ya sampuli (Hz) - thibitisha Nyquist!N = 1024t = np.range(N) / fs# sampuli ya mawimbi: 500 Hz + 1500 Hzx = np.sin(2*np.pi*500*t) + 0.0*t*t) + 0.0*2*p. = np.hanning(N) # uwekaji madirisha: hupunguza uvujaji wa spectral unaorekebishwa na gain# angalia kilele masafa ya sauti = f[np.argsort(mag)[-2:]]print("Masafa makuu (Hz):", np.sort(kilele))

Unapokagua msimbo huu utaulizwa: Je, mhimili wa mzunguko ni Hz kweli au je, sampuli ya fahirisi (rfftfreq inatumika)? Je, amplitude ni ya kawaida kwa faida ya dirisha? Je, kilele kinachotarajiwa cha 500 na 1500 Hz kinatokea katika sehemu hizo? Ukithibitisha msimbo kwa mawimbi ya majaribio yanayojulikana (sine frequency sine), utathibitisha kwa ujasiri mhimili na kuhalalisha.

Uhamasishaji dhaifu / Uhamasishaji Wenye Nguvu

DHAIFU:"Weka FFT kwa data hii."(Tokeo: marudio ya sampuli, kipimo cha mhimili na uwekaji madirisha hauko wazi; kuna uwezekano mkubwa kwamba grafu imepangwa kwenye mhimili usio sahihi.)STRONG:"Weka FFT kwa mawimbi ya sampuli ya kHz 10. Toa:- Panga mhimili wa masafa katika Hz (tumia rfftfreq) .- Weka dirisha la faida la Hann kwa kawaida na chapisha dirisha la Hann kwa kubadilisha hali ya kawaida. masafa kidijitali.- Weka alama kwenye kikomo cha Nyquist (kHz 5) kwenye grafu Kumbuka kwamba mhimili utabadilika ikiwa masafa ya sampuli si sahihi.

Usanifu wa Kichujio na Uchambuzi wa Kelele

AI inaweza kutoa vichujio vya chini/juu/vya bendi (FIR/IIR). Lakini mzunguko wa kukata, utaratibu na utulivu wa chujio lazima uangaliwe. Inaweza kusababisha kukosekana kwa utulivu wa hali ya juu na kuvuruga kwa awamu, haswa katika vichungi vya IIR. Baada ya kuunda kichujio, panga jibu la mzunguko (Bode-like) ili kuona kuwa sehemu ya kukata iko mahali pazuri na hakuna ripple isiyohitajika kwenye bendi ya siri.

Kazi ya kawaida katika uchambuzi wa kelele ni kutenganisha ishara halisi kutoka kwa kelele. Hapa, tathmini kizingiti kilichopendekezwa cha AI au kichujio dhidi ya kipimo data halisi cha mawimbi: ikiwa mawimbi yako halisi iko katika 0-500 Hz, kijenzi katika 2 kHz kuna uwezekano mkubwa wa kelele au kuingiliwa. AI inatoa takwimu; Unafanya tafsiri ya kimwili.

Kuthibitisha Ufafanuzi wa Spectrum na Uhalisia wa Kimwili

Wakati wa kutafsiri wigo, AI hufanya makisio yanayofaa lakini sio sahihi kila wakati kama vile "Kuna kilele cha 50 Hz, huu ni mwingiliano wa gridi." Linganisha maoni haya na matarajio ya kimwili: Je, mfumo una muunganisho wa mains 50 Hz? Je, masafa ya mzunguko yanayotarajiwa na sauti za sauti karibu zipo katika wigo wa mtetemo wa injini? Ikiwezekana, rudia kipimo kwa njia ya pili (sensor tofauti, programu tofauti) na uone kilele sawa.

Kidokezo: Kwa kila tafsiri ya wigo, "kilele hiki kinalingana na hali gani ya kimaumbile?" Uliza swali. Mtandao wa 50/100/150 Hz na maelewano yake, mzunguko wa mzunguko na wingi wake katika mashine zinazozunguka, na mzunguko wa kubadili katika kubadili vifaa vya nguvu hujulikana saini. Kilele kisichojulikana ni ama tukio la kweli au hitilafu ya kipimo/uchakataji; Chunguza zote mbili.

Kesi Ndogo

Mhandisi wa R&D hupima mtetemo wa feni na ana AI kutafsiri wigo. "Kuna kilele kikubwa cha 1200 Hz, hii inaweza kuwa na kushindwa," inasema AI. Mhandisi anadhibiti kasi ya shabiki: 1800 rpm = 30 Hz. Masafa ya mpito ya kuzaa na blade yanatarajiwa kuwa katika viwango fulani vinavyoendana na mzunguko huu; 1200 Hz hailingani na yoyote kati ya hizi. Inadhibiti mzunguko wa sampuli: mawimbi hubeba maudhui hadi kHz 2, lakini kHz 2 pekee ndiyo huchukuliwa, hivyo ukiukaji wa Nyquist. Kilele cha 1200 Hz ni mzunguko wa ghost unaotokana na aliasing. Ninapoongeza mzunguko wa sampuli hadi 8 kHz, kilele cha uwongo hupotea. Somo: jaribu kila mara tafsiri ya wigo na matarajio ya mzunguko wa mwili/masafa na sampuli sahihi.

Makosa ya Kawaida

  • Kuchagua mzunguko wa sampuli bila kuangalia kigezo cha Nyquist; Kuangalia aliasing.
  • Inaacha mhimili wa masafa ya FFT kwenye sampuli ya faharasa badala ya Hz.
  • Kukosea kwa kuvuja kwa spectral kama ishara bila dirisha.
  • Sio kuhalalisha amplitude kwa idadi ya windows/sampuli.
  • Sio kuangalia uthabiti wa kichujio cha IIR na upotoshaji wa awamu.
  • Kutafsiri kilele cha wigo bila kuvijaribu kwa kutarajia rpm/frequency.

Kwa muhtasari

  • Mzunguko wa sampuli lazima iwe angalau mara mbili ya sehemu ya juu ya ishara; La sivyo, kualika kutavuruga uchambuzi mzima.
  • Azimio la FFT Δf = f_s/N; Chagua N na f_s kulingana na hitaji lako.
  • Dirisha hupunguza uvujaji wa spectral; kurekebisha amplitude kulingana na faida ya dirisha.
  • Thibitisha msimbo wa AI ukitumia mawimbi ya majaribio yanayojulikana ili kuthibitisha mhimili na urekebishaji.
  • Angalia uthabiti wa kichujio na majibu ya marudio kwa kuipanga.
  • Jaribu kila mara tafsiri ya wigo kwa kutarajia masafa ya mwili.

Jukumu la maombi

Tengeneza mawimbi ya majaribio ya masafa yanayojulikana (k.m. 500 Hz + 1500 Hz sine). Omba FFT na msimbo wa chujio kutoka kwa AI. Kisha: (1) thibitisha kuwa kigezo cha Nyquist kimetimizwa, (2) hakikisha kwamba kilele cha FFT kinaonekana katika 500 na 1500 Hz, (3) punguza kimakusudi marudio ya sampuli chini ya Nyquist na uangalie jinsi uwekaji jina bandia huleta kilele cha uwongo. Kumbuka uchunguzi wako na kigezo ulichosahihisha.