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

Лазерный триггер Arduino

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

Arduino UNO
Или совместимая плата Arduino Uno
× 1
половинный размер макетной платы без пайки
× 1
Резистор 10 кОм
× 3
Перемычки (общие)
× 1
Фоторезистор
× 2
Лазерный диод
× 1
Кнопочный переключатель SparkFun, 12 мм
× 1
Зуммер
× 1

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

IDE Arduino

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

Создание лазерной натяжной проволоки

Компоненты

Нам понадобится следующее:

  • Некоторые перемычки
  • резисторы 3 x 10 кОм.
  • 2 фоторезистора
  • Кнопка
  • Зуммер
  • Лазер
  • Ардуино
  • Макет
  • и зеркало

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

Сделайте лазерный детектор

Я собираюсь начать с раздела схемы лазерного обнаружения.

Сначала возьмите две перемычки. У меня есть красный и желтый. Поместите две перемычки в 2 отдельные клеммные колодки. Возьмите фоторезистор и подключите его к красному проводу и клеммной колодке. Поместите другой фоторезистор между другой клеммной колодкой и красным проводом. Подключите резистор 10 кОм от желтого провода к одному из фоторезисторов, а другой резистор 10 кОм между другим фоторезистором и желтым проводом. Возьмите еще два вывода и подключите их к каждому пересечению фоторезисторов и резисторов 10 кОм. Я использовал перемычки зеленого и оранжевого цветов.

Подключите желтый вывод к минусу макетной платы, а красный - к плюсу макетной платы. Подключите оранжевый к A0 (фоторезистор, подключенный к нему, будет лазерным детектором), а зеленый к A1 (фоторезистор, подключенный к нему, будет детектором окружающего света).

А теперь займемся зуммером

Поместите зуммер в любое место на макетной плате. Подключите провод между минусовой шиной и минусом зуммера. Подключите положительный конец зуммера к контакту 3 Arduino.

Сделайте кнопку

Далее мы собираемся сделать секцию кнопок

Поместите кнопку между двумя клеммными колодками (убедитесь, что контакт есть только тогда, когда кнопка нажата между двумя клеммами). Поместите последний резистор 10 кОм на один конец кнопки и отрицательный вывод. Я использовал перемычку, чтобы подключить его к шине заземления. Подключите другой конец кнопки к положительной шине. Затем подключите точку пересечения кнопки и резистора к выводу 4 Arduino.

Время для лазерного света!

Наконец, давайте подключим лазер к контакту 2 и земле. Я использовал контакты на Arduino для обоих. Я использовал дешевый лазер, который я «взломал», соединив зажимы типа «крокодил» с пружиной и корпусом с помощью липучки, удерживающей кнопку.

Я написал программу для запуска Laser Trip Wire.

Он постоянно проверяет, нажата ли кнопка. При ее нажатии мы переходим в режим настройки, при повторном нажатии переходим в режим охраны.

Если мы находимся в режиме настройки, он делает следующее:

  • Он выводит значения на последовательный порт.
  • Когда свет на фоторезисторе достаточно яркий, загорается контакт 13. Эта особенность позволяет наводить лазер на цель.

В режиме охраны выполняет следующие действия:

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

В режиме отключения растяжка была «отключена»:

  • Он издает 3 звуковых сигнала, и данные отправляются на последовательный порт,
  • затем возвращается в режим охраны.

Код

  • Лазерная растяжка
Laser Tripwire Arduino
 // 5-контактный отключающий провод // Переменные int mode =1; int ambiant; int trip =1000; // Значение света, которое я получаю при использовании моего лазераint minLight =900; int makeBeep =1; // 0 - без звукового сигнала, 1 - для звукового сигнала! Int atAverage; long millisCount; // Вывод Pinsint laserPin =2; int ledPin =13; int buzzerPin =3; String modeNames [3] ={"НАСТРОЙКИ", "ARMED", "TRIP"}; // Ввод Pinsint modePin =4; int tripPin =A0; int ambiantPin =A1; void setup () {pinMode (ledPin, ВЫХОД); pinMode (laserPin, ВЫХОД); pinMode (buzzerPin, ВЫХОД); pinMode (modePin, ВХОД); Serial.begin (9600);} void loop () {// При нажатии кнопки if (digitalRead (modePin) ==1) {trip =analogRead (tripPin); режим =режим + 1; если (режим> =2) {режим =0; } звуковой сигнал (1); задержка (300); } // что-то делает при изменении режима switch (mode) {case 0:// режим калибровки digitalWrite (laserPin, HIGH); амбиант =аналоговое чтение (амбиантпин); trip =analogRead (tripPin); atAverage =ambiant + ((trip - ambiant) / 2); статистика (); если (поездка> =minLight) {digitalWrite (ledPin, HIGH); } else {digitalWrite (ledPin, LOW); } ломать; case 1:// Режим охраны digitalWrite (laserPin, HIGH); digitalWrite (ledPin, LOW); амбиант =аналоговое чтение (амбиантпин); atAverage =ambiant + ((trip - ambiant) / 2); если (analogRead (tripPin)  =3000) {millisCount =millis (); статистика (); } ломать; case 2:// Режим отключения if ((millis () - millisCount)> =1000) {millisCount =millis (); статистика (); звуковой сигнал (3); mode =1; } ломать; } задержка (1); // ждем немного} // Beepsvoid beep (int qty) {int count; if (makeBeep ==1) {for (count =1; count <=qty; count ++) {digitalWrite (buzzerPin, HIGH); задержка (50); digitalWrite (buzzerPin, LOW); задержка (50); }}} // Записывает статистику в Serial Portvoid stats () {Serial.print ("A:"); Serial.print (амбиантный); Serial.print ("T:"); Serial.print (поездка); Serial.print ("AT:"); Serial.print (atAverage); Serial.print ("РЕЖИМ:"); Serial.print (modeNames [режим]); Serial.println ("");} 

Схема

Макетная плата Схематический вид

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

  1. Сборка Squid Games Doll с использованием Arduino UNO
  2. Часы Arduino с исламским временем молитв
  3. Робототехническая система для обнаружения человека с использованием Arduino Uno
  4. WebServerBlink с использованием Arduino Uno WiFi
  5. Простой калькулятор UNO
  6. Отображение изображения на ЖК-экране TFT с помощью Arduino UNO!
  7. Постоянство видения
  8. Управление светодиодной матрицей с помощью Arduino Uno
  9. Wi-Servo:серводвигатели, управляемые через браузер Wi-Fi
  10. 4-контактный ШИМ-контроль вентилятора, 25 кГц, с Arduino Uno