Универсальный Nixie-модуль на ИН-12

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

В прошлый раз я с подобным чувством сооружал чиптюновый модуль на AY-3–8912. Результатом остался чрезвычайно доволен, но отмечу, что законченным изделием он не является. Как и герой данного материала, блок газоразрядных индикаторов ИН-12.

Часики на ИНках на Хабре фигурировали не раз (например 1, 2), поэтому поста в стиле «Yet another Nixie clock» не будет. Сосредоточусь на том, чтобы кратко и емко изложить идею блока индикации и особенности реализации.

Принцип действия

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

Управление

Чтобы управлять индикаторами серии ИН, нужно коммутировать высокое напряжение (ток — единицы миллиампер). Жизнь сильно облегчает существование в любимой 155-й серии дешифраторов ИД1 — они непосредственно и предназначены для работы с индикаторами ИН. Можно использовать и обычные дешифраторы, но тогда на их выходы придется ставить транзисторные ключи. Вполне вариант, но имеет смысл только при недоступности К155ИД1.

20bb330b2d7547b6bf06b2676ab72d4c.png

db5e12c6d1954971b435de8c4671eea0.jpg

То есть, на каждый индикатор ставим по микросхеме. В моем случае получается 4 штуки. Это будет статическая индикация. Для упрощения схемотехники нередко применяется индикация динамическая — когда в каждый момент времени выводится одна цифра, но смена происходит быстро, и за счет инерции человеческого зрения, незаметно. Но такой подход идет вразрез с моей идеей универсального модуля, с минимальными затратами подключаемого к «голове» (микроконтроллер, компьютер, «малинка» какая-нибудь).

Итерация первая, 16 ножек.

Решаем проблему в лоб. 4 индикатора ИН-12. На каждый из них приходится по одному дешифратору. Аноды через ограничивающие резисторы (50 КОм 0.5 Вт) подключены к источнику высокого напряжения. В моем случае — маленький бесхозный анодно-накальный трансформатор с диодным мостом.

Разведена плата, с применением фоторезиста изготовлена, компоненты установлены, можно пользоваться. 16 входов подключаются к GPIO Raspberry PI, пишется простенькая программка, отображающая время.

Только вот не слишком ли жирно, отдавать такое количество ножек на отображение четырех цифр? Я уж не говорю о том, что кому-то захочется показать секунды, и GPIO «малинки» просто не хватит. И вообще, причем тут Raspberry, если для минимальных часов нам понадобятся восьминогая ATtiny и DS1307?

Итерация вторая, 2 ножки.

Так что, разводим еще одну маленькую платку, которая будет «вторым этажом». На ней располагаются еще две микросхемы — восьмиразрядные сдвиговые регистры 155ИР8. Они у нас будут преобразователем последовательного интерфейса в параллельный.

e0efa48e947b462a9fdaddcc0cc1e298.png

5b4b0fc141b1448ca77845040120c962.jpg

a31c32624a7b4024af9df4bcfd51f962.jpg

Сдвиговый регистр работает следующим образом: по фронту импульса на тактовом входе (CLK) происходит запись в регистр бита на информационном входе (A) с одновременным сдвигом уже имеющихся битов. Восемь выходов регистра отражают его содержимое — они отправляются на входы двух дешифраторов. Два регистра объединяются в один 16-разрядный путем соединения последнего выхода одного со входом другого. Так что, от устройства, управляющего модулем индикации, требуется выдавать 16 бит (по 4 бита на разряд индикации), не забывая каждый зафиксировать тактовым импульсом.

И что?

И все. Есть базовая часть модуля индикации, которую можно использовать, если вам не жалко 16 пинов. Есть дополнительная плата, которая сокращает необходимое число управляющих пинов до двух. Питание — 5 вольт и что-то в районе 180–220 (по 2 мА на индикатор). Можно использовать трансформатор, можно — импульсный преобразователь. Можно — от сетевого напряжения через диод, как это рекомендуется в древних мануалах. Последнего варианта я убоялся, т.к. не люблю, когда у меня по плате свободно гуляет никак не развязанная «сеть».

Ближе к готовому устройству

Все наработки публикуются на Github. В настоящий момент там можно лицезреть готовые разводки плат (Sprint Layout 6), схемы (Eagle) и программу (Python) для Raspberry Pi. Последняя находится в процессе пиления. На момент публикации реализован вывод времени, эффект рандомной прокрутки цифр (надо периодически зажигать все катоды ИНки во избежание т.н. «отравления»), начата работа над будильником. Ведь я не просто так делал модуль на AY-3–8912, он здесь тоже поучаствует. Питоний код в рамках данного материала я описывать не буду, это для третьей части, посвященной сборке в один мегадевайс Raspberry Pi, Nixie-индикатора и чиптюнового модуля.

Гитхаб (основной проект)Гитхаб (чиптюн)Индикатор ИН-12Дешифратор ИД1Сдвиговый регистр ИР8

© Habrahabr.ru