İçindekiler:

EqualAir: Hava Kirliliği Sensörüyle Tetiklenen Giyilebilir NeoPixel Ekran: 7 Adım (Resimlerle)
EqualAir: Hava Kirliliği Sensörüyle Tetiklenen Giyilebilir NeoPixel Ekran: 7 Adım (Resimlerle)

Video: EqualAir: Hava Kirliliği Sensörüyle Tetiklenen Giyilebilir NeoPixel Ekran: 7 Adım (Resimlerle)

Video: EqualAir: Hava Kirliliği Sensörüyle Tetiklenen Giyilebilir NeoPixel Ekran: 7 Adım (Resimlerle)
Video: Supreme Court Denied The Odd-Even Rule In Delhi | #Delhi | #Shorts 2024, Kasım
Anonim
Image
Image

Projenin amacı, hava kirliliği belirli bir eşiğin üzerinde olduğunda çağrışım yapan bir grafik sergileyen giyilebilir bir tişört yapmaktır. Grafik, klasik "tuğla kırıcılar" oyunundan esinlenmiştir, çünkü araba, akciğerin parçalarına "vurup" onları bozan egzozu (toplar gibi) dışarı tüküren bir kürek gibidir. Hava kirliliği bir eşiğin üzerinde olduğunda (örneğin, araba ile yürürken), aksi takdirde zararsız beyaz tişörtler ekranda oynamaya başlar. Bu proje Jordan, Mary, Nick ve Odessa tarafından The Art and Science of Making adlı bir sınıf için inşa edildi.

Adım 1: Malzemelerinizi Toplayın

Görüntülemek:

  • 6 * Adafruit NeoPixel Dijital RGBW LED Şerit - Beyaz PCB 144 LED/m
  • 1 * Arduino Mega (Adafruit web sitesine göre, birkaç NeoPixel şeridinden daha fazlasını kullanmak için bir Arduino Mega gerektirir)
  • 1 * 9 voltluk pil
  • 1 * dizüstü bilgisayar şarj cihazı

Algılama:

1 * Adafruit MiCS5524 sensör (ucuz olduğu için kullandığımız hava kirliliği sensörüydü. Dezavantajı birden fazla gazı algılaması ve aralarında ayrım yapmamasıdır)

Başka:

2 * beyaz tişört (çok büyük tişörtler almanızı öneririz çünkü 1) donanım için yer olmalı ve 2) cep yapmak için biraz fazla kumaş kesmeniz gerekecek. donanımı gizle)

Aletler:

  • Süveterler
  • protokol
  • kondansatör
  • direnç
  • Tel makası
  • Lehimleme makinesi
  • Dikiş malzemesi ve/veya kumaş tutkalı

Adım 2: NeoPixel Izgarasını Birleştirme

Sensör Ekleme
Sensör Ekleme

NeoPixel ızgarasını monte etmek için orijinal NeoPixel şeritlerinin istenen ızgara boyutlarına göre kesilmesi ve yeniden lehimlenmesi gerekir. Bu tasarım için 47x16'lık bir NeoPiksel ızgarası oluşturuyorduk:

  1. 1 metrelik (144 NeoPixel) şeritleri 47 NeoPixel'lik artışlarla kesin, şeritlerin kenarlarında biraz boşluk kalmasına izin vermeye dikkat edin (NeoPixel'lerin altlarında görünen küçük metal uçlar vardır). Tüm lehim pedi açığa çıkacak şekilde kestiğinizden emin olun (çünkü başlangıçta çok küçüktürler). Şeritlerin (144/3 = 48) piksel yerine 47 piksel olmasının nedeni, NeoPixel'ler birbirine çok yakın olduğu için onları kesmekten en az birini kaybetmenizdir.
  2. Sütunları dikkatli bir şekilde yan yana yerleştirin (isteğe bağlı olarak yerinde tutmak için elektrik bandı kullanın) ve boyutların istediğiniz gibi (47x16) olduğundan emin olun. Sütunları bir S modelinde düzenleyin.
  3. NeoPixel'ler, bir sonraki şeritteki muadillerine bağlanması gereken voltaj girişi, giriş ve topraklama kablolarına sahiptir. Çok telli kablo kullanarak, doğru uçları bağlamaya dikkat ederek sütunların uçlarını bir S-şeklinde birbirine bağlayın.
  4. Kabloları ızgaranın uçlarında bırakın (2 uç olmalıdır - biri başladığınız yerde ve diğeri S modelini bitirdiğiniz yerde) ve isteğe bağlı olarak kolaylık sağlamak için kablo uzantıları ekleyin. Ayrıca isteğe bağlı olarak uç kısımlarını bantlayabilir veya başka bir şekilde sabitleyebilirsiniz. Ayrıca, sabitlemek için bağlantıları sıcak tutkalla yapıştırın.
  5. Arkasına birkaç kat daha fazla elektrik bandı veya başka bir yapıştırıcı ekleyerek yeni monte edilen ızgaranızın güvenli olduğundan emin olun.

Şimdi test edebileceğiniz çalışan bir ızgaranız olmalıdır. NeoPixel Matrix kitaplığı altında, ızgaranın beklendiği gibi çalışıp çalışmadığını görmek için matrixtest örnek kodunu kullanabilirsiniz. Varsa, yukarıdaki fotoğraftaki gibi görünmelidir (öndeki Arduino Uno'yu dikkate almayın, başka bir şeyi test etmek içindi)

Adım 3: Sensörü Ekleme

Bu projenin önemli bir yönü, havadaki değişen gazları algılayabilen ve yoğunluklarını analog giriş yoluyla bildirebilen bir Adafruit MiCS5524 olan sensördür.

  1. İlk olarak, sensöre giden üç ucun - giriş voltajı, çıkış ve toprak - doğru şekilde bağlandığından emin olun (buna yardımcı olması için isteğe bağlı olarak uygun renkte kablo kullanın).
  2. Voltajı Arduino kartındaki 5V çıkışa bağlayın ve topraklamayı tahtadaki toprağa bağlayın.
  3. Ardından çıkışı Arduino kartındaki A0'a (veya seçtiğiniz analog pin) bağlayın. Sensörü Arduino'ya bağlamak için gereken tek şey bu.
  4. İsteğe bağlı olarak, okumaların sensör tarafından rapor edildiğini doğrulamak için Seri monitörü kullanın (okumalar bir sayı etrafında gezinmeli ve sensör bir karbon monoksit kaynağının veya diğer dumanların yakınına yerleştirildiğinde değişmelidir).

Çevrimiçi ortamda, özellikle bu sensörün ortamdaki bir değişikliğe duyarlı olması için kalibre edilmesi için talimatlar vardır. Yaptığımız şey, bulunduğu oda için "düzenli" bir okuma aralığının ne olduğunu belirlemek için sensörü birkaç saat bırakmaktı. Ardından, ekranın "tetiklenmesini" test etmek için alkole batırılmış bir pamuk top kullandık. sensör okuması, grafiğin bir döngüsünü başlatmak için ayarlanmış bir eşiğin üzerine çıkacaktır.

Adım 4: Kodda Hata Ayıklama

Image
Image

Ekli koddur. En üstte birçok başlık bulunduğuna dikkat edin. Gerekli başlıkları indirmek için Arduino IDE'de, eskiz öğesine tıklayın, kitaplığı dahil edin ve ardından kitaplıkları yönetin. Ekli dosyayı karşıya yüklemeden önce aşağıdaki kitaplıkları indirmeniz gerekir:

  • Adafruit NeoPixel
  • Adafruit NeoMatrix
  • Adafruit GFX kitaplığı

Bu kitaplıkları indirdikten sonra, Arduino IDE'de, dosya altında, örnekler altında, ilerledikçe test etmek için değiştirilebilecek örnek kod bulacaksınız. Örneğin, şerit testi ve matris testi, NeoPixel ızgarasını test etmek için çok faydalıydı. Çevrimiçi olarak, hava kirliliği sensörü için örnek testler bulmak da kolaydır.

Dosyayı karşıya yüklemeden ve çalışma kılavuzunu görmeden önce, değiştirilebilecek bazı kod satırları şunlardır:

#define PIN 6

#define SENSOR_PIN A0

Pin 6, NeoPixel ızgarasının Arduino'ya bağlı olduğu pin numarasına değiştirilmelidir.

AO pini, sensörün Arduino'ya bağlı olduğu pin numarasına değiştirilmelidir.

#define STOP 300

#define NUM_BALLS 8

Adafruit_NeoMatrix matrisi = Adafruit_NeoMatrix(GRID_COLS, GRID_ROWS, PIN, NEO_MATRIX_TOP + NEO_MATRIX_LEFT + NEO_MATRIX_COLUMNS + NEO_MATRIX_ZIGZAG, NEO_GRB + NEO_KHZ800);

300 sayısı, ekranın bir döngüsü olarak sayılmak üzere akciğerin kaç pikselinin bozulduğunu tanımlar. Sayıyı artırmak, döngüyü uzatır (örneğin, daha fazla akciğer bozulur) ve bunun tersi de geçerlidir.

8 sayısı, arabadan çıkan "top" (egzoz) sayısını tanımlar.

Şimdi, ızgarayı tam olarak oluşturmak için talimatları izlediyseniz, NeoMatrix'in yapılandırması çalışmalıdır. Bununla birlikte, bu kurulumun söylediğinin 0, 0 koordinatının sol üstte olduğunu, şerit sütunlarını bağladığımızı ve şeritlerin bir S oluşumunda bağlandığını belirtmekte fayda var. Bu nedenle, ızgaranız yansıtılmış veya 90 derece kapalı olması dışında mükemmel görünüyorsa, ızgarayı farklı şekilde ayarlamış olabilirsiniz ve buradaki kodu değiştirmeniz gerekir. Bu adımın sonunda, videoya benzeyen bir şeye sahip olmalısınız, alkole batırılmış bir pamuk top ile tişörtü tetikliyoruz, grafik bir döngü oynuyor ve döngü bitene kadar yeniden tetiklenemiyor tamamlayınız.

Adım 5: Tişörtün Bir Araya Getirilmesi

Yay! Artık ekrana, sensöre ve koda sahip olduğunuza göre, her şeyi bir araya getirmenin zamanı geldi. Sonunda, iç gömleğe bağlı tüm donanıma sahip olacağız ve ardından her şeyi gizleyen dış gömleğe sahip olacağız. Tişörtler çok büyük olduğu için alttan bir şerit kestik. Bu bize donanımı gizlemek için bir cep dikmek için ihtiyacımız olan kumaşı verdi.

İç gömlek:

  1. Önce NeoPixel ızgarasını sabitlemek için arkasına elektrik bandı şeritleri yerleştirerek başlayın (ızgarayı tek parça halinde taşıyabilirseniz iyi olduğunuzu anlayacaksınız)
  2. Kumaş NeoPixel ızgarasını iç tişörtün üzerine yapıştırın. Izgaranın ortalandığından ve akciğerlerin gerçekte bulunduğu yerin üzerinde olduğundan emin olun.
  3. Tutkalın gerektiği gibi kurumasını bekleyin, yapıştırıcının gömleğin arkasına sızmadığından emin olun ve gömleği kapatarak yapıştırın. Şebeke açıldıktan sonra Arduino, pil vb.nin ne kadar uzağa yerleştirilebileceğini görün. Bizim için jumper kablolarını elektronik bileşenlerimiz gömleğin arkasında olacak şekilde lehimledik.
  4. Elektronik bileşenler için küçük bir cep yapmak üzere kumaş şeridi dikin. Daha güvenli hale getirmek için bazı bileşenleri (örneğin Arduino) cebe dikebilirsiniz.
  5. Sensörün dışarı bakması için küçük bir yarık açın, bizim için bu, gömleğin arkasındaki yakanın ortasındaydı.

Dış gömlek: Dış gömleğin nedeni, dış gömlekle daha iyi görünmesidir. Dış gömlek elektroniği gizler ve NeoPixels'ten gelen ışığı dağıtır.

  1. Dış gömleği dikkatlice iç gömleğin üzerine yerleştirin
  2. Izgara aydınlandığında öğretilmiş gibi görünecek şekilde iç gömleği dış gömleğe kumaş tutkalı veya dikin (resimde, siyah çizgiler kumaş tutkalının olduğu yerdir)

6. Adım: Sorun Giderme

Tebrikler! Artık hava kirliliği seviyelerine göre yanan giyilebilir bir tişörtünüz var. Değilse, muhtemelen bir engele çarptınız (birçok kişiye çarptık), işte bazı sorun giderme önerileri:

  • NeoPixel şeritlerindeki lehim pedleri delicesine küçüktür, bu nedenle ızgara bağlantılarını güvenli hale getirmek zordur. Kurşun lehim, çok telli elektrik teli kullandık ve bağlantıları sıcak yapıştırdık.
  • NeoPixel'in şerit üzerinde birbirine çok yakın olmasının bir sonucu olarak, şeridi her kestiğimizde en az 1 piksel kaybettik. Makas kullanmak, tam bir bıçak kullanmaktan daha iyiydi, sadece plastik reçineyi soyun ve kesin.
  • NeoPixel ekranı garip bir renk gösteriyorsa (örn. Kodu yüklemek için her şeyi fişten çektik, kodu yükledik, ardından bilgisayarın bağlantısını kestik, pili Arduino'ya taktık ve son olarak dizüstü bilgisayar adaptörünü şebekeye taktık.
  • NeoPixel ekranı rastgele aralıklarla tamamen rastgele renkler gösteriyorsa, zeminlerin ortak olduğundan emin olun.
  • Kumaş tutkalı kullanırken çok fazla kullanmadığınızdan emin olun, böylece t-shirt'e sızıp yapışır. İki kumaş parçasının arasına, aksi takdirde dokunacak tahta bir kalas koyuyoruz.

Umarız bu öğreticiyi beğenmişsinizdir! Bir sonraki adım, şebekeyi taşınabilir bir bataryaya bağlamak ve onu arabalardan ve diğer kirleticilerden kaynaklanan hava kirliliğinin ekranı tetikleyeceği sokaklarda bir tur atmak.

Önerilen: