Пью Пью! Как Построить Лазерную Башню с Arduino

  1. Что тебе понадобится
  2. План строительства
  3. Серво Тестирование
  4. Тестирование лазера и звука Pew Pew
  5. Создание башни
  6. Программирование башни
  7. В бою

Реклама

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

Что тебе понадобится

  • Arduino
  • 2 сервопривода
  • Лазерный модуль, например, один из этот комплект датчиков
  • Пьезо-зуммер или другое маленькое устройство вывода
  • Металлическая проволока и кабельные стяжки для крепления
  • Длинные женские-> мужские соединительные кабели, а также обычные соединительные

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

План строительства

Основная идея турели состоит в том, чтобы поместить лазерный модуль поверх одного сервопривода, чтобы обеспечить горизонтальное вращение; затем установите этот пакет на другой сервопривод, расположенный под углом 90 градусов, чтобы обеспечить вертикальное перемещение. У нас есть пьезо, чтобы обеспечить звуковые эффекты, и я добавляю дымовую машину для хорошей меры.

Серво Тестирование

В зависимости от вашего сервопривода, провода могут быть окрашены по-разному, но в целом:

  • Красный - это положительный провод, и на обоих моих сервоприводах он был центром трех - для подключения к шине + 5В.
  • Коричневый или черный - это негатив, который должен быть подключен к GND на Arduino.
  • Белый или оранжевый - это сигнальный провод, который нужно подключить к выводу цифрового ввода / вывода с ШИМ (9 и 10 в демонстрационном примере ниже).

После того, как вы подключите два сервопривода, загрузите следующий пример кода. Я назвал один сервопривод Hori для управления горизонтальным движением, а другой - Vert. Каждый должен выполнить полный диапазон движения (около 60 градусов, в моем случае).

#include <servo.h> Servo vert, hori; // создаем сервообъект для управления сервоприводом // можно создать максимум восемь сервообъектов int pos = 0; // переменная для хранения позиции сервопривода void setup () {hori.attach (9); vert.attach (10); // присоединяет сервопривод на выводе 9,10 к сервообъектам vert.write (0); hori.write (0); } void loop () {for (pos = 0; pos <180; pos + = 10) // изменяется от 0 градусов до 180 градусов {// с шагом 10 градусов vert.write (pos); hori.write (позы); // сказать сервоприводу перейти в позицию в переменной 'pos' delay (100); // ждет 100 мс, пока сервопривод достигнет положения} for (pos = 180; pos> = 1; pos- = 10) // возвращается от 180 градусов к 0 градусам {vert.write (pos); // сообщаем сервоприводу перейти в позицию в переменной 'pos' hori.write (pos); задержки (100); // ждет сервопривода 100 мс, чтобы достичь позиции}}

Все хорошо? Идем дальше.

Тестирование лазера и звука Pew Pew

Лазерный модуль похож на светодиод, но в него встроен резистор, поэтому мы можем подключить его непосредственно к цифровому вводу / выводу - очень просто. Если вы используете тот же лазерный модуль, что и у меня, « - » переходит к GND , S - к выводу 12. Измените приведенный выше пример кода, чтобы вывод 12 выводил:

int laser = 12; pinMode (лазер, OUTPUT);

Затем моргайте контактом на каждой петле, используя стандартный метод digitalWrite () .

Мы просто используем PWM для управления пьезо-зуммером на комфортном уровне звука - вы можете поэкспериментировать с использованием библиотеки тонов, если хотите, но мне нужен простой шум. Подключите черный провод к земле и красный провод к контакту 11. Определите зуммер на соответствующем контакте, установите выходной режим и активируйте, используя analogWrite (зуммер, 100) (или любое другое число, которое вы хотите до 254); и analogWrite (зуммер, 0), чтобы выключить.

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

Все ваши компоненты должны работать - теперь нам нужно связать все это вместе.

Создание башни

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

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

Наконец, я прикрепил все это к ножке стола с еще большим количеством кабельных стяжек и небольшим количеством древесины.

Программирование башни

Я не знаю о вас, но моя идея лазерной башни основана на бесчисленном количестве научно-фантастических фильмов и эпизодов из "Звездного пути". Неизменно кто-то пролетит мимо башни, и маленькие выстрелы, сделанные на скамье подсудимых, будут лететь стремительными темпами, всегда на миллисекунды слишком медленно, поэтому наш главный герой на самом деле не попадет в цель. Это то, что я пытаюсь воспроизвести, хотя не стесняйтесь настраивать основной режим, чтобы соответствовать вашему представлению о том, что должна делать турель.

Вот псевдокод, который я использовал для основного цикла:

  • Рандомизируйте время между очередями и время между каждым выстрелом.
  • Произведите рандомизацию начальной и конечной позиции для каждого сервопривода, вертикали и горизонта.
  • Случайное количество снимков, чтобы сделать.
  • Определите количество степеней изменения после каждого выстрела как разницу между начальной и конечной позициями, деленную на количество выстрелов.
  • Переместите сервоприводы в исходное положение и немного подождите, пока они достигнут (100 мс)
  • Зацикливайтесь, пока не будут сделаны все снимки, каждый раз слегка перемещая сервоприводы, как рассчитывалось ранее; двигаться и стрелять, двигаться и стрелять.
  • Повторение.

Я также добавил отдельный метод fire (), чтобы немного лучше структурировать код. Отрегулируйте диапазоны всех функций random () для ускорения или замедления каждого параметра; или увеличьте количество выстрелов для более энергичного танцевального клуба. Прокрутите вниз для видео кода в действии!

#include <servo.h> Servo vert, hori; // создаем сервообъект для управления сервоприводом int pos = 0; // переменная для хранения позиции сервопривода int laser = 12; int buzzer = 11; void setup () {hori.attach (9); vert.attach (10); // присоединяет сервопривод на выводе 9 к сервообъекту pinMode (laser, OUTPUT); pinMode (зуммер, OUTPUT); } void loop () {int timeBetweenBursts = random (200,1000); int timeBetweenShots = random (50,200); int vertStart = random (1,180); int vertEnd = random (1,180); int horiStart = random (1180); int horiEnd = random (1 180); int numShots = random (5,20); int vertChange = (vertEnd - vertStart) / numShots; // на сколько нужно перемещать вертикальную ось каждым выстрелом int horiChange = (horiEnd - horiStart) / numShots; vert.write (vertStart); // сначала дайте ему добраться до начальной позиции, немного подождите hori.write (horiStart); задержки (100); for (int shot = 0; shot <numShots; shot ++) {vert.write (vertStart); hori.write (horiStart); vertStart + = vertChange; // увеличить значение vert для следующего раза horiStart + = horiChange; Пожар(); Задержка (timeBetweenShots); // добавить немного разнообразия в скорость выстрелов} delay (timeBetweenBursts); } void fire () {digitalWrite (laser, HIGH); analogWrite (зуммер, 100); delay (20); // отрегулируйте это, чтобы изменить длину выстрела турели digitalWrite (laser, LOW); analogWrite (зуммер, 0); }

В бою

Я не думаю, что есть практическое применение для этой маленькой игрушки, но это очень весело, и есть множество переменных, которые можно настроить, чтобы получить желаемый эффект. Возможно, это пригодится для домашнего фильма LEGO?

Возможно, это пригодится для домашнего фильма LEGO?

Реклама

Календарь

Архивы

Балка бампера ВАЗ 2114 переднего (АвтоВАЗ)
Настоящим в соответствии с Федеральным законом № 152-ФЗ «О персональных данных» от 27.07.2006 года Вы подтверждаете свое согласие на обработку ООО «РАТ» персональных данных: сбор, систематизацию, накопление,

Тюнинг заднего бампера своими руками ваз 2114
Семейство ВАЗ Лада «Самара» отличается довольно оригинальной и привлекательной внешностью. Каждый автомобиль обладает индивидуальными чертами, благодаря которым создается особенный и запоминающийся стиль.

Снимаем передний бампер ваз 2110
Тюнинг бампера. Немного истории Ваз 2110 – это уже история, так сказать классика жанра. Модель, в простонародье называемая «десятка», должна была сойти с конвейера еще в 1992 году, но так как

Розничный магазин - Бампера, двери, капоты ВАЗ, лада Калина, лада Приора купить Нижний Новгород, Дзержинск
Предприятие ООО "Бампер-НН" осуществляет свою деятельность с 2004 года.  Основное направление деятельности:  - окрашивание и продажа пластмассовых деталей для легковых автомобилей марки «ВАЗ»:

ВАЗ 2115: покраска кузова (цвета) и бампера своими руками
Покраска автомобиля своими руками является способом значительной экономии средств. Это особо актуально для бюджетных моделей, таких как ВАЗ 2115. Это объясняется тем, что они не требуют дорогостоящих

Тюнинг автомобилей ВАЗ 2115 — стильный обвес и мощный двигатель
Как бы ни старался АвтоВАЗ выпускать автомобили близкие к мировым стандартам автомобилестроения, к сожалению, у него это очень плохо получается. Даже скопированный дизайн с иномарок, и тот оставляет

Ваз кузовные детали в цвет: особенности крашенных и некрашенных деталей для Лада Приора и других вазовских моделей
Детали кузовные ваз На Ваз кузовные детали сегодня можно найти из различных источников. Это может быть рынок, автомагазины или интернет. Некоторые владельцы находят даже крашеные кузовные детали Ваз,

Тюнинг ВАЗ 21099
Как всегда начнем наш тюнинг с самого важного элемента любого автомобиля. Тюнинг двигателя Большинство отечественных машин, имеют много недоработок, которые снижают мощность двигателя и ходовой

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

Тюнинг ваз 2114 своими руками: салон, чип тюнинг (мощность двигателя), капот и бампер
Владельцы автомобилей почти всегда интересуются, как бы сделать свой транспорт совершеннее и лучше, чем сошедшие с конвейера образцы. Такая тема, как тюнинг ВАЗ-2114, привлекает внимание всех, купивших

© 2013
Powered www.avtodrom-tv.ru © 2016