Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Это часы Nixie Tube Clock, которыми управляет Arduino Mega. Он также имеет набор светодиодных ламп RGB и матрицу кнопок на задней панели для изменения настроек, не подключая его к компьютеру. Я использовал набор стоек, вырезанных лазером, но вы можете сделать свои собственные с помощью небольшого сверла.
Немного предыстории: если вам интересно, прочтите здесь о том, что такое газовые трубки. В основном это газовые трубки с цифрами от 0 до 9, когда вы пропустите какое-то напряжение через цифру, она загорится.
Извините, это руководство не очень подробное, прокомментируйте, если у вас есть вопросы. Я также прошу прощения за то, что у меня нет фотографий используемых мной светодиодных RGB-ламп.
Шаг 1: Детали
Это те детали, которые я использовал, вероятно, вы найдете множество альтернатив.
4 трубки Nixie IN-14 (получите 5 или 6, если одна не работает) (всего 25 долларов)
1 Источник питания 130–200 В (найдите «источник питания с газоразрядной трубкой») (12 долларов США)
4 драйвера K155ID1 (всего 15 долларов)
1 модуль часов DS3231 (2 доллара США)
10 резисторов 5,6 кОм 3 Вт (4 доллара США) (также можно использовать резисторы 10 кОм)
1 Arduino Mega (10 долларов)
1 длинный макет (5 долларов)
Проволока с одножильным сердечником - 5 долларов иш
1 8-кнопочная матрица (опционально) (5 долларов США)
Термоусадочные трубки в ассортименте (5 долларов США) + тепловая пушка
Инструменты: паяльник, защитные очки, ноутбук с программным обеспечением Arduino, терпение, плоскогубцы, кусачки / кусачки, точный нож, мультиметр, сверлильный станок, пистолет для горячего клея. Доступ к лазерному резаку для легкой установки акриловых стоек, доступ к сверлу с корончатой пилой 1/2 дюйма, если вы хотите сделать свое собственное.
Шаг 2: Как включить Nixie Tube
ПРОЧИТАЙТЕ ЭТО РУКОВОДСТВО:
Особенно шаги 1-3. Вам обязательно понадобится резистор на 10 кОм. Для этого я использовал два последовательно подключенных резистора 5 кОм по 3 Вт.
В основном, поднимите напряжение до 160 В или около того, поместите резистор 10 кОм между источником питания и импульсной трубкой и подключите вывод импульсной трубки к земле. Прочтите руководство, оно объясняет лучше, чем я.
Шаг 3: управление 4 лампами с помощью Arduino Mega
Еще раз следуйте этому руководству. Я просто делаю это, чтобы показать последние несколько шагов по объединению частей в рабочие часы.
Я использовал микросхемы K155ID1 для управления газовой трубкой, она стоила 16 долларов за комплект из 6 штук из Европы.
Вы можете использовать мультиплексоры, чтобы потреблять меньше выходов от Arduino, или может быть способ использовать меньше микросхем IC, но я этого не делал.
Я использовал по одной микросхеме на лампу и 4 выхода от Arduino для каждой лампы. Из-за этого мне понадобилась Arduino Mega, у которой больше контактов ввода-вывода, чем у Arduino Uno. На приведенных выше и ниже изображениях изображена моя макетная плата до того, как я подключил все части, и эскиз, который я сделал, демонстрируя, как я подключил каждую трубку к Arduino с помощью микросхемы.
Да, здесь используется минимум 4 * 4 = 16 контактов ввода / вывода, но это нормально, потому что у Mega их около 60.
Я подключил матрицу кнопок, подключив вывод «G» к питанию и подключив каждую кнопку к аналоговому выводу чтения. Это связано с тем, что digitalRead иногда считывает кнопку нажатой, когда это не так, но, делая ее «нажатой», только если analogRead имеет значение 1023 (максимальное значение), я пропустил большую часть этого шума.
После подключения ламп, модуля часов DS3231 и RGB-подсветки к Arduino пришло время заняться серьезным программированием.
Светодиодные лампы RGB
Я подключил 4 светодиода RGB параллельно, соединив все выводы вместе перемычкой. Вы можете видеть это на фотографиях выше, как белый провод, который проходит между четырьмя трубками. Я использовал обычные катодные светодиоды, поэтому, если я поставлю вывод Arduino на LOW, они будут включены. Вы можете найти в Интернете множество учебных пособий по управлению светодиодными лампами RGB, просто выясните, какой у вас общий катод или общий анод.
Шаг 4: Программирование
Я прикрепил свой код, надеюсь, это поможет. «NixieJT1» - это полный код. DS3231 помогает настроить модуль часов
Некоторые советы по программированию:
Если ваши сегменты загораются в случайном порядке, попробуйте изменить порядок контактов A / B / C / D. Я заставил их перевернуть то, чем я думал, что они должны быть, и это начало работать.
Я использовал analogRead для матрицы кнопок и подключил "G" к 5V. DigitalRead запутается, если прикоснуться к металлическим частям матрицы.
Последняя часть кода (void DisplayNumber) просто переходит от 0 до 9 в двоичном формате. 0001, 0010, 0011 и т. Д. Возможно, это лучший способ сделать это.
Шаг 5: лазерная резка стоек
Я приложил файл, который я сделал / использовал для стоек для лазерной резки. В моей школе используется лазер Epilog, и его настройки: толщина обводки 0,0001 дюйма или меньше, чтобы вырезать его, и все остальное, чтобы просто травить. Я просто хотел, чтобы они были вырезаны, так что все линии примерно 0,0001 дюйма или около того.
Я вырезал два набора стоек в основном для того, чтобы иметь замену на случай, если я что-то испортил, но они также имеют небольшие отличия (разные размеры отверстий для проводов и отверстие для светодиода в центре).
Если у вас нет лазерного резака, вы можете сделать его самостоятельно, используя два обычных сверла и одно сверло для кольцевой пилы (диаметром 1/2 дюйма). Дерево также подойдет вместо акрила, у вас просто не будет такого крутого эффекта со светодиодами.