İçindekiler:
- Adım 1: Adım 0: Bazı Raflara Sahip Olun
- Adım 2: Adım 1: Blinkenlights ve Destekleyici Bitler Alın
- Adım 3: Adım 2: LED Şeritlerini Uygun Şekilde Boyutlandırın
- Adım 4: Adım 3: Jumper Bağlantıları Ekleyin
- Adım 5: Adım 4: Gücü Kablolayın
- Adım 6: Adım 5: Düğmeyi Kablolayın
- Adım 7: Adım 6: Bir Kutu Yapın
- Adım 8: Adım 7: Yazılım
- Adım 9: Adım 8: Oynat
Video: K6: Kararsızlar İçin İçme Oyunu: 9 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
Hangi Viskiyle Islatırım Düdüğümü?
Birkaç yıldır, "yemek odası"nda, tek amacı dünyanın en büyük damıtılmış içeceği olan viskinin dönen, oldukça kapsamlı bir seçimini sergilemek ve kolayca erişilebilir kılmak olan bir dizi rafımız var. Güney'den Denver'a, İrlanda, İskoçya ve hatta Japonya'ya kadar birçok seçenek var - bu da şu soruyu gündeme getiriyor, bugün hangisini denemeliyim?
Arkadaşlar arasında paylaşılan tatil yanıp sönen ışıklar ve şenlikli içkiler ruhuyla, bu soruyu bir içki oyunuyla, çarkıfelek tarzında ama daha parlak bir şekilde cevaplamak için yola çıktım.
Gömleğimi kaybetmemek ve işleri biraz daha duygusal hale getirmek için, daha pahalı şişelerin çoğunu Jaegermeister, King Cobra ve Strongbow Golden Apple ile değiştirdim. Yine de bazı mücevherler kalır. (Siz Avrupalılar için Altın Elma, evinizdeki Strongbow değildir. Bu, yapay elma aromalı basit şurupların yalnızca Amerika'ya ihracatıdır. Redbreast'e inmeyi tercih edersiniz, söz veriyorum.)
Adım 1: Adım 0: Bazı Raflara Sahip Olun
Tabii ki, oyun akılda alkol ile inşa edilmek zorunda değil. Dilerseniz yoğun bir mısır gevreği koleksiyonunu oyunlaştırabilirsiniz. Ancak yeni başlayanlar için, yanıp sönen ışıkları arkaya koymak için BİR ŞEYLER içeren raflara sahip olmanız gerekecek. Ya da bitti. Veya altında.
Öne çıkan bir sergide zaten bir içki koleksiyonumuz var ve bu kalpten bir parti hilesi, bu yüzden onunla gittiğim yer orası.
Adım 2: Adım 1: Blinkenlights ve Destekleyici Bitler Alın
Tüm bu proje, WS2811/WS2812B "neopixel" LED şeritleri ve Ben Hencke'nin PixelBlaze LED denetleyicisi etrafında dönüyor. Hepsini bağlamak için bunlara, bir güç kaynağına ve birkaç ekstra parçaya ihtiyacınız olacak.
Alışveriş Listesi: (Not: Bunların hiçbiri bağlı kuruluş bağlantıları değildir. Belki bunu denemeliyim, şu $$'ı almalıyım. Bunun yerine, bunlar Smile bağlantılarıdır.)
- LED şerit (37 $) Beyaz PCB veya Siyah PCB
- Güç Kaynağı (24 $) Bağlantı Not: Bu muhtemelen fazla abartılmış, 15A. Gerçekte ne kadar akıma ihtiyacınız olacak, toplam uzunluğa bağlıdır. Güç kaynağı konuları hakkında daha sonra notlara bakın. Genelde zaten fazla satın alırım, çünkü onu farklı bir projede kullanırsanız, o zaman genel gideriniz olur.
- Denetleyici (29 $) PixelBlaze. Ben bunları Tindie'de satıyor. Donanım 30 $ değerinde değil. Yazılımın değeri 30 dolardan çok daha fazla.
- Düğme (11$) Bağlantı Açıkça, bunlardan yalnızca birine ihtiyacınız var, bu yüzden muhtemelen onları Ebay'de daha küçük miktarlarda daha ucuza bulabilirsiniz.
- Ekstra LED şerit konektörleri (10 $) Bağlantı
- ALTERNATİF (8 $): Bunun yerine önceden yapılmış uzantıları satın alabilirsiniz, bu muhtemelen daha temiz ve daha güzeldir
- Kontrolör için bir uzatma yapmak için ideal olarak 3 iletkenli bir kablo
- Düğme muhafazası (3D baskı) 0,50 0,50 (3D yazıcınız yoksa, kartondan veya ekstra kredi için ahşaptan kendiniz yapın)
Şahsen, bu parçalardan bazılarına zaten sahip olduğum için bu projeye yaklaşık 70 dolar harcadım. Parçaların maliyeti, hepsi bir arada, 95 dolar gibi bir şey. Halihazırda hiçbir parçaya sahip değilseniz, 115 dolar.
Bunu biraz şu şekilde yapabilirsiniz:
- Daha ucuz LED'ler kullanın (daha az piksel/metre). Bulduğum en ucuz 5 milyonluk şerit Amazon'da 20 dolar.
- PixelBlaze'i satışa çıkarın veya Ben'in onu açık kaynak haline getirmesini ve donanımı DIY haline getirmesini bekleyin. (Ama yaparsa, yine de ona biraz para verin, bellenim inanılmaz).
- Minimum özellikli bir güç kaynağı kullanın. Bu proje 75W tüketmez ve şerit daha ucuz bir kaynakla çalışana kadar PixelBlaze ile parlaklığı azaltabilirsiniz.
Tüm bunları yaptıysanız, kendi yazılımınızı bir ESP8266 tüyü veya bunun gibi bir şey kullanmak için yuvarladıysanız, donanım BOM maliyeti 38 $ kadar ucuz olabilir.
Adım 3: Adım 2: LED Şeritlerini Uygun Şekilde Boyutlandırın
5m'lik şeridime baktığımda, birlikte lehimlenmiş.5m'lik bölümlerde yapıldığını fark ettim. Bu şeritler ile herhangi iki LED arasında kesim yapabilirsiniz. Ama aptalca şeylere takılıp kaldığım için ve raflarım tam olarak 1,5 m uzunluğunda olduğundan, silikon ceketi kestim ve şeridimin lehimini 1,5 m'lik artışlarla çözdüm ve son 0,5 m'lik bölümü daha sonraki bir proje için bıraktım.
Adım 4: Adım 3: Jumper Bağlantıları Ekleyin
Raflarım 3x1.5m olduğu için alt şeritlerim arasına biraz tel eklemem gerekiyordu. Tabii ki, sadece bir sürekli raf yakmak istiyorsanız bunu yapmak zorunda değilsiniz.
Benim durumumda, güç hatları için 20ga silikon tel ve veri hattı için 22ga ile ~1.5ft uzatma yaptım. Ne kadar büyük olursa, güç için o kadar iyidir, ancak bunlar zaten şeridin kendisinden daha az voltaj düşürecektir.
Bunları doğrudan şeritlere lehimledim, konektör yok. Konektörleri ve kıvrımlı uzantıları kullanmak çok daha güzel olurdu.
Güç Hakkında Bir Not
LED şeritleri yanıltıcı olabilir çünkü her LED oldukça fazla akım tüketir. Şeridin yalnızca başlangıcına güç verirseniz, voltaj şeridin sonunda o kadar büyük ölçüde sarkabilir ki, mavi ve yeşilin tam olarak açılması için yeterli boşluk payı kalmaz ve bu da renk dengesi sorunlarına yol açar. Hem her piksel maksimum güç tükettiğinden (R=%100, G=%100, B=%100) hem de sonuçta ortaya çıkan herhangi bir rengi göreceğiniz yer beyaz olduğundan, bu çoğunlukla tam beyaz görüntülerken bir sorundur. denge sorunu. Örneğin, yalnızca mavi görüntülüyorsanız, bu yalnızca 1/3 maksimum güçtür ve şeridin sonundaki mavi biraz daha sönükse, o kadar belirgin değildir.
Tipik bir çözüm, gücü şerit boyunca birkaç noktada kablolamak. Bizim durumumuzda, belki her rafın bir ucunda.
PixelBlaze'i kullanmak için başka bir olasılık, PB'nin animasyondan tamamen ayrı bir şerit parlaklık kontrolünü desteklediğinden, şeridi genel olarak karartmaktır. Işık doğrusal olarak algılanmaz, bu nedenle gücü yarıya indirerek şeridi yalnızca hafifçe karartırsınız. Tam beyaz bir deseni test ederken, şerit parlaklığını %25'e düşürerek renk dengesi sorunlarını ortadan kaldırabildiğimi buldum, bu da toplam ışık çıkışını yalnızca biraz azalttı.
Bu durumda, animasyon, şeridin asla ÇOK fazla güç tüketmediği, hiçbir zaman bir ucu diğerini aç bırakacak şekilde gücü eşit şekilde tüketmediği ve genellikle, yazılımı sürekli şeritte yüklemeden önce test ederken bir sorun olduğunu fark etmediğim anlamına gelir.. Oyun için sadece şeridi kararttım çünkü boşta animasyon benim zevkime göre biraz parlaktı.
Yine de, büyük kurulumlar için veya kullandığınız animasyonları daha yoğun olacak şekilde değiştirirseniz düşünülecek bir şey.
Adım 5: Adım 4: Gücü Kablolayın
Güç Girişi
Güç kaynağım, birçoğunun yaptığı gibi, sadece bu tür bir uygulama için terminal adaptörünü vidalamak için 5.5x2.1 mm'lik bir varil jakı ile geldi. Aslında kullandığım benzer bir adaptördü, ancak vidalı terminaller yerine vidasız hızlı bağlantılara sahipti.
LED şeritler tipik olarak, ayrı ayrı güç eklemek için hem 3 pimli JST SM konektörü hem de iki çıplak kablo ile başlangıçta ve sonunda sonlandırılır. Gücü bu iki ayrı kabloya bağlayacağız ve denetleyiciden veri almak ve denetleyiciye 5V güç beslemek için JST SM konektörünü kullanacağız.
Denetleyici
3 pinli JST'yi PixelBlaze'e vidalayabilir ve bir gün olarak adlandırabilirdim, ancak kontrol kutusunda biraz daha özgürlüğe ihtiyacım vardı, bu yüzden kullanışlı bir tel ile bir JST SM erkek dişi uzatma kablosu da bağladım. Gösterge burada gerçekten önemli değil çünkü kontrolöre sadece birkaç mA sağlıyor. Yine de, örgülü-küçültülü-tel-büzüştürülmüş-pigtail yerine, her iki ucunda kıvrımlı konektörlere sahip amaca yönelik bir uzatma kablosuna sahip olsaydım daha güzel olurdu.
Adım 6: Adım 5: Düğmeyi Kablolayın
Devrenin son kısmı, arcade butonunu bağlamaktır. ADC pinini kullandım, çünkü uygun pin başlığında yalnızca bir dijital GPIO var ve bu bir kullanıcı kalıbı için mevcut değil - bu pin üzerindeki bir düğme, animasyon kalıplarını döndürmenin özel amacına hizmet ediyor.
Kartın alt kısmındaki digital padlerden birini kullanarak harici pull-up direnci kullanmadan kurtulabilirsiniz ama ben direk lehimlemek istemedim. Hemen hemen her direnç değeri çalışır, ancak muhtemelen >1Kohm ve <0.5Mohm'a bağlı kalır. 47K'lık bir çekme kullandım çünkü bu, kutumda bir ev arayan serbest yüzen ilk dirençti.
Adım 7: Adım 6: Bir Kutu Yapın
Aslında bu kutuyu ayrı bir proje için yazdırdım, Noel-y renk şemasıyla bile. Ama daha önce de söylediğim gibi, düğme için oyulmuş bir karton kutu gayet iyi olurdu. Veya lehim bağlantılarınıza güveniyorsanız, hiç kutu yok.
Bu kutunun orijinalinde kablo çıkışı yoktu, bu yüzden yer açmak için kenarlarını biraz kırptım. Yine de buraya eklediğim 3B modelin bir çıkışı var. Arka kapağı çıkıntı yukarı ve kasa kabuğunu yüzü aşağı gelecek şekilde yazdırın. Arka kapak sadece birkaç tırnağa basarak yerine oturduğundan, oldukça iyi çevrilmiş dilimleyici ayarlarına ihtiyacınız olacak.
Adım 8: Adım 7: Yazılım
PixelBlaze'i kurmak benim için en zor kısımdı, ama sizin için en kolayı. Tüm animasyonların ve mekaniğin çalışması için yaklaşık 200 satır kod yazdım, ancak eklediğim animasyonları yükleyebilirsiniz! PixelBlaze'inizi nasıl kuracağınıza ve kalıpları nasıl yükleyeceğinize ilişkin talimatlar için PixelBlaze - Başlarken sayfasını ziyaret edin, ardından yukarıdaki kalıplardan birini yükleyin. Bunlardan biri oyun oynanmadığında şık beyaz bir animasyon, diğeri ise bu kılavuzdaki video ve resimlerdeki yapışkan kırmızı ve yeşil desen. Tabii ki, zevkinize göre değiştirebilirsiniz!
NOT: Her ne olursa olsun, şerit uzunluğunu ayarlarda ayarlamak isteyeceksiniz. 4,5 metrelik toplam uzunluktaki şeritlerim için bu, 270 pikseldir.
Desen nasıl çalışır?
Yazdığım kod bir durum makinesidir. Durumların tümü, piksel şeridi boyunca kayan bir "seçici" fikrine dayanmaktadır. Seçici model, bir sinüs dalgasının yükselen ilk yarısıdır, 0'dan 1'e yeniden ölçeklendirilir ve kenarların keskin bir şekilde solmasını sağlamak için kare (veya küp) yapılır. Bu modelin başlangıcı şerit boyunca bir miktar hızla hareket eder ve her animasyon karesi seçici dalgaya göre yoğunluğa sahip pikseller çizer (yani, seçici konumu ayrı bir tamsayı piksel sınırı değildir). Durum 0 geniş bir "selektör kullanır " ve şerit boyunca sabit bir hızda kaydırır. Durum 0, düğmeye basılarak 1'e geçer.
Durum 1, seçiciyi 5 piksele daraltır ve hızı çok daha hızlı ayarlar. 0>1 durumu geçişi sırasında, 3 ile 7 saniye arasında rastgele bir gecikme ayarlanır. Durum 1, bu rastgele gecikme için sürer, ardından durum 2'ye geçer.
Durum 2, 1 ile aynıdır, ancak hızı katlanarak azaltır ve durum 3'e geçmeden önce yalnızca 2 saniye sürer.
Durum 3, tek bir şişeyi net bir şekilde tanımlamak için seçici genişliğini daha da daraltır, son seçimi belirtmek için rengi yeşile değiştirir ve sarhoş oyuncular GERÇEKTEN 40 litre içmeleri gerekip gerekmediğini tartışırken 15 saniye boyunca aynı konuma odaklanmış kalır. Malt likörü. Bu noktada, seçici seçim net olmayacak şekilde iki şişe arasına sıkıca inerse, oyuncu son konumu netleştirmek için birkaç LED'i rastgele ileri veya geri hareket ettirmek için düğmeye bir kez daha dokunabilir. Yalnızca bir dokunuşa izin verilir. 15 saniye sonra desen, bir sonraki dönüşü bekleyen 0 durumuna geri döner.
Adım 9: Adım 8: Oynat
- Düğmeye yaklaş
- Düğmeye basmanın sonuçlarıyla ilgili tüm düşüncelerden zihninizi kurtarın
- düğmesine basın
- beklenti içinde bekle
- En üst raftaki viskiyi ve tam aralarına düştüğünüz Goldschlager'ı endişeyle düşünün.
- Hangi şişe kaderini örneklemenizi istediğini netleştirmek için düğmeye tekrar basın. Kader oynanmamalı veya kontrol edilmemelidir.
- Yeşil parıltı Goldschlager'ın arkasında sıkıca hareket ederken korku içinde izleyin
- Seçiciyi biraz daha zorlamayı umarak çılgınca düğmeye dokunun
- Kendinizi kaderinize teslim edin ve arkadaşınızın neşeyle parıldayan zehirden bir atış yapmasına izin verin.
Önerilen:
Executive Par 3 Golf Oyunu için Otomatik Puanlama: 12 Adım (Resimlerle)
Executive Par 3 Golf Oyunu için Otomatik Puanlama: Geçenlerde taşınabilir ve hem içeride hem de dışarıda oynanabilen eğlenceli bir oyun oynama hakkında bir Talimat yayınladım. Buna “Executive Par 3 Golf Oyunu” denir. Her oyuncunun 9 "delik" puanını kaydetmek için bir kopya puan kartı tasarladım. De olduğu gibi
Bean Bag Toss Beyzbol Oyunu için Elektronik Puanlama: 8 Adım (Resimlerle)
Bean Bag Toss Beyzbol Oyunu için Elektronik Puanlama: Bu Talimatlar, Bean Bag Toss beyzbol temalı bir oyun için skorun elektronik olarak nasıl otomatik olarak tutulacağını açıklayacaktır. Ahşap oyunun ayrıntılı bir yapısını göstermeyeceğim, bu planlar Ana White'ın web sitesinde bulunabilir: https://www
Küçük Bir Skee-Ball Oyunu için Otomatik Puanlama: 10 Adım (Resimlerle)
Küçük Bir Skee-Ball Oyunu için Otomatik Puanlama: Ev yapımı Skee-Ball oyunları tüm aile için çok eğlenceli olabilir, ancak dezavantajları her zaman otomatik puanlama eksikliği olmuştur. Daha önce, oyun toplarını sc'ye göre ayrı kanallara akıtan bir Skee-Ball makinesi inşa etmiştim
Su İçme Alarm Sistemi /Su Alma Monitörü: 6 Adım
Su İçme Alarm Sistemi / Su Alma Monitörü: Kendimizi sağlıklı tutmak için Her Gün Yeterli Miktarda Su içmeliyiz. Ayrıca her gün belirli bir miktar su içmesi reçete edilen birçok hasta vardır. Ama ne yazık ki programı neredeyse her gün kaçırdık. Yani tasarlıyorum
Kokteyl Karıştırıcı Robot - Sorumlu İçme: 5 Adım
Kokteyl Karıştırıcı Robot - Sorumlu İçki: Bu projede birçok hedefim vardı ama öncelikle düğünüm için iki karışık içecek dağıtmak istedim. Dağıtıldığında, yaklaşık bir dakika sürmesini ve doğru miktarda likör olmasını istedim. Sıhhi tesisat kolay bir şekilde temizlik gerektirir. benim