Связь по воздуху
Как только робот съезжает со стола и начинает ездить сам, тянуть за ним провод к компьютеру неудобно. Нужна связь по воздуху. Беспроводных способов несколько, и выбор между ними — это всегда компромисс между тремя вещами: дальностью, скоростью и аппетитом к энергии. Улучшить одно, не задев другое, почти никогда не получается.
Что выбрать
Bluetooth (и его экономичная версия BLE) — для связи на несколько метров с телефоном или планшетом. Расходует мало энергии, легко подключается. Идеален для пульта в кармане: поехали вперёд, повернули, остановились.
Wi-Fi — когда нужен объёмный поток данных: видео с камеры, подробная телеметрия, управление через веб-страницу. Дальность больше, скорость выше — но и энергии Wi-Fi ест заметно больше, а в помещении со множеством сетей может «подтормаживать».
Простое радио (например, модули на 2.4 ГГц или дальнобойный LoRa) — когда нужны либо большая дальность, либо предельная экономичность, а данных передаётся немного. LoRa добивает на километры, но по нему не отправить видео — только короткие сообщения вроде координат и команд.
Задержка и почему она важнее, чем кажется
У беспроводной связи есть коварное свойство — задержка. Между «нажал кнопку стоп» и «робот получил команду» проходит время, и по воздуху оно больше и непостояннее, чем по проводу. Для передачи картинки лишняя десятая секунды не страшна. Для команды экстренной остановки — критична.
Разделяй управление и данные
Хорошее архитектурное решение — не смешивать в одном канале команды и тяжёлые данные. Пусть короткие команды («вперёд», «стоп») идут по быстрому и надёжному каналу, а объёмное видео — по отдельному, где потеря пары кадров не страшна. Тогда «затор» из видеоданных не задержит команду остановки.
Наш робот-исследователь
Разведчик отправляет на ноутбук картинку с камеры и телеметрию по Wi-Fi — там большой поток данных. Но реакция на препятствие и аварийная остановка живут внутри самого робота и не зависят от того, дошёл сигнал до ноутбука или нет. Ноутбук — это глаза наблюдателя, а не спинной мозг робота.