Управление Arduino с iOS/Android по Wi-Fi/Ethernet через Evothings Studio
Компоненты и материалы
- Arduino UNO — 1 шт.
- Wi-Fi Shield (например, ESP8266 как AT-прошивка или официальный Arduino WiFi Shield) ИЛИ Ethernet Shield — 1 шт.
- Светодиод (любого цвета) — 1 шт.
- Резистор ~200 Ом — 1 шт.
- Макетная плата, провода
Программное обеспечение
- Arduino IDE
- Evothings Studio (десктоп) — evothings.com/download
- Evothings Viewer (мобильное приложение) — App Store / Google Play
Архитектура взаимодействия
Мобильное приложение (HTML/JS в Evothings Viewer) ↔ TCP-сокет ↔ Arduino (WiFi/Ethernet Shield). Телефон и Arduino должны быть в одной локальной сети (один DHCP-сервер или одинаковый диапазон адресов). При Ethernet Shield телефон подключается к тому же Wi-Fi роутеру, к которому подключен Arduino кабелем.
Подключение «железа»
Светодиод: короткая нога (катод) → GND, длинная (анод) → резистор 200 Ом → Digital Pin 2.
Shield устанавливается на Arduino. Для WiFi Shield в скетче нужно задать SSID и пароль точки доступа.
Скетч Arduino (TCP-сервер)
Пример скетча входит в состав Evothings Studio: папка examples/arduino-input-tcp/arduinowifi (или arduinoethernet). Основные моменты:
// WiFi настройка (в скетче)
char ssid[] = "YOUR_SSID";
char pass[] = "YOUR_PASSWORD"; // пусто, если открытая сеть
// В loop() принимаются TCP-команды "on" / "off" и управляется pin 2
После загрузки открыть Serial Monitor — там покажется IP-адрес Arduino (например, 192.168.1.42).
Работа в Evothings Studio
- Запустить Evothings Studio.
- Вкладка Examples → найти «Arduino TCP Blink» → Copy в My Apps.
- В My Apps нажать Code у скопированного примера.
- В файле
index.html(строка ~52) заменить IP-адрес по умолчанию на адрес вашего Arduino. - Подключить Evothings Viewer на телефоне (сканировать QR-код или ввести код из Workbench).
- Нажать Run напротив проекта в Workbench.
- В приложении нажать «Connect» → кнопки ON/OFF управляют светодиодом.
Особенности Evothings
- Hot Reload: любое сохранение файла мгновенно обновляет приложение на телефоне — без пересборки, подписи, установки.
- Кроссплатформенно: iOS, Android.
- В
arduinotcp.jsесть готовые функции для чтения аналоговых входов, PWM, цифровых пинов — база для любых IoT-приложений.
Расширение функционала
- Добавить датчики (температура, влажность, движение) и отображать графики в приложении (Chart.js).
- Управлять реле, сервоприводами, RGB-лентами.
- Использовать WebSocket вместо raw TCP для двунаправленного обмена в реальном времени.
- Интегрировать с MQTT-брокером для облачного доступа.
Производственный процесс
- Проект с датчиком DHT11: индикация температуры светодиодами и пьезо-динамиком на Arduino
- Универсальный Android-пульт на Arduino, 1Sheeld и ИК-управлении
- Создание анимации и игр на LCD 16×2 с Arduino UNO
- Умный вольтметр на Arduino и смартфоне — простое DIY-проект
- Логгер температуры и влажности на Arduino с DHT11 и Ethernet Shield
- Превратите MIDI-клавиатуру в интерактивного репетитора по фортепиано с Arduino, LED-лентой и MuseScore
- Управление светодиодами через Alexa с помощью Raspberry Pi – простое пошаговое руководство
- Управление Roomba Create 2 через Arduino и Android: пошаговое руководство
- Управление Arduino Uno из Python 3: команды через последовательный порт и демонстрация с LED
- Клеточный автомат «Жизнь» Конвея на Arduino Nano с OLED 128x64