विषयसूची:

रेलवे की सुरक्षा के लिए Arduino पर तापमान, वर्षा जल और कंपन सेंसर का उपयोग करना: 8 कदम (चित्रों के साथ)
रेलवे की सुरक्षा के लिए Arduino पर तापमान, वर्षा जल और कंपन सेंसर का उपयोग करना: 8 कदम (चित्रों के साथ)

वीडियो: रेलवे की सुरक्षा के लिए Arduino पर तापमान, वर्षा जल और कंपन सेंसर का उपयोग करना: 8 कदम (चित्रों के साथ)

वीडियो: रेलवे की सुरक्षा के लिए Arduino पर तापमान, वर्षा जल और कंपन सेंसर का उपयोग करना: 8 कदम (चित्रों के साथ)
वीडियो: अपनी शादी की क्या शर्त रखी है पूज्या जया किशोरी जी नें? आइए जानते हैं उन्हीं से | Jaya Kishori 2024, जुलाई
Anonim
रेलवे की सुरक्षा के लिए Arduino पर तापमान, वर्षा जल और कंपन सेंसर का उपयोग करना
रेलवे की सुरक्षा के लिए Arduino पर तापमान, वर्षा जल और कंपन सेंसर का उपयोग करना

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

यह निर्देश चरण-दर-चरण तापमान, वर्षा जल और आर्डिनो पर कंपन सेंसर के लिए वायरिंग दिखाएगा और साथ ही इन सेंसर को चलाने के लिए आवश्यक MATLAB कोड दिखाएगा।

चरण 1: भागों और सामग्री

1. एक कंप्यूटर जिसमें MATLAB का नवीनतम संस्करण स्थापित है

2. अरुडिनो बोर्ड

3. तापमान सेंसर

4. वर्षा जल सेंसर

5. कंपन सेंसर

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

7. ब्लू एलईडी लाइट

8. ग्रीन एलईडी लाइट

9. आरबीजी एलईडी लाइट

10. बजर

11. 18 पुरुष-पुरुष तार

12. 3 महिला-पुरुष तार

13. 2 महिला-महिला तार

14. 6 330 ओम प्रतिरोधक

१५. १ १०० ओम रोकनेवाला

चरण 2: तापमान सेंसर वायरिंग

तापमान सेंसर वायरिंग
तापमान सेंसर वायरिंग
तापमान सेंसर वायरिंग
तापमान सेंसर वायरिंग

ऊपर तापमान सेंसर इनपुट के लिए वायरिंग और MATLAB कोड भी है।

जमीन और 5V से तारों को पूरे बोर्ड के लिए केवल एक बार क्रमशः नकारात्मक और सकारात्मक चलाने की आवश्यकता होती है। यहां से, कोई भी ग्राउंड कनेक्शन नेगेटिव कॉलम से आएगा और कोई भी 5V कनेक्शन पॉजिटिव कॉलम से आएगा।

नीचे दिए गए कोड को तापमान सेंसर के लिए कॉपी और पेस्ट किया जा सकता है।

%% तापमान सेंसर% तापमान संवेदक के लिए हमने निम्नलिखित स्रोत के साथ प्रयोग किया:

% EF230 वेबसाइट सामग्री उपयोगकर्ता को अनुमति देने के लिए हमारे तापमान सेंसर को संशोधित करने के लिए

एक ग्राफ के साथ% इनपुट और 3 एलईडी लाइट आउटपुट।

%यह स्केच स्पार्कफन इलेक्ट्रॉनिक्स द्वारा लिखा गया था, % Arduino समुदाय से बहुत मदद के साथ।

%एरिक डेविसहल द्वारा MATLAB में अनुकूलित।

% एसआईके जानकारी के लिए https://learn.sparkfun.com/products/2 पर जाएं।

सभी साफ़ करें, clc

टेम्पपिन = 'ए0'; % टेम्प सेंसर से जुड़े एनालॉग पिन की घोषणा

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

% अज्ञात फ़ंक्शन को परिभाषित करें जो वोल्टेज को तापमान में परिवर्तित करता है

tempCfromVolts = @(वोल्ट) (वोल्ट-0.5)*100;

नमूना अवधि = 30;

नमूना अंतराल = 2; तापमान रीडिंग के बीच % सेकंड

नमूनाकरण समय का %सेट अप वेक्टर

नमूना समय = 0: नमूनाकरण अंतराल: नमूनाकरण अवधि;

%अवधि और अंतराल के आधार पर नमूनों की संख्या की गणना करें

numSamples = लंबाई (नमूना समय);

%preallocate अस्थायी चर और चर की संख्या के लिए यह स्टोर करेगा

tempC = शून्य (संख्या नमूने, 1);

अस्थायी एफ = अस्थायी;

% अधिकतम और न्यूनतम रेल तापमान को स्टोर करने के लिए इनपुट डायलॉग बॉक्स का उपयोग कर रहा है

dlg_prompts = {'अधिकतम तापमान दर्ज करें', 'न्यूनतम तापमान दर्ज करें'};

dlg_title = 'रेल तापमान अंतराल';

एन = 22;

dlg_ans = inputdlg (dlg_prompts, dlg_title, [1, लंबाई (dlg_title)+N]);

% उपयोगकर्ता से इनपुट संग्रहीत करना और प्रदर्शित करना कि इनपुट रिकॉर्ड किया गया था

max_temp = str2double(dlg_ans{1})

min_temp = str2double(dlg_ans{2})

txt = sprintf ('आपका इनपुट दर्ज किया गया है');

एच = संदेशबॉक्स (txt);

प्रतीक्षा करें (एच);

% लूप के लिए तापमान को एक विशिष्ट संख्या में पढ़ने के लिए।

सूचकांक के लिए = १:संख्यानमूने

% टेम्पपिन पर वोल्टेज पढ़ें और चर वोल्ट के रूप में स्टोर करें

वोल्ट = रीडवोल्टेज (ए, टेम्पपिन);

tempC (सूचकांक) = tempCfromVolts (वोल्ट);

अस्थायी (सूचकांक) = अस्थायी (सूचकांक) * 9/5 + 32; % सेल्सियस से फारेनहाइट में कनवर्ट करें

% यदि विशिष्ट एलईडी लाइट्स को ब्लिंक करने के लिए स्टेटमेंट किस शर्त पर निर्भर करता है

अगर tempF (सूचकांक)> = max_temp% लाल एलईडी

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

विराम (0.5);

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

विराम (0.5);

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

एल्सिफ टेम्पफ (इंडेक्स)> = मिन_टेम्प एंड& टेम्पफ (इंडेक्स) <मैक्स_टेम्प% ग्रीन एलईडी

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

विराम (0.5);

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

विराम (0.5);

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

एल्सिफ टेम्पफ (इंडेक्स) <= min_temp% ब्लू एलईडी

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

विराम (0.5);

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

विराम (0.5);

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

समाप्त

% तापमान को मापे जाने पर प्रदर्शित करें

fprintf('%d सेकंड पर तापमान %5.2f C या %5.2f F.\n' है, …

सैंपलिंगटाइम्स (इंडेक्स), टेम्पसी (इंडेक्स), टेम्पफ (इंडेक्स));

रोकें (नमूना अंतराल)% देरी अगले नमूने तक

समाप्त

% तापमान रीडिंग को प्लॉट करना

आकृति 1)

प्लॉट (नमूना समय, अस्थायी, 'आर-*')

xlabel ('समय (सेकंड)')

येलेबल ('तापमान (एफ)')

शीर्षक ('रेडबोर्ड से तापमान रीडिंग')

चरण 3: तापमान सेंसर आउटपुट

तापमान सेंसर आउटपुट
तापमान सेंसर आउटपुट
तापमान सेंसर आउटपुट
तापमान सेंसर आउटपुट

ऊपर तापमान सेंसर आउटपुट के लिए वायरिंग और MATLAB कोड है।

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

चरण 4: वर्षा जल सेंसर इनपुट

वर्षा जल सेंसर इनपुट
वर्षा जल सेंसर इनपुट
वर्षा जल सेंसर इनपुट
वर्षा जल सेंसर इनपुट

ऊपर वर्षा जल संवेदक के लिए वायरिंग है और MATLAB कोड नीचे पोस्ट किया गया है।

%% जल संवेदक

सभी साफ़ करें, clc

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

वॉटरपिन = 'ए 1';

vDry = ४.८०; % वोल्टेज जब पानी मौजूद न हो

नमूना अवधि = ६०;

नमूना अंतराल = 2;

नमूना समय = 0: नमूनाकरण अंतराल: नमूनाकरण अवधि;

numSamples = लंबाई (नमूना समय);

% लूप के लिए एक विशिष्ट समय (60 सेकंड) के लिए वोल्टेज को पढ़ने के लिए

सूचकांक के लिए = १:संख्यानमूने

वोल्ट २ = रीडवोल्टेज (ए, वाटरपिन); % वाटर पिन एनालॉग से वोल्टेज पढ़ें

% अगर पानी का पता चलने पर बजर बजने के लिए स्टेटमेंट। वोल्टेज ड्रॉप = पानी

अगर वोल्ट2 <vDry

PlayTone(a, 'D09', 2400) % PlayTone function from MathWorks

% पानी का पता चलने पर यात्रियों को चेतावनी प्रदर्शित करें

Waitfor(warndlg('आपकी ट्रेन पानी के खतरों के कारण विलंबित हो सकती है'));

समाप्त

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

fprintf('%d सेकंड पर वोल्टेज% 5.4f V.\n' है, …

सैंपलिंग टाइम्स (इंडेक्स), वोल्ट 2);

रोकें (नमूना अंतराल)

समाप्त

चरण 5: वर्षा जल सेंसर आउटपुट

वर्षा जल सेंसर आउटपुट
वर्षा जल सेंसर आउटपुट

ऊपर एक बजर के लिए वायरिंग है जो ट्रैक पर बहुत अधिक पानी गिरने पर बीप करता है। बजर के लिए कोड वर्षा जल इनपुट के कोड के भीतर एम्बेड किया गया है।

चरण 6: कंपन सेंसर इनपुट

कंपन सेंसर इनपुट
कंपन सेंसर इनपुट
कंपन सेंसर इनपुट
कंपन सेंसर इनपुट

ऊपर कंपन सेंसर के लिए वायरिंग है। ट्रैक पर चट्टानें गिरने की स्थिति में रेलवे सिस्टम के लिए वाइब्रेशन सेंसर महत्वपूर्ण हो सकते हैं। MATLAB कोड नीचे पोस्ट किया गया है।

%% कंपन सेंसरसभी साफ़ करें, clc

PIEZO_PIN = 'A3'; % कंपन सेंसर से जुड़े एनालॉग पिन की घोषणा a=arduino('/dev/tty.usbserial-DA017PNO', 'uno'); % कंपन नमूने को मापने के लिए समय और अंतराल को प्रारंभ करनाअवधि = 30; % सेकंड नमूनाकरणअंतराल = 1;

नमूना समय = 0: नमूनाकरण अंतराल: नमूनाकरण अवधि;

numSamples = लंबाई (नमूना समय);

% निम्नलिखित स्रोत से कोड का उपयोग करके हमने इसे चालू करने के लिए इसे संशोधित किया है

कंपन का पता चलने पर % बैंगनी एलईडी।

% SparkFun Tinker Kit, RGB LED, SparkFun Electronics द्वारा लिखित, % Arduino समुदाय से बहुत मदद के साथ

% एरिक डेविसहली द्वारा MATLAB में अनुकूलित

% RGB पिन को इनिशियलाइज़ कर रहा है

RED_PIN = 'D5';

GREEN_PIN = 'D6';

BLUE_PIN = 'D7';

% लूप के लिए कंपन सेंसर से वोल्टेज परिवर्तन रिकॉर्ड करने के लिए a

% विशिष्ट समय अंतराल (30 सेकंड)

सूचकांक के लिए = १:संख्यानमूने

वोल्ट ३ = रीडवोल्टेज (ए, पीआईईज़ो_पिन);

% यदि कंपन का पता चलने पर बैंगनी एलईडी चालू करने का कथन है

अगर वोल्ट3>0.025

राइटडिजिटलपिन (ए, RED_PIN, 1);

% बैंगनी रोशनी बनाना

राइटडिजिटलपिन (ए, ग्रीन_पिन, 0);

राइटडिजिटलपिन (ए, BLUE_PIN, 1);

अन्य% यदि कोई कंपन नहीं पाया जाता है तो एलईडी बंद कर दें।

राइटडिजिटलपिन (ए, RED_PIN, 0);

राइटडिजिटलपिन (ए, ग्रीन_पिन, 0);

राइटडिजिटलपिन (ए, BLUE_PIN, 0);

समाप्त

% वोल्टेज को मापे जाने पर प्रदर्शित करें।

fprintf('%d सेकंड पर वोल्टेज% 5.4f V.\n' है, …

सैंपलिंग टाइम्स (इंडेक्स), वोल्ट 3);

रोकें (नमूना अंतराल)

समाप्त

कंपन को मापते समय % प्रकाश काट दें

राइटडिजिटलपिन (ए, RED_PIN, 0);

राइटडिजिटलपिन (ए, ग्रीन_पिन, 0);

राइटडिजिटलपिन (ए, BLUE_PIN, 0);

चरण 7: कंपन सेंसर आउटपुट

कंपन सेंसर आउटपुट
कंपन सेंसर आउटपुट

ऊपर इस्तेमाल की गई आरबीजी एलईडी लाइट के लिए वायरिंग है। कंपन का पता चलने पर प्रकाश बैंगनी रंग का हो जाएगा। आउटपुट के लिए MATLAB कोड इनपुट के कोड के भीतर एम्बेड किया गया है।

चरण 8: निष्कर्ष

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

सिफारिश की: