Съдържание:

Интерактивен LED купол с Fadecandy, обработка и Kinect: 24 стъпки (със снимки)
Интерактивен LED купол с Fadecandy, обработка и Kinect: 24 стъпки (със снимки)

Видео: Интерактивен LED купол с Fadecandy, обработка и Kinect: 24 стъпки (със снимки)

Видео: Интерактивен LED купол с Fadecandy, обработка и Kinect: 24 стъпки (със снимки)
Видео: Как обновить xbox 360 freeboot - обновление дашборда, оживление аватаров 2024, Юли
Anonim
Image
Image
Интерактивен LED купол с Fadecandy, обработка и Kinect
Интерактивен LED купол с Fadecandy, обработка и Kinect
Интерактивен LED купол с Fadecandy, обработка и Kinect
Интерактивен LED купол с Fadecandy, обработка и Kinect
Интерактивен LED купол с Fadecandy, обработка и Kinect
Интерактивен LED купол с Fadecandy, обработка и Kinect

Какво

Когато е в Dome е 4,2 м геодезичен купол, покрит с 4378 светодиода. Всички светодиоди са индивидуално картографирани и адресирани. Те се контролират от Fadecandy и Processing на работния плот на Windows. Kinect е прикрепен към една от подпорите на купола, така че движението вътре в купола може да бъде проследено и хората могат да взаимодействат със светлините.

Защо

Проучвам групов опит чрез споделено взаимодействие. Обичам да създавам интерфейси, които много хора могат да използват едновременно. LED повърхността на купола прави подходящ изход за многопотребителски интерфейс, защото е огромен, така че много хора могат да го видят. Куполът също създава уютно, сферично пространство, което насърчава хората да се обръщат един към друг. Kinect работи чудесно като вход за много потребители, тъй като хората могат да се движат и да влияят на полето за дълбочина едновременно, единственото ограничение е колко хора могат да се поберат заедно в пространството.

Непрекъснато разработвам нови методи за взаимодействие за „Когато съм в купол“, за да видя какъв ефект имат различните методи за въвеждане и какво работи добре за различните групи хора. Особено искам да видя какви интерфейси насърчават връзката между приятелите и непознатите в купола и какво прави споделения опит да се чувства смислен и полезен.

Където

Проектирах и изградих When in Dome като последен проект за магистърската си програма, която беше Design for Performance and Interaction в лабораторията за интерактивна архитектура, The Bartlett, UCL.

Как

Някои от използваните технологии и инструменти:

  • Fadecandy
  • Обработка
  • Kinect (взех моя от eBay)
  • Митра видя
  • Режещ трион
  • Шевна машина
  • Поялник
  • Пистолет за горещ въздух
  • Пистолет за горещо лепило
  • Лазерен нож
  • Пробивна машина

Някои от използваното оборудване:

  • Създайте комплект с хъбове
  • Обработен дървен материал за куполни подпори
  • 4 мм шперплат от топола
  • Бяла дифузна тъкан
  • Черен плат
  • Алуминиев плосък прът
  • Съединители Wago
  • 12awg и 24awg кабел
  • Захранващи устройства 5v 30A
  • Подови настилки от пяна
  • Jst конектори
  • Кондензатори

Да тръгваме

Ще има много компоненти на този проект, които ще разкажа, надявам се да намерите нещо полезно и интересно вътре!

Стъпка 1: Куполът

Купол
Купол
Купол
Купол

Комплект главина

Реших да построя купола си с комплект от buildwithhubs и определено бих ги препоръчал.

Те продават комплекти съединители и дават съвети какви материали да купят за подпорите. Повечето от техните куполи се използват в собствените градини на хората, докато моите ще бъдат публични, така че аз също купих техния комплект от допълнителни защитни капачки, които предпазват подпорите от изскачане, ако някой се облегне на купола.

Размер

Куполът ми е с диаметър 4,2 м. Избрах този размер, защото това означава, че най -дългата страна на триъгълниците, съставляващи купола, ще бъде 1,2 м и това се вписва добре в листове от шперплат, когато дойдох да направя панелите, за да държат светодиодите.

Стъпка 2: Направете подпорите

Image
Image

Дължини

Използвах калкулатора за подпори на buildwithhubs, за да изчисля дължините, необходими за направата на купол от 4,2 м. 30 "къси панталони" на 1059 мм и 35 "дълги" на 1209 мм.

Материал

2 опаковки от 24 19 мм х 38 мм х 2400 мм нарязан дървен материал от B&Q (както се препоръчва на сайта buildwithhubs) са достатъчни за един купол. Това работи достатъчно добре, но ако го правех отново, щях да получа нещо, което има повече странична сила.

Процес

Подпорите бяха нарязани на дължина с помощта на цилиндър и след това ги боядисах, като ги поставих плоско върху лист за прах и ги валях. Това направи забавен timelapse!

След това ги обединих в партиди от 6 наведнъж и завинтвах частите на съединителя в краищата.

Стъпка 3: Изградете купола

След като се направят подпорите, изграждането на купола е супер лесно. Няма да говоря подробно за процеса, тъй като има инструкции на сайта buildwithhubs и те също предоставят брошура.

Стъпка 4: Вдигнете го

Планирайте как трябва да изглеждат светодиодите
Планирайте как трябва да изглеждат светодиодите

Не исках LED панелите да са точно до пода, тъй като това би означавало, че много от тях ще бъдат блокирани от хора в купола. Исках също да направя купола по -висок, така че да се чувства по -просторен и приветлив.

Крака

Направих крака с височина 50 см от 2x4s и завинтвам същите съединители в тях като подпорите.

След това, за да увелича здравината и структурната цялост на основата, използвах алуминиева плоска пръчка, за да създам X между всяка секция на крака.

Вратата

Премахнах една от хоризонталните подпори, за да направя врата, и я замених с парче шперплат на пода, за да поддържам краката на правилното разстояние.

Стъпка 5: Планирайте как трябва да изглеждат светодиодите

Софтуер

Използвах SketchUp за работата си по 3D планиране, защото е достъпен за използване безплатно в приложение в браузъра. За щастие (тъй като не съм експерт по 3D моделиране) намерих модел на геодезически купол, наличен в 3D склада, където има много модели безплатно.

Колко светодиода?

Оформлението трябваше да вземе предвид естетиката, но също така мощността и разпределението на данните. Реших да използвам 11 Fadecandys (и 11 захранвания), за да покрия 33 от триъгълниците на купола. Това би означавало, че Fadecandys (и захранванията) ще управляват по 3 триъгълника всеки и че едната страна на купола може да бъде отворена, така че хората да могат да виждат навън.

Това ми даде максимум 512 светодиода на 3 триъгълника, тъй като всеки Fadecandy може да управлява 8 ленти с до 64 всеки.

Вземане на решение за оформление

Не всички триъгълници са създадени равни! Моят купол е в 2V стил, което означава, че има два вида триъгълници, равностранни и равнобедрени.

Измислих четири различни потенциални оформления за светодиодите и отидох в Instagram, за да попитам хората кое им харесва най -много. Стил 1 и стил 3 сякаш излязоха на първо място. Стил 3 ми беше любим, но концентричните триъгълници в стил 3 всъщност изискват много повече LED лента, отколкото раираното оформление, затова реших за стил 1. Това означава, че има 8 равностранени триъгълника с LED оформление с концентричен триъгълник и 25 равнобедрени триъгълника с райета оформление.

Тъй като равностранните триъгълници са по -големи и съдържат концентричното оформление, те използват много повече светодиоди всеки от равнобедрените триъгълници. Следователно трябваше да разделя равностранените страни във Fadecandys.

8 от Fadecandys контролират по 1 равностранен и по 2 равнобедрени триъгълника. 3 от Fadecandys контролират по 3 равнобедрени триъгълника.

Стъпка 6: Повече за LED оформлението

Повече за LED оформлението
Повече за LED оформлението
Повече за LED оформлението
Повече за LED оформлението

С решението на общото оформление трябваше да изчисля точно колко светодиоди ще поставя на всеки панел. Направих това, използвайки комбинация от електронна таблица, за да разработя най-добрия начин за максимално увеличаване на възможностите на Fadecandy и да мащабира чертежи в Illustrator, за да видя как ще изглежда оформлението.

Максимизиране на възможностите на Fadecandy: линии и ленти

Споменах по -рано, че всеки Fadecandy може да управлява до 8 ленти с по 64 пиксела всяка. Моите триъгълници съдържат много линии с различна дължина на пиксели, някои редове само с много малко пиксели.

Ако трябваше да третирам всяка една от тези линии като ивица, щях да загубя МНОГО от способностите на Fadecandy.

И обратно, ако исках напълно да изкарам максимално възможностите на Fadecandy и да имам 64 светодиода на всяка лента, ще трябва да имам някои ленти, които започнаха в средата на ред и това ще бъде объркващо за картографиране по -късно.

Трябваше да разбера как най -добре да свържа линиите в ленти, за да увелича максимално възможностите на лентата, без да разделям линиите.

В края…

Едностранните панели имат четири ленти, съставени от:

  • 30, 30 (общо 60 - червено на приложеното изображение)
  • 30, 22 (общо 52 - оранжево на приложеното изображение)
  • 22, 22, 14 (общо 58 - жълто на приложеното изображение)
  • 14, 14, 6, 6, 6 (общо 46 - зелено на приложеното изображение)

Равнобедрените панели имат две ленти, съставени от:

  • 23, 28 (общо 51 - синьо на приложеното изображение)
  • 3, 7, 11, 15, 19 (общо 55 - лилаво на приложеното изображение)

Стъпка 7: Поставете Fadecandys и захранванията

Поставете Fadecandys и захранвания
Поставете Fadecandys и захранвания

Това изображение показва сплескан изглед на повърхността на купола.

LED панелите

Всеки панел с триъгълник е обозначен с номер 1-11, което се отнася до Fadecandy, който го контролира. Всеки Fadecandy има три триъгълника, така че триъгълниците също имат буква A-C.

Други елементи

Зелените кутии показват местоположението на Fadecandys. Всеки Fadecandy е монтиран на малък панел, който също разпределя мощността, ще го покажа подробно след няколко стъпки.

Лилавите кутии показват USB хъбовете. Fadecandys са свързани към работния плот на Windows чрез тези хъбове.

Сините кутии показват местоположението на захранващите устройства, които се намират в 3 сухи кутии, на пода около купола.

Само за да стане малко по -сложно

Ако сравните местоположението на FC10 и FC11, ще забележите, че FC10 е най -близо до най -дългата линия на своите равнобедрени панели, докато FC11 е най -близо до най -късата линия.

Също така, ако погледнете 10C, ще видите, че Fadecandy е вдясно от него, докато 10A е вляво.

Трябваше да взема предвид тези вариации, когато обмислям колко кабел е необходима всяка LED лента в началото и когато ги картографирам.

Стъпка 8: Превръщане на линиите в ленти

Превръщане на линиите в ленти
Превръщане на линиите в ленти

Тази електронна таблица трябваше да разбере колко кабел е необходим за преминаване в началото на всяка секция от LED лента.

Колко кабел е необходим?

Някои редове са обозначени като "jst", което означава, че те са началото на лентата и просто се нуждаят от JST конектор.

Някои ленти имат "jst" и дължина, което означава, че лентата започва на известно разстояние от Fadecandy (както видяхме в оформлението в предишната стъпка) и се нуждае от тази дължина на кабела, за да я достигне, преди да добави JST конектора.

Някои ленти имат просто дължина, което означава, че те трябва да бъдат свързани към участъка на лентата преди тях с тази дължина на кабела.

Стъпка 9: Подготовка на LED лентата

Подготовка на LED лентата
Подготовка на LED лентата
Подготовка на LED лентата
Подготовка на LED лентата

LED лентата

Използвам LED лента в стил ws2812b, която има три входа, 5V захранване, заземяване и данни. Използването на 3-пинови женски JST конектори ми позволява да се свържа към всеки от тези пинове поотделно. Мъжките двойници на JST конекторите ще доставят захранване и данни.

Запояване

Използвайки електронната си таблица от предишната стъпка, изрязах цялата LED лента на необходимите дължини, запоена върху необходимите дължини на кабела и JST конекторите. Също така поставям кондензатор в началото на всяка лента, това е за да се избегнат всякакви пикове в първоначалния ток от разрушаване на първия пиксел в лентата. (Това ми се е случвало и преди в предишни проекти, където не съм добавял кондензатора, така че определено си заслужава да се направи.)

Запечатване

Добавих малко RTV силикон към откритата част на лентата, покрих я с прозрачно термосвиване и я взривих с термопистолет, за да запечата отново водоустойчивостта.

Стъпка 10: Направете панелите

Направете панелите
Направете панелите

Материал

Реших да използвам 4 мм тополов шперплат за направата на панелите. Поддържах го тънък, за да намаля теглото. Изработих общото тегло на шперплата и се свързах с изграждане с концентратори, за да проверя дали съм в рамките на допустимите килограми за окачване на неща от куполната конструкция. Тъй като теглото е разпределено равномерно по купола, това е добре. Бих искал да използвам акрил, но за съжаление за мен това беше извън бюджета за този проект.

Приставка за LED лента

Не исках да залепя LED лентата директно към панелите, тъй като бих искал да мога да заменя части от дефектна лента и потенциално да използвам отново цялата лента в даден момент, затова реших да направя дупки в панелите, които да използвам кабелни връзки. Точките на приложеното изображение показват разположението на отворите за кабелни връзки.

Изрязване на панелите

Общо има 33 триъгълника и те се вписват в 9 листа от шперплат 2440 x 1220 мм чрез оформлението, което виждате в прикаченото изображение.

В един идеален свят щях да пусна всеки от 9 -те листа слоя директно в лазерен нож и да изрежа триъгълниците и отворите за кабелни връзки едновременно. За съжаление живеем в свят, в който лазерните ножове с размери 2440 x 1220 мм са рядкост, така че триъгълниците трябваше да бъдат изрязани с помощта на резачка.

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

Нарисувах и задната част на триъгълниците, повечето от тях черни, а след това шест случайни сребърни.

Стъпка 11: Свържете кабелната LED лента към панелите

Свържете LED лентата с кабел към панелите
Свържете LED лентата с кабел към панелите
Свържете кабелната LED лента към панелите
Свържете кабелната LED лента към панелите

Това беше много свързване на кабели! За щастие имах приятели, които да помогнат.

Етикети за кабели

Обозначих всеки JST конектор с цветно кодиран кабелен етикет, за да улесня, когато става въпрос за включването му в неговия Fadecandy. Те са подредени в дъга, така че за всеки Fadecandy има:

  • Лента 1- Червена
  • Лента 2 - Оранжева
  • Лента 3 - Жълта
  • Лента 4 - зелена
  • Лента 5 - Синя
  • Лента 6 - лилава
  • Лента 7 - Сива
  • Лента 8 - Бяла

Не е точно дъга, но това са цветовете, в които са попаднали етикетите и работи!

(Някои от Fadecandys, тези, които управляват само 3 равнобедрени панели, а не 1 равностранен и 2 равнобедрени, използват само 6 ленти.)

Стъпка 12: Закачете панелите в купола

Закачете панелите в купола
Закачете панелите в купола
Закачете панелите в купола
Закачете панелите в купола
Закачете панелите в купола
Закачете панелите в купола

Моите триъгълни панели са малко по -малки от пролуката между подпорите, исках те да висят свободно в пространството, вместо да ги прикрепя здраво към подпорите.

Метод на закачане

Всеки възел на купола има очен болт - те не са стандартни, но Buildwithhubs ги продава в пакет. Тези болтове са идеални за окачване на неща (въпреки че внимавайте да не окачите твърде много тегло на един възел).

Реших да използвам паракорд и малки щипки за карабинер. Кабелът се прекарва през два отвора във всеки ъгъл на панела. Карабинът захваща кабела към болта. За да затегнете кабела и да се уверите, че панелът е правилно позициониран в пространството, добавих и пластмасов превключвател към всеки от тях. Това означава, че те могат лесно да бъдат прикрепени, докато са хлабави, и след това да се затегнат, за да ги поставят в центъра на пространството.

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

Стъпка 13: Направете панели за разпределение на захранване и данни

Направете панели за разпределение на захранване и данни
Направете панели за разпределение на захранване и данни
Направете панели за разпределение на захранване и данни
Направете панели за разпределение на захранване и данни

И така, запояваме много JST конектори към множество LED ленти, но в какво се включват те?

Всяка лента трябва да се свърже към захранване, земя и данни от Fadecandy. Има 11 свързващи панела, които държат 11 -те Fadecandys и разпределят захранването от 11 -те захранвания. Лазерно изрязах тези панели от останалия слой от 4 мм топола. Отстрани има прорези за парчета велкро, които прикрепят панелите спретнато към подпорите на купола.

Мощност

Всеки светодиод използва 0,06A при пълна яркост. Това означава, че общата мощност, необходима за работа на 4378 пиксела при пълна мощност, е ~ 1.3kW.

Имам обаче по същество 11 напълно отделни захранващи вериги. (Те са свързани само чрез -ve чрез Fadecandy. Не свързвайте +ve на отделни захранвания, тъй като това е опасно.) Всяка верига захранва само максимум 428 пиксела, общо 128 W, така че токът е при много по -безопасно ниво.

Моите захранващи устройства са в състояние да осигурят 150W всеки (30A при 5V).

На панела за свързване захранването и масата се подават от захранването в долната част, след това се свързват към wago конектори, които го разпределят по 8 мъжки JST конектора.

Данни

Fadecandy е прикрепен отляво на панела, а USB кабелът влиза отдолу същото като захранващите кабели.

Кабелът за данни на съединителя JST е запоен към лента от женски щифтове с единична заглавка, която се включва в щифтовете на Fadecandy. Един от заземяващите щифтове на Fadecandy е свързан към земната верига. (Всички заземяващи щифтове са свързани помежду си, така че не е необходимо да ги свързвате всички)

Стъпка 14: Покритие от плат

Покритие от плат
Покритие от плат
Покритие от плат
Покритие от плат
Покритие от плат
Покритие от плат

Зашиването на покритието от плат бе неочаквано една от най -трудните и отнемащи време части на този проект. За щастие имах приятел, който да помогне!

Оформление

На сплесканата диаграма на купола можете да видите, че покритието се състои от 5 петоъгълника, които се състоят от 5 равнобедрени триъгълника всеки, плюс 8 равностранени триъгълника. Направихме корицата в този ред - първо ушихме 5 -те петоъгълника, след което ги съединихме с равностранните триъгълници.

(Черните секции на тази диаграма са отворени и непокрити.)

Измерване

Опитахме се да изчислим измерванията на триъгълниците, използвайки математика като нормалните хора, но по някаква причина тя продължаваше да излиза погрешно и да не отговаря напълно на купола, така че в крайна сметка използвахме парче поликорд през очните болтове на възлите, за да измерете размера и след това използвайте този поликордов триъгълник като шаблон. Не знам защо използването на известните измервания на подпорите+пропуските на възлите продължаваше да се обърква, 3D триъгълниците са объркващи.

Пентагони

Докато правихме равнобедрените триъгълници и ги шиехме заедно на петоъгълници, често го окачвахме на купола, за да проверим дали всичко се подрежда. Той е прикрепен към купола с помощта на малки ластици, които са пришити към точките, където се срещат триъгълниците.

Съединявайки го заедно

След като направихме петте петоъгълника, започнахме да изрязваме равностранените триъгълници, използвайки същия метод - поликорд през очните болтове. След като ушихме два от петоъгълниците заедно по този начин, разбрахме, че изобщо не се подрежда добре. Затова вместо това решихме да окачим всички петоъгълници в купола и да прикрепим към тях равностранните триъгълници. След това, след като всичко беше закрепено, го свалихме и приятелят ми го уши заедно в едно цяло парче.

Закрепването му по този начин беше много работа, голяма част от ръцете ми точно над главата ми, докато се опитвах да закача плат от външната страна на купола, докато стоя отвътре. Забавно!

Етикетиране

По пътя маркирахме парчетата с водоразтворима химикалка … тези неща са страхотни, тъй като можете да пишете директно върху тъканта и след това да я напръскате с вода и мастилото ще изчезне (понякога отнема няколко движения, но работи)

Стъпка 15: Закачване на тъканта

Image
Image

Материята е окачена в купола с еластични дължини, които са пришити във всяка точка, които се привързват към болтовете за ушите в възлите на купола.

Завързването и развързването на ластиците не е толкова бързо, колкото изрязването на панелите, така че бих искал да заместя този метод с карабинери или друг клипс в даден момент.

Стъпка 16: Прикрепване на Kinect

Етаж
Етаж

В смела проява на доверие във Вселената, в нито един момент не измервах пролуката между панелите, за да се уверя, че Kinect наистина ще се побере. (Моля, не казвайте на моите учители)

Можете да си представите моята радост, когато се монтира така.

Тази снимка показва Kinect v2, но в крайна сметка използвах Kinect v1 по причини, които ще разбера по -късно.

Той е просто прикрепен към подпората с помощта на двустранна велкро лента.

Стъпка 17: Под

Подът е направен от взаимосвързани подложки от EVA пяна, които получих от B&Q. Използвах ги за два проекта сега и е чудесно за закрито. Много е удобно да седнете.

На открито на ветровити фестивали като Burning Man, тя трябва да бъде обезопасена навсякъде, защото вятърът ще проникне точно под нея и ще повдигне всичко.

Стъпка 18: Това е изграждането е завършено … към кода

Благодаря, че се придържате към мен досега. Това е всичко, направено от физическата конструкция. Сега нека обсъдим софтуера.

Стъпка 19: Fadecandy сървър

Fadecandy сървър
Fadecandy сървър
Fadecandy сървър
Fadecandy сървър

Изтеглете софтуера

Софтуерът Fadecandy е достъпен тук.

Изтеглете целия github и го разархивирайте.

Стартирайте сървъра

Придвижете се до папката „bin“в току -що изтеглените неща от fadecandy.

Кликнете върху fcserver.exe.

Това ще зареди cmd прозорец, който показва всички свързани устройства Fadecandy. В този случай има 11.

Тествайте светодиодите

Придвижете се до https://127.0.0.1:7890/, за да видите потребителския интерфейс на сървъра Fadecandy. Това показва отново всички свързани устройства и позволява малък контрол.

Щракването върху падащото меню на тестовия модел ви позволява да настроите всички пиксели за този Fadecandy на пълна или наполовина яркост. Възможно е също така да накарате малкия зелен светодиод на самия светещ миг да мига, като щракнете върху „идентифициране“.

Стъпка 20: Конфигурирайте Fadecandy сървъра

Конфигурирайте Fadecandy сървъра
Конфигурирайте Fadecandy сървъра

В момента всички Fadecandys са заредени в произволен ред. По-рано обозначих триъгълниците си с 1-11, но няма начин компютърът да разбере кой е кой в момента. За да направим това, трябва да създадем конфигурационен файл.

Кой е Fadecandy

Преди да можем да кажем на компютъра в какъв ред са Fadecandys, трябва сами да разберем кой е кой. Направих това, като използвах потребителския интерфейс на браузъра, за да накарам всяка секция да светне, след което отбелязах коя е тя и какъв е нейният сериен номер.

Конфигурационният файл

В конфигурационния файл изброяваме всички серийни номера, индексния пиксел, от който започват и колко пиксела те теоретично контролират. Казвам теоретично, защото ще картографирам пикселите така, сякаш има 512 на Fadecandy, въпреки че всъщност те са по -малко. Това просто го улеснява, тъй като знаем, че първият пиксел на всеки Fadecandy винаги е [номер на Fadecandy * 512].

Fadecandy не се интересува, че всъщност всеки от тях има по -малко пиксели от максималния, и ние също ще се погрижим за това в кода за обработка.

Зареждане на конфигурационния файл

Сега, за да стартираме Fadecandy сървъра, вместо просто да щракнем върху fcserver.exe, трябва да му предадем този конфигурационен файл.

Правим това, като отворим cmd подкана в папката bin и напишем

fcserver config.json

Това сега ще зареди всички Fadecandys в правилните адреси.

Стъпка 21: Картиране на пикселите

Image
Image
Интеграция с Kinect
Интеграция с Kinect

Dymaxion картографиране

Бъкминстър Фулър (който популяризира геодезическите куполи) също създаде картата на димаксион, която представлява изображение на Земята, сякаш е на повърхността на икосаедър. Тя може да бъде сгъната за 3D или сплескана за 2D.

По същия начин изравнявам повърхността на моя купол от неговата 3D форма до 2D представяне, както е показано на приложеното изображение. Това 2D представяне ще бъде картографирано в платно за обработка, където всичко, което нарисувам върху платното, веднага се показва през светодиодите.

Обработка

Обработката е език за визуално програмиране. Точно както бихте нарисували правоъгълник във Photoshop с помощта на мишката, можете да нарисувате правоъгълник в Processing, като напишете код по следния начин:

правоъгълник (100, 80, 10, 50);

Това ще ви даде правоъгълник, започващ от 100 px, 80 px надолу, 10 px широк и 50 px висок.

Ако не сте запознати с Processing, силно препоръчвам уроците на Daniel Shiffman в Youtube, които са колкото забавни, толкова и информативни.

Чертежни линии на светодиоди

Обработката работи с Fadecandy извън кутията. Има функция за определяне на светодиоди в редове, като го кажете:

  • началния индекс / адрес на светодиодите в този ред
  • действителния брой пиксели в реда
  • x, y местоположението на центъра на линията
  • разстоянието между тях
  • ъгълът на линията

Рисуване на триъгълници

Написах функция за всеки от моите типове триъгълници (равнобедрени и равнобедрени). Казвам го:

  • началния индекс / адрес на светодиодите в целия този триъгълник
  • центъра на триъгълника
  • ъгълът, под който е целият триъгълник

От тази информация той изписва линиите на светодиодите, използвайки тригонометрия, за да ги постави правилно върху платното за обработка.

(Може би си спомняте много крачки назад, посочих, че поради местоположението на Fadecandys, някои равнобедрени триъгълници започват от най -дългата ивица, а някои от най -късата, а някои влизат отляво, а други отдясно. Това означава, че аз всъщност имат четири функции за равнобедрени триъгълници)

Относно адресите

Когато казвам индекс / адрес, имам предвид как Fadecandy адресира светодиодите.

напр.

  • На първия Fadecandy първата лента започва от 0
  • На първата Fadecandy втората лента започва от 64 (без значение колко пиксела всъщност има на първата лента)

На първия Fadecandy третата лента започва от 128 (без значение колко пиксела всъщност има на първите две ленти)

  • На втория Fadecandy първата лента започва от 512 (без значение колко пиксела всъщност има в първия Fadecandy
  • На втория Fadecandy, втората лента започва от 576 (… схващате идеята)

Код

„Празна“версия на моя купол код е достъпна на github тук.

Този код съдържа картографирането, описано по -горе, но няма графики освен окръжност, нарисувана там, където е мишката.

n.b Пикселите ще се изобразяват само в този код, ако имате работещ сървър Fadecandy.

Стъпка 22: Интеграция с Kinect

Kinect 1 или 2?

Има две версии на Kinect. Kinect v1 работи с Xbox 360, докато Kinect v2 работи с Xbox One (объркващо).

Използвам Kinect v1. Част от причината за това е, че е много трудно да се удължи дължината на USB кабела на Kinect v2 поради количеството данни, които се изпращат. Това изисква скъп и труден за намиране удължителен кабел. Тъй като моят Kinect е монтиран в горната част на купола, не мога да свържа Kinect v2 директно към работния плот на пода. Смешен проблем, който трябва да имаме, но ето ни.

Някои от снимките и видеото ми показват Kinect v2, това е така, защото първоначално имах настройка, при която бях свързвал Kinect v2 към кабел за лаптоп, свързан наполовина нагоре по купола, който изпращаше информация през OSC към работния плот, който контролира светодиодите. Това работи добре за някои приложения, но след като исках да използвам цялата емисия на дълбочина, не можех да го изпратя по целия OSC, така че замених с Kinect v1.

Инсталация

Няма да говоря чрез инсталиране на SDK и получаване на правилните кабели за Kinect, тъй като има много ръководства как да направите това. Имам инсталиран SDK v1.8 и вътре в Processing използвам библиотеката OpenKinect.

Стъпка 23: Проследяване на дълбочината на Kinect

Код

Моят код е достъпен на github тук. Това е доста добре коментирано, така че разгледайте!

Това е преглед на това, което прави кодът:

Подаването на камерата за дълбочина на Kinect се картографира в цвят (например далеч = червено, близо = зелено) и се показва директно над светодиодите. Но има нещо повече от това.

Първо, цветът на всеки пиксел в канала за дълбочина се разпръсква напред -назад около действителния му оттенък, за да добави блестящ ефект.

Второ, когато стартирате скицата, щракването с мишката ще отчете фоновото четене, след което ще се покажат само пиксели, които са по -близо от това четене на фона. Това спира пода/всички възглавници/структурата на купола да не се показва.

Има и функция за нулиране на фона при четене на всеки x кадър, така че ако хората вътре в купола лежат неподвижно, те няма да се покажат. Това означава, че действителното движение се откроява, вместо да показва цялата глобулна маса от дълбоки глупости. (Скоро ще заменя това с лерпирана версия, така че фонът не прави такова „твърдо“нулиране, а по -скоро се развива с времето)

Има и фонова анимация, която показва групи от цветни петна, количеството на клъстерите е обратно нанесено на количеството действие, което се случва в купола, така че ако никой не присъства или те са неподвижни, има много анимация. След това постепенно изчезва, тъй като вътре се случва повече движение.

Стъпка 24: Куполът е готов

Image
Image
Dome Готово!
Dome Готово!
Dome Готово!
Dome Готово!

Надявам се, че сте научили нещо и сте намерили това интересно. Вижте пълния видеоклип, който има куп кадри от работещия купол.

Тук също съм включил за забавление няколко снимки с дълга експозиция, които направих от When in Dome. Наслади се!

Направи го Glow Contest 2018
Направи го Glow Contest 2018
Направи го Glow Contest 2018
Направи го Glow Contest 2018

Първа награда в конкурса Make it Glow 2018

Препоръчано: