विषयसूची:

निक्सी बारग्राफ घड़ी: 6 कदम (चित्रों के साथ)
निक्सी बारग्राफ घड़ी: 6 कदम (चित्रों के साथ)

वीडियो: निक्सी बारग्राफ घड़ी: 6 कदम (चित्रों के साथ)

वीडियो: निक्सी बारग्राफ घड़ी: 6 कदम (चित्रों के साथ)
वीडियो: kisi ko CHOTA nahi samjhna 😎#farazstuntrider #superbikes #bikers #hayabusa 2024, जुलाई
Anonim
निक्सी बारग्राफ घड़ी
निक्सी बारग्राफ घड़ी
निक्सी बारग्राफ घड़ी
निक्सी बारग्राफ घड़ी

9/11/17 संपादित करें किकस्टार्टर की मदद से मैंने अब इस घड़ी किट के लिए एक किट जारी की है! इसमें एक ड्राइवर बोर्ड और 2 निक्सी IN-9 ट्यूब शामिल हैं। आपको बस अपना खुद का Arduino/Raspberry Pi/अन्य जोड़ना है। किट मिल सकती है लेकिन इस लिंक पर क्लिक करें!

इसलिए मैंने बहुत सारी निक्सी घड़ियों को ऑनलाइन देखा है और सोचा कि वे बहुत अच्छी लग रही हैं, हालांकि मैं उस घड़ी पर $ 100+ खर्च नहीं करना चाहता था जिसमें ट्यूब भी शामिल नहीं थे! इसलिए थोड़ा इलेक्ट्रॉनिक्स ज्ञान के साथ मैंने विभिन्न निक्सी ट्यूबों का शिकार किया और सर्किट। मैं आम तौर पर काफी समान दिखने वाली निक्सी घड़ियों की बड़ी रेंज के लिए कुछ अलग बनाना चाहता था। अंत में मैंने निक्सी इन-9 बारग्राफ ट्यूबों का उपयोग करने का विकल्प चुना। ये लंबी पतली ट्यूब हैं और चमकते प्लाज्मा की ऊंचाई ट्यूबों के माध्यम से वर्तमान पर निर्भर करती है। बाईं ओर ट्यूब घंटे की वृद्धि में है और दाईं ओर ट्यूब मिनटों में है। उनके पास केवल दो लीड हैं और इसलिए एक सर्किट को और अधिक सीधे आगे बनाते हैं। इस डिजाइन में, एक घंटा और एक मिनट ट्यूब होती है, जिसमें प्रत्येक ट्यूब में प्लाज्मा की ऊंचाई वर्तमान समय का प्रतिनिधित्व करती है। Adafruit Trinket माइक्रोकंट्रोलर और रियल टाइम क्लॉक (RTC) का उपयोग करके समय को रखा जाता है।

चरण 1: भागों को इकट्ठा करना

भागों को इकट्ठा करना
भागों को इकट्ठा करना

दो खंड हैं, पहला इलेक्ट्रॉनिक्स और दूसरा माउंटिंग और फिनिशिंग। आवश्यक इलेक्ट्रॉनिक घटक हैं: Adafruit Trinket 5V - $7.95 (www.adafruit.com/products/1501) Adafruit RTC - $9 (www.adafruit.com/products/264) 2x Nixie IN-9 बारग्राफ ~ $3 प्रति ट्यूब eBay पर 1x निक्सी 140v बिजली की आपूर्ति ~$12 eBay पर 4x 47 uF इलेक्ट्रोलाइट कैपेसिटर 4x 3.9 kOhm रेसिस्टर्स 2x 1 kOhm पोटेंशियोमीटर 2x ट्रांजिस्टर MJE340 NPN हाई वोल्टेज ~$1 प्रत्येक 1x LM7805 5v रेगुलेटर ~$1 1x 2.1mm सॉकेट ~$1 1x पीसीबी के साथ प्रोजेक्ट बॉक्स ~$5 1x 12 वी डीसी बिजली की आपूर्ति (मुझे कुछ लंबे समय से भूले हुए गैजेट से एक पुराना मिला) मिलाप, हुकअप तार, आदि बढ़ते हुए: मैंने एक छोटे से काले प्लास्टिक प्रोजेक्ट बॉक्स में इलेक्ट्रॉनिक्स को माउंट करने का फैसला किया, फिर एक प्राचीन घड़ी की गति पर ट्यूबों को माउंट करें। घंटे और मिनटों को चिह्नित करने के लिए मैंने ट्यूबों के चारों ओर लिपटे तांबे के तार का इस्तेमाल किया। बढ़ते हिस्से: प्राचीन घड़ी आंदोलन - $ 10 ईबे कॉपर वायर - $ 3 ईबे हॉट ग्लू गन

चरण 2: सर्किट

सर्किट
सर्किट
सर्किट
सर्किट
सर्किट
सर्किट
सर्किट
सर्किट

पहला कदम निक्सी बिजली आपूर्ति का निर्माण करना है। यह ईबे से एक अच्छी छोटी किट के रूप में आया था, जिसमें थोड़ा पीसीबी भी शामिल था और बस बोर्ड को मिलाप करने के लिए घटकों की आवश्यकता थी। यह विशेष आपूर्ति 110-180v के बीच परिवर्तनशील है, जिसे बोर्ड पर एक छोटे बर्तन के साथ नियंत्रित किया जा सकता है। एक छोटे स्क्रू ड्राइवर का उपयोग करके आउटपुट को ~140v पर समायोजित करें। इससे पहले कि मैं पूरी तरह से जाता, मैं अपनी निक्सी ट्यूबों का परीक्षण करना चाहता था, ऐसा करने के लिए मैंने एक ट्यूब, ट्रांजिस्टर और एक 10k पोटेंशियोमीटर का उपयोग करके एक साधारण परीक्षण सर्किट बनाया जो मैंने चारों ओर बिछाया था। जैसा कि पहले आंकड़े में देखा जा सकता है, 140v आपूर्ति ट्यूब एनोड (दाहिने पैर) से जुड़ी हुई है। कैथोड (बाएं पैर) को तब MJE340 ट्रांजिस्टर के कलेक्टर लेग से जोड़ा जाता है। एक 5v आपूर्ति ट्रांजिस्टर बेस में जमीन से विभाजित 10k पॉट से जुड़ी है। अंत में ट्रांजिस्टर एमिटर को जमीन से 300 ओम करंट लिमिटिंग रेसिस्टर के माध्यम से जोड़ा जाता है। यदि आप ट्रांजिस्टर और इलेक्ट्रॉनिक्स से परिचित नहीं हैं, तो यह वास्तव में मायने नहीं रखता है, बस इसे तार दें और पॉट नॉब से प्लाज्मा की ऊंचाई बदलें! एक बार जब वह काम कर रहा होता है तो हम अपनी घड़ी बनाते हुए देख सकते हैं। फुल क्लॉक सर्किट को दूसरे सर्किट डायग्राम में देखा जा सकता है। कुछ शोध के बाद मुझे एडफ्रूट लर्न वेबसाइट पर लगभग ठीक वैसा ही करने के लिए एक आदर्श ट्यूटोरियल मिला जो मैं करना चाहता था। ट्यूटोरियल यहां पाया जा सकता है: https://learn.adafruit.com/trinket-Powered-analog-m… यह ट्यूटोरियल दो एनालॉग amp मीटर को नियंत्रित करने के लिए एक ट्रिंकेट कंट्रोलर और एक RTC का उपयोग करता है। सुई के विक्षेपण को नियंत्रित करने के लिए पल्स चौड़ाई मॉडुलन (पीडब्लूएम) का उपयोग करना। amp मीटर का कॉइल पीडब्लूएम को एक प्रभावी डीसी सिग्नल में औसत करता है। हालांकि अगर हम सीधे ट्यूबों को चलाने के लिए पीडब्लूएम का उपयोग करते हैं तो उच्च आवृत्ति मॉड्यूलेशन का मतलब है कि प्लाज्मा बार ट्यूब के आधार पर "क्लैम्प्ड" नहीं रहेगा और आपके पास एक होवरिंग बार होगा। इससे बचने के लिए मैंने लगभग डीसी सिग्नल प्राप्त करने के लिए लंबे समय तक स्थिर रहने वाले कम पास फिल्टर का उपयोग करके पीडब्लूएम का औसत निकाला। इसकी कट ऑफ फ्रीक्वेंसी 0.8 हर्ट्ज है, यह ठीक है क्योंकि हम हर 5 सेकंड में केवल क्लॉक टाइम को अपडेट कर रहे हैं। इसके अतिरिक्त चूंकि बारग्राफ में एक सीमित जीवन काल होता है और इसे बदलने की आवश्यकता हो सकती है और प्रत्येक ट्यूब बिल्कुल समान नहीं होती है, इसलिए मैंने ट्यूब के बाद 1k पॉट शामिल किया। यह दो ट्यूबों के लिए प्लाज्मा ऊंचाई को समायोजित करने के लिए tweaking की अनुमति देता है। ट्रिंकेट को रीयल टाइम क्लॉक (आरसीटी) से जोड़ने के लिए ट्रिंकेट-पिन 0 को आरटीसी-एसडीए, ट्रिंकेट-पिन 2 को आरटीसी-एससीएल और ट्रिंकेट-पिन 2 को आरटीसी-5वी और ट्रिंकेट जीएनडी को आरटीसी ग्राउंड से कनेक्ट करें। इस भाग के लिए एडफ्रूट घड़ी निर्देश, https://learn.adafruit.com/trinket-powered-analog-… को देखना मददगार हो सकता है। एक बार जब ट्रिंकेट और आरटीसी सही ढंग से तार-तार हो जाते हैं, तो सर्किट डायग्राम का ध्यानपूर्वक पालन करते हुए निक्सी ट्यूब, ट्रांजिस्टर, फिल्टर आदि को ब्रेडबोर्ड पर तार दें।

RTC और Trinket पर बात करने के लिए आपको सबसे पहले Adafruit Github से सही लाइब्रेरी डाउनलोड करनी होगी। आपको TinyWireM.h और TInyRTClib.h की आवश्यकता है। पहले हम ट्यूबों को कैलिब्रेट करना चाहते हैं, इस निर्देश के अंत में कैलिब्रेट स्केच अपलोड करें। यदि अंत में कोई भी रेखाचित्र काम नहीं करता है तो Adafruit घड़ी स्केच का प्रयास करें। मैंने निक्सी ट्यूबों के साथ सबसे प्रभावी ढंग से काम करने के लिए एडफ्रूट घड़ी स्केच को बदल दिया है लेकिन एडफ्रूट स्केच ठीक काम करेगा।

चरण 3: अंशांकन

कैलिब्रेशन
कैलिब्रेशन

एक बार जब आप अंशांकन स्केच अपलोड कर लेते हैं तो स्नातकों को चिह्नित करने की आवश्यकता होती है।

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

दूसरी सेटिंग मिनट ट्यूब को कैलिब्रेट करती है। यह हर 5 सेकंड में 0, 15, 30, 45 और 60 मिनट के बीच बदलता है।

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

एक बार जब आप पॉट को समायोजित कर लेते हैं तो स्केच को मिनटों के लिए कैलिब्रेट करने के लिए अपलोड करें। तांबे का पतला तार लें और उसे छोटा काट लें। इसे ट्यूब के चारों ओर लपेटें और दोनों सिरों को एक साथ मोड़ें। इसे सही स्थिति में स्लाइड करें और एक गर्म गोंद बंदूक का उपयोग करके गोंद की एक छोटी बूँद को सही जगह पर रखें। प्रत्येक मिनट और घंटे की वृद्धि के लिए इसे दोहराएं।

मैं इस प्रक्रिया की कोई भी तस्वीर लेना भूल गया लेकिन आप तस्वीरों से देख सकते हैं कि तार कैसे जुड़ा हुआ है। हालाँकि मैंने तार को जोड़ने के लिए बहुत कम गोंद का उपयोग किया था।

चरण 4: माउंटिंग और फिनिशिंग

बढ़ते और परिष्करण
बढ़ते और परिष्करण
बढ़ते और परिष्करण
बढ़ते और परिष्करण
बढ़ते और परिष्करण
बढ़ते और परिष्करण

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

चरण 5: Arduino स्केच - अंशांकन

#define HOUR_PIN 1 // ट्रिंकेट GPIO #1. पर PWM के माध्यम से घंटे का प्रदर्शन

#define MINUTE_PIN 4 // ट्रिंकेट GPIO #4 पर PWM के माध्यम से मिनट का प्रदर्शन (टाइमर 1 कॉल के माध्यम से)

इंट घंटे = 57;इंट मिनट = 57; // न्यूनतम pwm सेट करें

शून्य सेटअप () {पिनमोड (HOUR_PIN, OUTPUT); पिनमोड (MINUTE_PIN, OUTPUT); PWM4_init (); // PWM आउटपुट सेट करें

}

शून्य लूप () {// इसका उपयोग निक्सी पॉट्स को ट्विक करने के लिए करें ताकि यह सुनिश्चित हो सके कि अधिकतम ट्यूब ऊंचाई एनालॉगवाइट (HOUR_PIN, 255) से मेल खाती है; एनालॉगवाइट 4 (255); // मिनट की वृद्धि को कैलिब्रेट करने के लिए इसका इस्तेमाल करें

/*

एनालॉगराइट4(57); // मिनट 0 देरी (5000); एनालॉगवर्इट4(107); // मिनट 15 देरी (5000); एनालॉग वाइट4(156); // मिनट 30 देरी (5000); एनालॉगराइट4(206); // मिनट 45 देरी (5000); एनालॉगवाइट 4 (255); // मिनट 60 देरी (5000);

*/

// घंटे की वृद्धि को जांचने के लिए इसका इस्तेमाल करें /*

एनालॉगवर्इट (HOUR_PIN, 57); // 57 न्यूनतम आउटपुट है और 1am/pm देरी (4000) से मेल खाती है; // देरी 4 सेकंड एनालॉगवर्इट (HOUR_PIN, 75); // 75 वह आउटपुट है जो 2am/pm देरी (4000) से मेल खाती है; एनालॉगवर्इट (HOUR_PIN, 93); // 93 वह आउटपुट है जो 3am/pm देरी (4000) से मेल खाता है; एनालॉगवर्इट (HOUR_PIN, 111); // 111 वह आउटपुट है जो 4am/pm देरी (4000) से मेल खाता है; एनालॉगवर्इट (HOUR_PIN, 129); // 129 वह आउटपुट है जो 5am/pm देरी (4000) के अनुरूप है; एनालॉगवर्इट (HOUR_PIN, 147); // 147 वह आउटपुट है जो 6am/pm देरी (4000) के अनुरूप है; एनालॉगवर्इट (HOUR_PIN, 165); // 165 वह आउटपुट है जो 7am/pm देरी (4000) के अनुरूप है; एनालॉगराइट (HOUR_PIN, 183); // १८३ वह आउटपुट है जो प्रातः ८ बजे/ अपराह्न विलंब (४०००) के अनुरूप है; एनालॉगवर्इट (HOUR_PIN, 201); // 201 आउटपुट है जो 9am/pm देरी (4000) से मेल खाता है; एनालॉगवर्इट (HOUR_PIN, 219); // 219 वह आउटपुट है जो 10am/pm देरी (4000) के अनुरूप है; एनालॉगवर्इट (HOUR_PIN, 237); // 237 वह आउटपुट है जो 11am/pm देरी (4000) से मेल खाती है; एनालॉगवर्इट (HOUR_PIN, 255); // 255 वह आउटपुट है जो 12am/pm. से मेल खाती है

*/

}

शून्य PWM4_init () {// PWM को ट्रिंकेट GPIO # 4 (PB4, पिन 3) पर टाइमर 1 TCCR1 = _BV (CS10) का उपयोग करके सेट करें; // कोई प्रीस्केलर जीटीसीसीआर नहीं = _BV (COM1B1) | _बीवी (पीडब्लूएम1बी); // OCR1B = १२७ की तुलना पर OC1B साफ़ करें; // कर्तव्य चक्र ५०% OCR1C = २५५ के लिए आरंभिक; // आवृत्ति }

// ट्रिंकेट जीपीआईओ # 4 शून्य एनालॉगवाइट 4 (यूइंट 8_टी ड्यूटी_वैल्यू) पर एनालॉगराइट की अनुमति देने के लिए कार्य {ओसीआर 1 बी = ड्यूटी_वैल्यू; // ड्यूटी 0 से 255 (0 से 100%) हो सकती है}

चरण 6: Arduino स्केच - घड़ी

// एडफ्रूट ट्रिंकेट एनालॉग मीटर क्लॉक

// दिनांक और समय I2C और TinyWireM lib के माध्यम से जुड़े DS1307 RTC का उपयोग करके कार्य करता है

// इन पुस्तकालयों को Adafruit के Github रिपॉजिटरी से डाउनलोड करें और // अपनी Arduino लाइब्रेरी निर्देशिका में स्थापित करें #include #include

// डिबग, असम्बद्ध सीरियल कोड के लिए, एक FTDI मित्र का उपयोग करें जिसका RX पिन पिन 3 से जुड़ा है बॉड क्या हो रहा है यह देखने के लिए सीरियल कमांड को अनकम्मेंट करें //# HOUR_PIN 1 // परिभाषित करें PWM के माध्यम से Trinket GPIO #1 #define MINUTE_PIN 4 // ट्रिंकेट GPIO पर PWM के माध्यम से मिनट डिस्प्ले (3); // ट्रिंकेट पिन 3 RTC_DS1307 rtc पर सीरियल ट्रांसमिशन; // वास्तविक समय घड़ी सेट करें

शून्य सेटअप () {पिनमोड (HOUR_PIN, OUTPUT); // PWM मीटर पिन को आउटपुट पिनमोड (MINUTE_PIN, OUTPUT) के रूप में परिभाषित करें; PWM4_init (); // ट्रिंकेट पिन 4 TinyWireM.begin () पर PWM को काम करने के लिए टाइमर 1 सेट करें; // I2C rtc.begin () शुरू करें; // DS1307 वास्तविक समय घड़ी शुरू करें // Serial.begin (9600); // 9600 बॉड पर सीरियल मॉनिटर शुरू करें अगर (! rtc.isrunning ()) {//Serial.println ("RTC नहीं चल रहा है!"); // निम्न पंक्ति RTC को उस दिनांक और समय पर सेट करती है जब यह स्केच संकलित किया गया था rtc.adjust(DateTime(_DATE_, _TIME_)); }}

शून्य लूप () {uint8_t घंटावेल्यू, मिनटवैल्यू; uint8_t घंटावोल्टेज, मिनटवोल्टेज;

डेटटाइम अब = rtc.now (); // आरटीसी जानकारी प्राप्त करें घंटा मूल्य = अब। घंटा (); // घंटा प्राप्त करें यदि (घंटे का मूल्य> 12) घंटे का मूल्य - = 12; // यह घड़ी १२ घंटे मिनटवैल्यू = अब.मिनट (); // मिनट प्राप्त करें

मिनटवोल्टेज = नक्शा (मिनटवैल्यू, १, ६०, ५७, २५५); // मिनटों को PWM कर्तव्य चक्र में बदलें

अगर (घंटेमान == 1) {एनालॉगराइट (HOUR_PIN, 57); } अगर (घंटेमान == 2) {एनालॉगराइट (HOUR_PIN, 75); // प्रत्येक घंटा +18} से मेल खाता है अगर (घंटेमान == 3) {एनालॉगवर्इट (HOUR_PIN, 91); }

अगर (घंटेमान == 4) {एनालॉगराइट (HOUR_PIN, 111); } अगर (घंटेमान == 5) {एनालॉगराइट (HOUR_PIN, 126); } अगर (घंटेमान == 6) {एनालॉगराइट (HOUR_PIN, १४७); } अगर (घंटेमान == 7) {एनालॉगवर्इट (HOUR_PIN, 165); } अगर (घंटेमान == 8) {एनालॉगराइट (HOUR_PIN, 183); } अगर (घंटेमान == 9) {एनालॉगवाइट (HOUR_PIN, 201); } अगर (घंटेमान == 10) {एनालॉगराइट (HOUR_PIN, २१५); } अगर (घंटेमान == 11) {एनालॉगवर्इट (HOUR_PIN, 237); } अगर (घंटेमान == 12) {एनालॉगराइट (HOUR_PIN, 255); }

AnalogWrite4 (मिनटवोल्टेज); // मिनट एनालॉगराइट मैपिंग के काम के समान ही रह सकता है // प्रोसेसर को सोने के लिए कोड बेहतर हो सकता है - हम देरी (5000) में देरी करेंगे; // हर 5 सेकंड में समय की जाँच करें। आप इसे बदल सकते हैं। }

शून्य PWM4_init () {// PWM को ट्रिंकेट GPIO # 4 (PB4, पिन 3) पर टाइमर 1 TCCR1 = _BV (CS10) का उपयोग करके सेट करें; // कोई प्रीस्केलर जीटीसीसीआर नहीं = _BV (COM1B1) | _बीवी (पीडब्लूएम1बी); // OCR1B = १२७ की तुलना पर OC1B साफ़ करें; // कर्तव्य चक्र ५०% OCR1C = २५५ के लिए आरंभिक; // आवृत्ति }

// ट्रिंकेट जीपीआईओ # 4 शून्य एनालॉगवाइट 4 (uint8_t ड्यूटी_वैल्यू) पर एनालॉगराइट को अनुमति देने के लिए फ़ंक्शन {OCR1B = ड्यूटी_वैल्यू; // ड्यूटी 0 से 255 (0 से 100%) हो सकती है}

सिफारिश की: