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/ur/2-farm/lessons/1-predict-plant-growth/virtual-device-temp.md

11 KiB

درجہ حرارت کی پیمائش - ورچوئل IoT ہارڈویئر

اس سبق کے اس حصے میں، آپ اپنے ورچوئل IoT ڈیوائس میں ایک درجہ حرارت سینسر شامل کریں گے۔

ورچوئل ہارڈویئر

ورچوئل IoT ڈیوائس ایک سیمولیٹڈ Grove Digital Humidity اور Temperature سینسر استعمال کرے گا۔ یہ لیب Raspberry Pi کے ساتھ فزیکل Grove DHT11 سینسر استعمال کرنے جیسی ہی رہے گی۔

یہ سینسر ایک درجہ حرارت سینسر کو نمی سینسر کے ساتھ جوڑتا ہے، لیکن اس لیب میں آپ صرف درجہ حرارت سینسر کے جزو میں دلچسپی رکھتے ہیں۔ ایک فزیکل IoT ڈیوائس میں، درجہ حرارت سینسر ایک تھرمیسٹر ہوگا جو مزاحمت میں تبدیلی کو محسوس کرکے درجہ حرارت کی پیمائش کرتا ہے۔ درجہ حرارت سینسر عام طور پر ڈیجیٹل سینسر ہوتے ہیں جو اندرونی طور پر مزاحمت کو درجہ حرارت میں تبدیل کرتے ہیں، جو سیلسیئس (یا کیلون، یا فارن ہائیٹ) میں ماپا جاتا ہے۔

CounterFit میں سینسرز شامل کریں

ورچوئل نمی اور درجہ حرارت سینسر استعمال کرنے کے لیے، آپ کو CounterFit ایپ میں دونوں سینسرز شامل کرنے کی ضرورت ہوگی۔

کام - CounterFit میں سینسرز شامل کریں

CounterFit ایپ میں نمی اور درجہ حرارت سینسرز شامل کریں۔

  1. اپنے کمپیوٹر پر temperature-sensor نامی فولڈر میں ایک نیا Python ایپ بنائیں، جس میں ایک فائل app.py ہو اور ایک Python ورچوئل ماحول ہو، اور CounterFit pip پیکجز شامل کریں۔

    ⚠️ اگر ضرورت ہو تو سبق 1 میں CounterFit Python پروجیکٹ بنانے اور سیٹ اپ کرنے کی ہدایات کا حوالہ لے سکتے ہیں۔

  2. DHT11 سینسر کے لیے CounterFit shim انسٹال کرنے کے لیے ایک اضافی Pip پیکج انسٹال کریں۔ یقینی بنائیں کہ آپ یہ انسٹالیشن ایک ایسے ٹرمینل سے کر رہے ہیں جس میں ورچوئل ماحول فعال ہو۔

    pip install counterfit-shims-seeed-python-dht
    
  3. یقینی بنائیں کہ CounterFit ویب ایپ چل رہی ہے۔

  4. نمی سینسر بنائیں:

    1. Sensors پین میں Create sensor باکس میں جائیں، Sensor type ڈراپ ڈاؤن کریں اور Humidity منتخب کریں۔

    2. Units کو Percentage پر چھوڑ دیں۔

    3. یقینی بنائیں کہ Pin کو 5 پر سیٹ کیا گیا ہے۔

    4. Add بٹن منتخب کریں تاکہ Pin 5 پر نمی سینسر بنایا جا سکے۔

    نمی سینسر کی ترتیبات

    نمی سینسر بنایا جائے گا اور سینسرز کی فہرست میں ظاہر ہوگا۔

    نمی سینسر بنایا گیا

  5. درجہ حرارت سینسر بنائیں:

    1. Sensors پین میں Create sensor باکس میں جائیں، Sensor type ڈراپ ڈاؤن کریں اور Temperature منتخب کریں۔

    2. Units کو Celsius پر چھوڑ دیں۔

    3. یقینی بنائیں کہ Pin کو 6 پر سیٹ کیا گیا ہے۔

    4. Add بٹن منتخب کریں تاکہ Pin 6 پر درجہ حرارت سینسر بنایا جا سکے۔

    درجہ حرارت سینسر کی ترتیبات

    درجہ حرارت سینسر بنایا جائے گا اور سینسرز کی فہرست میں ظاہر ہوگا۔

    درجہ حرارت سینسر بنایا گیا

درجہ حرارت سینسر ایپ پروگرام کریں

اب درجہ حرارت سینسر ایپ کو CounterFit سینسرز استعمال کرتے ہوئے پروگرام کیا جا سکتا ہے۔

کام - درجہ حرارت سینسر ایپ پروگرام کریں

درجہ حرارت سینسر ایپ پروگرام کریں۔

  1. یقینی بنائیں کہ temperature-sensor ایپ VS Code میں کھلی ہوئی ہے۔

  2. app.py فائل کھولیں۔

  3. CounterFit سے ایپ کو جوڑنے کے لیے درج ذیل کوڈ app.py کے اوپر شامل کریں:

    from counterfit_connection import CounterFitConnection
    CounterFitConnection.init('127.0.0.1', 5000)
    
  4. مطلوبہ لائبریریوں کو درآمد کرنے کے لیے درج ذیل کوڈ app.py فائل میں شامل کریں:

    import time
    from counterfit_shims_seeed_python_dht import DHT
    

    from seeed_dht import DHT بیان DHT سینسر کلاس کو درآمد کرتا ہے تاکہ counterfit_shims_seeed_python_dht ماڈیول کے شِم کا استعمال کرتے ہوئے ورچوئل Grove درجہ حرارت سینسر کے ساتھ تعامل کیا جا سکے۔

  5. ورچوئل نمی اور درجہ حرارت سینسر کو منظم کرنے والی کلاس کا ایک انسٹینس بنانے کے لیے درج ذیل کوڈ اوپر والے کوڈ کے بعد شامل کریں:

    sensor = DHT("11", 5)
    

    یہ DHT کلاس کا ایک انسٹینس ڈکلیئر کرتا ہے جو ورچوئل Digital Humidity اور Temperature سینسر کو منظم کرتا ہے۔ پہلا پیرامیٹر کوڈ کو بتاتا ہے کہ استعمال ہونے والا سینسر ایک ورچوئل DHT11 سینسر ہے۔ دوسرا پیرامیٹر کوڈ کو بتاتا ہے کہ سینسر پورٹ 5 سے جڑا ہوا ہے۔

    💁 CounterFit اس مشترکہ نمی اور درجہ حرارت سینسر کو دو سینسرز سے جڑ کر سیمولیٹ کرتا ہے، ایک نمی سینسر اس پن پر جو DHT کلاس بناتے وقت دیا گیا ہو، اور ایک درجہ حرارت سینسر جو اگلے پن پر چلتا ہے۔ اگر نمی سینسر پن 5 پر ہے، تو شِم درجہ حرارت سینسر کو پن 6 پر توقع کرتا ہے۔

  6. اوپر والے کوڈ کے بعد ایک لامتناہی لوپ شامل کریں تاکہ درجہ حرارت سینسر کی ویلیو کو پول کیا جا سکے اور کنسول پر پرنٹ کیا جا سکے:

    while True:
        _, temp = sensor.read()
        print(f'Temperature {temp}°C')
    

    sensor.read() کو کال کرنے سے نمی اور درجہ حرارت کا ایک جوڑا واپس آتا ہے۔ آپ کو صرف درجہ حرارت کی ویلیو کی ضرورت ہے، اس لیے نمی کو نظر انداز کیا جاتا ہے۔ پھر درجہ حرارت کی ویلیو کنسول پر پرنٹ کی جاتی ہے۔

  7. loop کے آخر میں دس سیکنڈ کی ایک چھوٹی نیند شامل کریں کیونکہ درجہ حرارت کی سطح کو مسلسل چیک کرنے کی ضرورت نہیں ہے۔ نیند ڈیوائس کی توانائی کی کھپت کو کم کرتی ہے۔

    time.sleep(10)
    
  8. VS Code ٹرمینل سے، جس میں ورچوئل ماحول فعال ہو، درج ذیل کمانڈ چلائیں تاکہ آپ کی Python ایپ چلائی جا سکے:

    python app.py
    
  9. CounterFit ایپ سے، درجہ حرارت سینسر کی ویلیو کو تبدیل کریں جو ایپ کے ذریعے پڑھی جائے گی۔ آپ یہ دو طریقوں سے کر سکتے ہیں:

    • درجہ حرارت سینسر کے لیے Value باکس میں ایک نمبر درج کریں، پھر Set بٹن منتخب کریں۔ جو نمبر آپ درج کریں گے وہ سینسر کے ذریعے واپس کی جانے والی ویلیو ہوگی۔

    • Random چیک باکس کو چیک کریں، اور Min اور Max ویلیو درج کریں، پھر Set بٹن منتخب کریں۔ ہر بار جب سینسر ایک ویلیو پڑھے گا، تو یہ Min اور Max کے درمیان ایک رینڈم نمبر پڑھے گا۔

    آپ کو کنسول میں وہ ویلیوز نظر آئیں گی جو آپ نے سیٹ کی ہیں۔ Value یا Random سیٹنگز کو تبدیل کریں تاکہ ویلیو میں تبدیلی دیکھ سکیں۔

    (.venv) ➜  temperature-sensor python app.py
    Temperature 28.25°C
    Temperature 30.71°C
    Temperature 25.17°C
    

💁 آپ اس کوڈ کو code-temperature/virtual-device فولڈر میں تلاش کر سکتے ہیں۔

😀 آپ کا درجہ حرارت سینسر پروگرام کامیاب رہا!


ڈسکلیمر:
یہ دستاویز AI ترجمہ سروس Co-op Translator کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا غیر درستیاں ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ ہم اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے ذمہ دار نہیں ہیں۔