Электронная Монетка

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

Для начала нам нужно определиться с принципом генерации случайного числа с вероятностью 50/50, и очень желательно без всяких подстроек. Такой фичей обладает меандр — прямоугольный сигнал с длительностью, равной паузе. А сформировать его нам поможет D-триггер. Если сигнал с его инверсного выхода подать на вход данных, то, подав на тактовый вход прямоугольный сигнал с любой скважностью, на выходе мы получим меандр, но с частотой, равной половине частоты тактового генератора. Индикатором в нашей монетке могут служить два светодиода, подключенные к прямому и инверсному выходам второго триггера. Работать оно будет так — нажимаем на кнопочку, светодиоды начинают быстро перемигиваться, а через секунду мигание прекращается и выпадает один из двух цветов, красный или зеленый, «да» или «нет».

Глянем на схему:



На первом D-триггере микросхемы HEF4013 (она же К561ТМ2) построен генератор прямоугольного сигнала. Тактовый вход (Clock) и вход данных (Data) заземлены, и из D-триггера получается RS-триггер. В момент включения выход этого триггера оказывается в одном их двух состояний, предположим, это состояние лог. нуля. При этом на инверсном выходе будет лог. единица. По цепочке !Q — R1 — C2 — D2 — Q потечет ток. Напряжение на конденсаторе С2 будет расти, и когда оно достигнет 2/3 питания, на входе установки (Set) появится лог. 1 и триггер перейдет в единичное состояние (на прямом выходе окажется лог. 1, а на инверсном — лог. 0). Теперь ток потечет в обратную сторону — Q — R2 — C2 — D1 — !Q. Конденсатор С2 перезаряжается, и теперь на входе сброса (Reset) появляется лог. 1, и триггер перейдет в нулевое состояние, после чего цикл повторится.

Получившиеся импульсы поступают на тактовый вход второго триггера, входы R и S которого заземлены, а входы D и C используются. Предположим, этот триггер, как и первый, находится в нулевом состоянии. При этом лог. 1 с его инверсного выхода подается на вход данных. По приходу первого тактового импульса (триггеры данной микросхемы меняют свое состояние по фронту тактового сигнала) с предыдущего триггера лог. 0 с входа данных попадает на выход, инверсный выход так же меняет свое состояние и на входе данных появляется лог. 1. По приходу следующего тактового импульса лог. 1 с входа данных попадает на выход, т.е. триггер меняет свое состояние с каждым приходом тактового импульса.

Одновременно с подачей питания на триггеры, конденсатор С3 начинает заряжаться через резистор R3. Ток через R11 начинает возрастать, транзистор Q1 начинает открываться и просаживать амплитуду импульсов на тактовом входе второго триггера. В один из моментов этой амплитуды становится недостаточно, чтобы второй триггер посчитал ее за лог. 1, очередного переключения не происходит и он замирает в одном из состояний.

Ну что же, в теории все гладко, преступим к сборке. В качестве корпуса отлично подошел китайский зарядник от Моторолловских аккумуляторов:



Вскрываем:



Хоть плата и рабочая, но нам она не пригодится. Потребляет девайс мало и эпизодически, так что аккумулятора вполне надолго хватит. Состояние девайса будет индицироваться двухцветным матовым 3-мм светодиодом с общим катодом. Красный светодиод прекрасно светит при 4 мА, а вот зеленому нужно вкачивать 20 мА, из-за чего пришлось лепить усиливающий каскад на транзисторе Q2.

Достаем заготовленную платку и напаиваем микросхему:



Не забываем беречь здоровье и паяем хотя бы под вентилятором:



Монтируем обвязку генератора:



Подаем питание:



Как и ожидалось, потребление незначительно.

Смотрим, что получилось:



Это выход генератора. 2 В и 2 мс в клетке. Импульсы немного неровные, частота около 250 Гц.

Вольтметр показывает 1.96 вольт на выходе:



Теперь глянем на выход второго триггера:



Другое дело. Ровно и красиво, частота около 125 Гц. На выходе четко 2 вольта, при 4 вольтах питания:



Монтируем остальные детали:





Готово!



И конечно, демонстрация:



Масштабных исследований я не проводил, но субъективно девайс удался и свою функцию выполняет добросовестно.

Благодарности:

Спасибо товарищу Lifelover за помощь в поиске алгоритма и товарищу vvzvlad за зарядник, который достался мне в ходе игры Мусоровоз. Так же спасибо DI HALT за размещение видюхи.

P.S. Ди, если пост не канает под Схемотехнику, перенести в личный блог, плз.

Комментарии (50)

RSS свернуть / развернуть
Прикольно. Надо было сделать в виде шара, как в фильме «Автострада 60».
0
а зачем так все усложнять?) можно было сделать на тини 13, рэндомом из ацп наводки вытягивать и по кнопке — просыпание и показ результата) питание — 3 батарейки маленьких(как в зажигалках)
0
Я МК не осилил еще, да и не интересно пялится в схему на МК, то ли дело тут =))))
0
ааа… ясно)
0
Ололо! А что здесь сложного? Нафига МК там где хватает копеечной микросхемки?
0
Ну это еще можно поспорить.
Тинька 30р стоит. С ее размерами можно и навесным сделать.
Тут плата, текстолит сколько стоит? Рублей 30-60. Плюс расыпуха, электричество, время.
А так мне нравится идея автора и он молодец, изучил генератор случайных чисел, не поленился сделать без МК. +1
0
на мк генератор сделать не менее интересно. и количество проводов и деталей меньше будет.
0
Спасибо, Episcop =)
0
Все, что вы могла видеть на фотках, досталось нахаляву. Ну, может быть, пакетик электролитов я когда-то покупал.
0
Ой, могли*
0
Как бы идея не нова. Еще в далеком 2001 (или даже 2000) в журнале Хакер Федя Добрянский выкладывал схемку очень похожую на эту. Две микрухи. На ЛА3 сделан генератор меандра, на ТМ2 триггер. Деталей там было в три раза меньше чем тут (две микрухи, резюк, кондер, кнопка, светодиод с резистором). Тоже жмешь на кнопку получаешь либо горит, либо не горит.
Там правда это подавалось в другом ключе, как средство достучаться до подсознания. Мол пока ты держишь кнопку, лампочка незаметно для глаза (но заметно для мозга) мерцает и отпуская ее в нужный момент твое бессознательное может дать тебе ответ на вопрос жизни, вселенной и вообще.

Работало, кстати, прикольно. Если подобрать частоту на еле заметное мерцание, то неплохо справлялось с ответами на простые вопросы (3+3=6?) и помогало выбрать когда колебаешься :) Ошибалось редко :)
0
В 10 номере Коневодства за 2006 год тоже было что-то подобное, и, о — ужас!, с таким же названием. И тоже от новосибирца =)))))
0
Ох щи… они по кругу пошли. Впрочем поздние номера не вкатывали так как первые. Т.к. Федя реально жог. Умудрялся выдавать прикольные вещи реально из полного говна.
0
Я про свое название. А Коневодство это Радио же.
0
как я понимаю, устройство делалось переносным… в случае мк — можно было бы в брелок уместить…
0
Оно предполагалось для домашнего юзания, для постоянного ношения с собой, да, надо делать на МК или на логике в СМД, в корпусе брелка какого-нибудь.
0
У меня в месте с двумя пальчиковыми батарейками а также совковой кнопкой ТМ2 (сантиметр на полтора и 5мм в глубину) помещалось все в баночку от тиктака.
0
Ты тоже такую хрень делал?
0
Ага :) эта одна из первых схем после возвращения к паяльнику после бооольшого перерыва которую я спаял.
0
Ну это у меня тоже какбы начало.
0
то-то я смотрю, зарядник знакомый.
0
Ага, твое имущество =)
0
А мне больше всего в статье понравились… приборы :). Респект и уважуха что они сохранены в рабочем состоянии!
0
увидел здесь знакомые лица)Б5-49 отличный БП! У меня есть еще Б5-47 — напряжение поменьше, но зато ток до 3А. Им SLA аккумы заряжаю.
0
Да, по цене/качеству очень даже ничего))
0
А в кружке мы его напротив недолюбливали, за склонность верещать (и, возможно, срать в питание помехами). Юзали по возможности (если никто другой не занял) самопальный БП руководителя на двух ЕН3 или ЕН4. Ну и на самопале к тому же стрелочники были, а тут только задатчики.
0
Писк это да, недостаточек. Но с другой стороны, он позволяет оценивать потребляемый ток изменением своего характера. А приборы поставил, так гораздо удобнее.
0
мне пока удобно без приборов. а например ток можно померить им же — ограничивать ток переключателем справа пока не перейдет в стабилизацию по току.
0
Тоже вариант. Но вот если ток меняется…

Кстати, писк уменьшится, если электролиты обновить.
0
Да, я небогат, и бережно отношусь к инструменту. Осцилл достался в нерабочем состоянии нашару, мы на работе транзисторы на задней стенке меняли, электролиты свежие, докуда смогли добраться. Вроде заработал. Только на прогрев время уходит (луч снизу ползет) и пульсация луча видна на развертке 10 мс и более. Щ4300 задарили коллеги на ДР. Б5-49 достались по 500 рублей, заменены электролиты, почищены кодовые переключатели и контакты плат, и к ним вернулась молодость и точность)))
0
А что за девайс сверху стопки, где Щ4300 и TP-LINK стоит?
0
Это счетверенная розетка с выключателями и неонками. От нее питаются потребители без собственных выключателей. Один из них — генератор Г3-111. То, что он без выключателя, меня очень и очень удивило.
0
Вы молодец. Я вот вынужденно на старом месте дислокации оставил винтажный мультиметр… Стрелочный, в железном ящике(!), с ручкой для переноски. Если он еще жив, надо будет забрать…
0
У меня на работе лежит ВК7-9. Точный, зараза)))

А вообще, если нуждаетесь в приборах, дайте объявление на форуме, наверняка у кого-нить найдется что-нибудь по сходной цене.
0
Не, слава Богу, с приборами у меня нормуль. Просто память о детстве :). Отец мне списанные приборы приносил, одни вот такой: Ц-435, а второй вот похожий на этот Ц-434, но поновее.
0
Поздравляю с первым фото-репортажем! Теперь давай что-нибудь посложней.
0
Уже на подходе =))
0
Прикольная штука :)
Но насколько она случайная — всё же сильно под вопросом, я бы это тщательно проверил, да и то в итоге своей же проверке не поверил )
Главным источником энтропии у нас получаются начальные состояния триггеров. Интересно было бы оценить, насколько они вообще случайны в теории.
Кто-нибудь вообще в курсе, какие факторы влияют на начальное состояние?
0
Ну имхо тут начальное положение не очень важно, один фиг триггера постоянно перебрасываются, а на конечное состояние скорее влияет заряд на С3. Да и вообще, это же игрушка, а не лабораторный ГСЧ.

Но насколько она случайная — всё же сильно под вопросом, я бы это тщательно проверил, да и то в итоге своей же проверке не поверил )

Ну и зачем тогда голову греть)))
0
Да я не настаиваю, это мои тараканы насчёт случайности )
На С3 — начальный заряд практически всегда 0. Пока выключено, он разряжается через R10 и прочие.

Ну и зачем тогда голову греть)))
Ну, если проверить при разных температурах при разном уровне помех — ещё где-то как-то… Но в криптографических целях генератор с невыясненным источником энтропии всё равно использовать не стоит :)
0
Ну вот, кнопку мы отпустили, напряжение на кондере начало падать, а когда мы вновь нажимаем кнопку, напряжение на нем «случайно», и оно определяет, сколько времени триггер будет перекидываться.
0
А я бы в качестве источника энтропии использовал время нажатия кнопки. Нажали — считаем, отпустили — показываем последнее состояние. Чтобы не делать выключатель питания — добавить ключевой транзистор и схемку, которая закроет его через секунду-две после отпускания кнопки.
0
Мысль.
0
Ага, примерно так и работала схема, срисованная (и так и не воплощённая) мной когда-то из какого-то древнесоветского журнала.
Только там было 6 светодиодов, скрэмблер на соответствующем количестве триггеров (К155ТМ2) и генератор, кажется на К155ЛА3. Ну и называлась она «электронный кубик».
А вот автовыключателя с задержкой там не было — классная идея, надо принять на вооружение :)
Хм, а как она тогда работала?..
А, точно, она вообще всё время считала и только по нажатию останавливалась %) На питание отдельный тумблер был.
0
За 10 RC = 0.3 секунды он разрядится до нуля с хорошей точностью. Довольно часто нажимать придётся )
0
Там 22 мкФ и 30кОм. он небыстро разряжается))
0
На схеме 1 uF. Ну ладно 10 * 22*10^-6 * 30000 = 6.6 сек — уже лучше, но при эпизодическом использовании — пофигу.
0
Ой, забыл сменить номинал с дефолтного(((
0
При достаточно большом соотношении таймаута и периода переключения — случайность обеспечат естественные флуктуации времени заряда кондера.
0
Your text to link...
Все придумано пять лет назад))
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.