विषयसूची:

Arduino: फ़्रीक्वेंसी ट्रांसफ़ॉर्म (DFT): 6 चरण
Arduino: फ़्रीक्वेंसी ट्रांसफ़ॉर्म (DFT): 6 चरण

वीडियो: Arduino: फ़्रीक्वेंसी ट्रांसफ़ॉर्म (DFT): 6 चरण

वीडियो: Arduino: फ़्रीक्वेंसी ट्रांसफ़ॉर्म (DFT): 6 चरण
वीडियो: Understanding the Discrete Fourier Transform and the FFT 2024, जुलाई
Anonim
Arduino: फ़्रीक्वेंसी ट्रांसफ़ॉर्म (DFT)
Arduino: फ़्रीक्वेंसी ट्रांसफ़ॉर्म (DFT)

यह कार्यक्रम मापदंडों पर बल्लेबाज नियंत्रण के साथ आर्डिनो पर आवृत्ति परिवर्तन की गणना करना है। इसे अपवित्र फूरियर ट्रांसफॉर्म का उपयोग करके हल किया जाता है।

यह एफएफटी नहीं है।

FFT एल्गोरिथम है जिसका उपयोग DFT को कम समय में हल करने के लिए किया जाता है।

एफएफटी के लिए कोड यहां पाया जा सकता है।

चरण 1: यह कैसे काम करता है (अवधारणा):

यह कैसे काम करता है (अवधारणा)
यह कैसे काम करता है (अवधारणा)
यह कैसे काम करता है (अवधारणा)
यह कैसे काम करता है (अवधारणा)

आवृत्ति परिवर्तन के लिए दिया गया कार्यक्रम आपको आवश्यक आउटपुट पर बहुत नियंत्रण प्रदान करता है। यह प्रोग्राम डेटा-सेट के लिए दिए गए इनपुट पर उपयोगकर्ता द्वारा दी गई फ़्रीक्वेंसी रेंज का मूल्यांकन करता है।

  • आकृति में f2 और f5 नाम की दो आवृत्तियों से बना एक डेटा सेट दिया गया है जिसे परीक्षण करने की आवश्यकता है। f2 और f5 दो आवृत्ति के लिए यादृच्छिक नाम हैं, अपेक्षाकृत उच्च आवृत्ति के लिए उच्च संख्या। यहाँ छोटी आवृत्ति f2 का आयाम अधिक है और f5 का आयाम छोटा है।
  • यह गणितीय रूप से दिखाया जा सकता है कि अलग-अलग आवृत्ति वाले दो हार्मोनिक डेटा-सेट के गुणन का योग शून्य हो जाता है (डेटा की अधिक संख्या बल्लेबाज परिणाम का कारण बन सकती है)। हमारे मामले में यदि इन दो गुणन आवृत्ति में समान (या बहुत करीब) आवृत्ति होती है तो गुणन का योग गैर-शून्य संख्या होती है जहां आयाम डेटा के आयाम पर निर्भर करता है।
  • विशिष्ट आवृत्ति का पता लगाने के लिए दिए गए डेटा-सेट को विभिन्न परीक्षण आवृत्तियों से गुणा किया जा सकता है और परिणाम डेटा में उस आवृत्ति का घटक दे सकता है।

चरण 2: यह कैसे काम करता है (कोड में):

यह कैसे काम करता है (कोड में)
यह कैसे काम करता है (कोड में)
यह कैसे काम करता है (कोड में)
यह कैसे काम करता है (कोड में)

उस दिए गए डेटा (f2+f5) के लिए एक-एक करके f1 से f6 गुणा किया जाता है और योग का मान नोट किया जाता है। वह अंतिम योग उस आवृत्ति की सामग्री का प्रतिनिधित्व करता है। फ़्रीक्वेंसी का रेस्ट (गैर-मिलान) आदर्श रूप से शून्य होना चाहिए लेकिन वास्तविक स्थिति में यह संभव नहीं है। योग को शून्य बनाने के लिए डेटा-सेट के अनंत आकार की आवश्यकता होती है।

  • जैसा कि चित्र f1 से f6 परीक्षण आवृत्ति में दिखाया जा सकता है और प्रत्येक बिंदु पर डेटा सेट के साथ इसका गुणन दिखाया गया है।
  • दूसरे अंक में प्रत्येक आवृत्ति पर उस गुणन का योग प्लॉट किया जाता है। 1 और 5 पर दो चोटियों की पहचान की जा सकती है।

इसलिए यादृच्छिक डेटा के लिए समान दृष्टिकोण का उपयोग करके हम इतनी आवृत्ति के लिए मूल्यांकन कर सकते हैं और डेटा की आवृत्ति सामग्री का विश्लेषण कर सकते हैं।

चरण 3: आवृत्ति विश्लेषण के लिए कोड का उपयोग करना:

आवृत्ति विश्लेषण के लिए कोड का उपयोग करना
आवृत्ति विश्लेषण के लिए कोड का उपयोग करना

उदाहरण के लिए इस कोड का उपयोग स्क्वायर वेव के डीएफटी को खोजने के लिए करते हैं।

दिखाए गए चित्र के अनुसार लूप के बाद पहले संलग्न कोड (डीएफटी फ़ंक्शन) चिपकाएं।

8 शर्तें जिन्हें निर्दिष्ट करने की आवश्यकता है

  1. एक सरणी जिसमें डीएफटी लेने की जरूरत है
  2. एक सरणी का आकार
  3. मिलीसेकंड में सरणी में 2 रीडिंग के बीच का समय अंतराल
  4. Hz में आवृत्ति रेंज का कम मान
  5. Hz में आवृत्ति रेंज का ऊपरी मान
  6. आवृत्ति रेंज के लिए चरणों का आकार
  7. एक सिग्नल की पुनरावृत्ति (न्यूनतम 1) उच्च संख्या बल्लेबाज सटीकता लेकिन बढ़ी हुई समाधान समय
  8. खिड़की समारोह:

    0 बिना विंडो के लिए1 फ्लैट-टॉप विंडो के लिए 2 हन विंडो 3 के लिए हैमिंग विंडो के लिए

(यदि आपको विंडो डिफ़ॉल्ट रखने के बारे में कोई जानकारी नहीं है 3)

उदाहरण: डीएफटी (ए, 8, 0.5, 0, 30, 0.5, 10, 3); यहां ए आकार 8 तत्व की एक सरणी है जिसे 0 हर्ट्ज से 30 हर्ट्ज के लिए 0.5 चरण (0, 0.5, 1, 1.5, …, 29, 29.5, 30) 10 दोहराव और हैमिंग विंडो के साथ जांचा जाना है।

यहां बड़े आकार के सरणी का उपयोग करना संभव है जितना कि आर्डिनो संभाल सकता है।

चरण 4: आउटपुट:

आउटपुट
आउटपुट
आउटपुट
आउटपुट

अगर आप टिप्पणी करते हैं

सीरियल.प्रिंट (एफ); सीरियल.प्रिंट ("\ t");

कोड से सीरियल प्लॉटर आवृत्ति स्पेक्ट्रम की प्रकृति देगा यदि नहीं तो सीरियल मॉनिटर अपने आयाम के साथ आवृत्ति देगा।

चरण 5: विभिन्न विंडो और नमूना आकारों की जाँच करना:

विभिन्न विंडो और नमूना आकारों की जाँच करना
विभिन्न विंडो और नमूना आकारों की जाँच करना

चित्र में, साइन तरंग की आवृत्ति को विभिन्न सेटिंग का उपयोग करके मापा जाता है।

चरण 6: उदाहरण:

उदाहरण
उदाहरण

SciLab और arduino का उपयोग करके डेटा के फिगर ट्रांसफॉर्म की तुलना की जाती है।

सिफारिश की: