विषयसूची:

स्टेम - आवाज और छवि नियंत्रण: १३ कदम
स्टेम - आवाज और छवि नियंत्रण: १३ कदम

वीडियो: स्टेम - आवाज और छवि नियंत्रण: १३ कदम

वीडियो: स्टेम - आवाज और छवि नियंत्रण: १३ कदम
वीडियो: skibidi toilet multiverse 023 bloopers 2024, नवंबर
Anonim
स्टेम - आवाज और छवि नियंत्रण
स्टेम - आवाज और छवि नियंत्रण
स्टेम - आवाज और छवि नियंत्रण
स्टेम - आवाज और छवि नियंत्रण
स्टेम - आवाज और छवि नियंत्रण
स्टेम - आवाज और छवि नियंत्रण

पिछले कुछ वर्षों में आवाज या छवि पहचान के साथ कुछ बनाना आसान हो गया है। दोनों का उपयोग आजकल अधिक से अधिक किया जा रहा है। और ये DIY प्रोजेक्ट्स में लोकप्रिय विषय हैं। अधिकांश समय निम्न में से किसी एक कंपनी के सॉफ़्टवेयर/एपीआई के साथ बनाया गया है:

  • Google वॉइस।
  • अमेज़न एलेक्सा।
  • माइक्रोसॉफ्ट संज्ञानात्मक सेवाएं।

यहां तक कि कुछ DIY किट भी हैं, जैसे शौक़ीन लोगों का समर्थन करने के लिए Google AIY Voice Kit। इनमें से अधिकांश उत्पाद रास्पबेरी पाई या इसी तरह के बोर्ड का उपयोग करते हैं। दुर्भाग्य से, यह उन लोगों के लिए उपयुक्त नहीं है जो यह नहीं जानते कि प्रोग्रामिंग भाषा को कैसे संभालना है, जैसे कि पायथन।

यह निर्देशयोग्य आवाज पहचान और छवि ओसीआर के बारे में है, बिना किसी प्रोग्रामिंग भाषा के ज्ञान के। हालाँकि, तार्किक सोच एक आवश्यकता बनी हुई है। इसके द्वारा मेकब्लॉक न्यूरॉन उत्पाद का उपयोग प्रवाह आधारित प्रोग्रामिंग वातावरण के साथ किया जाता है।

यह न्यूरॉन उत्पाद 2017 में किकस्टार्टर प्रोजेक्ट के रूप में शुरू हुआ। यह सभी प्रकार के इलेक्ट्रॉनिक 'ब्लॉक' का उपयोग करने वाला एक इलेक्ट्रॉनिक बिल्डिंग ब्लॉक प्लेटफॉर्म है जिसे चुंबकीय कनेक्टर द्वारा जोड़ा जा सकता है। और मूल रूप से एक एसटीईएम (विज्ञान, प्रौद्योगिकी, इंजीनियरिंग और गणित) उत्पाद के रूप में है। इसलिए यह उत्पाद तार्किक सोच पर केंद्रित है और (सीखना) कार्यक्रम पर केंद्रित है।

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

इस निर्देश के पहले चरण न्यूरॉन उत्पाद के बारे में एक संक्षिप्त परिचय के साथ शुरू होते हैं और उन्हें कैसे प्रोग्राम किया जाता है। इसमें प्रवाह-आधारित प्रोग्रामिंग और कुछ उपलब्ध इलेक्ट्रॉनिक घटक शामिल हैं। इसके बाद विज़न और वॉयस रिकग्निशन के साथ कुछ उदाहरण दिए गए हैं। और अंत में एक छोटा कछुआ रोबोट। जिसे जॉयस्टिक के जरिए रिमोट से कंट्रोल किया जा सकता है। इस रोबोट से वॉयस रिकग्निशन का इस्तेमाल करना संभव है। हालांकि, आवाज नियंत्रण के प्रतिक्रिया समय को ध्यान में रखा जाना चाहिए।

इसके अलावा कुछ अतिरिक्त तकनीकी जानकारी है। ये चरण पृष्ठभूमि की जानकारी प्रदान करते हैं और न्यूरॉन उत्पाद में अंतर्दृष्टि प्रदान करते हैं।

जी ओ एस एस ई ए डी ई एम ए

चरण 1: न्यूरॉन एक्सप्लोरर किट

न्यूरॉन एक्सप्लोरर किट
न्यूरॉन एक्सप्लोरर किट
न्यूरॉन एक्सप्लोरर किट
न्यूरॉन एक्सप्लोरर किट

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

उत्पाद अप्रैल 2017 में किकस्टार्टर प्रोजेक्ट के रूप में शुरू हुआ। और यह निर्देशयोग्य एक्सप्लोरर किट का उपयोग करता है। इस किट में निम्नलिखित भाग होते हैं:

  • वाईफाई (न्यूरॉन)
  • शक्ति (न्यूरॉन)
  • माइक्रोफ़ोन और स्पीकर (USB)
  • एलईडी पैनल 8x8 आरजीबी (न्यूरॉन)
  • जॉयस्टिक (न्यूरॉन)
  • घुंडी (न्यूरॉन)
  • एलईडी पट्टी चालक (न्यूरॉन)
  • एलईडी पट्टी 50 सेमी (15 एलईडी)
  • दोहरी डीसी मोटर चालक (न्यूरॉन)
  • डीसी मोटर (2x)
  • मोटर ब्रैकेट (2x)
  • पहिए (2x)
  • मिनी व्हील
  • दोहरी सर्वो मोटर चालक (न्यूरॉन)
  • सर्वो मोटर (2x)
  • आवाज पहचान (न्यूरॉन)
  • अल्ट्रासोनिक सेंसर (न्यूरॉन)
  • वायरलेस ट्रांसमीटर (न्यूरॉन)
  • वायरलेस रिसीवर (न्यूरॉन)
  • कैमरा (यूएसबी)
  • लेजर सूचक
  • न्यूरॉन बोर्ड (4x)
  • चुंबक तार 10 सेमी (2x)
  • चुंबक तार 20 सेमी (2x)
  • माइक्रो यूएसबी केबल 20 सेमी (2x)
  • माइक्रो यूएसबी केबल 100 सेमी (2x)

इस किट में सभी प्रकार की एसटीईएम परियोजनाओं के लिए सभी इलेक्ट्रॉनिक पुर्जे शामिल हैं। ऐसा लगता है कि इसका प्राथमिक फोकस बिंदु छोटे रोबोट बनाना है। लेकिन कैमरा और आवाज की पहचान इसे सिर्फ रोबोट की तुलना में अधिक संभावनाएं प्रदान करती है।

प्रत्येक न्यूरॉन में एक चुंबक होता है। और इसे धातु की वस्तुओं पर या आपूर्ति किए गए न्यूरॉन बोर्डों पर रखा जा सकता है।

इस एक्सप्लोरर किट में "गायब" होने वाला एकमात्र हिस्सा एक लाइन फॉलोअर सेंसर है। यह "ऑल इन वन" किट का एक हिस्सा है। एलईडी पट्टी या एलईडी मैट्रिक्स के बजाय यह सेंसर अधिक तार्किक विकल्प होगा।

चरण 2: न्यूरॉन ब्लॉक

न्यूरॉन ब्लॉक
न्यूरॉन ब्लॉक
न्यूरॉन ब्लॉक
न्यूरॉन ब्लॉक
न्यूरॉन ब्लॉक
न्यूरॉन ब्लॉक

किकस्टार्टर अभियान के माध्यम से कई न्यूरॉन पैकेज बेचे गए। और इस समय पहला पैकेज नियमित बिक्री के लिए उपलब्ध है।

लगभग 30 अलग-अलग ब्लॉक हैं, जिन्हें चुंबकीय कनेक्टर के साथ एक दूसरे से जोड़ा जा सकता है। यह ब्लॉकों की एक पंक्ति बनाता है। जो एप (एंड्रॉयड, आईओएस) के जरिए एक दूसरे से कम्युनिकेट करते हैं।

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

एक संचार ब्लॉक की ऊर्जा का रंग हरा होता है, और उनमें से 5 होते हैं:

  • शक्ति।
  • वायरलेस रिसीवर।
  • वायरलेस ट्रांसमीटर।
  • वाई - फाई।
  • ब्लूटूथ।

ऐप और स्क्रैच प्रोग्राम के लिए वाईफाई या ब्लू टूथ कनेक्शन की आवश्यकता होती है। 2 वायरलेस ब्लॉक का उपयोग कम दूरी के साथ रिमोट नियंत्रित परियोजनाओं के लिए किया जा सकता है।

एक्सप्लोरर किट में तीन नारंगी नियंत्रण ब्लॉक होते हैं:

  • घुंडी।
  • जॉयस्टिक।
  • आवाज़ पहचान।

और दो पीले सेंसर:

  • कैमरा
  • अतिध्वनि संवेदक

नियंत्रण और सेंसर ब्लॉक आपके कार्यक्रम के लिए इनपुट प्रदान करते हैं। नॉब 0 और 100 के बीच का मान देता है, और इसका उपयोग मंदर के रूप में या मोटर की गति को नियंत्रित करने के लिए किया जा सकता है। जॉयस्टिक -100 और 100 के बीच दो मान देता है, प्रत्येक दिशा के लिए एक मान। अल्ट्रासोनिक सेंसर सेंटीमीटर में दूरी को मापता है। आउटपुट मान 0 और 400 के बीच है।

इस किट में पांच ब्लू आउटपुट ब्लॉक हैं:

  • एलईडी पट्टी चालक + एलईडी पट्टी।
  • एलईडी पैनल।
  • डीसी मोटर चालक
  • सर्वो मोटर चालक
  • माइक्रोफोन और स्पीकर

आउटपुट ब्लॉक बहुत विविध हैं। यह कई अलग-अलग प्रकार की परियोजनाओं के लिए अनुमति देता है। एक एलईडी लैंप की तरह, एक चलती रोबोट और/या एक ध्वनि रिकॉर्डर।

सभी न्यूरॉन ब्लॉक किकस्टार्टर पेज पर सूचीबद्ध हैं।

चरण 3: न्यूरॉन प्रोग्रामिंग

न्यूरॉन प्रोग्रामिंग
न्यूरॉन प्रोग्रामिंग
न्यूरॉन प्रोग्रामिंग
न्यूरॉन प्रोग्रामिंग

न्यूरॉन ब्लॉकों का उपयोग करने के कई तरीके हैं।

  1. ऑफ़लाइन।
  2. एक ऐप के साथ ऑनलाइन।
  3. एमब्लॉक स्क्रैच के साथ ऑनलाइन।

ऑफलाइन विभिन्न भागों को पेश करने का एक आसान तरीका प्रदान करता है। इसके लिए किसी प्रोग्रामिंग की आवश्यकता नहीं है। ऑनलाइन प्रोग्रामिंग एक ऐप (एंड्रॉइड/आईओएस) या एक कंप्यूटर प्रोग्राम (एमब्लॉक 4.0) के साथ की जा सकती है। वाईफाई ब्लॉक में प्रोग्राम को सेव करने की क्षमता होती है। यह प्रोग्राम तब तक चलता रहता है जब तक इसे ऐप द्वारा बंद नहीं कर दिया जाता।

एमब्लॉक 4.0 सॉफ्टवेयर की तुलना में ऐप का उपयोग करना आसान है। और सभी न्यूरॉन ब्लॉक वर्तमान में mBlock सॉफ़्टवेयर में मौजूद नहीं हैं।

न्यूरॉन बॉक्स में नमूना परियोजनाओं के साथ कुछ कार्ड हैं। इन्हें ऐप की मदद से एक साथ रखा जा सकता है, और विभिन्न ब्लॉकों के मूल सिद्धांतों को दिखाया जा सकता है।

चरण 4: ऑफलाइन मोड

ऑफ़लाइन मोड
ऑफ़लाइन मोड
ऑफ़लाइन मोड
ऑफ़लाइन मोड
ऑफ़लाइन मोड
ऑफ़लाइन मोड

यह मोड मुख्य रूप से उत्पाद से परिचित होने के लिए है, और इसके लिए किसी प्रोग्रामिंग की आवश्यकता नहीं है।

आउटपुट ब्लॉक का प्रत्येक सेंसर दायीं ओर से जुड़े ब्लॉकों को आउटपुट प्रदान करने में सक्षम है। और प्रत्येक डिस्प्ले ब्लॉक बाईं ओर से इनपुट सिग्नल प्राप्त कर सकता है; इसका आउटपुट देता है; और इनपुट सिग्नल को दाईं ओर से जुड़े अतिरिक्त ब्लॉकों को भेजता है।

इसके द्वारा एक ऑफ़लाइन श्रृंखला में हमेशा एक निश्चित क्रम में कई ब्लॉक होते हैं: एक हरा पावर ब्लॉक; एक पीला या नारंगी (इनपुट या नियंत्रण) ब्लॉक; और एक या अधिक ब्लू आउटपुट ब्लॉक। और यह ऑफलाइन मोड केवल बाएं से दाएं (पठनीय अक्षरों के साथ) काम करता है।

एक इनपुट या कंट्रोल ब्लॉक निम्नलिखित सभी आउटपुट ब्लॉक को नियंत्रित करता है। और आउटपुट इनपुट ब्लॉक के प्रकार पर निर्भर करता है। उदाहरण के लिए: एलईडी मैट्रिक्स से कनेक्ट होने पर नॉब डिमर की तरह काम करता है। और जॉयस्टिक एलईडी मैट्रिक्स पर दिशा दिखाता है। एकाधिक इनपुट ब्लॉक से सिग्नल ऑफ़लाइन मोड में संयोजित नहीं किए जा सकते। केवल अंतिम ब्लॉक का सिग्नल आउटपुट ब्लॉक को भेजा जाता है।

इनपुट और/या नियंत्रण ब्लॉकों के संयोजन के लिए ऑनलाइन (प्रोग्रामिंग) मोड की आवश्यकता होती है।

चरण 5: प्रवाह आधारित प्रोग्रामिंग

प्रवाह आधारित प्रोग्रामिंग
प्रवाह आधारित प्रोग्रामिंग

जब न्यूरॉन ब्लॉक एक टैबलेट (आईपैड) से जुड़े होते हैं तो वे स्वचालित रूप से ऑनलाइन मोड में सक्रिय हो जाते हैं। अब सभी जुड़े हुए ब्लॉक का उपयोग एक दूसरे के साथ बातचीत करने के लिए किया जा सकता है। जबकि कार्यक्रम का वातावरण तर्क और गणित के संचालन को जोड़ता है।

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

न्यूरॉन ऐप प्रवाह आधारित प्रोग्रामिंग का उपयोग करता है। न्यूरॉन ब्लॉक के अलावा जो आउटपुट वैल्यू देते हैं या इनपुट वैल्यू की आवश्यकता होती है, सभी प्रकार के विभिन्न प्रोग्रामिंग नोड होते हैं। ये कई क्षेत्रों में विभाजित हैं और ऐप के अंदर अलग-अलग टैब पर रखे गए हैं। डिफ़ॉल्ट रूप से, 4 टैब होते हैं:

  • बुनियादी
  • नियंत्रण
  • समय
  • उन्नत

इन प्रोग्रामिंग नोड्स का उपयोग न्यूरॉन ब्लॉकों के बिना किया जा सकता है।

मेकब्लॉक ऑनलाइन प्रलेखन ऐप इंटरफ़ेस की विशेषताओं को दर्शाता है।

तर्क और गणित

ये बुनियादी कार्य हैं। और एक या दो इनपुट और एक आउटपुट वैल्यू है। कई सरल गणना और तुलनाएं हैं।

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

टॉगल फ़ंक्शन हर बार 'Y' प्राप्त करने पर अपनी स्थिति बदल देता है।

नंबर

दो नंबर नोड्स हैं, एक "बेसिक" और एक "कंट्रोल" वर्जन (वे अलग-अलग टैब पर हैं)। नियंत्रण संस्करण एक निश्चित संख्या है, जबकि मूल संख्या में 'चालू' और 'बंद' स्थिति होती है। निम्नलिखित उदाहरण अंतर दिखाता है। अंतराल प्रत्येक सेकंड में ('Y') और बंद ('N') पर स्विच करता है। इनपुट 'Y' होने पर हरे रंग की संख्या का आउटपुट 5 है, अन्यथा मान 0 है।

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

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

अनुक्रम

अनुक्रम दोहराया जाता है या केवल एक बार जब इनपुट 'Y' होता है। यह क्रियाओं के अनुक्रम की अनुमति देता है।

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

स्विच चालू होने पर अनुक्रम को एक संकेत मिलता है। अनुक्रम का आउटपुट एक संकेतक को दिया जाता है।

लाइनों के रंग पर ध्यान दें: नीली रेखाएं वर्तमान प्रवाह को दर्शाती हैं। और नोड के दाईं ओर का सर्कल हमेशा वर्तमान आउटपुट दिखाता है।

स्केल

स्केल नोड एक इनपुट रेंज को आउटपुट रेंज में ट्रांसलेट करता है। उदाहरण के लिए 0 से 100 का अनुवाद 0 और 255 के बीच के मान में किया जा सकता है।

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

अधिकतम इनपुट रेंज से ऊपर के मान का परिणाम अधिकतम आउटपुट स्केल से अधिक होता है! फ़िल्टर का उपयोग मान को सीमित करने के लिए किया जा सकता है।

वाल्व

यह एक नोड है जो ऊपरी इनपुट मान सत्य होने पर कम इनपुट मान पास करता है। यह एक उदाहरण के साथ सबसे अच्छी तरह से समझाया गया है:

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

हरे रंग का अंतराल नोड प्रत्येक आधे सेकेंड में 0 और 1 के बीच स्विच करता है। इस नोड का आउटपुट ऊपरी ग्राफ पर दिखाई देता है। बैंगनी पल्स नोड -२५५ और २५५ के बीच मूल्यों के साथ एक साइनस आउटपुट देता है। यह निचले ग्राफ पर दिखाया गया है।

अंतराल और साइनस दोनों ही वाल्व नोड के लिए इनपुट हैं। और आउटपुट मान 0 होता है जब अंतराल मान 'N' होता है। जब अंतराल मान 'Y' होता है, तो आउटपुट मान साइनस इनपुट मान के बराबर होता है। यह मध्य ग्राफ देता है।

चरण 6: प्रवाह उदाहरण

प्रवाह उदाहरण
प्रवाह उदाहरण
प्रवाह उदाहरण
प्रवाह उदाहरण

फ्लो प्रोग्रामिंग दिखाने का सबसे अच्छा तरीका एक उदाहरण है। यह उदाहरण किसी न्यूरॉन ब्लॉक का उपयोग नहीं करता है। और हर कोई ऐप डाउनलोड करने के बाद इसे प्रोग्राम कर सकता है। कोड वातावरण खोलें और एक नया प्रोग्राम बनाएं। कनेक्शन के लिए पूछे जाने पर '(X)' चुनें, और प्रोग्रामिंग शुरू करें।

बस आवश्यक नोड्स को प्रोग्राम क्षेत्र में खींचें और लाइनों को कनेक्ट करें। संभावनाओं को देखने के लिए और मूल्यों/सेटिंग्स को बदलने के लिए डी नोड्स पर क्लिक करें।

डिफ़ॉल्ट रूप से बटन का आउटपुट 'N' होता है। एक बटन दबाने पर आउटपुट के रूप में 'Y' प्राप्त होता है। यह आउटपुट एक यादृच्छिक संख्या जनरेटर को अग्रेषित किया जाता है। यह हर बार इनपुट का मान 'Y' होने पर एक नया नंबर (0 और 100 के बीच) उत्पन्न करता है और आउटपुट को अगले नोड में भेजता है।

तुलना नोड्स को 2 इनपुट की आवश्यकता होती है और शर्त पूरी होने पर 'Y' मान लौटाते हैं। ऊपरी तुलना नोड जाँचता है कि क्या A पोर्ट का मान B पोर्ट के मान से अधिक है। अगर यह सच है तो दीपक हरा हो जाता है। वर्तमान में निचला दीपक हरा है, क्योंकि 21 नीचे 23 है।

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

चरण 7: छवि नियंत्रण

छवि नियंत्रण
छवि नियंत्रण
छवि नियंत्रण
छवि नियंत्रण

दो न्यूरॉन ब्लॉक हैं जिन्हें यूएसबी केबल के माध्यम से वाईफाई ब्लॉक से जोड़ा जा सकता है: कैमरा और माइक्रोफोन/स्पीकर। दोनों डिवाइस नियमित यूएसबी डिवाइस हैं और इन्हें पीसी से जोड़ा जा सकता है। कैमरे को कुछ अतिरिक्त ड्राइवरों की आवश्यकता होती है, लेकिन स्पीकर एक नियमित यूएसबी स्पीकर के रूप में काम करता है।

जब कैमरा वाईफाई ब्लॉक से जुड़ा होता है तो ऐप के अंदर एक कैमरा टैब और आइकन दिखाई देता है। आइकन कैमरे की छवि के साथ एक पूर्वावलोकन विंडो खोलता है।

कैमरा टैब के अंदर एक फोटो/कैमरा नोड होता है। यह एक तस्वीर लेता है जब 'Y' (सत्य) मान के साथ एक इनपुट सिग्नल होता है। इस नोड को प्रोग्राम एरिया में रखने के बाद इसके तीन विकल्प होते हैं (नोड पर क्लिक करें):

  • फोटो फ्रेम
  • ओसीआर
  • इमोटिकॉन टेस्ट

फोटो फ्रेम फोटो नोड का आउटपुट दिखाता है। अगले तीन नोड एक "फोटो कैमरा" प्रदान करते हैं। बटन दबाए जाने पर कैमरा एक तस्वीर लेता है (यह आउटपुट के रूप में 'Y' देता है)। और यह फोटो फ्रेम के अंदर दिखाया गया है। छवि को वाईफाई ब्लॉक के अंदर संग्रहीत किया जाता है, लेकिन एक नया फोटो लेने पर इसे अधिलेखित कर दिया जाता है।

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

कैमरे में इनपुट के लिए टाइमर का उपयोग करना संभव है, लेकिन अंतराल को बहुत छोटा (> 1 सेकंड) न बनाएं। वरना वाईफाई ब्लॉक डेटा को हैंडल नहीं कर सकता और कुछ देर के लिए हैंग हो जाता है।

OCR नोड इमेज को टेक्स्ट में ट्रांसलेट करता है। यह Microsoft संज्ञानात्मक सेवाओं का उपयोग करता है। वाईफाई ब्लॉक इंटरनेट से जुड़ा होना चाहिए, और ऐप वाईफाई ब्लॉक से जुड़ा होना चाहिए।

बटन दबाए जाने पर अगला प्रोग्राम एक तस्वीर लेता है। यह तस्वीर ओसीआर नोड द्वारा प्रदर्शित और संसाधित की जाती है। आउटपुट की तुलना तीन टेक्स्ट-तुलना नोड्स द्वारा की जाती है। ये "एक", "दो" और "तीन" मानों की जांच करते हैं। और प्रत्येक मान एलईडी पैनल पर एक अलग छवि दिखाता है। OCR नोड का आउटपुट "लेबल" नोड द्वारा भी प्रदर्शित किया जाता है। यह "नहीं" (गलत) दिखाता है जब कुछ भी पहचाना नहीं जाता है।

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

नीली रेखाएँ प्रोग्राम के अंदर डेटा प्रवाह को दर्शाती हैं। और प्रत्येक नोड के बाद 'Y' और 'N' इसके आउटपुट मान का प्रतिनिधित्व करता है। यह एक प्रोग्राम के भीतर समस्या निवारण को सरल करता है। दुर्भाग्य से, एलईडी मैट्रिक्स का आउटपुट ऐप में प्रदर्शित नहीं होता है।

अंतिम कैमरा नोड विकल्प इमोटिकॉन परीक्षण है। यह एक छवि पर चेहरों को एक भावना में बदल देता है।

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

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

चरण 8: आवाज पहचान (माइक्रोफोन)

आवाज पहचान (माइक्रोफोन)
आवाज पहचान (माइक्रोफोन)
आवाज पहचान (माइक्रोफोन)
आवाज पहचान (माइक्रोफोन)

कैमरे के अलावा एक माइक्रोफोन/स्पीकर न्यूरॉन को वाईफाई ब्लॉक से जोड़ा जा सकता है। इसका उपयोग ऑडियो अंशों को रिकॉर्ड और प्लेबैक करने के लिए किया जा सकता है। इस न्यूरॉन को जोड़ने से ऐप में एक अतिरिक्त "ध्वनि" टैब मिलता है।

रिकॉर्ड नोड केवल ध्वनि रिकॉर्ड करेगा यदि इनपुट "Y" है, इसके लिए एक बटन या स्विच की आवश्यकता होती है। रिकॉर्ड किया गया ऑडियो टुकड़ा रिकॉर्ड नोड का आउटपुट है। "प्ले साउंड" नोड को जोड़ने से यह आउटपुट तुरंत चलता है। इसका उपयोग किया जा सकता है तोता बनाने के लिए:

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

माइक्रोफ़ोन नोड पर क्लिक करने से 2 विकल्प मिलते हैं: "वॉयस टू टेक्स्ट" और "सेव रिकॉर्ड"।

"रिकॉर्ड सहेजें" नोड वाईफाई ब्लॉक के अंदर फाइल सिस्टम पर ऑडियो फाइल को सेव करता है। हर बार एक नई रिकॉर्डिंग शुरू होने पर यह फ़ाइल अधिलेखित हो जाती है।

"प्ले साउंड" नोड इनपुट ऑडियो चलाने में सक्षम है, लेकिन ध्वनि प्रभाव या रिकॉर्ड की गई फ़ाइल का चयन करना भी संभव है। दी गई ध्वनि को प्रारंभ करने के लिए इसे एक इनपुट ट्रिगर की आवश्यकता होती है। और जब इनपुट 'एन' (झूठा) होता है तो यह तुरंत बंद हो जाता है। निम्नलिखित उदाहरण एक प्रकार का तानाशाही फोन है। ऊपरी बटन रिकॉर्डिंग करता है और निचला बटन इस रिकॉर्डिंग को चलाता है।

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

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

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

इस फीचर की डिबगिंग वाईफाई ब्लॉक (एडवांस फीचर) में लॉग इन करके की जा सकती है।

[२०१८-०१-१९ २३:००:३५] [चेतावनी] अनुरोध हैंडलर 'साउंड सर्वर' को बुलाया गया था:

एकाधिक शब्दों की जांच करना संभव है। और तुलना नोड कैमरा ओसीआर की तरह ही काम करता है।

कभी-कभी एक ही शब्द अलग-अलग आउटपुट देता है। उदाहरण के लिए: "अलविदा" निम्न में से कोई एक मान दे सकता है: "अलविदा" या "अलविदा"। इसके लिए एक ही आउटपुट के साथ कई टेक्स्ट नोड्स की आवश्यकता होती है:

निर्देश योग्य रोबोट
निर्देश योग्य रोबोट

नोट: टेक्स्ट भाषा के लिए डिफ़ॉल्ट स्पीच अंग्रेजी है।

चरण 9: आवाज पहचान (न्यूरॉन)

आवाज पहचान (न्यूरॉन)
आवाज पहचान (न्यूरॉन)
आवाज पहचान (न्यूरॉन)
आवाज पहचान (न्यूरॉन)
आवाज पहचान (न्यूरॉन)
आवाज पहचान (न्यूरॉन)

आवाज को पाठ में बदलने के लिए यह एक समर्पित न्यूरॉन है। यह 22 कमांड को स्वीकार करता है जो ब्लॉक और न्यूरॉन कोड के अंदर हार्ड-कोडेड होते हैं:

वर कमांड = {'लाइट चालू करें': 3, 'टर्न रेड': 4, 'टर्न ब्लू': 5, 'टर्न ग्रीन': 6, 'टर्न व्हाइट':7, 'मोर लाइट':8, 'लेस लाइट':9, 'लाइट्स ऑफ':10, 'मोटर फॉरवर्ड':11, 'मोटर बैकवर्ड':12, 'स्पीड अप':13, 'स्पीड डाउन':14, 'लव':15, 'स्माइल':16, 'एंग्री':17, 'सैड': 18, 'रॉक एंड रोल':19, 'फायर फायर':20, 'गेम स्टार्ट':21, 'विंटर इज कमिंग':22, 'स्टार्ट':23, 'शट डाउन':24};

यह ब्लॉक केवल अंग्रेजी स्वीकार करता है। और इसके लिए सही उच्चारण की आवश्यकता होती है। गलती की ज्यादा गुंजाइश नहीं है। और यहां तक कि गूगल वॉयस ट्रांसलेट वॉयस आउटपुट हमेशा संबंधित कमांड को सक्रिय नहीं करता है। लेकिन Google स्पीच का उपयोग करना एक अच्छा प्रारंभिक बिंदु बना हुआ है। "हैलो मेकब्लॉक", "हैलो मेकब्लॉक" और/या "हेलो मेकब्लॉक" से शुरू करें। इसके बाद "सर्दी आ रही है" या "हरे रंग की बारी"।

इस स्टेप में पहली इमेज के कोड में इन कमांड्स का इस्तेमाल किया गया है। ऊपरी वॉयस कमांड नोड के दाईं ओर संकेतक 'Y' (सच) है। यह इंगित करता है कि आदेश को मान्यता दी गई थी।

इस न्यूरॉन के साथ काम करने के लिए कुछ अभ्यास की आवश्यकता होती है। सौभाग्य से, ब्लॉक एक प्राप्त करने के बाद संदेश को दोहराता है (इसमें एक स्पीकर और माइक्रोफ़ोन होता है)।

चरण 10: रिमोट नियंत्रित लेगो कछुआ

रिमोट नियंत्रित लेगो कछुआ
रिमोट नियंत्रित लेगो कछुआ
रिमोट नियंत्रित लेगो कछुआ
रिमोट नियंत्रित लेगो कछुआ
रिमोट नियंत्रित लेगो कछुआ
रिमोट नियंत्रित लेगो कछुआ
रिमोट नियंत्रित लेगो कछुआ
रिमोट नियंत्रित लेगो कछुआ

न्यूरॉन एक्सप्लोरर किट में 2 डीसी मोटर और 2 सर्वो मोटर शामिल हैं। यह एक रोबोट के लिए कहता है: एक तीन पहियों वाला कछुआ। यह फ्रेम के रूप में कुछ लेगो भागों के साथ किट से मोटर और पहियों का उपयोग करता है।

इस फ्रेम के ऊपर 8 बीम, एक गोलाकार तरीके से जुड़े हुए हैं। ये बीम LED स्ट्रिप को सपोर्ट देते हैं। 8 बीम के ऊपर तीन चुंबकीय न्यूरॉन बोर्ड रखे गए हैं। इनमें निम्नलिखित न्यूरॉन भाग होते हैं:

  • वायरलेस रिसीवर
  • शक्ति
  • 10 सेमी केबल
  • सर्वो मोटर चालक
  • डीसी मोटर चालक
  • एलईडी पट्टी चालक
  • 10 सेमी केबल

अंतिम 10 सेमी केबल अल्ट्रासोनिक सेंसर से जुड़ी होती है, जिसे कछुए के सिर पर रखा जाता है। इस सिर में चौथा चुंबकीय न्यूरॉन बोर्ड होता है। अंत में, पूंछ में एक सर्वो मोटर होती है, जिसके साथ एक लेगो बीम जुड़ा होता है।

परिणाम केवल "तार और इलेक्ट्रॉनिक्स" जैसा दिखता है, लेकिन कछुए की ढाल लगभग सभी इलेक्ट्रॉनिक्स को कवर करती है।

रोबोट को जॉयस्टिक से नियंत्रित किया जा सकता है। इसके लिए वाईफाई (या ब्लूटूथ) ब्लॉक, जॉयस्टिक और वायरलेस ट्रांसमीटर की आवश्यकता होती है। रिमोट कंट्रोलर को यूएसबी पावर स्रोत की आवश्यकता होती है। केवल एक पावर ब्लॉक उपलब्ध है, जो रोबोट के अंदर है।

पहली छवि इस रोबोट के लिए एक संभावित कार्यक्रम दिखाती है। जॉयस्टिक डीसी मोटर ब्लॉक से जुड़ा है। गति के लिए ऊपर/नीचे और दिशा के लिए बाएं/दाएं।

अल्ट्रासोनिक सेंसर के आउटपुट की तुलना 100 सेमी के मान से की जाती है। यदि दूरी अधिक है, तो सभी एल ई डी पर रंग हरा/पीला दिखाया गया है। दूरी 100 सेमी से कम होने पर रंग लाल/नारंगी हो जाते हैं।

टेल -180 और 180 के बीच पल्स नोड का उपयोग करता है। ABS फ़ंक्शन ऋणात्मक मान को सकारात्मक बनाता है। यह मान सर्वो मोटर को दिया जाता है, और पूंछ हिलने लगती है।

न्यूरॉन ब्लॉक और फंक्शन नोड्स को मिलाकर अधिक जटिल प्रोग्राम लिखना संभव है। पूंछ की गति रोबोट की गति पर निर्भर हो सकती है या यदि अल्ट्रासोनिक सेंसर 30 सेमी से कम मापता है तो रोबोट रुक सकता है।

चरण 11: कछुआ 2.0

कछुआ 2.0
कछुआ 2.0
कछुआ 2.0
कछुआ 2.0
कछुआ 2.0
कछुआ 2.0

पिछले लेगो कछुए को कार्डबोर्ड / लकड़ी के टुकड़े का उपयोग करके सरल बनाया जा सकता है। मैंने 8 मिमी प्लाईवुड के एक टुकड़े का उपयोग किया है। 19 सेमी के व्यास के साथ एक वृत्त बनाने के लिए एक आरा का उपयोग करें। सभी छेदों को 4, 8 मिमी की ड्रिल से ड्रिल करें। चौकोर उद्घाटन बनाने के लिए ड्रिल और आरा का उपयोग करें। ये पहियों और तारों के लिए हैं।

मैंने न्यूरॉन भागों को लकड़ी की प्लेट से जोड़ने के लिए लेगो भागों का उपयोग किया है। एक्सप्लोरर किट के अंदर कुछ संगत कनेक्टर हैं। लेकिन अधिकांश कनेक्शनों के लिए m4 बोल्ट का उपयोग करना भी संभव है।

दो डीसी मोटर्स (पहियों के साथ) नीचे (गहरे लाल वर्ग) से जुड़ी हुई हैं। बिल्कुल पीछे के पहिये (काले आयत) की तरह। प्लेट और रियर व्हील के बीच अतिरिक्त दूरी के लिए लेगो टेक्निक बीम का उपयोग किया जाता है। तीन बैंगनी वर्ग चुंबकीय न्यूरॉन बोर्ड के लिए हैं। चौथे चुंबकीय न्यूरॉन बोर्ड का उपयोग सिर/अल्ट्रासोनिक सेंसर (नारंगी आयत) के लिए किया जाता है। लाल वृत्त एलईडी पट्टी का स्थान दिखाता है। एलईडी-पट्टी को जकड़ने के लिए छोटे रबर बैंड (लूम बैंड) का उपयोग करें।

यह रोबोट लेगो टर्टल के समान कोड के साथ काम करता है।

चरण 12: सॉफ्टवेयर आंतरिक

सॉफ्टवेयर आंतरिक
सॉफ्टवेयर आंतरिक
सॉफ्टवेयर आंतरिक
सॉफ्टवेयर आंतरिक
सॉफ्टवेयर आंतरिक
सॉफ्टवेयर आंतरिक

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

मेकब्लॉक जीथब पेज में न्यूरॉन कोड होता है। आप इसे डाउनलोड कर सकते हैं और कोड का पता लगा सकते हैं। यह जावास्क्रिप्ट में लिखा गया है और नोडजेएस का उपयोग करता है।

वाईफाई ब्लॉक को इंटरनेट से जोड़ा जाना चाहिए। जब ऐप वाईफाई ब्लॉक के एसआईडी से जुड़ता है तो उसे वाईफाई ब्लॉक से एक आईपी एड्रेस मिलता है। वाईफाई ब्लॉक अब गेटवे की तरह काम करता है।

वाईफाई ब्लॉक का आईपी एड्रेस 192.168.100.1 है। पोर्ट 80 पर एक वेबसर्वर चल रहा है जो एक कॉन्फ़िगरेशन इंटरफ़ेस (पासवर्ड = मेकब्लॉक) दिखाता है। यह विभिन्न सेटिंग्स और विकल्पों को बदलने की अनुमति देता है।

आप समय क्षेत्र और/या वाईफाई एसएसआईडी बदल सकते हैं। लेकिन सावधान रहें, अन्य सेटिंग्स के बारे में बहुत कम दस्तावेज हैं।

सेवाएँ/नेटवर्क शेयर टैब सभी नेटवर्क शेयरों को दिखाता है। मैंने "/tmp/run/mountd/mmcblk0p1/न्यूरॉन्स-सर्वर" फ़ोल्डर में एक अतिरिक्त शेयर "सर्वर" बनाया है। इस फ़ोल्डर (और उप-फ़ोल्डर्स) में सभी लॉग-, ध्वनि- और छवि-फ़ाइलें हैं।

यह विंडोज फाइल एक्सप्लोरर के साथ सभी फाइलों को ब्राउज़ करना संभव बनाता है। "\192.168.100.1\सर्वर" शेयर को खोलने से न्यूरॉन इंजन की सभी फाइलों को रीड-एक्सेस मिलता है। सर्वर लॉग फ़ाइल सहित:

डिवाइस यूआईडी:6A1BC6-AFA-B4B-C1C-FED62004

mqtt.connect को iot क्लाउड से कनेक्ट करने का प्रयास करें ठीक है… [2018-01-19 22:56:43] [चेतावनी] सर्वरलॉग - अनुरोध हैंडलर 'साउंड सर्वर': {"startRecord"} [2018-01-19 22:56:43] [चेतावनी] सर्वरलॉग - रिकॉर्ड शुरू करें [2018-01-19 22:56:45] [चेतावनी] सर्वरलॉग - अनुरोध हैंडलर 'साउंड सर्वर': {"stopRecord"} [2018-01-19 22:56:45] [चेतावनी] सर्वरलॉग - स्टॉप रिकॉर्ड [2018-01-19 22:56:46] [चेतावनी] सर्वरलॉग - अनुरोध हैंडलर 'साउंड सर्वर': {"स्पीकर रिकॉग्निज"} अनुरोध भाषण परिणाम: हैलो

config.js फ़ाइल में सभी सेटिंग्स हैं। इसमें Microsoft कुंजियाँ और वर्तमान लॉग-स्तर शामिल हैं। इन्हें बदला जा सकता है, लेकिन मूल फ़ाइल की एक प्रति हमेशा अपने पास रखें।

डिफ़ॉल्ट लॉग स्तर "चेतावनी" है। जरूरत पड़ने पर इसे बदला जा सकता है:

* `लॉगलेवल`: सेट करने के लिए लॉगलेवल, उस लॉग को प्रिंट नहीं करेगा जिसकी प्राथमिकता सेट से कम है।

* वर्तमान में लॉगलेवल का समर्थन करता है * **ट्रेस**, * **डीबग**, * **जानकारी**, * **चेतावनी**, * **त्रुटि**, **घातक**

मैंने केवल-पढ़ने के लिए नेटवर्क शेयर बनाया है। रीड-राइट शेयर वाईफाई ब्लॉक के अंदर इमेज-j.webp

पोर्ट 22 पर एक ssh सर्वर भी चल रहा है। इससे Linux शेल में लॉगऑन करना संभव हो जाता है। 192.168.100.1 से कनेक्ट करने के लिए पुट्टी का उपयोग करें और रूट यूजर और पासवर्ड मेकब्लॉक से लॉगिन करें। लेकिन बहुत सावधान रहें।

वाईफाई ब्लॉक OpenWrt चलाता है। यह एम्बेडेड उपकरणों के लिए एक लिनक्स वितरण है। न्यूरॉन सॉफ्टवेयर "/tmp/run/mountd/mmcblk0p1/neurons-server" निर्देशिका में स्थित है।

अधिकांश न्यूरॉन ब्लॉकों को mBlock सॉफ़्टवेयर के साथ प्रोग्राम करना संभव है। इसके लिए सॉफ़्टवेयर के संस्करण 4.0.4 की आवश्यकता है। इस स्क्रैच संस्करण में Microsoft सेवाएँ उपलब्ध नहीं हैं। वॉयस रिकग्निशन न्यूरॉन, जिसे इन सेवाओं की आवश्यकता नहीं है, का उपयोग किया जा सकता है। एमब्लॉक संस्करण 5 इस समय (जनवरी 2018) न्यूरॉन ब्लॉकों का समर्थन नहीं करता है।

न्यूरॉन कोड ब्लॉक रोबोट (नीला) भाग में उपलब्ध हैं। और mBlock सॉफ्टवेयर का यह फायदा है कि न केवल जुड़े हुए ब्लॉक का उपयोग किया जा सकता है। उन ब्लॉकों का उपयोग करने का कोई मतलब नहीं है जो आपके पास नहीं हैं, लेकिन इससे बिना किसी न्यूरॉन ब्लॉक से जुड़े कोड लिखना संभव हो जाता है।

जब एक खुले वाईफाई नेटवर्क पर न्यूरॉन का उपयोग किया जाता है तो डिफ़ॉल्ट पासवर्ड बदल दिया जाना चाहिए।

चरण 13: हार्डवेयर आंतरिक

हार्डवेयर आंतरिक
हार्डवेयर आंतरिक
हार्डवेयर आंतरिक
हार्डवेयर आंतरिक
हार्डवेयर आंतरिक
हार्डवेयर आंतरिक

यह हार्डवेयर जानकारी केवल पृष्ठभूमि की जानकारी के लिए है। इसे मेकब्लॉक द्वारा सत्यापित नहीं किया गया है!

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

वाईफाई ब्लॉक के अंदर वेबसर्वर इस ब्लॉक के लिए इस्तेमाल किए गए वास्तविक हार्डवेयर का खुलासा करता है। यह एक MediaTek LinkIt Smart 7688 है। इस बोर्ड की प्रमुख विशेषताएं हैं:

  • OpenWrt Linux चलाता है और Python, Node.js और देशी C प्रोग्रामिंग भाषाओं में अनुप्रयोग विकास का समर्थन करता है।
  • एक स्टैंडअलोन एमपीयू के रूप में MT7688AN का उपयोग करता है और दो ऑपरेशन मोड का समर्थन करता है - IoT गेटवे और IoT डिवाइस मोड
  • वाई-फाई, यूएसबी होस्ट और एसडी कार्ड का समर्थन करता है।
  • PWM, I2C, SPI, UART, ईथरनेट और I2S के लिए पिन-आउट।
  • अतिरिक्त एसडी-कार्ड स्टोरेज के साथ 256 एमबी तक रैम का समर्थन करता है।

Linux फ़ाइल सिस्टम आंतरिक डिस्क संग्रहण दिखाता है:

root@makeblock_linkit:~# df -h

फ़ाइल सिस्टम का आकार उपयोग किया गया उपलब्ध उपयोग% रूट पर माउंटेड 17.9M 644.0K 17.3M 4% // dev/root 12.8M 12.8M 0 100% / ROM tmpfs 61.7M 812.0K 60.9M 1% /tmp /dev/mtdblock6 17.9M 644.0K 17.3M 4% /ओवरले ओवरलेफ़:/ओवरले 17.9M 644.0K 17.3M 4% / tmpfs 512.0K 0 512.0K 0% /dev /dev/mmcblk0p1 1.8G 101.4M 1.7G 5% /tmp/run/mountd/mmcblk0p1/

ब्लॉक के अंदर mmcblk01 नाम का एक डिस्क वॉल्यूम होता है। यह नाम ज्यादातर मेमोरी कार्ड के लिए प्रयोग किया जाता है। ऐसा लगता है कि अंदर 2 Gbyte SD कार्ड है (LinkIt 7688 के लिए 1.7 Gbyte + 256 Mbyte)।

पोगो पिन में 4 कनेक्टर होते हैं: एक वीसीसी के लिए, एक ग्राउंड के लिए और दो संचार के लिए। न्यूरॉन ब्लॉक शायद I2c प्रोटोकॉल के साथ संचार करते हैं। प्रत्येक न्यूरॉन के अंदर एक Arduino संगत बोर्ड होना चाहिए।

सिफारिश की: