विषयसूची:
- चरण 1: लक्ष्य
- चरण 2: सामग्री
- चरण 3: प्री कोडिंग: अपना माइक्रो कनेक्ट करें: बिट
- चरण 4: चरण 0: कोड प्रवाह
- चरण 5: चरण 1: चर को परिभाषित करना
- चरण 6: चरण 2: झुकाव मानों को स्तरों में बदलें
- चरण 7: चरण 3: झुकाव स्तरों को संकलित करें
- चरण 8: चरण 4: LEDPlotList फ़ंक्शन लिखें
- चरण 9: चरण 5: प्रत्येक मामले के लिए प्लॉट एलईडी मैट्रिक्स
- चरण 10: चरण 6: अंशांकन कार्य लिखें
- चरण 11: चरण 7: राज्य कार्य लिखें
- चरण १२: चरण ८: सभी को एक साथ रखना भाग १
- चरण १३: चरण ९: सभी को एक साथ रखना भाग २
- चरण 14: चरण 10: विधानसभा
- चरण 15: स्रोत
वीडियो: एक इलेक्ट्रिक स्पिरिट लेवल बनाएं: १५ कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:23
संलग्न किसी भी वस्तु के झुकाव को जल्दी और आसानी से प्रदर्शित करने के लिए इस भावना स्तर का उपयोग करें!
रैफल्स इंस्टीट्यूशन से कैटिलिन द्वारा बनाया गया।
चरण 1: लक्ष्य
माइक्रो: बिट के अंतर्निर्मित एक्सेलेरोमीटर के साथ झुकाव पढ़ना सीखें।
माइक्रो: बिट के 5x5 एलईडी डिस्प्ले के साथ काम करना सीखें!
चरण 2: सामग्री
1 एक्स बीबीसी माइक्रो: बिट
1 एक्स माइक्रो यूएसबी केबल
2 एक्स एए बैटरी
1 एक्स डबल एए बैटरी पैक
चरण 3: प्री कोडिंग: अपना माइक्रो कनेक्ट करें: बिट
- एक माइक्रो यूएसबी केबल का उपयोग करके बीबीसी माइक्रो: बिट को अपने कंप्यूटर से कनेक्ट करें।
- micro:bit के लिए makecode.microbit.org पर जावास्क्रिप्ट संपादक तक पहुंचें।
चरण 4: चरण 0: कोड प्रवाह
इससे पहले कि हम कोड लिखना शुरू करें, हमें यह तय करना होगा कि हम प्रोग्राम के साथ क्या हासिल करना चाहते हैं और प्रत्येक घटक को किस क्रम में चलाना चाहिए।
इलेक्ट्रिक स्पिरिट लेवल के लिए, हम प्रत्येक लूप के लिए कोड में जो कदम उठाएंगे, वे हैं:
- एक्सेलेरोमीटर से टिल्ट रीडिंग पढ़ें।
- एलईडी मैट्रिक्स पर प्रदर्शित होने के लिए टिल्ट रीडिंग को टिल्ट लेवल में बदलें।
- पिछले लूप से टिल्ट लेवल रीडिंग में बदलाव की जांच करें।
- विभिन्न झुकाव मामलों और दिशाओं के लिए एलईडी निर्देशांक की सरणी बनाएं।
- प्लॉट एलईडी माइक्रो: बिट एलईडी मैट्रिक्स पर निर्देशांक करता है।
कुछ अतिरिक्त कार्य जिन्हें हमें शामिल करने की आवश्यकता है वे हैं:
- प्रारंभिक झुकाव स्थिति के लिए अंशांकन।
- डिफ़ॉल्ट झुकाव अंशांकन पर वापस जा रहा है।
चरण 5: चरण 1: चर को परिभाषित करना
हम दिखाए गए अनुसार आवश्यक चर को परिभाषित करके शुरू करते हैं। कुछ चरों का टूटना है:
- टिल्टलिस्ट: ऐरे जो क्रम में 0-4 मानों से झुकाव की सीमा को संग्रहीत करता है [बाएं, दाएं, आगे, पीछे]
- झुकाव सीमा: 0 (कोई झुकाव नहीं) और 1 (मामूली झुकाव) के बीच पहले झुकाव स्तर की सीमा
- prevState: ऐरे जो पिछले लूप से माइक्रो: बिट के टिल्ट वैल्यू को टिल्टलिस्ट के समान प्रारूप में संग्रहीत करता है, जिसका उपयोग पुनरावृत्तियों के बीच झुकाव में बदलाव की जांच के लिए किया जाता है
- एलईडीप्लॉटलिस्ट: प्लॉट के रूप में समन्वय सरणियों को प्लॉट करें (x, y)। एक सरणी को परिभाषित करने के लिए, हम प्रकार के चर के नेस्टेड सरणी को इंगित करने के लिए प्रकार संख्या का उपयोग करते हैं: संख्या।
चरण 6: चरण 2: झुकाव मानों को स्तरों में बदलें
चूंकि 5x5 एलईडी मैट्रिक्स केवल इतनी ही जानकारी प्रदर्शित कर सकता है, वास्तविक झुकाव मान प्रदर्शन के लिए उपयोगी नहीं होंगे।
इसके बजाय, एक फ़ंक्शन टिल्टएक्सटेंट () पैरामीटर संख्या लेता है, जो एक्सेलेरोमीटर से झुकाव मान को संदर्भित करता है, और इन झुकाव मानों (संख्या) को 0 से 4 तक झुकाव के स्तर में परिवर्तित करता है।
0 दी गई दिशा में कोई झुकाव नहीं दर्शाता है और 4 बहुत बड़े झुकाव को इंगित करता है, जबकि -1 त्रुटि होने पर वापस आ जाता है।
यहां, झुकाव सीमा और झुकाव संवेदनशीलता का उपयोग झुकाव स्तरों के बीच सीमा मान के रूप में किया जाता है।
चरण 7: चरण 3: झुकाव स्तरों को संकलित करें
दो कार्य checkRoll () और checkPitch () टिल्टएक्सटेंट () से प्राप्त झुकाव स्तरों को क्रमशः रोल (बाएं-दाएं) और पिच (आगे-पिछड़े) अक्षों के लिए टिल्टलिस्ट में लिखते हैं।
झुकाव मूल्यों का उपयोग करने से पहले, हम बाद में लिखे गए अंशांकन फ़ंक्शन से प्राप्त पिच (ज़ीरोपिच) और रोल (ज़ीरोरोल) दोनों के लिए एक शून्य मान का उपयोग करके उन्हें कैलिब्रेट करते हैं।
चूंकि एक्सेलेरोमीटर रीडिंग बाएं और आगे के झुकाव दोनों के लिए नकारात्मक हैं, इसलिए हमें इन दो दिशाओं के लिए एक पैरामीटर के रूप में टिल्टएक्सटेंट () फ़ंक्शन को दिए जाने वाले नकारात्मक मान के मापांक को प्राप्त करने के लिए Math.abs() फ़ंक्शन का उपयोग करने की आवश्यकता है।
चरण 8: चरण 4: LEDPlotList फ़ंक्शन लिखें
टिल्टलिस्ट में झुकाव स्तर प्राप्त करने के बाद, अब हम उत्पन्न होने वाले विभिन्न मामलों के लिए एलईडी प्लॉटिंग फ़ंक्शन लिख सकते हैं, अर्थात्
- प्लॉटसिंगल (): पैरामीटर के रूप में दी गई दिशा में झुकाव की सीमा लेते हुए, केवल एक ही दिशा में झुकाएं।
- प्लॉटडायगोनल (): एक ही परिमाण के दो दिशाओं में झुकाव, किसी भी दिशा में झुकाव की सीमा को पैरामीटर के रूप में लेते हुए।
- प्लॉटअनेकुअल (): अलग-अलग परिमाण की दो दिशाओं में झुकाव, प्रत्येक दिशा में झुकाव की सीमा को पैरामीटर के रूप में लेते हुए। पहले plotDiagonal() का उपयोग करता है और बाद में ledPlotList सरणी में जोड़ता है।
ये प्लॉटिंग फ़ंक्शन बाद में प्लॉट किए जाने के लिए LEDPlotList को एलईडी निर्देशांक की एक सरणी लिखते हैं।
चरण 9: चरण 5: प्रत्येक मामले के लिए प्लॉट एलईडी मैट्रिक्स
चरण 4 में तीन मामलों से प्लॉटिंग फ़ंक्शंस का उपयोग करके, अब हम झुकाव स्तरों के विभिन्न संभावित संयोजनों के लिए वास्तविक एलईडी मैट्रिक्स को प्लॉट कर सकते हैं। जैसा कि चरण 4 में तीन कार्य दिशा के साथ भेदभाव नहीं करते हैं, हमें एलईडी को सही दिशा में प्लॉट करने के लिए एलईडी मैट्रिक्स को दिए गए समन्वय मूल्यों को समायोजित करने की आवश्यकता है।
PlotResult () में कई यदि स्थितियां हैं जो झुकाव की जांच करती हैं और एलईडी मैट्रिक्स को तदनुसार एलईडी.प्लॉट (एक्स, वाई) का उपयोग करके प्लॉट करती हैं। झुकाव के संभावित संयोजन हैं:
सिंगल डायरेक्शन: लेफ्ट ओनली या राइट ओनली।
सिंगल डायरेक्शन: फॉरवर्ड ओनली या बैकवर्ड ओनली।
दो दिशाएँ: आगे-बाएँ या पीछे-बाएँ।
दो दिशाएँ: आगे-दाएँ या पीछे-दाएँ।
नोट: दो दिशाओं में झुकाव के लिए, प्रत्येक संयोजन में समान या अलग परिमाण हो सकता है (maxX और maxY की तुलना करके जांचा जाता है), और इसलिए क्रमशः प्लॉटडिएगोनल () या प्लॉटअनेक () का उपयोग करके प्लॉट किया जाता है।
चरण 10: चरण 6: अंशांकन कार्य लिखें
कोड का बड़ा हिस्सा पूरा करने के बाद, अब हम calibTilt() और resetTilt() फ़ंक्शन में जोड़ते हैं।
calibTilt() उपयोगकर्ताओं को माइक्रो:बिट की वर्तमान स्थिति पर झुकाव को शून्य पर झुकाने की अनुमति देता है
रीसेट टिल्ट () बोर्ड के अंशांकन को उसकी मूल स्थिति में रीसेट करता है।
चरण 11: चरण 7: राज्य कार्य लिखें
हम यह जांचने के लिए एक साधारण फ़ंक्शन चेकस्टेट () जोड़ते हैं कि क्या झुकाव का स्तर पिछले पुनरावृत्ति से बदल गया है।
यदि पिछले पुनरावृत्ति यानी स्टेटचेंज == 0 से झुकाव के स्तर में कोई बदलाव नहीं हुआ है, तो हम सीधे अगले पुनरावृत्ति पर जा सकते हैं और आवश्यक गणना को कम करते हुए एलईडी मैट्रिक्स की साजिश को छोड़ सकते हैं।
चरण १२: चरण ८: सभी को एक साथ रखना भाग १
अब हम अंत में सभी आवश्यक कार्यों को माइक्रो: बिट के अनंत लूप में बार-बार चलाने के लिए रख सकते हैं।
सबसे पहले, हम इनपुट.ऑनबटनप्रेस () का उपयोग करके क्रमशः माइक्रो: बिट पर कैलिब टिल्ट () और रीसेट टिल्ट () फ़ंक्शन पर बटन ए और बी सेट करते हैं, और कैलिब्रेशन पूरा होने पर एलईडी मैट्रिक्स पर एक टिक लगाते हैं।
चरण १३: चरण ९: सभी को एक साथ रखना भाग २
अगला चरण 0 में हमारे कोड प्रवाह के अनुसार आवश्यक कार्यों को चलाएं और एक राज्य परिवर्तन की जांच करें (जिसका अर्थ है कि पिछले पुनरावृत्ति के बाद से माइक्रो: बिट के झुकाव में बदलाव आया है)।
अगर टिल्ट लेवल यानी स्टेट चेंज == 1 में कोई बदलाव होता है, तो कोड prevState को नए टिल्ट लेवल पर अपडेट कर देगा और स्टेट चेंज को अगले पुनरावृत्ति के लिए 0 पर सेट कर देगा, और PlotResult() का उपयोग करके LED मैट्रिक्स पर अपडेटेड टिल्ट लेवल को प्लॉट करेगा।
चरण 14: चरण 10: विधानसभा
पूर्ण कोड को अपने माइक्रो: बिट पर फ्लैश करें।
अपने माइक्रो: बिट और बैटरी पैक को किसी भी वस्तु से सुरक्षित रूप से संलग्न करें और यह उपयोग के लिए तैयार है!
बहुत बढ़िया
अपने इलेक्ट्रिक स्पिरिट लेवल के साथ मज़े करें! और जब आप इसमें हों, तो झुकाव सेंसर की क्षमताओं का विस्तार करने या इसे एक गेम में बदलने का प्रयास क्यों न करें?
यह लेख TINKERCADEMY का है।
चरण 15: स्रोत
यह लेख यहां से है:
यदि आपके कोई प्रश्न हैं, तो आप संपर्क कर सकते हैं: [email protected]।
सिफारिश की:
Arduino और MPU6050 आधारित डिजिटल स्पिरिट स्तर: 3 चरण
Arduino और MPU6050 आधारित डिजिटल स्पिरिट लेवल: मेरे पहले इंस्ट्रक्शनल में आपका स्वागत है! मुझे आशा है कि आपको यह जानकारीपूर्ण लगी होगी। कृपया बेझिझक प्रतिक्रिया दें चाहे वह सकारात्मक हो या नकारात्मक। यह परियोजना एक arduino & MPU6050 आधारित डिजिटल स्पिरिट लेवल। जबकि तैयार डिजाइन और
इलेक्ट्रॉनिक प्रेमी द्वारा डिजिटल स्पिरिट लेवल एक DIY प्रोजेक्ट मॉड्यूल: 6 कदम
इलेक्ट्रॉनिक प्रेमी द्वारा डिजिटल स्पिरिट लेवल एक DIY प्रोजेक्ट मॉड्यूल: एक समय होता है जब आपको अपने घर में फर्नीचर का एक टुकड़ा या ऐसा ही कुछ माउंट करने की आवश्यकता होती है और सीधे माउंटिंग के लिए हर कोई सामान्य रूप से स्पिरिट लेवल का उपयोग करता है। ElectronicsLovers Tech Team ने इस मॉड्यूल का निर्माण किया है, जिसमें सामान्य से एक अंतर है: i
ऑडियो लेवल इंडिकेटर कैसे बनाएं: 4 कदम
ऑडियो लेवल इंडिकेटर कैसे बनाएं: ऑडियो लेवल इंडिकेटर एक ऐसा उपकरण है, जो ऑडियो आयाम के साथ एलईडी को चमकते हुए ऑडियो के स्तर को दिखाता है। इस निर्देश में, मैं LM3915 IC और कुछ LED के साथ आपका खुद का ऑडियो लेवल इंडिकेटर बनाने का निर्देश दूंगा। हम रंगीन एलईडी का उपयोग कर सकते हैं
इलेक्ट्रिक पुर्जों के लिए इलेक्ट्रिक स्कूटर कैसे अलग करें: 6 कदम
इलेक्ट्रिक पुर्ज़ों के लिए इलेक्ट्रिक स्कूटर को कैसे अलग करें: यह वह तरीका है जिससे मैं इलेक्ट्रिक माउंटेनबोर्ड बनाने के लिए आवश्यक पुर्जों के लिए सेकेंड-हैंड स्टैंड-ऑन इलेक्ट्रिक स्कूटर को अलग करता हूं। (आइडिया >> https://www से आता है। .instructables.com/id/Electric-Mountain-Board/)मैंने दूसरा हाथ खरीदने का कारण यह है
डरावना टेस्ला स्पिरिट रेडियो: 17 कदम (चित्रों के साथ)
स्पूकी टेस्ला स्पिरिट रेडियो: न्यूज फ्लैश!!!"डरावना" जीना जारी है! माइक्स इलेक्ट्रॉनिक पार्ट्स के माइक को बहुत-बहुत धन्यवाद, जिनके पास अक्टूबर 2015 तक एक नई वेबसाइट है, जिसमें इस शानदार प्रोजेक्ट के लिए अधिकांश आवश्यक भागों के साथ एक स्पूकी टेस्ला स्पिरिट रेडियो किट है। NS