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

Автономный Donkey Car: TensorFlow MobileNetV2 ИИ для сбора мусора

Постройте самоводимую RC-машинку, которая обнаруживает и собирает мусор, используя TensorFlow SSD MobileNetV2 на Raspberry Pi 3 и Pi Camera.

Обзор проекта

Это руководство демонстрирует, как превратить стандартную RC-машинку (Raspberry Pi + Pi Camera) в автономного сборщика мусора. Решение опирается на две лёгкие нейросети: одну для детекции объектов в реальном времени, другую — для управления рулением и газа. Поскольку ограниченная RAM и CPU Pi 3 могут запускать только одну модель за раз, мы чередуем детекцию и вождение в поточном режиме.

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


Идентификация компонентов машины и ноутбука

Проект имеет две основные фазы:

  1. Object Detection — небольшая свёрточная сеть обрабатывает поток Pi Camera через TensorFlow и OpenCV.
  2. Behavioral Cloning — машина учится автономной навигации, копируя человеческие входы руля и газа. Дополнительные датчики (ультразвук, GPS, 6-DOF IMU) обогащают тренировочные данные и телеметрию.

Введение

MobileNetV2, вышедшая в 2019 году, спроектирована для встраиваемых устройств. CPU Raspberry Pi 3 комфортно запускает MobileNetV2 SSD, в отличие от тяжёлых YOLO-вариантов, требующих много RAM.

Попытка запустить VGG16 (~350 МБ весов) провалилась на Pi, подчёркивая нужен в более компактных моделях. Трансферное обучение с предобученным MobileNetV2 SSD даёт высокую точность при минимальном футе.

Аппаратные модификации

Базовое транспортное средство — Magnet RC-машинка, которую мы ретрофитим в шасси DonkeyCar. Ключевые изменения:

Готовое транспортное средство теперь включает:

Все данные датчиков таймстампятся и логируются через фреймворк tub для увеличения тренировочных датасетов.

Настройка ПО

Программный стек минимален, но мощный: TensorFlow, OpenCV и несколько Python-утилит. Пошаговое руководство по установке ниже.

1. Установка TensorFlow, OpenCV и зависимостей

pip install tensorflow[pi]
pip install matplotlib raspberry
sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install qt4-dev-tools
pip3 install opencv-python

TensorFlow требует свой формат модели; поэтому используем официальный репозиторий моделей TensorFlow и настраиваем PYTHONPATH:

git clone --recurse-submodules https://github.com/tensorflow/models.git
export PYTHONPATH=$PYTHONPATH:/home/pi/tensorflow1/models/research:/home/pi/tensorflow1/models/research/slim

2. Установка компилятора Protocol Buffers

ProtoBuf нужен для загрузки весов MobileNetV2 SSD.

sudo apt-get install autoconf automake libtool curl
wget https://github.com/google/protobuf/releases/download/v3.5.1/protobuf-all-3.5.1.tar.gz
tar -zxvf protobuf-all-3.5.1.tar.gz
cd protobuf-3.5.1
./configure
make
make check
sudo make install
cd python_export
python3 setup.py build --cpp_implementation
python3 setup.py test --cpp_implementations
sudo python3 setup.py install --cpp_implementation
export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=cpp
export PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION_VERSION=3
sudo ldconfig
protoc --version

3. Интеграция IMU и GPS

Добавьте MPU6050 в meta.json и manage.py для захвата ускорения и гироскопа:

{"inputs": ["cam/image_array", "user/angle", "user/throttle", "user/mode", "imu/acl_x", "imu/acl_y", "imu/acl_z", "imu/gyr_x", "imu/gyr_y", "imu/gyr_z"],
"types": ["image_array", "float", "float", "str", "float", "float", "float", "float", "float", "float"]}

Установите необходимые Python-библиотеки:

sudo apt-get install python3-smbus
pip install mpu6050-raspberrypi
pip install RPi.GPIO

4. Финальные шаги

После установки всех зависимостей деактивируйте виртуальное окружение и перезагрузите Pi:

deactivate
sudo shutdown -h now

Машина готова к запуску SSD MobileNetV2 для детекции объектов и модели behavioral cloning для автономного вождения.

Заключение

Сочетая лёгкие нейросети с надёжной интеграцией датчиков, Raspberry Pi 3 может надежно обнаруживать и собирать мусорные баки, прокладывая путь к масштабируемым, низкобюджетным автономным решениям для сбора отходов.

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

  1. Планирование движения в реальном времени для автономных автомобилей в городской среде: исследование масштаб…
  2. Трансформация эксплуатации и обслуживания: практическое руководство по эффективному планированию
  3. Подготовка к автономному будущему: Как владельцы флеетов могут опередить
  4. Как 5G трансформирует коннектед автомобили: Скорость, безопасность и умные функции
  5. Безопасность прежде всего: как европейцы видят будущие коннектедкары
  6. 7 основных советов для безопасной работы пылесборников: защита рабочих и окружающей среды
  7. Передовая 3D система отслеживания движения: датчик нового поколения для автономных технологий
  8. Автономная система зарядки роя дронов: увеличение времени миссии с помощью НЛА
  9. Daimler и BMW анонсировали стратегический альянс для развития автономного вождения
  10. Continental презентует передовые решения для автономного вождения будущего мобильности