Когда-то давно я увлекался игрой в страйкбол и мне захотелось несколько разнообразить наши игры. Я состоял в команде, где есть бодрый командир, который генерил интересные сценарии. В результате подготовке к одной из игры у меня и родилась идея создать этот проект.
Что это? Де-факто, это простой кодовый замок. Вот только вместо привычных кнопок с цифрами, в качестве ключа использовался … ключ :) Некий плоский элемент с отверстиями.
Как использовался этот прибор? На локации были разбросаны ящики. Каждый ящик был заперт этим замком. Для открывания ящика нужен ключ. Ключ надо было сделать "самому". Т.е. игроку надо было сначала добыть "болванку" ключа, а затем чертеж/схему. Проковыряв нужные отверстия он мог открыть нужный ему ящик. Или добыв схему он мог прийти к мастеру, который и изготовит ключ.
Железо
Для пояснения решил привести вид собранного девайса. По нему ориентироваться нагляднее, чем по схеме.
Вид с обратной стороны
Что мы видим?
Два черных коннектора слева – это разъем для основного и резервного источника питания. Основным источником является страйкбольный аккум, который через переходник цепляется к верхнему разъёму. Нижний коннектор выводится наружу и прикрывается крышечкой, что бы всякий мусор не лез. Предполагается, что если сядет основная батарея, игровой мастер сможет открыть ящик, используя резервную батарею.
Ниже, два белых коннектора предназначены для светодиодов, которые крепятся снаружи ящика. Цвета: зеленый и красный.
Ряд светодиодов нужны для индикации кода считанного ключа.
Две кнопки нужны в верхнем углу нужны для переключения режимов работы девайса. Они доступный для пользователей, так как «торчат» наружу.
Кнопка в нижнем правом углу нужна для программирования мастер-ключа. Доступ к ней только после вскрытия корпуса.
Окно в плате, обрамлённое оптопарами – «замочная скважина». Через окно считывается ключ. Предусмотрен вариант как для установки оптрона на основе дискретных компонентов, так и использования фотоинтераптора. На 3D изображении видны оба варианта.
Две синие винтовые клеммы. Одна нужна для подключения соленоида замка, на другую можно подключить любой другой исполнительный механизм. Логика второго управляемого выхода не прописана.
Схемотехника.
По схеме тут говорить особо нечего. Вполне типичное включение кнопок, светодиодов, зуммера, щелевых оптронов.
Хотелось бы отметить, что цели сделать максимально минимально жрущее устройство не стояло. Даже «дохлый» страйкбольный аккум может питать эту штуку несколько дней. Потому тут можно встретить не совсем верные решения для электроники, которая работает от «батареек», а именно я не использую спящие режимы/режим экономии энергии, нет отключаемых делителей напряжения/подтяжек и прочие хитрости.
Логика работы.
Всего есть два типа ключей. Мастер-ключ и игровые ключи. Мастер нужен для открывания всех замков. Используется организаторами игры для пополнения ящика, вход в режим программирования игровых ключей.
Игровые ключи – те, которые на руках у игроков. В одно устройство можно запрограммировать несколько игровых ключей, но как правило, на один замок приходится по одному игровому ключу. Пока так хватало.
Кстати, сам ключ выглядит вот так.
Суть в том, что отверстия очень бодро заливаются парафином и достаточно хорошо «ковыряются» в полевых условиях. Как вы можете видеть, есть два ряда отверстий. Каждый ряд считывается своей оптопарой. Код состоит из одно байта. Один ряд определяет количество нулей, другой ряд количество единиц. В каждом столбце должен быть вскрыто только одно окно. Оба закрытых или оба вскрытых окна не допускается, иначе будет ошибка чтения ключа.
На самом деле, я сейчас не помню какой ряд отвечает за нуль, а какой за единицу. Да это и неважно. Ключ будет считан корректно если его вставить вверх ногами. Считанное значение, в бинарном виде, будет отображено на светодиодах.
Сканирование происходит по пере движения ключа относительно оптопар. Предусмотрена светозвуковая сигнализация следующих событий: прочитан верный ключ, ключ прочитан, но он не от другого замка, ключ считан с ошибкой
Процесс занесения ключей в память.
На устройстве имеются три кнопки: SB1, SB2, SB3.
Срабатывание кнопки фиксируется по отпусканию.
Нажатие на кнопку SB3 аналогично считыванию мастер-ключа.
SB3+SB1 – режим записи пользовательского ключа (сканированием)
SB3+SB2 – режим записи мастер-ключа.
Подтверждение записи и выход из режима – нажатие на SB3.
В режиме записи ключа мастера красный светодиод горит, зеленый мигает.
В режиме записи пользовательского ключа, красный мигает, зеленый горит.
Переход между режимами возможет только через выход из текущего (нажать на мастер-кнопку)
Контроль аккумулятора.
После подачи напряжения на изделие, загораются все светодиоды, подаётся напряжение на соленоид, включается звук. Это сделано для того, что бы нагрузить аккумулятор. В течение нескольких секунд делаются замеры, затем это напряжение выводится на светодиоды. Это нужно, что бы игротех сразу видел состояние батареи. Затем, с определенным периодом измеряется напряжение на батарее и информация о её состоянии выводится уже на два наружных светодиода. Это достаточно удобно, так как можно не открывая ящик оценить состояние батареи. Ниже я привел "коды" состояния батареи.
Интервалы мигания светодиодов.
Короткая вспышка (КВ)– 50 мс.
Коротка пауза (КП)100 мс
Длинная вспышка (ДВ) 250мс
Длинная пауза (ДП) 1000мс
Критерий заряда батареи.
12В и более – заряжена полностью Зел (КВ-КП-КВ-ДП)
11.9-9.0 – средний уровеньЗел (КВ-ДП)
8.9 – 8 низкий уровень Кр (КВ-КП-КВ-ДП)
Менее 7,9 – села. Кр (КВ-ДП)
В качестве «понижайки» юзаю вот этот китайский DC/DC.
Конструкция.
Устройство крепится «плоской» стороной к стенке ящика. В стене делается прорезь для ключа. Аналогично можно закрепить на двери шкафа, например. Наружу выводятся два статусных светодиода и секретный разъем для внешнего питания. После подачи внешнего питания всё равно нужен ключ для открывания. Автоматом он от внешки не откроется.
А вот так выглядит девайс в реале.
Как прошить девайс?
В приложении к статье есть *.bin файл, который загружается во флешку микроконтроллера при помощи ST-link (или китайского клона) программатора. Программатор подключается через разъем XP2. Используемый софт: STM32CubeProgrammer. Качается бесплатно с оф.сайта компании.
Косяки в конструкции корпуса.
Не хватает «шахты» ключа для обеспечения движения горизонтально земле. В данной конструкции ключ, пока не попадет в прорезь крышки, может «пикировать»/«кабрировать» По-хорошему, нужно сделать «коридор» со стороны крышки. Это стабилизирует ключ во время движения после выхода ключа из печатной платы.
Что в приложении к статье.
В приложении вы найдете pdf файл со схемой, обе стороны PCB (в масштабе 1:1, отзеркалено), виды TOP/BOT для монтажа, прошивку для MCU в виде *.bin, файлы для печати корпуса + файл для изготовления ключа.
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот | |
---|---|---|---|---|---|---|---|
BL1, BL2 | Фототранзистор | L-3DP3C (L-32P3C) | 2 | Фототранзистор 3мм | Поиск в магазине Отрон | ||
BM1 | Динамик | HCM1203X | 1 | зуммер | Поиск в магазине Отрон | ||
C1, C2 | Конденсатор | 20 пФ | 2 | GRM2165C1H200J** SMD0805 | Поиск в магазине Отрон | ||
C3, C6 | Конденсатор | 4.7 мкФ | 2 | GRM31CR71H475KA12L SMD1206 | Поиск в магазине Отрон | ||
C4, C5 | Конденсатор | 0.1 мкФ | 2 | GRM21BR71H104K SMD0805 | Поиск в магазине Отрон | ||
DA1, DA2 | Оптрон | ITR-9608 | 2 | Поиск в магазине Отрон | |||
DD1 | Микроконтроллер | STM32F030K6T6 | 1 | Поиск в магазине Отрон | |||
DD2 | Регистр | 74HC595D | 1 | Поиск в магазине Отрон | |||
DD3 | Модуль DC/DC | D-SUN | 1 | Поиск в магазине Отрон | |||
FV1 | Диод | SMAJ12A-TR | 1 | Поиск в магазине Отрон | |||
HL1-HL8 | Светодиод | GNL-3014SRD | 8 | Линза 3мм | Поиск в магазине Отрон | ||
HL9, HL10 | Светодиод | L-34SF4C | 2 | IR Led 3мм | Поиск в магазине Отрон | ||
R1-R8, R11, R16 | Резистор | 200 | 10 | RC0805FR-07200RL SMD0805 | Поиск в магазине Отрон | ||
R9, R10, R15, R20-R24, R26 | Резистор | 4.7 кОм | 9 | RC0805FR-074K7L SMD0805 | Поиск в магазине Отрон | ||
R13 | Резистор | 0 | 1 | Перемычка RC0805FR-070RL SMD0805 | Поиск в магазине Отрон | ||
R12, R17 | Резистор | 10 кОм | 2 | RC0805FR-0710KL SMD0805 | Поиск в магазине Отрон | ||
R18, R19, R25, R29, R30 | Резистор | 10 | 5 | RC0805FR-0710RL SMD0805 | Поиск в магазине Отрон | ||
R27 | Резистор | 100 кОм | 1 | RC0805FR-07100KL SMD0805 | Поиск в магазине Отрон | ||
R28 | Резистор | 13 кОм | 1 | RC0805FR-0713KL SMD0805 | Поиск в магазине Отрон | ||
SB1, SB2 | Кнопка | 3-1825910-1 (FSM16JH) | 2 | Шток 16мм | Поиск в магазине Отрон | ||
SB3 | Кнопка | 1825910-6 (FSM4JH) | 1 | Шток 4мм | Поиск в магазине Отрон | ||
VD1, VD2 | Диод | VS-15MQ040-M3/5AT | 2 | Поиск в магазине Отрон | |||
VT1, VT4, VT5 | Транзистор | IRLML2502 | 3 | Поиск в магазине Отрон | |||
VT2, VT3 | Транзистор | STN3NF06L | 2 | Поиск в магазине Отрон | |||
XP1, XP5 | Разъём | KLS2-306V-5.00-02P-2S(С) (DG306-5.0-02P-12) | 2 | Шаг 5мм | Поиск в магазине Отрон | ||
XP3, XP4 | Разъем | DJK-02A | 2 | Гнездо для джека | Поиск в магазине Отрон | ||
XP6, XP7 | Разъем | CWF-2 | 2 | Вилка для LED (не забыть про ответную часть) | Поиск в магазине Отрон | ||
ZQ1 | Кварц | HC49SM-8.000MHz-20pF | 1 | Любой 8МГц 20pF. | Поиск в магазине Отрон | ||
Скачать список элементов (PDF)
Прикрепленные файлы:
- Code_2_HW_REV_1_1_new.pdf (852 Кб)
- code_mcu_prog.bin (24 Кб)
- STL.zip (93 Кб)
Комментарии (3) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация
[Автор]
1. Кончено же пищалка была открыта после отмывки.
2. Не вижу сложности. Сейчас на "каждом углу" 3D печать на авито есть. На крайняк можно и лобзиком выпилить :) Причем устройство делалось под конкретную задачу и данное решение очень даже справилось с задумкой.
3. 78ХХ для понижайки с 12 до 3,3? )) И "килограммовый" радиатор в придачу. Я конечно не очень заморачивался по энергоэффективности, но даже тут у меня глаз задергался.
Конкретно тут был в наличии модуль - его и использовал. Их у меня куча. Вот и решил применить.