# माटोको चिस्यान मापन गर्नुहोस् - भर्चुअल IoT हार्डवेयर यस पाठको यस भागमा, तपाईं आफ्नो भर्चुअल IoT उपकरणमा एक क्यापासिटिभ माटोको चिस्यान सेन्सर थप्नुहुनेछ, र यसबाट मानहरू पढ्नुहुनेछ। ## भर्चुअल हार्डवेयर भर्चुअल IoT उपकरणले सिमुलेट गरिएको Grove क्यापासिटिभ माटोको चिस्यान सेन्सर प्रयोग गर्नेछ। यसले यो प्रयोगशाला भौतिक Grove क्यापासिटिभ माटोको चिस्यान सेन्सरको साथमा Raspberry Pi प्रयोग गरेजस्तै बनाउँछ। भौतिक IoT उपकरणमा, माटोको चिस्यान सेन्सर क्यापासिटिभ सेन्सर हुनेछ जसले माटोको चिस्यान मापन गर्दछ माटोको क्यापासिटेन्स पत्ता लगाएर, जुन माटोको चिस्यान परिवर्तन हुँदा परिवर्तन हुन्छ। जब माटोको चिस्यान बढ्छ, भोल्टेज घट्छ। यो एनालग सेन्सर हो, त्यसैले यसले 1-1,023 को मान रिपोर्ट गर्न सिमुलेट गरिएको 10-बिट ADC प्रयोग गर्दछ। ### CounterFit मा माटोको चिस्यान सेन्सर थप्नुहोस् भर्चुअल माटोको चिस्यान सेन्सर प्रयोग गर्न, तपाईंले यसलाई CounterFit एपमा थप्न आवश्यक छ। #### कार्य - CounterFit मा माटोको चिस्यान सेन्सर थप्नुहोस् CounterFit एपमा माटोको चिस्यान सेन्सर थप्नुहोस्। 1. आफ्नो कम्प्युटरमा `soil-moisture-sensor` नामक फोल्डरमा नयाँ Python एप सिर्जना गर्नुहोस् जसमा `app.py` नामक एकल फाइल र Python भर्चुअल वातावरण होस्, र CounterFit pip प्याकेजहरू थप्नुहोस्। > ⚠️ आवश्यक परेमा [पाठ 1 मा CounterFit Python प्रोजेक्ट सिर्जना र सेटअप गर्ने निर्देशनहरू हेर्न सक्नुहुन्छ](../../../1-getting-started/lessons/1-introduction-to-iot/virtual-device.md)। 1. सुनिश्चित गर्नुहोस् कि CounterFit वेब एप चलिरहेको छ। 1. माटोको चिस्यान सेन्सर सिर्जना गर्नुहोस्: 1. *Sensors* प्यानको *Create sensor* बक्समा, *Sensor type* ड्रपडाउन बक्समा *Soil Moisture* चयन गर्नुहोस्। 1. *Units* लाई *NoUnits* मा सेट गर्नुहोस्। 1. *Pin* लाई *0* मा सेट गरिएको सुनिश्चित गर्नुहोस्। 1. **Add** बटन चयन गरेर *Soil Moisture* सेन्सर Pin 0 मा सिर्जना गर्नुहोस्। ![माटोको चिस्यान सेन्सर सेटिङहरू](../../../../../translated_images/counterfit-create-soil-moisture-sensor.35266135a5e0ae68b29a684d7db0d2933a8098b2307d197f7c71577b724603aa.ne.png) माटोको चिस्यान सेन्सर सिर्जना हुनेछ र सेन्सरहरूको सूचीमा देखा पर्नेछ। ![माटोको चिस्यान सेन्सर सिर्जना गरिएको](../../../../../translated_images/counterfit-soil-moisture-sensor.81742b2de0e9de60a3b3b9a2ff8ecc686d428eb6d71820f27a693be26e5aceee.ne.png) ## माटोको चिस्यान सेन्सर एप प्रोग्राम गर्नुहोस् अब माटोको चिस्यान सेन्सर एप CounterFit सेन्सरहरूको प्रयोग गरेर प्रोग्राम गर्न सकिन्छ। ### कार्य - माटोको चिस्यान सेन्सर एप प्रोग्राम गर्नुहोस् माटोको चिस्यान सेन्सर एप प्रोग्राम गर्नुहोस्। 1. सुनिश्चित गर्नुहोस् कि `soil-moisture-sensor` एप VS Code मा खुला छ। 1. `app.py` फाइल खोल्नुहोस्। 1. CounterFit मा एपलाई जडान गर्न `app.py` को माथिल्लो भागमा निम्न कोड थप्नुहोस्: ```python from counterfit_connection import CounterFitConnection CounterFitConnection.init('127.0.0.1', 5000) ``` 1. आवश्यक लाइब्रेरीहरू आयात गर्न `app.py` फाइलमा निम्न कोड थप्नुहोस्: ```python import time from counterfit_shims_grove.adc import ADC ``` `import time` कथनले `time` मोड्युल आयात गर्दछ जुन पछि यस असाइनमेन्टमा प्रयोग गरिनेछ। `from counterfit_shims_grove.adc import ADC` कथनले `ADC` कक्षा आयात गर्दछ जसले CounterFit सेन्सरसँग जडान गर्न भर्चुअल एनालगदेखि डिजिटल कन्वर्टरसँग अन्तरक्रिया गर्न प्रयोग गरिन्छ। 1. `ADC` कक्षाको एक उदाहरण सिर्जना गर्न तलको कोड थप्नुहोस्: ```python adc = ADC() ``` 1. Pin 0 मा ADC बाट पढ्ने र नतिजा कन्सोलमा लेख्ने अनन्त लूप थप्नुहोस्। यो लूपले प्रत्येक पढाइको बीचमा 10 सेकेन्डको लागि सुत्न सक्छ। ```python while True: soil_moisture = adc.read(0) print("Soil moisture:", soil_moisture) time.sleep(10) ``` 1. CounterFit एपबाट, एपले पढ्ने माटोको चिस्यान सेन्सरको मान परिवर्तन गर्नुहोस्। तपाईंले यो दुई तरिकामा गर्न सक्नुहुन्छ: * माटोको चिस्यान सेन्सरको *Value* बक्समा एक नम्बर प्रविष्ट गर्नुहोस्, त्यसपछि **Set** बटन चयन गर्नुहोस्। तपाईंले प्रविष्ट गरेको नम्बर सेन्सरले फर्काउने मान हुनेछ। * *Random* चेकबक्स जाँच गर्नुहोस्, र *Min* र *Max* मान प्रविष्ट गर्नुहोस्, त्यसपछि **Set** बटन चयन गर्नुहोस्। प्रत्येक पटक सेन्सरले मान पढ्छ, यो *Min* र *Max* बीचको एक र्यान्डम नम्बर पढ्नेछ। 1. Python एप चलाउनुहोस्। तपाईंले कन्सोलमा माटोको चिस्यान मापनहरू देख्नुहुनेछ। *Value* वा *Random* सेटिङहरू परिवर्तन गरेर मान परिवर्तन हेर्न सक्नुहुन्छ। ```output (.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](../../../../../2-farm/lessons/2-detect-soil-moisture/code/virtual-device) फोल्डरमा पाउन सक्नुहुन्छ। 😀 तपाईंको माटोको चिस्यान सेन्सर प्रोग्राम सफल भयो! --- **अस्वीकरण**: यो दस्तावेज़ AI अनुवाद सेवा [Co-op Translator](https://github.com/Azure/co-op-translator) प्रयोग गरेर अनुवाद गरिएको हो। हामी शुद्धताको लागि प्रयास गर्छौं, तर कृपया ध्यान दिनुहोस् कि स्वचालित अनुवादमा त्रुटिहरू वा अशुद्धताहरू हुन सक्छ। यसको मूल भाषा मा रहेको मूल दस्तावेज़लाई आधिकारिक स्रोत मानिनुपर्छ। महत्वपूर्ण जानकारीको लागि, व्यावसायिक मानव अनुवाद सिफारिस गरिन्छ। यस अनुवादको प्रयोगबाट उत्पन्न हुने कुनै पनि गलतफहमी वा गलत व्याख्याको लागि हामी जिम्मेवार हुने छैनौं।