विषयसूची:

Hellschreiber घड़ी: 13 कदम (चित्रों के साथ)
Hellschreiber घड़ी: 13 कदम (चित्रों के साथ)

वीडियो: Hellschreiber घड़ी: 13 कदम (चित्रों के साथ)

वीडियो: Hellschreiber घड़ी: 13 कदम (चित्रों के साथ)
वीडियो: Ghaata Episode 13 [Eng Sub] - Adeel Chaudhry - Momina Iqbal - Mirza Zain Baig - 24th January 2024 2024, नवंबर
Anonim
हेलश्रेइबर घड़ी
हेलश्रेइबर घड़ी

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

चरण 1: स्पेक्ट्रम लैब सॉफ्टवेयर

स्पेक्ट्रम लैब सॉफ्टवेयर
स्पेक्ट्रम लैब सॉफ्टवेयर

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

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

चरण 2: आवृत्तियों के अनुक्रम के रूप में समय

आवृत्तियों के अनुक्रम के रूप में समय
आवृत्तियों के अनुक्रम के रूप में समय

यह स्क्रीनशॉट एक अनुक्रमिक सेकंड की जानकारी भेजने वाली घड़ी से कैप्चर दिखाता है। वास्तव में यह फर्जी है, क्योंकि अंकों के प्रत्येक सेट को उत्पन्न होने में कई सेकंड लगते हैं और इसलिए डिस्प्ले सुझाए गए तीन सेकंड की तुलना में समय के बड़े अंतराल को कवर करता है।

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

चरण 3: हर दसवें सेकंड प्रदर्शित करें

हर दसवें सेकंड प्रदर्शित करें
हर दसवें सेकंड प्रदर्शित करें

चित्र में दिखाया गया प्रदर्शन घड़ी से प्राप्त होने वाले प्रदर्शन के प्रकार से अधिक यथार्थवादी है: हर दस सेकंड में अपडेट करें।

अंकों को अच्छे, नेत्रहीन होने के लिए अलग-अलग स्थान पर रखने के लिए प्रोग्राम किया गया है। इन डिस्प्ले को बनाने वाले सभी प्रोग्राम इस निर्देश के अंतिम चरण में एक ज़िप फ़ाइल में शामिल किए गए हैं। सर्किट आरेख को एएसएम फाइलों में एएससीआईआई फॉर्म में शामिल किया गया है। माइक्रोकंट्रोलर एक माइक्रोचिप 12F510 था, एक आठ लीड माइक्रोकंट्रोलर जिसे एक निष्क्रिय घड़ी से एक छोटे क्रिस्टल का उपयोग करके 32.768 KHz पर देखा गया था। केवल एक आउटपुट लाइन का उपयोग किया गया था, जिससे दो I/O लाइनें और एक इनपुट लाइन अन्य उपयोगों के लिए मुक्त हो गई।

चरण 4: तरंग रूप

तरंग रूप
तरंग रूप
तरंग रूप
तरंग रूप

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

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

चरण 5: मनमाना बिटमैप प्रदर्शित करना

मनमाना बिटमैप प्रदर्शित करना
मनमाना बिटमैप प्रदर्शित करना

समय, या ऐसे अन्य अल्फ़ान्यूमेरिक डेटा प्रदर्शित करना ठीक है, लेकिन कभी-कभी हम कुछ यादृच्छिक सामग्री का एक सुंदर प्रदर्शन करना चाहते हैं।

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

चरण 6: "निर्देश" को डिजिटाइज़ करना

अंकीयकरण
अंकीयकरण

चित्र दिखाता है कि टेक्स्ट की लाइन का बिटमैप कैसे डिजीटल किया जाता है।

उदाहरण के लिए, सबसे बाएं कॉलम को लें, तो इसके सभी पिक्सेल काले हैं। तो वे सभी एक हैं: १११११ हम चार से समूह बनाते हैं, दो निबल्स बनाते हैं: १ ११११ इन दोनों को तब हेक्साडेसिमल के रूप में व्यक्त किया जाता है, एक कॉम्पैक्ट प्रतिनिधित्व के लिए: १ एफ चूंकि वर्ण पांच बिट ऊंचे हैं, पहला अंक या तो होगा 0 या 1, और दूसरा अंक 0-1, AF होगा। नीचे को अधिक महत्वपूर्ण अंत माना जाता है। दूसरा कॉलम खाली है, इसलिए सभी शून्य: 00 हेक्स। तीसरे कॉलम में पहले तीन कॉलम हैं जिसके बाद दो शून्य हैं: 1 1100 -> 1 सी और इसी तरह यह बहुत अंत तक जाता है। यह सब "instructlables.inc" नामक एक सम्मिलित फ़ाइल में समाहित है। इस प्रकार मुख्य प्रोग्राम में शामिल फ़ाइल को निर्दिष्ट करने वाली लाइन को बदलकर, आप प्रदर्शित होने वाले बिटमैप को बदल सकते हैं। उदाहरण के लिए, यदि आप अपना नाम दिखाते हुए एक और बिमैप बनाते हैं, तो आप इसे "yourname.inc" फ़ाइल में डाल सकते हैं और इसे मुख्य कार्यक्रम में कॉल कर सकते हैं।

चरण 7: परिणामी प्रदर्शन

परिणामी प्रदर्शन
परिणामी प्रदर्शन

यह काम करता है, जैसा कि आप स्क्रीन पर परिणामी छवि से देख सकते हैं।

स्पेक्ट्रम लैब सॉफ्टवेयर आपको डिस्प्ले के रंगों और रंगों का चयन करने की अनुमति देता है, इसलिए विवेकपूर्ण चयन द्वारा आप इस प्रोग्राम का उपयोग करके बहुत सुंदर टेक्स्ट प्रदर्शित कर सकते हैं।

चरण 8: आवृत्तियों का अनुक्रम

आवृत्तियों का अनुक्रम
आवृत्तियों का अनुक्रम
आवृत्तियों का अनुक्रम
आवृत्तियों का अनुक्रम

आइए हम इस पर करीब से नज़र डालें कि वह छवि कैसे बनी।

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

चरण 9: रोबोट को डिजिटाइज़ करना

रोबोट को डिजिटाइज़ करना
रोबोट को डिजिटाइज़ करना

रोबोट 24 बिट लंबा है, और इसलिए एक आठ बिट शब्द के अंदर फिट नहीं होता है। रोबोट को डिजिटाइज़ करने के लिए एक अलग तकनीक का इस्तेमाल किया गया था, इस बार "म्यूजिकल ग्रीटिंग कार्ड" के लिए इस्तेमाल किए गए प्रोग्राम से उधार लिया जा सकता है।

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

चरण 10: कंप्यूटर स्क्रीन पर रोबोट

कंप्यूटर स्क्रीन पर रोबोट
कंप्यूटर स्क्रीन पर रोबोट

यह एक पक्षी है … यह एक विमान है … यह एक मंगल ग्रह का उड़न तश्तरी है …

यह निर्देशयोग्य रोबोट है।

चरण 11: हार्डवेयर

हार्डवेयर
हार्डवेयर
हार्डवेयर
हार्डवेयर

आंकड़े इन छवियों को बनाने वाले माइक्रोकंट्रोलर की तस्वीर और सर्किट आरेख दिखाते हैं।

यह एक आठ पिन वाला माइक्रोकंट्रोलर, 12F510, माइक्रोचिप द्वारा निर्मित है। बाईं ओर स्क्रीन की गई केबल कंप्यूटर साउंड कार्ड से जुड़ती है। दाईं ओर का कनेक्टर प्रोग्रामर से जुड़ता है, और बिजली की आपूर्ति भी करता है। कुछ भी अनप्लग किए बिना या किसी भी कनेक्शन को बदले बिना, माइक्रोकंट्रोलर को केवल कंप्यूटर पर उपयुक्त प्रोग्राम चलाकर ICSP के माध्यम से मिटाया और फिर से प्रोग्राम किया जा सकता है।

चरण 12: सिद्धांत

सिद्धांत
सिद्धांत

यह आंकड़ा पात्रों को बनाने वाले बिंदुओं के मैट्रिक्स को प्रदर्शित करने के पीछे के सिद्धांत को दर्शाता है। बढ़ते स्वरों का क्रम एक सीढ़ी तरंग बनाता है, जो निश्चित अंतराल पर दोहराया जाता है, चरित्र बनाने वाली आवृत्तियों के बैंड में एक आरी बनाता है। मेरे पास पहले था निर्देश योग्य, https://www.instructables.com/id/Oscilloscope-clock/, एक आस्टसीलस्कप पर समय प्रदर्शित करने पर। सिद्धांत समान है, सिवाय इसके कि पहले वाला वोल्टेज स्तर का उपयोग करता था और यह आवृत्ति का उपयोग करता है। अंतर यह है कि साउंड कार्ड का उपयोग करके वोल्टेज स्तरों को प्रदर्शित करना बहुत मुश्किल है, और लगभग हर प्रोग्राम जो वोल्टेज स्तर प्रदर्शित करता है, इसे मोड में प्रदर्शित नहीं करता है। जो वर्णों को दृश्यमान बनाता है। प्रत्येक वर्ण को सात पिक्सेल ऊंचे स्तंभों के अनुक्रम के रूप में प्रदर्शित किया जाता है। यदि सबसे नीचे के पिक्सेल को जलाया जाना है, तो इसके अनुरूप आवृत्ति को थोड़े समय के लिए चालू किया जाता है। "आस्टसीलस्कप घड़ी" के मामले में, उस समय के लिए एक विशेष वोल्टेज स्तर आयोजित किया जाता है। यदि उस पिक्सेल को अंधेरा होना है, तो टोन बिल्कुल नहीं बना है, या, इसके बजाय एक रिक्त स्तर भेजा जाता है। चूंकि इन आवृत्तियों (या वोल्टेज स्तर) को क्रमिक रूप से भेजा जाता है, एक के बाद एक, वे एक लंबवत रेखा नहीं बनाते हैं। वे एक रेखा बनाते हैं जो दाईं ओर झुकती है। उन बिट्स को विपरीत दिशा में भेजना संभव है, और फिर परिणामी वर्ण बाईं ओर झुक जाएंगे। यह अप्राकृतिक लगता है, और इसलिए वर्तमान व्यवस्था को प्राथमिकता दी जाती है। एक अन्य प्रकार का हेलश्रेइबर, जो एक ही समय में सभी स्वर भेजता है, पूरी तरह से लंबवत वर्ण उत्पन्न करने में सक्षम है। चूंकि इसके लिए एक ही समय में सभी स्वर उत्पन्न करने की आवश्यकता होती है, विरूपण के बिना, एक माइक्रोकंट्रोलर का उपयोग करके इसे सरल तरीके से कार्यान्वित करना संभव नहीं है।

सिफारिश की: