तीन मिल्स द्वीप, चेरनोबिल, फुकुशिमा, और यहां तक कि राष्ट्रीय क्षेत्र में कुछ जैसे मैड्रिड में कोरल-आई रिएक्टर या कैटेलोनिया में वांडेलो-मैं रिएक्टर। वहां कई हैं परमाणु दुर्घटनाएँ यह पूरे इतिहास में हुआ है, और भयानक परिणामों के बावजूद, ऐसा लगता है कि यह विषय है विकिरण यह एक निश्चित आकर्षण बढ़ाता है। लेकिन कम ही लोग जानते हैं कि, दैनिक आधार पर, हम सभी प्राकृतिक विकिरण के संपर्क में हैं, दोनों जो कि बाहरी अंतरिक्ष से आते हैं और जो पृथ्वी के खनिजों से आते हैं ...
ठीक है, अगर आप अपने आस-पास के विकिरण को मापना चाहते हैं, तो इस नए गाइड में हम आपको कदम से कदम बताते हैं आप एक काउंटर कैसे बना सकते हैं, अर्थात्, रेडियोधर्मिता को मापने में सक्षम एक उपकरण। मूल रूप से यह एक ऐसा उपकरण है जो सेंसर से प्रभावित होने वाले कणों को माप सकता है, जैसे कि आयनकारी विकिरण, इसलिए इसे एक काउंटर कहा जाता है, क्योंकि यह प्रभावों की संख्या और इसलिए किसी वस्तु या स्थान के विकिरण स्तर की गणना कर सकता है।
मुझे पहले क्या पता होना चाहिए?
DIY प्रोजेक्ट शुरू करने से पहले, मैं कुछ टिप्पणी करना चाहूंगा विकिरण के बारे में, उन लोगों के लिए जो इसके बारे में नहीं जानते हैं। आप में से जिन्हें पहले से ही ज्ञान है, आप इस अनुभाग को छोड़ सकते हैं और निम्नलिखित को देखने के लिए सीधे जा सकते हैं ...
विकिरण क्या है?
की घटना है ऊर्जा प्रोग्रामिंग एक माध्यम के माध्यम से विद्युत चुम्बकीय तरंगों या उपपरमाण्विक कणों के रूप में। इसलिए, हमारे पास विभिन्न प्रकार के विकिरण हो सकते हैं।
विकिरण किस प्रकार के होते हैं?
वहां कई हैं विकिरण के प्रकार, जैसे कि थर्मल, इलेक्ट्रोमैग्नेटिक आदि
- आयनित न होने वाला: यह एक तरंग या कण है जो इलेक्ट्रॉनों को पदार्थ से दूर नहीं कर सकता है, अर्थात यह आयनित नहीं कर सकता है। इसके उदाहरण माइक्रोवेव, रेडियो, प्रकाश आदि की विद्युत चुंबकीय तरंगें हो सकते हैं।
- आयनीकृत: यह एक तरंग या कण है जो इलेक्ट्रॉनों को पदार्थ से बाहर निकाल सकता है, अर्थात यह अपनी उच्च ऊर्जा के कारण आयनित कर सकता है। इसलिए, यह सबसे खतरनाक है। इस समूह के भीतर हमारे पास लेज़र, एक्स-रे, अल्फा, बीटा, गामा, ब्रेकिंग रेडिएशन या ब्रेम्सस्ट्राहलंग, आदि हैं।
अगर हम देखें विद्युतचुंबकीय स्पेक्ट्रम में, सबसे लंबी तरंग दैर्ध्य वाली तरंगें, जैसे कि रेडियो या माइक्रोवेव, सबसे कम मर्मज्ञ हैं, जिनमें सबसे कम ऊर्जा (कम आवृत्ति) है। हालांकि, जैसे ही हम दाईं ओर बढ़ते हैं, हम देखते हैं कि हर बार तरंगदैर्ध्य कम होती है और कंपन की आवृत्ति अधिक होती है, इसलिए उनमें अधिक ऊर्जा होती है और वे अधिक मर्मज्ञ और हानिकारक होती हैं।
आयनकारी विकिरण के प्रकार:
अगर हम ध्यान केंद्रित करते हैं आयनीकरण विकिरण, जो गीगर काउंटर को मापने में सक्षम है, हमें फिर से फ़िल्टर करना होगा और परमाणु घटनाओं के कारण तीन बुनियादी बातों पर ध्यान केंद्रित करना होगा:
- अल्फा: उनके पास एक सकारात्मक चार्ज है और दो प्रोटॉन और दो न्यूट्रॉन से बना है, यानी वे एक हीलियम परमाणु हैं। वे सबसे कम खतरनाक और मर्मज्ञ हैं, क्योंकि उन्हें एक साधारण कागज का उपयोग करके रोका जा सकता है। स्वास्थ्य पर प्रभाव कुछ मुद्दों पर निर्भर करता है, क्योंकि वे त्वचा की बाहरी परत में भी प्रवेश नहीं कर सकते हैं, लेकिन यदि वे शरीर में प्रवेश करते हैं तो वे हानिकारक हो सकते हैं। इस विकिरण का उत्पादन करने वाले स्रोतों के शरीर में साँस लेना, अंतर्ग्रहण या इंजेक्शन, जीवित ऊतक को नुकसान पहुंचा सकता है।
- बीटा: वे नकारात्मक विद्युत आवेश, इलेक्ट्रॉनों के कण हैं। वे पिछले वाले की तुलना में अधिक मर्मज्ञ और ऊर्जावान हैं, और उन्हें रोकने के लिए हम इसे रसोई एल्यूमीनियम पन्नी के साथ कर सकते हैं। अधिक मर्मज्ञ होने के बावजूद, वे पिछले ऊतकों की तरह जीवित ऊतक और डीएनए के लिए हानिकारक नहीं हैं, क्योंकि वे जिन आयनों के कारण होते हैं वे अधिक व्यापक रूप से होते हैं। यह त्वचा जलने का कारण बन सकता है, और यदि वे शरीर में प्रवेश करते हैं तो यह हो सकता है ...
- गामा: गामा किरणें सबसे अधिक मर्मज्ञ शक्ति और ऊर्जा के साथ हैं, इसलिए सभी के लिए सबसे खतरनाक है। यह फोटॉन के बारे में है, शुद्ध ऊर्जा जिसे आसानी से रोका नहीं जा सकता है, केवल लीड शीट्स, कंक्रीट आदि के साथ। वे आसानी से हमारे शरीर से गुजरते हैं और गंभीर ऊतक क्षति, डीएनए म्यूटेशन इत्यादि का कारण बनते हैं, जो कि बहुत अधिक होता है, जैसे कि कैंसर और यहां तक कि अचानक मौत अगर खुराक अधिक है।
इसलिए, यह एक खेल नहीं है, और hwlibre से हम आपको प्रोत्साहित करते हैं सभी सावधानी बरतें और अच्छी तरह से जानते हैं कि आप क्या कर रहे हैं। हम संभावित समस्याओं का ध्यान नहीं रखते हैं ...
गीजर-मुलर ट्यूब:
वे हर गीगर काउंटर के जीवन-प्रवाह हैं, क्योंकि यह डिवाइस ओ है सेंसर जो विकिरण प्राप्त करने और एक विद्युत आवेग में उस झटके की संख्या को बदलने के लिए जिम्मेदार है, जो बाकी सर्किटरी द्वारा व्याख्या की जा सकती है। इसे Geiger-Müller tube या बस Geiger ट्यूब के रूप में जाना जाता है, और आप इसे विभिन्न ऑनलाइन स्टोर, जैसे Amazon, Aliexpress, आदि में खरीद सकते हैं। एक अन्य विकल्प यह है कि इसे एक गीगर काउंटर से हटा दें जो हमारे पास पुराना है या उपयोग में है।
उनमें से कई हैं, विभिन्न मॉडल (SBT-9, LND-712, J408y,…) और विभिन्न निर्माता (GSTube, LND, North Optic,…)। सबसे लोकप्रिय हैं अमेरिकी और रूसी, हालांकि चीनी भी हैं। सोवियत मूल के कुछ लोगों के पास सस्ते दाम हैं, जो सबसे महंगा एलएनडी है। जिस चीज के बारे में हमें स्पष्ट होना चाहिए, वह है वोल्टेज मान जिसके बीच में यह चलता है, क्योंकि यह जो एनालॉग सिग्नल निकलता है, वह कम या ज्यादा गहन होता है जो कैप्चर किए गए विकिरण के आधार पर होता है।
देश | विक्रेता | Modelo | कण इसे कैप्चर करता है | वोल्टेज | सामग्री | कीमत |
---|---|---|---|---|---|---|
रूस | जी.एस.ट्यूब | एसबीएम -20 | बीटा / गामा | 400V | अल्युमीनियम | Bajo |
रूस | जी.एस.ट्यूब | एसबीएम -21 | बीटा / गामा | 650V | अल्युमीनियम | Bajo |
रूस | जी.एस.ट्यूब | हां -1 जी | गामा | 440V | अल्युमीनियम | Bajo |
रूस | जी.एस.ट्यूब | एसबीटी -9 | बीटा / गामा | 389V | अल्युमीनियम | Bajo |
रूस | जी.एस.ट्यूब | हां -3 बीजी | बीटा / गामा | 400V | अल्युमीनियम | Bajo |
अमेरिका | लण्ड | लण्ड-712 | अल्फा / बीटा / गामा | 500V | अभ्रक | Medio |
अमेरिका | लण्ड | लण्ड-7124 | अल्फा / बीटा / गामा | 500V | अभ्रक | उच्च |
अमेरिका | लण्ड | लण्ड-7224 | अल्फा / बीटा / गामा | 500V | अभ्रक | उच्च |
चीन | उत्तर ऑप्टिक | J408y | गामा | 420V | Cristal | Bajo |
चीन | उत्तर ऑप्टिक | J305B | बीटा / गामा | 350V | Cristal | Bajo |
चीन | उत्तर ऑप्टिक | J306B | बीटा / गामा | 420V | Cristal | Bajo |
इसीलिए हमें अपने सर्किट को जांचना होगा इन संकेतों को उन इकाइयों में परिवर्तित करने के लिए जिनमें विकिरण को आमतौर पर मापा जाता है, जैसे कि साइवर्ट (एसवी), रोएंटगेन, या रेम, दूसरों के बीच ... जैसा कि हम एक तापमान सेंसर के साथ करते हैं, हमें उन आउटपुट वोल्टेज को डिग्री सेल्युकस में बदलना चाहिए या उस पैमाने में जिसे हम माप रहे हैं।
विकिरण मापने के लिए SI इकाई:
इंटरनेशनल सिस्टम (SI) की इकाई इसकी इकाई है साइवर (Sv), याद रखें कि ऐसे टेबल हैं जो खतरे या विकिरण के प्रभावों को इंगित करते हैं जिन्हें हम स्वास्थ्य के लिए कैप्चर कर रहे हैं:
एमएसवी | स्वास्थ्य प्रभाव |
---|---|
50-100 | रक्त रसायन में परिवर्तन |
500 | कुछ ही घंटों में मतली |
700 | उल्टी |
750 | 2-3 सप्ताह में बालों का झड़ना |
900 | दस्त |
1000 | रक्तस्राव |
4000 | दो महीने में संभावित मौत |
आप पहले से ही जानते हैं कि यह न केवल खुराक पर निर्भर करता है, बल्कि इस पर भी निर्भर करता है जोखिम। यही है, हम एक बार 100 mSv की खुराक प्राप्त कर सकते हैं और कुछ भी नहीं होता है, लेकिन अगर हम महीनों के लिए 50 mSv प्राप्त कर रहे हैं, तो दीर्घकालिक प्रभाव बहुत नकारात्मक हो सकते हैं ...
परीक्षणों के लिए विकिरण स्रोत:
प्रदर्शन करना है विकिरण परीक्षण, आपको पता होना चाहिए कि कई विकल्प हैं। इस चित्र (बाएं) में आप जो देख रहे हैं, जैसे यूरेनियम क्रिस्टल हैं, जिसके साथ Geiger काउंटरों का प्रयोगशालाओं में परीक्षण किया जाता है। लेकिन अन्य स्रोत भी हैं जिनके करीब हम विकिरण या रेडियोधर्मी सामग्री प्राप्त कर सकते हैं, जैसे कि अग्नि डिटेक्टरों में धूम्रपान सेंसर।
उन डिटेक्टरों के अंदर हैं आयनीकरण विकिरण का स्रोत एमरिकियम और अल्फा विकिरण का उत्पादन करते हैं। आपको यह भी पता होना चाहिए कि पोटेशियम से भरपूर कई खाद्य पदार्थों में पोटेशियम -40 नामक एक आइसोटोप होता है जो विकिरण का उत्सर्जन करता है, हालांकि यह हमारे शरीर के लिए बिल्कुल भी समस्या नहीं है, यह बहुत कम खुराक है, ठीक वैसे ही जैसे कि हम प्रकृति से प्राप्त विकिरण (निश्चित रूप से) ग्रेनाइट चट्टानें) या ब्रह्मांड।
हम स्वयं रेडियोधर्मी हैं, हम कार्बन से बने हैं, और कार्बन -14 है। परंतु आश्चर्य होगा यह जानते हुए कि हम इसे जाने बिना हर दिन कई रेडियोधर्मी चीजों को संभालते हैं: कुछ बटन, सिरेमिक, संगमरमर, कुछ शिविर लैंप, सिगरेट, लेपित कागज, कुछ विक्स, आदि। वह सब जो मैं आपके गीगर काउंटर का परीक्षण करने और देखने के लिए कर सकता था कि यह काम करता है या नहीं ...
आवश्यक सामग्री:
यह सब ज्ञात हो जाने के बाद, हम सीधे जाते हैं उन सभी घटकों को सूचीबद्ध करें जिनकी हमें आवश्यकता है हमारे घर का बना Geiger काउंटर बनाने के लिए:
- डीसी-डीसी कनवर्टर / नियामक मॉड्यूल उच्च वोल्टेज (जैसे: SODIAL) का है। यह हमें उच्च वोल्टेज को समायोजित करने में मदद करेगा जो गीजर-मुलर संभालता है और उस वोल्टेज को एक छोटे वोल्टेज में अरुदिनो बोर्ड और अन्य घटकों के तुलनीय रूप में परिवर्तित करता है। याद रखें कि इसे आपके द्वारा चुनी गई ट्यूब के इनपुट वोल्टेज का सामना करना पड़ता है।
- चार्जिंग मॉड्यूल। उदाहरण के लिए यह है.
- बस्ट मॉड्यूल परिवर्तक डीसी-डीसी 3-5 वी.
- अरुडिनो नैनो, हालांकि कोई अन्य भी उपयोगी है, लेकिन आकार में बहुत अधिक वृद्धि नहीं करने के लिए, नैनो बेहतर है।
- OLED प्रदर्शन 128 × 64 या 128 × 32 जिसे हम माप परिणाम दिखाने के लिए स्क्रीन के रूप में उपयोग करेंगे।
- 2n3904 ट्रांजिस्टर हमारे ट्यूब के लिए।
- प्रतिरोधों 10M ओम और दूसरा 10K।
- कंडेनसर 470pf का।
- स्विच बंद और पर।
- बजर या छोटा वक्ता।
- एएए बैटरी.
यह घटकों के संदर्भ में है, हालांकि आपको इसकी आवश्यकता भी होगी उपकरण जैसे सोल्डरिंग विडंबना, कुछ जोड़ों के लिए वायरिंग, बोर्ड, बैटरी या बैटरी को प्रोग्राम करने के लिए Arduino IDE, और यदि आप अपने मीटर की सुरक्षा करना चाहते हैं तो एक कस्टम बॉक्स भी। यदि आपके पास 3 डी प्रिंटर है, तो आप कस्टम प्लास्टिक बॉक्स का निर्माण कर सकते हैं।
Geiger काउंटर निर्माण कदम से कदम:
अगली बात, एक बार आपके पास सभी घटक हैं, इस आरेख के अनुसार पहेली के सभी घटकों को इकट्ठा करना है जो हम आपके सामने प्रस्तुत करते हैं। बढ़ते यह अपेक्षाकृत सरल है और आगे स्पष्टीकरण की आवश्यकता नहीं है। यह सिर्फ इस तरह से सभी तत्वों को जोड़ रहा है। आप इसे एक में कर सकते हैं ब्रेड बोर्ड परीक्षण करने से पहले कि सब कुछ सही ढंग से काम करता है और फिर इसे स्थायी करने के लिए सभी घटकों को मिलाप के लिए आगे बढ़ें।
कदम:
L अनुसरण करने के लिए कदम हैं:
- एक मल्टीमीटर के साथ आप कर सकते हैं कैलिब्रेट वोल्टेज (छवि १)। उदाहरण के लिए, यदि आपने 1V Geiger-Müller ट्यूब को चुना है, तो आपको DC-DC मॉड्यूल के पोटेंशियोमीटर को समायोजित करना होगा ताकि यह उस वोल्टेज पर काम करे।
- फिर अपने आप को सीमित करें मिलाप या सभी घटकों में शामिल हों जैसा कि वे चित्र 2 में पिछले चित्र में दिखाई देते हैं।
- आप एक का उपयोग कर सकते हैं रक्षा के लिए बॉक्स सभी घटक या नहीं।
- USB केबल का उपयोग करके और अपने पीसी से Arduino बोर्ड को कनेक्ट करें अरुडिनो आईडीई निम्नलिखित कार्यक्रम लिखें (आप द्वारा इसे यहां पर डाउनलोड किया जा सकता है) के लिए इसे शेड्यूल करें और यह कि यह उन वोल्टेज को परिवर्तित कर सकता है जिनके साथ हम उस इकाई में माप में काम करते हैं जिसे आपने चुना है। आप चाहें तो अन्य इकाइयों का उपयोग कर सकते हैं या स्केच के स्रोत कोड को संशोधित करके समायोजन कर सकते हैं ...
/* * * SCL - A5 * SDA - A4 * * * Voltmeter - A3 * * PWM - D9 * Input - D2 * * buzzer - D7 * */ #include <Bounce2.h> #include <SPI.h> #include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> #define OLED_RESET 4 Adafruit_SSD1306 display(OLED_RESET); #define NUMFLAKES 10 #define XPOS 0 #define YPOS 1 #define DELTAY 2 ////////////////////////////////////////////////////////////////////////////// unsigned long previousMillis = 0; unsigned long previousMillis1 = 0; const long interval = 40000; const long interval1 = 500; static const unsigned char PROGMEM lcd_bmp[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x1F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xC0, 0x3F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE0, 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xE0, 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xF0, 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xE0, 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xFF, 0xC0, 0x3F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xF8, 0x00, 0x03, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x20, 0x40, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0x80, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x09, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x0F, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1F, 0x80, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x3F, 0xC0, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x7F, 0xC0, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xFF, 0xE0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xFF, 0xF0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0xFF, 0xF8, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xF9, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; static const unsigned char PROGMEM logo[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x80, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x80, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x80, 0x1F, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x80, 0x1F, 0xC0, 0x07, 0x9E, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x3F, 0x80, 0x00, 0x00, 0x7F, 0xC0, 0x3F, 0xE0, 0x07, 0x9E, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x3F, 0xC0, 0x00, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x07, 0x9E, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x3F, 0xE0, 0x00, 0x00, 0xFF, 0xC0, 0x3F, 0xF0, 0x07, 0x9E, 0x00, 0x00, 0x00, 0x03, 0xFF, 0x00, 0x3F, 0xF0, 0x00, 0x00, 0xFF, 0xE0, 0x7F, 0xF8, 0x07, 0x9E, 0x3E, 0x73, 0x9C, 0x00, 0x78, 0x3E, 0x3E, 0xF0, 0xF0, 0x01, 0xFF, 0xE0, 0x7F, 0xF8, 0x07, 0x9E, 0x7F, 0x33, 0x98, 0x00, 0x78, 0x7F, 0x3E, 0xF1, 0xF8, 0x01, 0xFF, 0xFF, 0xFF, 0xF8, 0x07, 0x9E, 0x7F, 0x33, 0xB8, 0x00, 0x78, 0x7F, 0x3E, 0xF3, 0xFC, 0x01, 0xFF, 0xF0, 0x7F, 0xF8, 0x07, 0xFE, 0xE7, 0x33, 0xB8, 0x00, 0x78, 0x73, 0xBE, 0xF3, 0x9C, 0x01, 0xFF, 0xE0, 0x7F, 0xF8, 0x07, 0xFE, 0xE7, 0x3F, 0xF9, 0xF0, 0x78, 0x73, 0xBE, 0xF3, 0x9C, 0x01, 0xFF, 0xC0, 0x3F, 0xF8, 0x07, 0xFE, 0xE7, 0x3F, 0xF9, 0xF0, 0x78, 0x73, 0xBE, 0xF3, 0x9C, 0x01, 0xF8, 0x00, 0x03, 0xF8, 0x07, 0xFE, 0xE7, 0x3F, 0xF8, 0x00, 0x78, 0x73, 0xBE, 0xF3, 0x9C, 0x01, 0x00, 0x20, 0x40, 0x38, 0x07, 0x9E, 0xE7, 0x3F, 0xF0, 0x00, 0x78, 0x73, 0xBE, 0xF3, 0x9C, 0x01, 0x00, 0x10, 0x80, 0x08, 0x07, 0x9E, 0xE7, 0x1F, 0xF0, 0x00, 0x78, 0x73, 0xBE, 0xF3, 0x9C, 0x01, 0x00, 0x09, 0x00, 0x08, 0x07, 0x9E, 0xE7, 0x1E, 0xF0, 0x00, 0x78, 0x73, 0xBF, 0xF3, 0x9C, 0x01, 0x00, 0x0F, 0x00, 0x08, 0x07, 0x9E, 0xE7, 0x1E, 0xF0, 0x00, 0x78, 0x73, 0xBF, 0xF3, 0x9C, 0x00, 0x80, 0x1F, 0x80, 0x18, 0x07, 0x9E, 0x7F, 0x1E, 0xF0, 0x00, 0x78, 0x7F, 0x3F, 0xE3, 0xFC, 0x00, 0x80, 0x3F, 0xC0, 0x10, 0x07, 0x9E, 0x7E, 0x1E, 0xF0, 0x00, 0x78, 0x3F, 0x3F, 0xC1, 0xF8, 0x00, 0xC0, 0x7F, 0xC0, 0x30, 0x07, 0x9E, 0x1C, 0x1C, 0xE0, 0x00, 0x78, 0x1C, 0x3F, 0x00, 0xF0, 0x00, 0x40, 0xFF, 0xE0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xFF, 0xF0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0xFF, 0xF8, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0xFF, 0xF9, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xFF, 0xFE, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xFF, 0xFC, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}; static const unsigned char PROGMEM fl[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; static const unsigned char PROGMEM bt1[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; #if (SSD1306_LCDHEIGHT != 32) #error("Height incorrect, please fix Adafruit_SSD1306.h!"); #endif const int buttonPin = 2; const int ledPin = 13; int buttonState = 0; int bt = 0; int pbt = 0; int s1 = 0; unsigned long j; unsigned long CR = 0; unsigned long cs; int sec; ///////////////////////////////// float input_voltage = 0.0; float temp=0.0; /////////////////////////////////// Bounce bouncer = Bounce(); void setup() { Serial.begin(9600); display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // initialize with the I2C addr 0x3C (for the 128x32) display.display(); display.clearDisplay(); display.drawBitmap(0, 0, logo, 128, 32, WHITE); display.display(); delay(2000); display.clearDisplay(); TCCR1A = TCCR1A & 0xe0 | 2; TCCR1B = TCCR1B & 0xe0 | 0x09; analogWrite(9,22 ); // на выводе 9 ШИМ=10% pinMode(ledPin, OUTPUT); // pinMode (7, OUTPUT); // buzzer pinMode(2 ,INPUT); // кнопка на пине 2 digitalWrite(2 ,HIGH); // подключаем встроенный подтягивающий резистор bouncer .attach(2); // устанавливаем кнопку bouncer .interval(5); // устанавливаем параметр stable interval = 5 мс } void loop() { /////////////////////////////////////////////////////////////////////////////////////////////////////////////// unsigned long currentMillis = millis(); unsigned long currentMillis1 = millis(); if (bouncer.update()) { //если произошло событие if (bouncer.read()==0) { bt++; } } if (currentMillis - previousMillis >= interval) { previousMillis = currentMillis; CR = bt; bt = 0; } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (bt != pbt) { pbt = bt; s1 = 1; } ////////////////////////////////////////////VOLTMETER PIN A3//////////////////////////////////////////////////////////////////// int analog_value = analogRead(A3); input_voltage = (analog_value * 5.0) / 1024.0; if (input_voltage < 0.1) { input_voltage=0.0; } ///////////////////////////////////////////////TEXT ON DISPLAY////////////////////////////////////////////////////////////////// display.clearDisplay(); display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(10,0); display.clearDisplay(); display.println(CR); display.setCursor(10,18); display.println(bt); display.setCursor(40,18); display.println(); display.setTextSize(1); display.setCursor(40,0); display.println("mR/hr"); /////////////////////////////////////////////////BATTERY INDICATION//////////////////////////////////////////// display.drawBitmap(0, 0, fl, 128, 32, WHITE); if (input_voltage > 3.3) { display.drawBitmap(0, 0, bt1, 128, 32, WHITE); if (input_voltage > 3.4) { display.drawBitmap(0, -5, bt1, 128, 32, WHITE); if (input_voltage > 3.5) { display.drawBitmap(0, -10, bt1, 128, 32, WHITE); if (input_voltage > 3.6) { display.drawBitmap(0, -15, bt1, 128, 32, WHITE); if (input_voltage > 3.8) { display.drawBitmap(0, -20, bt1, 128, 32, WHITE); } } } } } ////////////////////////////////////////////////////RADIATION ICON AND BUZZER///////////////////////////////////////////////////////////// if (s1 == 1){ display.drawBitmap(-10, 0, lcd_bmp, 128, 32, WHITE); digitalWrite (7, HIGH); // buzzer ON } else { digitalWrite (7, LOW); // buzzer OFF } ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (currentMillis1 - previousMillis1 >= interval1) { previousMillis1 = currentMillis1; if (s1 == 1){ s1=0; } } display.display(); } /////////////////////////////////////////////////////////////////////////////////////////////////////////////////
आप कैसे चेक कर सकते हैं बहुत आसान (हालांकि यह डिस्प्ले के लिए उन सेटिंग्स के कारण लंबा लगता है), आपको बस उस वोल्टेज से रूपांतरण करना होगा जो Arduino बोर्ड डेटा की एक श्रृंखला को प्राप्त करता है जिसे स्क्रीन या डिस्प्ले पर कैप्चर किया जा सकता है।
अगर सब कुछ ठीक हो गया, तो आपको देखना चाहिए स्क्रीन और शोर पर जानकारी कुछ रेडियोधर्मी स्रोत के साथ अपने गीगर काउंटर का सामना करते समय बजर पर।
सूत्रों का कहना है:
निर्देश DIY Arduino Geiger काउंटर
पाक कला-भाड़े - Geiger काउंटर: Arduino और रास्पबेरी पाई के लिए विकिरण सेंसर बोर्ड
हैलो, मैं इसके साथ करना चाहूंगा arduino uno और मैं सोच रहा था कि इसे माउंट करने के लिए योजनाबद्ध क्या होगा और अगर कुछ और बदल जाएगा
हैलो पाओला,
कनेक्शन वन में समान है। और यदि आप चाहें, तो आप अन्य पिनों पर कुछ कनेक्शन भी बदल सकते हैं, केवल एक चीज जिसे आपको स्केच के कोड को बदलना चाहिए, जिसे आप डालते हैं। लेकिन यह वही है। जीएनडी और वीसीसी कनेक्शन का सम्मान करें, और बाकी, जैसा कि मैंने कहा, आप इसे एक अलग संख्या में या एक ही संख्या में अपने बोर्ड पर रख सकते हैं ... (हां, डिजिटल और एनालॉग I / O का सम्मान करें क्योंकि वे चालू हैं नैनो बोर्ड)
नमस्ते!