अल्ट्रासोनिक वायरलेस वाटर लेवल इंडिकेटर - सोलर पावर्ड

समस्याओं को खत्म करने के लिए हमारे साधन का प्रयास करें





एक अल्ट्रासोनिक जल स्तर नियंत्रक एक उपकरण है जो एक शारीरिक संपर्क के बिना एक टैंक में पानी के स्तर का पता लगा सकता है और एक वायरलेस जीएसएम मोड में दूर के एलईडी संकेतक को डेटा भेज सकता है।

इस पोस्ट में हम Arduino का उपयोग करते हुए एक अल्ट्रासोनिक आधारित सौर ऊर्जा संचालित वायरलेस वाटर लेवल इंडिकेटर का निर्माण करने जा रहे हैं जिसमें Arduinos संचारण और 2.4 GHz वायरलेस आवृत्ति पर प्राप्त होगा। हम पारंपरिक इलेक्ट्रोड विधि के बजाय अल्ट्रासोनिक्स का उपयोग करके टैंक में पानी के स्तर का पता लगाएंगे।



अवलोकन

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

हम 2018 में रह रहे हैं (इस लेख के लेखन के समय) या बाद में, हम दुनिया में कहीं भी तुरंत संपर्क कर सकते हैं, हमने अंतरिक्ष के लिए एक इलेक्ट्रिक रेस कार लॉन्च की, हमने उपग्रहों और रोवर्स को मंगल तक लॉन्च किया, हम मानव भी सक्षम हैं चंद्रमा पर मौजूद प्राणी, अभी भी यह पता लगाने के लिए कोई उचित व्यावसायिक उत्पाद नहीं है कि हमारे पानी के टैंकों में कितना पानी बचा है?



हम पा सकते हैं कि स्कूल में विज्ञान मेले के लिए 5 वीं कक्षा के छात्रों द्वारा जल स्तर संकेतक बनाए जाते हैं। इस तरह की सरल परियोजनाएं हमारी रोजमर्रा की जिंदगी में कैसे नहीं आईं? जवाब है पानी की टंकी स्तर संकेतक सरल परियोजनाएं नहीं हैं जो 5 वें ग्रेडर हमारे घर के लिए एक बना सकते हैं। वहां कई हैं व्यावहारिक सोच इससे पहले कि हम एक डिजाइन।

• कोई भी इलेक्ट्रोड के लिए पानी की टंकी के शरीर पर एक छेद नहीं करना चाहता है जो बाद में पानी रिसाव कर सकता है।
• कोई भी पानी की टंकी के पास 230/120 VAC तार नहीं चलाना चाहता है।
• कोई भी हर महीने बैटरी बदलना नहीं चाहता है।
• कोई भी जल स्तर के संकेत के लिए एक कमरे पर लटकने वाले अतिरिक्त लंबे तारों को नहीं चलाना चाहता है क्योंकि यह घर का निर्माण करते समय पूर्व नियोजित नहीं है।
• कोई भी पानी का उपयोग नहीं करना चाहता है जो इलेक्ट्रोड के धातु जंग के साथ मिलाया जाता है।
• कोई भी टैंक (अंदर) की सफाई करते समय जल स्तर संकेतक सेटअप को हटाना नहीं चाहता है।

ऊपर वर्णित कारणों में से कुछ मूर्खतापूर्ण लग सकते हैं लेकिन, आप इन विपक्ष के साथ व्यावसायिक रूप से उपलब्ध उत्पादों के साथ कम संतोषजनक पाएंगे। यही कारण है कि इन उत्पादों का प्रवेश औसत घरों * के बीच बहुत कम है।
* भारतीय बाजार पर।

इन प्रमुख बिंदुओं पर विचार करने के बाद, हमने एक व्यावहारिक जल स्तर संकेतक डिज़ाइन किया है जो उल्लिखित विपक्ष को हटा देना चाहिए।

हमारे डिजाइन:

• यह जल स्तर को मापने के लिए अल्ट्रासोनिक सेंसर का उपयोग करता है ताकि कोई संक्षारण समस्या न हो।
• 2.4 गीगाहर्ट्ज़ पर जल स्तर वास्तविक समय का वायरलेस संकेत।
• अच्छी वायरलेस सिग्नल की शक्ति, 2 मंजिला ऊंची इमारतों के लिए पर्याप्त है।
• सौर संचालित कोई और अधिक एसी साधन या बैटरी की जगह।
• टैंक भरते समय टैंक फुल / ओवरफ्लो अलार्म।

सर्किट विवरण की जांच करें:

ट्रांसमीटर:

वायरलेस ट्रांसमीटर सर्किट जिसे टैंक पर रखा गया है, हर 5 सेकंड 24/7 पर जल स्तर का डेटा भेजेगा। ट्रांसमीटर में Arduino नैनो, अल्ट्रासोनिक सेंसर HC-SR04, nRF24L01 मॉड्यूल शामिल हैं जो 2.4 गीगाहर्ट्ज पर ट्रांसमीटर और रिसीवर को वायरलेस रूप से कनेक्ट करेगा।

300mA के वर्तमान उत्पादन के साथ 9 V से 12 V का एक सौर पैनल ट्रांसमीटर सर्किट को शक्ति देगा। एक बैटरी प्रबंधन सर्किट बोर्ड ली-आयन बैटरी को चार्ज करेगा, ताकि हम सूरज की रोशनी न होने पर भी जल स्तर की निगरानी कर सकें।

आइए जानें कि पानी के टैंक में अल्ट्रासोनिक सेंसर कैसे लगाएं:

कृपया ध्यान दें कि आपको सर्किट बनाने के लिए अपनी रचनात्मकता का उपयोग करना होगा और बारिश और सीधी धूप से बचाना होगा।

अल्ट्रासोनिक सेंसर रखने के लिए टैंक के ढक्कन के ऊपर एक छोटा सा छेद काटें और इसे किसी प्रकार के चिपकने वाले के साथ सील कर दें।

अल्ट्रासोनिक सेंसर को पानी की टंकी में रखना

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

ट्रांसमीटर के योजनाबद्ध आरेख:

जल स्तर नियंत्रण के लिए अल्ट्रासोनिक ट्रांसमीटर कनेक्शन

नोट: nRF24L01 3.3V का उपयोग करता है क्योंकि Vcc Arduino के 5V आउटपुट से कनेक्ट नहीं होता है।

ट्रांसमीटर के लिए बिजली की आपूर्ति:

अल्ट्रासोनिक जल स्तर नियंत्रक बिजली की आपूर्ति डिजाइन

सुनिश्चित करें कि आपके सौर पैनल की आउटपुट पावर यानी आउटपुट (वोल्ट x करंट) 3 वाट से अधिक है। सौर पेनल 9 वी से 12 वी होना चाहिए।

12V और 300mA पैनल की सिफारिश की जाती है जिसे आप बाजार पर आसानी से पा सकते हैं। बैटरी लगभग 3.7V 1000 एमएएच होनी चाहिए।

5V 18650 ली-आयन चार्जिंग मॉड्यूल:

निम्न छवि एक मानक दिखाती है 18650 चार्जर सर्किट

इनपुट LM7805 IC से USB (उपयोग नहीं किया गया) या बाहरी 5V हो सकता है। सुनिश्चित करें कि आपको सही मॉड्यूल मिलता है जैसा कि ऊपर दिखाया गया है, यह होना चाहिए TP4056 सुरक्षा, जिसमें कम बैटरी कट-ऑफ और शॉर्ट सर्किट सुरक्षा है।

इस के आउटपुट को XL6009 के इनपुट पर फीड किया जाना चाहिए जो उच्च वोल्टेज को बढ़ावा देगा, XL6009 के एक छोटे स्क्रू ड्राइवर आउटपुट का उपयोग करके Arduino के लिए 9V को समायोजित किया जाना चाहिए।

XL6009 डीसी से डीसी को बढ़ावा देने वाले कनवर्टर का चित्रण:

यह ट्रांसमीटर के हार्डवेयर का निष्कर्ष निकालता है।

ट्रांसमीटर के लिए कोड:

// ----------- Program Developed by R.GIRISH / Homemade-circuits .com ----------- //
#include
#include
RF24 radio(9, 10)
const byte address[6] = '00001'
const int trigger = 3
const int echo = 2
const char text_0[] = 'STOP'
const char text_1[] = 'FULL'
const char text_2[] = '3/4'
const char text_3[] = 'HALF'
const char text_4[] = 'LOW'
float full = 0
float three_fourth = 0
float half = 0
float quarter = 0
long Time
float distanceCM = 0
float distanceM = 0
float resultCM = 0
float resultM = 0
float actual_distance = 0
float compensation_distance = 0
// ------- CHANGE THIS -------//
float water_hold_capacity = 1.0 // Enter in Meters.
float full_height = 1.3 // Enter in Meters.
// ---------- -------------- //
void setup()
{
Serial.begin(9600)
pinMode(trigger, OUTPUT)
pinMode(echo, INPUT)
digitalWrite(trigger, LOW)
radio.begin()
radio.openWritingPipe(address)
radio.setChannel(100)
radio.setDataRate(RF24_250KBPS)
radio.setPALevel(RF24_PA_MAX)
radio.stopListening()
full = water_hold_capacity
three_fourth = water_hold_capacity * 0.75
half = water_hold_capacity * 0.50
quarter = water_hold_capacity * 0.25
}
void loop()
{
delay(5000)
digitalWrite(trigger, HIGH)
delayMicroseconds(10)
digitalWrite(trigger, LOW)
Time = pulseIn(echo, HIGH)
distanceCM = Time * 0.034
resultCM = distanceCM / 2
resultM = resultCM / 100
Serial.print('Normal Distance: ')
Serial.print(resultM)
Serial.println(' M')
compensation_distance = full_height - water_hold_capacity
actual_distance = resultM - compensation_distance
actual_distance = water_hold_capacity - actual_distance
if (actual_distance <0)
{
Serial.print('Water Level:')
Serial.println(' 0.00 M (UP)')
}
else
{
Serial.print('Water Level: ')
Serial.print(actual_distance)
Serial.println(' M (UP)')
}
Serial.println('============================')
if (actual_distance >= full)
{
radio.write(&text_0, sizeof(text_0))
}
if (actual_distance > three_fourth && actual_distance <= full)
{
radio.write(&text_1, sizeof(text_1))
}
if (actual_distance > half && actual_distance <= three_fourth)
{
radio.write(&text_2, sizeof(text_2))
}
if (actual_distance > quarter && actual_distance <= half)
{
radio.write(&text_3, sizeof(text_3))
}
if (actual_distance <= quarter)
{
radio.write(&text_4, sizeof(text_4))
}
}
// ----------- Program Developed by R.GIRISH / Homemade-circuits .com ----------- //

आपके द्वारा मापा गया कोड में निम्नलिखित मान बदलें:

// ------- CHANGE THIS -------//
float water_hold_capacity = 1.0 // Enter in Meters.
float full_height = 1.3 // Enter in Meters.
// ---------- -------------- //

यह ट्रांसमीटर को समाप्त करता है।

प्राप्तकर्ता:

अल्ट्रासोनिक जल स्तर रिसीवर नियंत्रक योजनाबद्ध

रिसीवर 5 स्तरों को दिखा सकता है। अलार्म, जब टैंक टैंक को भरने के दौरान पूर्ण अधिकतम जल धारण क्षमता तक पहुंच गया। 100 से 75% - सभी चार एलईडी चमकेंगे, 75 से 50% तीन एलईडी चमकेंगे, 50 से 25% दो एलईडी चमकेंगे, 25% और कम एक एलईडी चमकेंगे।
रिसीवर को 9V बैटरी या उससे संचालित किया जा सकता है स्मार्टफोन चार्जर यूएसबी को मिनी-बी केबल।

रिसीवर के लिए कोड:

// ----------- Program Developed by R.GIRISH / Homemade-circuits .com ----------- //
#include
#include
RF24 radio(9, 10)
int i = 0
const byte address[6] = '00001'
const int buzzer = 6
const int LED_full = 5
const int LED_three_fourth = 4
const int LED_half = 3
const int LED_quarter = 2
char text[32] = ''
void setup()
{
pinMode(buzzer, OUTPUT)
pinMode(LED_full, OUTPUT)
pinMode(LED_three_fourth, OUTPUT)
pinMode(LED_half, OUTPUT)
pinMode(LED_quarter, OUTPUT)
digitalWrite(buzzer, HIGH)
delay(300)
digitalWrite(buzzer, LOW)
digitalWrite(LED_full, HIGH)
delay(300)
digitalWrite(LED_three_fourth, HIGH)
delay(300)
digitalWrite(LED_half, HIGH)
delay(300)
digitalWrite(LED_quarter, HIGH)
delay(300)
digitalWrite(LED_full, LOW)
delay(300)
digitalWrite(LED_three_fourth, LOW)
delay(300)
digitalWrite(LED_half, LOW)
delay(300)
digitalWrite(LED_quarter, LOW)
Serial.begin(9600)
radio.begin()
radio.openReadingPipe(0, address)
radio.setChannel(100)
radio.setDataRate(RF24_250KBPS)
radio.setPALevel(RF24_PA_MAX)
radio.startListening()
}
void loop()
{
if (radio.available())
{
radio.read(&text, sizeof(text))
Serial.println(text)
if (text[0] == 'S' && text[1] == 'T' && text[2] == 'O' && text[3] == 'P')
{
digitalWrite(LED_full, HIGH)
digitalWrite(LED_three_fourth, HIGH)
digitalWrite(LED_half, HIGH)
digitalWrite(LED_quarter, HIGH)
for (i = 0 i <50 i++)
{
digitalWrite(buzzer, HIGH)
delay(50)
digitalWrite(buzzer, LOW)
delay(50)
}
}
if (text[0] == 'F' && text[1] == 'U' && text[2] == 'L' && text[3] == 'L')
{
digitalWrite(LED_full, HIGH)
digitalWrite(LED_three_fourth, HIGH)
digitalWrite(LED_half, HIGH)
digitalWrite(LED_quarter, HIGH)
}
if (text[0] == '3' && text[1] == '/' && text[2] == '4')
{
digitalWrite(LED_full, LOW)
digitalWrite(LED_three_fourth, HIGH)
digitalWrite(LED_half, HIGH)
digitalWrite(LED_quarter, HIGH)
}
if (text[0] == 'H' && text [1] == 'A' && text[2] == 'L' && text[3] == 'F')
{
digitalWrite(LED_full, LOW)
digitalWrite(LED_three_fourth, LOW)
digitalWrite(LED_half, HIGH)
digitalWrite(LED_quarter, HIGH)
}
if (text[0] == 'L' && text[1] == 'O' && text[2] == 'W')
{
digitalWrite(LED_full, LOW)
digitalWrite(LED_three_fourth, LOW)
digitalWrite(LED_half, LOW)
digitalWrite(LED_quarter, HIGH)
}
}
}
// ----------- Program Developed by R.GIRISH / Homemade-circuits .com ----------- //

उस रिसीवर को समाप्त करता है।

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

लेखक के प्रोटोटाइप:

ट्रांसमीटर:

अल्ट्रासोनिक ट्रांसमीटर प्रोटोटाइप

रिसीवर:

अल्ट्रासोनिक रिसीवर प्रोटोटाइप

यदि आपके पास इस सौर ऊर्जा संचालित अल्ट्रासोनिक वायरलेस वाटर लेवल कंट्रोलर सर्किट के बारे में कोई प्रश्न हैं, तो कृपया टिप्पणी में व्यक्त करने के लिए स्वतंत्र महसूस करें, आप शीघ्र उत्तर पाने की उम्मीद कर सकते हैं।




Previous: सिंपल बूस्ट कन्वर्टर सर्किट कैसे बनाएं अगला: फ्लाईबैक कनवर्टर कैसे डिज़ाइन करें - व्यापक ट्यूटोरियल