Введение
Умная лодка — это автономная или дистанционно управляемая водная платформа с камерой, GPS и системой мониторинга. Она способна патрулировать водоём, снимать видео над и под водой, собирать данные о состоянии воды и двигаться по заданному маршруту без участия оператора. А в версии с системой погружения — уходить под воду и вести подводное наблюдение.
В отличие от дронов, лодка не ограничена временем полёта и может нести значительно больший груз электроники и оборудования. На одном заряде она способна работать 3–6 часов, тихо скользить по поверхности и не пугать птиц и рыбу. Это делает её отличным инструментом для экологического мониторинга, охраны водоёмов, рыбалки и просто интересным инженерным проектом.
В этом руководстве рассмотрены четыре класса устройств: катамаран-наблюдатель, патрульный моноплан, лодка-доставщик и субмарина с системой погружения. Все построены на базе Arduino, 3D-печатных корпусов и доступных компонентов. Вы можете прочитать статью бесплатно, купить 3D-модели с подробным руководством и собрать самостоятельно, или заказать готовое изделие.
Обратите внимание: перед запуском лодки на водоёме ознакомьтесь с местными правилами использования радиоуправляемых судов. В большинстве стран требования к моделям весом до 3 кг минимальны, однако видеосъёмка на отдельных объектах может быть ограничена.
Обзор моделей
Линейка умных лодок включает четыре базовых типа. Каждый оптимизирован под свои задачи, но все используют совместимую электронику и единую систему управления.
Катамаран-наблюдатель
Наиболее стабильная платформа в линейке. Два поплавка-понтона соединены жёсткой горизонтальной рамой, на которой размещается вся электроника, камера и GPS. Благодаря широкой базе катамаран практически не качается на волне и идеально подходит для видеосъёмки и мониторинга.
Каждый поплавок оснащён собственным подводным мотором с винтом. Управление — дифференциальное: изменение скорости левого и правого мотора задаёт направление движения, как у гусеничного робота. Поворотный радиус минимален — катамаран разворачивается практически на месте.
Габариты: около 55 × 40 × 20 см. Вес: 1,2–1,8 кг. Скорость: до 1,5 м/с. Время работы: 3–4 часа. Грузоподъёмность: до 800 г дополнительного оборудования на платформе.
Моноплан патрульный
Классический корпус лодки — вытянутый моноплан с килем. Более скоростная платформа по сравнению с катамараном, лучше держит курс на волнении. Один мотор на корме, руль направления управляется сервоприводом. Оптимален для быстрого патрулирования большой территории.
Габариты: около 65 × 22 × 18 см. Вес: 0,9–1,3 кг. Скорость: до 2,5 м/с. Время работы: 4–5 часов при умеренной скорости. Подходит для открытых водоёмов с волнением.
Лодка-доставщик
Широкая плоскодонная платформа с закрытым водонепроницаемым грузовым отсеком. Предназначена для доставки небольших грузов по воде: рыболовные снасти, пробы воды, небольшие посылки на причал. Отсек открывается сервоприводом по команде с пульта или приложения.
Два мотора по бокам кормы — дифференциальное управление, высокая манёвренность. Грузоподъёмность: до 1,5 кг. Скорость: до 1,2 м/с. Время работы: 3–4 часа при полной загрузке.
Субмарина
Наиболее технически сложная модель в линейке. Торпедообразный герметичный корпус с балластной системой погружения, горизонтальными рулями глубины и кормовым винтом. Камера смотрит вперёд и снимает подводный мир в реальном времени с передачей по кабелю или акустическому модему.
Система погружения основана на балластной цистерне с сервоприводом: водяной насос закачивает воду для погружения и откачивает для всплытия. Глубина погружения базовой модели: до 3 метров. Время работы под водой: до 45 минут. Управление: по кабелю-привязи до 15 м или автономно по заданной программе.
Обратите внимание: субмарина — сложное устройство, требующее тщательной проверки герметичности перед каждым погружением. Рекомендуем начинать с надводных моделей и переходить к субмарине после получения опыта сборки и эксплуатации.
Принципы работы
Движение и управление
Надводные лодки используют два принципа управления. Дифференциальный привод (катамаран, доставщик) — два независимых мотора по бортам. Изменение скоростей создаёт момент поворота. Поворачивать влево — замедляем левый мотор, вправо — правый. Реверс одного мотора при переднем ходе другого — разворот на месте.
Руль направления (моноплан) — один мотор на корме, сервопривод поворачивает руль. Принцип как у обычной лодки. Недостаток: при нулевой скорости руль не работает, поворот возможен только в движении. Преимущество: КПД выше, меньше расход энергии.
Субмарина управляется тремя осями: продольное движение (кормовой винт), курс (кормовой вертикальный руль) и глубина (горизонтальные рули на носу и корме плюс балластная система).
Система погружения
Погружение субмарины основано на принципе изменения средней плотности. В нейтральном положении лодка находится на поверхности — общая плотность ниже плотности воды. Для погружения балластная цистерна заполняется водой: общий вес растёт, лодка начинает тонуть. Для всплытия — вода откачивается помпой, лодка становится легче воды и всплывает.
Балластная цистерна — герметичная камера объёмом 80–150 мл (зависит от размера субмарины). Заполнение происходит самотёком через клапан, управляемый сервоприводом. Откачка — мини-насосом 12В. Датчик давления MS5837 контролирует текущую глубину: давление воды линейно растёт с глубиной (~0,1 атм на каждый метр).
Горизонтальные рули на носу и корме позволяют управлять дифферентом (наклоном) субмарины и поддерживать заданную глубину в движении — как крылья самолёта создают подъёмную силу, рули создают вертикальную силу на ходу. Это значительно экономит энергию балластной системы.
Устойчивость на воде
Остойчивость лодки определяется положением центра тяжести (ЦТ) и метацентра. Чем ниже ЦТ и выше метацентр — тем лодка устойчивее. Практический вывод: тяжёлые компоненты (аккумулятор, моторы) размещайте как можно ниже в корпусе.
Катамаран устойчив за счёт широкой базы — расстояние между понтонами создаёт большое восстанавливающее плечо. Моноплан стабилизируется килем с балластом. Плоскодонник (доставщик) устойчив на тихой воде, но плохо держится на волнении — не подходит для открытых водоёмов.
При проектировании корпуса важно выдержать запас плавучести — объём вытесненной воды должен превышать вес лодки как минимум на 30–50%. Это обеспечит нормальную осадку и запас на случай заливания.
Корпус и герметизация
Материалы и печать
Корпуса всех надводных моделей печатаются из PETG — он не размягчается от воды, устойчив к UV-излучению и достаточно прочен для ударов о берег и камни. PLA для водных проектов не рекомендуется: впитывает влагу, теряет прочность и деформируется на солнце.
Параметры печати для корпуса: заполнение 40–60%, 4 периметра стенок, высота слоя 0,2 мм. Увеличенное количество периметров важнее заполнения — именно стенки обеспечивают водонепроницаемость при правильной пост-обработке. Дно корпуса печатается с заполнением 100% на высоту 3–4 мм для жёсткости.
Корпус субмарины требует особого подхода. Печатается из ABS или ASA — они легче поддаются химической обработке ацетоном для заполнения микропор между слоями. После печати корпус обрабатывается парами ацетона в закрытой ёмкости: поверхность оплавляется и становится монолитной.
Герметизация корпуса
Герметизация — самый критичный этап сборки водного робота. Используются три подхода в зависимости от зоны корпуса.
Аквариумный силикон — для неразборных стыков: между частями корпуса, склеенными намертво. Наносится изнутри по всему периметру стыка. Время отверждения 24 часа. Выдерживает постоянный контакт с водой.
O-ring уплотнители — для разборных крышек люков доступа к электронике. Силиконовое кольцо в проточке крышки при затяжке болтов равномерно обжимается и обеспечивает герметичность. Стандартный размер для крышек корпуса: O-ring 3×2 мм или 5×2 мм.
Эпоксидная смола — для покрытия внешней поверхности корпуса. Тонкий слой эпоксидки закрывает все микропоры между слоями печати и делает поверхность абсолютно водонепроницаемой. Дополнительно увеличивает жёсткость корпуса на 20–30%.
Обратите внимание: перед первым спуском на воду обязательно проверьте герметичность. Закройте все отверстия, кроме одного, подайте в него воздух насосом до давления 0,3–0,5 атм и окуните корпус в воду. Пузырьки укажут место протечки.
Кабельные вводы
Каждый провод, выходящий из герметичного корпуса наружу, — потенциальная точка протечки. Для надёжного уплотнения используются кабельные сальники (гермовводы) серии PG: PG7 для проводов диаметром 3–6,5 мм, PG9 для 4–8 мм. Они вкручиваются в резьбовое отверстие в корпусе, провод пропускается через резиновый конус и зажимается накидной гайкой.
Минимизируйте количество кабельных вводов — объединяйте провода в жгуты, проходящие через один сальник. Для субмарины это особенно важно: каждое дополнительное отверстие снижает надёжность на глубине.
Провода моторов — самые толстые и несут наибольший ток. Используйте силиконовые провода AWG14–AWG16: они гибкие, не дубеют на холоде и выдерживают постоянный контакт с водой без разрушения изоляции.
Водозащита электроники
Даже при идеальной герметичности корпуса влага может проникать внутрь из-за конденсата — перепад температуры воды и воздуха создаёт конденсацию на холодных металлических деталях. Для защиты электроники применяются несколько мер.
Конформное покрытие — специальный лак (например, Plastik 71 от Kontakt Chemie) наносится на плату Arduino и драйверы тонким слоем и защищает от влаги и брызг. Не закрывайте лаком разъёмы и кнопки.
Силикагель — мешочек поглотителя влаги размещается внутри герметичного корпуса. Поглощает остаточную влагу после закрытия крышки. Меняйте или регенерируйте (просушивайте в духовке при 120°C) после каждых 5–10 погружений.
Индикатор влаги — небольшая полоска влагоиндикатора кладётся внутрь корпуса рядом с электроникой. При осмотре после выхода из воды сразу видно, была ли протечка, даже если визуально всё выглядит сухим.
Двигатели и винты
Подводные моторы
Бесколлекторные подводные моторы — лучший выбор по соотношению мощности и надёжности. Ротор вращается в воде без уплотнений — вода сама является смазкой и охладителем. Популярные варианты: T100 Thruster (тяга 2,36 кгс при 12В) и аналоги с AliExpress значительно дешевле. Управляются ESC-регулятором как обычный бесколлекторный мотор.
Коллекторные моторы в водонепроницаемом корпусе — более доступный вариант. Ротор и статор залиты герметично, вал выходит через сальник. Ресурс ниже, чем у бесколлекторных, но для любительских проектов вполне достаточен. Управляются обычным H-мостом или ESC.
Самодельный водонепроницаемый мотор — обычный коллекторный мотор 775 или 550 серии с валом, выходящим через самодельное уплотнение. Статор заливается эпоксидной смолой изнутри через разобранный корпус. Требует аккуратности исполнения, но позволяет получить мощный привод за минимальные деньги.
Выбор винтов
Винт характеризуется двумя параметрами: диаметром и шагом (дистанция продвижения за один оборот). Для медленных тяжёлых лодок оптимальны крупные винты с большим шагом — высокий КПД при малых оборотах. Для быстрых платформ — меньший диаметр, более высокие обороты.
Для катамарана и доставщика рекомендуется трёхлопастный винт диаметром 60–80 мм. Трёхлопастный даёт меньше вибрации и лучше работает в загрязнённой воде с водорослями. Двухлопастный — проще напечатать и заменить при повреждении.
Направление вращения: правый мотор — правый (clockwise) винт, левый — левый (counter-clockwise). Если использовать одинаковые винты на обоих моторах, реактивный момент будет уводить лодку в сторону. Напечатать зеркальный винт на 3D-принтере не составляет труда — STL-файлы зеркалируются в слайсере.
Рули и стабилизаторы
Руль направления монопланной лодки крепится на сервопривод MG90S через рычажную тягу. Угол отклонения руля ±30° от нейтрали. Сервопривод монтируется внутри герметичного корпуса, тяга выходит наружу через сальник.
Для субмарины горизонтальные рули глубины (кормовые и носовые) управляются двумя сервоприводами. Симметричное отклонение обоих рулей — изменение угла атаки (нос вверх/вниз). Дифференциальное — дифферент (тангаж). Вертикальный руль на корме — курс. Сервоприводы для субмарины требуют полной герметизации: устанавливаются в отдельный герметичный отсек, тяги выходят через сальники.
Электропитание и Arduino
Организация питания водного робота имеет ряд особенностей по сравнению с наземными устройствами. Главное требование — абсолютная герметичность аккумуляторного отсека и защита от короткого замыкания при попадании воды.
Аккумуляторы
Li-Po 3S (11,1В) — оптимален для катамарана и монопланной лодки. Высокая энергоплотность, хорошая токоотдача. Ёмкость 3000–5000 мАч обеспечит 3–5 часов работы. Обязательно используйте Li-Po в специальном огнестойком пакете-сумке внутри корпуса.
Li-Po 4S (14,8В) — для мощных моторов вездехода и доставщика с тяжёлым грузом. Больше напряжение — больше мощность моторов при том же токе. Используется с DC-DC преобразователем для питания Arduino и логики.
PowerBank 20000 мАч — неожиданно удобный вариант для небольших лодок с маломощными моторами. Встроенная защита от перегрева, переразряда и КЗ. Заряжается обычным USB-C. Подходит для катамарана со слабыми моторами и ESP32-CAM камерой.
Аккумуляторный отсек должен быть изолирован от остальной электроники: при пробое аккумулятора вода с электролитом не должна попасть на плату управления. Отсек закрывается отдельной крышкой на O-ring уплотнителе.
Схема питания
Схема питания аналогична роботу-наблюдателю с дополнительным требованием: все соединения должны выдерживать влажную среду. Используйте луженые клеммы и герметичные разъёмы XT30 или XT60 — они стандарт в RC-технике и не окисляются.
Между аккумулятором и остальной схемой устанавливается предохранитель на 20–30А и водонепроницаемый выключатель. Выключатель монтируется в корпус через специальную заглушку с O-ring уплотнением — он должен быть доступен снаружи без разборки лодки.
Обратите внимание: никогда не заряжайте Li-Po аккумулятор внутри закрытого корпуса лодки. При зарядке аккумулятор выделяет газы — в закрытом пространстве возможно возгорание. Всегда извлекайте аккумулятор для зарядки.
Регуляторы хода (ESC)
Для управления бесколлекторными моторами используются ESC (Electronic Speed Controller) — регуляторы хода. Для водных применений нужны водонепроницаемые ESC с маркировкой Waterproof или IP67. Они отличаются от обычных залитым компаундом корпусом.
Рекомендуемые ESC для лодок: Hobbywing Seaking 30A/60A — специально разработаны для водных моделей, имеют встроенный BEC (питание 5В для сервоприводов и приёмника), реверс. Для бюджетных проектов подходят любые водонепроницаемые ESC 30A с AliExpress.
ESC подключается тремя фазными проводами к мотору и двумя силовыми — к шине питания. Сигнальный провод идёт от Arduino (ШИМ-сигнал). Важно: ESC для бесколлекторных моторов управляется тем же ШИМ-сигналом, что и сервопривод (1000–2000 мкс), поэтому отлично работает с библиотекой Servo.h.
Защита от воды
Помимо герметизации корпуса, отдельные компоненты нуждаются в дополнительной защите. Arduino покрывается конформным лаком. Все разъёмы внутри корпуса — герметичные Dupont с силиконовой заливкой или JST с фиксаторами. Контакты аккумулятора смазываются техническим вазелином для предотвращения окисления.
Камера и сенсоры
Камера надводная
Для надводного наблюдения оптимален модуль ESP32-CAM: встроенный Wi-Fi, трансляция MJPEG-потока в браузере, стоимость 250–350 руб. Модуль устанавливается в напечатанный бокс с прозрачным окном из оргстекла. Стык бокса герметизируется силиконом.
Поворотная мачта с сервоприводом позволяет вращать камеру по горизонтали на 180° без поворота всей лодки. Управляется с пульта отдельным каналом. Высота мачты 15–20 см над ватерлинией обеспечивает хороший обзор даже при небольшом волнении.
Для ночного наблюдения рядом с камерой устанавливается ИК-прожектор на 850 нм и используется камера с отключённым ИК-фильтром. В темноте лодка становится невидимой, а изображение с камеры остаётся чётким.
Камера подводная
Подводная камера размещается в герметичном боксе из акриловой трубки диаметром 50–75 мм. Торцевые крышки уплотняются O-ring кольцами и притягиваются болтами. Такой бокс выдерживает давление воды до 5–10 метров глубины.
Внутрь бокса помещается модуль камеры (ESP32-CAM или плата с IMX219), светодиодный фонарь на 5–10 Вт для подсветки (под водой уже на 2 метрах темно), мешочек силикагеля. Видеосигнал передаётся по кабелю на борт лодки или напрямую транслируется по Wi-Fi если в боксе помещается ESP32.
Для субмарины подводная камера монтируется в носовой части корпуса, смотрит вперёд. Прозрачный купол из оргстекла или поликарбоната вклеивается эпоксидным клеем и полируется для минимального искажения изображения.
GPS-модуль
Модуль NEO-8M с внешней антенной даёт точность 1,5–2 м — достаточно для навигации по водоёму и ограничения зоны патрулирования. Антенна размещается в самой высокой точке лодки, вне зоны экранирования металлическими деталями.
GPS подключается к Arduino по UART (9600 бод). Принимаемые NMEA-строки парсятся библиотекой TinyGPS++. Из каждого пакета извлекаются координаты, скорость, курс и время. Обновление координат — раз в секунду для стандартного режима, до 10 раз в секунду для модулей с поддержкой high-rate output.
Для автономного патрулирования задаются координаты точек маршрута. Arduino вычисляет курс на следующую точку по формуле bearing (азимут между текущими и целевыми координатами) и корректирует положение рулей или разность скоростей моторов для выдерживания курса.
Датчик глубины
Датчик давления MS5837-30BA — специализированный сенсор для подводного применения, выдерживает давление до 30 бар (глубина 300 м). Подключается по I2C. Измеряет абсолютное давление с разрешением 0,2 мбар, что соответствует точности определения глубины около 2 мм.
Датчик устанавливается в заполненном водой канале корпуса субмарины — вода передаёт давление к сенсору, сам сенсор при этом остаётся в сухой зоне. Либо датчик размещается снаружи корпуса с влагозащищённым корпусом и герметичным кабельным вводом.
Датчик качества воды
Умная лодка превращается в экологическую станцию мониторинга при добавлении датчиков качества воды. Наиболее практичный набор для любительского мониторинга:
DS18B20 — температура воды. Нержавеющий корпус, диапазон −55…+125°C, точность ±0,5°C. Подключается по 1-Wire, несколько датчиков — на один провод. Стоит около 80–120 руб.
Датчик мутности TSW-10 — оптический датчик, измеряет прозрачность воды. Позволяет обнаруживать загрязнения, цветение водорослей. Аналоговый выход на Arduino.
pH-электрод — измерение кислотности воды. Требует калибровки буферными растворами. Данные записываются на SD-карту с GPS-координатами и временем — получается карта качества воды водоёма.
Все данные датчиков логируются на SD-карту и передаются на пульт по радиоканалу в реальном времени. После маршрута данные выгружаются и визуализируются на карте.
Программирование Arduino
Прошивка лодки управляет моторами, читает GPS и датчики, обрабатывает команды с пульта и реализует автономный режим. Рассмотрим ключевые блоки кода.
Переменные
Arduino
// --- Пины ESC и рулей ---
const int ESC_LEFT = 9; // левый мотор (ШИМ)
const int ESC_RIGHT = 10; // правый мотор (ШИМ)
const int SERVO_RUDDER = 6; // руль направления
const int SERVO_BALLAST = 5; // клапан балласта (субмарина)
const int PUMP_PIN = 7; // помпа откачки (субмарина)
// --- Параметры движения ---
const int THROTTLE_STOP = 1500; // нейтраль ESC (мкс)
const int THROTTLE_MAX_FWD = 1900; // полный вперёд
const int THROTTLE_MAX_REV = 1100; // полный назад
const int RUDDER_CENTER = 90; // руль прямо (градусы)
// --- GPS и навигация ---
float target_lat = 0.0;
float target_lon = 0.0;
float current_lat = 0.0;
float current_lon = 0.0;
bool autopilot = false;
// --- Субмарина: глубина ---
float target_depth = 0.0;
float current_depth = 0.0;
Управление моторами
Arduino
#include <Servo.h>
Servo esc_left;
Servo esc_right;
Servo servo_rudder;
void setup() {
esc_left.attach(ESC_LEFT);
esc_right.attach(ESC_RIGHT);
servo_rudder.attach(SERVO_RUDDER);
// Инициализация ESC: подаём нейтраль
esc_left.writeMicroseconds(THROTTLE_STOP);
esc_right.writeMicroseconds(THROTTLE_STOP);
delay(3000); // ESC калибруется при старте
}
// Управление катамараном (0–100% вперёд, (-100)–0 назад)
void setMotors(int left_pct, int right_pct) {
left_pct = constrain(left_pct, -100, 100);
right_pct = constrain(right_pct, -100, 100);
int l_us = map(left_pct, -100, 100, THROTTLE_MAX_REV, THROTTLE_MAX_FWD);
int r_us = map(right_pct, -100, 100, THROTTLE_MAX_REV, THROTTLE_MAX_FWD);
esc_left.writeMicroseconds(l_us);
esc_right.writeMicroseconds(r_us);
}
Система погружения
Arduino
#include <MS5837.h> // библиотека датчика давления
MS5837 depth_sensor;
void diveToDepth(float target_m) {
current_depth = depth_sensor.depth();
if (current_depth < target_m - 0.05) {
// Открываем клапан балласта — впускаем воду
digitalWrite(PUMP_PIN, LOW); // помпа выкл
servo_ballast.write(90); // клапан открыт
}
else if (current_depth > target_m + 0.05) {
// Откачиваем воду — всплываем
servo_ballast.write(0); // клапан закрыт
digitalWrite(PUMP_PIN, HIGH); // помпа вкл
}
else {
// Удерживаем глубину
servo_ballast.write(0);
digitalWrite(PUMP_PIN, LOW);
}
}
void surfaceEmergency() {
// Аварийное всплытие: полная откачка балласта
servo_ballast.write(0);
digitalWrite(PUMP_PIN, HIGH);
delay(10000); // 10 секунд откачки
digitalWrite(PUMP_PIN, LOW);
}
Функция surfaceEmergency() вызывается автоматически при потере связи с пультом дольше 5 секунд или при срабатывании датчика влаги внутри корпуса. Это критически важная защита от потери субмарины.
GPS и автопилот
Arduino
#include <TinyGPS++.h>
#include <SoftwareSerial.h>
TinyGPSPlus gps;
SoftwareSerial gps_serial(4, 3); // RX, TX
// Вычисление азимута на целевую точку
float bearingTo(float lat1, float lon1, float lat2, float lon2) {
float dLon = radians(lon2 - lon1);
lat1 = radians(lat1);
lat2 = radians(lat2);
float y = sin(dLon) * cos(lat2);
float x = cos(lat1)*sin(lat2) - sin(lat1)*cos(lat2)*cos(dLon);
return degrees(atan2(y, x));
}
void autopilotTick() {
if (!autopilot) return;
float bearing = bearingTo(current_lat, current_lon,
target_lat, target_lon);
float heading = gps.course.deg(); // текущий курс
float error = bearing - heading;
// Нормализация ошибки в диапазон -180..+180
while (error > 180) error -= 360;
while (error < -180) error += 360;
// Корректировка курса
int correction = constrain((int)(error * 1.2), -40, 40);
servo_rudder.write(RUDDER_CENTER + correction);
setMotors(70, 70); // крейсерская скорость
}
Serial и отладка
Arduino
void debugPrint() {
Serial.print("LAT:"); Serial.print(current_lat, 6);
Serial.print(" LON:"); Serial.print(current_lon, 6);
Serial.print(" HDG:"); Serial.print(gps.course.deg());
Serial.print(" DEP:"); Serial.print(current_depth);
Serial.print("m AUTO:"); Serial.println(autopilot ? "ON" : "OFF");
}
// Приём команд через Serial (для отладки на берегу)
void handleSerial() {
if (!Serial.available()) return;
String cmd = Serial.readStringUntil('\n');
cmd.trim();
if (cmd == "SURFACE") surfaceEmergency();
if (cmd == "AUTOPILOT") autopilot = !autopilot;
if (cmd.startsWith("GOTO")) {
// Формат: GOTO 55.123456 37.654321
int sp = cmd.indexOf(' ', 5);
target_lat = cmd.substring(5, sp).toFloat();
target_lon = cmd.substring(sp+1).toFloat();
autopilot = true;
}
}
Системы управления
Пульт RC
Классический радиоуправляемый пульт — самый надёжный способ управления. Рекомендуется FlySky FS-i6 (6 каналов, 2,4 ГГц, дальность до 500 м) — недорогой, популярный, много документации. Приёмник FS-iA6B устанавливается внутри герметичного корпуса и подключается к Arduino.
Arduino читает ШИМ-сигнал с каналов приёмника функцией pulseIn() — значения 1000–2000 мкс соответствуют положению стиков пульта. Левый стик управляет скоростью, правый — курсом. Дополнительные переключатели на пульте переключают режимы: ручной, автопилот, аварийное всплытие.
Управление по Wi-Fi
Модуль ESP32 на борту лодки создаёт точку доступа Wi-Fi. Оператор подключается смартфоном и открывает веб-страницу управления в браузере. Страница содержит виртуальные стики, кнопки режимов и видеопоток с камеры — всё в одном окне браузера без установки приложений.
Дальность Wi-Fi управления в открытом пространстве над водой — 100–200 м. Для увеличения дальности используют направленные антенны или Wi-Fi усилители. Главный недостаток Wi-Fi — задержка 100–300 мс по сравнению с RC-пультом (10–20 мс). Для точного пилотирования субмарины лучше RC-пульт, для мониторинга с телефона — Wi-Fi вполне достаточно.
Автономный маршрут
Для задания маршрута используется простое веб-приложение: оператор кликает на карту водоёма, расставляя точки маршрута. Координаты отправляются на лодку по Wi-Fi и сохраняются в массив. Затем лодка переходит в режим автопилота и последовательно движется к каждой точке, используя GPS и алгоритм удерживания курса из раздела программирования.
Радиус считывания точки маршрута — 3–5 метров. Достигнув точки, лодка делает паузу (можно задать время остановки для съёмки или забора проб воды), затем движется к следующей. После прохождения всего маршрута возвращается к точке старта.
Мониторинг с телефона
Приложение мониторинга отображает в реальном времени: видеопоток с камеры, GPS-трек лодки на карте, показания датчиков воды (температура, pH, мутность), глубину погружения субмарины, уровень заряда аккумулятора, уровень сигнала. Данные сохраняются в лог с привязкой к GPS-координатам и времени.
Простая версия реализуется на базе ESP32 с библиотекой AsyncWebServer — веб-страница с JavaScript обновляет данные каждую секунду через запросы к API лодки. Для продвинутой версии используется MQTT-брокер: лодка публикует данные, приложение на телефоне подписывается на топики.
Мои 3D-модели
После нескольких прототипов и сезонов испытаний на воде я разработал финальные версии корпусов для каждой модели. Основные выводы из практики: герметичность важнее скорости сборки, балластный отсек нужно делать больше чем кажется, а провода внутри должны иметь запас длины для обслуживания.
Концепция
Все четыре модели разработаны в единой экосистеме: совместимые разъёмы, одинаковый протокол управления, переносимая электроника. Блок управления (Arduino + ESP32 + GPS) одинаков для всех моделей — при переходе с катамарана на субмарину меняется только корпус и добавляется блок управления балластом.
Корпуса оптимизированы под печать на принтере 220×220 мм. Катамаран разделён на восемь частей: два понтона по четыре секции. Секционная конструкция позволяет заменить повреждённый участок, не перепечатывая весь корпус.
Ключевые решения
Съёмный электронный лоток — вся электроника монтируется на плате, которая вставляется в корпус сверху и фиксируется четырьмя болтами. Для обслуживания не нужно разбирать корпус — просто снять крышку и вынуть лоток.
Аварийный поплавок субмарины — внутри корпуса предусмотрен постоянный объём воздуха в непотопляемом отсеке. Даже при полностью заполненной балластной цистерне субмарина сохраняет небольшую положительную плавучесть и медленно всплывает — страховка на случай отказа помпы.
Дренажные заглушки — в нижней части каждого поплавка катамарана предусмотрено дренажное отверстие с резьбовой заглушкой. После выхода из воды заглушки откручиваются и корпус полностью осушается за 2–3 минуты.
Быстросъёмные моторы — моторные гондолы крепятся к поплавкам на двух болтах М4. Замена повреждённого мотора прямо на берегу занимает 5 минут без инструмента.
Унифицированные кабельные вводы — все корпуса используют одинаковые гермовводы PG7. Запасные всегда есть в наличии, установка знакома по предыдущим моделям.
Скачать модели

В архиве для каждой модели: STL-файлы корпуса и деталей, проекты PrusaSlicer с настройками, принципиальные схемы подключения (PDF), прошивки Arduino с комментариями, список компонентов с ссылками на AliExpress, инструкция по проверке герметичности.
Сборка и прошивка
Пошаговая сборка
Шаг 1. Склеить секции поплавков суперклеем + сода (для заполнения зазоров) или эпоксидной смолой. Дать полное отверждение 24 часа. Зашлифовать стыки.
Шаг 2. Покрыть внешнюю поверхность корпуса эпоксидной смолой в два слоя. Каждый слой — 4 часа отверждения. Это герметизирует поры между слоями печати.
Шаг 3. Установить гермовводы PG7 в отверстия корпуса. Нанести нитевой герметик на резьбу, затянуть с умеренным усилием.
Шаг 4. Собрать электронный лоток: Arduino, ESP32, GPS, регуляторы, преобразователь питания. Соединить по схеме, проверить все соединения.
Шаг 5. Провести кабели моторов и датчиков через гермовводы. Установить лоток в корпус, подключить разъёмы.
Шаг 6. Установить O-ring уплотнитель на крышку, закрыть корпус. Провести проверку герметичности давлением — см. следующий раздел.
Шаг 7. Установить моторные гондолы, подключить к ESC. Установить камеру и GPS-антенну на верхнюю платформу.
Загрузка прошивки
Подключите Arduino к компьютеру по USB до финальной герметизации корпуса. Установите библиотеки через менеджер: TinyGPS++, MS5837, AsyncWebServer (для ESP32). Откройте файл .ino в Arduino IDE, выберите плату и порт, загрузите прошивку. Откройте Serial Monitor на 9600 бод и убедитесь, что Arduino выводит отладочные данные без ошибок.
Обратите внимание: ESC при первом подключении требует калибровки диапазона газа. Включите питание ESC при нейтральном положении стика газа (сигнал 1500 мкс), дождитесь инициализационного сигнала, затем подайте максимальный газ и снова нейтраль по инструкции вашего ESC. Без калибровки моторы могут работать непредсказуемо.
Проверка герметичности
Проверка выполняется до установки электроники, после любого вскрытия корпуса и обязательно после транспортировки. Порядок проверки: закрыть все отверстия корпуса кроме одного, вставить в него ниппель от велокамеры на герметике, накачать корпус до 0,3–0,5 атм ручным насосом. Опустить корпус в ёмкость с водой — пузырьки укажут место протечки.
Типичные места протечек: стыки секций корпуса (недостаточно эпоксидки), гермовводы (не затянуты или без уплотнителя на резьбе), крышка люка (O-ring выпал из проточки или пережат). Устраните протечку, дайте герметику отвердеть и повторите проверку.
Для субмарины дополнительно проверяется герметичность при имитации давления глубины: накачайте 0,5–1,0 атм (соответствует 5–10 м глубины) и оставьте на 30 минут. Если давление не упало — корпус герметичен.
Испытания на воде
Первый спуск на воду — у берега, в спокойной воде, с привязью. Проверьте плавучесть и дифферент: лодка должна лежать горизонтально без кренов. Если кренится — переместите аккумулятор или добавьте балласт в нужную сторону.
Включите пульт, дайте небольшой ход и проверьте отклик на управление. Убедитесь, что повороты происходят в нужную сторону. Проверьте работу камеры и GPS — убедитесь, что координаты определяются и трансляция идёт без разрывов. Только после успешной проверки всех систем отвязывайте привязь и выходите на открытую воду.
Для субмарины первое погружение — на 20–30 см в бассейне или мелком водоёме. Проверьте работу балластной системы, горизонтальных рулей и аварийного всплытия. Постепенно увеличивайте глубину, каждый раз проверяя сухость внутри корпуса после всплытия.
Типичные ошибки
Лодка кренится на один борт — неравномерное распределение веса или несимметричный корпус. Переместите аккумулятор к противоположному борту или добавьте свинцовый балласт.
ESC перегревается — превышен допустимый ток. Проверьте не застрял ли винт и не перегружен ли мотор. Уменьшите максимальный газ в прошивке до 80% и оцените, уходит ли перегрев.
GPS не берёт спутники — антенна экранирована металлическими деталями или корпусом из углеволокна. Поднимите антенну выше и вынесите её в сторону от металла. Первый холодный старт GPS может занимать до 3 минут.
Субмарина не всплывает — помпа не справляется с давлением воды или засорился клапан. Встроенный аварийный поплавок должен обеспечить медленное всплытие даже при отказе помпы. После случая с незапланированным погружением проверьте помпу на берегу.
Вода внутри корпуса после маршрута — конденсат или микропротечка. Проверьте индикатор влаги: синий — конденсат (добавьте силикагель), розовый — была реальная вода (ищите протечку давлением).
Доработки и апгрейд
Солнечная панель — гибкая монокристаллическая панель 20–40 Вт на палубе катамарана. Контроллер заряда MPPT. На ярком солнце компенсирует 30–50% потребления моторов, значительно увеличивая автономность. Особенно эффективна в режиме медленного патрулирования.
Эхолот — ультразвуковой датчик глубины дна (не путать с датчиком глубины погружения субмарины). Подключается к Arduino по UART, отображает глубину и рыбу на дне. Превращает лодку в рыболовного помощника.
4G-модем — замена Wi-Fi на сотовую связь снимает ограничение по дальности. Лодка становится управляемой с любого места, где есть интернет. SIM800L или SIM7600 подключается к Raspberry Pi или ESP32 с поддержкой LTE.
Подводный прожектор — мощный LED 10–20 Вт в герметичном корпусе. На глубине 2–3 метров без подсветки камера видит только темноту. Прожектор управляется реле от Arduino.
Манипулятор для забора проб — небольшой водозаборный насос и набор пробирок на катамаранной платформе. Оператор командует забором пробы в нужной точке GPS, насос закачивает воду в пробирку, которая закрывается сервоклапаном. После маршрута пробы анализируются в лаборатории.
Замена Arduino на Raspberry Pi — RPi Zero 2W даёт полноценный Linux, OpenCV для обработки видео и возможность запускать нейросети для распознавания объектов на воде. Вес и размер сопоставимы с Arduino Mega.
Автодок (станция зарядки) — плавучая платформа с зарядным контактом. Лодка распознаёт станцию по маркеру на камере, подходит и стыкуется для зарядки. Полностью автономная работа без участия оператора.
Компоненты и стоимость
Ориентировочные стоимости сборки каждой модели при заказе компонентов на AliExpress. Стоимость 3D-печати не включена — зависит от вашего принтера или стоимости заказа у сервиса.

| Компонент | Катамаран | Моноплан | Доставщик | Субмарина |
|---|---|---|---|---|
| Контроллер | Arduino Nano | Arduino Nano | Arduino Uno | Arduino Mega |
| Wi-Fi / камера | ESP32-CAM ~300 р. | ESP32-CAM ~300 р. | ESP32 + камера | ESP32 + подв.камера |
| Моторы | 2× подв. ~1200 р. | 1× подв. ~700 р. | 2× подв. ~1200 р. | 1× подв. ~700 р. |
| ESC | 2× waterproof ~800 р. | 1× waterproof ~500 р. | 2× waterproof ~800 р. | 1× waterproof ~500 р. |
| Сервоприводы | — | MG90S ~180 р. | MG90S ~180 р. | 3× DS3218 ~1500 р. |
| GPS | NEO-8M ~350 р. | NEO-8M ~350 р. | NEO-8M ~350 р. | NEO-8M ~350 р. |
| Датчик глубины | — | — | — | MS5837 ~600 р. |
| Аккумулятор | Li-Po 3S ~700 р. | Li-Po 3S ~700 р. | Li-Po 4S ~1200 р. | Li-Po 4S ~1200 р. |
| Гермовводы, силикон | ~300 р. | ~200 р. | ~300 р. | ~500 р. |
| Пластик PETG/ABS | ~600 р. | ~400 р. | ~700 р. | ~800 р. |
| Крепёж, провода | ~200 р. | ~150 р. | ~250 р. | ~350 р. |
| Итого | ~4 450 р. | ~3 480 р. | ~5 980 р. | ~8 500 р. |
Обратите внимание: RC-пульт FlySky FS-i6 с приёмником (~2 500 р.) не включён в таблицу — он универсален и используется для всех моделей. Если у вас уже есть пульт от других RC-проектов, дополнительных затрат нет.
Заключение
Умная лодка — один из самых интересных проектов на стыке механики, электроники и программирования. Здесь есть всё: сложная герметичная конструкция, беспроводная связь, GPS-навигация, видеотрансляция и — в случае субмарины — управление в трёх измерениях. При этом все задачи решаются доступными компонентами и инструментами.
Начните с катамарана — он прощает ошибки в герметизации (если и зальёт, то несмертельно) и даёт хорошее понимание всех систем. Потом моноплан, доставщик, и только потом субмарина. Каждая следующая модель строится на опыте предыдущей.
Делитесь своими сборками и результатами испытаний в комментариях. Вопросы по конкретным узлам и проблемам при сборке — тоже сюда. Удачи на воде!


Оставьте Ваш комментарий