- Kilopixel, 6 yılda geliştirilen ve herkesin internet üzerinden resim çizebildiği 1000 ahşap piksel tabanlı büyük bir ekrandır
- Bu proje, farklı fiziksel prototip tasarımları, malzeme testleri, piksel biçimi dönüşümleri ve diğer deneme-yanılmalarla olgunlaştırılarak tamamlandı
- CNC makinesi ve Raspberry Pi, web uygulaması, sensörler gibi bileşenler kullanılarak çevrim içi ile çevrim dışını birleştiren özgün bir yapıya sahip
- Kullanıcılar web sitesi üzerinden doğrudan çizim göndererek veya oy vererek katılabilir; gerçek zamanlı yayın ve timelapse video sağlama altyapısı da hazırlanmıştır
- İleride başka kullanıcılara API ile ekran kontrolünü devretme ve farklı kullanım senaryoları geliştirme hedeflenerek, yaratıcı ve açık bir proje olarak sürdürülüyor
Proje Genel Bakış
- Kilopixel, 6 yıldır geliştirilen dünyadaki en verimsiz 1000 piksel ahşap ekrandır
- Herkesin web sitesi (kilopx.com) üzerinden ekrana resim çizebileceği bir etkileşimli sistem olarak tasarlandı
- Proje, web uygulaması, fiziksel kontrolör, CNC işleme, G-kodu üretimi, 3D modelleme ve baskı gibi farklı IT ve maker bileşenlerini bir araya getiren bir çalışmadır
İlk Fikir ve Motivasyon
- Danny Rozin'in alışılmadık ayna eserleri ve eInk tabanlı çok yavaş çalışan bir movie player'dan ilham aldılar
- Günümüzün yüksek çözünürlüklü ekranlarının aksine, piksel güncellemelerinin dakikada sadece 10 kez değişeceği son derece yavaş ve verimsiz bir yöntem seçildi
- 40×25 ızgara ile tam olarak 1.000 piksel gösterildi ve akılda kalıcı bir alan adı olarak kilopx.com ismi seçildi
İlk Prototip (21×3 Piksel) Üretimi
- Başlangıçta ahşap bir gantri kullanıldı, kısa süre sonra doğrudan Openbuilds kitinin alüminyum parçalarına (3D yazıcıya benzer bir yapı) geçildi
- Raspberry Pi, CNC kontrolörü, step motor gibi otomasyon bileşenleriyle temel montaj denenip çalıştırıldı
- Piksel seçimi ve manipülasyonu konusunda bir dizi sınırlama ve teknik sorun tespit edildi
Uygun Piksel Arayışının Zorluğu
- Masa tenisi topları, strafor, ahşap bilyeler gibi çeşitli yuvarlak malzemeler test edildi
- Maliyet, ağırlık, temin kolaylığı, boyut tutarsızlığı gibi pratik zorluklarla karşılaşıldı
- Örneğin, 50 sentlik 1000 top için 500 dolar gerekir
- Masa tenisi topları delindikten sonra kolayca bozuluyor ve boyut farkları nedeniyle başarısız oluyor
- Neopball, rebound top, ahşap top ve strafor gibi seçenekler de delme, boyama, dayanıklılık ve ağırlık nedenleriyle uygun bulunmadı
Piksel Dönme Mekanizması Deneyleri
- LEGO tekerlek ve motor, sensörlerle birlikte kullanılarak piksel döndürme denemeleri yapıldı
- Solenoid, servo motor gibi farklı hareket yöntemleri test edildi; ancak hepsi güçlü kontrol zorluğu nedeniyle rafa kaldırıldı
Hacimli Pikselden Küp Piksele Geçiş
- Bir podcast sohbetinden sonra, küp şeklinde ahşap piksel tasarımına tamamen geçildi ve doğrudan üretime başlandı
- Seri üretime uygunluk nedeniyle oldukça fazla zaman aldı, ancak görsel ve hareketsel kalite sonunda tatmin edici oldu
Piksel Izgara Üretimi
- Pikselin kendisi yerine sabit bir ızgara yapısı tasarlandığından 40×25 düzeni kesin doğrulukla kurulabildi
- 40 deliği olan ince bir raf 25 adet işlenerek, piksel sabit aralıklı şekilde metal tellere geçirilerek sabitlendi
- Her pikselin çevresindekilerin etkisine girmeden tamamen bağımsız çalışması hedeflendi
CNC ve Sistem Kontrolü
- Temel CNC prensipleri ve G-kodu kullanımıyla ilgili açıklamalar içeriyor
- Raspberry Pi ve CNC kontrolcüsü, Python betikleri, ışık sensörü, pigpio kütüphanesi vb. kullanıldı
- Web API ile bir sonraki değiştirilecek piksel seçilip, G-kodu ile komut verildi; hareket sonucu sensör ile kontrol edilip API üzerinden geri bildirim döngüsü sağlandı
Piksel Manipülasyonu (Pixel Poking) Mekanizması
- Pikselde her 90° için özel bir oluk bulunur ve kenarı esnek bir çubuk (glue stick) ile iterek döndürür
- Tüm bu adımlar G-kodu üzerinden otomatikleştirilmiştir
Görüntü Çıkış Modları ve Web Arayüzü
- API, web uygulamasından yönetiliyor ve ekran için üç mod bulunuyor
- Kullanıcı gönderimi: Herkes 40×25 görsel gönderebilir ve oy verebilir; popüler çalışmalar sırayla gösterilir
- Canlı işbirliği: Katılımcılar pikseli gerçek zamanlı değiştirebilir (çok fazla katılımcı olduğunda verimli değil)
- Çocuk modu: Saat, şekil gibi öğeler algoritmik olarak dönüştürülerek gösterilir
- Web uygulaması yığını önce Node/Socket.IO, ardından Laravel+Livewire, nihayetinde Laravel+InertiaJS+VueJS ile son halini aldı
Gerçek Zamanlı Yayın ve Timelapse
- 2 web kamerası (yakın plan, geniş açı) ile OBS ve ffmpeg kullanılarak ekranın canlı YouTube yayını yapıldı
- API durum kontrolünden sonra tamamlanan çalışmanın timelapse videosu üretilip yayınlanabiliyor
Açık Sistem Güvenliği ve İşletme
- Kötüye kullanımı önlemek için minimum düzeyde kontrol uygulandı ve gerektiğinde hızlı içerik silme desteği eklendi
- Temelde oldukça açık katılım yapısı korunarak Bluesky OAuth ile giriş sağlandı
Gelecek Planları
- Kullanıcıların artan katılımı bekleniyor; ileride diğer kullanıcılara API aracılığıyla kontrol yetkisi verilebilir
- Sonunda ekranın webcam arka planı olarak, ofis, kafe gibi farklı mekânlarda kullanılması hedefleniyor
- Herkes web sitesinden gerçek zamanlı olarak katılıp izleyebiliyor
Sonuç
- Kilopixel, çevrim içi etkileşimi ve fiziksel gerçekliğin somutluğunu birleştiren özgün bir proje örneğidir
- Üretim sürecindeki çok sayıda deneme ve teknik emek, maker ve geliştirici toplulukları için ilham verici bir örnektir
Henüz yorum yok.