Введение


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

Забегая вперёд, хочется сказать о том, что не нужно думать об объёме работы как о чём-то колоссальном. Напротив, делать совсем пришлось совсем немного, а вот те, кто думают: " Ха, я сделаю это за пару дней", — приготовьтесь к обратному. Да и сам процесс вовлекает в работу не хуже написания какого-нибудь программного кода…

Наблюдая за маленькими работами, размером 3х3х3, и 4х4х4, и 5х5х5, я потихоньку понимал, что чем больше — тем лучше.

Milestone #1 :
Если вы до этого не работали с паяльником, для начала осознайте что нужно будет припайвать все ножки светодиодов, это 2*512, не так-то мало. Поэтому потренируйтесь на каких-нибудь кошках.

В интернете полно инструкций на эту тему. Но от начала до конца я увидел кажется только на instructables.com, и сразу скажу, как-то там слишком подробно в плане всего. Использовал лично я компонентов в раза два меньше. Естественно комплектация получилась попроще. В итоге для нашей маленькой игрушки нам понадобится:

— 512 светодиодов (6$ — aliexp)
— 5 специальных микросхем для светодиодов STP16CPS05MTR (9$ — aliexp)
такие детали выгоднее брать партиями естественно
— 8 BD136 pnp транзисторов (отечественные аналоги также подойдут)
— 5 1кОм резисторов (рабочая мощность 2 W)
— 5 10мкФ конденсаторов (рабочее напряжение 35-50 V)
— соединительные провода (около 10 м вышло, учитывая неудачи), припой и все, кто по-кайфу

Время приступить к изготовлению макета


Берем дрель, линейку, делаем сеточку 8х8 (главное не сделайте 8х9, как я) на чём угодно, будь то пенопласт, деревянная доска или что-то ещё. И аккуратно сверлим дырочки для светодиодов.

image

Milestone #2 :
Ключевое слово — «аккуратно», пару миллиметров влево или вправо, и у вас уже будет кривой куб в итоге.

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

а) Все аноды должны быть слева, а катоды справа. Или наоборот. Как вам удобнее.
б) Самый первый ряд сверху должен содержать светодиоды под углом:

image

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

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

Итог первого слоя


image

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

image

Соединяем несколько слоёв


image

Milestone #3:
Новички, пожалуйста, используйте специальную паяльную пасту (флюс), если бы имеете дело с проводами, таким образом сохраните себе очень много нервов (не то, что я в первый раз).

Когда ты немножко устал


image

Итак, припаяв 64 провода к анодам, которые у нас получились «на дне», можно приступать к самой электронной схеме.

image

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

На деле это работает так:

image

Имеется 3 входа: тактирование, данные и защёлка. Когда отработалось 8 битов, идет защелка, и данные помещаются в регистр. Т.к. у нас микросхемы выполнены на сдвиговых регистрах, то для того, чтобы отрендерить 1 раз наш кубик разными битами информации, нам нужно записать 1 байт (8 битов с номерами слоев, на которые подавать напряжение), далее будут идти пустые данные, т.к. для пятого чипа у нас левые пины ни к чему не подсоединены. Далее мы записываем по 1 байту для каждой из группы из восьми колонок. Соответствующий бит будет определять, которая колонка должна гореть, и где это пересекается с активированным слоем, светодиод на их пересечении и должен получить напряжение.

Ниже представлена схема из даташита разработчика для общего ознакомления:

image

Как мы будем записывать 1 байт данных:

void CUBE::send_data(char byte_to_send){
    for(int i = 0; i < 8; i++){
        if(byte_to_send & 0x01<<i){
            digitalWrite(SDI, HIGH); // согласно тайминговой диаграмме сначала активное состояние на линии данных
        }
        digitalWrite(CLK, HIGH); // затем на линии тактирования
        digitalWrite(SDI, LOW); 
        digitalWrite(CLK, LOW);  
    }  
}

void CUBE::latch(void){
    digitalWrite(LE,HIGH); // и точно также мы сделаем с операцией защелкивания.
    digitalWrite(LE,LOW);    
}

Использовал Arduino UNO (взял попользоваться), но здесь подойдет вообще любая модель. И nano, и mini, поскольку используются только 3 цифровых входа и vcc + gnd.

Отдельно позаботьтесь о блоке дополнительного питания (я использовал адаптер 12V 2A), для отображения всех слоев кажется ток именно такой силы и нужен.

Весь исходный код в виде скетча для Arduino будет здесь.

  • Такую вещь можно сделать самому за неделю, главное купить все компоненты;
  • Можно поставить доп. модуль часов реального времени, и этот куб будет работать без подсоединения к ПК;
  • Можно, конечно, кастомизировать данный предмет различными кнопочками и радиоуправлениями, но я не стал;
  • Потренеровавшись на таком варианте «попроще», планирую в скором времени собрать RGB куб.

Выражается огромная благодарность автору данной идеи и духовному лидеру Nick`у Shulze. Материалы взяты с сайта hownottoengineer.com. Всем удачи и успехов во всех творческих начинаниях!

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


  1. ptitca_zu
    14.01.2016 13:51
    +42

    А где же видео-демонстрация?


  1. IronHead
    14.01.2016 16:03
    +2

    — 5 1кОм резисторов (рабочая мощность 2 W)
    — 5 10мкФ конденсаторов (рабочее напряжение 35-50 V)

    1) Зачем резисторы мощностью 2 Вт, когда они по сути управляющие и только лишь задают ток для выходов микросхемы, но не пропускают через себя всю мощность.
    2) Зачем конденсаторы на напряжение 35-50В, если напряжение питание вашей схемы 12В?


  1. BOOTor
    14.01.2016 17:33
    +2

    Фото никакие — ничего не видно, а из описания не всегда можно догадаться о том что и как надо делать…


  1. formatbce
    14.01.2016 18:21
    +3

    Кхм. А чем от этого отличается:
    http://geektimes.ru/post/268166/
    ?


  1. Zel
    14.01.2016 20:02
    +3

    Повторю вопрос: А где же видео-демонстрация?


  1. vitaly_KF
    14.01.2016 21:37

    Где видео?


  1. Z0nd0R
    15.01.2016 04:56
    +4

    Судя по всему, сделано или взято из этой статьи hownottoengineer.com/projects/lc.html


    1. IronHead
      15.01.2016 09:38
      +4

      А вот там и разгадка двухваттных резисторов и конденсаторов с огромным запасом по напряжению

      5 x 1k 2W resistors (2W is overkill but I already had them at home) [element14 part# 1417017]
      5 x 10uF 35V Tantalum Capacitors (35 V is overkill but I already had a few) [element14 part# 1457591]

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


      1. Alexeyslav
        15.01.2016 11:55
        +2

        Вот на таких элементарных вещах и заваливаются студенты на экзаменах, при этом не понимая почему и считают препода зверем.
        Но ведь вся суть электроники именно в этих деталях…