नफा:
- सिग्नल प्रोसेसिंग पॅरामीटर्स अचूकपणे स्थापित करण्याची क्षमता जसे की सॅम्पलिंग वारंवारता, फिल्टर प्रकार आणि AI सह विंडोिंग
- FFT, फिल्टर डिझाइन आणि आवाज विश्लेषण आणि Nyquist आणि aliasing तपासण्यासाठी पायथन कोड व्युत्पन्न करण्याची क्षमता
- मोजमाप आणि भौतिक अपेक्षा यांच्याशी तुलना करून एआय-व्युत्पन्न स्पेक्ट्रम व्याख्या सत्यापित करण्याची क्षमता
केवळ सेन्सर, मायक्रोफोन किंवा पॉवर लाइनमधील कच्चा डेटा अनेकदा निरर्थक असतो; वारंवारता, मोठेपणा आणि वेळेच्या अक्षावर प्रक्रिया करणे आणि त्याचा अर्थ लावणे आवश्यक आहे. FFT सह स्पेक्ट्रम काढणे, आवाज फिल्टर करणे, कंपन स्वाक्षरी ओळखणे... हे सर्व सिग्नल प्रोसेसिंग आहेत आणि AI या भागात जलद पायथन कोड तयार करते, संकल्पना स्पष्ट करते, फिल्टर गुणांक मोजते. परंतु सिग्नल प्रोसेसिंगमधील एक लहान पॅरामीटर त्रुटी (चुकीची सॅम्पलिंग वारंवारता, चुकीची विंडो, वगळलेले Nyquist नियंत्रण) संपूर्ण विश्लेषण शांतपणे नष्ट करते; कोड त्रुटी देत नाही, तो फक्त चुकीचे परिणाम देतो. या युनिटमध्ये, आम्ही AI सह योग्य पॅरामीटर्स सेट करणे, Nyquist आणि अलियासिंगच्या संदर्भात व्युत्पन्न केलेला कोड तपासणे आणि भौतिक वास्तवासह स्पेक्ट्रम व्याख्या सत्यापित करणे समाविष्ट करू.
मूलभूत पॅरामीटर्स: सॅम्पलिंग, नायक्विस्ट, अलियासिंग
डिजिटल सिग्नल प्रक्रियेचा पहिला नियम म्हणजे Nyquist-Shannon प्रमेय: सिग्नलचे अचूक प्रतिनिधित्व करण्यासाठी, सॅम्पलिंग वारंवारता सिग्नलमधील सर्वोच्च वारंवारता घटकाच्या किमान दुप्पट असणे आवश्यक आहे. अन्यथा, उच्च फ्रिक्वेन्सी कमी फ्रिक्वेन्सी (अलियासिंग) म्हणून दिसून येईल आणि हे उलट केले जाऊ शकत नाही.
सिग्नलमधील सर्वोच्च वारंवारता: 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 न मोडता). याव्यतिरिक्त, सिग्नलच्या सुरूवातीस आणि शेवटच्या दरम्यानच्या विघटनामुळे "स्पेक्ट्रल गळती" निर्माण होते; हे कमी करण्यासाठी, हॅन आणि हॅमिंग सारखी विंडो फंक्शन्स लागू केली जातात.
f_s = 10 kHz, N = 1024 नमुने फ्रिक्वेन्सी रिझोल्यूशन: Δf = 10000 / 1024 ≈ 9.77 Hz एकूण रेकॉर्डिंग वेळ: T = N / f_s = 1024 / 10000 ≈ 102.4 ms
FFT आणि फिल्टर कोड तयार करणे आणि तपासणे
AI कडून FFT कोडची विनंती करताना सॅम्पलिंग वारंवारता, विंडो प्रकार आणि अक्ष स्केल स्पष्टपणे निर्दिष्ट करा. खालील कोड सिग्नलचे एकतर्फी मोठेपणा स्पेक्ट्रम आउटपुट करतो:
npfs = 10000 # सॅम्पलिंग वारंवारता (Hz) म्हणून numpy आयात करा - Nyquist सत्यापित करा!N = 1024t = np.arange(N) / fs# नमुना सिग्नल: 500 Hz + 1500 Hzx = np.sin(2*np.pi*t) +*500 0.5*np.sin(2*np.pi*1500*t)w = np.hanning(N) # विंडोिंग: स्पेक्ट्रल गळती कमी करते गेन# चेक पीक फ्रिक्वेन्सीस्पीक्स = f[np.argsort(mag)[-2:]]मुद्रण ("प्रबल फ्रिक्वेन्सी (Hzpeknps)" द्वारे सामान्यीकृत:
हा कोड तपासताना तुम्हाला विचारले जाईल: फ्रिक्वेन्सी अक्ष खरोखर Hz आहे की नमुना निर्देशांक (rfftfreq वापरला आहे)? मोठेपणा विंडो गेन सामान्यीकृत आहे? अपेक्षित 500 आणि 1500 Hz शिखरे खरोखरच त्या बिंदूंवर येतात का? आपण ज्ञात चाचणी सिग्नल (सिंगल फ्रिक्वेन्सी साइन) सह कोड सत्यापित केल्यास, आपण अक्ष आणि सामान्यीकरणाची आत्मविश्वासाने पुष्टी कराल.
कमकुवत प्रॉम्प्ट / मजबूत प्रॉम्प्ट
कमजोर:"या डेटावर FFT लागू करा."(परिणाम: सॅम्पलिंग फ्रिक्वेंसी, अक्ष स्केल आणि विंडोिंग अस्पष्ट आहे; आलेख बहुधा चुकीच्या अक्षावर प्लॉट केला गेला आहे.)STRONG:"10 kHz सॅम्पल सिग्नलवर FFT लागू करा. प्रदान करा:- Hz मध्ये वारंवारता अक्ष प्लॉट करा (आणि rfftfn द्वारे विंडो सामान्यपणे वापरा). लाभ.- दोन प्रबळ फ्रिक्वेन्सी डिजिटली मुद्रित करा.- आलेखावर Nyquist मर्यादा (5 kHz) चिन्हांकित करा लक्षात ठेवा की नमुना वारंवारता चुकीची असल्यास अक्ष बदलेल."
फिल्टर डिझाइन आणि आवाज विश्लेषण
AI कमी/उच्च/बँडपास फिल्टर गुणांक (FIR/IIR) व्युत्पन्न करू शकते. परंतु फिल्टरची कट-ऑफ वारंवारता, क्रम आणि स्थिरता तपासणे आवश्यक आहे. यामुळे उच्च ऑर्डर अस्थिरता आणि फेज विकृती होऊ शकते, विशेषत: IIR फिल्टरमध्ये. फिल्टर डिझाइन केल्यानंतर, कटऑफ योग्य ठिकाणी आहे आणि पासबँडमध्ये कोणतीही अवांछित लहर नाही हे पाहण्यासाठी वारंवारता प्रतिसाद (बोड-समान) प्लॉट करा.
ध्वनी विश्लेषणातील विशिष्ट कार्य म्हणजे आवाजापासून वास्तविक सिग्नल वेगळे करणे. येथे, एआयच्या सूचित थ्रेशोल्डचे मूल्यांकन करा किंवा सिग्नलच्या भौतिक बँडविड्थच्या विरूद्ध फिल्टर करा: जर तुमचा वास्तविक सिग्नल 0-500 Hz वर असेल, तर 2 kHz वरील घटक बहुधा आवाज किंवा हस्तक्षेप असेल. एआय आकडेवारी देते; तुम्ही भौतिक व्याख्या करा.
भौतिक वास्तवासह स्पेक्ट्रम व्याख्या प्रमाणित करणे
स्पेक्ट्रमचा अर्थ लावताना, AI वाजवी पण नेहमी अचूक निष्कर्ष काढत नाही जसे की "50 Hz वर शिखर आहे, हा ग्रिड हस्तक्षेप आहे." या टिप्पण्यांची भौतिक अपेक्षेशी तुलना करा: सिस्टममध्ये खरोखर 50 Hz मुख्य कनेक्शन आहे का? मोटरच्या कंपन स्पेक्ट्रममध्ये अपेक्षित रोटेशन वारंवारता आणि हार्मोनिक्स जवळपास आहेत का? शक्य असल्यास, दुसऱ्या पद्धतीसह (वेगवेगळा सेन्सर, भिन्न सॉफ्टवेअर) मोजमाप पुन्हा करा आणि समान शिखरे पहा.
सूचना: प्रत्येक स्पेक्ट्रम व्याख्यासाठी, "हे शिखर कोणत्या भौतिक घटनेशी संबंधित आहे?" प्रश्न विचारा. 50/100/150 Hz नेटवर्क आणि त्याचे हार्मोनिक्स, रोटेशन फ्रिक्वेंसी आणि फिरत्या मशीनमधील त्याचे गुणाकार आणि स्विचिंग पॉवर सप्लायमध्ये स्विचिंग वारंवारता हे ज्ञात स्वाक्षरी आहेत. अज्ञात शिखर एकतर वास्तविक घटना किंवा मापन/प्रक्रिया त्रुटी असते; दोन्ही संशोधन करा.
मिनी केस
एक R&D अभियंता पंख्याचे कंपन मोजतो आणि त्याच्याकडे AI स्पेक्ट्रमचा अर्थ लावतो. "1200 Hz वर एक प्रबळ शिखर आहे, हे अयशस्वी होऊ शकते," AI म्हणते. अभियंता पंख्याची गती नियंत्रित करतो: 1800 rpm = 30 Hz. बेअरिंग आणि ब्लेड ट्रांझिशन फ्रिक्वेन्सी या चक्राशी सुसंगत ठराविक मूल्यांवर असणे अपेक्षित आहे; 1200 Hz यापैकी कोणत्याहीशी सुसंगत नाही. हे सॅम्पलिंग फ्रिक्वेंसी नियंत्रित करते: सिग्नलमध्ये 2 kHz पर्यंत सामग्री असते, परंतु केवळ 2 kHz चे नमुना घेतले जाते, त्यामुळे Nyquist उल्लंघन. 1200 Hz वरील शिखर हे अलियासिंगच्या परिणामी एक भूत वारंवारता आहे. जेव्हा मी सॅम्पलिंग वारंवारता 8 kHz पर्यंत वाढवतो, तेव्हा खोटे शिखर अदृश्य होते. धडा: नेहमी भौतिक चक्र/वारंवारता अपेक्षा आणि योग्य नमुने घेऊन स्पेक्ट्रम व्याख्या तपासा.
सामान्य चुका
- Nyquist निकष न तपासता सॅम्पलिंग वारंवारता निवडणे; अलियासिंगकडे दुर्लक्ष करत आहे.
- Hz ऐवजी नमुना निर्देशांकावर FFT वारंवारता अक्ष सोडणे.
- खिडकी न लावता सिग्नल म्हणून स्पेक्ट्रल गळती समजणे.
- विंडो/नमुन्यांच्या संख्येनुसार मोठेपणा सामान्य करत नाही.
- IIR फिल्टर स्थिरता आणि फेज विकृती तपासत नाही.
- भौतिक rpm/वारंवारतेच्या अपेक्षेने त्यांची चाचणी न करता स्पेक्ट्रम शिखरांचा अर्थ लावणे.
सारांशात
- सॅम्पलिंग वारंवारता सिग्नलच्या सर्वोच्च घटकाच्या किमान दुप्पट असणे आवश्यक आहे; अन्यथा, अलियासिंग संपूर्ण विश्लेषणात व्यत्यय आणेल.
- FFT रिझोल्यूशन Δf = f_s/N; तुमच्या गरजेनुसार N आणि f_s निवडा.
- विंडोिंगमुळे वर्णक्रमीय गळती कमी होते; विंडो गेननुसार मोठेपणा सामान्य करा.
- अक्ष आणि सामान्यीकरणाची पुष्टी करण्यासाठी ज्ञात चाचणी सिग्नलसह AI कोड सत्यापित करा.
- प्लॉट करून फिल्टरची स्थिरता आणि वारंवारता प्रतिसाद तपासा.
- भौतिक वारंवारतेच्या अपेक्षेने नेहमी स्पेक्ट्रम व्याख्या तपासा.
अर्ज कार्य
ज्ञात वारंवारतेचे चाचणी सिग्नल व्युत्पन्न करा (उदा. 500 Hz + 1500 Hz साइन). AI कडून FFT आणि फिल्टर कोडची विनंती करा. नंतर: (1) Nyquist निकष पूर्ण झाल्याचे सत्यापित करा, (2) FFT शिखरे प्रत्यक्षात 500 आणि 1500 Hz वर दिसतात का ते तपासा, (3) Nyquist च्या खाली सॅम्पलिंग फ्रिक्वेन्सी जाणूनबुजून कमी करा आणि अलियासिंग कसे बनावट शिखर तयार करते ते पहा. तुमची निरीक्षणे आणि तुम्ही दुरुस्त केलेले पॅरामीटर लक्षात ठेवा.