Mündəricat:
- Addım 1: Günbəz
- Addım 2: Struts edin
- Addım 3: Qübbə qurun
- Addım 4: Yüksəldin
- Addım 5: LED -lərin necə görünməsini planlaşdırın
- Addım 6: LED Layout haqqında daha çox məlumat
- Addım 7: Fadecandys və Güc Təchizatlarını düzün
- Addım 8: Xətləri zolaqlara çevirmək
- Addım 9: LED şeridinin hazırlanması
- Addım 10: Panellər düzəldin
- Addım 11: LED Şeridini Kabellərə Bağlayın
- Addım 12: Panelləri Günbəzə asın
- Addım 13: Güc və Məlumat Paylama Panelləri hazırlayın
- Addım 14: Kumaş örtüyü
- Addım 15: Parçanı asmaq
- Addım 16: Kinectin bağlanması
- Addım 17: Döşəmə
- Addım 18: Quruluş Tamamlandı … Kodun üzərinə
- Addım 19: Fadecandy Server
- Addım 20: Fadecandy Serverini konfiqurasiya edin
- Addım 21: Piksellərin Xəritəçəkilməsi
- Addım 22: Kinect İnteqrasiyası
- Addım 23: Kinect Dərinlik İzləmə
- Addım 24: Dome Tamamlandı
Video: Fadecandy, İşləmə və Kinect ilə İnteraktiv LED Dome: 24 Addım (Şəkillərlə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Nə
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
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
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 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
Ü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
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
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 ş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
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
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
Üç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
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ü
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
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ı
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
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
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
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ı
Ü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!
Make it Glow Yarışmasında 2018 -ci ilin birinci mükafatı
Tövsiyə:
Excel, Arduino və İşləmə ilə FK (İrəli Kinematik): 8 addım
FK (Forward Kinematic) Excel, Arduino & Processing ilə: Forward Kinematic, 3D effektində End Effector dəyərlərini (x, y, z) tapmaq üçün istifadə olunur
Fadecandy və İşləmə ilə Ünvanlı LEDləri Necə İdarə Etmək olar: 15 Addım (Şəkillərlə)
Fadecandy və İşlənmə ilə Ünvanlı LEDləri Necə İdarə Etmək olar: WhatThis, Fadecandy və İşlənmənin ünvanlı LED-ləri idarə etmək üçün necə istifadə ediləcəyinə dair addım-addım təlimatdır. (Artırmaq üçün birdən çox Fadecandys -i bir kompüterə qoşa bilərsiniz
Arduino və İşləmə ilə 4x4 Klaviatura: 4 Adım (Şəkillərlə)
Arduino və İşləmə ilə 4x4 Klaviatura: LCD displeyləri sevmirsinizmi? Layihələrinizin cazibədar görünməsini istəyirsiniz? Yaxşı, burada həll yolu. Bu Təlimat kitabında Arduino'nuzdakı məzmunu göstərmək üçün LCD ekrandan istifadə edərək özünüzü proyekt edə bilərsiniz
İnteraktiv Geodezik LED Dome: 15 Addım (Şəkillərlə birlikdə)
İnteraktiv Geodezik LED Dome: Hər üçbucaqda LED və sensoru olan 120 üçbucaqdan ibarət geodezik qübbə qurdum. Hər bir LED fərdi olaraq həll edilə bilər və hər bir sensor tək bir üçbucaq üçün xüsusi olaraq tənzimlənir. Günbəz işıqlandırmaq üçün Arduino ilə proqramlaşdırılmışdır
Arduino və İşləmə ilə İstilik və Rütubətin Göstərilməsi və Məlumat Toplanması: 13 Addım (Şəkillərlə)
Arduino və İşləmə ilə İstilik və Nəmlik Göstərişi və Məlumat Toplanması: Giriş: Bu, Arduino lövhəsi, Sensor (DHT11), Windows kompüteri və İşləmə (pulsuz yüklənə bilən) proqramından istifadə edərək İstilik, Rütubət məlumatlarını rəqəmsal və bar qrafiki forması, vaxtı və tarixi göstərin və sayma müddətini işləyin