विषयसूची:

Arduino पोर्टेबल कार्यक्षेत्र भाग 3: 11 चरण
Arduino पोर्टेबल कार्यक्षेत्र भाग 3: 11 चरण

वीडियो: Arduino पोर्टेबल कार्यक्षेत्र भाग 3: 11 चरण

वीडियो: Arduino पोर्टेबल कार्यक्षेत्र भाग 3: 11 चरण
वीडियो: FANTÁSTICO - Pode comprar - TC3 da FNIRSI substitui com qualidade diversos equipamentos de bancada 2024, जुलाई
Anonim
Arduino पोर्टेबल कार्यक्षेत्र भाग 3
Arduino पोर्टेबल कार्यक्षेत्र भाग 3
Arduino पोर्टेबल कार्यक्षेत्र भाग 3
Arduino पोर्टेबल कार्यक्षेत्र भाग 3

यदि आपने भाग 1, 2 और 2B देखा है, तो अब तक इस परियोजना में बहुत अधिक Arduino नहीं है, लेकिन बस कुछ बोर्ड तार आदि नहीं हैं और बुनियादी ढांचे का हिस्सा इससे पहले बनाया जाना है। आराम काम करता है।

यह इलेक्ट्रॉनिक्स और Arduino कोड है। पिछला 2B निर्देशयोग्य बिजली आपूर्ति विवरण को सूचीबद्ध करता है।

यह खंड निम्नलिखित विशेषताओं के साथ पोर्टेबल कार्यक्षेत्र को बाहर करता है:

निम्नलिखित प्रदान करने के लिए एक Arduino मेगा द्वारा संचालित एक प्रदर्शन प्रदान करने वाली एक TFT टच स्क्रीन

  1. 8 डिजिटल डिस्प्ले, ऑफ/ऑन/ऑसिलेटिंग
  2. 4 वोल्टेज प्रदर्शित करता है
  3. 3 वर्तमान / वोल्टेज प्रदर्शित करता है
  4. E24 प्रतिरोध मीटर (क्योंकि मैं अब रंग बैंड नहीं पढ़ सकता)

मैं और भी चीजें जोड़ूंगा, लेकिन यह मेरा प्रारंभिक लक्ष्य था। Arduino कोड एक सीरियल डिस्प्ले, I2C डिस्प्ले, कैपेसिटेंस मीटर, डिजिटल स्विच और ऑसिलोस्कोप को भी सूचीबद्ध करता है जिसे मैं समय बीतने के साथ जोड़ूंगा। इसके अलावा, मैंने यह तय नहीं किया है कि यह 3V3 बिजली की आपूर्ति, एक चर बिजली की आपूर्ति, या बिजली आपूर्ति वोल्टेज/वर्तमान निगरानी को जोड़ने के लायक है। अब तक यह मेगा का उपयोग करके बनाया गया है, लेकिन मैं I2C एक्सेस किए गए सर्किट को अलग करने के लिए कुछ कार्यों को स्थानांतरित करने पर भी विचार कर रहा हूं, या तो समर्पित चिप्स या प्रोग्राम किए गए Atmel 328 जो कि एक अलग नियंत्रक को अधिक आसानी से समायोजित करेगा।

आपूर्ति

5 x 16 वे हेडर सॉकेट्स

5 x 8 वे ड्यूपॉन्ट सॉकेट, वास्तव में लंबे 40 वे सिंगल इन लाइन सॉकेट्स से बने होते हैं जिन्हें आवश्यक लंबाई तक काटा जाता है

1 x 3.5 ILI9486 TFT टच स्क्रीन

1 एक्स अरुडिनो मेगा 2650

अलग - अलग घटक

पाठ के अनुसार, इनमें से कुछ का मूल्य बिल्कुल निश्चित नहीं है और यदि आप किसी फ़ंक्शन को याद करते हैं तो इसकी बिल्कुल भी आवश्यकता नहीं होगी:)

डिजिटल इनपुट

16 x 10K प्रतिरोधक

एनालॉग इनपुट

1 x TL074 एक क्वाड jfet opamp, यह वही है जो मेरे पास एक अतिरिक्त के रूप में था, कुछ भी ऐसा ही करेगा:)

वोल्टेज डिवाइडर के रूप में उपयोग किए जाने वाले 4 x 68K और 4 x 430k प्रतिरोधक।

4 x 1N4001 या समान

प्रतिरोध मीटर

1 x TL072 एक दोहरी jfet opamp, यह वही है जो मेरे पास एक अतिरिक्त के रूप में था, कुछ भी ऐसा ही करेगा:)

1M0, 300k, 100k, 30k, 10k, 3k, 1k, 300R (यदि इन मानों को बदल दिया जाता है तो Arduino कोड को अपडेट करना होगा)

चरण 1: इलेक्ट्रॉनिक्स का अवलोकन

इलेक्ट्रॉनिक्स का अवलोकन
इलेक्ट्रॉनिक्स का अवलोकन
इलेक्ट्रॉनिक्स का अवलोकन
इलेक्ट्रॉनिक्स का अवलोकन
इलेक्ट्रॉनिक्स का अवलोकन
इलेक्ट्रॉनिक्स का अवलोकन
इलेक्ट्रॉनिक्स का अवलोकन
इलेक्ट्रॉनिक्स का अवलोकन

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

प्रोजेक्ट बॉक्स इलेक्ट्रॉनिक्स के लिए मुख्य आवश्यकताएं Arduino या रास्पबेरी PI का उपयोग करके नए सर्किट को पावर देना था, इसलिए USB सॉकेट के रूप में 5V आवश्यक था। प्रबुद्ध स्विच मुझे बताते हैं कि बिजली चालू है या नहीं, और परीक्षण करते समय मुझे नियमित रूप से स्थिति के अस्थायी प्रदर्शन देने के लिए छोटे सहायक सर्किट बनाने पड़ते हैं। मेरे पास भारी मीटर का एक बॉक्स है जो बहुत सारे बेंच स्पेस का उपयोग करता है और सबसे अधिक, मुझे एक डिस्प्ले की आवश्यकता होती है जिसे मैं आसानी से पढ़ सकता हूं क्योंकि मेरी दृष्टि खराब हो जाती है, कुछ बड़े उज्ज्वल पात्रों के साथ। इसलिए मुझे डिजिटल डिस्प्ले, वोल्टेज मीटर, करंट मीटर, और इस मामले में एक प्रतिरोध मीटर के रूप में थोड़ा लग्जरी चाहिए, जो कि प्रोजेक्ट ब्रेडबोर्ड के 15 सेमी के भीतर और एक कॉम्पैक्ट, पोर्टेबल केस में E24 सीरीज रेसिस्टर्स को जल्दी से पहचान सके।

पिछले लेख में वर्णित मुख्य पीएसयू, 40 तरह के रिबन केबल का उपयोग करके ढक्कन को शक्ति प्रदान करता है जिससे ढक्कन बंद होने पर दोनों को जोड़ा जा सके। यह पैनल इलेक्ट्रॉनिक्स के लिए स्विच्ड 5v और 12V आपूर्ति प्रदान करता है और ब्रेडबोर्ड की आपूर्ति करता है।

सभी पावर और सिग्नल इनपुट 2x8way पीसीबी हेडर सॉकेट द्वारा 8-वे ड्यूपॉन्ट सॉकेट के साथ समानांतर में प्रदान किए जाते हैं। यह शायद ओवरकिल है, अधिकांश ब्रेडबोर्ड में पावर रेल होते हैं लेकिन यह करना आसान था।

पावर सॉकेट पर, बिजली आपूर्ति की मुख्य 0V रेल सभी आपूर्ति के लिए सामान्य है और उपलब्ध कराई जाती है। इसके ऊपर एक 5V बिजली की आपूर्ति है, जो आधार इकाई पर स्विच की गई है, और इसके ऊपर दो आपूर्ति +12V और -12V आपूर्ति हैं, जो वर्तमान में तय हैं, हालांकि मेरे पास इसे परिवर्तनशील बनाने और 3.3-20V प्रदान करने के लिए आपूर्ति को हैक करने का विचार है। परिवर्तनीय आपूर्ति।

चरण 2: इलेक्ट्रॉनिक्स

इलेक्ट्रॉनिक्स
इलेक्ट्रॉनिक्स
इलेक्ट्रॉनिक्स
इलेक्ट्रॉनिक्स
इलेक्ट्रॉनिक्स
इलेक्ट्रॉनिक्स

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

Arduino मेगा 2650 प्रोग्रामिंग के लिए उपलब्ध USB सॉकेट के साथ ढक्कन में लगाया गया है। यह सभी आउटपुट और इनपुट को प्रदर्शित करने के लिए उपयोग किए जाने वाले TFT टचस्क्रीन को चलाता है।

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

4 वोल्टेज इनपुट पीसीबी हेडर, और वोल्टेज डिवाइडर, स्क्रीन पर प्रदर्शित वोल्टेज के माध्यम से भी उपलब्ध कराए जाते हैं। सामने के पैनल पर प्रत्येक इनपुट वोल्टेज, आम जमीन के संदर्भ में, 7 वोल्टेज विभक्त द्वारा विभाजित करने के लिए पारित किया जाता है और फिर नकारात्मक वोल्टेज के साथ दुर्घटनाओं से बचने के लिए, एक सुधारक एम्पलीफायर के रूप में कॉन्फ़िगर किए गए TL074 में चार ऑप-एम्प्स में से एक द्वारा बफर किया जाता है।. किसी स्तर पर ध्रुवीयता संकेत जोड़ना अच्छा होगा लेकिन इस बार नहीं। प्रत्येक op-amp से आउटपुट Arduino के ADC इनपुट में से एक है।

एक और पीसीबी हेडर सीरियल और I2C कनेक्शन दोनों को उजागर करता है। यह एक सीरियल डिस्प्ले कंसोल और एक बुनियादी I2C पहचान समारोह के कार्यान्वयन की अनुमति देने के लिए किया गया था।

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

Arduino एक प्रतिरोध मीटर कार्यक्षमता प्रदान करने के लिए वोल्टेज विभक्त पर एक प्रतिरोध सरणी को शक्ति देता है। Arduino द्वारा पढ़े जाने और प्रतिरोध की गणना करने से पहले इसका आउटपुट एक op-amp (आधा TL072) द्वारा बफ़र किया जाता है। इसका उद्देश्य सटीक प्रतिरोध माप नहीं है, बल्कि E24 श्रृंखला के मूल्यों को जल्दी से पहचानना है, हालांकि कुछ अंशांकन के साथ इसे मूल मीटर के रूप में इस्तेमाल किया जा सकता है। यह पता लगाने के लिए है कि जब 9M9 से कम प्रतिरोध सामने के पैनल पर लगे दो स्प्रिंग्स पर मौजूद है और फिर चुनिंदा रूप से 5V को डिवाइडर एरे में प्रत्येक रेसिस्टर पर स्विच करें जब तक कि 2.5V के निकटतम मान को मापा न जाए या अंतिम रेसिस्टर का चयन न किया जाए, a गणना और तुलना तब निकटतम E24 मान निर्धारित करने के लिए की जाती है। 5V को Arduino पर डिजिटल आउटपुट 3-10 से प्राप्त किया जाता है जिसे त्रुटियों को कम करने के लिए प्रत्येक माप के बीच उच्च प्रतिबाधा इनपुट के रूप में पुन: कॉन्फ़िगर किया जाता है। Arduino पिन D3-10 को जानबूझकर भविष्य के जोड़ के रूप में उपयोग किया गया था, इन आउटपुट की PWM क्षमता का उपयोग करके एक समाई मीटर हो सकता है जो संभावित रूप से केवल एक सॉफ्टवेयर परिवर्तन हो सकता है।

एक संशोधित INA3221 बोर्ड फ्रंट पैनल से इनपुट के साथ I2C इंटरफ़ेस के माध्यम से अतिरिक्त वोल्टेज और वर्तमान माप प्रदान करता है। सब कुछ जम्पर केबल्स का उपयोग करके तार-तार किया जाता है ताकि भविष्य में कार्यों का पुन: असाइनमेंट आसान हो जाए।

चरण 3: INA3221 वोल्टेज/वर्तमान इनपुट

INA3221 वोल्टेज/वर्तमान इनपुट
INA3221 वोल्टेज/वर्तमान इनपुट

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

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

फ्रंट पैनल से बोर्ड से कनेक्शन तब माप प्रतिरोधों में जम्पर लीड के माध्यम से किए जाते हैं।

बोर्ड के लिए बिजली Arduino 5V पिन से ली गई है जैसा कि जमीन है, I2C कनेक्शन इलेक्ट्रॉनिक्स पीसीबी में जा रहा है।

चरण 4: डिस्प्ले स्क्रीन

डिस्प्ले स्क्रीन
डिस्प्ले स्क्रीन

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

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

चरण 5: इसे एक साथ जोड़ना

इसे एक साथ जोड़ना
इसे एक साथ जोड़ना
इसे एक साथ जोड़ना
इसे एक साथ जोड़ना
इसे एक साथ जोड़ना
इसे एक साथ जोड़ना

Arduino मेगा ढक्कन के LHS पर स्थित है, इसके USB और पावर पोर्ट केस के बाहर से सुलभ हैं। Arduino के बगल में RHS पर मैट्रिक्स बोर्ड पर लगे इलेक्ट्रॉनिक्स हैं और इसके ऊपर ढक्कन के पीछे INA3221 बोर्ड लगा है।

इसके अलावा Arduino के ऊपर LHS में ढक्कन के पीछे एक सामान्य ग्राउंड कनेक्शन बोर्ड है जिससे सभी मैदान जुड़े हुए हैं।

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

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

चरण 6: समेकित लीड्स

समेकित लीड्स
समेकित लीड्स
  1. Arduino ADC पोर्ट के लिए वोल्टेज और प्रतिरोध इनपुट, एक छोर पर अलग-अलग पुरुष कनेक्टर्स के साथ पांच लीड 20cm, Arduino हेडर में गैप को समायोजित करने के लिए एक गैप के साथ छह तरह के आवास में समेकित।
  2. फोर वे हाउसिंग से दो टू वे हाउसिंग तक 4 वे 10 सेमी केबल, फ्रंट पैनल पर वोल्टेज पिन को सर्किट बोर्ड से जोड़ने के लिए।
  3. 2x4 वे पुरुष हेडर से 8-वे महिला हेडर तक 8 वे 10 सेमी केबल
  4. सीरियल और I2C को फ्रंट पैनल से जोड़ने के लिए 4 तरह से महिला आवास से 4 तरह की महिला आवास तक 4 तरह की 10 सेमी केबल
  5. INA3221 को फ्रंट पैनल से जोड़ने के लिए 4 तरह से 10 सेमी केबल 4 तरह से आवास से चार सिंगल कनेक्टर तक
  6. 4 रास्ता 20cm केबल चार तरह से महिला आवास को चार तरह से पुरुष आवास से जोड़ने के लिए सीरियल और I2C को Arduino से सर्किट बोर्ड फैन-आउट तक ले जाने के लिए।
  7. फ्रंट पैनल से सर्किट बोर्ड तक डिजिटल इनपुट लेने के लिए 8 वे फीमेल हाउसिंग से 8 वे फीमेल हाउसिंग तक 8 वे 10 सेमी केबल।
  8. 8 वे 10 सेमी केबल 8 तरह से महिला आवास को एक 3 तरह से पुरुष आवास और एक 5 तरह से पुरुष आवास को प्रतिरोध विभक्त को सर्किट बोर्ड से जोड़ने के लिए ले जाती है। Arduino बोर्ड पर हेडर में गैर-मानक अंतर को समायोजित करने के लिए दो आवासों का उपयोग किया जाता है।
  9. INA3221 बिजली आपूर्ति के लिए दो एकल पुरुष कनेक्टरों के लिए 2 तरह से महिला आवास लेने के लिए 2 रास्ता 20 सेमी केबल।
  10. तीसरे INA3221 मॉनिटर कनेक्शन को फ्रंट पैनल से जोड़ने के लिए टू वे फीमेल हाउसिंग को दो सिंगल फीमेल हाउसिंग तक ले जाने के लिए 2 वे 10 सेमी केबल।
  11. INA3221 को I2C फैनआउट कनेक्शन से जोड़ने के लिए टू वे फीमेल हाउसिंग टू टू वे फीमेल हाउसिंग लेने के लिए 2 वे 10cm केबल।

चरण 7: Arduino कोड

Arduino कोड
Arduino कोड
Arduino कोड
Arduino कोड

यह प्रोजेक्ट Arduino Mega 2650 के आसपास आधारित है क्योंकि मैं एक साधारण प्रारूप में कार्यों के लिए समर्पित बहुत सारे I/O पोर्ट चाहता था। TFT टचस्क्रीन के लिए पुस्तकालय Arduino Uno का समर्थन करने के लिए डिफ़ॉल्ट हैं और मेगा का समर्थन करने के लिए इसे संपादित करना होगा। पुस्तकालयों का संपादन मूल TFT कोड लेखक द्वारा समर्थित है, सरल है और अगले चरण में वर्णित है।

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

कोड का एक कार्यशील संस्करण यहां शामिल है और इसे अपडेट किया जाएगा लेकिन सबसे हालिया अपडेट जीथब पर होंगे।

कोड का मुख्य कार्य डिस्प्ले के चारों ओर घूमता है, डिस्प्ले पर प्रत्येक तत्व में एक एकल सरणी में एक प्रविष्टि होती है जिसमें तत्व प्रकार होता है, जहां स्क्रीन पर यह प्रदर्शित होता है, रंग और इनपुट स्रोत जैसे अतिरिक्त पैरामीटर। टिप्पणियों के साथ इस सरणी का एक स्क्रीनशॉट ऊपर दिखाया गया है। यह नियंत्रित करने के लिए एक फ़ील्ड भी रखता है कि इसे स्क्रीन पर प्रदर्शित किया जाना है या नहीं। इस सरणी को संपादित करके, नई सुविधाओं को जोड़ा जा सकता है, या सुविधाओं को हटाया जा सकता है। कोड का 'लूप' रूटीन इस सरणी के माध्यम से निरंतर आधार पर चलता है, प्रत्येक पात्र तत्व को क्रमिक रूप से संसाधित करता है और फिर दोहराता है। वर्तमान में 6 अलग-अलग तत्व हैं।

मेनू तत्व - ये जानकारी प्रदर्शित नहीं करते हैं, लेकिन जब स्पर्श किया जाता है तो तत्व पैरामीटर में पहचाने गए एक संबद्ध सबरूटीन को निष्पादित करते हैं

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

एनालॉग तत्व - संबंधित एनालॉग पिन पर मापे गए अनुमानित वोल्टेज को प्रदर्शित करते हैं। चार मूल रूप से निर्दिष्ट हैं।

सटीक तत्व - बाहरी सटीक वोल्ट/करंट मीटर मॉड्यूल से इनपुट प्रदर्शित करें। इनमें से केवल तीन हैं लेकिन एक दूसरा या तीसरा मॉड्यूल जोड़ा जा सकता है।

प्रतिरोध तत्व - यह प्रतिरोध मीटर से इनपुट प्रदर्शित करने वाला एकल तत्व है।

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

स्क्रीन में तीन स्थिति मोड होते हैं, सामान्य, बड़ी और पूर्ण स्क्रीन और सभी तत्व स्थिति के आधार पर अपना संचालन बदलते हैं। एक तत्व और संबंधित मेनू विकल्प को स्पर्श करके मेनू से तीन मोड चयन योग्य हैं।

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

बड़ा मोड - स्क्रीन पर किसी भी तत्व को स्पर्श करके चुना जाता है जिसके बाद बड़ा होता है। चयनित होने पर, केवल वही तत्व प्रकार चयनित होता है और उस प्रकार के तत्वों को संपूर्ण स्क्रीन में भरने के लिए पुनर्व्यवस्थित किया जाता है।

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

अतिरिक्त कार्यक्षमता जोड़ने के लिए, निम्नलिखित रूटीन को जोड़ने की आवश्यकता है

'ड्रा' रूटीन जिसे उस तत्व की जानकारी प्राप्त करने के लिए कहा जाता है, उपयुक्त स्क्रीन अपडेट रूटीन को कॉल करें और लौटाई गई स्पर्श जानकारी को पंजीकृत करें

'लॉजिक' रूटीन जो ड्रॉ रूटीन से जानकारी को स्वीकार करता है और स्क्रीन पर जानकारी डालने के लिए उपयुक्त स्क्रीन ड्राइवर रूटीन का उपयोग करता है और खींचे गए स्क्रीन के क्षेत्र के लिए सही टच जानकारी लौटाता है

'सेटअप' रूटीन जिसे Arduino सेटअप का हिस्सा कहा जाता है

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

चरण 8: Arduino लाइब्रेरी का संपादन

Arduino लाइब्रेरी का संपादन
Arduino लाइब्रेरी का संपादन
Arduino लाइब्रेरी का संपादन
Arduino लाइब्रेरी का संपादन

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

दो फ़ाइलें MCUFRIEND_kbv\utility फ़ोल्डर में mcufriend_shield.h और mcufriend_special.h के रूप में संग्रहीत हैं। पहली पंक्ति पढ़ने को सुनिश्चित करने के लिए आवश्यक परिवर्तन पहले 'शील्ड' हेडर फ़ाइल में हैं

#USE_SPECIAL परिभाषित करें

यह सुनिश्चित करने के लिए कि 'विशेष' शीर्षलेख फ़ाइल लोड हो गई है।

यह सुनिश्चित करने के लिए 'विशेष' हेडर फ़ाइल को भी अद्यतन किया जाना चाहिए कि लाइन

# परिभाषित करें USE_MEGA_8BIT_PROTOSHIELD

टिप्पणी नहीं की गई है।

इन दो परिवर्तनों का मतलब है कि इस डिस्प्ले के लिए डिस्प्ले कोड Arduino मेगा पर पिन 20-29 का उपयोग करके काम करेगा, बजाय Uno पर डिफ़ॉल्ट 3-10 के।

चरण 9: स्क्रीन शॉट्स

स्क्रीन शॉट्स
स्क्रीन शॉट्स
स्क्रीन शॉट्स
स्क्रीन शॉट्स
स्क्रीन शॉट्स
स्क्रीन शॉट्स

मैंने यहां स्क्रीन शॉट लगाए हैं, इसलिए यह देखना आसान है कि कंसोल को क्या करना चाहिए। अगला खंड कोड को Arduino में लोड करने के लिए संदर्भित करता है।

पहली स्क्रीन शीर्ष पर मेनू के साथ 'सामान्य' स्क्रीन दिखाती है, एलएचएस पर वोल्टेज माप, आरएचएस पर वोल्टेज और वर्तमान माप और नीचे डिजिटल पिन स्थिति, 'गलत/निम्न' के लिए लाल, 'सत्य/उच्च' के लिए हरा '। अंत में केंद्र में प्रतिरोध माप है।

दूसरी स्क्रीन बड़े मोड में सक्षम डिजिटल इनपुट दिखाती है, प्रत्येक इनपुट स्पष्ट रूप से प्रदर्शित होता है।

तीसरी स्क्रीन वोल्टेज इनपुट को लार्ज मोड में दिखाती है।

चरण 10: Arduino कोड लोड हो रहा है

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

यदि पुस्तकालयों को ठीक से संशोधित किया गया है और Arduino Mega2650 को Arduino IDE में लक्ष्य प्लेटफ़ॉर्म के रूप में सेट किया गया है, तो कोड को पहली बार संकलित करना चाहिए।

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

चरण 11: अंतिम स्पर्श

अंतिम स्पर्श
अंतिम स्पर्श
अंतिम स्पर्श
अंतिम स्पर्श
अंतिम स्पर्श
अंतिम स्पर्श
अंतिम स्पर्श
अंतिम स्पर्श

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

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

अभी मैं इसे चालू करने जा रहा हूं और इसका उपयोग कर रहा हूं, मेरे पास काम करने के लिए कुछ परियोजनाएं हैं!

सिफारिश की: