Оглавление:

Отслеживание объектов - управление установкой камеры: 4 шага
Отслеживание объектов - управление установкой камеры: 4 шага

Видео: Отслеживание объектов - управление установкой камеры: 4 шага

Видео: Отслеживание объектов - управление установкой камеры: 4 шага
Видео: V380 PRO Полный обзор приложения для 4G камер видеонаблюдения 2024, Июль
Anonim
Image
Image

Всем привет, В этом руководстве я покажу вам прогресс, достигнутый в моем проекте отслеживания объектов. Здесь вы можете найти предыдущее руководство: https://www.instructables.com/id/Object-Tracking/, а здесь вы можете найти плейлисты YouTube со всеми видео и пояснения к коду:

Итак, мы, наконец, можем перейти от чисто программного обеспечения и мира кодирования к реальному миру, поставив камеру на крепление и перемещая крепление, чтобы следовать за объектом, давайте посмотрим, как!

Шаг 1: Крепление камеры:

Крепление камеры
Крепление камеры

Это крепление для камеры, которое мы собираемся использовать. Он не полностью совместим с веб-камерой, и способ, которым я закрепил камеру на креплении, НЕМНОГО, мягко говоря, рудиментарный: D

Но пока это подойдет, и в будущем я, вероятно, напечатаю какой-нибудь адаптер на 3d-принтере или построю его полностью с нуля.

Этот тип крепления часто называют «креплением для панорамирования и наклона», поскольку они имеют 2 двигателя для управления панорамированием (вращение в горизонтальной плоскости) и наклоном (вращение вокруг оси y или «вверх-вниз»), как показано на картина.

Шаг 2: Arduino и RC-сервомоторы:

Arduino и RC-сервомоторы
Arduino и RC-сервомоторы

Для управления креплением мы будем использовать 2 сервомотора RC и один Arduino Uno.

На картинке вы можете увидеть необходимые подключения:

Сервопривод наклона: земля - макетная плата

VCC - макет VCC

сигнал - вывод D6

Сервопривод панорамирования: земля - макетная плата

VCC - макет VCC

сигнал - вывод D5

Шаг 3: Код Matlab:

Код Matlab
Код Matlab

Arduino будет полностью управляться с помощью Matlab, используя набор инструментов arduino от Matlab.

В этом разделе вы можете найти код:

blueCircleFollow2.m - это «основная» функция, K_proportional1.m - это вспомогательный скрипт, вызываемый из другого скрипта, он в основном содержит пропорциональный контроллер.

Используемый подход к управлению показан на рисунке: исходная позиция, в которой мы хотим, чтобы круг объекта находился в центре экрана, пропорциональный контроллер будет воздействовать на сигнал управления сервоприводами, чтобы получить ошибку, определенную как центр изображения - круг. центр, до 0.

Шаг 4: Представления:

Здесь вы можете найти два видео, показывающих, как работают алгоритм и контроллер.

В первом, более длинном видео, более подробно объясняются код, структура и стратегия управления, второе видео - это отрывок из первого, содержащий только видео системы, отслеживающей объект.

Как видите, алгоритм более чем способен следовать за объектом, когда он перемещается, но я считаю, что есть возможности для улучшений, введя более сложный контроллер, чем просто пропорциональный (coff PID coff coff) и несколько других идей.

Если у вас есть какие-либо вопросы, не стесняйтесь задавать их в комментариях, и если вы хотите увидеть следующие шаги, подпишитесь на мой канал на YouTube, я буду размещать все там!

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