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

Управление двухосной подставкой для FPV камеры с модулем джойстика

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

Arduino UNO
× 1
Микро-серводвигатель SG90
× 2

Об этом проекте

Всем привет

Сегодня мы увидим полное руководство о том, как управлять 2-осевой подставкой для камеры FPV с модулем джойстика. База для камеры поставляется в небольшой упаковке, содержащей несколько акриловых опор и деталей, несколько винтов и два серводвигателя.

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

  • Как просто связать модуль джойстика с платой Arduino
  • Используйте серводвигатели с Arduino.

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

Это демонстрация того, что у нас будет в конце:

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

Чтобы меня не смущала ось джойстика, у моего джойстика (ось X вверху, затем ось Y) здесь, на картинке, они перевернуты и названы иначе, но я позволил проводке, как я использовал, вы можете изменить ее, как вам нравится (серво-штифты, джойстик входы, направления…)

Чтобы не сбивать вас с толку, потому что на самом деле я использовал много кодов в видео, но они очень простые (позиционирование сервопривода, считывание аналогового значения с джойстика ...). Я сделал это до того, как вы сможете проверить мои другие уроки, так что вот Я загрузил только два кода для двух окончательных версий, как показано на видео.

Если вам что-нибудь понадобится по этому поводу, вы можете связаться со мной.

Код

  • Код 1, как на видео
  • Код 2, как на видео
Код 1 как в видео Arduino
 // Этот код предназначен для использования с двухосной подставкой для fpv-камеры, которая использует два сервопривода, добавляя модуль джойстика // мы контролируем положение подставки, перемещая аналоговый джойстик, подставка следует за движениями джойстика // См. Surtrtech.com для получения дополнительной информации # include  // Библиотека сервоприводов и объявлениеServo myservo1; Servo myservo2; int YAxis =1; // Объявление, где соединены оси X и Y контактов джойстика int XAxis =0; // Конечно аналоговые входыvoid setup () {Serial.begin (9600); // Установка скорости последовательного монитора и запуск pinMode (XAxis, INPUT); // Объявление режимов вывода и вывод сервопривода myservo1.attach (8); pinMode (YAxis, ВХОД); myservo2.attach (9);} недействительный цикл () {int X =analogRead (XAxis); // Считывание с потенциометра оси X X =X * 0.1756; // Преобразование диапазона потенциометра из 0-1023 в 0-180 пределы сервопривода, вы можете изменить их, если у вас есть сервоприводы на 360 ° X =180-X; // Это используется для поворота сервопривода в точное положение в противном случае он будет перевернут myservo1.write (X); // После адаптации мы вводим это значение в первую серво int Y =analogRead (YAxis); // Чтение с потенциометра оси Y Y =Y * 0.1466; // Здесь мы выполнили преобразование, которое соответствует ограничениям сервопривода, поэтому мы перешли с 0-1023 на 0-150 myservo2.write (Y); // И мы вводим в наш сервопривод} 
Код 2 как на видео Arduino
 // Этот код предназначен для использования с двухосной подставкой для fpv-камеры, которая использует два сервопривода, добавляя модуль джойстика // Мы контролируем положение подставки, перемещая аналоговый джойстик, подставка перемещается в направлении, где находится джойстик указывая // до пределов и оставайтесь там // Обратитесь к surtrtech.com для получения дополнительной информации # include  // Библиотека сервоприводов и объявлениеServo myservo1; Servo myservo2; int a, b, X, Y; // Переменные, необходимые позже int YAxis =1; // Объявление, где соединены оси X и Y контактов джойстика int XAxis =0; // Конечно аналоговые входыvoid setup () {Serial.begin (9600); // Установка скорости последовательного монитора и запуск pinMode (XAxis, INPUT); // Объявление режимов вывода и вывод сервопривода myservo1.attach (8); pinMode (YAxis, ВХОД); myservo2.attach (9);} цикл void () {a =myservo1.read (); // Чтение предыдущих позиций сервоприводов - важный шаг, поэтому мы можем знать, где они должны располагаться в следующий раз b =myservo2.read (); X =analogRead (XAxis); // Считываем значения джойстика Y =analogRead (YAxis); if (X> 550) {// Здесь мы не проводили калибровку, поэтому джойстик имеет три положения (Left | Resting | Right) a =a-1; // это зависит от значения, которое мы читаем, мы можем знать, в каком направлении указывает палка, и я оставил положение покоя большим, на самом деле это всего лишь 1 значение myservo1.write (a); // вводим новое значение delay (50); // Вы можете сделать задержку большой или короткой или действовать на a =a-x, чтобы сделать большие или короткие шаги} if (X <450) {a =a + 1; // Здесь мы выполнили противоположную операцию для перемещения в противоположном направлении myservo1.write (a); задержка (50); } if (Y> 600) {// Здесь мы не выполняли калибровку, поэтому джойстик имеет три положения (Вверх | Отдых | Вниз) ditto b =b + 1; myservo2.write (б); задержка (50); } если (Y <450) {b =b-1; myservo2.write (б); задержка (50); } 

Схема

Есть верхний сервопривод и нижний сервопривод, не путайте их

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

  1. Контроль доступа с помощью QR, RFID и проверки температуры
  2. Малина с кулачком в скворечнике
  3. Камера безопасности Discord с ESP32
  4. Дезинфекция робота ультрафиолетовым светом
  5. Управление монетоприемником с помощью Arduino
  6. Пульт дистанционного управления для телевизора с питанием от батареи и футляр, напечатанный на 3D-принтере
  7. Робот с сервомотором избегает препятствий
  8. Arduino с Bluetooth для управления светодиодом!
  9. Токарный станок с ЧПУ
  10. Управление функциями токарного станка с наклонной станиной с проверочной графикой