Итак, приступим. Первоначальная схема была взята из журнала «Радио» 2 2005 года выпуска, но я внёс в неё некоторые изменения.
Схема построена на триггерах — логических элементах, в которые можно записывать 1 бит информации. Если подать плюс на вход триггера С, то он запомнит логический уровень на входе D. Если же подать плюс на вход R, то триггер будет очищен — запомнит ноль, а вход S, соответственно, служит для того, чтобы записывать в триггер единицу, но он в схеме не используется. Записанное в триггер значение выводится на двух выходах — Q и неQ, неQ всегда будет противоположно Q.
Именно принцип работы триггера и лежит в основе этого кодового замка. При включении замка за счёт зарядки конденсатора на входах R возникает импульс высокого уровня, устанавливающий все триггеры в положение 0. Увеличив емкость конденсатора и сопротивление резистора идущего к нему, можно повысить секретность замка. При этом при нажатии на ошибочные кнопки повторный ввод верного кода будет возможен лишь через некоторое время, определяемое цепью RC.
Кнопки нужно нажимать в строго определённом порядке, иначе последний триггер не активируется и замок не откроется. Сигнал с выхода Q каждого триггера поступает на вход D следующего, а нажимая кнопку мы осуществляем запись этого уровня в триггер. Таким образом эта единица с первого триггера «переезжает» на последний сквозь все остальные. Также, если нажать неверную кнопку, то подадите + на входы R всех триггеров, схема сбросит код и нужно будет вводить его сначала.
Отличие старой схемы в том, что в ней нет вспомогательных элементов И, поэтому код легче подобрать. В моём же случае, если вы будете нажимать на верные кнопки, но в неправильном порядке, то элементы И, опять же, сбросят код. Это повышает его надёжность. Они работают следующим образом: элемент И считывает сигнал с кнопки, идущей к триггеру и входу -Q предыдущего триггера. Если кнопка, идущая к триггеру нажата, а предыдущий триггер не активен, то на оба входа элемента И поступает плюс, на выходе получается тоже плюсовой уровень, который уже идёт на входы R и сбрасывает весь код.
Я считаю главным недостатком такой конструкции то, что цифры в коде не могут повторяться, но в остальном работа устройства очень радует.
Помимо основных деталей в схему добавлены светодиоды-индикаторы. Шесть в середине показывают активность каждого из триггеров, а два светодиода сбоку — активность всего замка (красный — закрыто, зелёный — открыто). Не обошлось и без ошибок, кое-где схема перепаяна, но в файле печатной платы я исправил эти ошибки.
На этом всё, печатную плату и схему оставляю здесь, если кто-то захочет её собрать, то я только за.
Использованы микросхемы: К561ТМ2, К155ЛИ1, К155ЛН1.
Печатная плата и схема: yadi.sk/d/p56qGpVDjJXpo
Источник первоначальной схемы: www.radioelectronika.ru/?mod=cxemi&sub_mod=full_cxema&id=661
Комментарии (25)
RegIon
29.09.2015 08:42Неплохой стенд, у нас такие в кабинетах схемотехники стоят, правда никто ими не пользуется — всё мультисим заменил.
А цеплять сам механизм замка к выходу out?
А кнопка ресет есть, я просто не смог найти ее на схеме? Нужна же, например когда код введен, дверь открыли и закрыли, он ведь должен сбросится, иначе всегда замок будет открыт.Alexeyslav
29.09.2015 13:46+1А как же прочувствовать волшебный дым из микросхем? Без этого инженер не вырастет…
arren
29.09.2015 09:20Нажатие правильной кнопки в неверной последовательности, при отсутствии сигнала с предыдущего триггера, не приводит к сбросу.
Таким образом можно «топтаться» на правильных кнопках, и подобрать последовательность.GarryC
29.09.2015 10:35Ну и смысл топтаться на правильных кнопках? Их точно нет в оставшейся части кода.
Порадовали заглушенные входы установки триггеров с 3 по 5, проходящие под элементами И.
DDRDmakar
29.09.2015 23:20«Топтаться» как раз можно было в старой схеме, а тут нельзя.
Для этого и добавлены элементы «И».
Duti_Fruti
29.09.2015 10:03-2155 серия очень не надежна. Либо мне так не везло. Их всегда стоило делать с колодками из за их частого вылета :)
Sergey_datex
29.09.2015 11:40+6Автору на доработку:
1. Нет ни одного конденсатора по питанию микросхем — чревато нестабильной работой и зависимостью от погоды на луне.
2. Смешивать в одной схеме CMOS и TTL логику нежелательно. Разные входные/выходные токи и логические уровни.
3. Цепь сброса триггеров (RC — цепочка) должна обязательно содержать разрядный диод.DDRDmakar
29.09.2015 23:24Спасибо, учту.
В принципе, стабилизация питания есть, просто она не на плате. 155ые заменю на 561ые со схожим строением, если найду.
И про диод спасибо, а то иногда не сбрасывается после отключения.
artemerschow
29.09.2015 11:42+2Зажигать светодиод при вводе правильной кнопки и сбрасывать в случае ошибки это ужасно! Количество вариантов кода при подборе сразу же уменьшается с 6*6*6*6*6*6 до 6+6+6+6+6+6 в лучшем случае.
Alexeyslav
29.09.2015 13:52+2Визуализация, это всего ишь визуализация. Ведь кодовый замок-то учебный.
lim
29.09.2015 15:54Только количество вариантов кода не 6^6, а 6! (6*5*4*3*2*1)
И да, оно уменьшится в 6+5+4+3+2+1DDRDmakar
29.09.2015 23:27По задумке человек, вводящий код, не видит плату. Клавиатура выносная.
Поэтому количество вариантов подбора кода = 10*9*8*7*6*5 = 151200 вариантов.artemerschow
30.09.2015 01:13Ну в текущей реализации кнопок всё таки шесть (не считая сброса), так что наверное 6! пока, но не суть)
А можно глупый вопрос? Я просто, если честно, в схемотехнике профан, да и логические схемы помню постольку поскольку, но что будет если все кнопки нажать абсолютно одновременно?DDRDmakar
30.09.2015 15:36Да ничего не будет.
Если рассматривать случай, когда все кнопки нажимаются АБСОЛЮТНО одновременно, с точностью до наносекунд, то будет сброс кода, потому что сигнал сброса по прямому проводу дойдёт гораздо быстрее, чем единица пройдёт с первого элемента на последний.
А если брать реальную ситуацию, например если человек надавил ладонью на клавиатуру, то у вас есть шанс открыть замок, но шанс этого очень мал (1/151200). И даже если замок откроется, то снова закроется через пару милисекунд, так как после правильных сразу будут нажаты неправильные кнопки.
silencer
29.09.2015 13:41+8Не канонично. Вместо синих светодиодов должны быть красные АЛ307.
Alexeyslav
29.09.2015 13:50+2оранжевые АЛ102… они как раз одногодки тех микросхем. А АЛ307 более современные, почти уже как импортные.
HardWrMan
29.09.2015 14:21А я помню подобные схемы на реле и транзисторах. Например, в книжке «Юный радиолюбитель».
Arezus
01.10.2015 09:32А я бы элементы «И» поставил не на сброс триггеров, а как прослойку между каскадами, тогда один вход был бы входом предыдущего каскада, а второй вход шел бы на DIP-Switch, подтянутый к земле или к уровню. Таким образом можно было бы задавать произвольный код, например, если между вторым и третьим триггером элемент «И» притянут одной ногой к земле через DIP-Switch, то для открытия двери нужно набрать 110111 по позициям 1-6, то есть не нажимать третью кнопу, а если нажать, то он просто заблочит следующий каскад.
nerudo
Автор в какой-то момент тоже не пройдет, потому как в такой схеме рано или поздно где-нибудь потеряется контакт ;)