вторник, 2 сентября 2014 г.

Кодовый замок на 4х резисторах - DoorLock with 4 pot

Попытался спроектировать универсальную базу для крепежа разного вида платок в одну кучу. Что-то типа стенда.
Для ее проверки решил собрать что-нить новенькое на стандартных компонентах. Выбор пал на имитацию кодового замка на камерах хранения которые стояли на ЖД вокзалах когда-то. Ну конечно же не один-в-один, а улучшенную версию :)

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

Четыре переменных резистора для ввода четырёхзначного кода доступа

Так как сервомотор нужен только для индикации, то он подключается непосредственно в порт

Светодиод нужен для индикации открытия замка, кнопка - для сброса и ввода нового кода

Все это подключается в плату BlockIO, которая в свою очередь подсоединяется к Blockduino
Принцип работы прост. Код доступа задается статически (в планах сделать его изменяемым динамически, перепрограммировать и сохранять в постоянной памяти путем нажатия кнопки, которая доступна из "безопасной" зоны, т.е. изнутри сейфа/комнаты).
Далее:

  • система проверяет установку резисторов, если они все в "нуле", то ждем и начинаем все сначала
  • иначе (если есть какой-то код) подаем коротенький сигнал (баззером и светодиодом) и сверяем код доступа с эталоном
  • если код доступа не совпадает начинаем все сначала
  • иначе (код правильный) начинаем активно сигналить и ждем обнуления кодовых резисторов (защита от дурака, чтоб не оставлять код на резисторах)
  • когда резисторы обнулили переводим замок в положение открыто на пару секунд (с соответствующим сигналом) и возвращаем все в исходное положение
  • начинаем все сначала