विषयसूची:

लाइफगार्ड 2.0: 7 कदम (चित्रों के साथ)
लाइफगार्ड 2.0: 7 कदम (चित्रों के साथ)

वीडियो: लाइफगार्ड 2.0: 7 कदम (चित्रों के साथ)

वीडियो: लाइफगार्ड 2.0: 7 कदम (चित्रों के साथ)
वीडियो: Best Of Crime Patrol - Dark Secrets Case 01 - Full Episode 2024, नवंबर
Anonim
लाइफगार्ड 2.0
लाइफगार्ड 2.0

क्या आप कभी गणित संचालन करना चाहते हैं, सेंसर रीडिंग लेना चाहते हैं, एनालॉग और डिजिटल इनपुट की निगरानी करना चाहते हैं, और पिछले इलेक्ट्रॉनिक्स अनुभव के बिना एनालॉग और डिजिटल आउटपुट को नियंत्रित करना चाहते हैं? यदि हाँ, तो यह परियोजना सिर्फ आपके लिए है! हम एक ऐसा उपकरण बनाने के लिए एक माइक्रोकंट्रोलर और MATLAB का उपयोग करेंगे जिसका उपयोग EF एक्सप्रेस स्मार्ट रेल सिस्टम की निगरानी और उसे बढ़ाने के लिए किया जा सकता है। एक माइक्रोकंट्रोलर के साथ, इनपुट और आउटपुट (बोर्ड में जाने वाले सिग्नल/सूचना और बोर्ड से बाहर निकलने वाला सिग्नल) की संभावनाएं अनंत हैं। हम अपने इनपुट के रूप में एक फ्लेक्स सेंसर और पोटेंशियोमीटर का उपयोग करेंगे। उनका आउटपुट क्रमशः एलसीडी स्क्रीन और एलईडी लाइट्स के साथ बजर के माध्यम से एक संदेश होगा। हम स्मार्ट रेल सिस्टम में जिन सुधारों को लागू करने की उम्मीद करते हैं, वे सिस्टम सुरक्षा में सुधार के सापेक्ष हैं। अपना लैपटॉप और माइक्रोकंट्रोलर पकड़ो, और हम शुरू करते हैं!

चरण 1: सॉफ्टवेयर और सामग्री

सॉफ्टवेयर और सामग्री
सॉफ्टवेयर और सामग्री
सॉफ्टवेयर और सामग्री
सॉफ्टवेयर और सामग्री
सॉफ्टवेयर और सामग्री
सॉफ्टवेयर और सामग्री
सॉफ्टवेयर और सामग्री
सॉफ्टवेयर और सामग्री

सॉफ्टवेयर की जरूरत

1.) MATLAB

- आपको अपने कंप्यूटर पर MATLAB का स्थानीय संस्करण डाउनलोड करना होगा। mathworks.com पर जाएं और MATHWORKS खाता सेट करें, फ़ाइलें डाउनलोड करें और अपना लाइसेंस सक्रिय करें।

-आपको नवीनतम रिलीज (R2016a या R2016b) के लिए सभी उपलब्ध टूलबॉक्स को डाउनलोड और इंस्टॉल करना चाहिए।

-मैक उपयोगकर्ता: R2015b चलाने के लिए आपके पास OSX 10.9.5 या बाद का संस्करण होना चाहिए, MATLAB के पुराने संस्करण को चलाना ठीक है।

2.) Arduino हार्डवेयर सपोर्ट पैकेज:

- Arduino हार्डवेयर सपोर्ट पैकेज इंस्टॉल करें। MATLAB खोलें। MATLAB होम टैब पर, पर्यावरण मेनू में, ऐड-ऑन का चयन करें हार्डवेयर समर्थन पैकेज प्राप्त करें "Arduino हार्डवेयर के लिए MATLAB समर्थन पैकेज" का चयन करें। आपको अपने MATHWORKS खाते में लॉग इन करना होगा

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

सामग्री की जरूरत

1.) लैपटॉप या डेस्कटॉप कंप्यूटर

2.) स्पार्कफन अरुडिनो बोर्ड

3.) फ्लेक्स सेंसर

4.) पोटेंशियोमीटर

5.) एलसीडी स्क्रीन

6.) एलईडी लाइट

7.) स्पार्कफन आविष्कारक किट (ऑनलाइन खोजें)

8.) यूएसबी केबल और मिनी यूएसबी

9.) जम्पर तार

10.) पीजो बजर

चरण 2: अपने Arduino से कनेक्ट करें और COM पोर्ट निर्धारित करें

(आपका COM पोर्ट हर बार प्लग इन करने पर बदल सकता है) Arduino USB केबल को अपने कंप्यूटर से और मिनी USB को अपने Arduino बोर्ड से कनेक्ट करें। ड्राइवरों को डाउनलोड करने के लिए आपको कुछ मिनट इंतजार करना पड़ सकता है।

COM पोर्ट निर्धारित करने के लिए:

पीसी पर

विधि 1: MATLAB में कमांड का उपयोग करें - fopen(serial('nada'))

-अपने कॉम पोर्ट को निर्धारित करने के लिए। आपको इस तरह की त्रुटि मिल सकती है: सीरियल/फॉपेन का उपयोग करने में त्रुटि (लाइन 72) ओपन फेल: पोर्ट: नाडा उपलब्ध नहीं है। उपलब्ध पोर्ट: COM3. यह त्रुटि इंगित करती है कि आपका पोर्ट 3 है।

-यदि आपके पीसी पर विधि 1 विफल हो जाती है, तो अपना डिवाइस मैनेजर खोलें और पोर्ट्स (COM और LPT) सूची का विस्तार करें। USB सीरियल पोर्ट पर नंबर नोट करें। जैसे 'USB सीरियल पोर्ट (COM*)' पोर्ट नंबर यहां * है।

-यदि कोई पोर्ट नहीं दिखाया गया है, तो MATLAB को बंद करें और अपने कंप्यूटर को पुनरारंभ करें। MATLAB खोलें और fopen(serial('nada')) फिर से प्रयास करें।

-यदि यह विफल रहता है, तो आपको सीडीएम_v2.12.00_WHQL_Certified.exe फ़ाइल से स्पार्कफन के ड्राइवर डाउनलोड करने, CDM_v2.12.00_WHQL_Certified.exe फ़ाइल को खोलने और चलाने की आवश्यकता हो सकती है, और निकालें का चयन करें। (आपको एक्सप्लोरर से फ़ाइल खोलने की आवश्यकता हो सकती है, राइट क्लिक करें, और 'व्यवस्थापक के रूप में चलाएँ')।

- MATLAB कमांड विंडो में एक Arduino ऑब्जेक्ट बनाएं - a=arduino('comx', 'uno'); % x पीसी के लिए ऊपर से आपका पोर्ट नंबर है (कोई पूर्ववर्ती शून्य नहीं!)

एक Mac. पर

विधि 1: MATLAB कमांड लाइन से या मैक टर्मिनल में टाइप करें: 'ls /dev/tty.*' dev/tty.usbmodem* या dev/tty.usbserial* के लिए सूचीबद्ध पोर्ट नंबर नोट करें। पोर्ट नंबर यहां * है।

-यदि विधि 1 आपके मैक पर विफल हो जाती है, तो आपको इसकी आवश्यकता हो सकती है

-बाहर निकलें MATLAB

-Arduino सॉफ़्टवेयर को बंद करें और Arduino USB केबल को अनप्लग करें

जावा 6 रनटाइम स्थापित करें

-USB ड्राइवर कर्नेल एक्सटेंशन इंस्टॉल करें

-अपने कंप्यूटर को पुनरारंभ

- Arduino USB केबल को फिर से कनेक्ट करें

- MATLAB कमांड लाइन या मैक टर्मिनल से चलाएँ: ls /dev/tty.*

- dev/tty.usbmodem* या dev/tty.usbserial* के लिए सूचीबद्ध पोर्ट नंबर नोट करें। पोर्ट नंबर यहां * है।

- MATLAB कमांड विंडो में एक Arduino ऑब्जेक्ट बनाएं - a=arduino('/dev/tty.usbserial*', 'uno'); % * MAC के लिए ऊपर से आपका पोर्ट नंबर है, या '/dev/tty.usbmodem*'

चरण 3: मैटलैब कोड

मैटलैब कोड
मैटलैब कोड
मैटलैब कोड
मैटलैब कोड

इनपुट:

1.) फ्लेक्स सेंसर

2.) पोटेंशियोमीटर

आउटपुट:

1.) संदेश के साथ एलसीडी स्क्रीन जो "ट्रेन कमिंग" पढ़ता है

2.) एलईडी लाइट

3.) पीजो बजर

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

MATLAB कोड:

%remery1, shornsb1, wmurrin

%उद्देश्य: ट्रेन चेतावनी

% II इनपुट: पोटेंशियोमीटर, फ्लेक्स सेंसर

% आउटपुट: एलसीडी, ध्वनि, प्रकाश

%अगर बोर्ड को इनिशियलाइज़ नहीं किया गया है या इसमें कनेक्शन की समस्या है, तो इसे निष्पादित करें

टिप्पणियों में % नीचे कमांड। उन्हें हर बार निष्पादित करने की आवश्यकता नहीं है

%सभी साफ करें

%सब बंद करें

% सीएलसी

%a=arduino('/dev/tty.usbserial-DN01DXOM', 'uno');

%lcd = एडऑन (ए, 'उदाहरणएलसीडी/एलसीडीएडडन', {'डी7', 'डी6', 'डी5', 'डी4', 'डी3', 'डी2'});

कनेक्ट होने के बाद बोर्ड को %कॉन्फ़िगर करें

configPin(a, 'D8', 'pulup');%configure D8

configPin(a, 'D9', 'PWM');%configure D9

समय = ५०; % समय को 50. पर सेट करें

क्लियरएलसीडी (एलसीडी)% एलसीडी को इनिशियलाइज़ करें

%स्टार्ट लूप

जबकि समय> 0

%फ्लेक्स सेंसर वोल्टेज निर्धारित करता है कि प्रकाश हरा है, या यदि प्रकाश है

% लाल है और LCD डिस्प्ले "ट्रेन आ रही है"

flex_status = readVoltage (ए, 'ए0'); %फ्लेक्स सेंसर का वोल्टेज पढ़ें

अगर flex_status>4% अगर वोल्टेज 4 से अधिक है, तो ट्रिगर लूप

राइटडिजिटलपिन (ए, 'डी 12', 0)% हरे रंग को बंद करें

राइटडिजिटलपिन (ए, 'डी 11', 1)% लाल चालू करें

प्रिंटएलसीडी (एलसीडी, 'ट्रेन कमिंग') एलसीडी पर% डिस्प्ले "ट्रेन आ रहा है"

रोकें(5) %5 सेकंड प्रतीक्षा करें

clearLCD(lcd) %एलसीडी से संदेश साफ़ करें

राइटडिजिटलपिन (ए, 'डी 11', 0)% लाल एलईडी बंद करें

अन्यथा

समाप्त

pe_status = readVoltage (ए, 'ए 2'); % पोटेंशियोमीटर वोल्टेज पढ़ें

यदि pe_status>2% यदि वोल्टेज 2 से अधिक है, तो ट्रिगर लूप

राइटडिजिटलपिन (ए, 'डी 13', 1);% लाल एलईडी चालू करें

playTone(a, 'D9', 400,.25);% पीजो बजर पर 400Hz चलाएं,.25 सेकंड

राइटडिजिटलपिन (ए, 'डी 13', 0)% लाल एलईडी बंद करें

रोकें (.25)% प्रतीक्षा करें.25 सेकंड

राइटडिजिटलपिन (ए, 'डी13', 1)% 200 हर्ट्ज पर बजर के साथ ऊपर दोहराएं

प्लेटोन (ए, 'डी 9', 200,.25);

राइटडिजिटलपिन (ए, 'डी 13', 0)

विराम (.25)

राइटडिजिटलपिन (ए, 'डी 13', 1);% ऊपर दोहराएं

प्लेटोन (ए, 'डी 9', 400,.25);

राइटडिजिटलपिन (ए, 'डी 13', 0)

विराम (.25)

राइटडिजिटलपिन (ए, 'डी 13', 1)

प्लेटोन (ए, 'डी 9', 200,.25);

राइटडिजिटलपिन (ए, 'डी 13', 0)

विराम (.25)

राइटडिजिटलपिन (ए, 'डी 13', 1)% ऊपर दोहराएं

प्लेटोन (ए, 'डी 9', 400,.25);

राइटडिजिटलपिन (ए, 'डी 13', 0)

विराम (.25)

राइटडिजिटलपिन (ए, 'डी 13', 1)

प्लेटोन (ए, 'डी 9', 200,.25);

राइटडिजिटलपिन (ए, 'डी 13', 0)

विराम (.25)

राइटडिजिटलपिन (ए, 'डी 13', 1)% ऊपर दोहराएं

प्लेटोन (ए, 'डी 9', 400,.25);

राइटडिजिटलपिन (ए, 'डी 13', 0)

विराम (.25)

राइटडिजिटलपिन (ए, 'डी 13', 1)

प्लेटोन (ए, 'डी 9', 200,.25);

राइटडिजिटलपिन (ए, 'डी 13', 0)

विराम (.25)

अन्यथा

राइटडिजिटलपिन (ए, 'डी 12', 1)% अगर वोल्टेज 2 से कम है, तो हरे रंग की एलईडी चालू करें

राइटडिजिटलपिन (ए, 'डी 13', 0)% लाल एलईडी की बारी

समाप्त

समाप्त

चरण 4: फ्लेक्स सेंसर को तार देना

फ्लेक्स सेंसर वायरिंग
फ्लेक्स सेंसर वायरिंग
फ्लेक्स सेंसर वायरिंग
फ्लेक्स सेंसर वायरिंग
फ्लेक्स सेंसर वायरिंग
फ्लेक्स सेंसर वायरिंग
फ्लेक्स सेंसर वायरिंग
फ्लेक्स सेंसर वायरिंग

सामग्री की जरूरत

1.) 1 फ्लेक्स सेंसर

२.) १ १० के ओम रेसिस्टर

3.) 8 जम्पर तार

* क्रमशः चित्रों को देखें।

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

*फ्लेक्स सेंसर को वायरिंग करने के निर्देश दिखाने वाले चित्रों में, केवल फ्लेक्स सेंसर को वायरिंग करने के सापेक्ष तारों को देखें। सर्वो के लिए वायरिंग की अवहेलना करें।

तार पिन इस प्रकार है:

चरण 1: पावर सेक्शन में Arduino बोर्ड पर, इनपुट 5V में 1 तार और इनपुट GND (ग्राउंड) में 1 तार प्लग करें। 5V तार के दूसरे छोर को सर्किट बोर्ड पर एक सकारात्मक (+) इनपुट में प्लग करें। GND तार के दूसरे छोर को सर्किट बोर्ड पर एक नकारात्मक (-) इनपुट में प्लग करें।

चरण 2: ANALOG IN सेक्शन में Arduino बोर्ड पर, A0 इनपुट में 1 प्लग करें। उस तार के सिरे को सर्किट बोर्ड के j20 इनपुट में प्लग करें।

चरण 3: डिजिटल I\O अनुभाग में Arduino बोर्ड पर, 1 तार को इनपुट 9 में प्लग करें। दूसरे छोर को इनपुट a3 में प्लग करें।

चरण 4: सर्किट बोर्ड पर, 1 तार को सकारात्मक (+) इनपुट में प्लग करें। दूसरे छोर को इनपुट h24 में प्लग करें।

चरण 5: सर्किट बोर्ड पर, 1 तार को एक नकारात्मक (+) इनपुट में प्लग करें। दूसरे छोर को इनपुट a2 में प्लग करें।

चरण 6: सर्किट बोर्ड पर, 1 तार को नकारात्मक (-) इनपुट में प्लग करें। दूसरे छोर को इनपुट b1 में प्लग करें।

चरण 7: सर्किट बोर्ड पर, 1 तार को नकारात्मक (-) इनपुट में प्लग करें। दूसरे छोर को इनपुट i19 में प्लग करें।

चरण 8: सर्किट बोर्ड पर, रोकनेवाला को i20 और i24 इनपुट में रखें।

* अंतिम तस्वीर वास्तविक दुनिया के अनुप्रयोगों को संदर्भित करती है।

चरण 5: Arduino को LCD से कनेक्ट करें

Arduino को LCD से कनेक्ट करें
Arduino को LCD से कनेक्ट करें
Arduino को LCD से कनेक्ट करें
Arduino को LCD से कनेक्ट करें
Arduino को LCD से कनेक्ट करें
Arduino को LCD से कनेक्ट करें

*इस लिंक का अनुसरण करें (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) और फिर एलसीडी को Arduino से कनेक्ट करने के लिए नीचे दिए गए चरणों का संदर्भ लें:

चरण 1: ज़िप फ़ाइल खोलें

चरण 2: रीडमी फ़ाइल खोलें और निर्देशों का पालन करें

सामग्री की जरूरत

1.) 16x2 LCD इस डिवाइस के समान SparkFun -

2.) जम्पर तार

* क्रमशः चित्रों को देखें।

यह चरण दिखाएगा कि एलसीडी ऐड-ऑन लाइब्रेरी कैसे बनाएं और एलसीडी पर "ट्रेन कमिंग" प्रदर्शित करें।

तार पिन इस प्रकार है:

एलसीडी पिन -> अरुडिनो पिन

1 (वीएसएस) -> ग्राउंड

2 (वीडीडी) -> 5वी

3 (V0) -> फ्लेक्स सेंसर पर मिड पिन

4 (रुपये) -> D7

5(आर/डब्ल्यू) -> ग्राउंड

6 (ई) -> d6

11 (DB4) - D5 (PWM)

12 (DB5) -> D4

13 (DB6) -> D3 (PWM)

14 (DB7) -> D2

15 (एलईडी+) -> 5 वी

16 (एलईडी-) -> ग्राउंड

चरण 6: सॉफ्ट पोटेंशियोमीटर को जोड़ना

सॉफ्ट पोटेंशियोमीटर कनेक्ट करना
सॉफ्ट पोटेंशियोमीटर कनेक्ट करना
सॉफ्ट पोटेंशियोमीटर कनेक्ट करना
सॉफ्ट पोटेंशियोमीटर कनेक्ट करना
सॉफ्ट पोटेंशियोमीटर कनेक्ट करना
सॉफ्ट पोटेंशियोमीटर कनेक्ट करना

सामग्री की जरूरत

1.) 1 एलईडी

2.) 1 शीतल पोटेंशियोमीटर

3.) जम्पर तार

4.) 3 330 ओम रेसिस्टर

5.) 10K ओम रेसिस्टर

* क्रमशः चित्रों को देखें।

इस सर्किट में, हम एक अन्य प्रकार के वेरिएबल रेसिस्टर, एक सॉफ्ट पोटेंशियोमीटर का उपयोग करने जा रहे हैं। यह एक पतली और लचीली पट्टी है जो यह पता लगा सकती है कि दबाव कहाँ लगाया जा रहा है। पट्टी के विभिन्न हिस्सों को नीचे दबाकर, आप प्रतिरोध को 100 से 10 K ओम तक बदल सकते हैं। आप इस क्षमता का उपयोग पोटेंशियोमीटर पर या एक बटन के रूप में गति को ट्रैक करने के लिए कर सकते हैं। इस सर्किट में, हम आरजीबी एलईडी को नियंत्रित करने के लिए सॉफ्ट पोटेंशियोमीटर को ऊपर और चालू करेंगे।

चरण 1: डिजिटल I\O अनुभाग में Arduino बोर्ड पर, इनपुट 10 में 1 पिन और इनपुट 11 में 1 पिन प्लग करें। क्रमशः, उन पिनों के दूसरे छोर को इनपुट h6 और h7 में प्लग करें।

चरण 2: सर्किट बोर्ड पर, एलईडी को इनपुट a4, a5, a6, और a7 में प्लग करें।

चरण 3: सर्किट बोर्ड पर, 3 330 ओम प्रतिरोधों को e4-g4, e6-g6, और e7-g7 इनपुट में रखें।

चरण 4: सर्किट बोर्ड पर, 1 पिन को इनपुट e5 में प्लग करें। उस पिन के दूसरे सिरे को नेगेटिव (-) इनपुट में प्लग करें।

चरण 5: सर्किट बोर्ड पर, 10K ओम रेसिस्टर को इनपुट i19-negative (-) में रखें।

चरण 6: सर्किट बोर्ड पर, 1 पिन को j18 में प्लग करें। उस पिन के दूसरे सिरे को धनात्मक (+) इनपुट में प्लग करें।

चरण 7: सर्किट बोर्ड पर, 1 पिन को इनपुट j20 में प्लग करें। उस पिन के दूसरे सिरे को नेगेटिव (-) इनपुट में प्लग करें।

चरण 7: स्मार्ट रेल सिस्टम पर अपने सुधारों का परीक्षण करें

स्मार्ट रेल सिस्टम पर अपने सुधारों का परीक्षण करें
स्मार्ट रेल सिस्टम पर अपने सुधारों का परीक्षण करें
स्मार्ट रेल सिस्टम पर अपने सुधारों का परीक्षण करें
स्मार्ट रेल सिस्टम पर अपने सुधारों का परीक्षण करें

इस बिंदु पर, आपका MATLAB कोड कार्यात्मक होना चाहिए और Arduino बोर्ड सभी अतिरिक्त घटकों के साथ सटीक रूप से जुड़ा होना चाहिए। इसे प्रमाणित स्मार्ट रेल सिस्टम पर आज़माएं और देखें कि क्या आपके एन्हांसमेंट सिस्टम को सुरक्षित बनाते हैं।

सिफारिश की: