8.6 KiB
Вимірювання вологості ґрунту - Wio Terminal
У цій частині уроку ви додасте ємнісний датчик вологості ґрунту до вашого Wio Terminal і зчитуватимете значення з нього.
Обладнання
Для Wio Terminal потрібен ємнісний датчик вологості ґрунту.
Датчик, який ви будете використовувати, — це Ємнісний датчик вологості ґрунту, який вимірює вологість ґрунту, визначаючи його ємність — властивість, що змінюється залежно від вологості ґрунту. Зі збільшенням вологості ґрунту напруга зменшується.
Це аналоговий датчик, тому він підключається до аналогових контактів на Wio Terminal, використовуючи вбудований АЦП для створення значення в діапазоні від 0 до 1023.
Підключення датчика вологості ґрунту
Датчик вологості ґрунту Grove можна підключити до конфігурованого аналогового/цифрового порту Wio Terminal.
Завдання - підключення датчика вологості ґрунту
Підключіть датчик вологості ґрунту.
-
Вставте один кінець кабелю Grove у роз'єм на датчику вологості ґрунту. Він вставляється лише в одному напрямку.
-
З відключеним Wio Terminal від комп'ютера або іншого джерела живлення підключіть інший кінець кабелю Grove до правого роз'єму Grove на Wio Terminal, якщо дивитися на екран. Це роз'єм, який знаходиться найдалі від кнопки живлення.
- Вставте датчик вологості ґрунту в ґрунт. На ньому є «лінія найвищого положення» — біла лінія через датчик. Вставте датчик до цієї лінії, але не глибше.
- Тепер ви можете підключити Wio Terminal до комп'ютера.
Програмування датчика вологості ґрунту
Тепер Wio Terminal можна запрограмувати для використання підключеного датчика вологості ґрунту.
Завдання - програмування датчика вологості ґрунту
Програмуйте пристрій.
-
Створіть абсолютно новий проєкт для Wio Terminal, використовуючи PlatformIO. Назвіть цей проєкт
soil-moisture-sensor
. Додайте код у функціюsetup
, щоб налаштувати послідовний порт.⚠️ Ви можете звернутися до інструкцій зі створення проєкту PlatformIO в проєкті 1, урок 1, якщо це необхідно.
-
Для цього датчика немає бібліотеки, але ви можете зчитувати дані з аналогового контакту, використовуючи вбудовану функцію Arduino
analogRead
. Спочатку налаштуйте аналоговий контакт для введення, щоб можна було зчитувати значення, додавши наступне до функціїsetup
.pinMode(A0, INPUT);
Це налаштовує контакт
A0
, комбінований аналоговий/цифровий контакт, як контакт введення, з якого можна зчитувати напругу. -
Додайте наступне до функції
loop
, щоб зчитувати напругу з цього контакту:int soil_moisture = analogRead(A0);
-
Нижче цього коду додайте наступний код для виведення значення на послідовний порт:
Serial.print("Soil Moisture: "); Serial.println(soil_moisture);
-
Нарешті, додайте затримку в кінці на 10 секунд:
delay(10000);
-
Зберіть і завантажте код на Wio Terminal.
⚠️ Ви можете звернутися до інструкцій зі створення проєкту PlatformIO в проєкті 1, урок 1, якщо це необхідно.
-
Після завантаження ви можете моніторити вологість ґрунту за допомогою послідовного монітора. Додайте трохи води до ґрунту або витягніть датчик із ґрунту та спостерігайте за зміною значення.
> 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.
😀 Програма для датчика вологості ґрунту була успішною!
Відмова від відповідальності:
Цей документ був перекладений за допомогою сервісу автоматичного перекладу Co-op Translator. Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ на його рідній мові слід вважати авторитетним джерелом. Для критичної інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникають внаслідок використання цього перекладу.