Vertical Race

Подключение и управление · APK 2.0.2 · pwm-effects-3

Сначала проверьте монтаж без движения. Моторы включайте только в безопасном месте.

1. Установка приложения

  1. Скачайте APK на телефон с Android 10 или новее. Это Android-приложение, не версия для iPhone.
  2. Откройте файл. Если Android запросит разрешение установки из этого источника, разрешите его только вашему браузеру или файловому менеджеру. После установки разрешение можно отключить.
  3. Если Vertical Race уже установлено, обновите приложение поверх него. Пакет danilo.car сохранён. Не удаляйте старую версию без необходимости: удаление стирает её настройки.
  4. При сообщении о несовместимой подписи установка поверх другой сборки невозможна. Сначала сохраните нужные настройки; затем удалите прежнюю сборку и установите APK с этого сайта.
  5. По умолчанию имя внутри приложения — Vertical Race. Чтобы изменить его, нажмите название с карандашом в главном меню. Имя под значком Android остаётся Vertical Race.

APK подписан локальным тестовым ключом для прямой установки. Это не релиз из Google Play.

2. Загрузка скетча

  1. Выключите питание моторов. Подключите ESP-12F / ESP8266 с USB-разъёмом к компьютеру.
  2. Распакуйте ZIP. Откройте esp8266/esp8266.ino в Arduino IDE. Файлы accessories.h и motor_output.h должны остаться рядом со скетчем.
  3. Установите пакет плат ESP8266 версии 3.1.2. Адрес менеджера плат: https://arduino.esp8266.com/stable/package_esp8266com_index.json.
  4. Выберите NodeMCU 1.0 (ESP-12E Module), затем порт фактически подключённой платы. Маркировка самого радиомодуля может быть ESP-12F.
  5. Загрузите скетч. После перезапуска должна появиться сеть verticalrace.

В архиве также есть готовый BIN. Для первого подключения используйте исходный скетч и Arduino IDE: не выбирайте случайный порт или смещение записи. Эта прошивка не подходит для ESP32-C3.

3. Питание и проводка

Схема ниже предназначена для готовой USB-платы ESP-12F с контактами D1–D8, не для голого радиомодуля.

Управляющие контакты
НазначениеПин платыGPIO / подключение
Тяга, IN1 / IN2D2 / D1GPIO4 / GPIO5
Руль, IN3 / IN4D6 / D7GPIO12 / GPIO13
Клаксон через BC337D5GPIO14
Передние LEDD8GPIO15, включение HIGH
Задние LEDD4GPIO2, включение LOW

Моторы: тяговый к MOTOR-A, рулевой с пружиной к MOTOR-B. Если направление оказалось обратным, выключите питание и поменяйте два провода соответствующего мотора.

Передний свет: D8 → свой резистор 330 Ом → анод каждого белого LED; катод → GND. Задний: 3V3 → свой резистор 330 Ом → анод каждого красного LED; катод → D4. Подключение напрямую подходит только для маломощных индикаторных светодиодов. Мощным фарам нужен отдельный драйвер. D8 должен оставаться LOW, D4 HIGH при загрузке.

Пассивная пищалка 5 В: D5 → 1 кОм → база BC337; эмиттер → GND; коллектор → минус пищалки; плюс → проверенный пин 5V USB-платы. Между базой и эмиттером — 10 кОм. Для пьезоэлемента добавьте отдельный 1 кОм параллельно пищалке; для электромагнитной пищалки нужен защитный диод: катод к плюсу, анод к минусу. Ножки BC337 сверяйте с даташитом вашего производителя, а не с положением рисунка.

Помехи: электролитический конденсатор 1000 мкФ / 25 В около входа питания MX1508, с правильной полярностью. На контактах каждого мотора — керамический 104 / 100 нФ без полярности. Эти детали не заменяют исправную проводку и достаточное питание.

4. Подключение телефона

  1. Включите ESP. В настройках телефона подключитесь к Wi-Fi машинки.
  2. Когда телефон предупредит, что сеть без интернета, выберите «Остаться подключённым». Приложение связывается с машинкой локально, интернет для управления не нужен.
  3. Откройте Vertical Race. Кнопка Wi-Fi в приложении открывает сетевые настройки.
  4. Дождитесь статуса «Подключено». Он означает ответ самой ESP, а не просто соединение телефона с точкой доступа.
Wi-Fiverticalrace
Пароль12345678
Адрес192.168.4.1

Технический статус платы доступен на http://192.168.4.1/status только при подключении к Wi-Fi машинки. Основная прошивка сообщает firmware=pwm-effects-3.

Своё имя Wi-Fi

В esp8266.ino найдите строку const char* ssid = "verticalrace";, замените имя внутри кавычек и загрузите скетч заново. Для начала используйте латиницу и цифры; SSID должен занимать от 1 до 32 байт. Пароль задаётся соседней строкой password; для WPA2 используйте 8–63 печатных ASCII-символа.

После прошивки выберите новое имя в настройках Wi-Fi телефона. Приложение работает по адресу 192.168.4.1 и не привязано к имени сети. На плате со старым скетчем остаётся danilo-vlado.car, пока вы её не перепрошьёте. Обновление APK само по себе не меняет Wi-Fi.

5. Управление машинкой

  1. Выберите режим и скорость на первом экране. Для первой проверки поставьте «Медленно» и вывесьте колёса.
  2. Для режимов с наклоном удерживайте телефон удобно и неподвижно. Кнопка калибровки открывает окно; нажмите «Задать ноль», чтобы сохранить нейтраль обеих осей на текущий сеанс. Калибровка останавливает управление.
  3. Нажмите большой СТАРТ. Панель опустится сверху. Приложение сначала отправляет нейтральную команду; без ответа машинки управление не включается.
  4. Для сенсорного управления используйте поле справа под правую руку. Не требуется отпускать палец при смене направления.
  5. STOP немедленно выключает управление. Стрелка вверх или Android «Назад» также останавливают машинку и возвращают меню.
Режимы управления
РежимДействие
Наклон + газНаклон влево/вправо — руль, сенсорное поле вверх/вниз — вперёд/назад.
СенсорПоле справа: вверх/вниз — вперёд/назад, влево/вправо — поворот. Центр — нейтраль.
Наклон + наклонБоковой наклон — руль, продольный — газ/задний ход. Направление газа инвертировано относительно первой версии; перед поездкой проверьте на вывешенных колёсах.
ШоуОтдельный сценарий. Открытие окна само по себе не запускает машину.

Скорости «Медленно», «Средне», «Быстро» ограничивают команду газа. «Плавно» сглаживает управление. Шкалы газа и скорости показывают команды, не измеренные км/ч. При отпускании пальца, выходе из поля или потере свежих данных наклона газ убирается.

Вибрация: слабая на стоянке после СТАРТ, сильнее с газом. Выключается отдельной кнопкой. Звук: рёв двигателя и торможение воспроизводит телефон. Клаксон: кнопка сигнала в панели, на машинке пищалка используется только для него; требуется включённый звук и подключённая пищалка. Свет: кнопка лампочки включает фары; задние LED становятся ярче при торможении.

После STOP, потери связи или возврата из другого приложения снова нажмите СТАРТ и сделайте новое касание. Автоматического продолжения движения нет. Прошивка останавливает моторы через 500 мс без команд, но не используйте это как замену ручной остановке.

6. Сценарий «Шоу»

Выберите «Шоу» и нажмите большой СТАРТ: сначала откроется окно с анимацией маршрута. Машина ещё стоит. Настройте времена, затем нажмите отдельный СТАРТ внутри окна. Проводите испытание на малой скорости, в большой свободной зоне без людей и препятствий.

  1. Игра газом и короткие рывки — 2 с.
  2. Прямая — 4 с.
  3. Левый круг — 10 с.
  4. Правый круг — 10 с.
  5. Торможение и пауза — 3 с.
  6. Повторная игра газом — 2 с.
  7. Разворот задним ходом — 2 с.
  8. Торможение / нейтраль — 0,25 с.
  9. Резкий газ по прямой — 3 с, затем остановка.

Кнопка времени позволяет менять семь длительностей при остановленной машине. Оба этапа игры газом используют одну настройку. Значения сохраняются. По умолчанию весь сценарий занимает 36,25 с.

Диаметр «восьмёрки» и расстояние не измеряются: они зависят от покрытия, батарей и шасси. Анимация — схема команд, не GPS-трек. STOP, «Назад», сворачивание приложения или потеря связи отменяют сценарий.

7. Проверка и неисправности

В телефоне есть Wi-Fi, а приложение пишет «Автомобиль недоступен»

Это разные проверки: сеть может быть подключена, но HTTP-команды не доходят до ESP. Остаться в Wi-Fi без интернета, проверить http://192.168.4.1/status, перезапустить приложение. Убедиться, что залит нужный скетч и на плате есть обработчик команд. Если статус открывается, а приложение не подключается, временно отключить VPN и повторить нейтральную проверку.

Wi-Fi обрывается при газе

Немедленно остановите испытание. Сравните работу на вывешенных колёсах и при нагрузке, проверьте питание ESP от отдельного USB, провода земли, источник питания моторов и конденсаторы. Сохраните состояние /status и Serial 115200. Не пытайтесь компенсировать обрыв увеличением газа или отключением аварийного STOP. Причина обрыва на конкретной машине не установлена программными тестами.

Клаксон слышен только на телефоне

Проверить прошивку pwm-effects-3, включённый звук, D5, питание пищалки, монтаж BC337 и её тип. Щелчок от постоянных 5 В характерен для пассивного излучателя; это не доказывает исправность всей схемы. Для пьезоэлемента нужен резистор разряда, для магнитного — защитный диод. Не меняйте частоту PWM моторов ради звука без проверки влияния на управление.

Постоянно горит встроенный синий LED

Если светодиод вашей платы подключён к GPIO2, он делит этот выход с задними LED и может светиться вместе с габаритами. Сам по себе он не подтверждает обрыв или наличие Wi-Fi.

Первый запуск: питание выключено → проверка проводов → ESP без моторов → свет и клаксон → вывешенные колёса, малая скорость и STOP → движение в безопасном месте. Прошивку загружать только с отключённым питанием моторов.