ВИДЕО С САЙТА easyelectronics.ru

Супер!!! Других слов просто нет.

Решил повторить, но с небольшими изменениями. Первое (и, наверное, самое сложное) избавиться от проводов, а это значит, что нужно переделывать печатные платы. Второе — увеличить размер самого глобуса (для светодиодов 5 мм). И третье — попробовать изменить картинку, выводимую глобусом.




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

led_globus_shema

Начал с реализации первой задачи. Не один вечер я провел в Sprint Layout, чтобы развести плату. 33 провода — от них так просто не избавишься!

led_globus_plata1 led_globus_plata2

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

led_globus_plata3 led_globus_plata4 led_globus_plata5

Просверлил три отверстия в разных частях платы. С их помощью совместил рисунки на противоположных сторонах платы. Снова протравил (в этот раз заклеил скотчем первую сторону) и просверлил оставшиеся отверстия.

led_globus_plata6 led_globus_plata7 led_globus_plata8

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

led_globus_plata9 led_globus_plata10 led_globus_plata11

После всего этого плату полностью покрыл припоем и припаял детали.

led_globus_plata12 led_globus_plata13 led_globus_plata14




С платой дисплея дела объстаяли гораздо веселее. Такую фигурную плату вырезать еще не приходилось. Просверлил полторы сотни отверстий и выломал получившуюся «загогулину».

led_globus_plata15 led_globus_plata16 led_globus_plata17 led_globus_plata18

Потом протравил каждую сторону по отдельности.

led_globus_plata19 led_globus_plata20

Пара часов с паяльником, и детали на месте.

led_globus_plata21 led_globus_plata22

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

led_globus_balans1 led_globus_balans2

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

led_globus_plata_v_sbore1 led_globus_plata_v_sbore2 led_globus_plata_v_sbore3 led_globus_plata_v_sbore4

После сборки оказалось, что два нижних светодиода направлены в плату управления и не будут видны при работе глобуса :-(. Моя недоработка. Немного обидно, но что поделать.

Дальше по плану вращающийся трансформатор. Делал так же, как и в статье часы — пропеллер, только в этот раз использовал кулер 120 х 120 мм, 12 V, 0,32 А. Генератор ВЧ использовал тот же (на NE555).

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

Подключил программатор (прошивал STK 200/300), залил прошивку, включил… «Глобус» вращается, но показывает что-то непонятное. Т.к. вывод  изображения реализован в программе привязкой к оборотам двигателя, решил разобраться с кодом (благо много комментариев). Нужно было изменить значения регистров r20, r21, r22 в счетчике «delay». Добившись остановки изображения, обнаружил ошибку в разводке платы — изображение оказалось перевернутым, т.е. я перепутал расположение светодиодов на плате. Но глобус уже сделан! Пришлось разбираться с кодом дальше.

Изображения, выводимые глобусом, хранятся в файле frames.inc в виде значений, последовательно загружаемых в регистры. Изменив эти значения, можно изменить изображение, выводимое глобусом. Узнать какие именно значения нужны для того или иного изображения можно с помощь файла, созданного в MS Excel (информацию и файл нашел на сайте radiokot.ru). Немного переделав файл (есть в архиве) для своего случая, получил необходимые мне значения. Далее, скопировал значения в файл frames.inc и скомпилировал новый HEX-файл. Залил новую прошивку, и вуаля!!!

Видео моего глобуса 🙂

Все необходимое можно скачать  здесь




ЕЩЕ РАЗ ПРЕДУПРЕЖДАЮ!!! Всем, кто решил повторить глобус по моей плате, В РАЗВОДКЕ ОШИБКА!!! С оригинальной прошивкой от rico_81 глобус показывает ПЕРЕВЕРНУТОЕ ИЗОБРАЖЕНИЕ!!! Исправленные файлы прошивки есть в архиве.

Теперь о том, как работать с  файлом MS Excel и, собственно, изменять изображения.

В файле видим рабочее поле, обозначенное линиями. В этом поле, с помощью единиц и пустых клеток, создаем изображение. Дальше, значения, получившиеся в желтой области под рабочим полем, копируем в буфер. Затем, ставим курсор в верхнюю левую ячейку зеленой области, расположенной справа от рабочего поля, и нажимаем правую кнопку мыши. Выбираем «специальную вставку». В ней указываем «вставить «значения»» и устанавливаем галочку «транспонировать». Нажимаем «Ok». Потом выделяем область, обозначенную жирной рамкой (плюс один столбец слева к зеленой области), снова копируем в буфер. Открываем файл frames.inc (можно в блокноте) и заменяем значения в файле содержимым буфера. Компилируем новый HEX-файл и заливаем его. (За инструкцию прошу прощения)

Заменил светодиоды на яркие белые. Вот результат

45 комментариев для “3D led глобус

    1. Я программировал с помощью программы bascom-avr программатором STK200/300. Все настройки фьюзов оставлял по умолчанию.

  1. Можете добавит печатную плату на LAY. только без архива что-то не могу открыть архив. Выдает ошибку.

    1. Скачать не могли из-за счетчика скачиваний. Удалил его. Сейчас все нормально. Извиняюсь за неудобства.

    1. У меня эта плата получилась с третьего раза. Вряд ли я решусь повторить этот подвиг . Самое сложное совместить слои, остальное проще.

  2. собрал по вашей схемке глобус запустил но не могу понять- или не хватает оборотов либо у меня ошибка в схеме -либо в прошивке.
    я готовый хекс залил в кристалл. 
    Кулер обычный 80мм
    картинка не понятная вроде и буквы вижу но линии светодиодов растянуты .
    объясните плиз прошивку как правильно залить а то файлов много теряюсь (новичок).
    заранее спасибо.

    1. 1. Если использовали оригинальную прошивку от rico_81, то изображение будет перевернутое из-за разводки платы (есть предупреждение на сайте).

      2. В файле 32LED_animation.asm нужно поставить свои значения в строках (выделено жирным, подбирается экспериментально):
      ;=============== пауза ===================
      delay: ;
      push r20 ; сохранил значение r20 т.к. там у нас инит для ресета
      push r21
      push r22
      ldi r20,$80 ; на Xtal 9.6 MHz = 0.005 сек
      ldi r21,$04 ; что равняется 20 rps
      ldi r22,$00

      Все зависит от скорости вращения двигателя. В моем случае было:

      ldi r20,$
      ldi r21,$00
      ldi r22,$00

      3. Исправить файл frames.inc чтобы изображение перевернулось.

      4. Скомпилировать новый HEX-файл и залить его.

      5. Проверить fuse-биты — должны быть настроены на 9,6 МГц (заводские настройки).

      К концу недели постараюсь выложить все файлы в исправленном виде.

      1. Спасибо за быстрый ответ но у меня нет файла проекта (.prj) 
        как мне скомпилить проект

        1. Создайте новую папку. В названии папки и пути к ней не должно быть русских букв! Скопируйте в эту папку файлы macro.asm и frames.inc.
          Создайте новый проект (я делал в AVR Studio 4) и сохраните его в новой папке.
          Скопируйте все содержимое файла 32LED_animation.asm в файл .asm нового проекта.
          В последней строке сотрите путь к файлу frames.inc, оставьте только .include «frames.inc».
          Скомпилируйте проект (F7).
          Дальше можете вносить любые изменения и снова компилировать.
          На всякий случай добавил все необходимые файлы для AVR Studio в архив. Файлы исправленные (изображение перевернуто). Глобус показывает карту мира и надпись 2013. Нужно только подобрать значения счетчика для своего двигателя. Удачи!

  3. И снова я ) 
    Убил 2шт контроллера. Прошивал c помощью программатора AVR910 (собирал сам). Atiny13 прошивал с большим трудом.
    В итоге хотел залить вашу свежую прошивку и походу убил кристалл (. Начал показывать при прошивке ошибки и теперь не реагирует вообще. CVR пишет (avrprog error entering programming mode)
    У меня вопрос на atmega8L (8mhz) можно ли залить вашу прошивку. Не хочу связываться с аттини из за неудач.Большое спасибо за терпение.

    1. Как прошивали ATtiny первый раз: в плате или отдельно? Если сначала прошивали, а потом впаивали, то проверьте правильность подключения программатора к плате. Проверьте наличие питания МК.
      Такая ошибка возникает, если МК не определяется программой (нет питания, не правильно подключен МК, fuse-биты запрограммированы на работу от внешнего кварца, а его нет (не для ATtiny13)).
      Если есть возможность — проверьте другим программатором.
      Прошивка для atmega8L думаю не подойдет — это разные МК.

  4. выпаял и отлично прошилась, не хотел кристалл прошиваться в плате хотя перемычку разъединил
    сейчас поставлю )

  5. Ну вроде настроил но цифры как обрезаны с низу. Такое впечатление что изображение поломано. Может я снова гоняю)
    Вот мои настройки
    ldi r20,$6B
    ldi r21,$01
    ldi r22,$00
    Кстати а за что отвечают (r20-22)
    как я понял 20 — частота вращения, 21 — сколько время горит led, 22 — пауза между свечением.
    Правильно?

    1. Регистры r20-r22 — это трехбайтный счетчик, отвечает за время, в течении которого светится один столбец изображения.
      Программка действительно удобная :smile:, вот только для данного глобуса приходится рисовать вверх ногами 🙁
      Насчет комментариев: мудрил плагин (только поставил), удалил его. Теперь все нормально, только изображения прикрепить нельзя. Буду разбираться.

  6. 🙂 Ура! заработало. Ну короче говоря  я бокапор ) Экран распечатал зеркально и получилось что стороны поменялись местами из-за этого и непонятная картинка.
    Переделал экран и поставил мотор с советского вентилятора, подобрал методм научного тыка
    R20-22 \8C00 
    и вуаля.
    супер админу большое спасибо за своевременный ответ. Сайт супер.!!!!!!

  7. Купил вентилятор 120 х 120 мм, 12 V, 0,30 А и не могу снять башку. У кого нибудь была такая проблема? 

    1. Мне попадался один такой. Немного повозившись с ним, оставил его в покое. Потом где-то читал, что если нет отверстия для снятия стопорного кольца снизу кулера, то можно просверлить его самому. ТОЛЬКО ОЧЕНЬ ОСТОРОЖНО!!! Диаметр отверстия 6 мм. Сам не пробовал. Все эксперименты остаются на Ваш страх и риск.

  8. Здорова, и снова я. ) Решил повторить и сделать еще один глобус но уже экран делать на smd,
    и думаю дополнительно добавить часы. Буду держать в курсе, если есть инфа по экрану на smd то плиз скинте ссылку.
    СПС

  9. Всё работает, только никак не могу настроить поочередный вывод рисунков (frame0—frame1—frame2—и тд) раз по50 каждый и снова на первый. Проэкт на меге8. Пожалуста подскажите где вносить изменения

  10. всё заработало. Теперь это rgb вариант на меге 32 со спец прогой для рисования рисунков

  11. ❓ Здравствуйте я в этом деле еще чайник но у меня вопрос где вторая сторона плат ❓

    1. Какую сторону не можете найти? В файле печатных плат есть обе стороны: синий цвет — топология со стороны элементов, зеленый цвет — топология со стороны монтажа.

  12. Можно с автором проекта связаться, например, в вк?
    В микроконтроллерах я только начинающий, по этому чтоб не забивать комментарии относительно глупыми вопросами, хотелось бы уточнять некоторые моменты в лс)

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

    1. Чтобы спросить автора прошивки, да и глобуса в целом, Вам нужно написать вопрос на сайте easyelectronics.ru, т.к. автор, riko_81, находится там. Я просто повторил его устройство с небольшими изменениями.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *