आवाज नियंत्रण: हार्ड असेंबलर का उपयोग कर 8-बिट AVR पर डिजिटल सिग्नल प्रोसेसिंग

तो, यह आपको AVRkami पर सरल शिल्प की तुलना में अधिक दिलचस्प कुछ बताने का समय है। इस लेख में, मैं आपको एटीएस पर एक उपकरण को इकट्ठा करने का तरीका बताऊंगा जो आवाज के आदेशों को पहचानने के लिए एक ऑडियो सिग्नल के काफी गंभीर प्रसंस्करण करता है।



सबसे पहले, मैं उस परिणाम को दिखाना चाहूंगा जो मैं आया हूं।



छवि



छवि



छवि



उपकरण लोहे में इकट्ठा किया गया है और पूरी तरह से चालू है। मान्यता की संभावना, ज़ाहिर है, बहुत कम है, लेकिन इस तरह के डिवाइस के लिए यह पहले से ही एक बड़ी उपलब्धि है - मुझे याद है कि इसका कोर 20 मेगाहर्ट्ज की आवृत्ति के साथ और किसी भी डीएसपी निर्देशों के बिना एक 8-बिट ATMega88 माइक्रोकंट्रोलर है। डिवाइस दो टीमों को पहचानता है (टीमों की संख्या एक दर्जन तक विस्तारित की जा सकती है, संसाधन अनुमति देते हैं), जिनमें से एक बिजली लोड पर मुड़ता है, दूसरा इसे बंद कर देता है। इसके अलावा, आप किसी भी आईआर रिमोट कंट्रोल से लोड को चालू / बंद कर सकते हैं। डिवाइस 250V / 8A तक स्विच करने में सक्षम है।

अधिकांश भाग के लिए, मैंने यह जांचने के लिए अकादमिक हित के लिए डिज़ाइन किया कि क्या इस तरह के डीएसपी एल्गोरिदम को सस्ते और कम-शक्ति वाले सामान्य प्रयोजन माइक्रोकंट्रोलर पर लागू करना संभव है। परिणाम काफी संतोषजनक था, और डिवाइस मेरे स्थान पर 24/7 काम करता है।

अगर हम कम-शक्ति वाले माइक्रोकंट्रोलर्स के उपयोग की उपयुक्तता के बारे में बात करते हैं - मैं संक्षेप में कहूंगा: सिद्धांत रूप में, यह बेहतर है)

इस तरह के कार्य के लिए, dsPIC लाइन से कुछ जूनियर चिप सोलह-बिट डीएसपी निर्देशों के साथ अधिक उपयुक्त है, जो अब AVRki के समान सस्ते हैं और समान संख्या में पैरों के साथ आते हैं। या MSP430F2xxx लाइन से TI से कुछ

लेकिन, यदि आप भी मेरी तरह AVR से बाहर निकल सकते हैं, तो यह लेख आपके लिए है।



सर्किट





चलो विद्युत सर्किट के विकास के साथ शुरू करते हैं और यह समझने की कोशिश करते हैं कि हमें इसकी क्या आवश्यकता है।

और आपको निम्नलिखित की आवश्यकता है:

1) 220 v से बिजली की आपूर्ति। सिद्धांत रूप में, आप इसे कम से कम बैटरी से बिजली दे सकते हैं, लेकिन हाथ से 220 वोल्ट होने पर IMHO को वहां से बिजली लेने का अधिक तार्किक निर्णय होगा।

2) 5V से नियंत्रण के साथ 220V / 5A में स्विचिंग लोड। मैंने एम्पीयर ऑफ़हैंड लिया, 5 ए पहले से ही किलोवाट खपत के साथ कुछ क्रैटल केतली को बिजली देने के लिए पर्याप्त है। या 100 वाट के एक दर्जन तापदीप्त बल्बों के साथ)

3) एक अतिरिक्त शासी निकाय वांछनीय है, यदि आवाज विफल हो जाती है, या आप शोर नहीं करना चाहते हैं।

4) चयनित मापदंडों के साथ ध्वनि पर कब्जा। मापदंडों के बारे में थोड़ी देर बाद।



पहला बिंदु तुच्छ है - आप किसी भी बिजली की आपूर्ति को जान सकते हैं, क्योंकि सर्किट की खपत बहुत कम है। लेकिन कब से यह 24/7 पर चालू होता है, मैंने एक सरल और विश्वसनीय अर्ध-लहर ट्रांसफार्मर बिजली आपूर्ति इकाई को चुना, जिसमें TPG-0.7 ट्रांसफार्मर शामिल है, जो 220V को 12V, एक डायोड ब्रिज, एक चौरसाई संधारित्र और दो रैखिक वोल्टेज स्टेबलाइजर्स में परिवर्तित करता है, जिससे मुझे स्थिर 5V और 9V मिलता है।



छवि



5V बिजली, निश्चित रूप से, डिजिटल सर्किटरी में जाती है। लेकिन मुझे एनालॉग भाग के लिए 9 वी की आवश्यकता थी, क्योंकि अधिकतम वोल्टेज जो LM324 ओपैंप जारी कर सकता है वह एपिट -1.5 वोल्ट के बराबर है। यह गणना करना मुश्किल नहीं है कि जब इसे 5 वी से संचालित किया जाता है, तो 3.5 का अधिकतम उत्पादन प्राप्त किया जा सकता है, यह मुझे सूट नहीं करता है।



हम दो बिंदुओं को पास करते हैं। लोड को स्विच करने के लिए, मैंने एक विश्वसनीय और सिद्ध ठोस राज्य रिले S202S02 को चुना, जो 250Vh8A तक स्विच करने में सक्षम है।

इसमें कोई यांत्रिक भाग नहीं है, स्विचिंग सर्किट बेहद सरल है: रिले में 4 पिन हैं - दो पिन लोड करने के लिए, वे "सामान्य रूप से खुले" राज्य में हैं। जब नियंत्रण पिन लॉग 1 पर लागू किया जाता है, तो रिले बंद हो जाता है और वर्तमान का संचालन करता है।



बिंदु 3 भी सरल है। TSOP1736 एकीकृत IR सेंसर बचाव के लिए आता है, जो एक छोटे से तीन-पैर वाला चमत्कार है जो क्रमशः जमीन से जुड़ता है और 5 पिन दो पिन के साथ शक्ति देता है, और तीसरे से लॉग जारी करता है। 1 जब कोई इनपुट सिग्नल नहीं है, और इनपुट सिग्नल का पता चलने पर 0 लॉग करें। इनपुट सिग्नल आईआर विकिरण को संशोधित करता है, जिसमें 36 किलोहर्ट्ज़ की वाहक आवृत्ति होती है, जो अधिकांश आईआर रिमोट के वाहक के करीब होता है। मॉड्यूलेशन के कारण, TSOP काफी अच्छी तरह से बाहरी आईआर शोर और सूरज की रोशनी जैसे निरंतर प्रकाश से सुरक्षित है।



हम सबसे दिलचस्प हिस्से की ओर मुड़ते हैं, ऑडियो कैप्चर वाला हिस्सा। तुरंत विकसित योजना प्रस्तुत करें:



छवि



इसलिए, जैसा कि मैंने कहा, एनालॉग भाग 9 वोल्ट से संचालित होता है। यह योजना टेक्सास इंस्ट्रूमेंट्स पर आधारित है, जो कि ओपांपर्स के एकध्रुवीय समावेशन के लिए समर्पित है। एक ऑपरेशनल एम्पलीफायर के रूप में, उन्होंने LM324, एक पैसा "क्वाड-कोर" op-amp चुना। आप हर जगह खरीद सकते हैं, 10 से अधिक रूबल नहीं, इसलिए पूरे एनालॉग भाग को एक चिप पर बनाया गया है।

इलेक्ट्रेट माइक्रोफोन से सिग्नल, रेसिस्टर R4 के माध्यम से खिलाया जाता है, जो डिकूपिंग कैपेसिटर के माध्यम से प्रेप्लिफ़ायर के इनपुट में प्रवेश करता है, और फिर एम्पलीफायर (सर्किट के ऊपरी "तल") में प्रवेश करता है। एम्पलीफायर एक inverting एकध्रुवीय सर्किट पर चालू होते हैं, इसलिए डिवाइडर से आपूर्ति वोल्टेज का आधा गैर-इनवर्टिंग इनपुट पर लागू होता है।

पहले amp के बाद, हमें एक उल्टा संकेत मिलता है, 25 गुना बढ़ जाता है और 4.5 वोल्ट द्वारा स्थानांतरित किया जाता है। दूसरे के बाद (उसके सामने शंकु की जरूरत नहीं है, क्योंकि उसके लिए "ग्राउंड" वही 4.5 वोल्ट है जिसके द्वारा हम पहले ही सिग्नल को शिफ्ट कर चुके हैं), इनपुट सिग्नल फिर से उलटा है और 80 गुना बढ़ गया है।

दो कैस्केड का कुल लाभ 2000 है, अर्थात्। 2 mV के एक माइक्रोफोन से द्विध्रुवी संकेत ADC के सामने आता है, जिसमें 4 वोल्ट का सिग्नल आधा सप्लाई वोल्टेज द्वारा शिफ्ट किया जाता है। आपको क्या चाहिए



मैंने अपने विशिष्ट माइक्रोफोन के लिए लाभ का चयन किया - बेशक, यदि आपका आउटपुट 2 mV नहीं है, लेकिन 20 है, तो लाभ कम किया जाना चाहिए। और आप ट्यूनिंग प्रतिरोधों को पूरी तरह से मिला सकते हैं, और आवश्यकतानुसार लाभ को बदल सकते हैं।



सर्किट का दूसरा "तल" दो एंटी-अलियासिंग फिल्टर हैं, जो दूसरे क्रम के सैलेन-केए टोपोलॉजी के अनुसार बनाया गया है। चूंकि भाषण संकेत मुख्य रूप से कम आवृत्तियों पर होता है, इसलिए मैंने 5KHz की एक नमूना आवृत्ति को चुना, जो हमें 2500zz की अधिकतम सिग्नल आवृत्ति प्रदान करता है। फ़िल्टर को 2KHz के बारे में बताया जाता है, जो 4 के क्रम के संयोजन में उत्कृष्ट एंटी-अलियासिंग फ़िल्टरिंग प्रदान करता है।



और अंतिम चरण के साथ, हम C10 कैपेसिटर के साथ एम्पलीफायरों से आने वाले 4.5 V DC को काटते हैं और नियंत्रक के ADC को पकड़ने के लिए एक नया 2.5V DC घटक जोड़ते हैं, जो निश्चित रूप से 5V द्वारा संचालित होता है और 0 से 5V तक के सिग्नल की प्रतीक्षा करता है।



सर्किट का अंतिम भाग एक बंधन के साथ नियंत्रक है:



छवि



यह TSOP1736, एक शक्ति रिले, नियंत्रण बटन की एक जोड़ी (जो मैंने परियोजना में कभी इस्तेमाल नहीं किया गया था), एक संकेतक डायोड और एक प्रोग्रामिंग पोर्ट दिखाता है।



पूरी योजना इस प्रकार है:



छवि



योजनाबद्ध विकास परिणाम





विकसित मंच विभिन्न डीएसपी प्रयोगों के लिए बहुत सुविधाजनक निकला।

एनालॉग और डिजिटल भागों के लिए, मुझे परीक्षण और उपयोग के सभी समय के लिए कोई शिकायत नहीं थी। लेकिन बिजली की आपूर्ति के साथ, मैं थोड़ा गलत था - एक 12 वी ट्रांसफार्मर ले रहा था, मैंने इस बात पर ध्यान नहीं दिया कि यह रेटेड लोड पर 12 वोल्ट का उत्पादन करता है (लगभग 100 एमए)। और कब से सर्किट बहुत कम खपत करता है, ट्रांसफार्मर 12 नहीं बल्कि लगभग 15 वोल्ट का उत्पादन करता है, यही वजह है कि रैखिक स्टेबलाइजर्स गर्म होते हैं, विशेष रूप से वह जो 5V पर है - क्योंकि पूरा एक दर्जन उस पर पड़ता है।



अन्यथा, सर्किट बहुत सफल निकला, और मैं अक्सर अपनी परियोजनाओं में एक समान एनालॉग भाग का उपयोग करता हूं। चूंकि नियंत्रक 20 मेगाहर्ट्ज पर घाव है, और नमूना आवृत्ति 5 KHz है, इसमें डिजिटल सिग्नल प्रोसेसिंग के लिए 4000 घड़ी चक्र हैं।



यह सब अब के लिए है, लेख के अगले भाग में मैं उस मान्यता एल्गोरिथ्म के बारे में बात करूंगा जिसे मैंने लागू किया था। समय बचाने के लिए, इसे शुद्ध असेंबलर में लागू किया गया था, इसलिए तैयार रहें)



All Articles