Mündəricat:

Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Dome: 24 Addım (Şəkillərlə)
Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Dome: 24 Addım (Şəkillərlə)

Video: Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Dome: 24 Addım (Şəkillərlə)

Video: Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Dome: 24 Addım (Şəkillərlə)
Video: Fadecandy tutorial: "Wavefronts" 2024, Noyabr
Anonim
Image
Image
Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Günbəz
Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Günbəz
Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Günbəz
Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Günbəz
Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Günbəz
Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Günbəz

Qübbədə olduğu zaman 4378 LED ilə örtülmüş 4.2 metrlik geodezik qübbə var. LED -lərin hər biri ayrı -ayrılıqda xəritələnir və ünvanlanır. Windows masaüstündeki Fadecandy və Processing tərəfindən idarə olunur. Günbəzin dayaqlarından birinə Kinect bağlanır, buna görə də günbəzin içindəki hərəkət izlənilə bilər və insanlar işıqlarla qarşılıqlı əlaqə qura bilər.

Niyə

Paylaşılan qarşılıqlı əlaqə vasitəsi ilə qrup təcrübəsini araşdırıram. Çox adamın eyni anda istifadə edə biləcəyi interfeyslər yaratmağı xoşlayıram. Günbəzin LED səthi çox istifadəçi interfeysi üçün uyğun bir çıxış təmin edir, çünki çox böyükdür, buna görə də çox adam görə bilər. Günbəz eyni zamanda insanları bir -birinə tərəf dönməyə təşviq edən rahat, sferik bir məkan yaradır. Kinect çox istifadəçi girişi kimi əla işləyir, çünki insanlar eyni anda hərəkət edə və dərinlik sahəsinə təsir edə bilərlər, yeganə məhdudiyyət nə qədər insanın birlikdə məkana sığa biləcəyidir.

Fərqli giriş metodlarının hansı təsirə malik olduğunu və fərqli insan qrupları üçün nəyin yaxşı işlədiyini görmək üçün davamlı olaraq Dome -də olanda yeni qarşılıqlı əlaqə metodları hazırlayıram. Qübbənin içindəki dostlar və qəriblər arasındakı əlaqəni hansı interfeyslərin təşviq etdiyini və paylaşılan təcrübənin mənalı və dəyərli hiss etdiyini görmək xüsusilə maraqlıdır.

Harada

When The Dome -ı İnteraktiv Memarlıq Laboratoriyasında, The Bartlett, UCL -də Performans və Qarşılıqlı Əlaqə Dizaynı olan magistr dərəcəmin son layihəsi olaraq dizayn etdim və qurdum.

Necə

İstifadə olunan bəzi texnologiyalar və vasitələr:

  • Fadecandy
  • İşlənilir
  • Kinect (eBay -dan aldım)
  • Miter gördü
  • Track mişar
  • Tikiş maşını
  • Lehimleme dəmir
  • İstilik silahı
  • İsti yapışqan silahı
  • Lazer kəsici
  • Qazma

İstifadə olunan bəzi avadanlıqlar:

  • Buildwithhubs hub dəsti
  • Günbəz dayaqları üçün işlənmiş taxta
  • 4 mm qovaq kontrplak
  • Ağ diffuziya parça
  • Qara parça
  • Alüminium düz çubuq
  • Wago bağlayıcıları
  • 12awg və 24awg kabel
  • 5V 30A enerji təchizatı
  • Köpük döşəmə
  • Jst bağlayıcıları
  • Kondansatörler

Gedək

Danışacağım bu layihənin bir çox komponenti var, ümid edirəm içərisində faydalı və maraqlı bir şey tapacaqsınız!

Addım 1: Günbəz

Qübbə
Qübbə
Qübbə
Qübbə

Hub dəsti

Günbəzimi buildwithhubs dəsti ilə tikməyə qərar verdim və mütləq tövsiyə edərdim.

Bağlayıcı dəstləri satır və dayaqlar üçün hansı materialların alınacağı barədə məsləhətlər verirlər. Qübbələrinin çoxu insanların öz bağlarında istifadə olunur, mənimki isə ictimaiyyətdə olacaq, buna görə də kimsə günbəzə söykənərsə dirəklərin çıxmasını maneə törədən əlavə etibarlı qapaqlar dəsti aldım.

Ölçü

Günbəzimin diametri 4.2 m -dir. Günbəzi meydana gətirən üçbucaqların ən uzun tərəfinin 1,2 m olacağını və LED -ləri tutmaq üçün panellər düzəltməyə gəldiyim zaman kontrplak təbəqələrə yaxşı uyğunlaşdığını ifadə etdiyi üçün bu ölçünü seçdim.

Addım 2: Struts edin

Image
Image

Uzunluqlar

4.2 metrlik bir günbəz düzəltmək üçün lazım olan uzunluqları hesablamaq üçün buildwithhubs -un dayaq kalkulyatorundan istifadə etdim. 1059 mm -də 30 "şort" və 1209 mm -də 35 "uzunluq".

Material

B&Q -dən 24 ədəd 19 mm x 38 mm x 2400 mm ölçüdə kəsilmiş 2 ədəd paket (buildwithhubs saytında tövsiyə edildiyi kimi) bir günbəz üçün kifayətdir. Bu kifayət qədər yaxşı işləyir, amma bunu təkrar etsəydim, daha çox yan gücü olan bir şey alardım.

Proses

Struts uzunluqlu bir mişar maşını istifadə edərək kəsildi və sonra hamısını toz lövhəsinə düzüb üstünə yuvarlayaraq boyadım. Bu əyləncəli bir timelapse etdi!

Sonra onları bir anda 6 dəstəyə yığdım və bağlayıcı parçalarını uclarına vidaladım.

Addım 3: Qübbə qurun

Struts düzəldildikdən sonra günbəz tikmək çox asandır. Buildwithhubs saytında təlimatlar olduğu üçün bu prosesi ətraflı müzakirə etməyəcəyəm və onlar da bir kitabça təqdim edirlər.

Addım 4: Yüksəldin

LED -lərin necə görünməsini planlaşdırın
LED -lərin necə görünməsini planlaşdırın

LED panellərinin zəminin yanında olmasını istəmirdim, çünki bu, bir çoxunun günbəzdəki insanlar tərəfindən bloklanacağını bildirir. Günbəzi daha geniş etmək istədim ki, daha geniş və qonaqpərvər olsun.

Ayaqlar

2x4s -dən 50 sm uzunluğunda ayaqları düzəltdim və dayaqları ilə eyni bağlayıcıları vidaladım.

Sonra, bazanın gücünü və struktur bütövlüyünü artırmaq üçün alüminium yastı çubuqdan istifadə edərək hər ayaq hissəsi arasında X işarələri yaratdım.

Qapı

Qapı düzəltmək üçün üfüqi dayaqlardan birini sökdüm və ayaqları düzgün aralıqda saxlamaq üçün yerə bir kontrplak parçası qoydum.

Addım 5: LED -lərin necə görünməsini planlaşdırın

Proqram təminatı

SketchUp-u 3D planlaşdırma işim üçün istifadə etdim, çünki brauzer daxilində pulsuz istifadə edilə bilər. Xoşbəxtlikdən (3D modelləşdirmə mütəxəssisi olmadığım üçün), pulsuz yüklənən modellərin olduğu 3D anbarında mövcud olan bir geodezik günbəz modeli tapdım.

Neçə LED var?

Layihə estetikanı deyil, güc və məlumat paylamasını da nəzərə almalı idi. Günbəzin üçbucaqlarından 33 -ü əhatə etmək üçün 11 Fadecandys (və 11 enerji təchizatı) istifadə etmək qərarına gəldim. Bu, Fadecandys (və enerji təchizatı) hər birinin 3 üçbucağı idarə edəcəyi və günbəzin bir tərəfinin açıq ola biləcəyi, insanların kənardan baxa biləcəyi mənasına gəlir.

Bu mənə hər üç üçbucaq üçün maksimum 512 LED verdi, çünki hər bir Fadecandy hər biri 64 -ə qədər olan 8 şeridi idarə edə bilər.

Bir plana qərar vermə

Bütün üçbucaqlar bərabər yaradılmır! Günbəzim 2V üslubundadır, yəni iki tərəfli üçbucaqlı, bərabər tərəfli və isoscelesdir.

LEDlər üçün dörd fərqli potensial plan hazırladım və insanlardan ən çox bəyəndiklərini soruşmaq üçün İnstagram -a girdim. Stil 1 və üslub 3 üstə çıxdı. Style 3 mənim ən sevdiyim idi, amma üslub 3 -dəki konsentrik üçbucaqlar əslində zolaqlı layoutdan çox daha çox LED şeridi tələb edir, buna görə də üslub 1 -ə qərar verdim. Bu o deməkdir ki, konsentrik üçbucaqlı LED düzülüşlü 8 bərabər tərəfli üçbucaq və zolaqlı LED ilə 25 bərabərbucaqlı üçbucaq var layout.

Bərabər üçbucaqlar daha böyük olduğundan və konsentrik plana malik olduqları üçün, hər tərəfli üçbucaqlardan daha çox LED istifadə edirlər. Buna görə Fadecandys boyunca bərabər tərəfləri bölmək məcburiyyətində qaldım.

Fadecandys -dən 8 -i hər biri 1 bərabər tərəfli və 2 bərabərbucaqlı üçbucağı idarə edir.3 Fadecandys -in hər biri 3 bərabər yan üçbucağı idarə edir.

Addım 6: LED Layout haqqında daha çox məlumat

LED Layout haqqında daha çox məlumat
LED Layout haqqında daha çox məlumat
LED Layout haqqında daha çox məlumat
LED Layout haqqında daha çox məlumat

Ümumi sxem qərar verildikdə, hər bir paneldə nə qədər LED yerləşdirəcəyimi dəqiqləşdirməliydim. Bunu, Fadecandy-nin imkanlarını maksimum dərəcədə artırmağın ən yaxşı yolunu və Illustrator-dakı miqyaslı təsvirləri hazırlamaq üçün bir elektron cədvəlin birləşməsindən istifadə edərək etdim, beləliklə nizamın necə görünəcəyini görə bildim.

Fadecandy qabiliyyətini maksimuma çatdırmaq: Xəttlər və Zolaqlar

Daha əvvəl qeyd etdim ki, hər bir Fadecandy hər biri 64 piksel olan 8 zolağa qədər idarə edə bilər. Üçbucaqlarımda müxtəlif piksel uzunluğunda bir çox xətt var, yalnız çox az piksel olan bəzi xətlər.

Bu sətirlərin hər birinə bir şerit kimi baxsaydım, bir çox Fadecandy qabiliyyətini itirmiş olardım.

Əksinə, Fadecandy -nin qabiliyyətini maksimum dərəcədə artırmaq və hər bir şeriddə 64 LED -ə sahib olmaq istəsəydim, bir xəttin ortasında başlayan və daha sonra xəritələşdirməkdə çaşqınlıq yaradacaq bəzi zolaqlara sahib olmalıyam.

Xətləri parçalamadan mümkün qədər zolaq qabiliyyətini maksimum dərəcədə artırmaq üçün xətləri zolaqlara necə birləşdirməyin ən yaxşı olduğunu anlamalı idim.

Sonda…

Bərabər panellər dörd zolağa malikdir:

  • 30, 30 (cəmi 60 - əlavə olunmuş şəkildəki qırmızı)
  • 30, 22 (52 cəmi - əlavə şəkildəki narıncı)
  • 22, 22, 14 (58 cəmi - əlavə olunmuş şəkildəki sarı)
  • 14, 14, 6, 6, 6 (46 cəmi - əlavə şəkildəki yaşıl)

Isosceles panelləri iki zolağa malikdir:

  • 23, 28 (51 cəmi - əlavə olunmuş şəkildəki mavi)
  • 3, 7, 11, 15, 19 (55 cəmi - əlavə olunmuş şəkildəki bənövşəyi)

Addım 7: Fadecandys və Güc Təchizatlarını düzün

Fadecandys və Güc Təchizatlarını yerləşdirin
Fadecandys və Güc Təchizatlarını yerləşdirin

Bu görüntü günbəzin səthinin yastı bir görünüşünü göstərir.

LED panelləri

Hər üçbucaq paneli, onu idarə edən Fadecandy-ə aid olan 1-11 rəqəmi ilə etiketlənmişdir. Hər bir Fadecandy üç üçbucağa malikdir, buna görə də üçbucaqlarda A-C hərfi də var.

Digər elementlər

Yaşıl qutular Fadecandys -in yerini göstərir. Hər bir Fadecandy, gücün paylandığı kiçik bir panelə quraşdırılmışdır, bunu bir neçə addımdan sonra ətraflı göstərəcəyəm.

Bənövşəyi qutular USB hublarını göstərir. Fadecandys, bu qovşaqlar vasitəsilə Windows masaüstünə bağlıdır.

Mavi qutular, qübbənin ətrafındakı zəmində, 3 quru qutuda oturan enerji təchizatlarının yerini göstərir.

Sadəcə bir az daha mürəkkəb etmək üçün

FC10 və FC11 -in yerini müqayisə etsəniz, FC10 -un iki tərəfli panellərinin ən uzun xəttinə ən yaxın olduğunu, FC11 -in isə ən qısa xəttə ən yaxın olduğunu görəcəksiniz.

Ayrıca, 10C -ə baxsanız, Fadecandy -nin sağda, 10A isə solda olduğunu görəcəksiniz.

Başlanğıcda hər bir led şeridin nə qədər kabelə ehtiyacı olduğunu və xəritələşdirərkən bu dəyişiklikləri nəzərə almalı oldum.

Addım 8: Xətləri zolaqlara çevirmək

Xətləri zolaqlara çevirmək
Xətləri zolaqlara çevirmək

Bu cədvəl, LED şeridinin hər hissəsinin əvvəlində nə qədər kabelin getməsi lazım olduğunu anlamaq idi.

Nə qədər kabel lazımdır?

Bəzi xətlər "jst" olaraq etiketlənir, yəni zolağın başlanğıcıdır və sadəcə JST konnektoruna ehtiyac var.

Bəzi zolaqlar "jst" və uzunluğa malikdir, bu da şeridin Fadecandy -dən bir qədər aralıda başladığını göstərir (əvvəlki addımda layoutda gördüyümüz kimi) və JST konnektoru əlavə etməzdən əvvəl ona çatmaq üçün bu uzunluqdakı kabelə ehtiyac var.

Bəzi zolaqlar sadəcə uzunluğa malikdir, bu da o uzunluqdakı kabellə onlardan əvvəl zolaq hissəsinə bağlanması lazımdır.

Addım 9: LED şeridinin hazırlanması

LED şeridinin hazırlanması
LED şeridinin hazırlanması
LED şeridinin hazırlanması
LED şeridinin hazırlanması

LED şeridi

Üç giriş, 5V güc, torpaq və məlumat olan ws2812b üslublu LED şeridi istifadə edirəm. 3 pinli qadın JST bağlayıcılarından istifadə edərək, bu pinlərin hər birinə ayrı-ayrılıqda qoşulmağımı təmin edir. JST konnektorlarının kişi həmkarları güc və məlumatı təmin edəcək.

Lehimləmə

Əvvəlki addımdakı elektron cədvəlimi istifadə edərək, bütün LED şeridini lazımi uzunluqdakı kabellərə və JST bağlayıcılarına lehimlə kəsdim. Hər zolağın əvvəlinə bir kondansatör qoydum, bu, ilk cərəyandakı hər hansı bir zirvənin zolağın ilk pikselini pozmaması üçündür. (Kondansatör əlavə etmədiyim əvvəlki layihələrdə bundan əvvəl də belə olmuşdu, buna görə də bunu etməyə dəyər.)

Sızdırmazlıq

Şeridin açıq hissəsinə bir az RTV silikon əlavə etdim, təmiz bir istilik büzüşüylə örtdüm və suya davamlılığı yenidən bağlamaq üçün bir istilik tabancası ilə partladım.

Addım 10: Panellər düzəldin

Panelləri düzəldin
Panelləri düzəldin

Material

Panelləri hazırlamaq üçün 4 mm qovaq kontrplakdan istifadə etmək qərarına gəldim. Arıqlamaq üçün nazik saxladım. Kontrplakın ümumi çəkisini hazırladım və günbəz quruluşundan əşyalar asmaq üçün çəki ehtiyatları daxilində olub -olmadığımı yoxlamaq üçün buildwithhubs ilə əlaqə saxladım. Ağırlıq günbəz boyunca kifayət qədər bərabər paylandığı üçün yaxşıdır. Akrilik istifadə etmək istərdim, amma təəssüf ki, bu layihə mənim üçün büdcədən kənar idi.

LED şerit əlavə

LED şeridini birbaşa panellərə yapışdırmaq istəmədim, çünki xətalı zolaqların hissələrini əvəz edə bilərəm və bir anda bütün şeridi yenidən istifadə edə bilərəm, buna görə panellərdə deşiklər açmağa qərar verdim. kabel bağları. Əlavə edilmiş şəkildəki nöqtələr, kabel bağlama deliklərinin planını göstərir.

Panellərin kəsilməsi

Ümumilikdə 33 üçbucaq var və mən onları əlavə edilmiş şəkildə gördüyünüz tərz vasitəsilə 2440 x 1220 mm kontrplakdan ibarət 9 təbəqəyə sığdırıram.

İdeal bir dünyada, 9 təbəqənin hər birini birbaşa lazer kəsiciyə atıb üçbucaqları və kabel bağlama deliklərini eyni anda kəsərdim. Təəssüf ki, 2440 x 1220 mm lazer kəsicilərin nadir olduğu bir dünyada yaşayırıq, buna görə də üçbucaqları bir mişar maşını ilə kəsmək lazım idi.

Kədərli olsa da, üçbucaqlı panellərimdən bir dənəsinin belə məktəbdəki lazer kəsiciyə sığacağı bir dünyada yaşamırıq, buna görə də üçbucaqlı dizaynların hər birinin yarısından ibarət şablonu lazerlə kəsib istifadə etməliyəm. delikləri əllə qazmaq.

Üçbucaqların arxasını da çoxu qara, sonra altı təsadüfi gümüş rənglə boyadım.

Addım 11: LED Şeridini Kabellərə Bağlayın

LED Şeridini Kabellərə Bağlayın
LED Şeridini Kabellərə Bağlayın
LED Şeridini Kabellərə Bağlayın
LED Şeridini Kabellərə Bağlayın

Bu çox kabel bağlaması idi! Xoşbəxtlikdən kömək edəcək dostlarım var idi.

Kabel etiketləri

Hər bir JST konnektorunu Fadecandy -yə bağlamağı asanlaşdırmaq üçün rəng kodlu bir kabel etiketi ilə etiketlədim. Göy qurşağı sifarişlidirlər, buna görə hər Fadecandy üçün var:

  • Zolaq 1- Qırmızı
  • Zolaq 2 - Narıncı
  • Zolaq 3 - Sarı
  • Zolaq 4 - Yaşıl
  • Zolaq 5 - Mavi
  • Zolaq 6 - Bənövşəyi
  • Zolaq 7 - Boz
  • Şerit 8 - Ağ

Tam bir göy qurşağı deyil, etiketlərin gəldiyi rənglərdir və işləyir!

(Fadecandys -lərdən bəziləri, 1 bərabər tərəfli və 2 ikili bərabər deyil, yalnız 3 ikiqat panel çəkənlər yalnız 6 zolaqdan istifadə edirlər.)

Addım 12: Panelləri Günbəzə asın

Panelləri Günbəzə asın
Panelləri Günbəzə asın
Panelləri Günbəzə asın
Panelləri Günbəzə asın
Panelləri Günbəzə asın
Panelləri Günbəzə asın

Üçbucaqlı panellərim dayaqlar arasındakı boşluqdan bir qədər kiçikdir, onları möhkəm bir şəkildə bağlamaqdansa kosmosda sərbəst asılmasını istəyirdim.

Asma üsulu

Günbəzin hər düyünündə bir göz boltu var - bunlar standart olaraq gəlmir, lakin Buildwithhubs onları bir paketdə satır. Bu gözlüklər əşyaları asmaq üçün idealdır (baxmayaraq ki, bir düyündən çox çəki asmamaq üçün diqqətli olun).

Paracord və kiçik karabiner kliplərindən istifadə etmək qərarına gəldim. Kabel, panelin hər küncündə iki delikdən keçir. Carabiner, kordonu göz dübelinə bağlayır. Kabeli sıxın və panelin boşluqda düzgün yerləşdirildiyindən əmin olmaq üçün hər birinə plastik keçid də əlavə etdim. Bu o deməkdir ki, boş qaldıqda asanlıqla kəsilə bilər və sonra boşluğun mərkəzinə yerləşdirmək üçün bərkidilir.

Carabiner metodunun necə ortaya çıxmasından çox məmnunam. Panelləri günbəzə yapışdırmaq çox kədərlidir, klik vurun. Onları da çıxarmaq tez və asandır.

Addım 13: Güc və Məlumat Paylama Panelləri hazırlayın

Güc və Məlumat Paylama Panelləri hazırlayın
Güc və Məlumat Paylama Panelləri hazırlayın
Güc və Məlumat Paylama Panelləri hazırlayın
Güc və Məlumat Paylama Panelləri hazırlayın

Beləliklə, bir çox JST konnektorunu bir çox LED şeridinə lehimlədik, amma nəyə qoşulurlar?

Hər bir şeridin Fadecandy -dən gücə, yerə və məlumatlara qoşulması lazımdır. 11 Fadecandys tutan və 11 enerji təchizatından enerji paylayan 11 əlaqə paneli var. Bu panelləri qalan 4 mm qovaq qatından lazerlə kəsdim. Yan tərəfdə, panelləri günbəz dayaqlarına səliqəli şəkildə bağlayan velkro parçaları üçün yuvalar var.

Güc

Hər bir LED tam parlaqlıqda 0.06A istifadə edir. Bu o deməkdir ki, 4378 pikselin tam gücü ilə işləməsi üçün lazım olan ümumi güc ~ 1.3kW təşkil edir.

Bununla birlikdə, mahiyyətcə 11 tamamilə ayrı güc dövrəm var. (Onlar yalnız Fadecandy vasitəsi ilə -ve vasitəsi ilə bağlanır. Bu təhlükəli olduğu üçün ayrı enerji mənbələrinin +velərini bağlamayın.) Hər bir dövrə yalnız maksimum 428 piksel, cəmi 128W gücündədir, buna görə də cərəyan bir daha təhlükəsiz səviyyə.

Güc mənbələrim hər biri 150W (5V -də 30A) təmin etməyə qadirdir.

Bağlantı panelində, güc və torpaq altındakı enerji təchizatından gəlir, daha sonra 8 kişi JST konnektoru arasında paylayan wago bağlayıcılarına bağlanır.

Məlumat

Fadecandy panelin soluna yapışdırılır və USB kabeli elektrik kabelləri ilə eyni şəkildə aşağıdan daxil olur.

JST konnektorunun məlumat kabeli, Fadecandy sancaqlarına daxil olan tək başlıqlı dişi sancaqlar zolağına lehimlənir. Fadecandy üzərindəki topraklama pinlərindən biri torpaq dövrəsinə bağlıdır. (Torpaq pinləri hamısı bir -birinə bağlıdır, buna görə hamısını birləşdirmək lazım deyil)

Addım 14: Kumaş örtüyü

Parça örtük
Parça örtük
Parça örtük
Parça örtük
Parça örtük
Parça örtük

Kumaş örtüyünün tikilməsi gözlənilmədən bu layihənin ən çətin və vaxt aparan hissələrindən biri idi. Xoşbəxtlikdən kömək edəcək bir dostum var idi!

Layout

Günbəzin yastı diaqramında görə bilərsiniz ki, örtük hər biri 5 bərabərbucaqlı üçbucaqdan ibarət 5 beşbucaqlıdan əlavə 8 bərabər tərəfli üçbucaqdan ibarətdir. Qapağı bu qaydada düzəltdik - əvvəlcə 5 beşbucağı bir -birinə tikdik, sonra bərabər tərəfli üçbucaqlar ilə birləşdirdik.

(Bu diaqramdakı qara hissələr açıq və açıqdır.)

Ölçmə

Normal insanlar kimi riyaziyyatdan istifadə edərək üçbucaqların ölçülərini anlamağa çalışdıq, amma nədənsə səhv çıxmağa davam etdi və günbəzə tam uyğun gəlmədi, buna görə də sonunda düyünlərin göz boltlarından bir polikord istifadə etdik. ölçüsünü ölçün və sonra bu polikord üçbucağını şablon olaraq istifadə edin. Struts+node boşluqlarının bilinən ölçülərindən istifadə edərək niyə səhv getdiyini bilmirəm, üçbucaqlı üçbucaqlar qarışıqdır.

Pentaqonlar

İki tərəfli üçbucaqlar düzəltdikdə və beşbucaqlı formada tikdikdə, hər şeyin düzülüb -biçilmədiyini yoxlamaq üçün tez -tez günbəzə asardıq. Üçbucaqların birləşdiyi nöqtələrə tikilmiş kiçik elastik parçalardan istifadə edərək günbəzə yapışdırılır.

Birlikdə birləşmək

Beş beşbucaq düzəltdikdən sonra eyni üsulla - polikorddan istifadə edərək bərabər tərəfli üçbucaqları kəsməyə başladıq. Beşbucaqlılardan ikisini bir araya gətirdikdən sonra, heç də yaxşı sıralanmadığını başa düşdük. Buna görə də, qübbədəki bütün beşbucaqları asmaq və bərabər tərəfli üçbucaqları yerlərində bağlamaq qərarına gəldik. Sonra, hər şey bərkidildikdən sonra onu götürdük və dostum onu möhkəm bir parçaya tikdi.

Bu şəkildə bağlamaq çox iş idi, çoxu qolları başımın üstündə, tez -tez günbəzin xaricindən, içərisində dayanarkən parça bağlamağa çalışarkən. Əyləncəli!

Etiketləmə

Yolda, parçaları suda həll olunan bir parça qələmlə etiketlədik … bu şeylər əladır, birbaşa kumaşa yaza bilərsiniz, sonra su ilə səpin və mürəkkəb yox olacaq (bəzən bir neçə gediş tələb olunur, amma işləyir))

Addım 15: Parçanı asmaq

Image
Image

Kumaş, hər nöqtəyə tikilmiş elastik uzunluqlarla günbəzə asılır, bunlar günbəzin düyünlərindəki göz boltlarına bağlanır.

Elastikləri bağlamaq və açmaq panelləri kəsmək qədər sürətli deyil, buna görə də bu üsulu bir anda karabiner və ya başqa bir kliplə əvəz etmək istərdim.

Addım 16: Kinectin bağlanması

Döşəmə
Döşəmə

Kainata olan inamın cəsarətli bir nümayişində, heç bir zaman Kinectin əslində uyğun olacağından əmin olmaq üçün panellər arasındakı boşluğu ölçmədim. (Xahiş edirəm müəllimlərimə deməyin)

Sevincimi belə quranda təsəvvür edə bilərsiniz.

Bu şəkil bir Kinect v2 -ni göstərir, amma sonradan əldə edəcəyim səbəblərə görə bir Kinect v1 istifadə edərək sona çatdım.

Yalnız iki tərəfli cırtdan lentdən istifadə edərək dayağa yapışdırılır.

Addım 17: Döşəmə

Döşəmə, B&Q -dən aldığım EVA köpük paspaslardan ibarətdir. Bunları indi iki layihə üçün istifadə etdim və qapalı məkanlar üçün əladır. Oturmaq çox rahatdır.

Burning Man kimi küləkli festivallarda açıq havada hər yerdən qorunmaq lazımdır, çünki külək onun altına girəcək və hər şeyi yuxarı qaldıracaq.

Addım 18: Quruluş Tamamlandı … Kodun üzərinə

Bu vaxta qədər mənimlə qaldığınız üçün təşəkkürlər. Bütün fiziki quruluş budur. İndi proqramı müzakirə edək.

Addım 19: Fadecandy Server

Fadecandy Server
Fadecandy Server
Fadecandy Server
Fadecandy Server

Proqramı yükləyin

Fadecandy proqramı burada mövcuddur.

Bütün github yükləyin və açın.

Serveri işə salın

Az əvvəl yüklədiyiniz fadecandy əşyaların içindəki 'bin' qovluğuna gedin.

Fcserver.exe üzərinə vurun.

Bu, bütün bağlı Fadecandy cihazlarını göstərən bir cmd pəncərəsini yükləyəcək. Bu vəziyyətdə 11 var.

LEDləri sınayın

Fadecandy server UI -ni görmək üçün https://127.0.0.1:7890/ ünvanına gedin. Bu, bağlı cihazların hamısını yenidən göstərir və kiçik bir nəzarətə imkan verir.

Açılan test nümunəsinə basmaq, o Fadecandy üçün bütün pikselləri tam və ya yarı parlaqlığa təyin etməyə imkan verir. Fadecandy üzərindəki kiçik yaşıl LED -in "müəyyən et" düyməsini basaraq yanıb -sönməsini təmin etmək də mümkündür.

Addım 20: Fadecandy Serverini konfiqurasiya edin

Fadecandy Serverini konfiqurasiya edin
Fadecandy Serverini konfiqurasiya edin

Hal -hazırda Fadecandys hamısı təsadüfi qaydada yüklənir. Əvvəllər üçbucaqlarımı 1-11 olaraq qeyd etdim, amma kompüterin bu anda hansının olduğunu bilməsinin bir yolu yoxdur. Bunu etmək üçün bir konfiqurasiya faylı yaratmalıyıq.

Hansı Fadecandy hansıdır

Fadecandys -in hansı sıraya sahib olduğunu kompüterə söyləməzdən əvvəl, hansının özümüz olduğunu anlamalıyıq. Bunu hər bir bölməni işıqlandırmaq üçün brauzer UI -dən istifadə edərək, hansının olduğunu və seriya nömrəsinin nə olduğunu qeyd etdim.

Konfiqurasiya faylı

Konfiqurasiya sənədində bütün seriya nömrələrini, başladıqları indeks pikselini və nəzəri olaraq neçə pikseli idarə etdiklərini sadalayırıq. Teorik olaraq deyirəm, çünki pikselləri hər Fadecandy -də 512 olduğu kimi xəritəyə salacağam, əslində daha azdır. Bu, hər hansı bir Fadecandy -nin ilk pikselinin həmişə [Fadecandy sayı * 512] olduğunu bildiyimiz üçün işi asanlaşdırır.

Fadecandy, əslində hər birinin maksimumdan daha az pikselə sahib olması ilə maraqlanmır və biz bunu Qenerasiya kodunda da həll edəcəyik.

Konfiqurasiya faylı yüklənir

İndi Fadecandy serverini işə salmaq üçün sadəcə fcserver.exe faylını tıklamaq yerinə bu konfiqurasiya faylını ona ötürməliyik.

Bunu zibil qutusunda bir cmd əmri açaraq yazaraq edirik

fcserver config.json

İndi bütün Fadecandys -ləri düzgün ünvanlara yükləyəcək.

Addım 21: Piksellərin Xəritəçəkilməsi

Image
Image
Kinect İnteqrasiyası
Kinect İnteqrasiyası

Dymaxion xəritələşdirilməsi

Buckminster Fuller (geodezik qübbələri populyarlaşdıran), sanki bir icosahedronun səthində olduğu kimi yerin təsviri olan dimaksion xəritəsini də yaratdı. 3D olaraq qatlana bilər və ya 2D olaraq düzəldilə bilər.

Eyni şəkildə, qübbəmin səthini 3D şəkildən 2D təsvirə qədər düzləşdirirəm. Bu 2D təsvir, kətan üzərində çəkdiyim hər şeyin dərhal LED -lərdə göstərildiyi bir İşləmə kətanına çevriləcək.

İşlənilir

İşləmə vizual bir proqramlaşdırma dilidir. Siçan istifadə edərək Photoshop -da necə bir düzbucaq çəkdiyiniz kimi, belə bir kod yazaraq Emalda düzbucaqlı çəkə bilərsiniz:

düz (100, 80, 10, 50);

Bu, 100 piksel, aşağı 80 piksel, eni 10 piksel və hündürlüyü 50 piksel olan bir düzbucaq verərdi.

Qenerasiya ilə tanış deyilsinizsə, Daniel Shiffmanın Youtube -da məlumatlandırıcı olduğu qədər əyləncəli olan dərslərini çox tövsiyə edirəm.

LED xətlərinin çəkilməsi

Qenerasiya Fadecandy ilə işləyir. LED -lərin xətlərə qoyulması üçün bir funksiya var:

  • o xəttdəki LED -lərin başlanğıc indeksi / ünvanı
  • xəttdəki həqiqi piksel sayı
  • xəttin mərkəzinin x, y yeri
  • aralarındakı boşluq
  • xəttin açısı

Üçbucaqların çəkilməsi

Üçbucaq növlərimin hər biri üçün bir funksiya yazdım (bərabər tərəfli və bərabərbucaqlı). Deyirəm:

  • bu üçbucaqdakı LED -lərin başlanğıc indeksi / ünvanı
  • üçbucağın mərkəzi
  • bütün üçbucağın olduğu bucaq

Bu məlumatlardan, LED -lərin xətlərini, Triqonometriyadan istifadə edərək onları Emal kətanına düzgün yerləşdirmək üçün yazır.

(Bir çox addımları xatırlaya bilərsiniz, mən qeyd etdim ki, Fadecandys -in yerləşməsi səbəbindən bəzi ikiqat üçbucaqlar ən uzun zolaqdan, bəziləri isə ən qısadan başlayır, bəziləri soldan, bəziləri isə sağdan daxil olur. Bu o deməkdir ki, mən iki tərəfli üçbucaqlar üçün əslində dörd funksiya var)

Ünvanlar haqqında

İndeks / ünvan deyəndə Fadecandy -nin LED -lərə necə müraciət etdiyini nəzərdə tuturam.

məs.

  • Birinci Fadecandy -də ilk zolaq 0 -dan başlayır
  • Birinci Fadecandy -də ikinci zolaq 64 -dən başlayır (əslində ilk zolaqda neçə piksel olmasından asılı olmayaraq)

Birinci Fadecandy -də üçüncü zolaq 128 -dən başlayır (ilk iki zolaqda əslində neçə piksel olmasından asılı olmayaraq)

  • İkinci Fadecandy -də ilk zolaq 512 -dən başlayır (əslində ilk Fadecandy -də neçə piksel olmasına baxmayaraq)
  • İkinci Fadecandy -də, ikinci zolaq 576 -dan başlayır (… fikri anlayırsınız)

Kod

Günbəz kodumun "boş" bir versiyası burada github -da mövcuddur.

Bu kod yuxarıda təsvir edilən xəritəni ehtiva edir, lakin siçanın olduğu yerdə çəkilmiş bir dairədən başqa heç bir qrafik yoxdur.

n.b Fadecandy serveriniz varsa piksellər yalnız bu kodda göstəriləcək.

Addım 22: Kinect İnteqrasiyası

Kinect 1 yoxsa 2?

Kinect -in iki versiyası var. Kinect v1 Xbox 360 ilə işləyirdi, Kinect v2 isə Xbox One ilə işləyir (çaşqınlıq yaradır).

Kinect v1 istifadə edirəm. Bunun bir səbəbi, göndərilən məlumatların miqdarı səbəbindən Kinect v2 -də USB kabelinin uzunluğunu uzatmağın çox çətin olmasıdır. Bahalı və tapılması çətin bir uzatma kabeli tələb olunur. Kinectim günbəzin üst hissəsinə quraşdırıldığından, Kinect v2 -ni zəmindəki masaüstünə birbaşa qoşa bilmirəm. Gülməli bir problem var, amma oradayıq.

Bəzi fotoşəkillərim və videolarımda Kinect v2 göstərilir, bunun səbəbi, əvvəlcə Kinect v2 -ni günbəzin yarısına qədər bağladığım bir dizüstü kompüterə bağladığım bir qurğunun olmasıdır ki, bu da OSC üzərindən məlumatları LEDləri idarə edən masaüstünə göndərir.. Bu, bəzi tətbiqlər üçün yaxşı işləyirdi, amma bir dəfə bütün dərinlik yemini istifadə etmək istədikdə onu bütün OSC -yə göndərə bilmədim və Kinect v1 -ə keçdim.

Quraşdırma

SDK -nı qurmaq və Kinect üçün doğru kabelləri əldə etməklə danışmayacağam, çünki bunun necə ediləcəyinə dair bir çox bələdçi var. SDK v1.8 quraşdırılmışam və İşləmə daxilində OpenKinect kitabxanasından istifadə edirəm.

Addım 23: Kinect Dərinlik İzləmə

Kod

Kodum github -da burada mövcuddur. Çox yaxşı şərh olundu, buna görə göz atın!

Bu kodun nə etdiyinə bir baxışdır:

Kinect dərinlik kamerası rəngi (məsələn, uzaq = qırmızı, yaxın = yaşıl) ilə müqayisə edilir və birbaşa LED -lər üzərində göstərilir. Ancaq bundan daha çox şey var.

Birincisi, dərinlikdəki hər bir pikselin rəngi, parıltılı bir effekt əlavə etmək üçün həqiqi rənginin ətrafında irəli -geri sürüşür.

İkincisi, eskizə başlayarkən, siçanı tıkladıqda arxa plan oxunacaq, sonra yalnız o fondan daha yaxın olan piksellər görünəcək. Bu, zəminin/hər hansı bir yastığın/günbəzin quruluşunun görünməsini dayandırır.

Hər x kadrını oxuyan arxa planı sıfırlamaq funksiyası da var, buna görə də günbəzin içindəkilər yerlərində yatırlarsa, görünməyəcəklər. Bu, bütün dünya miqyasında dərin bir cəfəngiyat göstərmək əvəzinə, həqiqi hərəkətin önə çıxması deməkdir. (Tezliklə bunu lerped bir versiya ilə əvəz edəcəyəm, buna görə də arxa plan belə bir "çətin" sıfırlama etmir, əksinə zamanla inkişaf edir)

Rəng damlaları qruplarını göstərən bir fon animasiyası da var, çoxluqların miqdarı qübbədə baş verən hərəkətlərin tərsinə əks olunur, buna görə heç kim yoxdursa və ya hələ də yoxdursa, çoxlu animasiya var. Daha sonra içəridə daha çox hərəkət olduğu üçün tədricən yox olur.

Addım 24: Dome Tamamlandı

Image
Image
Dome Tamamlandı!
Dome Tamamlandı!
Dome Tamamlandı!
Dome Tamamlandı!

Ümid edirəm bir şey öyrəndiniz və bunu maraqlı tapdınız. Günbəzin işlədiyi bir çox görüntüləri olan tam videoya baxın.

Buraya Günbəzdə çəkdiyim uzun çəkiliş fotoşəkillərini də əyləncə üçün daxil etdim. Zövq alın!

2018 Parlaq Yarışması olun
2018 Parlaq Yarışması olun
2018 Parlaq Yarışması olun
2018 Parlaq Yarışması olun

Make it Glow Yarışmasında 2018 -ci ilin birinci mükafatı

Tövsiyə: