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

Автоматический стрелок из лего

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

Arduino UNO
Это доска, которую я использовал для этого проекта. Однако подойдет и Arduino Uno.
× 1
Микро-серводвигатель SG90
Это двигатели, необходимые для проекта.
× 4
Перемычки (общие)
× 1
Стрельбная пушка Lego Star Wars
× 4
Макет (общий)
× 1

Необходимые инструменты и машины

Лента, электрика
Подойдет любая лента. Это совершенно не обязательно изолента.

Приложения и онлайн-сервисы

IDE Arduino
Программа, запускающая код Arduino на устройствах Mac, Windows и Linux.

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

Этот проект о том, чтобы Lego Cannons стреляли автоматически. Мне нравится играть с лего, и мне нравится использовать Arduinos, поэтому я решил заняться этим проектом в свободное время. Сервомоторы с прикрепленными к ним рогами вращаются, нажимая на рычаг и стреляя из пушки. Отличный первый, второй или третий проект для новичков!

Это пошаговое руководство о том, как это сделать.

Шаг 1. Аппаратное обеспечение

Шаг 1 Часть 1: Оборудование Основы

Начните с 5V, идущего к положительно заряженному ряду, и GRND, идущего к отрицательно заряженному ряду. Это будет выглядеть так -

Шаг 1, часть 2. Подключение сервопривода №1

Сервопривод имеет три провода:оранжевый / желтый (сигнальный) займет слот в ЦИФРОВОМ (PWM ~), красный (питание) подключится к VIN (который является любым контактом в положительном ряду), а черный / коричневый провод (GRND) пойдет к отрицательно заряженному ряду, подключенному к выводу GRND на Uno. Цифровой вывод, который я использовал для своего первого сервопривода, - 7. Вот как выглядит схема при подключении первого сервопривода -

Шаг 1, часть 3. Подключение остальных сервоприводов

Как только вы освоитесь с сервоприводами, все остальное будет проще простого. Однако следует отметить одну вещь:вы должны соответствовать цифровым контактам, которые вы прикрепили к сервоприводу в коде.

Например, код (который можно найти внизу страницы) гласит:

  secondCannon.attach (8);  

Следовательно, второй сервопривод должен быть подключен к цифровому выводу 8.

Таким же образом третий сервопривод должен быть подключен к цифровому выводу 6, а четвертый - к девятому цифровому выводу.

Однако их можно изменить в любом порядке. Просто убедитесь, что вы меняете как аппаратное, так и программное обеспечение для единообразия, иначе код не будет работать.

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

Поздравляю! Вы официально завершили аппаратную часть этого проекта.

Шаг 2. Программное обеспечение

Теперь скопируйте и вставьте код внизу страницы в эскиз Arduino и загрузите его. Перед загрузкой кода убедитесь, что у вас есть библиотека Servo, иначе она не сработает! Ниже приведено пошаговое руководство, объясняющее код и его значение при запуске программы.

  #include  // Включение библиотеки для ServosServo firstCannon; // Определение Первой Пушки как ServoServo secondCannon; // Определение второй пушки как ServoServo thirdCannon; // Определение Третьей Пушки как ServoServo 4thCannon; // Определение четвертой пушки как серво  

Этот код устанавливает Servo.h библиотека, которая будет играть фундаментальную роль в коде. Это можно показать в следующих строках, используя библиотеку для определения четырех пушек как сервоприводов или двигателей, которые можно поворачивать на 180 градусов.

  void setup () {// Код установки или код, который запускается только один раз Serial.begin (9600); // Запуск последовательной связи Serial.println («Защищай клонов! Установите защиту!») // Печатает что-то в последовательном мониторе firstCannon.attach (7); // Присоединяем цифровой контакт 7 к первой пушке secondCannon.attach (8); // Присоединяем цифровой контакт 8 ко второй пушке thirdCannon.attach (6); // Присоединяем цифровой контакт 6 к третьей пушке 4thCannon.attach (9); // Присоединяем цифровой вывод 9 к четвертой пушке}  

void setup () код используется практически в любом проекте Arduino, и это код, который запускается только один раз. В этом случае мы запускаем последовательную связь новой строки со скоростью 9600 бод. Затем мы печатаем данные в Serial Monitor. Чтобы запрограммировать сервоприводы, мы должны связать их имена с соответствующими цифровыми выводами. Это цель .attach () кусок кода.

  void loop () {// Код цикла или код, который запускается бесконечное количество раз Serial.println («Начало последовательности запуска») // Выводит что-то в Serial Monitor firstCannon.write (180); // Поворачиваем первый сервопривод на 180 градусов, вызывая задержку первой пушки (100); // Ждем 1/10 секунды firstCannon.write (0); // Вернуть сервопривод в исходное положение для подготовки к задержке перезагрузки (1000); // Ждем 1 секунду secondCannon.write (180); // Поворачиваем второй сервопривод на 180 градусов, вызывая задержку второй пушки (100); // Ждем 1/10 секунды secondCannon.write (0); // Вернуть сервопривод в исходное положение для подготовки к задержке перезагрузки (1000); // Ждем 1 секунду thirdCannon.write (180); // Поворачиваем третий сервопривод на 180 градусов, вызывая задержку третьей пушки (100); // Ждем 1/10 секунды thirdCannon.write (0); // Вернуть сервопривод в исходное положение для подготовки к задержке перезагрузки (1000); // Ждем 1 секунду 4thCannon.write (180); // Поворачиваем первую четвертую на 180 градусов, вызывая задержку четвертой пушки (100); // Ждем 1/10 секунды 4thCannon.write (0); // Вернуть сервопривод в исходное положение для подготовки к задержке перезагрузки (1000); // Ждем 1 секунду Serial.println ("Все пушки выстрелили"); Serial.println («Подготовка к перезагрузке»); задержка (10000); Serial.println («Перезагрузка завершена. Подготовка к повторному выстрелу»)}  

Это последний фрагмент кода, в котором используется void loop () функция, которая позволяет запускать следующий код бесконечное количество раз. Затем мы печатаем в Serial Monitor, что пушки собираются выстрелить. Сервоприводы для каждой пушки должны вращаться на 180 градусов, а затем по очереди возвращаться в исходное положение. После этого должно пройти 10 секунд (время перезагрузки), пока процесс не повторится снова.

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

Шаг 3. Установка

На последнем этапе требуются пушки лего и старомодная обычная лента. Пушка лего выглядит так -

Запустите код. Посмотрите, в какую сторону вращается сервопривод. Прикрепите сервопривод к пушке лего так, чтобы его траектория установила курс на столкновение с рычагом наверху пушки на картинке выше.

Молодец! Вы официально завершили этот проект. Как я уже сказал, оставляйте комментарии в разделе ниже, если у вас есть какие-либо вопросы.

Если вам понравился этот проект, посмотрите эти ссылки -

https://create.arduino.cc/projecthub/342600/basketball-hoop-with-buzzer-using-an-arduino-693bad?ref=user&ref_id=1536504&offset=1

https://create.arduino.cc/projecthub/ShreyanR/soundbox-826a56

Код

  • Кодекс стрелка из Lego Gun
Код Lego Gun Shooter C / C ++
Вставьте это в Arduino IDE
 #include  // Включая библиотеку для ServosServo firstCannon; // Определение Первой Пушки как ServoServo secondCannon; // Определение второй пушки как ServoServo thirdCannon; // Определение Третьей Пушки как ServoServo 4thCannon; // Определение четвертой пушки как сервоида setup () {// Код установки или код, который запускается только один раз Serial.begin (9600); // Запуск последовательной связи Serial.println («Защищайте клонов! Установите защиту!») // Распечатайте что-нибудь в последовательном мониторе firstCannon.attach (7); // Присоединяем цифровой контакт 7 к первой пушке secondCannon.attach (8); // Присоединяем цифровой контакт 8 ко второй пушке thirdCannon.attach (6); // Присоединяем цифровой контакт 6 к третьей пушке 4thCannon.attach (9); // Присоедините цифровой вывод 9 к четвертой пушке} void loop () {// Код цикла или код, который выполняется бесконечное количество раз Serial.println ("Начало последовательности стрельбы") // Распечатайте что-нибудь в Serial Monitor firstCannon. написать (180); // Поворачиваем первый сервопривод на 180 градусов, вызывая задержку первой пушки (100); // Ждем 1/10 секунды firstCannon.write (0); // Вернуть сервопривод в исходное положение для подготовки к задержке перезагрузки (1000); // Ждем 1 секунду secondCannon.write (180); // Поворачиваем второй сервопривод на 180 градусов, вызывая задержку второй пушки (100); // Ждем 1/10 секунды secondCannon.write (0); // Вернуть сервопривод в исходное положение для подготовки к задержке перезагрузки (1000); // Ждем 1 секунду thirdCannon.write (180); // Поворачиваем третий сервопривод на 180 градусов, вызывая задержку третьей пушки (100); // Ждем 1/10 секунды thirdCannon.write (0); // Вернуть сервопривод в исходное положение для подготовки к задержке перезагрузки (1000); // Ждем 1 секунду 4thCannon.write (180); // Поворачиваем первую четвертую на 180 градусов, вызывая задержку четвертой пушки (100); // Ждем 1/10 секунды 4thCannon.write (0); // Вернуть сервопривод в исходное положение для подготовки к задержке перезагрузки (1000); // Ждем 1 секунду Serial.println ("Все пушки выстрелили"); Serial.println («Подготовка к перезагрузке»); задержка (10000); Serial.println («Перезагрузка завершена. Подготовка к стрельбе снова»)} 

Схема


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

  1. Клейкая лента
  2. Целлофановая лента
  3. Arduino Spybot
  4. FlickMote
  5. Самодельный телевизор B-Gone
  6. Основные часы
  7. Игра Giant Animatronics Lego Minfig Operation Game
  8. Найди меня
  9. SunGlass-BOT [автоматизированная пара солнцезащитных очков]
  10. Arduino Power