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.
IoT-For-Beginners/translations/uk/2-farm/lessons/2-detect-soil-moisture/wio-terminal-soil-moisture.md

117 lines
8.6 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!--
CO_OP_TRANSLATOR_METADATA:
{
"original_hash": "0d55caa8c23d73635b7559102cd17b8a",
"translation_date": "2025-08-28T17:46:53+00:00",
"source_file": "2-farm/lessons/2-detect-soil-moisture/wio-terminal-soil-moisture.md",
"language_code": "uk"
}
-->
# Вимірювання вологості ґрунту - Wio Terminal
У цій частині уроку ви додасте ємнісний датчик вологості ґрунту до вашого Wio Terminal і зчитуватимете значення з нього.
## Обладнання
Для Wio Terminal потрібен ємнісний датчик вологості ґрунту.
Датчик, який ви будете використовувати, — це [Ємнісний датчик вологості ґрунту](https://www.seeedstudio.com/Grove-Capacitive-Moisture-Sensor-Corrosion-Resistant.html), який вимірює вологість ґрунту, визначаючи його ємність — властивість, що змінюється залежно від вологості ґрунту. Зі збільшенням вологості ґрунту напруга зменшується.
Це аналоговий датчик, тому він підключається до аналогових контактів на Wio Terminal, використовуючи вбудований АЦП для створення значення в діапазоні від 0 до 1023.
### Підключення датчика вологості ґрунту
Датчик вологості ґрунту Grove можна підключити до конфігурованого аналогового/цифрового порту Wio Terminal.
#### Завдання - підключення датчика вологості ґрунту
Підключіть датчик вологості ґрунту.
![Датчик вологості ґрунту Grove](../../../../../translated_images/grove-capacitive-soil-moisture-sensor.e7f0776cce30e78be5cc5a07839385fd6718857f31b5bf5ad3d0c73c83b2f0ef.uk.png)
1. Вставте один кінець кабелю Grove у роз'єм на датчику вологості ґрунту. Він вставляється лише в одному напрямку.
1. З відключеним Wio Terminal від комп'ютера або іншого джерела живлення підключіть інший кінець кабелю Grove до правого роз'єму Grove на Wio Terminal, якщо дивитися на екран. Це роз'єм, який знаходиться найдалі від кнопки живлення.
![Датчик вологості ґрунту Grove, підключений до правого роз'єму](../../../../../translated_images/wio-soil-moisture-sensor.46919b61c3f6cb7497662251b29038ee0e57a4c8b9d071feb996c3b0d7f65aaf.uk.png)
1. Вставте датчик вологості ґрунту в ґрунт. На ньому є «лінія найвищого положення» — біла лінія через датчик. Вставте датчик до цієї лінії, але не глибше.
![Датчик вологості ґрунту Grove у ґрунті](../../../../../translated_images/soil-moisture-sensor-in-soil.bfad91002bda5e960f8c51ee64b02ee59b32c8c717e3515a2c945f33e614e403.uk.png)
1. Тепер ви можете підключити Wio Terminal до комп'ютера.
## Програмування датчика вологості ґрунту
Тепер Wio Terminal можна запрограмувати для використання підключеного датчика вологості ґрунту.
### Завдання - програмування датчика вологості ґрунту
Програмуйте пристрій.
1. Створіть абсолютно новий проєкт для Wio Terminal, використовуючи PlatformIO. Назвіть цей проєкт `soil-moisture-sensor`. Додайте код у функцію `setup`, щоб налаштувати послідовний порт.
> ⚠️ Ви можете звернутися до [інструкцій зі створення проєкту PlatformIO в проєкті 1, урок 1, якщо це необхідно](../../../1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md#create-a-platformio-project).
1. Для цього датчика немає бібліотеки, але ви можете зчитувати дані з аналогового контакту, використовуючи вбудовану функцію Arduino [`analogRead`](https://www.arduino.cc/reference/en/language/functions/analog-io/analogread/). Спочатку налаштуйте аналоговий контакт для введення, щоб можна було зчитувати значення, додавши наступне до функції `setup`.
```cpp
pinMode(A0, INPUT);
```
Це налаштовує контакт `A0`, комбінований аналоговий/цифровий контакт, як контакт введення, з якого можна зчитувати напругу.
1. Додайте наступне до функції `loop`, щоб зчитувати напругу з цього контакту:
```cpp
int soil_moisture = analogRead(A0);
```
1. Нижче цього коду додайте наступний код для виведення значення на послідовний порт:
```cpp
Serial.print("Soil Moisture: ");
Serial.println(soil_moisture);
```
1. Нарешті, додайте затримку в кінці на 10 секунд:
```cpp
delay(10000);
```
1. Зберіть і завантажте код на Wio Terminal.
> ⚠️ Ви можете звернутися до [інструкцій зі створення проєкту PlatformIO в проєкті 1, урок 1, якщо це необхідно](../../../1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md#write-the-hello-world-app).
1. Після завантаження ви можете моніторити вологість ґрунту за допомогою послідовного монітора. Додайте трохи води до ґрунту або витягніть датчик із ґрунту та спостерігайте за зміною значення.
```output
> 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 ---
Soil Moisture: 526
Soil Moisture: 529
Soil Moisture: 521
Soil Moisture: 494
Soil Moisture: 454
Soil Moisture: 456
Soil Moisture: 395
Soil Moisture: 388
Soil Moisture: 394
Soil Moisture: 391
```
У наведеному вище прикладі вихідних даних ви можете побачити, як напруга падає при додаванні води.
> 💁 Ви можете знайти цей код у папці [code/wio-terminal](../../../../../2-farm/lessons/2-detect-soil-moisture/code/wio-terminal).
😀 Програма для датчика вологості ґрунту була успішною!
---
**Відмова від відповідальності**:
Цей документ був перекладений за допомогою сервісу автоматичного перекладу [Co-op Translator](https://github.com/Azure/co-op-translator). Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ на його рідній мові слід вважати авторитетним джерелом. Для критичної інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникають внаслідок використання цього перекладу.