विषयसूची:

ब्लूटूथ सक्षम एनालॉग वीयू मीटर: 6 कदम
ब्लूटूथ सक्षम एनालॉग वीयू मीटर: 6 कदम

वीडियो: ब्लूटूथ सक्षम एनालॉग वीयू मीटर: 6 कदम

वीडियो: ब्लूटूथ सक्षम एनालॉग वीयू मीटर: 6 कदम
वीडियो: DIY Arduino Analog style Stereo VU meter on I2C Oled displays 2024, नवंबर
Anonim
ब्लूटूथ सक्षम एनालॉग वीयू मीटर
ब्लूटूथ सक्षम एनालॉग वीयू मीटर

एसएमपी नामक मेरी विश्वविद्यालय कक्षाओं में से एक के लिए यह मेरी परियोजना थी। जैसा कि हमने STM32F103RB विकास बोर्ड का उपयोग किया, मैंने इस पर अपना प्रोजेक्ट आधारित किया, एक साधारण VU मीटर से शुरू किया। फिर मैंने एक साधारण डीबी चार्ट बनाने के लिए एडीसी से एंड्रॉइड ऐप में मूल्यों को प्रसारित करने के लिए ब्लूटूथ समर्थन जैसी कुछ अतिरिक्त सुविधाएं जोड़ीं।

चरण 1: प्रयुक्त अवयव

  • STM32F103RB विकास बोर्ड
  • HC-05 zs040 ब्लूटूथ मॉड्यूल
  • एनालॉग वीयू मीटर पैनल (लिंक)
  • इलेक्ट्रेट माइक्रोफोन
  • LM324N क्वाड सेशन-amp
  • 2 TIP120 ट्रांजिस्टर
  • 3 1N4148 डायोड
  • विभिन्न कैपेसिटर और प्रतिरोधक

हालाँकि आप इस सर्किट को बोर्ड की 5V रेल से हटा सकते हैं, मैंने बाहरी 5V बिजली की आपूर्ति का भी उपयोग किया।

चरण 2: लिफाफा अनुयायी

लिफाफा अनुयायी
लिफाफा अनुयायी
लिफाफा अनुयायी
लिफाफा अनुयायी

इस डिजाइन का मुख्य भाग लिफाफा अनुयायी है जो इलेक्ट्रेट माइक्रोफोन से सिग्नल लेता है और माइक्रोफोन के सिग्नल आयाम के आनुपातिक वोल्टेज को आउटपुट करता है।

माइक्रोफोन से कच्चे सिग्नल को पहले 150 के लाभ के साथ एक एम्पलीफायर के माध्यम से पारित किया जाता है।

सिग्नल को तब वास्तविक लिफाफा अनुयायी के माध्यम से पारित किया जाता है जो केवल सकारात्मक सिग्नल भागों को आउटपुट करना चाहिए।

अंतिम भाग लिफाफा अनुयायी के आउटपुट से 1.65V के ऑफसेट वोल्टेज को घटा रहा है ताकि बिना किसी ध्वनि के 0 V का संकेत दिया जा सके, मध्यम-ध्वनि के लिए 1.65 V और तेज-ध्वनि के लिए 3.3 V जो कि अंतर्निहित के साथ संगत होना चाहिए। बोर्ड के ए.डी.सी.

यह लिफाफा अनुयायी इस महान स्टैक एक्सचेंज उत्तर से लागू किया गया है।

चरण 3: एनालॉग मीटर के लिए पीडब्लूएम

गेज की सुई प्राप्त करने के लिए, मैंने माइक्रोकंट्रोलर बोर्ड के TIM4 टाइमर को लगभग ५०० हर्ट्ज की आवृत्ति के साथ कॉन्फ़िगर किया है।

अलग-अलग कर्तव्य चक्रों को क्रमिक रूप से आज़माकर मैंने कुछ मूल्यों के साथ समझौता किया है जो सुई को 0 से 100 तक जाने के लिए पर्याप्त थे।

मैं कुछ गणित को लागू करके अगले चरण में सटीक मान प्रदर्शित करने की प्रक्रिया का विवरण दूंगा।

चरण 4: माइक्रोफ़ोन कैलिब्रेशन

माइक्रोफोन अंशांकन
माइक्रोफोन अंशांकन
माइक्रोफोन अंशांकन
माइक्रोफोन अंशांकन

लिफाफा अनुयायी होने के बाद, मैंने एडीसी का उपयोग करने के लिए कुछ सरल कोड लिखा और सत्यापित किया कि पढ़ने का मूल्य वास्तव में कमरे के अंदर जोर के अनुसार बदलता है।

इस मान को वास्तविक डीबी रीडिंग में "अनुवाद" करने के लिए, मैंने एक संदर्भ रीडिंग प्रदान करने के लिए 550 हर्ट्ज की आवृत्ति और मेरे एंड्रॉइड के साथ एक ऑनलाइन टोन जनरेटर का उपयोग किया है।

मैंने उन मानों को प्लॉट किया है और एक फ़ंक्शन प्राप्त करने के लिए MatLAB के वक्र फ़िट टूल का उपयोग किया है जो डीबी स्तरों के वास्तविक अनुमानों के लिए एडीसी रीडिंग को मैप करता है (या कम से कम मेरे फोन के रीडिंग के करीब पर्याप्त है)।

हम देख सकते हैं कि यह माइक्रोफोन के लघुगणकीय पैमाने का अनुसरण करता है।

मैंने पीडब्लूएम मूल्यों के लिए सुई की स्थिति को मैप करने के लिए भी यही काम किया। मैंने उन मूल्यों को पीडब्लूएम मान को क्रमिक रूप से 10 तक बढ़ाकर तब तक एकत्र किया जब तक कि इसके पैमाने पर पढ़ने की आवश्यकता न हो।

उन 2 फ़ंक्शन को मिलाकर मुझे एडीसी से रीडिंग को गेज इंडिकेटर पर वास्तविक मूल्य पर प्रदर्शित करने का एक आसान तरीका मिला।

चरण 5: एंड्रॉइड ऐप

ऐप बाइट जानकारी का आदान-प्रदान करने के लिए ब्लूटूथ सीरियल के माध्यम से संवाद करने के लिए इस शांत पुस्तकालय का उपयोग कर रहा है।

इस प्रणाली की मुख्य चेतावनी यह है कि ब्लूटूथ पर भेजी गई अधिकतम शब्द लंबाई 8 बिट है और एडीसी मान 12 बिट के रूप में दर्शाया गया है। इस समस्या को दूर करने के लिए, मैंने एक एडीसी मान को 2 अलग-अलग 6 बिट मानों (एमएसबी और एलएसबी) में विभाजित किया है, शेष 2 बिट्स संदेश प्रकार (एमएसबी, एलएसबी, सीएचके) की पहचान करने के लिए उपयोग किए जाते हैं।

इसलिए, एक एकल ADC मान के लिए जिसे हम प्रसारित करना चाहते हैं, हम वास्तविक मान को 2 संदेशों में विभाजित करते हैं। उन संदेशों की अखंडता की जांच करने के लिए, मैंने पहले 2 संदेशों के XOR के साथ तीसरा संदेश भेजा।

मूल्य अखंडता की जांच के बाद, हम डीबी स्तर प्राप्त करने के लिए उसी फ़ंक्शन को लागू कर सकते हैं और इसे हमारे लाइव चार्ट पर प्लॉट कर सकते हैं।

चरण 6: सारांश

जबकि मैं इस परियोजना का माइक्रो-कंट्रोलर हिस्सा एक कमरे के अंदर जोर से प्रदर्शित करने के लिए बहुत अच्छा काम करता हूं, पैकेट के नुकसान के कारण ब्लूटूथ पर डेटा भेजते समय मुझे कुछ मुद्दों का सामना करना पड़ा।

इस परियोजना का स्रोत कोड यहां पाया जा सकता है:

  • Android साथी ऐप - रेपो
  • माइक्रोकंट्रोलर कोड - रेपो

अगर आपको यह किसी भी तरह से उपयोगी लगे तो बेझिझक योगदान दें।

सिफारिश की: