Покрути это колесо
Разочарование в готовом наборе подтолкнуло к созданию собственной конструкции. Автор сформулировал требования: удобное управление, видеопоток в приложении, совместимость с простыми платами и низкая цена. В качестве связки выбрали Raspberry Pico и ESP8266 с Wi-Fi на борту, а для обмена данными между ними — протокол UART. Пользовательское управление решили строить на UDP, что логично для быстрой передачи команд. Соединить платы проводами оказалось несложно, но возникла неожиданная проблема: автор знал только PHP, а для Arduino-проектов используется C, Python или Arduino C. Из-за этого работа застряла.
Решение пришло со стороны Go. Для Raspberry Pico существует проект TinyGo, а для ESP8266 — прошивка от Espressif с поддержкой AT-команд. Это позволило не привязываться к конкретному языку. Первые шаги дались нелегко: пришлось разобраться с USB-TTL переходником, настройкой GoLand и синтаксисом Go. Отдельным вызовом стало понимание настройки baud rate, из-за которой данные с Serial отображались в виде мусора. Но после нескольких вечеров работы удалось включить Wi-Fi и принять первую команду по UDP.
Промежуточный итог оказался неожиданным: как только команды начали доходить до Pico, стало очевидно, что такая компоновка бесперспективна. Робот сможет ездить только в пределах комнаты, а пользователю придётся таскаться за ним с ноутбуком. Проект пришлось начинать с нуля, уже с другими компонентами. Автор обещает рассказать о продолжении, но уже сейчас ясно: самое ценное в этой истории — не готовый результат, а опыт, полученный в процессе.
Источник: habr.com
Поделиться