Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Продвинутая автопилотная система для парусной лодки: точное автоматическое рулевание

Компоненты и материалы

О проекте

Преамбула

Автор — любитель одиночных парусных прогулок. Автопилот позволяет отвлечься на «чай с печеньем», удерживая курс. Не заменяет моряка — ассистирует.

Что делает автопилот

Парусник не имеет двигателя для точечного следования маршруту. Автопилот удерживает курс (Heading), руляя рулём через шаговый двигатель. Моряк задаёт курс, автопилот корректирует отклонения от ветра, волн, течений, перемещения веса на борту.

Управление: 4 кнопки на пульте и на корпусе — +1, -1, +10, -10 градусов. Синяя кнопка — пауза/старт. Чёрная — вход в меню настроек (сохранение в EEPROM).

Продвинутая автопилотная система для парусной лодки: точное автоматическое рулевание
Кнопки управления и индикация

Архитектура схемы

Продвинутая автопилотная система для парусной лодки: точное автоматическое рулевание
Внутренности: две платы стеклянного текстолита, батарея, GPS, драйвер

Печатные платы и сборка

Продвинутая автопилотная система для парусной лодки: точное автоматическое рулевание
Плата питания (Power shield)

Настройка параметров (через чёрную кнопку)

Меню на дисплей (6 экранов):

  1. Датчики: Vбат, мА, °C.
  2. Interval (мс, 1000–5000, шаг 100) — период попыток коррекции курса.
  3. Minimum (°, 0–20, шаг 1) — мёртвая зона: меньше угла → руль на месте.
  4. Max (°, 10–45, шаг 1) — макс. поворот руля за один цикл.
  5. Coefficient (x°, 0.1–4.0, шаг 0.1) — множитель: руль поворачивается на (ошибка × коэф.).
  6. Сохранение в EEPROM («Updating...»).

Подбор параметров — на воде, в солнечный безветренный день. Зависят от диаметров блоков, длины рулевой палки, чувствительности руля.

Работа «вживую»

  1. В море/озере. Включаете автопилот — ждёте GPS фикс.
  2. На дисплее: скорость (узлы), время, курс R=заданный, H=текущий (0°=С, 90°=В, 180°=Ю, 270°=З).
  3. Соединяете шнур шагового двигателя с рулевой палкой (пули блокируют на резинках).
  4. Нажимаете синюю кнопку — автопилот захватывает руль. H начинает сходиться с R.
  5. Корректируете курс пультом/кнопками. Для возврата ручного управления — пауза + отсоедините шнур.

Программная часть

Установка на лодку

Автопилот и шаговый — на корме, на болтах. Шнур 6мм от главной шкива двигателя идёт через два блока по бокам (на банджи-резинках для натяжения). К рулевой палке — временное крепление (легко снять).

Продвинутая автопилотная система для парусной лодки: точное автоматическое рулевание
Схема монтажа автопилота на корме яхты

Новости и обновления

Дисклеймер

Это игра/хобби-проект, НЕ сертифицированное мореходное оборудование. Реальный автопилот — это серьезное железо и ПО, которому доверяют жизнь. Этот проект — для удовольствия и обучения. Пользуйтесь на свой страх и риск!

Marco Zonca

Исходный код

Скетч автопилота (Arduino Uno)

/* Autopilot for small sailing boats, Marco Zonca 2019
 * Uno CPU, Nano watchdog, GPS BT-220 NMEA, Stepper+L298, RF433, 6 btns, buzzer, I2C LCD, 3 LED, 24C04 EEPROM, 4051 Mux, LiPo 2S, 7805, Thermistor */
#include <LiquidCrystal_I2C.h>
#include <NewTone.h>
#include <Stepper.h>
#include <Wire.h>
// ... (полный код см. в оригинале или GitHub)
// Основные функции: serialEvent, nmeaExtractData, nmea0183_checksum,
// readMuxSensors, gomotor, RefreshDisplay, checkRfRC, checkHWButtons,
// goleft/goright/goleft10/goright10/gopause/gosetup/goupdateEEPROM,
// EEPROM read/write, watchdog feeding, PID-like steering logic.

Скетч Watchdog (Arduino Nano)

/* Watchdog для Arduino Nano 3.0, Marco Zonca */
const int feedingPin = 14;  // A0
const int ledPin = 15;      // A1
const int restartPin = 16;  // A2
const int buzzerPin = 17;   // A3
const long ledInterval = 1000;
const long feedingInterval = 2500;
const long timeForClientStart = 16000;
// ... loop: мигает LED, проверяет feedingPin, если нет активности >2.5с — рестарт Uno через restartPin (LOW)

3D-модели (STEP)

Схемы (Eagle/изображения)

Продвинутая автопилотная система для парусной лодки: точное автоматическое рулевание
Плата питания
Продвинутая автопилотная система для парусной лодки: точное автоматическое рулевание
Плата автопилота
Продвинутая автопилотная система для парусной лодки: точное автоматическое рулевание
Подключение GPS, шагового, кнопок, дисплея
Продвинутая автопилотная система для парусной лодки: точное автоматическое рулевание
Распиновка внешних разъёмов

Производственный процесс

  1. Построение DIY инфракрасного датчика движения для Raspberry Pi — пошаговое руководство
  2. Проектирование баллистической парашютной системы восстановления для БПЛА
  3. Подходит ли непрерывный мониторинг для ваших операций?
  4. ATI Industrial Automation: лидирующие автоматические сменщики инструментов для промышленных роботов
  5. Готово ли ваше производство к IoT? Практическое руководство
  6. Точные полигональные резаки для автоматов: регулируемые высокопроизводительные решения
  7. R07 Cincom: CNC-токарный станок с точностью 7 мм для мелких деталей
  8. Революционная гиперзвуковая пропульсивная система обеспечивает трансконтинентальные перелеты менее чем за…
  9. Принцип работы механической и автоматической коробки передач
  10. Автоматическая коробка передач: полное руководство — виды, узлы, принцип работы