Светодиодный куб 8x8x8 своими руками


★ Заказать печатные платы jlcpcb.com/
Сегодня мы с вами сделаем гигантский светодиодный куб под управлением Arduino! Куб имеет размеры 8x8x8, и для максимальной компактности я сделал для него печатную плату.

▼ Страница проекта (ссылки, схемы, инструкции) ▼
alexgyver.ru/arduino-led-cube/

► Git: github.com/AlexGyver/LEDcube
► EasyEDA: easyeda.com/beragumbo/LED_Cube-8937fd8460054d639d93736e35345182

► Инструкция по прошивке TS100
alexgyver.ru/ts-100-update/

► Сам TS100
ali.ski/SQ9nV

► Другие китайские паяльники и примочки, припой
alexgyver.ru/all-for-soldering/

★★★★★★★★★★ ARDUINO ★★★★★★★★★★
► Что это такое и зачем? youtu.be/nrczO8tWJNg
► Мои уроки по Ардуино AlexGyver.ru/?p=4516
► Все Arduino, модули и датчики AlexGyver.ru/?p=44
► Всё для пайки AlexGyver.ru/?p=1515
► Мои видеоуроки по пайке goo.gl/qQFmq7
► Наборы для обучения пайке AlexGyver.ru/?p=5673

Теги: #самоделки #arduino #электроника
═════════════════════════════════════
★ Кешбек до 25% на самые популярные интернет-магазины! ★
goo.gl/pk6jgP

★ Получай 10.5% скидку с любой покупки на Aliexpress! ★
goo.gl/Y4rDa1
═════════════════════════════════════
✔ Официальный сайт: AlexGyver.ru/
✔ Группа Вконтакте: vk.com/diyworkplace
✔ Поддержать канал денежкой AlexGyver.ru/support_alex/
✔ Instagram: www.instagram.com/alexgyvershow/
═════════════════════════════════════ #AlexGyver

DIY Игровая Приставка! Что она Потянет?


#Vectozavr #Gamedev #Programming
Зарегистрироваться на интенсив “Как выбрать направление в ИИ?” от GeekBrains — geekbrains.ru/link/q2~MX0
Помочь денежкой: www.donationalerts.com/r/vectozavr
tg: @vectozavr
inst: www.instagram.com/vectozavr
vk: vk.com/vectozavr
Код геймбоя: github.com/vectozavr/GameBoy_arduino

Сегодня я расскажу, как я сделал свою версию игровой приставки gameboy с помощью arduino, языка программирования C, джостика и дисплея, а потом запустил на ней pseudo3D шутер от первого лица, змейку и flappyBird, только с вектозавром. Приятного просмотра!

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

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

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

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

Я решил использовать высокоуровневую библиотеку adafruit, которая с помощью интерфейса I2C осуществляет взаимодействие с пикселями на экране.

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

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

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

3-я игра — Flappy Bird. Она достаточно простая в реализации, но очень интересная и сложная в игровом процессе.

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

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

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

Для питания я решил использовать небольшие аккумуляторы 3.7 V. Я буду использовать два таких аккумулятора, подключенных последовательно.

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

Моя любимая игра, безусловно, «flappyZavr». В нее не надоедает играть и она постоянно держит в напряжении. В змейку я бы, возможно, в будущем добавил возможность изменения уровня сложности, а в 3D игру можно было бы добавить врагов.

Секрет Сложнейших Фракталов... Наглядно и в Анимации!


Помочь денежкой: www.donationalerts.com/r/vectozavr

telegram: @vectozavr
Instagram: www.instagram.com/vectozavr
vk: vk.com/public179407034
Статья: ilinblog.ru/article.php?id_article=38
Навигатор по множеству Мандельброта: www.michurin.net/online-tools/mandelbrot.html
Здесь можно срендерить любое место фрактала в 2K: sunandstuff.com/mandelbrot/
Еще один генератор: nadin.miem.edu.ru/1111/
Погружение в множество Мандельброта на протяжении часа: www.youtube.com/watch?v=UJzB-6T9QCs
Код множества Жюлиа: github.com/vectozavr/PhysicsSimulations/blob/master/julia_set.cpp

Я расскажу о том, как получить невероятно сложные и красивые фракталы, как замоделировать молнию, рост плесени и броуновское движение, а также расскажу, по каким правилам растут папоротники. Уверяю: это перевернёт ваше представление о природе!

Для построения множества Жюлиа понадобится небольшая формула над комплексными числами! Вместо того, чтобы сразу разбирать полную формулу, я предлагаю сначала занулить константу C.
Понятно, что если точки находятся внутри единичного круга, то они должны притянуться к центру. Точки, которые находятся вне единичной окружности будут отдалятся от нуля.
Точки, находящиеся на границе окружности, будут оставаться на границе.
Нас интересуют только такие точки плоскости, которые не уходят на бесконечность. Понятно, что для данной формулы множество таких точек – это круг радиуса 1.
А что теперь будет, если в формулу добавить очень маленькую константу C и постепенно увеличивать её по модулю. Если немного подождать, то мы увидим уже знакомое нам множество Мандельброта. При некоторых параметрах фрактал разделяется на небольшие островки, которые то образуются, то опять комбинируются в единое целое.

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

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

Вместо второй степени можно выбрать любую: третью, четвёртую, пятую, восьмую и даже дробную.
Фракталы можно строить в трехмерном, четырёхмерном или даже в пятисотмерном пространстве.
Для более высоких размерностей используют уже не комплексные числа, а, например, кватернионы. Это не пары чисел, а группы по 4 числа.
Каждый трехмерный фрактал, полученный той или иной формулой, – это сечение четырёхмерного множества. Для алгебры октав или Клиффорда эта область математики на данный момент изучена мало.

Во многих областях физики можно встретить фракталы. Один из самых известных примеров – движение Броуновской частицы. Если подождать достаточно долго, то можно увидеть, что траектория движения броуновской частицы самоподобна.
На этом фрактальность не заканчивается. Представьте теперь, что частицы движутся и могут прилипать к статичной затравочной частице в центре. Сначала мы с некоторого радиуса с произвольной стороны выпускаем частицу. Если она оказалась рядом с затравочной, то она к ней прилипнет. После этого мы опять выпускаем частицу и ждем её прилипания.
Постепенно налипает все больше и больше частиц. Образуется структура, называемая кластером.
Частицы, двигаясь по фрактальным траекториям, прилипают друг к другу и образуют фрактальный кластер.

Можно ввести вероятность прилипания и сделать её тем выше, чем больше соседей вокруг.
Забавная структура, да ещё и очень похожа на то, что мы наблюдаем в реальном эксперименте при химической агрегации DLA кластеров.

Коронный разряд — очень красивое явление, которое тоже является фракталом! С помощью уравнения Лапласа можно смоделировать распространение молнии.
При изменении свойств среды, в которой распространяется молния, изменяется ветвистость структуры.

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

Можно задать другое правило: en.wikipedia.org/wiki/Barnsley_fern
Если запрограммировать это правило, то получится папоротник Барнсли. Каждое из этих четырех правил отвечает за рост его отдельных частей.
Достаточно четырёх преобразований для хранения всех возможных комбинаций папоротников.

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

Огромная благодарность всем моим спонсорам на patreon!

Как страдали программисты в 80-х. Подключаем Arduino модуль к БК 0010 и пишем для него игру


Привет!
Сегодня второй выпуск про наследие советских инженеров бытовой компьютер БК0010-01. И на этот раз мы попробуем запрограммировать управление внешними устройствами с помощью ассемблера (господи, какая ж это боль). То есть попробуем общаться с процессором компьютера напрямую. Вообще не завидую программистам 80-х. Мы взяли различные Arduino-модули — поиграли светодиодами, запрограммировали 7-сегментные индикаторы Мало того! Мы напишем собственную игру! А результаты будем выводить на физический внешний счетчик. Может быть кому-то наш ролик покажется излишне сложным. Пишите — поняли ли вы чегой-то или вообще ничего!

Мои программы для БК

yadi.sk/d/YLsXpXaynWMxEQ

Доп.материалы

Это мануал по Assembler для БК-0010-01
boulder-dash.narod.ru/bk_emulator/bkprogramming.html#5
Транслятор ASM для БК-0010-01 на Python
github.com/imachug/PDPy11
Онлайн эмулятор БК
sisenis-1193.appspot.com/BK/bk.htm
Тут эмулятор БК из видео
gid.pdp-11.ru/

Какие компоненты мы использовали?

Сборка силовых ключей N-FET (Zelo-модуль)
amperka.ru/product/zelo-n-fet?utm_source=youtube.com

Написал Онлайн Шутер на C за Неделю


#Vectozavr #Gamedev #Programming
1 часть: youtu.be/Q9zkiOClyEo
Помочь денежкой: www.donationalerts.com/r/vectozavr
telegram: @vectozavr
Статья на моём сайте: ilinblog.ru/article.php?id_article=63
GitHub: github.com/vectozavr/pseudo3DEngine
Instagram: www.instagram.com/vectozavr
vk: vk.com/public179407034
OpenAL: openal.org

Содержание:
1:30 — Подключение SFML.
1:57 — Проектирование каркаса проекта.
2:46 — 2D карта, камера и управление.
3:15 — Ray cast и получение 3D изображения.
6:43 — Управление мышью.
7:20 — Текстурирование.
9:42 — Оружие.
11:22 — Коллизия камеры со стенками.
14:38 — Меню игры.
15:17 — Зеркала и стены разной высоты.
17:50 — Игровые звуки.
19:03 — Противник и обработка выстрелов.
20:05 — Multiplayer.
21:24 — Проектирование карты для сражений.
22:40 — Результаты.
23:33 — Как запустить игру?
24:01 — GitHub и планы на будущее.

Загадка для самых внимательных: найдите таймкод, где есть 25-й кадр (зеленый) и пришлите в директ инстаграма. С первым я свяжусь.

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

В предыдущем ролике я показал, как можно с помощью алгоритма ray-cast и консольной графики сделать простую бродилку. В этот раз я захотел написать полноценную игру. Конечно, можно писать игру на Unity 3D или каком-нибудь другом движке, который предоставляет огромные возможности, но я захотел сделать всё сам и самостоятельно написать движок для игры.
В качестве основы я выбрал библиотеку SFML, которая позволяет рисовать линии, многоугольники и окружности. Также она дает возможность удобного использования клавиатуры, добавления звуков и загрузки изображений. В общем все, что нужно для того, чтобы писать игру и не заморачиваться над не существенными деталями на низком уровне.

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

Как сделать компьютер? | Building ZX Spectrum 128k clone Beta Disk Interface AY-3-8910 (YM2149F)


Сборка и наладка компьютера «Ленинград 48k» (клон ZX Spectrum)
Расширение памяти компьютера до 128k, подключение контроллера дисковода на КР1818ВГ93 и подключение музыкального сопроцессора AY-3-8910 (YM2149F).

Константин Айги
vk.com/id152512411

1995-1997 гг., FFC Computers (платформа ZX Spectrum)
speccy.info/FFC_Computers

© 2016 CXEMATEKA.RU

Для тех, кто захочет повторить (схемы, файлы, предыстория):
www.cxemateka.ru/ru/building_zx_spectrum_128k_clone_beta_disk_interface_ay_3_8910_ym2149f

— Реальное время проделанных работ:
1. сборка платы 48k — 7 часов 53 минуты
2. доработка до 128k и нормализация дешифрации портов — 2 часа 44 минуты
3. подключение контроллера дисковода и музыкалки — 3 часа 32 минуты

Ну а целиком весь процесс сборки занял порядка 16 часов )

— В ролике использованы музыкальные композиции:
Mic (Михаил Иващенко) — «Dreamless»
zxart.ee/rus/avtory/m/mic/dreamless/

D.J.Serg (Сергей Ханько) — «SoundStorm»
zxart.ee/rus/avtory/d/djserg/soundstorm/

Kyv (Юрий Клопов) — «There Were Times»
zxart.ee/rus/avtory/k/kyv/thereweretimes/

MmcM (Сергей Косов) — «Hibernation»
zxart.ee/eng/authors/m/sergey-kosov/hibernation/

MmcM (Сергей Косов) — «You Life?»
zxart.ee/eng/authors/m/sergey-kosov/you-life/

Mic (Михаил Иващенко) — «4 COMORRA»
zxart.ee/eng/authors/m/mic/4-comorra/

MmcM (Сергей Косов) — «Doubtful Future»
zxart.ee/eng/authors/m/sergey-kosov/doubtful-future/

Key-Jee (Иван Петухов) — «Sputnik»
zxart.ee/eng/authors/l/luchibobra/sputnik1/

MmcM (Сергей Косов) — «Man of Art»
zxart.ee/eng/authors/m/sergey-kosov/man-of-art/

Fuxoft (Frantisek Fuka) — «Magnetic Fields 4» (Jean Michel Jarre AY-cover)
zxart.ee/eng/authors/f/frantisek-fuka1/magnetic-fields-iv/

Allister Brimble — «Wild West Seymour (128k Title)»
zxart.ee/rus/avtory/a/allister-brimble/wild-west-seymour-128k-title-1/

Лазер ЖЕЛЕЗНОГО ЧЕЛОВЕКА?


Patreon: www.patreon.com/vectozavr
telegram: @vectozavr
Instagram: www.instagram.com/vectozavr
VK: vk.com/public179407034
Статья: ilinblog.ru/article.php?id_article=53

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

Что Такое Фракталы? Простое Объяснение!


Помочь денежкой: www.donationalerts.com/r/vectozavr
telegram: @vectozavr
Instagram: www.instagram.com/vectozavr
VK: vk.com/public179407034
Статья: ilinblog.ru/article.php?id_article=38

В данном видеоролике я расскажу о том, что такое фракталы и как их можно создавать самому (Фрактал — это самоподобные сложные фигуры).
Вы узнаете историю развития фракталов, а также поймёте, что такое снежинка Коха, треугольник Серпинского и множество Кантора.

Мы начнем с формального определения: фрактал — множество, обладающее свойством самоподобия. Объект, в точности или приближённо совпадающий с частью себя самого, то есть целое имеет ту же форму, что и одна или более частей. Для того, чтобы лучше понять это определение в видео мы приведём простые примеры.
Приятного просмотра!

Самый Мощный Компьютер!


Patreon: www.patreon.com/vectozavr
telegram: @vectozavr
Instagram: www.instagram.com/vectozavr
VK: vk.com/public179407034
Сайт: ilinblog.ru

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

Тройка самых сильных суперкомпьютеров:

3. Тяньхэ-2 или «Млечный путь-2» — суперкомпьютер, спроектированный Оборонным научно-техническим университетом Китайской армии и компанией Inspur. Этот компьютер имеет производительность в 35 квадриллионов операций в секунду и был самым мощным с 2013 по 2015 год.

2. Sunway TaihuLight — китайский суперкомпьютер, который с июня 2016 по июнь 2018 года являлся самым производительным суперкомпьютером в мире с производительностью 93 квадриллионов операций в секунду. Такая скорость вычислений более чем в 2,5 раза выше по сравнению с предыдущим мировым рекордсменом Тяньхэ-2.

1. Summit — суперкомпьютер, разработанный компанией IBM. Вычислительная мощность компьютера составляет 122 квадриллионов операций в секунду. Суперкомпьютер был введён в строй в июне 2018 года, заменив Titan.

Приятного просмотра!