|
|
<!--
|
|
|
CO_OP_TRANSLATOR_METADATA:
|
|
|
{
|
|
|
"original_hash": "4efc74299e19f5d08f2f3f34451a11ba",
|
|
|
"translation_date": "2025-08-27T11:03:06+00:00",
|
|
|
"source_file": "2-farm/lessons/1-predict-plant-growth/single-board-computer-temp-publish.md",
|
|
|
"language_code": "bn"
|
|
|
}
|
|
|
-->
|
|
|
# তাপমাত্রা প্রকাশ করা - ভার্চুয়াল IoT হার্ডওয়্যার এবং রাস্পবেরি পাই
|
|
|
|
|
|
এই পাঠের এই অংশে, আপনি রাস্পবেরি পাই বা ভার্চুয়াল IoT ডিভাইস দ্বারা সনাক্ত করা তাপমাত্রার মানগুলি MQTT এর মাধ্যমে প্রকাশ করবেন যাতে পরে GDD গণনার জন্য ব্যবহার করা যায়।
|
|
|
|
|
|
## তাপমাত্রা প্রকাশ করা
|
|
|
|
|
|
একবার তাপমাত্রা পড়া হয়ে গেলে, এটি MQTT এর মাধ্যমে কিছু 'সার্ভার' কোডে প্রকাশ করা যেতে পারে যা মানগুলি পড়বে এবং GDD গণনার জন্য প্রস্তুত রাখতে সংরক্ষণ করবে।
|
|
|
|
|
|
### কাজ - তাপমাত্রা প্রকাশ করা
|
|
|
|
|
|
ডিভাইসটি তাপমাত্রার ডেটা প্রকাশ করার জন্য প্রোগ্রাম করুন।
|
|
|
|
|
|
1. যদি `temperature-sensor` অ্যাপ প্রকল্পটি ইতিমধ্যে খোলা না থাকে তবে এটি খুলুন।
|
|
|
|
|
|
1. MQTT এর সাথে সংযোগ স্থাপন এবং টেলিমেট্রি পাঠানোর জন্য আপনি পাঠ ৪-এ যে ধাপগুলি অনুসরণ করেছিলেন তা পুনরাবৃত্তি করুন। আপনি একই পাবলিক Mosquitto ব্রোকার ব্যবহার করবেন।
|
|
|
|
|
|
এই ধাপগুলি হল:
|
|
|
|
|
|
- MQTT pip প্যাকেজ যোগ করুন
|
|
|
- MQTT ব্রোকারের সাথে সংযোগ স্থাপনের কোড যোগ করুন
|
|
|
- টেলিমেট্রি প্রকাশ করার কোড যোগ করুন
|
|
|
|
|
|
> ⚠️ MQTT এর সাথে সংযোগ স্থাপনের [নির্দেশাবলী](../../../1-getting-started/lessons/4-connect-internet/single-board-computer-mqtt.md) এবং টেলিমেট্রি পাঠানোর [নির্দেশাবলী](../../../1-getting-started/lessons/4-connect-internet/single-board-computer-telemetry.md) পাঠ ৪ থেকে প্রয়োজনে দেখুন।
|
|
|
|
|
|
1. নিশ্চিত করুন যে `client_name` এই প্রকল্পের নাম প্রতিফলিত করে:
|
|
|
|
|
|
```python
|
|
|
client_name = id + 'temperature_sensor_client'
|
|
|
```
|
|
|
|
|
|
1. টেলিমেট্রির জন্য, একটি লাইট মান পাঠানোর পরিবর্তে, DHT সেন্সর থেকে পড়া তাপমাত্রার মানটি JSON ডকুমেন্টে `temperature` নামে একটি প্রপার্টিতে পাঠান:
|
|
|
|
|
|
```python
|
|
|
_, temp = sensor.read()
|
|
|
telemetry = json.dumps({'temperature' : temp})
|
|
|
```
|
|
|
|
|
|
1. তাপমাত্রার মান খুব ঘন ঘন পড়ার প্রয়োজন নেই - এটি স্বল্প সময়ে খুব বেশি পরিবর্তন হবে না, তাই `time.sleep` ১০ মিনিটে সেট করুন:
|
|
|
|
|
|
```cpp
|
|
|
time.sleep(10 * 60);
|
|
|
```
|
|
|
|
|
|
> 💁 `sleep` ফাংশনটি সময়কে সেকেন্ডে নেয়, তাই এটি সহজে পড়ার জন্য মানটি একটি গণনার ফলাফল হিসাবে পাস করা হয়। ১ মিনিটে ৬০ সেকেন্ড, তাই ১০ x (১ মিনিটে ৬০ সেকেন্ড) ১০ মিনিটের বিলম্ব দেয়।
|
|
|
|
|
|
1. আগের অংশের অ্যাসাইনমেন্ট থেকে কোড চালানোর মতো একইভাবে কোড চালান। যদি আপনি একটি ভার্চুয়াল IoT ডিভাইস ব্যবহার করছেন, তবে নিশ্চিত করুন যে CounterFit অ্যাপটি চালু রয়েছে এবং আর্দ্রতা এবং তাপমাত্রা সেন্সরগুলি সঠিক পিনে তৈরি করা হয়েছে।
|
|
|
|
|
|
```output
|
|
|
pi@raspberrypi:~/temperature-sensor $ python3 app.py
|
|
|
MQTT connected!
|
|
|
Sending telemetry {"temperature": 25}
|
|
|
Sending telemetry {"temperature": 25}
|
|
|
```
|
|
|
|
|
|
> 💁 আপনি এই কোডটি [code-publish-temperature/virtual-device](../../../../../2-farm/lessons/1-predict-plant-growth/code-publish-temperature/virtual-device) ফোল্ডারে বা [code-publish-temperature/pi](../../../../../2-farm/lessons/1-predict-plant-growth/code-publish-temperature/pi) ফোল্ডারে খুঁজে পেতে পারেন।
|
|
|
|
|
|
😀 আপনি সফলভাবে আপনার ডিভাইস থেকে টেলিমেট্রি হিসাবে তাপমাত্রা প্রকাশ করেছেন।
|
|
|
|
|
|
---
|
|
|
|
|
|
**অস্বীকৃতি**:
|
|
|
এই নথিটি AI অনুবাদ পরিষেবা [Co-op Translator](https://github.com/Azure/co-op-translator) ব্যবহার করে অনুবাদ করা হয়েছে। আমরা যথাসম্ভব সঠিকতার জন্য চেষ্টা করি, তবে অনুগ্রহ করে মনে রাখবেন যে স্বয়ংক্রিয় অনুবাদে ত্রুটি বা অসঙ্গতি থাকতে পারে। মূল ভাষায় থাকা নথিটিকে প্রামাণিক উৎস হিসেবে বিবেচনা করা উচিত। গুরুত্বপূর্ণ তথ্যের জন্য, পেশাদার মানব অনুবাদ সুপারিশ করা হয়। এই অনুবাদ ব্যবহারের ফলে কোনো ভুল বোঝাবুঝি বা ভুল ব্যাখ্যা হলে আমরা দায়ী থাকব না। |