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/1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md

222 lines
18 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": "a4f0c166010e31fd7b6ca20bc88dec6d",
"translation_date": "2025-08-28T17:20:55+00:00",
"source_file": "1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md",
"language_code": "uk"
}
-->
# Wio Terminal
[Wio Terminal від Seeed Studios](https://www.seeedstudio.com/Wio-Terminal-p-4509.html) — це мікроконтролер, сумісний з Arduino, з вбудованим WiFi, деякими датчиками та виконавчими пристроями, а також портами для додавання додаткових датчиків і виконавчих пристроїв, використовуючи апаратну екосистему під назвою [Grove](https://www.seeedstudio.com/category/Grove-c-1003.html).
![Wio Terminal від Seeed Studios](../../../../../translated_images/wio-terminal.b8299ee16587db9aa9e05fabf9721bccd9eb8fb541b7c1a8267241282d81b603.uk.png)
## Налаштування
Щоб використовувати Wio Terminal, вам потрібно встановити безкоштовне програмне забезпечення на ваш комп'ютер. Також необхідно оновити прошивку Wio Terminal перед підключенням до WiFi.
### Завдання - налаштування
Встановіть необхідне програмне забезпечення та оновіть прошивку.
1. Встановіть Visual Studio Code (VS Code). Це редактор, який ви будете використовувати для написання коду пристрою на C/C++. Ознайомтеся з [документацією VS Code](https://code.visualstudio.com?WT.mc_id=academic-17441-jabenn) для інструкцій щодо встановлення VS Code.
> 💁 Іншим популярним середовищем розробки для Arduino є [Arduino IDE](https://www.arduino.cc/en/software). Якщо ви вже знайомі з цим інструментом, то можете використовувати його замість VS Code і PlatformIO, але уроки будуть давати інструкції на основі використання VS Code.
1. Встановіть розширення PlatformIO для VS Code. Це розширення для VS Code, яке підтримує програмування мікроконтролерів на C/C++. Ознайомтеся з [документацією розширення PlatformIO](https://marketplace.visualstudio.com/items?WT.mc_id=academic-17441-jabenn&itemName=platformio.platformio-ide) для інструкцій щодо встановлення цього розширення у VS Code. Це розширення залежить від розширення Microsoft C/C++ для роботи з кодом на C і C++, яке встановлюється автоматично при встановленні PlatformIO.
1. Підключіть Wio Terminal до комп'ютера. Wio Terminal має порт USB-C на нижній стороні, який потрібно підключити до USB-порту вашого комп'ютера. Wio Terminal постачається з кабелем USB-C до USB-A, але якщо ваш комп'ютер має лише порти USB-C, вам знадобиться кабель USB-C або адаптер USB-A до USB-C.
1. Дотримуйтесь інструкцій у [документації Wio Terminal Wiki WiFi Overview](https://wiki.seeedstudio.com/Wio-Terminal-Network-Overview/) для налаштування Wio Terminal та оновлення прошивки.
## Hello world
Традиційно, починаючи роботу з новою мовою програмування або технологією, створюють додаток 'Hello World' — невеликий додаток, який виводить текст `"Hello World"`, щоб переконатися, що всі інструменти налаштовані правильно.
Додаток Hello World для Wio Terminal допоможе переконатися, що Visual Studio Code встановлено правильно з PlatformIO і налаштовано для розробки мікроконтролерів.
### Створення проекту PlatformIO
Першим кроком є створення нового проекту за допомогою PlatformIO, налаштованого для Wio Terminal.
#### Завдання - створення проекту PlatformIO
Створіть проект PlatformIO.
1. Підключіть Wio Terminal до комп'ютера.
1. Запустіть VS Code.
1. Значок PlatformIO буде на бічній панелі меню:
![Опція меню PlatformIO](../../../../../translated_images/vscode-platformio-menu.297be26b9733e5c4635d9d8e636e93fed2015809eafb7cc8fd409c37b3ef2ef5.uk.png)
Виберіть цей пункт меню, а потім виберіть *PIO Home -> Open*.
![Опція відкриття PlatformIO](../../../../../translated_images/vscode-platformio-home-open.3f9a41bfd3f4da1c866ec3e69f1675faa30b823b5b58ab58ac88e5df9a85da19.uk.png)
1. На вітальному екрані виберіть кнопку **+ New Project**.
![Кнопка нового проекту](../../../../../translated_images/vscode-platformio-welcome-new-button.ba6fc8a4c7b78cc822e1ce47ba29c5db96668cce7c5f4adbfd2f1196422baa26.uk.png)
1. Налаштуйте проект у *Project Wizard*:
1. Назвіть ваш проект `nightlight`.
1. У випадаючому меню *Board* введіть `WIO`, щоб відфільтрувати плати, і виберіть *Seeeduino Wio Terminal*.
1. Залиште *Framework* як *Arduino*.
1. Або залиште прапорець *Use default location* встановленим, або зніміть його і виберіть місце для вашого проекту.
1. Натисніть кнопку **Finish**.
![Заповнений майстер проекту](../../../../../translated_images/vscode-platformio-nightlight-project-wizard.5c64db4da6037420827c2597507897233457210ee23975711fa2285efdcd0dc7.uk.png)
PlatformIO завантажить компоненти, необхідні для компіляції коду для Wio Terminal, і створить ваш проект. Це може зайняти кілька хвилин.
### Дослідження проекту PlatformIO
Провідник VS Code покаже кілька файлів і папок, створених майстром PlatformIO.
#### Папки
* `.pio` — ця папка містить тимчасові дані, необхідні PlatformIO, такі як бібліотеки або скомпільований код. Вона автоматично створюється заново, якщо видалена, і її не потрібно додавати до системи контролю версій, якщо ви ділитеся проектом на таких сайтах, як GitHub.
* `.vscode` — ця папка містить конфігурацію, яку використовують PlatformIO і VS Code. Вона автоматично створюється заново, якщо видалена, і її не потрібно додавати до системи контролю версій, якщо ви ділитеся проектом на таких сайтах, як GitHub.
* `include` — ця папка призначена для зовнішніх заголовкових файлів, необхідних при додаванні додаткових бібліотек до вашого коду. Ви не будете використовувати цю папку в жодному з цих уроків.
* `lib` — ця папка призначена для зовнішніх бібліотек, які ви хочете викликати з вашого коду. Ви не будете використовувати цю папку в жодному з цих уроків.
* `src` — ця папка містить основний вихідний код вашого додатка. Спочатку вона міститиме один файл — `main.cpp`.
* `test` — ця папка призначена для розміщення модульних тестів вашого коду.
#### Файли
* `main.cpp` — цей файл у папці `src` містить точку входу для вашого додатка. Відкрийте цей файл, і він міститиме наступний код:
```cpp
#include <Arduino.h>
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}
```
Коли пристрій запускається, фреймворк Arduino виконує функцію `setup` один раз, а потім повторює функцію `loop` безперервно, поки пристрій не буде вимкнено.
* `.gitignore` — цей файл містить список файлів і папок, які слід ігнорувати при додаванні вашого коду до системи контролю версій, наприклад, при завантаженні в репозиторій на GitHub.
* `platformio.ini` — цей файл містить конфігурацію для вашого пристрою та додатка. Відкрийте цей файл, і він міститиме наступний код:
```ini
[env:seeed_wio_terminal]
platform = atmelsam
board = seeed_wio_terminal
framework = arduino
```
Секція `[env:seeed_wio_terminal]` містить конфігурацію для Wio Terminal. Ви можете мати кілька секцій `env`, щоб ваш код міг бути скомпільований для кількох плат.
Інші значення відповідають конфігурації з майстра проекту:
* `platform = atmelsam` визначає апаратне забезпечення, яке використовує Wio Terminal (мікроконтролер на основі ATSAMD51).
* `board = seeed_wio_terminal` визначає тип плати мікроконтролера (Wio Terminal).
* `framework = arduino` визначає, що цей проект використовує фреймворк Arduino.
### Написання додатка Hello World
Тепер ви готові написати додаток Hello World.
#### Завдання - написання додатка Hello World
Напишіть додаток Hello World.
1. Відкрийте файл `main.cpp` у VS Code.
1. Змініть код, щоб він відповідав наступному:
```cpp
#include <Arduino.h>
void setup()
{
Serial.begin(9600);
while (!Serial)
; // Wait for Serial to be ready
delay(1000);
}
void loop()
{
Serial.println("Hello World");
delay(5000);
}
```
Функція `setup` ініціалізує з'єднання з послідовним портом — у цьому випадку USB-портом, який використовується для підключення Wio Terminal до вашого комп'ютера. Параметр `9600` — це [швидкість передачі даних](https://wikipedia.org/wiki/Symbol_rate) (також відома як швидкість символів), або швидкість, з якою дані будуть передаватися через послідовний порт у бітах за секунду. Ця настройка означає, що 9600 бітів (0 і 1) даних передаються щосекунди. Потім він чекає, поки послідовний порт буде готовий.
Функція `loop` надсилає рядок `Hello World!` до послідовного порту, тобто символи `Hello World!` разом із символом нового рядка. Потім вона спить протягом 5000 мілісекунд або 5 секунд. Після завершення `loop` вона запускається знову, і знову, і так далі, поки мікроконтролер увімкнений.
1. Переведіть Wio Terminal у режим завантаження. Вам потрібно буде робити це кожного разу, коли ви завантажуєте новий код на пристрій:
1. Двічі швидко потягніть вниз перемикач живлення — він повернеться у ввімкнене положення кожного разу.
1. Перевірте синій світлодіод стану праворуч від USB-порту. Він має пульсувати.
[![Відео, яке показує, як перевести Wio Terminal у режим завантаження](https://img.youtube.com/vi/LeKU_7zLRrQ/0.jpg)](https://youtu.be/LeKU_7zLRrQ)
Натисніть на зображення вище, щоб переглянути відео, як це зробити.
1. Зберіть і завантажте код на Wio Terminal.
1. Відкрийте командну палітру VS Code.
1. Введіть `PlatformIO Upload`, щоб знайти опцію завантаження, і виберіть *PlatformIO: Upload*.
![Опція завантаження PlatformIO у командній палітрі](../../../../../translated_images/vscode-platformio-upload-command-palette.9e0f49cf80d1f1c3eb5c6689b8705ad8b89f0374b21698e996fec11e4ed09347.uk.png)
PlatformIO автоматично збере код, якщо це необхідно, перед завантаженням.
1. Код буде скомпільований і завантажений на Wio Terminal.
> 💁 Якщо ви використовуєте macOS, з'явиться сповіщення про *DISK NOT EJECTED PROPERLY*. Це відбувається тому, що Wio Terminal монтується як диск під час процесу прошивки, і він відключається, коли скомпільований код записується на пристрій. Ви можете ігнорувати це сповіщення.
⚠️ Якщо ви отримуєте помилки про недоступність порту завантаження, спочатку переконайтеся, що Wio Terminal підключений до вашого комп'ютера, увімкнений за допомогою перемикача з лівого боку екрану та переведений у режим завантаження. Зелений світлодіод внизу має бути увімкнений, а синій світлодіод має пульсувати. Якщо помилка все ще виникає, двічі швидко потягніть вниз перемикач живлення, щоб примусово перевести Wio Terminal у режим завантаження, і спробуйте завантаження знову.
PlatformIO має Serial Monitor, який може відстежувати дані, що надсилаються через USB-кабель від Wio Terminal. Це дозволяє відстежувати дані, які надсилаються командою `Serial.println("Hello World");`.
1. Відкрийте командну палітру VS Code.
1. Введіть `PlatformIO Serial`, щоб знайти опцію Serial Monitor, і виберіть *PlatformIO: Serial Monitor*.
![Опція Serial Monitor PlatformIO у командній палітрі](../../../../../translated_images/vscode-platformio-serial-monitor-command-palette.b348ec841b8a1c14af503d6fc0bf73c657c79c9acc12a6b6dd485ce3b5826f48.uk.png)
Відкриється новий термінал, і дані, що надсилаються через послідовний порт, будуть передаватися в цей термінал:
```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.usbmodem101 9600,8,N,1 ---
--- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
Hello World
Hello World
```
`Hello World` буде друкуватися в серійному моніторі кожні 5 секунд.
> 💁 Ви можете знайти цей код у папці [code/wio-terminal](../../../../../1-getting-started/lessons/1-introduction-to-iot/code/wio-terminal).
😀 Ваш додаток 'Hello World' успішно працює!
---
**Відмова від відповідальності**:
Цей документ був перекладений за допомогою сервісу автоматичного перекладу [Co-op Translator](https://github.com/Azure/co-op-translator). Хоча ми прагнемо до точності, будь ласка, майте на увазі, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ на його рідній мові слід вважати авторитетним джерелом. Для критичної інформації рекомендується професійний людський переклад. Ми не несемо відповідальності за будь-які непорозуміння або неправильні тлумачення, що виникають внаслідок використання цього перекладу.