- భాగాలు
- అల్ట్రాసోనిక్ సెన్సార్ మాడ్యూల్
- ఆటోమేటిక్ వాటర్ లెవల్ కంట్రోలర్ యొక్క పని
- సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ
- ప్రోగ్రామింగ్
ఈ ఆర్డునో ఆధారిత ఆటోమేటిక్ వాటర్ లెవల్ ఇండికేటర్ మరియు కంట్రోలర్ ప్రాజెక్ట్లో అల్ట్రాసోనిక్ సెన్సార్లను ఉపయోగించి నీటి మట్టాన్ని కొలవబోతున్నాం. అల్ట్రాసోనిక్ దూర కొలత యొక్క ప్రాథమిక ప్రిన్సిపాల్ ECHO పై ఆధారపడి ఉంటుంది. వాతావరణంలో ధ్వని తరంగాలు ప్రసారం అయినప్పుడు అవి ఏదైనా అడ్డంకిని తాకిన తరువాత తిరిగి ECHO గా తిరిగి వస్తాయి. కాబట్టి మనం రెండు శబ్దాల ప్రయాణ సమయాన్ని మాత్రమే లెక్కించాలి అంటే ఏదైనా అడ్డంకిని తాకిన తర్వాత అవుట్గోయింగ్ సమయం మరియు మూలానికి తిరిగి వచ్చే సమయం. మరియు కొంత గణన తరువాత మనం దూరం అనే ఫలితాన్ని పొందవచ్చు. ఈ భావన మా వాటర్ కంట్రోలర్ ప్రాజెక్టులో ఉపయోగించబడుతుంది, ఇక్కడ ట్యాంక్లో నీటి మట్టం తక్కువగా ఉన్నప్పుడు వాటర్ మోటారు పంప్ స్వయంచాలకంగా ఆన్ అవుతుంది. ఈ ప్రాజెక్ట్ యొక్క సరళమైన సంస్కరణ కోసం మీరు ఈ సాధారణ నీటి స్థాయి సూచిక సర్క్యూట్ను కూడా తనిఖీ చేయవచ్చు.
భాగాలు
- ఆర్డునో యునో
- అల్ట్రాసోనిక్ సెన్సార్ మాడ్యూల్
- 16x2 LCD
- రిలే 6 వోల్ట్
- ULN2003
- 7806
- పివిటి
- రాగి తీగ
- 9 వోల్ట్ బ్యాటరీ లేదా 12 వోల్టాడాప్టర్
- వైర్లను కనెక్ట్ చేస్తోంది
అల్ట్రాసోనిక్ సెన్సార్ మాడ్యూల్
అల్ట్రాసోనిక్ సెన్సార్ HC-SR04 ను 3 మిమీ ఖచ్చితత్వంతో 2 సెం.మీ -400 సెం.మీ పరిధిలో దూరాన్ని కొలవడానికి ఉపయోగిస్తారు. సెన్సార్ మాడ్యూల్లో అల్ట్రాసోనిక్ ట్రాన్స్మిటర్, రిసీవర్ మరియు కంట్రోల్ సర్క్యూట్ ఉంటాయి.
అల్ట్రాసోనిక్ సెన్సార్ మాడ్యూల్ ధ్వని యొక్క ECHO యొక్క సహజ దృగ్విషయంపై పనిచేస్తుంది. మాడ్యూల్ను ప్రేరేపించడానికి సుమారు 10us కోసం పల్స్ పంపబడుతుంది. ఆ తరువాత మాడ్యూల్ స్వయంచాలకంగా 40 KHz అల్ట్రాసౌండ్ సిగ్నల్ యొక్క 8 చక్రాలను పంపుతుంది మరియు దాని ప్రతిధ్వనిని తనిఖీ చేస్తుంది. అడ్డంకితో కొట్టిన తర్వాత సిగ్నల్ తిరిగి వస్తుంది మరియు రిసీవర్ చేత బంధించబడుతుంది. అందువల్ల సెన్సార్ నుండి అడ్డంకి యొక్క దూరం ఇచ్చిన ఫార్ములా ద్వారా లెక్కించబడుతుంది
దూరం = (సమయం x వేగం) / 2.
ఇక్కడ మేము వేగం మరియు సమయం యొక్క ఉత్పత్తిని 2 ద్వారా విభజించాము ఎందుకంటే సమయం అడ్డంకిని చేరుకోవడానికి మరియు తిరిగి రావడానికి తీసుకున్న మొత్తం సమయం. అందువల్ల అడ్డంకిని చేరుకోవడానికి తీసుకున్న సమయం మొత్తం సమయం సగం మాత్రమే.
ఆటోమేటిక్ వాటర్ లెవల్ కంట్రోలర్ యొక్క పని
ఈ ప్రాజెక్ట్ యొక్క పని చాలా సులభం, మేము అల్ట్రాసోనిక్ సెన్సార్ మాడ్యూల్ను ఉపయోగించాము, ఇది నీటి ట్యాంక్లోని ధ్వని తరంగాలను పంపుతుంది మరియు ECHO అయిన ధ్వని తరంగాల ప్రతిబింబాన్ని కనుగొంటుంది. మొదట మనం ఆర్డునోను ఉపయోగించి సిగ్నల్ ప్రసారం చేయడానికి అల్ట్రాసోనిక్ సెన్సార్ మాడ్యూల్ను ట్రిగ్గర్ చేసి, ఆపై ECHO ను స్వీకరించడానికి వేచి ఉండాలి. Arduino ట్రిగ్గర్ మరియు అందుకున్న ECHO మధ్య సమయాన్ని చదువుతుంది. ధ్వని వేగం సెకనుకు 340 మీ. కాబట్టి ఇచ్చిన సూత్రాన్ని ఉపయోగించి మనం దూరాన్ని లెక్కించవచ్చు:
దూరం = (ప్రయాణ సమయం / 2) * ధ్వని వేగం
ధ్వని వేగం సెకనుకు సుమారు 340 మీ.
ఈ పద్ధతులను ఉపయోగించడం ద్వారా మనకు సెన్సార్ నుండి నీటి ఉపరితలం వరకు దూరం లభిస్తుంది. దాని తరువాత మనం నీటి మట్టాన్ని లెక్కించాలి.
ఇప్పుడు మనం వాటర్ ట్యాంక్ యొక్క మొత్తం పొడవును లెక్కించాలి. వాటర్ ట్యాంక్ యొక్క పొడవు మనకు తెలిసినట్లుగా, అల్ట్రాసోనిక్ నుండి వచ్చే దూరాన్ని ట్యాంక్ యొక్క మొత్తం పొడవు నుండి తీసివేయడం ద్వారా నీటి మట్టాన్ని లెక్కించవచ్చు. మరియు మేము నీటి మట్టం దూరం పొందుతాము. ఇప్పుడు మనం ఈ నీటి మట్టాన్ని నీటి శాతానికి మార్చవచ్చు మరియు దానిని ఎల్సిడిలో ప్రదర్శించవచ్చు. పూర్తి నీటి స్థాయి సూచిక ప్రాజెక్ట్ యొక్క పని క్రింద ఉన్న బ్లాక్ రేఖాచిత్రంలో చూపబడింది.
సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ
క్రింద ఇవ్వబడిన నీటి స్థాయి కంట్రోలర్ సర్క్యూట్లో చూపినట్లుగా, అల్ట్రాసోనిక్ సెన్సార్ మాడ్యూల్ యొక్క “ట్రిగ్గర్” మరియు “ఎకో” పిన్స్ నేరుగా పిన్ 10 మరియు 11 ఆర్డునోకు అనుసంధానించబడి ఉన్నాయి. 16x2 LCD 4-బిట్ మోడ్లో arduino తో అనుసంధానించబడి ఉంది. కంట్రోల్ పిన్ RS, RW మరియు En నేరుగా ఆర్డునో పిన్ 7, జిఎన్డి మరియు 6 లతో అనుసంధానించబడి ఉన్నాయి. మరియు డేటా పిన్ డి 4-డి 7 ఆర్డునో యొక్క 5, 4, 3 మరియు 2 లకు అనుసంధానించబడి ఉంది మరియు బజర్ పిన్ 12 వద్ద అనుసంధానించబడి ఉంది. వాటర్ మోటారు పంపును ఆన్ చేయడానికి లేదా ఆపివేయడానికి ULN2003 ద్వారా ఆర్డునో యొక్క పిన్ 8 వద్ద కూడా కనెక్ట్ చేయబడింది. వోల్టేజ్ రెగ్యులేటర్ 7805 రిలేకు 5 వోల్ట్లను అందించడానికి మరియు మిగిలిన సర్క్యూట్కు కూడా ఉపయోగించబడుతుంది.
ఈ సర్క్యూట్లో అల్ట్రాసోనిక్ సెన్సార్ మాడ్యూల్ ప్రదర్శన కోసం బకెట్ (వాటర్ ట్యాంక్) పైభాగంలో ఉంచబడుతుంది. ఈ సెన్సార్ మాడ్యూల్ సెన్సార్ మాడ్యూల్ మరియు నీటి ఉపరితలం మధ్య దూరాన్ని చదువుతుంది మరియు ఇది “ట్యాంక్లోని వాటర్ స్పేస్:” అనే సందేశంతో ఎల్సిడి తెరపై దూరాన్ని చూపుతుంది. దీని అర్థం మనం ఇక్కడ నీటి మట్టానికి బదులుగా ఖాళీ స్థలం లేదా నీటి కోసం వాల్యూమ్ను చూపుతున్నాము. ఈ కార్యాచరణ కారణంగా మనం ఈ వ్యవస్థను ఏ వాటర్ ట్యాంక్లోనైనా ఉపయోగించవచ్చు. ఖాళీ నీటి మట్టం 30 సెంటీమీటర్ల దూరానికి చేరుకున్నప్పుడు, రిలే డ్రైవింగ్ చేయడం ద్వారా ఆర్డునో నీటి పంపును ఆన్ చేస్తుంది. ఇప్పుడు ఎల్సిడి “తక్కువ నీటి మట్టం” “మోటారు ఆన్ చేయబడింది” చూపిస్తుంది మరియు రిలే స్థితి LED మెరుస్తూ ఉంటుంది
ఇప్పుడు ఖాళీ స్థలం 12 సెంటీమీటర్ల దూరానికి చేరుకుంటే ఆర్డునో రిలేను ఆపివేస్తుంది మరియు ఎల్సిడి “ట్యాంక్ నిండింది” “మోటార్ టర్న్డ్ ఆఫ్” చూపిస్తుంది. బజర్ కొంత సమయం పాటు బీప్ చేస్తుంది మరియు రిలే స్థితి LED ఆపివేయబడుతుంది.
ప్రోగ్రామింగ్
నీటి స్థాయి నియంత్రిక కోసం ఆర్డునోను ప్రోగ్రామ్ చేయడానికి, మొదట మేము రిలే, ఎల్సిడి, బజర్ మొదలైన బాహ్య పరికరాలను ఇంటర్ఫేస్ చేయడానికి ప్రాజెక్ట్లో ఉపయోగించబోయే అన్ని పిన్లను నిర్వచించాము.
# ట్రిగ్గర్ 10 ని నిర్వచించండి # ఎకో 11 ని నిర్వచించండి # మోటారు 8 ని నిర్వచించండి # బజర్ 12 ని నిర్వచించండి
అప్పుడు మేము ప్రాజెక్ట్లో ఉపయోగించిన అన్ని పరికరాలను ప్రారంభిస్తాము.
lcd.begin (16,2); పిన్మోడ్ (ట్రిగ్గర్, OUTPUT); పిన్మోడ్ (ఎకో, ఇన్పుట్); పిన్మోడ్ (మోటారు, OUTPUT); పిన్ మోడ్ (బజర్, U ట్పుట్); lcd.print ("నీటి స్థాయి"); lcd.setCursor (0,1); lcd.print ("సూచిక"); ఆలస్యం (2000);
ఇప్పుడు అల్ట్రాసోనిక్ సెన్సార్ మాడ్యూల్ను ప్రారంభించండి మరియు పల్స్ఇన్ (పిన్) ఉపయోగించి అల్ట్రాసోనిక్ తరంగాలు లేదా ధ్వనిని పంపే మరియు స్వీకరించే సమయాన్ని చదవండి. అప్పుడు గణనలను నిర్వహించి, తగిన విధులను ఉపయోగించి ఫలితాన్ని 16x2 LCD లో ప్రదర్శించండి.
డిజిటల్ రైట్ (ట్రిగ్గర్, హై); delayMicroseconds (10); డిజిటల్ రైట్ (ట్రిగ్గర్, తక్కువ); delayMicroseconds (2); time = పల్స్ఇన్ (ఎకో, హై); దూరం = సమయం * 340/20000; lcd.clear (); lcd.print ("వాటర్ స్పేస్ ఇన్"); lcd.setCursor (0,1); lcd.print ("ట్యాంక్:"); lcd.print (దూరం); lcd.print ("Cm");
దాని తరువాత మేము నీటి ట్యాంక్ నిండి ఉందా లేదా నీటి మట్టం తక్కువగా ఉందో లేదో తనిఖీ చేస్తాము మరియు తదనుగుణంగా చర్యలు తీసుకుంటాము.
if (దూరం <12 && టెంప్ == 0) {డిజిటల్ రైట్ (మోటారు, తక్కువ); డిజిటల్ రైట్ (బజర్, హై); lcd.clear (); lcd.print ("వాటర్ ట్యాంక్ ఫుల్"); lcd.setCursor (0,1); lcd.print ("మోటార్ టర్న్డ్ ఆఫ్"); ఆలస్యం (2000); డిజిటల్ రైట్ (బజర్, తక్కువ); ఆలస్యం (3000); టెంప్ = 1; } else ఉంటే (దూరం <12 && టెంప్ == 1) {డిజిటల్ రైట్ (మోటారు, తక్కువ); lcd.clear (); lcd.print ("వాటర్ ట్యాంక్ ఫుల్"); lcd.setCursor (0,1); lcd.print ("మోటార్ టర్న్డ్ ఆఫ్"); ఆలస్యం (5000); }