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

Автономный танк с доставкой пива: Walabot, Arduino, Raspberry Pi и Alexa

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

Компонент Кол-во Примечание
Walabot Creator 1 3D-радар (микроволны), «глаз» танка
Arduino MKR1000 1 Управление моторами, сервами, краном (3 внешних прерывания)
Raspberry Pi 3 Model B 1 Высший уровень: Walabot SDK, Python, AWS IoT, Alexa
Amazon Echo / echosim.io 1 Голосовое управление
Драйвер моторов TB6612FNG (2 канала, 1 А) 1 Два DC-мотора гусениц
Рама танка с 2 DC-моторами 1 Готовый шасси (Banggood)
Сервоприводы MG996R 3 Кран (1) + люк крышки (2)
Набор металлоконструктора 1 Каркас крана
Шаговый 28BYJ-48 + драйвер X113647 1 Подъем крана (рыболовная леска)
LiPo 7.4 В + зарядка 1 Основное питание
BEC 5 В (до 3 А) 1 Питание Pi, Arduino, серв, Walabot
Потенциометр 10 кОм 1 Обратная связь угла крана
Лента LED (12 В) + транзистор Дарлингтона 1 Скрытые фары (питаются от 7.4 В через перемычку)
Радиоуправление (опционально) 1 Ручное управление 3 каналами
Пиво (для тестов) 1 Обязательный компонент 🍺

Инструменты

Софт и облако

О проекте

Голосоуправляемый танк, который привозит пиво: автономный режим «Follow me» (Walabot трекает человека) или ручное радиоуправление. Кран скрывает банку внутри корпуса и поднимает её по команде. Проект объединяет робототехнику, компьютерное зрение (радиолокацию), IoT и голосовые интерфейсы.

Шасси

Заказано готовое гусеничное шасси. При доставке повреждено — восстанавливали часами на клее. Моторы и редукторы встроены в корпус.

Кран v1 → v2

Первая версия: металлоконструктор + шаговый на леске. Работало, но скелет гнулся. Усилили двумя линейками 30 см и доп. перемычками — стало жёстко. Добавлен потенциометр на вал крана для точной обратной связи (угол).

Корпус и «грузовое отсек»

Walabot крепится магнитами к передней металлической пластине (без болтов). Корпус из чёрного картона и пластика. Верхний люк на двух сервах открывается при подъёме крана — эффект «открывания люка». Скрытые фары: серва поднимает пластиковую заслонку, за ней сегмент LED-ленты (12 В, запитан от 7.4 В с перемычкой вместо среднего LED для яркости).

Электрика

Вся электроника на верху танка (прото-PCB). MKR1000 выбран из-за 3+ внешних прерываний (Uno — только 2). Нужны для чтения PWM от RC-приёмника (3 канала: газ, руль, кран). 5 PWM-пинов: 2 на моторы (TB6612FNG), 3 на сервы. Проблема: только 4 пина с аппаратным PWM (D2–D5). Решение: сервы люка на софт-PWM (медленные, слышен только легкий гуд), остальные на хард-PWM.

Радиоуправление (Arduino)

3 канала PWM 1000–2000 мкс → внешние прерывания.

Финальные скорости: right = base + change, left = base - change (клиппинг до ±255).

Кран управляется функцией handleCrane() считывающей потенциометр: если elevated и угол < цели — поднимаем + открываем люк; иначе опускаем + закрываем. Катушки шагового отключаются в конце (экономия батареи и защита от перегрева).

Arduino ↔ Raspberry Pi (Serial)

Команды (текст, заканчивающиеся \n):

Канал 3 RC оставлен как аварийный стоп в автономном режиме.

Walabot: настройка и «Follow me»

Walabot — 3D-радар на микроволнах. Режим MTI (Moving Target Identification) находит движущиеся объекты до 1.5 м, до 4 целей за кадр (~6 FPS).

Алгоритм следования:

  1. Калибровка: человек встаёт в 80 см перед танком.
  2. Ближайшая цель с высокой амплитудой = человек.
  3. Каждый кадр: новая позиция человека = цель, ближайшая к предыдущей позиции.
  4. Если скачок слишком большой — танк останавливается и ищет снова.
  5. Цель: держать человека в «таргет-зоне» (прямоугольник перед танком). Движение: поворот → 직진/назад. Одновременный поворот+движение нестабилен на гусеницах при 6 FPS — поэтому последовательно и на минимальной скорости.

Питание Walabot: 0.4–0.9 А. Pi USB выдаёт 600 мА → добавили max_usb_current=1 в /boot/config.txt (1.2 А). Всё равно браунаут при одновременном питании Arduino+серв. Решение: Walabot имеет 2 micro-USB — второй (центральный) для питания. Переключили джампер внутри Walabot (сняли крышку) → питание от BEC 3 А, данные — от Pi. Работает стабильно.

Голосовое управление (Alexa Skill)

Навык «Beer Tank» (ID: amzn1.ask.skill.a7453502-b1aa-47fa-a552-ed8e2c792b2e). Команды:

Архитектура: Alexa → Lambda (Node.js/Python) → AWS IoT (MQTT топик wbt) → Raspberry Pi (Paho MQTT client) → Serial → Arduino. Lambda не опрашивает железо напрямую — асинхронно через Device Shadow / топики. Ngrok использовали только для тестов; продакшен — только AWS.

Таксометры (отменено)

Изначально ставили ИК-таксометры на колёса (чёрно-белая полоса + рефлективный датчик) для одометрии. Отказались: не хватило GPIO на MKR1000, и для «Follow me» они не нужны. Оставили на месте как декор.

Заключение

Проект работает, весело, объединяет много технологий. Танк медленный в автономке (6 FPS Walabot), но надёжно следует за человеком. Планы: ускорить за счёт предсказания траектории / доп. датчики (LiDAR, камера), улучшить механику крана, добавить автозарядку.

Код: GitHub Beer-Tank (Arduino + Raspberry Pi).

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

  1. Синтаксис нетлистов SPICE: именование компонентов, пассивные и активные элементы, определение источников
  2. Производство кислородных баллонов: от сырья к качественному контролю
  3. Интегральные схемы (ИС): компактные мощные чипы, питающие современную электронику
  4. Управление Chromecast через Amazon Alexa с помощью Raspberry Pi и Python
  5. Построение дешёвого автономного лего-танка на NVIDIA Jetson Nano и Isaac SDK
  6. Набор MOSMusic: MOSFET, Arduino и управление светом по музыке
  7. Микроэлектроника: наука о сверхмалых электронных компонентах
  8. Резервные баки: назначение, виды и преимущества
  9. Основные компоненты сверлильного станка: подробный обзор
  10. Ключевые компоненты двигателя внутреннего сгорания