Оглавление:

Обнаружить движение и уничтожить цель! Автономный проект DIY: 5 шагов
Обнаружить движение и уничтожить цель! Автономный проект DIY: 5 шагов

Видео: Обнаружить движение и уничтожить цель! Автономный проект DIY: 5 шагов

Видео: Обнаружить движение и уничтожить цель! Автономный проект DIY: 5 шагов
Видео: 5 СТРАШНЫХ вещей сказанных роботами 2024, Ноябрь
Anonim
Обнаружить движение и уничтожить цель! Автономный проект DIY
Обнаружить движение и уничтожить цель! Автономный проект DIY

Обнаружить движение и уничтожить цель

В этом видео я покажу вам, как создать проект отслеживания движения своими руками с помощью Raspberry Pi 3. Проект является автономным, поэтому он перемещается и стреляет из пистолета при обнаружении движения. Я использовал лазерный модуль для этого проекта, но вы можете легко изменить эту сборку, чтобы вместо этого использовать Nerf.

Этот проект позволяет обнаруживать и отслеживать человека с помощью OpenCV, а затем запускать устройство (например, лазер или пистолет).

Шаг 1. Видеоурок - шаг за шагом

Image
Image

Компоненты оборудования

Вы можете получить доступ к оборудованию, используемому в проекте, по ссылкам ниже:

Raspberry Pi 3 Модель B +

Адаптер Raspberry Pi

Шляпа шагового двигателя

Адаптер 12В для Motor HAT

Модуль реле

Pi Fan 5V

Официальная камера Pi V2 или веб-камера ПК-камера

Лазерный модуль 5V или Nerf Gun

Шаговый шкив

Клей

Винты M3

L-образный кронштейн

Муфта вала

Линейный рельсовый стержень

Кабельные стяжки

Лист МДФ

Балончик с краской

Шаг 2: Принципиальная схема

Руководство по установке - OpenCV и Pip
Руководство по установке - OpenCV и Pip

Вы можете завершить свои подключения в соответствии с приведенной выше схемой. Вывод GPIO22 используется для управления реле внутри кода.

RELAY_PIN = 22

Шаг 3: Руководство по установке - OpenCV и Pip

1. Убедитесь, что pip установлен

sudo apt-get install python pip

www.pyimagesearch.com/2018/09/19/pip-install-opencv/

2. Установите OpenCV 3. Выполните все шаги для инструкций python 3

www.pyimagesearch.com/2016/04/18/install-guide-raspberry-pi-3-raspbian-jessie-opencv-3/

3. Настройте I2C на Raspberry Pi

learn.adafruit.com/adafruits-raspberry-pi-lesson-4-gpio-setup/configuring-i2c

4. Установите библиотеку HAT шагового двигателя Adafruit

sudo pip install git +

5. Адрес I2C

Если вы используете плату расширения шагового двигателя Raspberry Pi, отличную от Adafruit Stepper Motor HAT (как на видео), обновите адрес I2C или значение частоты следующим образом. (Этот адрес совместим только с платой на видео, значение по умолчанию для Adafruit Stepper Motor HAT пустое)

self.mh = Adafruit_MotorHAT ()

к

self.mh = Adafruit_MotorHAT (0x6F)

в исходном коде (mertracking.py)

для более подробной информации:

6. Убедитесь, что вы создали виртуальную среду с дополнительным флагом

mkvirtualenv cv --system-site-packages -p python3

7. Откройте Терминал и активируйте свою виртуальную среду

workon cv

8. Клонировать этот репозиторий

git clone [email protected]: MertArduino / RaspberryPi-Mertracking.git

9. Перейдите в каталог

компакт-диск RaspberryPi-Mertracking

10. Установите зависимости в вашу виртуальную среду

pip install imutils RPi. GPIO

11. Запустите код

python mertracking.py

Шаг 4: Установка параметров

Настройка параметров
Настройка параметров

mertracking.py имеет несколько параметров, которые вы можете установить:

MOTOR_X_REVERSED = Ложь

MOTOR_Y_REVERSED = Ложь MAX_STEPS_X = 20 MAX_STEPS_Y = 10 RELAY_PIN = 22

Адрес или частота I2C

self.mh = Adafruit_MotorHAT (0x6f)

Скорость шаговых двигателей

self.sm_x.setSpeed (5)

self.sm_y.setSpeed (5)

Шаги / обороты шаговых двигателей

self.sm_x = self.mh.getStepper (200, 1)

self.sm_y = self.mh.getStepper (200, 1)

Время задержки срабатывания реле

время сна (1)

Вы можете изменить тип шага с помощью следующих команд

Adafruit_MotorHAT. MICROSTEP

МИКРОСТЕП - ОДИНОЧНЫЙ - ДВОЙНОЙ - ПЕРЕСЕЧЕНИЕ

Шаг 5: Исходный код

Исходный код
Исходный код

Получите код с GitHub -

Клонировать этот репозиторий:

git clone [email protected]: MertArduino / RaspberryPi-Mertracking.git

Рекомендуемые: