# ਤਾਪਮਾਨ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰੋ - ਵਰਚੁਅਲ IoT ਹਾਰਡਵੇਅਰ ਅਤੇ ਰਾਸਪਬੈਰੀ ਪਾਈ ਇਸ ਪਾਠ ਦੇ ਇਸ ਹਿੱਸੇ ਵਿੱਚ, ਤੁਸੀਂ ਰਾਸਪਬੈਰੀ ਪਾਈ ਜਾਂ ਵਰਚੁਅਲ IoT ਡਿਵਾਈਸ ਦੁਆਰਾ ਪਤਾ ਲਗਾਏ ਗਏ ਤਾਪਮਾਨ ਮੁੱਲਾਂ ਨੂੰ MQTT ਦੇ ਜ਼ਰੀਏ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰੋਗੇ ਤਾਂ ਜੋ ਉਹ ਬਾਅਦ ਵਿੱਚ GDD ਦੀ ਗਣਨਾ ਕਰਨ ਲਈ ਵਰਤੇ ਜਾ ਸਕਣ। ## ਤਾਪਮਾਨ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰੋ ਜਦੋਂ ਤਾਪਮਾਨ ਪੜ੍ਹਿਆ ਜਾਂਦਾ ਹੈ, ਇਸਨੂੰ MQTT ਦੇ ਜ਼ਰੀਏ 'ਸਰਵਰ' ਕੋਡ ਨੂੰ ਪ੍ਰਕਾਸ਼ਿਤ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ ਜੋ ਮੁੱਲਾਂ ਨੂੰ ਪੜ੍ਹੇਗਾ ਅਤੇ GDD ਦੀ ਗਣਨਾ ਲਈ ਤਿਆਰ ਰੱਖੇਗਾ। ### ਕੰਮ - ਤਾਪਮਾਨ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰੋ ਡਿਵਾਈਸ ਨੂੰ ਤਾਪਮਾਨ ਡਾਟਾ ਪ੍ਰਕਾਸ਼ਿਤ ਕਰਨ ਲਈ ਪ੍ਰੋਗਰਾਮ ਕਰੋ। 1. ਜੇ `temperature-sensor` ਐਪ ਪ੍ਰੋਜੈਕਟ ਖੁੱਲ੍ਹਾ ਨਹੀਂ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਖੋਲ੍ਹੋ। 1. ਪਿਛਲੇ ਪਾਠ 4 ਵਿੱਚ ਕੀਤੇ ਕਦਮਾਂ ਨੂੰ ਦੁਹਰਾਓ ਤਾਂ ਕਿ 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) ਪਾਠ 4 ਤੋਂ ਜ਼ਰੂਰ ਵੇਖੋ ਜੇ ਲੋੜ ਹੋਵੇ। 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` ਨੂੰ 10 ਮਿੰਟਾਂ ਲਈ ਸੈਟ ਕਰੋ: ```cpp time.sleep(10 * 60); ``` > 💁 `sleep` ਫੰਕਸ਼ਨ ਸਮਾਂ ਸੈਕੰਡਾਂ ਵਿੱਚ ਲੈਂਦਾ ਹੈ, ਇਸ ਲਈ ਇਸਨੂੰ ਪੜ੍ਹਨ ਲਈ ਆਸਾਨ ਬਣਾਉਣ ਲਈ ਮੁੱਲ ਇੱਕ ਗਣਨਾ ਦੇ ਨਤੀਜੇ ਵਜੋਂ ਦਿੱਤਾ ਜਾਂਦਾ ਹੈ। 1 ਮਿੰਟ ਵਿੱਚ 60 ਸੈਕੰਡ, ਇਸ ਲਈ 10 x (1 ਮਿੰਟ ਵਿੱਚ 60 ਸੈਕੰਡ) 10 ਮਿੰਟ ਦੀ ਡਿਲੇਅ ਦਿੰਦਾ ਹੈ। 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) ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਨੁਵਾਦ ਕੀਤਾ ਗਿਆ ਹੈ। ਜਦੋਂ ਕਿ ਅਸੀਂ ਸਹੀ ਹੋਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹਾਂ, ਕਿਰਪਾ ਕਰਕੇ ਧਿਆਨ ਦਿਓ ਕਿ ਸਵੈਚਾਲਿਤ ਅਨੁਵਾਦਾਂ ਵਿੱਚ ਗਲਤੀਆਂ ਜਾਂ ਅਸੁਚੱਜੇਪਣ ਹੋ ਸਕਦੇ ਹਨ। ਮੂਲ ਦਸਤਾਵੇਜ਼, ਜੋ ਇਸਦੀ ਮੂਲ ਭਾਸ਼ਾ ਵਿੱਚ ਹੈ, ਨੂੰ ਅਧਿਕਾਰਤ ਸਰੋਤ ਮੰਨਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਮਹੱਤਵਪੂਰਨ ਜਾਣਕਾਰੀ ਲਈ, ਪੇਸ਼ੇਵਰ ਮਨੁੱਖੀ ਅਨੁਵਾਦ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਅਨੁਵਾਦ ਦੀ ਵਰਤੋਂ ਤੋਂ ਪੈਦਾ ਹੋਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਗਲਤਫਹਿਮੀ ਜਾਂ ਗਲਤ ਵਿਆਖਿਆ ਲਈ ਅਸੀਂ ਜ਼ਿੰਮੇਵਾਰ ਨਹੀਂ ਹਾਂ।