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.
118 lines
11 KiB
118 lines
11 KiB
# ತಾಪಮಾನವನ್ನು ಅಳತೆಮಾಡಿ - ರಾಸ್ಪबेರಿ ಪೈ
|
|
|
|
ಪಾಠದ ಈ ಭಾಗದಲ್ಲಿ, ನಿಮ್ಮ ರಾಸ್ಪಬೆರಿ ಪೈಗೆ ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಅನ್ನು ಸೇರಿಸುವಿರಿ.
|
|
|
|
## ಹಾರ್ಡ್ವೇರ್
|
|
|
|
ನೀವು ಬಳಸುವ ಸೆನ್ಸಾರ್ ಎಂದರೆ [DHT11 ತೇವಾಂಶ ಮತ್ತು ತಾಪಮಾನ ಸೆನ್ಸಾರ್](https://www.seeedstudio.com/Grove-Temperature-Humidity-Sensor-DHT11.html), ಇದು ಒಂದೇ ಪ್ಯಾಕೇಜ್ನಲ್ಲಿ 2 ಸೆನ್ಸಾರ್ಗಳನ್ನು ಸಂಯೋಜಿಸಿದೆ. ಇದು ಅಲ್ಲದೆ, ವಾಣಿಜ್ಯವಾಗಿ ಲಭ್ಯವಿರುವ ಹಲವು ಸೆನ್ಸಾರ್ಗಳಲ್ಲಿ ತಾಪಮಾನ, ತೇವಾಂಶ ಮತ್ತು ಕೆಲವೊಮ್ಮೆ ವಾಯುಮಂಡಲದ ಒತ್ತಡವನ್ನು ಸಂಯೋಜಿಸುವವುಗಳು ಜನಪ್ರಿಯವಾಗಿವೆ. ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಭಾಗವು ನೆಗೆಟಿವ್ ತಾಪಮಾನ ನಿರೂಪಕ (NTC) ಥರ್ಮಿಸ್ಟರ್ ಆಗಿದ್ದು, ಇದು ತಾಪಮಾನ ಹೆಚ್ಚಾದಂತೆ ಪ್ರತಿರೋಧ ಕಡಿಮೆಯಾಗುತ್ತದೆ.
|
|
|
|
ಇದು ಡಿಜಿಟಲ್ ಸೆನ್ಸರ್ ಆಗಿದ್ದು, ಇದರಲ್ಲಿ ತಾಪಮಾನ ಮತ್ತು ತೇವಾಂಶ ಡೇಟಾವನ್ನು ಒಳಗೊಂಡಿರುವ ಡಿಜಿಟಲ್ ಸಿಗ್ನಲ್ ನಿರ್ಮಿಸಲು ಒಂದು ಅನ್ಬೋರ್ಡ್ ಎಡಿಸಿ (ADC) ಇದೆ, ಇದನ್ನು ಮೈಕ್ರೋಕಂಟ್ರೋಲರ್ ಓದಬಹುದು.
|
|
|
|
### ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಅನ್ನು ಸಂಪರ್ಕಿಸಿ
|
|
|
|
ಗ್ರೋವ್ ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಅನ್ನು ರಾಸ್ಪಬೆರಿ ಪೈಯಿಗೆ ಸಂಪರ್ಕಿಸಬಹುದು.
|
|
|
|
#### ಕಾರ್ಯ
|
|
|
|
ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಸಂಪರ್ಕಿಸಿ
|
|
|
|

|
|
|
|
1. ಗ್ರೋವ್ ಕೇಬಲ್ನ ಒಂದು ತುದಿಯನ್ನು ತೇವಾಂಶ ಮತ್ತು ತಾಪಮಾನ ಸೆನ್ಸರ್ ಸೊಕೆಟ್ನಲ್ಲಿ ಸೇರ್ಪಡೆ ಮಾಡಿ. ಇದು ಮಾತ್ರ ಒಂದು ದಿಕ್ಕಿನಲ್ಲಿ ಹೋಗುತ್ತದೆ.
|
|
|
|
1. ರಾಸ್ಪಬೆರಿ ಪೈ ಆಫ್ ಆಗಿದ್ದಾಗ, ಗ್ರೋವ್ ಕೇಬಲ್ನ ಇನ್ನೊಂದು ತುದಿಯನ್ನು ಪೈಗೆ ಲಗತ್ತಾಯಿಸಿರುವ ಗ್ರೋವ್ ಬೇಸ್ ಹೆಟ್ನ **D5** ಎಂದು ಗುರುತಿಸಲಾದ ಡಿಜಿಟಲ್ ಸೊಕೆಟ್ನಿಗೆ ಸಂಪರ್ಕಿಸಿ. ಈ ಸೊಕೆಟಿನು ಎಡಮುರಿ ಬಳಿ ಎರಡನೆಯದು, GPIO ಪಿನ್ಗಳ ಬಳಿಯ ಸಾಲಿನಲ್ಲಿ ಇದೆ.
|
|
|
|

|
|
|
|
## ತಾಪಮಾನ ಸೆನ್ಸಾರ್ನ್ನು ಪ್ರೋಗ್ರಾಮ್ ಮಾಡಿ
|
|
|
|
ಉಪಕರಣ ಈಗ ಸಂಪರ್ಕಿಸಿದ ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಬಳಸಲು ಪ್ರೋಗ್ರಾಮ್ ಮಾಡಬಹುದು.
|
|
|
|
### ಕಾರ್ಯ
|
|
|
|
ಉಪಕರಣವನ್ನು ಪ್ರೋಗ್ರಾಮ್ ಮಾಡಿ.
|
|
|
|
1. ಪೈ ಅನ್ನು ಪವರ್ ಅಪ್ ಮಾಡಿ ಮತ್ತು ಬೂಟ್ ಆಗುವವರೆಗೆ ಕಾಯಿರಿ
|
|
|
|
1. VS ಕೋಡ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಿ, ನೇರವಾಗಿ ಪೈ ಮೇಲೆ ಅಥವಾ ರಿಮೋಟ್ SSH ವಿಸ್ತಾರಣಾ ಮೂಲಕ ಸಂಪರ್ಕಿಸಿ.
|
|
|
|
> ⚠️ ಅಗತ್ಯವಿದ್ದರೆ ಪಾಠ 1 ರಲ್ಲಿ VS ಕೋಡ್ ಸೆಟ್ ಅಪ್ ಮತ್ತು ಆರಂಭಿಸುವ ಸೂಚನೆಗಳನ್ನು ನೋಡಿ (../../../1-getting-started/lessons/1-introduction-to-iot/pi.md).
|
|
|
|
1. ಟರ್ಮಿನಲ್ನಿಂದ, `pi` ಬಳಕೆದಾರರ ಮನೆ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ `temperature-sensor` ಎಂಬ ಹೊಸ ಫೋಲ್ಡರ್ ತಯಾರಿಸಿ. ಈ ಫೋಲ್ಡರ್ನಲ್ಲಿ `app.py` ಎಂಬ ಫೈಲ್ ರಚಿಸಿ:
|
|
|
|
```sh
|
|
mkdir temperature-sensor
|
|
cd temperature-sensor
|
|
touch app.py
|
|
```
|
|
|
|
1. ಈ ಫೋಲ್ಡರ್ ಅನ್ನು VS ಕೋಡ್ನಲ್ಲಿ ತೆರೆಯಿರಿ
|
|
|
|
1. ತಾಪಮಾನ ಮತ್ತು ತೇವಾಂಶ ಸೆನ್ಸಾರ್ ಬಳಸಲು, ಹೆಚ್ಚುವರಿ ಪಿಪ್ ಪ್ಯಾಕೇಜ್ ಅನ್ನುインಸ್ಟಾಲ್ ಮಾಡಬೇಕಾಗುತ್ತದೆ. VS ಕೋಡ್ನ ಟರ್ಮಿನಲ್ನಲ್ಲಿ ಕೆಳಗಿನ ಆಜ್ಞೆಯನ್ನು ಪೈ ಮೇಲೆ ಈ ಪಿಪ್ ಪ್ಯಾಕೇಜ್ ಇನ್ಸ್ಟಾಲ್ ಮಾಡಲು ಬಳಸಿರಿ:
|
|
|
|
```sh
|
|
pip3 install seeed-python-dht
|
|
```
|
|
|
|
1. ಬೇಕಾಗುವ ಗ್ರಂಥಾಲಯಗಳನ್ನು ಇಂಪೋರ್ಟ್ ಮಾಡಲು `app.py` ಫೈಲ್ಗೆ ಈ ಕೆಳಗಿನ ಕೋಡ್ ಸೇರಿಸಿ:
|
|
|
|
```python
|
|
import time
|
|
from seeed_dht import DHT
|
|
```
|
|
|
|
`from seeed_dht import DHT` ಹೇಳಿಕೆಯಲ್ಲಿ `seeed_dht` ಮ್ಯಾಡ್ಯೂಲ್ನಿಂದ ಗ್ರೋವ್ ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಅನ್ನು ಸಂವಹನ ಮಾಡಲು `DHT` ಸೆನ್ಸಾರ್ ಕ್ಲಾಸ್ ಅನ್ನು ಆಮದು ಮಾಡಿಕೊಳ್ಳಲಾಗುತ್ತದೆ.
|
|
|
|
1. ಮೇಲಿನ ಕೋಡಿನ ನಂತರ, ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ನಿರ್ವಹಿಸುವ ಕ್ಲಾಸ್ನ ಒಂದು ಉದಾಹರಣೆಯನ್ನು ರಚಿಸಲು ಕೆಳಗಿನ ಕೋಡ್ ಸೇರಿಸಿ:
|
|
|
|
```python
|
|
sensor = DHT("11", 5)
|
|
```
|
|
|
|
ಇದು ಡಿಜಿಟಲ್ ತೇವಾಂಶ ಮತ್ತು ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಆಯ್ಕೆಮಾಡುವ `DHT` ಕ್ಲಾಸ್ನ ಉದಾಹರಣೆಯನ್ನು ಘೋಷಿಸುತ್ತದೆ. ಮೊದಲ ಪರಾಮೀಟರ್ ಕೋಡಿಗೆ ಉಪಯೋಗಿಸುವ ಸೆನ್ಸಾರ್ *DHT11* ಸೆನ್ಸಾರ್ ಎಂದು ತಿಳಿಸುತ್ತದೆ - ನೀವು ಬಳಸುತ್ತಿರುವ ಲೈಬ್ರೇರಿಯಲ್ಲಿ ಈ ಸೆನ್ಸಾರ್ನ ಇತರ ಪ್ರಕಾರಗಳನ್ನು ಸಹ ಬೆಂಬಲಿಸಲಾಗಿದೆ. ಎರಡನೇ ಪರಾಮೀಟರ್ ಗ್ರೋವ್ ಬೇಸ್ ಹೆಟ್ನ ಡಿಜಿಟಲ್ ಪೋರ್ಟ್ `D5` ಗೆ ಸೆನ್ಸಾರ್ ಸಂಪರ್ಕಿತವಾಗಿದೆ ಎಂದು ಕೋಡಿಗೆ ಹೇಳುತ್ತದೆ.
|
|
|
|
> ✅ ನೆನಪಿರಲಿ, ಎಲ್ಲಾ ಸೊಕೆಟ್ಗಳಿಗೆ ವಿಭಿನ್ನ ಪಿನ್ ಸಂಖ್ಯೆಗಳು ಇವೆ. ಪಿನ್ಗಳು 0, 2, 4, ಮತ್ತು 6 ಅನಲಾಗ್ ಪಿನ್ಗಳಾಗಿರುತ್ತವೆ, 5, 16, 18, 22, 24, ಮತ್ತು 26 ಡಿಜಿಟಲ್ ಪಿನ್ಗಳಾಗಿವೆ.
|
|
|
|
1. ಮೇಲಿನ ಕೋಡ್ ನಂತರ, ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಮೌಲ್ಯವನ್ನು ಪತ್ತೆಮಾಡಿ ಕನ್ಸೋಲನಿಗೆ ಮುದ್ರಿಸುವ ಅನಂತ ಲೂಪನ್ನು ಸೇರಿಸಿ:
|
|
|
|
```python
|
|
while True:
|
|
_, temp = sensor.read()
|
|
print(f'Temperature {temp}°C')
|
|
```
|
|
|
|
`sensor.read()` ಕರೆ ತೇವಾಂಶ ಮತ್ತು ತಾಪಮಾನದ ಟ್ಯೂಪಲ್ ಅನ್ನು ನೀಡುತ್ತದೆ. ನೀವುಗೆ ಮಾತ್ರ ತಾಪಮಾನ ಮೌಲ್ಯ ಬೇಕಾಗಿದ್ದು, ಆದ್ದರಿಂದ ತೇವಾಂಶವನ್ನು ನಿರ್ಲಕ್ಷಿಸಲಾಗುತ್ತದೆ. ನಂತರ ತಾಪಮಾನ ಮೌಲ್ಯವನ್ನು ಕನ್ಸೋಲಿಗೆ ಅವು ಮಂದಿಸುತ್ತವೆ.
|
|
|
|
1. `loop` ಬಡಿಯ ಕೊನೆಯಲ್ಲಿ ಹತ್ತು ಸೆಕೆಂಡುಗಳ ಚಿಕ್ಕ ನಿದ್ರಾವಸ್ಥೆಯನ್ನು ಸೇರಿಸಿ ಏಕೆಂದರೆ ತಾಪಮಾನ ಮಟ್ಟಗಳನ್ನು ನಿರಂತರವಾಗಿ ಪರಿಶೀಲಿಸುವ ಅಗತ್ಯವಿಲ್ಲ. ನಿದ್ರೆ ಉಪಕರಣದ ವಿದ್ಯುತ್ ಸೇವನೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ.
|
|
|
|
```python
|
|
time.sleep(10)
|
|
```
|
|
|
|
1. VS ಕೋಡ್ ಟರ್ಮಿನಲ್ನಿಂದ, ನಿಮ್ಮ Python ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ರನ್ ಮಾಡಲು ಕೆಳಗಿನ ಆಜ್ಞೆಯನ್ನು ನಡೆಸಿ:
|
|
|
|
```sh
|
|
python3 app.py
|
|
```
|
|
|
|
ತಾಪಮಾನ ಮೌಲ್ಯಗಳು ಕನ್ಸೋಲಿಗೆ ಔಟ್ಪುಟ್ ಆಗುತ್ತಿರುವುದನ್ನು ನೀವು ನೋಡಬಲ್ಲಿರಿ. ಸೆನ್ಸಾರ್ ಅನ್ನು ಬಿಸಿಯಾಗಿಸಲು ಇಡೀ ನಿಮ್ಮ ಬೆರಳು ಒತ್ತುವುದು ಅಥವಾ ಫ್ಯಾನ್ ಬಳಸಿ ಮೌಲ್ಯಗಳು ಬದಲಾಗುವುದನ್ನು ನೋಡಲು ಪ್ರಯತ್ನಿಸಿ:
|
|
|
|
```output
|
|
pi@raspberrypi:~/temperature-sensor $ python3 app.py
|
|
Temperature 26°C
|
|
Temperature 26°C
|
|
Temperature 28°C
|
|
Temperature 30°C
|
|
Temperature 32°C
|
|
```
|
|
|
|
> 💁 ನೀವು ಈ ಕೋಡ್ ಅನ್ನು [code-temperature/pi](../../../../../2-farm/lessons/1-predict-plant-growth/code-temperature/pi) ಫೋಲ್ಡರ್ನಲ್ಲಿ ಕಂಡುಹಿಡಿಯಬಹುದು.
|
|
|
|
😀 ನಿಮ್ಮ ತಾಪಮಾನ ಸೆನ್ಸಾರ್ ಪ್ರೋಗ್ರಾಂ ಯಶಸ್ವಿಯಾಯಿತು!
|
|
|
|
---
|
|
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
|
|
**ಅಸ್ಪಷ್ಟತೆ**:
|
|
ಈ ದಸ್ತಾವೇಜನ್ನು AI ಅನುವಾದ ಸೇವೆ [Co-op Translator](https://github.com/Azure/co-op-translator) ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ನಿಖರತೆಗೆ ಪ್ರಯತ್ನಿಸುವಾಗ, ಸ್ವಯಂಚಾಲಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಮಾನ್ಯತೆಗಳಿದ್ದಂತೆ ಇರಬಹುದು. ಮೂಲ ದಸ್ತಾವೇಜು ತನ್ನ ಮೂಲಭಾಷೆಯಲ್ಲಿ ಅಧಿಕೃತ ಮೂಲವೆಂದು ಪರಿಗಣಿಸಬೇಕು. ಮಹತ್ವದ ಮಾಹಿತಿ için ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗುತ್ತದೆ. ಈ ಅನುವಾದವನ್ನು ಬಳಸದಾಗ ಉಂಟಾಗುವ ಯಾವುದೇ ತಪ್ಪು ತಿಳಿವಳಿಕೆ ಅಥವಾ ಅರ್ಥಭ್ರಮೆಯೊಂದಿಗಿನ ಹೊಣೆಗಾರಿಕೆ ನಮ್ಮದಾಗುವುದಿಲ್ಲ.
|
|
<!-- CO-OP TRANSLATOR DISCLAIMER END --> |