Реклама ⓘ
Главная » Arduino
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Реклама ⓘ

Сейф, который распознает цвета

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

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

Шаг #1: Принцип распознавания цвета

  • Белый свет состоит из всех цветов радуги. Когда свет падает на поверхность, некоторые цвета поглощаются, а некоторые отражаются. Отраженные цвета – это цвета воспринимаемого нами объекта.
  • Для измерения и определения количества цвета с помощью электронной схемы, вам необходимо измерить интенсивность различных длин волн света, отраженного от поверхности. Самый простой способ сделать это – осветить одним цветом света поверхность за один раз, затем измерить общую интенсивность отраженного света.
  • По минимуму, необходимо использовать каждый первичный цвет света (красный, синий и зеленый). Поэтому датчик базового цвета будет иметь красный, синий и зеленый светодиоды, и светочувствительный датчик, такой как фоторезистор. Измеряя отраженный свет для каждого цвета можно вычислить цвет объекта.

Шаг #2: Изготовление датчика цвета

  • Датчик цвета имеет два основных компонента - светодиоды, которые излучают красный, синий и зеленый свет, а также светочувствительный датчик, который определяет интенсивность света.
  • Для светодиодов, я использовал одиночный полноцветный светодиод, который излучает все три цвета. Обычно, это четыре светодиода в одном. В нем четыре вывода, и каждый цвет имеет свой собственный вывод для катода (отрицательный вывод). Четвертый вывод – общий анод (положительный вывод) для всех трех светодиодов. Я использовал маркеры, чтобы поставить на выводы цветовые метки, которые помогут не перепутать выводы.
  • В качестве светочувствительного датчика я использовал фоторезистор (светочувствительный резистор). Он изменяет свое сопротивление в зависимости от количества света, попадающего на его лицевую сторону.
  • Чтобы использовать эти компоненты в качестве датчика цвета, необходимо соединить пару резисторов и проводов. Светодиод каждого цвета нуждается в своем номинале резистора, чтобы обеспечить падение напряжения до требуемого уровня. Я использовал резистор номиналом 51 Ом для синего вывода, еще один резистор 51 Ом для зеленого вывода и резистор 120 Ом для красного вывода. Для фоторезистора также нужен резистор, чтобы сделать делитель напряжения и измерить напряжение на выходе датчика. Номинал этого резистора будет зависеть от типа используемого фоторезистора. В моем случае, я использовал резистор номиналом 100 кОм. Я припаял все компоненты на монтажную плату.

Шаг #3: Установите световую заслонку вокруг датчика цвета

  • Нам необходимо, чтобы фоторезистор измерял свет только от светодиодов. Поэтому нужно заблокировать как можно больше окружающего света. Для этой цели я использовал простую световую заслонку.
  • Возьмите маленький кусочек картонки, затем согните так, чтобы она обернулась вокруг датчика. Прорежьте прорези в нижней части, которые будут служить в качестве язычков и согнутся под печатной платой. Оберните картонку вокруг датчика цвета и скрепите все стороны скотчем, чтобы картонка сохранила необходимую форму. Это позволит блокировать 100 процентов света и значительно улучшить работу датчика.

Шаг #4: Подсоедините датчик цвета к Arduino

  • Теперь вы готовы подсоединить датчик к Arduino. Сначала подсоедините три катодных вывода светодиода к цифровым выводам 8, 9 и 10. Затем подсоедините общий анод светодиода к выводу 5В.
  • Далее подсоедините светочувствительный датчик. Подсоедините свободный вывод фоторезистора к выводу GND. Подсоедините свободный вывод постоянного резистора к выводу 5В. И, наконец, подсоедините центральный вывод между двумя резисторами к аналоговому входному выводу 0.

Шаг #5: Подключите серводвигатель к Arduino

  • Я решил использовать небольшой серводвигатель для открытия и закрытия замка. Он подсоединяется непосредственно к Arduino. Для этого сначала подсоедините коричневый провод на серводвигателе к выводу GND на Arduino. Затем подсоедините красный провод на серводвигателе к выводу 5В на Arduino. В заключении подсоедините оранжевый провод на серводвигателе к цифровому выводу 6 на Arduino.
  • Теперь, когда вы запустите программный код, вы увидите, что серводвигатель активируется, если поместить предмет с соответствующим цветом перед датчиком.

Шаг #6: Пример программного кода Arduino

Шаг #7: Установка блокирующего устройства внутрь сейфа

  • Для блокировки сейфа я использую три винта с петлей и стопорный штифт. Два винта с петлей устанавливаются на внутренней стороне передней панели сейфа. Третий винт фиксируется на внутренней стороне крышки сейфа. Когда крышка закрыта, отверстия винтов с петлей выстроены в одну линию. Сейф закрыт благодаря тому, что штифт проходит через все три петли. Сейф открывается, когда штифт выходит из петель.
  • Стопорный штифт представляет собой кусок простой стальной проволоки (выпрямленная скрепка для бумаги). Он приводится в действие серводвигателем. Провод прикреплен к серводвигателю, к одному из отверстий на рычаге серводвигателя (рычаг исполнительного механизма).
  • Для установки серводвигателя на требуемой высоте, я установил его на несколько деревянных прокладок. Я тщательно выровнял их в один ряд и приклеил на месте с помощью клея.

Шаг #8: Прорежьте отверстие для датчика цвета

  • Существует несколько модификаций, которые необходимо внести в наш деревянный сейф. Сначала, необходимо просверлить отверстие в одной стороне для датчика цвета. Я решил прикрепить датчик цвета к нижней части сейфа, так он меньше привлекает внимание.
  • Я просверлил отверстия через нижнюю панель. Затем, я использовал маленькую пилу, чтобы осторожно прорезать панель. Далее я использовал маленький напильник, чтобы сгладить кромки прорези.

Шаг #9: Установите остальные компоненты внутрь сейфа

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

Шаг #10: Добавьте выключатель питания, чтобы сэкономить заряд батареи

  • Для продления срока службы батареи я добавил выключатель питания, установив его на нижней стороне сейфа. Он представляет собой простой переключатель без фиксации положения, который соединяет 9В батарею с выводом Vin на Arduino. Пока кнопка не нажата, питание не подается, и батарея не теряет свой заряд, когда сейф закрыт.
  • Альтернативный вариант: Еще один способ управления питанием – вывести 9В соединительный кабель наружу сейфа. При таком способе и закрытом сейфе питание никогда не пропадет. Отсоединение 9В батареи также добавит дополнительную возможность для процесса разблокировки. В таком случае понадобится как цветовой ключ, так и 9В батарея.

Шаг #11: Устройство готово к использованию

  • Для установки цвета закрытия и открытия замка откройте программный код в Arduino и установите значения "GreenBlueLockCode" и "GreenRedLockCode". Вы увидите значения для заданного цвета, используя Serial Monitor. После установки цветового кода проверьте его несколько раз при открытом сейфе для того, чтобы убедиться, что все работает правильно. Затем отсоедините Arduino от вашего компьютера и подсоедините 9В батарею.
  • Когда вы поднесете предмет с соответствующим цветом, сейф откроется. Неправильный цвет (или полное отсутствие цвета) не позволит разблокировать сейф. А теперь можете наслаждаться вашим новым сейфом, который открывается с помощью заданного цвета.

Оригинал статьи

Прикрепленные файлы:

Теги:

Опубликована: 0 0
Я собрал 0 1
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 5 Проголосовало: 1 чел.

Комментарии (4) | Я собрал (0) | Подписаться

+2
Sobs #
А что будет, если зеркало вместо ключа использовать?
Ответить
+1
Lictor #
Да ничего не будет, замок не откроется и все. Т.к. интенсивность света будет слишком высокой. А вот если настроить датчика зеркало, то ключем и будет оно, т.к. в противном случае интенсивности не хватит.
Ответить
0
Кирилл #
Кто сможешь помочь, даже могу не бесплатно, все собрал, все нормально вроде как, но в коде нашел 2 ошибки, их вроде как устранил, но датчик все ровно работает не так как нужно, я подношу красную картонку, он все ровно не открывает, сервопривод не реагирует, а светодиод просто по порядку мигает цветами и все....
Ответить
0
Боря #
Привет всем, кто только начинает. Вот готовый скетч
Прикрепленный файл: lock________.ino
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется сила тока?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Модуль измерения тока на ACS712 (30А)
Модуль измерения тока на ACS712 (30А)
DC-DC регулируемый преобразователь 1.5-37В 2А с индикатором USB осциллограф DSO-2090
вверх