You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/hi/4-manufacturing/lessons/4-trigger-fruit-detector/pi-proximity.md

9.3 KiB

निकटता का पता लगाएं - रास्पबेरी पाई

इस पाठ के इस भाग में, आप अपने रास्पबेरी पाई में एक निकटता सेंसर जोड़ेंगे और उससे दूरी पढ़ेंगे।

हार्डवेयर

रास्पबेरी पाई को एक निकटता सेंसर की आवश्यकता है।

आप जो सेंसर उपयोग करेंगे वह Grove Time of Flight distance sensor है। यह सेंसर दूरी का पता लगाने के लिए एक लेजर रेंजिंग मॉड्यूल का उपयोग करता है। इस सेंसर की रेंज 10mm से 2000mm (1cm - 2m) है, और यह इस रेंज में दूरी को काफी सटीकता से रिपोर्ट करेगा। 1000mm से अधिक की दूरी को 8109mm के रूप में रिपोर्ट किया जाएगा।

लेजर रेंजफाइंडर सेंसर के पीछे की तरफ है, जो Grove सॉकेट के विपरीत दिशा में है।

यह एक I²C सेंसर है।

टाइम ऑफ फ्लाइट सेंसर कनेक्ट करें

Grove टाइम ऑफ फ्लाइट सेंसर को रास्पबेरी पाई से जोड़ा जा सकता है।

कार्य - टाइम ऑफ फ्लाइट सेंसर कनेक्ट करें

टाइम ऑफ फ्लाइट सेंसर को कनेक्ट करें।

एक Grove टाइम ऑफ फ्लाइट सेंसर

  1. Grove केबल के एक सिरे को टाइम ऑफ फ्लाइट सेंसर के सॉकेट में डालें। यह केवल एक ही दिशा में जाएगा।

  2. रास्पबेरी पाई को बंद करके, Grove केबल के दूसरे सिरे को Grove बेस हैट पर I²C सॉकेट में कनेक्ट करें। ये सॉकेट निचली पंक्ति में हैं, GPIO पिन्स के विपरीत छोर पर और कैमरा केबल स्लॉट के पास हैं।

Grove टाइम ऑफ फ्लाइट सेंसर I²C सॉकेट से जुड़ा हुआ

टाइम ऑफ फ्लाइट सेंसर प्रोग्राम करें

अब रास्पबेरी पाई को जुड़े हुए टाइम ऑफ फ्लाइट सेंसर का उपयोग करने के लिए प्रोग्राम किया जा सकता है।

कार्य - टाइम ऑफ फ्लाइट सेंसर प्रोग्राम करें

डिवाइस को प्रोग्राम करें।

  1. पाई को चालू करें और इसके बूट होने का इंतजार करें।

  2. fruit-quality-detector कोड को VS Code में खोलें, या तो सीधे पाई पर, या Remote SSH एक्सटेंशन के माध्यम से कनेक्ट करें।

  3. rpi-vl53l0x Pip पैकेज इंस्टॉल करें, जो VL53L0X टाइम-ऑफ-फ्लाइट डिस्टेंस सेंसर के साथ इंटरैक्ट करता है। इसे इस पिप कमांड का उपयोग करके इंस्टॉल करें:

    pip install rpi-vl53l0x
    
  4. इस प्रोजेक्ट में एक नई फाइल बनाएं जिसका नाम distance-sensor.py हो।

    💁 कई IoT डिवाइसों को सिमुलेट करने का एक आसान तरीका यह है कि प्रत्येक को एक अलग Python फाइल में करें, फिर उन्हें एक साथ चलाएं।

  5. इस फाइल में निम्नलिखित कोड जोड़ें:

    import time
    
    from grove.i2c import Bus
    from rpi_vl53l0x.vl53l0x import VL53L0X
    

    यह Grove I²C बस लाइब्रेरी और Grove टाइम ऑफ फ्लाइट सेंसर में निर्मित कोर सेंसर हार्डवेयर के लिए एक सेंसर लाइब्रेरी को इंपोर्ट करता है।

  6. इसके नीचे, सेंसर को एक्सेस करने के लिए निम्नलिखित कोड जोड़ें:

    distance_sensor = VL53L0X(bus = Bus().bus)
    distance_sensor.begin()    
    

    यह कोड Grove I²C बस का उपयोग करके एक डिस्टेंस सेंसर घोषित करता है, फिर सेंसर को शुरू करता है।

  7. अंत में, दूरी पढ़ने के लिए एक अनंत लूप जोड़ें:

    while True:
        distance_sensor.wait_ready()
        print(f'Distance = {distance_sensor.get_distance()} mm')
        time.sleep(1)
    

    यह कोड सेंसर से पढ़ने के लिए एक मान तैयार होने का इंतजार करता है, फिर इसे कंसोल में प्रिंट करता है।

  8. इस कोड को चलाएं।

    💁 ध्यान दें कि इस फाइल का नाम distance-sensor.py है! इसे Python के माध्यम से चलाना सुनिश्चित करें, न कि app.py के माध्यम से।

  9. आप कंसोल में दूरी माप देखेंगे। सेंसर के पास वस्तुओं को रखें और आप दूरी माप देखेंगे:

    pi@raspberrypi:~/fruit-quality-detector $ python3 distance_sensor.py 
    Distance = 29 mm
    Distance = 28 mm
    Distance = 30 mm
    Distance = 151 mm
    

    रेंजफाइंडर सेंसर के पीछे की तरफ है, इसलिए दूरी मापते समय सही दिशा का उपयोग करना सुनिश्चित करें।

    टाइम ऑफ फ्लाइट सेंसर के पीछे का रेंजफाइंडर एक केले की ओर इशारा करते हुए

💁 आप इस कोड को code-proximity/pi फोल्डर में पा सकते हैं।

😀 आपका निकटता सेंसर प्रोग्राम सफल रहा!

अस्वीकरण:
यह दस्तावेज़ AI अनुवाद सेवा Co-op Translator का उपयोग करके अनुवादित किया गया है। जबकि हम सटीकता सुनिश्चित करने का प्रयास करते हैं, कृपया ध्यान दें कि स्वचालित अनुवाद में त्रुटियां या अशुद्धियां हो सकती हैं। मूल भाषा में उपलब्ध मूल दस्तावेज़ को प्रामाणिक स्रोत माना जाना चाहिए। महत्वपूर्ण जानकारी के लिए, पेशेवर मानव अनुवाद की सिफारिश की जाती है। इस अनुवाद के उपयोग से उत्पन्न किसी भी गलतफहमी या गलत व्याख्या के लिए हम उत्तरदायी नहीं हैं।