विषयसूची:
वीडियो: गार्डन ट्रेन - अरुडिनो वायरलेस एनएमआरए डीसीसी: 4 कदम (चित्रों के साथ)
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:21
डेड रेल सिस्टम पर डीसीसी के साथ पिछले निर्देश के अलावा, मैंने कीपैड और एलसीडी डिस्प्ले के साथ डीसीसी कमांड स्टेशन को हाथ से पकड़कर इस विचार को और विकसित किया है। कमांड स्टेशन में एनएमआरए डीसीसी निर्देशों के लिए आवश्यक सभी कोडिंग शामिल हैं, हालांकि रेल से कनेक्ट होने के बजाय, डेटा को रेडियो मॉड्यूल आरएफ24एल01+ द्वारा ट्रक में या लोको के नीचे लगे रिसीवर में स्थानांतरित किया जाता है - जहां भी कमरा अनुमति देता है।
बेशक, आपके लोको इंजन मोटर्स के अनुकूल लोड क्षमता के डिकोडर के साथ फिट होना चाहिए।
चरण 1: सिस्टम का डिजाइन
Arduino Pro Mini डिजाइन के केंद्र में है। सर्किट को विकसित करने और पीसीबी बनाने के लिए फ्रिट्ज़िंग का उपयोग करना।
मैं ट्रांसमीटर और रिसीवर दोनों के लिए एक ही पीसीबी का उपयोग करने में सक्षम था जिससे कुछ लागतों की बचत हुई।
ट्रांसमीटर में कीपैड और एलसीडी के लिए कनेक्शन होते हैं जबकि रिसीवर को इनकी आवश्यकता नहीं होती है और लोको के लिए डीसीसी आउटपुट की आपूर्ति के लिए एच-ब्रिज का उपयोग करता है।
एक और विकास में अधिक शक्तिशाली इंजनों के लिए आवश्यक होने पर बड़े एच-ब्रिज के लिए कनेक्शन शामिल हैं।
PCF8574 को हटाया जा सकता है यदि आप एक LCD डिस्प्ले का उपयोग करते हैं जो बैकपैक के साथ आता है जो Arduino पर SCA / SCL कनेक्शन को केवल 2 तारों का उपयोग करके डिस्प्ले को फीड करने की अनुमति देता है। भागों की सूची: कुल = DCC कमांड स्टेशन के लिए लगभग £ 60 + 1 रिसीवरअतिरिक्त रिसीवर लागत = £१०.०० लगभग प्रत्येक। + बैटरी
अरुडिनो प्रो मिनी। एक्स 2 = £4.00
4x3 झिल्ली कीपैड = £3.00
२० x ४ एलसीडी डिस्प्ले = £७.००
पीसीएफ५८७४ = £१.८०
एनआरएफ24एल01+. रेडियो मॉड्यूल x 2 = £५.८०
10 ऑफ के लिए पीसीबी निर्माण (या वेरो बोर्ड का उपयोग किया जा सकता है) = £ 24 या £ 4.80 2off. के लिए
३.३ वी रेगुलेटर = £०.१७ (आरएस कॉम्प से २५ का पैक)
5v रेगुलेटर LM7805 = £0.30
एच-ब्रिज SN754410ne = £3.00
लॉयट्रॉन री-चार्जेबल 2700 एमएएच एए बैटरी x 12 = £22.00। (कम एमएएच रेटेड बैटरी सस्ती हैं)
कैपेसिटर, बर्तन, पिन, कनेक्टर, आदि = £2.00 लगभग
संलग्नक 190x110x60 मिमी = £8.00
ट्रांसमीटर - फोन चार्जर / बैटरी = £2.00
चरण 2: ट्रांसमीटर
सर्किट आरेख दिखाया गया है जहां Arduino Pro Mini पर D2 से D8 पिन कीपैड से जुड़े हैं। गति समायोजन के लिए एक 100k ओम पोटेंशियोमीटर एनालॉग पिन A0 से जुड़ा है। SDA और SCL पिन PCF8574 चिप बनाते हैं जो पिन A4 से जुड़े होते हैं और प्रो मिनी की शीर्ष परत पर पिनों को टांका लगाने वाले तारों के माध्यम से Arduino Pro Mini पर A5।
Arduino स्केच डाउनलोड के लिए संलग्न है।
मैंने 20 x 4 एलसीडी डिस्प्ले का उपयोग किया है जिसमें प्रति पंक्ति 20 वर्णों के साथ 4 पंक्तियों की जानकारी की अनुमति है। कीपैड निम्नलिखित मेनू प्रदान करता है:
1 से 9 = लोको का पता * = दिशा 0 = रोशनी # = 1 से 8 की चाबियों के लिए फ़ंक्शन मेनू
Arduino Pro Mini स्केच का मूल विवरण: कोड की यह पंक्ति DCC संदेश को HEX प्रारूप में व्यवस्थित करती है। संरचना संदेश संदेश [MAXMSG] = {
{{0xFF, 0, 0xFF, 0, 0, 0, 0}, 3}, // निष्क्रिय संदेश
{ { locoAdr, 0, 0, 0, 0, 0, 0}, 3} // 3 बाइट पता
};
प्रत्येक लोको के लिए सेटिंग्स को स्टोर करने के लिए, सरणियों की एक श्रृंखला निम्नानुसार स्थापित की जाती है:
int la[20];// लोको नंबर रखने के लिए सरणी
int sa[20];// गति मान रखने के लिए सरणी
int fda[20];// सरणी रखने के लिए dir
int fla[20];// सरणी रोशनी रखने के लिए
int f1a[20];// सरणी fun1 रखने के लिए…..
int f8a[20];// सरणी fun8 रखने के लिए
डीसीसी निर्देशों को संशोधित करने के लिए सक्षम करने के लिए हम जाते हैं:
गति निर्देशों के लिए: शून्य संशोधन_गति (संरचना संदेश और x) {
x.डेटा [0] = लोकोएडीआर;
x.डेटा [1] = 0x40; // locoMsg 28 स्पीड स्टेप्स के साथ}
फ़ंक्शन निर्देशों के लिए:
शून्य संशोधन_समूह1 (संरचना संदेश और x) {
x.डेटा [0] = लोकोएडीआर;
x.डेटा [1] = 0x80; // locoMsg ग्रुप वन इंस्ट्रक्शन 0x80 के साथ}
स्केच का मुख्य लूप:
शून्य लूप (शून्य) {अगर (read_locoSpeed ()) {assembly_dcc_msg_speed ();
भेजें_डेटा_1 (); // वायरलेस द्वारा डेटा भेजें
देरी(10);
send_data_3 (); // एलसीडी डिस्प्ले पर डेटा प्रदर्शित करें
send_data_4 (); // सीरियल मॉनिटर पर डेटा प्रदर्शित करें}
अगर (read_function ()) {
असेंबल_dcc_msg_group1 ();
भेजें_डेटा_1 ();
देरी(10);
send_data_3 (); } }
गति बदलने पर डेटा अपडेट करें:
बूलियन read_locoSpeed () यह एक नए लोको पते, गति या दिशा सेटिंग का पता लगाता है और तदनुसार HEX 'डेटा' में संशोधन करता है। यहां मैंने 28 गति चरणों को निर्दिष्ट किया है और NMRA मानक S 9.2 को पूरा करने के लिए, गति डेटा एक लुक अप टेबल से पाया जाना चाहिए। 'स्पीड_स्टेप ()' में
शून्य स्पीड_स्टेप () {स्विच (लोकोस्पीड) {
केस 1: डेटा |= 0x02; टूटना;
केस 2: डेटा |= 0x12; टूटना;
केस 3: डेटा |= 0x03; टूटना;
………
केस 28: डेटा |= 0x1F; टूटना; }}
फ़ंक्शन बदलने पर डेटा अपडेट करें:
बूलियन read_function ()
अगर (fla [locoAdr] == 0) {डेटा = 0x80;
}//हेड लाइट बंद
अगर (fla [locoAdr] == 1) {
डेटा = 0x90;
} // हेड लाइट ऑन
प्रत्येक समारोह के लिए:
अगर (f2a[locoAdr] == 0) { डेटा |= 0; }. // फंक्शन 2 ऑफ
अगर (f2a [locoAdr] == 1) {
डेटा |= 0x02; // फंक्शन 2 ऑन }'डेटा' प्रत्येक फंक्शन के लिए ['|=' कंपाउंड बिटवाइज या] HEX कोड को मिलाकर बनाया गया है।
चरण 3: रिसीवर
सर्किट आरेख दिखाया गया है जहां एच-ब्रिज को आपूर्ति किए गए डीसीसी सिग्नल प्रदान करने के लिए Arduino Pro Mini के पिन 5 और 6 का उपयोग किया जाता है। एच-ब्रिज जोड़े वर्तमान क्षमता को बढ़ाने के लिए समानांतर में जुड़े हुए हैं। लोको द्वारा खींची गई धारा के आधार पर, एक हीट सिंक को 16 पिन डीआईपी डिवाइस से जोड़ने की आवश्यकता हो सकती है, या एक भारी शुल्क एच-ब्रिज को बाहरी रूप से जोड़ा जा सकता है।
Arduino स्केच डाउनलोड के लिए संलग्न है। DCC सिग्नल 2MHZ. पर चलने वाली घड़ी से बना है
शून्य SetupTimer2() यह काम करता है।
घड़ी में DCC डेटा में '1' के लिए 'शॉर्ट पल्स' (58us) और DCC डेटा में '0' के लिए 'लॉन्ग पल्स' (116us) शामिल हैं।
लूप शून्य, रेडियो से डेटा प्राप्त करता है और यदि एक वैध स्ट्रिंग मिलती है, तो डेटा को डीसीसी डेटा में परिवर्तित कर दिया जाता है।
शून्य लूप (शून्य) {अगर (रेडियो उपलब्ध ()) { बूल किया = झूठा; किया = रेडियो.रीड (आईएनएमएसजी, 1); // प्राप्त डेटा पढ़ें
चार आरसी = इनएमएसजी [0]; // इस सरणी में पढ़े गए चरित्र को रखें
अगर (आरसी! = 0) {। // यदि चरित्र शून्य के बराबर नहीं है
inString.concat (आरसी); // संदेश का निर्माण करें}
अगर (आरसी == '\0') {// अगर चरित्र संदेश का अंत '/0' है
सीरियल.प्रिंट्लन (इनस्ट्रिंग); // इकट्ठे संदेश को प्रिंट करें
डोरी(); // DCC निर्देश प्राप्त करने के लिए स्ट्रिंग संदेश को डी-कंस्ट्रक्ट करें
} } }
चरण 4: लोको चलाएँ
एक ही ट्रैक पर कई ट्रेनें चलाने से डेटा में रुकावट से बचने के लिए, आपको प्रत्येक लोको और ट्रक के लिए पहियों और ट्रैक के बीच के संपर्कों को डिस्कनेक्ट करना होगा।
ट्रैक की स्थिति की परवाह किए बिना मुफ्त चलने वाली ट्रेनों का आनंद लें - क्या फर्क है! कोई परेशानी नहीं, कोई स्टार्ट-स्टॉप और कोई सफाई की आवश्यकता नहीं है।
मैंने जिन बैटरियों का उपयोग किया है, वे LLoytron AA x 12 को फिर से चार्ज करने योग्य हैं। मैंने विशेष रूप से उनके लिए एक चार्जर बनाया है जो एक बार में 6 चार्ज करता है। (निर्देश देखें)
सिफारिश की:
अपने मोबाइल फोन के साथ अपने मॉडल ट्रेन लेआउट को नियंत्रित करें!: 11 कदम (चित्रों के साथ)
अपने मोबाइल फोन के साथ अपने मॉडल ट्रेन लेआउट को नियंत्रित करें!: वायर्ड थ्रॉटल और टर्नआउट नियंत्रकों के साथ एक मॉडल ट्रेन लेआउट को नियंत्रित करना शुरुआती लोगों के लिए एक अच्छी शुरुआत हो सकती है लेकिन वे गैर-पोर्टेबिलिटी की समस्या पैदा करते हैं। साथ ही, बाजार में आने वाले वायरलेस कंट्रोलर या तो कुछ लोकोमोटिव को ही नियंत्रित कर सकते हैं
Garduino - Arduino के साथ स्मार्ट गार्डन: 4 कदम (चित्रों के साथ)
Garduino - Arduino के साथ स्मार्ट गार्डन: इन दिनों, कोई भी निर्दोष नहीं है। क्या कोई है जिसने गलती से एक पौधे को नहीं मारा???अपने पौधों को जीवित रखना कठिन है। आप एक नया पौधा खरीदते हैं, और सबसे खराब स्थिति में, आप उसे पानी देना भूल जाते हैं। बेहतर स्थिति में, आपको याद है कि यह मौजूद है, लेकिन आप करते हैं
वायरलेस गार्डन सिस्टम: 7 कदम
वायरलेस गार्डन सिस्टम: यह परियोजना Arduino पर आधारित है, और "मॉड्यूल" आपको अपने पौधों को पानी देने में मदद करने के लिए, और अस्थायी और मिट्टी और बारिश पर लॉग प्राप्त करने के लिए। सिस्टम 2,4 GHz के माध्यम से वायरलेस है और डेटा भेजने और प्राप्त करने के लिए NRF24L01 मॉड्यूल का उपयोग करता है। मैं थोड़ा समझाता हूं कि कैसे
अपने टीवी रिमोट के साथ अपने मॉडल ट्रेन लेआउट को नियंत्रित करें!: 7 कदम (चित्रों के साथ)
अपने टीवी रिमोट के साथ अपने मॉडल ट्रेन लेआउट को नियंत्रित करें !: इस निर्देश में, मैं आपको दिखाऊंगा कि एक मॉडल ट्रेन के लिए आईआर रिमोट कंट्रोल सिस्टम कैसे बनाया जाता है। तब आप अपने सोफे पर आराम करते हुए अपनी ट्रेनों को नियंत्रित करने में सक्षम होंगे। तो चलो शुरू हो जाओ
रास्पियन खिंचाव पर टीपी लिंक WN7200ND यूएसबी वायरलेस एडाप्टर के साथ पचास मीटर रेंज वायरलेस एक्सेस प्वाइंट: 6 कदम
रास्पियन स्ट्रेच पर टीपी लिंक WN7200ND USB वायरलेस एडेप्टर के साथ पचास मीटर रेंज वायरलेस एक्सेस प्वाइंट: रास्पबेरी पाई सुरक्षित वायरलेस एक्सेस पॉइंट बनाने के लिए बहुत अच्छा है, लेकिन इसकी एक अच्छी रेंज नहीं है, मैंने इसे विस्तारित करने के लिए एक TP लिंक WN7200ND USB वायरलेस एडेप्टर का उपयोग किया। मैं यह साझा करना चाहता हूं कि यह कैसे करना है मैं राउटर के बजाय रास्पबेरी पाई का उपयोग क्यों करना चाहता हूं? टी