AC-DC и DC-DC преобразователи напряжения Top Power на складе ЭЛТЕХ

Простейший электронный аналог игральной кости

Texas Instruments CD4017BE

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

К разработке аналога игральной кости, описанного в этой статье, меня подвигла великолепная, на мой взгляд, статья Патрика Ван Торре [1], содержащая ряд интересных идей и подкреплённая реализацией этих идей в виде законченного устройства.

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

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

Через нескольких недель безжалостной эксплуатации кубик вернулся ко мне для ремонта, да так и остался в моей коллекции.

Этот кубик, показанный на заднем плане Рисунка 1, возможно и не заслуживает особого внимания к себе, если бы не одна особенность – этот кубик выполнял свои функции без активных электронных компонентов.

Электронный аналог игральной кости на переднем плане и электрический игральный кубик на заднем плане.
Рисунок 1. Электронный аналог игральной кости на переднем плане
и электрический игральный кубик на заднем плане.

После прочтения статьи Патрика я задумался над тем, как можно упростить создание аналога игральной кости, вспомнив свой опыт с кубиком, что мне очень пригодилось при размышлении над этой задачей. Рассмотрев множество способов генерации случайных чисел, я остановился на использовании свободных колебаний механического осциллятора. Как известно, свободные колебания возникают в осцилляторе, выведенном из исходного состояния покоя однократным воздействием. Такие колебания всегда являются затухающими, так как при каждом колебании происходит переход энергии из одной формы в другую с потерей некоторой части этой энергии. В результате после затухания колебаний осциллятор вернётся в исходное состояние.

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

Для генерации случайных чисел можно использовать преобразование механических колебаний в электрические с их последующим подсчётом. При использовании счётчика по модулю n после возвращения осциллятора в состояние покоя счётчик зафиксирует случайное число в диапазоне от 0 до n–1.

После некоторого числа экспериментов я решил выбрать в качестве источника затухающих колебаний контактный датчик удара, использующийся в автомобильной сигнализации. Схематическое устройство этого датчика приведено на Рисунке 2.

Схематическое изображение устройства датчика.
Рисунок 2. Схематическое изображение устройства датчика.

Датчик содержит внутреннюю сферическую полость 1, по которой может перемещаться металлический шарик 2. Полость, изготовленная из изолирующего материала, имеет в центре два контакта 3, которые исходно замкнуты через поверхность шарика. При внешнем воздействии на датчик шарик 2 начинает перемещаться по поверхности сферической полости, периодически замыкая контакты 3.

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

Принципиальная схема аналога электронной кости показана на Рисунке 3. Как мы видим, в качестве элемента, регистрирующего колебания датчика, используются счётчик Джонсона CD4017BE, к выходам которого подключены светодиоды для индикации результата.

Принципиальная схема электронного аналога игровой кости. S1 - датчик в состоянии покоя. Незадействованные выводы DD1 не показаны.
Рисунок 3. Принципиальная схема электронного аналога игровой кости.
S1 – датчик в состоянии покоя. Незадействованные выводы
DD1 не показаны.

После начала колебаний счётчик начинает подсчитывать импульсы, поступающие на его вход. После прекращения колебаний счётчик зафиксирует случайное число в диапазоне от 0 до 5, что соответствует индикации от «1» до «6».

Аналог игральной кости смонтирован в металлическом корпусе диаметром 32 мм и высотой 10 мм методом навесного монтажа и показан на переднем плане Рисунка 1.

Кроме микросхемы счетчика и светодиодов в корпусе установлены аккумулятор емкостью 100 мА·ч, плата зарядного устройства и выключатель питания.

Устройство приводится в действие легким ударом по верхней или боковой поверхности.

Изготовленный аналог игральной кости был подвергнут серии из 100 испытаний. Результаты испытаний сведены в Таблицу 1, где по горизонтали представлены результаты «бросков», а по вертикали – число испытаний с таким результатом.

Таблица 1. Распределение результатов испытаний.
«1» «2» «3» «4» «5» «6»
18 15 17 18 15 17

По результатам испытаний можно с большой степенью уверенности утверждать, что в генеральной совокупности распределение будет равномерным.

Заключение

Изготовленный электронный аналог игральной кости может быть использован в настольных играх типа «Монополия», где неподвижный источник случайных чисел предпочтительней традиционного кубика, так как неудачно брошенный кубик может нарушить расположение фишек на игровом поле.

Принцип генерации случайного числа описанным выше способом является универсальным и может использоваться практически с любым механическим осциллятором, например струной музыкального инструмента, пьезокристаллом или с грузом, подвешенным на пружине, способным совершать свободные колебания.

Исследования с электрическими осцилляторами, например, с колебательным контуром, не проводились.

 


Ссылка

  1. Patrick Van Torre. Полностью аналоговая игральная кость

Материалы по теме

  1. Datasheet Texas Instruments CD4017BE
80 предложений от 35 поставщиков
Микросхема Логический контроллер, Decade Counter / Divider, 11MHz, 1 Gate, 1Input, 3V to 18V, DIP-16
PL-1
Россия
CD4017BE (4017BEY(BP) , HCF4017)
от 14 ₽
Триема
Россия
4017BE (CD4017BE) К561ИЕ8
17 ₽
Romstore
Россия, Беларусь
CD4017BE
от 35 ₽
CD4017BE TI DIP16
Texas Instruments
от 38 ₽
ТМ Электроникс. Электронные компоненты и приборы. Скидки, кэшбэк и бесплатная доставка
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя
Фрагменты обсуждения:Полный вариант обсуждения »
  • Зачёт.
  • Я по такому принципу работы делал Рулетку на таком же счетчике с генератором линейно спадающей часты на 555 таймере. Нажимаешь кнопку пуск генератор устанавливается на макс. частоту 1.2 кгц. Отпускаешь и примерно минуту частота спадает до нулевого значения. При этом десять светодиодов крутятся по свечению с постепенным замедлением и останавливаются ВСЕГДА на не предсказуемом светодиоде. Вот три раза нажал и разные остановки. Параметры установки начальной частоты и скорости уменьшения частоты по времени можно делать любые.
  • Когда-то я генерировал случайные числа посредством модуля ФАПЧ (PLL) микроконтроллера LPC2148. Модуль необходимо запустить установкой определенного бита в единичку, после чего он начинает запускаться и через какое-то время входит в рабочий режим. Так вот, это время всякий раз получается разным. Т.е., измеряем входа в рабочий режим и получаем готовое случайное число ... Еще вариант - источник шума на стабилитроне (в Сети полно материалов на этот счет) ...
  • Генератор случайных чисел собирается еще проще. Ставите любой счетчик с любым количеством выходных двоичных разрядов. Делайте по входу сброса в момент включения RC цепочкой сброс. По входу ставите просто кнопку с дребезгом. Жмете ее и на выходе всегда будут случайные двоичные коды. Так же можно делать на регистрах с последовательном входом и параллельными выходами. Вот вам хоть игральная кость или еще что. Я показал рулетку с генератором линейно спадающей частоты на 555 таймере. Рулетка должна крутиться и потом останавливаться на не определенном месте.
  • Вот простейший генератор случайных чисел. Неопределенный дребезг кнопки переключает счетчик в хаотическом порядке при на нажатии
  • Отдельно этот генератор Линейно спадающей частоты. Частоту можно останавливать нажатием кнопки. Но при отжатии ее он снова возвращается с макс. частотой генерации. Может быть применен не только в рулетке а и как отдельный генератор. Например для проверки линейности цифро аналоговых схем с последовательным входом и многого друго во
  • Не получалось так сделать, ибо такой генератор проваливал статистические тесты на качество. Другое дело, что в литературе рекомендуют для повышения качества комбинировать энтропию от разных источников, и тогда ваша кнопка вполне себе сгодится как один из таких источников. Вообще, ГСЧ - целая наука. Кому интересно, почитайте Дональда Кнута, у него про это много. Предупреждаю, что потребуется определенная математическая подготовка (далеко выходящая за рамки школьного курса)...
  • значит нужен генератор белого шума
  • С Кнутами не знаком. Не всегда наука и практика идут вместе. Это разные вещи. Вы я смотрю не практик в цифровой схемотехнике. И что как в ней работает подтверждается не наукой а практикой. А именно временем работы данного устройства. И делают это все не инженеры разработчики. По науке много чего можно сделать. Но для этого нужны технологии для изготовления элл. базы к примеру. Соответствующие материалы и другое.
  • [b]kovigor[/b], Мне еще интересно какие статические тесты провалил этот генератор. Покажите. Вы хоть своего Кнута читайте. Как работают таймеры 555 серии, да и вообще цифровые микросхемы. А то я удивился ГСП собирать не умеете.
  • Не помню. Прошло 15 лет. Если очень интересно, то: [url]https://www.google.com/search?q=%D1%82%D0%B5%D1%81%D1%82%D1%8B+%D0%93%D0%A1%D0%A7+NIST&sca_esv=11ea860c5ebfecb0&source=hp&ei=35Z6Z-DWB7eHxc8P3sK44AU&iflsig=AL9hbdgAAAAAZ3qk7_NAeB2Uccr7GJfbp04OZtrs8prA&ved=0ahUKEwigwviE5d6KAxW3Q_EDHV4hDlwQ4dUDCBc&uact=5&oq=%D1%82%D0%B5%D1%81%D1%82%D1%8B+%D0%93%D0%A1%D0%A7+NIST&gs_lp=Egdnd3Mtd2l6IhbRgtC10YHRgtGLINCT0KHQpyBOSVNUMgUQIRigATIFECEYoAFIvUBQAFixOHAAeACQAQCYAXmgAf8KqgEDNi44uAEDyAEA-AEBmAIOoALdDMICBRAAGIAEwgIFEC4YgATCAgcQABiABBgKwgIGEAAYFhgewgIIEAAYgAQYogTCAgUQIRifBZgDAJIHBDIuMTKgB_NA&sclient=gws-wiz[/url] ------------------------------- Полемизировать насчет науки и практики я с вами не хочу. Если вы сможете без теоретической подготовки сделать что-нибудь (повторяемое более чем в одном экземпляре) сложнее электронной канарейки, то я вам поверю. Конечно, я о своих проектах, а не о повторении чужих. Теория аналоговой и цифровой электроники практически безгранична, и без нее вы в реальных проектах и шагу не ступите, это проверено многократно лично мной. Не рассказывайте сказок и (еще раз) не сбивайте с толку молодежь. [COLOR="Blue"]Простите[/COLOR], опять не сдержался ...
  • Мы кстати говоря этой рулеткой на работе пользуемся. Например пришел небольшой по объему работ заказ на токарно фрезерные работы и денежный. На пару дней работы. Нас 6 человек. Все хотят его взять. Так вот кому его взять один раз делаем оборот на рулетке. Каждый имеет свой номер на светодиоде. Кому то выпало одному. Остальные все не в обиде.
  • У меня опыт практической и теоретической работы по электроники 45 лет из 72 уже прожитых. А именно с аналогово цифровой. И знаю что как делается. Тем более не с простой а спец изделиями с повышенными тех условиями работы.Вы этого у Кнута не прочтете. Не сбивайте вы молодежь своими советами что сами не знаете а читаете всякую бурду.
  • Когда работал разработчиком цифровых различных схем компы еще стали только появляться. Инета и в помине не было. А программ злектр. моделирования как сейчас тем более. Так вот рисовали сами схемы полностью по обозначениям ЕСКД. Потом делали макетирование схемы. Кое что менялось при этом конечно. Делали все замеры по живым приборам. Выпускалась карта замеров. Потом писали тех документацию на плату или блок. Все обыкновенной ручкой. Сейчас разработчикам легче. Есть много профессиональных программ по любой схемотехнике. Но любая программа за вас схем не делает. Она только делает обсчет вашей схемы. Так вот сейчас все грамотные р/любители сначала прогоняют все в программах а заодно если схема рабочая и печать сразу.
Полный вариант обсуждения »