12 KiB
ਤਾਪਮਾਨ ਮਾਪੋ - Wio ਟਰਮੀਨਲ
ਇਸ ਪਾਠ ਦੇ ਇਸ ਹਿੱਸੇ ਵਿੱਚ, ਤੁਸੀਂ ਆਪਣੇ Wio ਟਰਮੀਨਲ ਵਿੱਚ ਇੱਕ ਤਾਪਮਾਨ ਸੈਂਸਰ ਸ਼ਾਮਲ ਕਰੋਗੇ ਅਤੇ ਇਸ ਤੋਂ ਤਾਪਮਾਨ ਦੇ ਮੁੱਲ ਪੜ੍ਹੋਗੇ।
ਹਾਰਡਵੇਅਰ
Wio ਟਰਮੀਨਲ ਨੂੰ ਇੱਕ ਤਾਪਮਾਨ ਸੈਂਸਰ ਦੀ ਲੋੜ ਹੈ।
ਤੁਸੀਂ ਜੋ ਸੈਂਸਰ ਵਰਤੋਗੇ ਉਹ ਹੈ DHT11 ਹਿਉਮਿਡਿਟੀ ਅਤੇ ਤਾਪਮਾਨ ਸੈਂਸਰ, ਜੋ ਇੱਕ ਪੈਕੇਜ ਵਿੱਚ 2 ਸੈਂਸਰਾਂ ਨੂੰ ਜੋੜਦਾ ਹੈ। ਇਹ ਕਾਫ਼ੀ ਲੋਕਪ੍ਰਿਯ ਹੈ, ਕਈ ਵਪਾਰਕ ਤੌਰ 'ਤੇ ਉਪਲਬਧ ਸੈਂਸਰਾਂ ਦੇ ਨਾਲ ਜੋ ਤਾਪਮਾਨ, ਨਮੀ ਅਤੇ ਕਈ ਵਾਰ ਵਾਤਾਵਰਣਕ ਦਬਾਅ ਨੂੰ ਜੋੜਦੇ ਹਨ। ਤਾਪਮਾਨ ਸੈਂਸਰ ਹਿੱਸਾ ਇੱਕ ਨੈਗੇਟਿਵ ਟੈਮਪਰੇਚਰ ਕੋਐਫੀਸ਼ੀਅੰਟ (NTC) ਥਰਮਿਸਟਰ ਹੈ, ਇੱਕ ਥਰਮਿਸਟਰ ਜਿਸ ਵਿੱਚ ਤਾਪਮਾਨ ਵਧਣ ਨਾਲ ਰੋਧ ਘਟਦਾ ਹੈ।
ਇਹ ਇੱਕ ਡਿਜ਼ੀਟਲ ਸੈਂਸਰ ਹੈ, ਇਸ ਲਈ ਇਸ ਵਿੱਚ ਇੱਕ ਆਨਬੋਰਡ ADC ਹੈ ਜੋ ਤਾਪਮਾਨ ਅਤੇ ਨਮੀ ਡਾਟਾ ਵਾਲਾ ਡਿਜ਼ੀਟਲ ਸਿਗਨਲ ਬਣਾਉਂਦਾ ਹੈ, ਜਿਸਨੂੰ ਮਾਈਕਰੋਕੰਟਰੋਲਰ ਪੜ੍ਹ ਸਕਦਾ ਹੈ।
ਤਾਪਮਾਨ ਸੈਂਸਰ ਨੂੰ ਜੋੜੋ
Grove ਤਾਪਮਾਨ ਸੈਂਸਰ ਨੂੰ Wio ਟਰਮੀਨਲ ਦੇ ਡਿਜ਼ੀਟਲ ਪੋਰਟ ਨਾਲ ਜੋੜਿਆ ਜਾ ਸਕਦਾ ਹੈ।
ਕੰਮ - ਤਾਪਮਾਨ ਸੈਂਸਰ ਨੂੰ ਜੋੜੋ
ਤਾਪਮਾਨ ਸੈਂਸਰ ਨੂੰ ਜੋੜੋ।
-
ਇੱਕ Grove ਕੇਬਲ ਦੇ ਇੱਕ ਸਿਰੇ ਨੂੰ ਹਿਉਮਿਡਿਟੀ ਅਤੇ ਤਾਪਮਾਨ ਸੈਂਸਰ ਦੇ ਸਾਕਟ ਵਿੱਚ ਪਾਓ। ਇਹ ਸਿਰਫ਼ ਇੱਕ ਹੀ ਦਿਸ਼ਾ ਵਿੱਚ ਜਾਵੇਗਾ।
-
ਆਪਣੇ Wio ਟਰਮੀਨਲ ਨੂੰ ਕੰਪਿਊਟਰ ਜਾਂ ਹੋਰ ਪਾਵਰ ਸਪਲਾਈ ਤੋਂ ਡਿਸਕਨੈਕਟ ਕਰਕੇ, Grove ਕੇਬਲ ਦੇ ਦੂਜੇ ਸਿਰੇ ਨੂੰ Wio ਟਰਮੀਨਲ ਦੇ ਸਕ੍ਰੀਨ ਵੱਲ ਦੇਖਦੇ ਹੋਏ ਸੱਜੇ ਪਾਸੇ ਵਾਲੇ Grove ਸਾਕਟ ਵਿੱਚ ਜੋੜੋ। ਇਹ ਸਾਕਟ ਪਾਵਰ ਬਟਨ ਤੋਂ ਸਭ ਤੋਂ ਦੂਰ ਹੈ।
ਤਾਪਮਾਨ ਸੈਂਸਰ ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਕਰੋ
ਹੁਣ Wio ਟਰਮੀਨਲ ਨੂੰ ਜੁੜੇ ਤਾਪਮਾਨ ਸੈਂਸਰ ਨੂੰ ਵਰਤਣ ਲਈ ਪ੍ਰੋਗਰਾਮ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਕੰਮ - ਤਾਪਮਾਨ ਸੈਂਸਰ ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਕਰੋ
ਡਿਵਾਈਸ ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਕਰੋ।
-
PlatformIO ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਨਵਾਂ Wio ਟਰਮੀਨਲ ਪ੍ਰੋਜੈਕਟ ਬਣਾਓ। ਇਸ ਪ੍ਰੋਜੈਕਟ ਦਾ ਨਾਮ
temperature-sensor
ਰੱਖੋ।setup
ਫੰਕਸ਼ਨ ਵਿੱਚ ਕੋਡ ਸ਼ਾਮਲ ਕਰੋ ਤਾਂ ਜੋ ਸੀਰੀਅਲ ਪੋਰਟ ਨੂੰ ਕਨਫਿਗਰ ਕੀਤਾ ਜਾ ਸਕੇ।⚠️ ਤੁਸੀਂ ਪ੍ਰੋਜੈਕਟ 1, ਪਾਠ 1 ਵਿੱਚ PlatformIO ਪ੍ਰੋਜੈਕਟ ਬਣਾਉਣ ਲਈ ਹਦਾਇਤਾਂ ਨੂੰ ਜ਼ਰੂਰਤ ਪੈਣ 'ਤੇ ਵੇਖ ਸਕਦੇ ਹੋ।
-
Seeed Grove ਹਿਉਮਿਡਿਟੀ ਅਤੇ ਤਾਪਮਾਨ ਸੈਂਸਰ ਲਾਇਬ੍ਰੇਰੀ ਲਈ ਇੱਕ ਲਾਇਬ੍ਰੇਰੀ ਡਿਪੈਂਡੈਂਸੀ ਪ੍ਰੋਜੈਕਟ ਦੇ
platformio.ini
ਫਾਈਲ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰੋ:lib_deps = seeed-studio/Grove Temperature And Humidity Sensor @ 1.0.1
⚠️ ਤੁਸੀਂ ਪ੍ਰੋਜੈਕਟ 1, ਪਾਠ 4 ਵਿੱਚ PlatformIO ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਲਾਇਬ੍ਰੇਰੀਆਂ ਸ਼ਾਮਲ ਕਰਨ ਲਈ ਹਦਾਇਤਾਂ ਨੂੰ ਜ਼ਰੂਰਤ ਪੈਣ 'ਤੇ ਵੇਖ ਸਕਦੇ ਹੋ।
-
ਫਾਈਲ ਦੇ ਉੱਪਰਲੇ ਹਿੱਸੇ ਵਿੱਚ, ਮੌਜੂਦਾ
#include <Arduino.h>
ਦੇ ਹੇਠਾਂ ਹੇਠ ਲਿਖੇ#include
ਡਾਇਰੈਕਟਿਵ ਸ਼ਾਮਲ ਕਰੋ:#include <DHT.h> #include <SPI.h>
ਇਹ ਸੈਂਸਰ ਨਾਲ ਇੰਟਰੈਕਟ ਕਰਨ ਲਈ ਲੋੜੀਂਦੇ ਫਾਈਲਾਂ ਨੂੰ ਇੰਪੋਰਟ ਕਰਦਾ ਹੈ।
DHT.h
ਹੈਡਰ ਫਾਈਲ ਸੈਂਸਰ ਲਈ ਕੋਡ ਸ਼ਾਮਲ ਕਰਦੀ ਹੈ, ਅਤੇSPI.h
ਹੈਡਰ ਸ਼ਾਮਲ ਕਰਨ ਨਾਲ ਇਹ ਯਕੀਨੀ ਬਣਦਾ ਹੈ ਕਿ ਸੈਂਸਰ ਨਾਲ ਗੱਲਬਾਤ ਕਰਨ ਲਈ ਲੋੜੀਂਦਾ ਕੋਡ ਐਪ ਨੂੰ ਕੰਪਾਇਲ ਕਰਨ ਵੇਲੇ ਲਿੰਕ ਕੀਤਾ ਗਿਆ ਹੈ। -
setup
ਫੰਕਸ਼ਨ ਤੋਂ ਪਹਿਲਾਂ, DHT ਸੈਂਸਰ ਨੂੰ ਡਿਕਲੇਅਰ ਕਰੋ:DHT dht(D0, DHT11);
ਇਹ
DHT
ਕਲਾਸ ਦਾ ਇੱਕ ਇੰਸਟੈਂਸ ਡਿਕਲੇਅਰ ਕਰਦਾ ਹੈ ਜੋ Digital Humidity ਅਤੇ Temperature ਸੈਂਸਰ ਨੂੰ ਮੈਨੇਜ ਕਰਦਾ ਹੈ। ਇਹ ਪੋਰਟD0
ਨਾਲ ਜੁੜਿਆ ਹੈ, ਜੋ Wio ਟਰਮੀਨਲ ਦੇ ਸੱਜੇ ਪਾਸੇ ਵਾਲਾ Grove ਸਾਕਟ ਹੈ। ਦੂਜਾ ਪੈਰਾਮੀਟਰ ਕੋਡ ਨੂੰ ਦੱਸਦਾ ਹੈ ਕਿ ਵਰਤਿਆ ਜਾ ਰਿਹਾ ਸੈਂਸਰ DHT11 ਹੈ - ਤੁਸੀਂ ਜੋ ਲਾਇਬ੍ਰੇਰੀ ਵਰਤ ਰਹੇ ਹੋ ਉਹ ਇਸ ਸੈਂਸਰ ਦੇ ਹੋਰ ਵੈਰੀਐਂਟਸ ਨੂੰ ਵੀ ਸਪੋਰਟ ਕਰਦੀ ਹੈ। -
setup
ਫੰਕਸ਼ਨ ਵਿੱਚ, ਸੀਰੀਅਲ ਕਨੈਕਸ਼ਨ ਸੈਟਅੱਪ ਕਰਨ ਲਈ ਕੋਡ ਸ਼ਾਮਲ ਕਰੋ:void setup() { Serial.begin(9600); while (!Serial) ; // Wait for Serial to be ready delay(1000); }
-
setup
ਫੰਕਸ਼ਨ ਦੇ ਅੰਤ ਵਿੱਚ, ਆਖਰੀdelay
ਤੋਂ ਬਾਅਦ, DHT ਸੈਂਸਰ ਨੂੰ ਸ਼ੁਰੂ ਕਰਨ ਲਈ ਇੱਕ ਕਾਲ ਸ਼ਾਮਲ ਕਰੋ:dht.begin();
-
loop
ਫੰਕਸ਼ਨ ਵਿੱਚ, ਸੈਂਸਰ ਨੂੰ ਕਾਲ ਕਰਨ ਅਤੇ ਤਾਪਮਾਨ ਨੂੰ ਸੀਰੀਅਲ ਪੋਰਟ 'ਤੇ ਪ੍ਰਿੰਟ ਕਰਨ ਲਈ ਕੋਡ ਸ਼ਾਮਲ ਕਰੋ:void loop() { float temp_hum_val[2] = {0}; dht.readTempAndHumidity(temp_hum_val); Serial.print("Temperature: "); Serial.print(temp_hum_val[1]); Serial.println ("°C"); delay(10000); }
ਇਹ ਕੋਡ 2 ਫਲੋਟਸ ਦੇ ਇੱਕ ਖਾਲੀ ਐਰੇ ਨੂੰ ਡਿਕਲੇਅਰ ਕਰਦਾ ਹੈ ਅਤੇ ਇਸਨੂੰ
DHT
ਇੰਸਟੈਂਸ 'ਤੇreadTempAndHumidity
ਕਾਲ ਵਿੱਚ ਪਾਸ ਕਰਦਾ ਹੈ। ਇਹ ਕਾਲ ਐਰੇ ਨੂੰ 2 ਮੁੱਲਾਂ ਨਾਲ ਭਰਦੀ ਹੈ - ਨਮੀ 0ਵੇਂ ਆਈਟਮ ਵਿੱਚ ਜਾਂਦੀ ਹੈ (ਯਾਦ ਰੱਖੋ ਕਿ C++ ਐਰੇਜ਼ 0-ਬੇਸਡ ਹੁੰਦੇ ਹਨ, ਇਸ ਲਈ 0ਵਾਂ ਆਈਟਮ ਐਰੇ ਦਾ 'ਪਹਿਲਾ' ਆਈਟਮ ਹੁੰਦਾ ਹੈ), ਅਤੇ ਤਾਪਮਾਨ 1ਵੇਂ ਆਈਟਮ ਵਿੱਚ ਜਾਂਦਾ ਹੈ।ਤਾਪਮਾਨ 1ਵੇਂ ਆਈਟਮ ਤੋਂ ਪੜ੍ਹਿਆ ਜਾਂਦਾ ਹੈ ਅਤੇ ਸੀਰੀਅਲ ਪੋਰਟ 'ਤੇ ਪ੍ਰਿੰਟ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।
🇺🇸 ਤਾਪਮਾਨ ਸੈਲਸੀਅਸ ਵਿੱਚ ਪੜ੍ਹਿਆ ਜਾਂਦਾ ਹੈ। ਅਮਰੀਕੀਆਂ ਲਈ, ਇਸਨੂੰ ਫੈਰਨਹਾਈਟ ਵਿੱਚ ਬਦਲਣ ਲਈ, ਸੈਲਸੀਅਸ ਮੁੱਲ ਨੂੰ 5 ਨਾਲ ਵੰਡੋ, ਫਿਰ 9 ਨਾਲ ਗੁਣਾ ਕਰੋ, ਫਿਰ 32 ਸ਼ਾਮਲ ਕਰੋ। ਉਦਾਹਰਨ ਲਈ, 20°C ਦਾ ਤਾਪਮਾਨ ਪੜ੍ਹਨਾ ((20/5)*9) + 32 = 68°F ਬਣ ਜਾਂਦਾ ਹੈ।
-
ਕੋਡ ਨੂੰ ਬਣਾਓ ਅਤੇ Wio ਟਰਮੀਨਲ 'ਤੇ ਅੱਪਲੋਡ ਕਰੋ।
⚠️ ਤੁਸੀਂ ਪ੍ਰੋਜੈਕਟ 1, ਪਾਠ 1 ਵਿੱਚ PlatformIO ਪ੍ਰੋਜੈਕਟ ਬਣਾਉਣ ਲਈ ਹਦਾਇਤਾਂ ਨੂੰ ਜ਼ਰੂਰਤ ਪੈਣ 'ਤੇ ਵੇਖ ਸਕਦੇ ਹੋ।
-
ਅੱਪਲੋਡ ਹੋਣ ਤੋਂ ਬਾਅਦ, ਤੁਸੀਂ ਸੀਰੀਅਲ ਮਾਨੀਟਰ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਤਾਪਮਾਨ ਦੀ ਨਿਗਰਾਨੀ ਕਰ ਸਕਦੇ ਹੋ:
> Executing task: platformio device monitor < --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time --- More details at http://bit.ly/pio-monitor-filters --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 --- --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H --- Temperature: 25.00°C Temperature: 25.00°C Temperature: 25.00°C Temperature: 24.00°C
💁 ਤੁਸੀਂ ਇਹ ਕੋਡ code-temperature/wio-terminal ਫੋਲਡਰ ਵਿੱਚ ਲੱਭ ਸਕਦੇ ਹੋ।
😀 ਤੁਹਾਡਾ ਤਾਪਮਾਨ ਸੈਂਸਰ ਪ੍ਰੋਗਰਾਮ ਸਫਲ ਰਿਹਾ!
ਅਸਵੀਕਤੀ:
ਇਹ ਦਸਤਾਵੇਜ਼ AI ਅਨੁਵਾਦ ਸੇਵਾ Co-op Translator ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਨੁਵਾਦ ਕੀਤਾ ਗਿਆ ਹੈ। ਹਾਲਾਂਕਿ ਅਸੀਂ ਸਹੀਅਤ ਲਈ ਯਤਨਸ਼ੀਲ ਹਾਂ, ਕਿਰਪਾ ਕਰਕੇ ਧਿਆਨ ਦਿਓ ਕਿ ਸਵੈਚਾਲਿਤ ਅਨੁਵਾਦਾਂ ਵਿੱਚ ਗਲਤੀਆਂ ਜਾਂ ਅਸੁੱਤੀਆਂ ਹੋ ਸਕਦੀਆਂ ਹਨ। ਇਸ ਦੀ ਮੂਲ ਭਾਸ਼ਾ ਵਿੱਚ ਮੌਜੂਦ ਅਸਲ ਦਸਤਾਵੇਜ਼ ਨੂੰ ਅਧਿਕਾਰਤ ਸਰੋਤ ਮੰਨਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਮਹੱਤਵਪੂਰਨ ਜਾਣਕਾਰੀ ਲਈ, ਪੇਸ਼ੇਵਰ ਮਨੁੱਖੀ ਅਨੁਵਾਦ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਅਨੁਵਾਦ ਦੀ ਵਰਤੋਂ ਤੋਂ ਪੈਦਾ ਹੋਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਗਲਤਫਹਿਮੀ ਜਾਂ ਗਲਤ ਵਿਆਖਿਆ ਲਈ ਅਸੀਂ ਜ਼ਿੰਮੇਵਾਰ ਨਹੀਂ ਹਾਂ।