Spisu treści:

EqualAir: poręczny wyświetlacz NeoPixel wyzwalany przez czujnik zanieczyszczenia powietrza: 7 kroków (ze zdjęciami)
EqualAir: poręczny wyświetlacz NeoPixel wyzwalany przez czujnik zanieczyszczenia powietrza: 7 kroków (ze zdjęciami)

Wideo: EqualAir: poręczny wyświetlacz NeoPixel wyzwalany przez czujnik zanieczyszczenia powietrza: 7 kroków (ze zdjęciami)

Wideo: EqualAir: poręczny wyświetlacz NeoPixel wyzwalany przez czujnik zanieczyszczenia powietrza: 7 kroków (ze zdjęciami)
Wideo: Ergometr narciarski inSPORTline SKI200, Bumper 2024, Listopad
Anonim
Image
Image

Celem projektu jest stworzenie koszulki do noszenia, która wyświetla sugestywną grafikę, gdy zanieczyszczenie powietrza przekracza ustalony próg. Grafika jest inspirowana klasyczną grą „łamacze cegieł”, w której samochód jest jak wiosło, które wypluwa spaliny (które są jak piłki), które „uderzają” w kawałki płuc i je degradują. Kiedy zanieczyszczenie powietrza przekracza próg (np. podczas chodzenia samochodem), na wyświetlaczu zaczynają grać niewinne białe koszulki. Ten projekt został zbudowany przez Jordana, Mary, Nicka i Odessę dla klasy o nazwie Sztuka i nauka tworzenia.

Krok 1: Zbierz swoje materiały

Wyświetlacz:

  • 6 * Taśma LED Adafruit NeoPixel Digital RGBW - Biała PCB 144 LED/m
  • 1 * Arduino Mega (według strony Adafruit użycie więcej niż kilku pasków NeoPixel wymaga Arduino Mega)
  • 1*9 V bateria
  • 1 * ładowarka do laptopa

Wyczuwanie:

1 * czujnik Adafruit MiCS5524 (to był czujnik zanieczyszczenia powietrza, którego używaliśmy, ponieważ jest tani. Wadą jest to, że wykrywa wiele gazów i nie rozróżnia ich)

Inne:

2 * biały t-shirt (sugerujemy kupowanie zbyt dużych t-shirtów, ponieważ 1) musi być miejsce na okucia i 2) trzeba odciąć trochę materiału, aby zrobić kieszeń na ukryj sprzęt)

Narzędzia:

  • Zworki
  • Płyta prototypowa
  • Kondensator
  • Rezystor
  • Przecinak do drutu
  • Maszyna do lutowania
  • Materiał do szycia i/lub klej do tkanin

Krok 2: Montaż siatki NeoPixel

Dodawanie czujnika
Dodawanie czujnika

Aby zmontować siatkę NeoPixel, oryginalne paski NeoPixel muszą zostać przycięte i ponownie przylutowane w zależności od żądanych wymiarów siatki. Na potrzeby tego projektu zbudowaliśmy siatkę NeoPixels 47x16:

  1. Przytnij 1-metrowe paski (144 NeoPixel) w odstępach 47 NeoPixel, uważając, aby pozostawić trochę miejsca na lutowanie na krawędziach pasków (na spodzie NeoPixel znajdują się małe metalowe wyprowadzenia). Upewnij się, że wycinasz tak, aby cały pad lutowniczy był odsłonięty (ponieważ na początku są już tak małe). Powodem, dla którego paski mają długość 47 pikseli zamiast (144/3 = 48) pikseli, jest to, że stracisz co najmniej jeden z ich cięcia, ponieważ NeoPixel są tak blisko siebie.
  2. Ostrożnie ułóż kolumny obok siebie (opcjonalnie użyj taśmy izolacyjnej, aby utrzymać je na miejscu) i upewnij się, że wymiary są pożądane (47x16). Ułóż kolumny we wzorze S.
  3. NeoPixels mają wyprowadzenia napięcia, wejścia i uziemienia, które należy podłączyć do ich odpowiedników w następnej listwie. Używając przewodu wielożyłowego, połącz ze sobą wyprowadzenia kolumn w układzie S, uważając, aby podłączyć właściwe wyprowadzenia.
  4. Zostaw przewody na końcach siatki (powinny być 2 końce - jeden w miejscu, w którym zacząłeś, a drugi w miejscu, w którym zakończyłeś wzór S) i opcjonalnie dodaj przedłużenia przewodów dla wygody. Możesz również opcjonalnie odkleić lub w inny sposób zabezpieczyć przewody na końcu. Przyklej również połączenia na gorąco, aby je zabezpieczyć.
  5. Upewnij się, że nowo złożona siatka jest bezpieczna, dodając kilka dodatkowych warstw taśmy elektrycznej lub innego kleju z tyłu.

Teraz powinieneś mieć działającą siatkę, którą możesz przetestować. W bibliotece NeoPixel Matrix możesz użyć przykładowego kodu matrixtest, aby sprawdzić, czy siatka działa zgodnie z oczekiwaniami. Jeśli tak, to powinno wyglądać jak na powyższym zdjęciu (pomiń Arduino Uno z przodu, to było do testowania czegoś innego)

Krok 3: Dodawanie czujnika

Kluczowym aspektem tego projektu jest czujnik Adafruit MiCS5524, który może wykrywać różne gazy w powietrzu i sygnalizować ich intensywność poprzez wejście analogowe.

  1. Najpierw upewnij się, że trzy przewody prowadzące do czujnika – wejście napięcia, wyjście i uziemienie – zostały prawidłowo okablowane (opcjonalnie użyj odpowiedniego koloru przewodu, aby w tym pomóc).
  2. Podłącz napięcie wejściowe do wyjścia 5 V na płytce Arduino i podłącz uziemienie do uziemienia na płytce.
  3. Następnie podłącz wyjście do A0 (lub wybranego pinu analogowego) na płycie Arduino. To wszystko, co jest niezbędne do podłączenia czujnika do Arduino.
  4. Opcjonalnie użyj monitora szeregowego, aby sprawdzić, czy odczyty są raportowane przez czujnik (odczyty powinny oscylować wokół jednej liczby i zmieniać się, gdy czujnik jest umieszczony w pobliżu źródła tlenku węgla lub innych oparów).

W Internecie dostępne są instrukcje dotyczące kalibracji tego czujnika w szczególności tak, aby był wrażliwy na zmiany w środowisku. Pozostawiliśmy czujnik na kilka godzin, aby określić, jaki jest „normalny” zasięg odczytu dla pomieszczenia, w którym się znajdował. Następnie, aby przetestować „wyzwalanie” wyświetlacza, użyliśmy wacika nasączonego alkoholem, aby odczyt czujnika przekroczyłby ustalony próg, aby rozpocząć jedną pętlę grafiki.

Krok 4: Debugowanie kodu

Image
Image

W załączeniu kod. Zauważ, że na górze znajduje się wiele nagłówków. Aby pobrać wymagane nagłówki, w środowisku Arduino IDE kliknij szkic, dołącz bibliotekę, a następnie zarządzaj bibliotekami. Zanim prześlesz załączony plik, musisz pobrać następujące biblioteki:

  • Adafruit NeoPixel
  • Adafruit NeoMatrix
  • Biblioteka Adafruit GFX

Po pobraniu tych bibliotek, w Arduino IDE, w pliku, przykłady, znajdziesz przykładowy kod, który można modyfikować, aby testować w trakcie. Na przykład strandtest i matrixtest były bardzo przydatne do testowania siatki NeoPixel. W Internecie można również łatwo znaleźć przykładowe testy czujnika zanieczyszczenia powietrza.

Zanim będzie można przesłać plik i zobaczyć działającą siatkę, oto kilka wierszy kodu, które można zmodyfikować:

#zdefiniuj PIN 6

#define SENSOR_PIN A0

Pin 6 należy przełączyć na numer pinu, którym siatka NeoPixel jest dołączona do Arduino

Pin AO należy przełączyć na numer pinu, którym czujnik jest podłączony do Arduino za pomocą

#definiuj STOP 300

#define NUM_BALLS 8

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

Liczba 300 określa, ile pikseli płuca jest degradowanych, aby liczyć się jako jeden cykl wyświetlacza. Zwiększenie liczby wydłużyłoby cykl (np. zdegradowałoby więcej płuc) i odwrotnie.

Liczba 8 określa liczbę „kulek” (wydechu), które wychodzą z samochodu

Teraz, jeśli postępowałeś zgodnie z instrukcjami, aby dokładnie skonstruować siatkę, konfiguracja NeoMatrix powinna działać. Jednak dobrze jest zauważyć, że ta konfiguracja mówi, że współrzędna 0, 0 znajduje się w lewym górnym rogu, połączyliśmy kolumny pasków, a paski są połączone w S-formację. Tak więc, jeśli twoja siatka wygląda idealnie, z wyjątkiem tego, że jest lustrzana lub przesunięta o 90 stopni, prawdopodobnie inaczej ustawiłeś siatkę i powinieneś zmienić tutaj kod. Pod koniec tego kroku powinieneś mieć coś, co wygląda jak wideo, uruchamiamy koszulkę wacikiem nasączonym alkoholem, grafika odtwarza jedną pętlę i nie można jej ponownie uruchomić, dopóki pętla się nie skończy. kompletny.

Krok 5: Składanie koszulki

Tak! Teraz, gdy wyświetlacz, czujnik i kod działają, czas połączyć wszystko w całość. W końcu będziemy mieli cały sprzęt przymocowany do wewnętrznej koszuli, a następnie do zewnętrznej koszuli na wierzchu, która wszystko ukrywa. Koszulki były za duże, więc odcięliśmy pasek z dołu. To dało nam materiał, którego potrzebowaliśmy do uszycia kieszeni, aby ukryć sprzęt.

Koszula wewnętrzna:

  1. Zacznij od umieszczenia pasków taśmy elektrycznej z tyłu siatki NeoPixel, aby ją zabezpieczyć (będziesz wiedział, że wszystko w porządku, jeśli możesz nosić siatkę w jednym kawałku)
  2. Tkanina przyklej siatkę NeoPixel do wewnętrznej koszulki. Upewnij się, że siatka jest wyśrodkowana i nad miejscem, w którym faktycznie znajdują się płuca.
  3. Pozwól klejowi wyschnąć w razie potrzeby, upewnij się, że klej nie wsiąka na tył koszuli i zaklej koszulę. Po włączeniu siatki sprawdź, jak daleko można umieścić Arduino, baterię itp. Dla nas przylutowaliśmy przewody połączeniowe tak, aby nasze elementy elektroniczne znalazły się z tyłu koszulki.
  4. Zszyj pasek materiału, aby zrobić małą kieszonkę na elementy elektroniczne. Do kieszeni można wszyć niektóre elementy (np. Arduino), aby było bezpieczniejsze.
  5. Wytnij małą szczelinę, z której wyjdzie czujnik, dla nas znajdowała się ona na środku kołnierzyka z tyłu koszulki.

Zewnętrzna koszula: Powodem zewnętrznej koszuli jest to, że wygląda lepiej z zewnętrzną koszulą. Zewnętrzna koszulka ukrywa elektronikę i rozprasza światło z NeoPixels.

  1. Ostrożnie umieść zewnętrzną koszulę na wewnętrznej koszuli
  2. Sklej tkaninę lub przyszyj wewnętrzną koszulę do zewnętrznej koszuli tak, aby siatka wyglądała jak wyuczona, gdy jest podświetlona (na zdjęciu czarne kreski to miejsce, w którym znajduje się klej do tkaniny)

Krok 6: Rozwiązywanie problemów

Gratulacje! Masz teraz koszulkę do noszenia, która zapala się w zależności od poziomu zanieczyszczenia powietrza. Jeśli nie, prawdopodobnie trafiłeś w szkopuł (trafiliśmy w wielu), więc oto kilka sugestii dotyczących rozwiązywania problemów:

  • Pola lutownicze na listwach NeoPixel są niesamowicie małe, więc trudno jest zabezpieczyć połączenia siatki. Użyliśmy lutowia ołowiowego, wielożyłowego przewodu elektrycznego i sklejono połączenia na gorąco.
  • W wyniku tego, że NeoPixel jest tak blisko siebie na pasku, traciliśmy co najmniej 1 piksel za każdym razem, gdy przecinaliśmy nitkę. Używanie nożyczek było lepsze niż używanie noża dokładnego, wystarczy odkleić plastikową żywicę i odciąć.
  • Jeśli wyświetlacz NeoPixel pokazuje dziwny kolor (np. blaknięcie do czerwonego, dowolny odcień czerwieni zamiast bieli), prawdopodobnie sieć nie ma wystarczającej mocy. Aby wgrać kod musieliśmy wszystko odłączyć, wgrać kod, następnie odłączyć komputer, wpiąć baterię do Arduino, a na koniec wpiąć adapter laptopa do sieci.
  • Jeśli wyświetlacz NeoPixel pokazuje całkowicie losowe kolory w losowych odstępach czasu, upewnij się, że uziemienia są wspólne.
  • Używając kleju do tkanin, upewnij się, że nie używasz zbyt dużo, aby przesiąkał i zakleił koszulkę. Kładziemy drewnianą deskę między dwoma kawałkami tkaniny, które w przeciwnym razie stykałyby się ze sobą.

Mamy nadzieję, że podobała Ci się ta instrukcja! Następnym krokiem jest podłączenie sieci do przenośnej baterii i zabranie jej na przejażdżkę po ulicach, gdzie zanieczyszczenie powietrza z samochodów i inne zanieczyszczenia wywołają wyświetlanie.

Zalecana: