11 KiB
మేలు నేల ఆर्द్రతను కొలవండి - వర్చువల్ ఐఓటి హార్డ్వేర్
ఈ పాఠ భాగంలో, మీరు మీ వర్చువల్ ఐఓటి పరికరానికి కెపాసిటివ్ నేల ఆर्द్రతా సెన్సార్ను జోడించి, దాని నుండి విలువలను చదివేందుకు నేర్చుకుంటారు.
వర్చువల్ హార్డ్వేర్
వర్చువల్ ఐఓటి పరికరం ఒక అనుకరణ గారవే కెపాసిటివ్ నేల ఆर्द్రతా సెన్సార్ను ఉపయోగిస్తుంది. ఇది రాస్ప్బెర్రీ పై తో ఒక భౌతిక గారవే కెపాసిటివ్ నేల ఆर्द్రతా సెన్సార్ను ఉపయోగించడానికంటే ఇదే ల్యాబ్ను నిలిపిస్తుంది.
భౌతిక ఐఓటి పరికరం లో, నేల ఆర్ద్రతా సెన్సార్ అనేది నేల ఆర్ద్రతను కొలవడానికి నేల కెపాసిటెన్స్ని గుర్తించే కెపాసిటివ్ సెన్సార్ ఉంటుంది, ఇది నేల ఆర్ద్రత మారుతున్నప్పుడు మారే లక్షణం. నేల ఆర్ద్రత పెరగడంతో, వోల్టేజ్ తగ్గుతుంది.
ఇది అనలాగ్ సెన్సార్, కాబట్టి 1-1,023 మధ్య విలువను నివేదించడానికి అనుకరణ 10-బిట్ ADC ఉపయోగిస్తుంది.
కౌంటర్ఫిట్ కు నేల ఆర్ద్రతా సెన్సార్ను జోడించండి
వర్చువల్ నేల ఆర్ద్రతా సెన్సార్ ఉపయోగించడానికి, మీరు కౌంటర్ఫిట్ యాప్ కు దీన్ని జోడించాలి
పనిని - కౌంటర్ఫిట్ కు నేల ఆర్ద్రతా సెన్సార్ను జోడించండి
కౌంటర్ఫిట్ యాప్ కు నేల ఆర్ద్రతా సెన్సార్ను జోడించండి.
-
మీ కంప్యూటర్ లో
soil-moisture-sensorపేరుతో ఒక ఫోల్డర్ లో ఒక కొత్త Python యాప్ని సృష్టించి, ఒకే ఒక ఫైల్app.pyకలిగి, Python వర్చువల్ పరిసరంతో పాటు, కౌంటర్ఫిట్ పిప్ ప్యాకేజ్లను జోడించండి.⚠️ అవసరమైతే, పాఠం 1 లో కౌంటర్ఫిట్ Python ప్రాజెక్ట్ తయారుచేసే మరియు సెటప్ చెయ్యడానికి సూచనలు చూడొచ్చు.
-
కౌంటర్ఫిట్ వెబ్ యాప్ సరిగ్గా నడుస్తుందనే నిర్ధారించుకోండి
-
నేల ఆర్ద్రతా సెన్సార్ సృష్టించండి:
-
Sensors ప్యాన్ లో Create sensor బాక్స్ లో, Sensor type డ్రాప్ డౌన్ బాక్స్ నుండి Soil Moistureని ఎంచుకోండి.
-
Units ను NoUnitsగా ఉంచండి
-
Pin ను 0 గా సెట్ చేయండి
-
Pin 0పై Soil Moisture సెన్సార్ సృష్టించడానికి Add బటన్ ను ఎంచుకోండి
నేల ఆర్ద్రతా సెన్సార్ సృష్టించి, సెన్సార్ల జాబితాలో కనిపిస్తుంది.
-
నేల ఆర్ద్రతా సెన్సార్ యాప్ ను ప్రోగ్రామ్ చేయండి
ఇప్పుడిషుకారు కౌంటర్ఫిట్ సెన్సార్లను ఉపయోగించి నేల ఆర్ద్రతా సెన్సార్ యాప్ ప్రోగ్రామ్ చేయవచ్చు.
పనిని - నేల ఆర్ద్రతా సెన్సార్ యాప్ ప్రోగ్రామ్ చేయండి
నేల ఆర్ద్రతా సెన్సార్ యాప్ ప్రోగ్రామ్ చేయండి.
-
soil-moisture-sensorయాప్ VS Code లో తెరచుకోండి -
app.pyఫైల్ ఓపెన్ చేయండి -
కౌంటర్ఫిట్ కు యాప్ కనెక్ట్ చేయడానికి
app.pyపైభాగంలో క్రింద ఇచ్చిన కో드를 జోడించండి:from counterfit_connection import CounterFitConnection CounterFitConnection.init('127.0.0.1', 5000) -
కొన్ని అవసరమైన లైబ్రరీలను దిగుమతి చేసేందుకు
app.pyఫైల్లో క్రింద ఇచ్చిన కో드를 జోడించండి:import time from counterfit_shims_grove.adc import ADCimport timeవాక్యం తర్వాత ఈ అసైంమెంట్లో ఉపయోగించబడేtimeమాడ్యూల్ని దిగుమతి చేస్తుంది.from counterfit_shims_grove.adc import ADCవాక్యం కౌంటర్ఫిట్ సెన్సార్లకు కనెక్ట్ అయ్యే వర్చువల్ అనలాగ్ నుండి డిజిటల్ కన్వర్టర్తో ఇంటరాక్ట్ చేయడానికిADCక్లాస్ ను దిగుమతి చేస్తుంది. -
ADCక్లాస్ యొక్క ఇన్స్టెన్స్ సృష్టించడానికి క్రింద ఇచ్చిన కోడ్ జోడించండి:adc = ADC() -
పిన్ 0 పై ఈ ADC నుండి చదవడానికి, ఫలితాన్ని కన్సోల్ కు వ్రాయడానికి అంతరించని లూప్ జోడించండి. ఈ లూప్ చదివే మధ్య 10 సెకన్ల నిద్రపోతుంది.
while True: soil_moisture = adc.read(0) print("Soil moisture:", soil_moisture) time.sleep(10) -
కౌంటర్ఫిట్ యాప్ నుండి, యాప్ ద్వారా కొనసాగే నేల ఆర్ద్రతా సెన్సార్ విలువ మార్చండి. మీరు దీనిని రెండు విధాలుగా చేయవచ్చు:
-
నేల ఆర్ద్రతా సెన్సార్ కోసం Value బాక్స్ లో సంఖ్యను నమోదు చేసి, Set బటన్ ను ఎంచుకోండి. మీరు ఇచ్చిన సంఖ్య సెన్సార్ తిరిగి ఇచ్చే విలువ అవుతుంది.
-
Random చెక్బాక్స్ ను గుర్తించి, Min మరియు Max విలువలను నమోదు చేసి, Set బటన్ ను ఎంచుకోండి. సెన్సార్ ప్రతిసారి విలువ చదివేటప్పుడు Min నుండి Max మధ్య ఏదైనా రాండమ్ సంఖ్యను చదువుతుంది.
-
-
Python యాప్ ను రన్ చేయండి. నేల ఆర్ద్రతా కొలతలు కన్సోల్ లొ వ్రాయబడతాయి. విలువ లేదా రాండమ్ సెట్టింగ్లు మార్చండి, విలువ మారటం చూడండి.
(.venv) ➜ soil-moisture-sensor $ python app.py Soil moisture: 615 Soil moisture: 612 Soil moisture: 498 Soil moisture: 493 Soil moisture: 490 Soil Moisture: 388
💁 మీరు ఈ కోడ్ ను code/virtual-device ఫోల్డర్ లో చూడవచ్చు.
😀 మీ నేల ఆర్ద్రతా సెన్సార్ ప్రోగ్రాం విజయవంతంగా జరిగింది!
వినతి: ఈ పత్రం AI అనువాద సేవ Co-op Translator ద్వారా అనువదించబడింది. మనం ఖచ్చితత్వం కోసం ప్రయత్నిస్తున్నప్పటికీ, ఆటోమేటెడ్ అనువాదాలలో తప్పులు లేదా పొరపాట్లు ఉండవచ్చు అని గమనించండి. ఆ ప్రామాణిక పత్రాన్ని స్వదేశీ భాషలోనే అధికారిక మూలంగా పరిగణించాలి. కీలక సమాచారానికి, ప్రొఫెషనల్ మానవ అనువాదం సిఫార్సు చేయబడుతుంది. ఈ అనువాదం ఉపయోగం వల్ల కలిగే మందగించటం లేదా తప్పుదోవ పట్టడంలో మేము బాధ్యత తీసుకోము.

