Матрица для светодиодов своими руками

САМОДЕЛЬНАЯ СВЕТОДИОДНАЯ МАТРИЦА

Можно предположить, что самым простым (и часто первым) устройством на базе Arduino является автомат световых эффектов. В конце концов, нельзя просто так взять и не собрать автомат световых эффектов на Arduino.

Однако, просто подключить два десятка светодиодов к портам платы Arduino не очень продуктивно. Гораздо интереснее подключить к данной аппаратной платформе светодиодную матрицу. Разумеется, светодиодные матрицы существуют и достаточно широко используются, но, как правило, они собраны из светодиодов одного цвета свечения. Автору показалось интересным изготовить матрицу из разноцветных светодиодов. Основой устройства послужила макетная плата.

На нее установлено 8 столбцов, каждый из которых состоит из 5 светодиодов с различными цветами свечения. По сути, матрица представляет собой систему вертикальных и горизонтальных проводников, соединенных в узлах сетки через светодиоды. Таким образом, если подать на заданный столбец высокий логический уровень, а на строку низкий, то загорится светодиод, расположенный на пересечении заданного столбца и строки. Светодиоды подключаются через резисторы R1-R8 сопротивлением 300 Ом.

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

В данном случае к 13 портам удалось подключить 40 светодиодов.

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

Видео работы матрицы

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

Форум по обсуждению материала САМОДЕЛЬНАЯ СВЕТОДИОДНАЯ МАТРИЦА

Радиоэлектроника и схемотехника для начинающих — первые шаги в радиоделе или с чего начать будущему радиолюбителю.

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

Инструкция новичкам как научиться паять паяльником — различные провода, платы, микросхемы и другие детали.

Источник

Светодиодная матрица 24×6

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

Ну, и чего же вы ждете? Берите светодиоды и паяльник, потому, что мы сейчас вместе будет делать светодиодную матрицу 24х6!

Шаг 1: Сбор всего необходимого

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

Для изготовления матрицы необходимо:
1. 144 светодиода
2. 24 резистора (номинал определяется по типу светодиодов, в моем случае 91 Ом)
3. Десятичный счетчик 4017
4. 6 резисторов номиналом 1 кОм
5. 6 транзисторов 2N3904
6. Длинная макетная плата
7. Arduino
8. 3 x 74HC595 регистра сдвига
10. Несколько штыревых разъемов

Шаг 2: Как это работает?

Идея работы светодиодной матрицы заключается в следующем: обычно информация разбивается на небольшие части, которые затем передаются одна за другой. Таким способом вы может сэкономить множество выводов на Arduino и сделать вашу программу достаточно простой.

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

Читайте также:  Откидные колеса для стола своими руками

Каждый сдвиговый регистр имеет 8 выходов и вам нужно только 3 вывода arduino для контроля почти неограниченного числа сдвиговых регистров.

Мы также будем использовать десятичный счетчик 4017 для сканирования рядов. С помощью него можно сканировать до 10 рядов, поскольку у вас есть только 10 выходов, однако для контроля их необходимо всего лишь 2 вывода.

4017 — это очень полезная микросхема. Ознакомиться с ее работой можно по сноске

Как я сказал ранее, сканирование выполняется с помощью десятичного счетчика 4017, посредством подсоединения одного ряда к земле за один раз и пересылки данных через сдвиговые резисторы в колонки.

Шаг 3: Схемное решение

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

Для расчета величин 24 резисторов перейдите по следующей ссылке: LED-калькулятор.

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

Загрузите оригинальный файл, чтобы более подробно изучить схему (нажмите на схему для увеличения изображения).

Я также добавил макет печатной платы управления. Данный макет изготовлен благодаря инструментальному средству Willard 2.0.

Шаг 4: Пайка светодиодов

Пайка 144 светодиодов для создания матрицы может оказать трудной задачей, если вы не знаете наверняка, как это сделать.

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

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

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

Я не стану объяснять, как припаивать сдвиговые регистры и остальные компоненты, поскольку у каждого есть свой стиль и методы работы.

Шаг 5: Программирование матрицы

Вот мы и подошли к последнему этапу нашего проекта – программированию матрицы.

До этого я уже написал две программы, которые имеют много общего.

Я добавил программу, которая получает слово или предложение от последовательного монитора IDE arduino и отображает его на матрице. Код программы достаточно простой и не претендует на лучший в мире, но он действительно работает. Вы можете написать свой код или изменить мой на свое усмотрение.

Я приложил файл в формате excel, чтобы вы смогли создать свои собственные знаки и символы.

Вот как это работает:

Создайте требуемый символ пиксель за пикселем (не беспокойтесь, это очень легко) и скопируйте выходную строку следующим образом — #define

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

Шаг 6: Устройство готово!

Поздравляю! Вы самостоятельно сделали матрицу a 24×6 и теперь можете оперативно выводить на нее все, что вам нужно.

Теперь вы можете протестировать матрицу, придумать новые программы или улучшить интерфейс.

Источник

Проект за пару дней: большой дисплей из светодиодных лент

Полгода назад мы дополнили наш почти традиционный офисный каток 7,6 тыс. светодиодами, чтобы транслировать изображения и видео прямо на поверхность льда. На гиктаймсе был опубликован пост, в котором рассказывалось о том, что подо льдом скрывается самый настоящий гигантский дисплей разрешением 120х63 «пикселей», на который можно выводить достаточно сложные и яркие изображения.

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

Читайте также:  Одежда для новорожденных детей своими руками

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

Главный вопрос проекта — какое ПО использовать? Здесь все зависит от ваших потребностей: мы начнем с демокода и указателей, а в одной из следующих статей рассмотрим, как выводить на дисплей уведомления и котировки акций.

Что нам понадобится

  • 10 м светодиодной ленты (продается в катушках по 5 м). Я использовал дешевый вариант — WS2812B. Если же вам хочется получить более высокое разрешение дисплея, можете приобрести ленту с плотностью 60 светодиодов/метр;
  • блок питания на 5 В и 10 А. Я использовал модель, у которой входное питание до 240 В подается на винтовые зажимы. Если вам нужно сделать дисплей более безопасным, выберите полностью закрытый блок питания;
  • Arduino UNO;
  • большое количество отрезков толстого провода. Я отрезал пучок от старого компьютерного блока питания;
  • фоторамка 50х50 см;
  • матирующий спрей и белая краска.

Общие затраты у меня получились меньше $100.

Также вам понадобятся инструменты:

  • паяльник с припоем;
  • клеевой пистолет;
  • нож или ножницы;
  • инструмент для снятия изоляции.

Сначала прочитайте пособие по работе с электроникой для начинающих!

Расчеты

Если вы приобрели рамку 50х50 см и такие же светодиодные ленты, как у меня, то сможете уместить в дисплей 15 отрезков по 15 светодиодов. Но ничто не мешает использовать рамку другого размера. Расстояние между светодиодами — около 30 мм, таким образом на один пиксель приходится примерно 30 мм 2 . Это наш 1DPI. Ну да, разрешение не как у Retina.

Рассчитайте, сколько отрезков ленты вам понадобится, и расчертите направляющие с обратной стороны панели. Семь раз проверьте, один раз отрежьте: у меня ленты немного различаются, потому что когда я начал их приклеивать, то обнаружил, что могу вместить только 14 отрезков по 15 светодиодов. Но это не страшно — в приложении можно легко настроить разное количество рядов пикселей и их длину. Отрежьте куски, подходящие для вашей рамки. К сожалению, я обнаружил, что у меня 15-е светодиоды в отрезках приходятся как раз на то место, где нужно припаивать соединительные провода. Поэтому пришлось их выпаивать.

Матирование стекла

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

Также задуйте белой краской панель, которая будет видна сквозь стекло. Отрежьте один из углов — здесь пройдут провода.

Крепление светодиодных лент

Для приклеивания лент к панели используйте суперклей. Я пробовал двусторонний скотч, но через несколько недель он отвалился. Клеевой пистолет еще хуже, ведь обе поверхности — панель и обратная сторона ленты — гладкие и не имеют пор. Если вы приобрели светодиодные ленты в резиновом корпусе, то не сильно переживайте относительно точности размещения — их можно свободно двигать.

Помните, что сигнал будет проходить через всю цепь, и у каждой ленты есть направление передачи сигнала. Ленты нужно размещать так: у одной стрелка (направление сигнала) указывает направо, у следующей — налево, потом опять направо и т.д. То есть сигнал по дисплею будет идти «змейкой». Проверьте еще раз правильность размещения лент, прежде чем клеить их!

Пайка

Для соединения лент требуется по три провода разной длины. Внутреннюю пару контактов соединяем самым коротким проводом (на фото — красный), для средней пары берем провод подлиннее, а к внешним контактам припаиваем самый длинный. В зависимости от того, какие ленты в данный момент соединяются, внутренние контакты будут либо питанием (+5V), либо заземлением (GND).

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

Читайте также:  Патрон зажигалка своими руками

Фиксация лент

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

Проверка подключения

Шестой пин Arduino используется для передачи управляющего сигнала; напряжение питания должно подаваться напрямую от блока питания. Подключите заземление между лентами, Arduino и блоком питания. Не пытайтесь запитать ленты от Arduino, а также не подключайте блок питания к Arduino при подключенном USB (когда будет загружаться код для тестирования).

Скачайте и добавьте в соответствующую папку библиотеку AdafruitNeoPixel, затем запустите Arduino. Протестируйте подключение с помощью следующего кода, указав в первом параметре количество светодиодов (в нашем примере — 60):

Adafruit_NeoPixel strip =Adafruit_NeoPixel(60, PIN, NEO_GRB + NEO_KHZ800);

Если анимация остановится на каком-то ряду, сразу отключите всю конструкцию и проверьте подключение. Возможные причины сбоя:

  • неправильное направление ленты;
  • вы спутали контакты при соединении лент;
  • вы припаяли +5V к GND.

Помещаем в рамку

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

Можете еще подумать над тем, возможно ли спрятать в рамке еще и блок питания с Arduino. А пока переходим к настройке ПО.

Glediator

Программа Glediator компании SolderLab.de очень хорошо подходит для анимирования светодиодных матриц на вечеринках или в ночных клубах. Она способна управлять матрицей, состоящей из 512 светодиодов WS2812/NeoPixels, формируя до 24 кадров/сек — этого вполне достаточно для нашего дисплея, можно даже выводить на него простенькие анимационные гифы. Микшер позволит делать плавные переходы между анимациями.

Для работы с Glediator установите на Arduino UNO прошивку, и проверьте, чтобы сигнальный кабель был подключен к пину 6. Не забудьте прописать в переменной количество используемых вами светодиодов.

Запустите Glediator, откройте свойства и измените размер матрицы и режим вывода. Настройте порядок пикселей, если у вас используется другая схема, но по этому шагу мало документации, поэтому придется действовать методом проб и ошибок. Если изображение на дисплее отличается от задуманного, попробуйте поиграть с настройками. У меня работал порядок пикселей HS_BL — подозреваю, что это означает «horizontalsnake, startingbottomleft» (горизонтальная змейка, начало слева внизу).

Glediator — профессиональное приложение, не будем пока изучать его интерфейс и возможности. Загрузите в левое и правое окна разные анимации, затем двигайте микшер между ними. Или используйте готовый плейлист, который показан в видеоролике.

Библиотеки Adafruit NeoMatrix и Adafruit GFX

Компания Adafruit создала очень полезную библиотеку для работы со светодиодными матрицами. Сначала она называлась Adafruit GFX, и изначально предназначалась для TFT- и LCD-дисплеев. Затем появилась модификация NeoMatrix, позволяющая полноценно работать с матрицами NeoPixel. Она имеет огромное количество простых в использовании функций по выводу текста или растровой спрайтовой графики.

Если вы в точности повторили мой проект, то можете воспользоваться этим кодом. Самая важная часть:

С первыми строками все понятно. В последних трех описывается схема матрицы: в данном случае первый пиксель находится слева внизу (bottomleft), пиксели расположены рядами (rows), соединенными зигзагообразно (zigzag). Если вы сделали иначе, то обратитесь к документации библиотеки.

Я задал в коде несколько спрайтов — смайлы. Вы можете создать собственные с помощью Java-приложения Img2Code, лежащего в папке библиотеки GFX.

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

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

Источник

Оцените статью
Своими руками