- MATLAB ग्राफिकल यूजर इंटरफेस प्लॉटिंग ग्राफ के लिए
- ग्राफ प्लॉट करने के लिए MATLAB कोड
- आवश्यक सामग्री
- सर्किट आरेख
- MATLAB के साथ ग्राफ प्लॉट करें
ग्राफ़ हमेशा डेटा की कल्पना करने में मददगार होते हैं और उन्हें देखकर रुझान और पैटर्न ढूंढना बहुत आसान हो जाता है। इनपुट मानों के आधार पर ग्राफ़ को प्लॉट करने के लिए कई सॉफ्टवेयर उपलब्ध हैं, आज हम LM35 सेंसर से तापमान डेटा के आधार पर MATLAB से प्लॉट ग्राफ का उपयोग करेंगे । यह ट्यूटोरियल आपको MATLAB का उपयोग करके वास्तविक समय ग्राफ को कैसे प्लॉट करना है, इसके बारे में एक मूल विचार देगा । Arduino Uno का उपयोग LM35 तापमान सेंसर से तापमान डेटा प्राप्त करने के लिए किया जाता है।
आगे बढ़ने से पहले, यदि आप MATLAB के लिए नए हैं, तो आप बेहतर समझने के लिए हमारे पिछले MATLAB ट्यूटोरियल की जाँच कर सकते हैं:
- MATLAB के साथ शुरुआत करना: एक त्वरित परिचय
- MATLAB के साथ Arduino Interfacing - निमिष एलईडी
- MATLAB और Arduino के बीच सीरियल संचार
- MATLAB और Arduino का उपयोग कर डीसी मोटर नियंत्रण
- MATLAB और Arduino का उपयोग कर स्टेपर मोटर नियंत्रण
MATLAB ग्राफिकल यूजर इंटरफेस प्लॉटिंग ग्राफ के लिए
पहले हमें तापमान डेटा के साथ प्लॉट के लिए GUI (ग्राफिकल यूजर इंटरफेस) का निर्माण करना होगा। GUI लॉन्च करने के लिए, कमांड विंडो में नीचे कमांड टाइप करें
मार्गदर्शक
एक पॉपअप विंडो खुलेगी, फिर नए रिक्त GUI का चयन करें जैसा कि नीचे चित्र में दिखाया गया है,
अब हमें MATLAB ग्राफिकल इंटरफ़ेस के लिए एक पुश बटन, दो कुल्हाड़ियों और एक पाठ बॉक्स चुनना होगा । पुश बटन का उपयोग तापमान संवेदन शुरू करने के लिए किया जाएगा, तापमान के वर्तमान मूल्य को दिखाने के लिए ग्राफ और पाठ बॉक्स की साजिश रचने के लिए दो कुल्हाड़ियों।
बटन का आकार बदलने या बदलने के लिए, एक्सिस या टेक्स्ट बटन को संपादित करें, बस उस पर क्लिक करें और आप बटन के कोनों को खींचने में सक्षम होंगे। इनमें से किसी पर भी डबल क्लिक करने से आप उस विशेष बटन के रंग, स्ट्रिंग और टैग को बदल पाएंगे। अनुकूलन के बाद यह इस तरह दिखेगा
आप अपनी पसंद के अनुसार बटन को कस्टमाइज़ कर सकते हैं। अब जब आप इसे सहेजते हैं , MATLAB के संपादक विंडो में एक कोड उत्पन्न होता है । अपनी परियोजना से संबंधित किसी विशेष कार्य को करने के लिए अपने Arduino को बनाने के लिए, आपको हमेशा इस उत्पन्न कोड को संपादित करना होगा। इसलिए नीचे हमने MATLAB कोड संपादित किया है। MATLAB ट्यूटोरियल के साथ आरंभ करने में आप कमांड विंडो, एडिटर विंडो आदि के बारे में अधिक जान सकते हैं।
ग्राफ प्लॉट करने के लिए MATLAB कोड
LM35 और Arduino का उपयोग करके थर्मामीटर डिजाइन करने के लिए पूरा MATLAB कोड, इस परियोजना के अंत में दिया गया है। इसके अलावा हम डाउनलोड के लिए GUI फ़ाइल (.fig) और कोड फ़ाइल (.m) को शामिल कर रहे हैं, जिसके उपयोग से आप अपनी आवश्यकता के अनुसार बटन या एक्सिस आकार को अनुकूलित कर सकते हैं। हमने नीचे बताए अनुसार उत्पन्न कोड को संपादित किया है।
लाइन कोड पर नीचे दिए गए कोड को कॉपी और पेस्ट करें। 74 यह सुनिश्चित करने के लिए कि हर बार जब आप m-file चलाते हैं तो Arduino MATLAB के साथ बात कर रहा है ।
सभी साफ करें; वैश्विक ए; a = arduino ();
जब आप नीचे स्क्रॉल करते हैं, तो आप देखेंगे कि GUI में Pushbutton और Edit Text के लिए दो फंक्शन बने हैं, Axes के लिए कोई फंक्शन नहीं बनाया जाएगा। अब जिस कार्य को आप करना चाहते हैं, उसके अनुसार पुशबटन (स्टार्ट बटन) फ़ंक्शन में कोड लिखें।
में प्रारंभ बटन के समारोह, कॉपी और नीचे दिए गए कोड पेस्ट सिर्फ समारोह के समाप्त होने के तापमान संवेदन शुरू करने के लिए पहले। तापमान के लगातार संवेदन, प्रदर्शन और चित्रमय साजिश के लिए, हम लूप करते समय उपयोग कर रहे हैं । हमने प्रत्येक पुनरावृत्ति के बाद 1 सेकंड का ठहराव प्रदान किया है इसलिए तापमान मूल्य हर सेकंड अपडेट किया जाएगा।
x = 0; go = true; वैश्विक ए; जाते समय मूल्य = readVoltage (ए, 'ए 1'); अस्थायी = (मूल्य * 100); disp (अस्थायी); x =; प्लॉट (हैंडल्स ।axes1, x); ग्रिड पर; xlabel ('समय (सेकंड)') ylabel ('तापमान (° C)')); शीर्षक ('वास्तविक समय तापमान ग्राफ'); ड्रॉअन सेट (हैंडल्स । हेड 1 , 'स्ट्रिंग', अंक 2 स्ट्रेंथ (टेम्प)); ठहराव (1); समाप्त
अब, देखते हैं कि कोड कैसे काम कर रहा है। तीन में नीचे लाइनों लाइन हम 'का प्रारंभिक मूल्य निर्धारित किया है एक्स शून्य करने के लिए' को परिभाषित ' जाना ' सच के रूप में शुरू करने के लिए , जबकि पाश और 'घोषित वैश्विक एक' समारोह में Arduino फोन करने के लिए।
x = 0; go = true; वैश्विक ए;
कोड ऑफ़ लाइन का उपयोग Arduino के एनालॉग पिन A1 से वोल्टेज मान को समझने के लिए किया जाता है जो LM35 तापमान सेंसर के 'OUT' पिन से जुड़ा होता है। आउटपुट वोल्टेज वैल्यू होगा न कि एनालॉग वैल्यू।
मान = readVoltage (ए, 'ए 1');
यहां हम वोल्टेज मान को सीधे तापमान मान (डिग्री सेल्सियस) में बदल सकते हैं, इसे 10 से गुणा कर सकते हैं
अस्थायी = (मूल्य * 100);
अब, ग्राफ को प्लॉट करने के लिए ' प्लॉट्स (हैंडल्स.एक्स 1, एक्स)' फ़ंक्शन का उपयोग किया जाता है, जहां एक्सिस 1 ग्राफ क्षेत्र का संदर्भ या नाम है। इसलिए यदि आप एक से अधिक ग्राफ की साजिश रच रहे हैं तो आपको सिर्फ कुल्हाड़ियों का नाम बदलना होगा, जैसे यदि आप किसी अन्य ग्राफ को प्लॉट करते हैं तो आप प्लॉट लिख सकते हैं (हैंडल ।axes2, x) '
'ग्रिड ऑन' का उपयोग ग्राफ के ऑन ग्रिड दृश्य के लिए किया जाता है, एक्स-एक्स, वाई-एक्सिस और शीर्षक के नामकरण के लिए 'xlabel', 'ylabel' और ' शीर्षक ' का उपयोग किया जाता है।
प्लॉट (हैंडल्स ।axes1, x); ग्रिड पर; xlabel ('समय (सेकंड)') ylabel ('तापमान (° C)')); शीर्षक ('वास्तविक समय तापमान ग्राफ');
वास्तविक समय में चित्रमय प्रतिनिधित्व को अद्यतन करने के लिए ' ड्रावॉन' का उपयोग किया जाता है।
खींचना
नीचे दिए गए प्रत्येक सेकंड में एडिट टेक्स्ट बॉक्स में तापमान का मान प्रदर्शित करने के लिए प्रयोग किया जाता है, सेट (संभालता है ।1, 'स्ट्रिंग', संख्या 2 (अस्थायी));
आवश्यक सामग्री
- MATLAB स्थापित लैपटॉप (वरीयता: R2016a या इसके बाद के संस्करण)
- Arduino UNO
- LM35 - तापमान संवेदक
- तारों को जोड़ना
- ब्रेड बोर्ड
सर्किट आरेख
MATLAB के साथ ग्राफ प्लॉट करें
सर्किट आरेख के अनुसार हार्डवेयर सेट करने के बाद, केवल.m फ़ाइल में संपादित कोड को चलाने के लिए रन बटन पर क्लिक करें
MATLAB को प्रतिक्रिया देने में कुछ सेकंड लग सकते हैं, किसी भी GUI बटन पर क्लिक न करें जब तक MATLAB निचले बाएँ कोने में व्यस्त संदेश नहीं दिखा रहा है जैसा कि नीचे दिखाया गया है,
जब सब कुछ तैयार हो जाए, तो स्टार्ट बटन पर क्लिक करें और आपको ग्राफिकल एरिया और एडिट टेक्स्ट बॉक्स में तापमान डेटा मिलने लगेगा । मान हर एक सेकंड में अपने आप अपडेट हो जाएगा। एक सेकंड का यह अंतराल आप अपने अनुसार MATLAB कोड में बदल सकते हैं।
आउटपुट नीचे दिखाए गए चित्र की तरह दिखाई देगा,
यह है कि आप MATLAB का उपयोग करके Arduino से किसी भी आने वाले मान के लिए ग्राफ़ को कैसे प्लॉट कर सकते हैं।
चेक प्रदर्शन वीडियो उचित समझ के लिए नीचे दिए गए।