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.
154 lines
11 KiB
154 lines
11 KiB
<!--
|
|
CO_OP_TRANSLATOR_METADATA:
|
|
{
|
|
"original_hash": "70e5a428b607cd5a9a4f422c2a4df03d",
|
|
"translation_date": "2025-08-26T22:19:58+00:00",
|
|
"source_file": "2-farm/lessons/1-predict-plant-growth/virtual-device-temp.md",
|
|
"language_code": "ur"
|
|
}
|
|
-->
|
|
# درجہ حرارت کی پیمائش - ورچوئل IoT ہارڈویئر
|
|
|
|
اس سبق کے اس حصے میں، آپ اپنے ورچوئل IoT ڈیوائس میں ایک درجہ حرارت سینسر شامل کریں گے۔
|
|
|
|
## ورچوئل ہارڈویئر
|
|
|
|
ورچوئل IoT ڈیوائس ایک سیمولیٹڈ Grove Digital Humidity اور Temperature سینسر استعمال کرے گا۔ یہ لیب Raspberry Pi کے ساتھ فزیکل Grove DHT11 سینسر استعمال کرنے جیسی ہی رہے گی۔
|
|
|
|
یہ سینسر ایک **درجہ حرارت سینسر** کو **نمی سینسر** کے ساتھ جوڑتا ہے، لیکن اس لیب میں آپ صرف درجہ حرارت سینسر کے جزو میں دلچسپی رکھتے ہیں۔ ایک فزیکل IoT ڈیوائس میں، درجہ حرارت سینسر ایک [تھرمیسٹر](https://wikipedia.org/wiki/Thermistor) ہوگا جو مزاحمت میں تبدیلی کو محسوس کرکے درجہ حرارت کی پیمائش کرتا ہے۔ درجہ حرارت سینسر عام طور پر ڈیجیٹل سینسر ہوتے ہیں جو اندرونی طور پر مزاحمت کو درجہ حرارت میں تبدیل کرتے ہیں، جو سیلسیئس (یا کیلون، یا فارن ہائیٹ) میں ماپا جاتا ہے۔
|
|
|
|
### CounterFit میں سینسرز شامل کریں
|
|
|
|
ورچوئل نمی اور درجہ حرارت سینسر استعمال کرنے کے لیے، آپ کو CounterFit ایپ میں دونوں سینسرز شامل کرنے کی ضرورت ہوگی۔
|
|
|
|
#### کام - CounterFit میں سینسرز شامل کریں
|
|
|
|
CounterFit ایپ میں نمی اور درجہ حرارت سینسرز شامل کریں۔
|
|
|
|
1. اپنے کمپیوٹر پر `temperature-sensor` نامی فولڈر میں ایک نیا Python ایپ بنائیں، جس میں ایک فائل `app.py` ہو اور ایک Python ورچوئل ماحول ہو، اور CounterFit pip پیکجز شامل کریں۔
|
|
|
|
> ⚠️ اگر ضرورت ہو تو [سبق 1 میں CounterFit Python پروجیکٹ بنانے اور سیٹ اپ کرنے کی ہدایات](../../../1-getting-started/lessons/1-introduction-to-iot/virtual-device.md) کا حوالہ لے سکتے ہیں۔
|
|
|
|
1. DHT11 سینسر کے لیے CounterFit shim انسٹال کرنے کے لیے ایک اضافی Pip پیکج انسٹال کریں۔ یقینی بنائیں کہ آپ یہ انسٹالیشن ایک ایسے ٹرمینل سے کر رہے ہیں جس میں ورچوئل ماحول فعال ہو۔
|
|
|
|
```sh
|
|
pip install counterfit-shims-seeed-python-dht
|
|
```
|
|
|
|
1. یقینی بنائیں کہ CounterFit ویب ایپ چل رہی ہے۔
|
|
|
|
1. نمی سینسر بنائیں:
|
|
|
|
1. *Sensors* پین میں *Create sensor* باکس میں جائیں، *Sensor type* ڈراپ ڈاؤن کریں اور *Humidity* منتخب کریں۔
|
|
|
|
1. *Units* کو *Percentage* پر چھوڑ دیں۔
|
|
|
|
1. یقینی بنائیں کہ *Pin* کو *5* پر سیٹ کیا گیا ہے۔
|
|
|
|
1. **Add** بٹن منتخب کریں تاکہ Pin 5 پر نمی سینسر بنایا جا سکے۔
|
|
|
|

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

|
|
|
|
1. درجہ حرارت سینسر بنائیں:
|
|
|
|
1. *Sensors* پین میں *Create sensor* باکس میں جائیں، *Sensor type* ڈراپ ڈاؤن کریں اور *Temperature* منتخب کریں۔
|
|
|
|
1. *Units* کو *Celsius* پر چھوڑ دیں۔
|
|
|
|
1. یقینی بنائیں کہ *Pin* کو *6* پر سیٹ کیا گیا ہے۔
|
|
|
|
1. **Add** بٹن منتخب کریں تاکہ Pin 6 پر درجہ حرارت سینسر بنایا جا سکے۔
|
|
|
|

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

|
|
|
|
## درجہ حرارت سینسر ایپ پروگرام کریں
|
|
|
|
اب درجہ حرارت سینسر ایپ کو CounterFit سینسرز استعمال کرتے ہوئے پروگرام کیا جا سکتا ہے۔
|
|
|
|
### کام - درجہ حرارت سینسر ایپ پروگرام کریں
|
|
|
|
درجہ حرارت سینسر ایپ پروگرام کریں۔
|
|
|
|
1. یقینی بنائیں کہ `temperature-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_seeed_python_dht import DHT
|
|
```
|
|
|
|
`from seeed_dht import DHT` بیان `DHT` سینسر کلاس کو درآمد کرتا ہے تاکہ `counterfit_shims_seeed_python_dht` ماڈیول کے شِم کا استعمال کرتے ہوئے ورچوئل Grove درجہ حرارت سینسر کے ساتھ تعامل کیا جا سکے۔
|
|
|
|
1. ورچوئل نمی اور درجہ حرارت سینسر کو منظم کرنے والی کلاس کا ایک انسٹینس بنانے کے لیے درج ذیل کوڈ اوپر والے کوڈ کے بعد شامل کریں:
|
|
|
|
```python
|
|
sensor = DHT("11", 5)
|
|
```
|
|
|
|
یہ `DHT` کلاس کا ایک انسٹینس ڈکلیئر کرتا ہے جو ورچوئل **D**igital **H**umidity اور **T**emperature سینسر کو منظم کرتا ہے۔ پہلا پیرامیٹر کوڈ کو بتاتا ہے کہ استعمال ہونے والا سینسر ایک ورچوئل *DHT11* سینسر ہے۔ دوسرا پیرامیٹر کوڈ کو بتاتا ہے کہ سینسر پورٹ `5` سے جڑا ہوا ہے۔
|
|
|
|
> 💁 CounterFit اس مشترکہ نمی اور درجہ حرارت سینسر کو دو سینسرز سے جڑ کر سیمولیٹ کرتا ہے، ایک نمی سینسر اس پن پر جو `DHT` کلاس بناتے وقت دیا گیا ہو، اور ایک درجہ حرارت سینسر جو اگلے پن پر چلتا ہے۔ اگر نمی سینسر پن 5 پر ہے، تو شِم درجہ حرارت سینسر کو پن 6 پر توقع کرتا ہے۔
|
|
|
|
1. اوپر والے کوڈ کے بعد ایک لامتناہی لوپ شامل کریں تاکہ درجہ حرارت سینسر کی ویلیو کو پول کیا جا سکے اور کنسول پر پرنٹ کیا جا سکے:
|
|
|
|
```python
|
|
while True:
|
|
_, temp = sensor.read()
|
|
print(f'Temperature {temp}°C')
|
|
```
|
|
|
|
`sensor.read()` کو کال کرنے سے نمی اور درجہ حرارت کا ایک جوڑا واپس آتا ہے۔ آپ کو صرف درجہ حرارت کی ویلیو کی ضرورت ہے، اس لیے نمی کو نظر انداز کیا جاتا ہے۔ پھر درجہ حرارت کی ویلیو کنسول پر پرنٹ کی جاتی ہے۔
|
|
|
|
1. `loop` کے آخر میں دس سیکنڈ کی ایک چھوٹی نیند شامل کریں کیونکہ درجہ حرارت کی سطح کو مسلسل چیک کرنے کی ضرورت نہیں ہے۔ نیند ڈیوائس کی توانائی کی کھپت کو کم کرتی ہے۔
|
|
|
|
```python
|
|
time.sleep(10)
|
|
```
|
|
|
|
1. VS Code ٹرمینل سے، جس میں ورچوئل ماحول فعال ہو، درج ذیل کمانڈ چلائیں تاکہ آپ کی Python ایپ چلائی جا سکے:
|
|
|
|
```sh
|
|
python app.py
|
|
```
|
|
|
|
1. CounterFit ایپ سے، درجہ حرارت سینسر کی ویلیو کو تبدیل کریں جو ایپ کے ذریعے پڑھی جائے گی۔ آپ یہ دو طریقوں سے کر سکتے ہیں:
|
|
|
|
* درجہ حرارت سینسر کے لیے *Value* باکس میں ایک نمبر درج کریں، پھر **Set** بٹن منتخب کریں۔ جو نمبر آپ درج کریں گے وہ سینسر کے ذریعے واپس کی جانے والی ویلیو ہوگی۔
|
|
|
|
* *Random* چیک باکس کو چیک کریں، اور *Min* اور *Max* ویلیو درج کریں، پھر **Set** بٹن منتخب کریں۔ ہر بار جب سینسر ایک ویلیو پڑھے گا، تو یہ *Min* اور *Max* کے درمیان ایک رینڈم نمبر پڑھے گا۔
|
|
|
|
آپ کو کنسول میں وہ ویلیوز نظر آئیں گی جو آپ نے سیٹ کی ہیں۔ *Value* یا *Random* سیٹنگز کو تبدیل کریں تاکہ ویلیو میں تبدیلی دیکھ سکیں۔
|
|
|
|
```output
|
|
(.venv) ➜ temperature-sensor python app.py
|
|
Temperature 28.25°C
|
|
Temperature 30.71°C
|
|
Temperature 25.17°C
|
|
```
|
|
|
|
> 💁 آپ اس کوڈ کو [code-temperature/virtual-device](../../../../../2-farm/lessons/1-predict-plant-growth/code-temperature/virtual-device) فولڈر میں تلاش کر سکتے ہیں۔
|
|
|
|
😀 آپ کا درجہ حرارت سینسر پروگرام کامیاب رہا!
|
|
|
|
---
|
|
|
|
**ڈسکلیمر**:
|
|
یہ دستاویز AI ترجمہ سروس [Co-op Translator](https://github.com/Azure/co-op-translator) کا استعمال کرتے ہوئے ترجمہ کی گئی ہے۔ ہم درستگی کے لیے کوشش کرتے ہیں، لیکن براہ کرم آگاہ رہیں کہ خودکار ترجمے میں غلطیاں یا غیر درستیاں ہو سکتی ہیں۔ اصل دستاویز کو اس کی اصل زبان میں مستند ذریعہ سمجھا جانا چاہیے۔ اہم معلومات کے لیے، پیشہ ور انسانی ترجمہ کی سفارش کی جاتی ہے۔ ہم اس ترجمے کے استعمال سے پیدا ہونے والی کسی بھی غلط فہمی یا غلط تشریح کے ذمہ دار نہیں ہیں۔ |