INHOUDSOPGAWE:

EqualAir: draagbare NeoPixel -skerm wat deur lugbesoedelingssensor veroorsaak word: 7 stappe (met foto's)
EqualAir: draagbare NeoPixel -skerm wat deur lugbesoedelingssensor veroorsaak word: 7 stappe (met foto's)

Video: EqualAir: draagbare NeoPixel -skerm wat deur lugbesoedelingssensor veroorsaak word: 7 stappe (met foto's)

Video: EqualAir: draagbare NeoPixel -skerm wat deur lugbesoedelingssensor veroorsaak word: 7 stappe (met foto's)
Video: Bluetooth Controlled Lightsaber XENO3 Pixel Core 1.0 Review 2024, Junie
Anonim
Image
Image

Die doel van die projek is om 'n draagbare t-hemp te maak wat 'n indrukwekkende grafiek vertoon wanneer lugbesoedeling bo 'n vasgestelde drempel is. Die grafika is geïnspireer deur die klassieke spel "baksteenbrekers", deurdat die motor soos 'n spaan is wat die uitlaatpyp (wat soos balle is) uitspoeg wat stukke van die long "tref" en dit afbreek. As lugbesoedeling bo 'n drumpel is (byvoorbeeld as u met motors loop), begin die andersins onskadelike wit hemde op die skerm speel. Hierdie projek is gebou deur Jordan, Mary, Nick en Odessa vir 'n klas genaamd The Art and Science of Making.

Stap 1: Versamel u materiaal

Vertoon:

  • 6 * Adafruit NeoPixel Digitale RGBW LED Strip - Wit PCB 144 LED/m
  • 1 * Arduino Mega (volgens die Adafruit -webwerf benodig 'n Arduino Mega meer as 'n paar repies NeoPixel's)
  • 1 * 9 volt battery
  • 1 * skootrekenaarlaaier

Sensing:

1 * Adafruit MiCS5524 -sensor (dit was die lugbesoedelingssensor wat ons gebruik het omdat dit goedkoop is. Die nadeel is dat dit veelvuldige gasse waarneem en nie onderskei nie)

Ander:

2 * wit t-hemp (ons stel voor dat u te groot t-hemde koop, want 1) daar moet plek wees vir die hardeware en 2) u moet 'n bietjie ekstra stof afsny om 'n sak te maak steek die hardeware weg)

Gereedskap:

  • Springers
  • Protobord
  • Kondensator
  • Weerstand
  • Draadsnyer
  • Soldeermasjien
  • Naaimateriaal en/of stofgom

Stap 2: Monteer die NeoPixel Grid

Voeg die sensor by
Voeg die sensor by

Om die NeoPixel-rooster te monteer, moet die oorspronklike NeoPixel-stroke gesny en weer gesoldeer word, afhangende van die gewenste roosterafmetings. Vir hierdie ontwerp het ons 'n 47 x 16 rooster NeoPixels gebou:

  1. Sny die stroke van 1 meter (144 NeoPixel) in 47 NeoPixel-stappe, en wees versigtig om ruimte aan die kante van die stroke te laat soldeer (daar is klein metaaldrade wat aan die onderkant van die NeoPixels sigbaar is). Maak seker dat u die hele soldeerblokkie sny sodat dit nie te klein is nie (omdat dit eers so klein is). Die rede waarom die stroke 47 pixels in plaas van (144/3 = 48) pixels lank is, is dat u ten minste een verloor as u dit sny omdat die NeoPixel so na aan mekaar is.
  2. Plaas die kolomme versigtig langs mekaar (gebruik elektriese band om dit op hul plek te hou) en maak seker dat die afmetings na wens is (47x16). Plaas die kolomme in 'n S-patroon.
  3. Die NeoPixels het leidings vir spanning-in, ingang en aarding wat in die volgende strook aan hul eweknieë gekoppel moet word. Koppel die kolomme se leidings met 'n meerstrengsdraad in 'n S-patroon, en wees versigtig om die korrekte drade aan te sluit.
  4. Laat die leidrade aan die ente van die rooster (daar moet 2 punte wees - een waar u begin het, en een waar u die S -patroon geëindig het), en voeg opsioneel draadverlengings by vir gemak. U kan ook die leidings aan die einde vasmaak of andersins beveilig. Warm gom oor die verbindings om dit vas te maak.
  5. Maak seker dat u nuut gemonteerde rooster veilig is deur nog 'n paar lae elektriese band of ander gom aan die agterkant te voeg.

Nou moet u 'n werkrooster hê wat u kan toets. Onder die NeoPixel Matrix -biblioteek kan u die matrixtest -voorbeeldkode gebruik om te sien of die rooster soos verwag werk. As dit die geval is, moet dit soos die foto hierbo lyk (ignoreer die Arduino Uno aan die voorkant, dit was om iets anders te toets)

Stap 3: Voeg die sensor by

'N Belangrike aspek van hierdie projek is die sensor, 'n Adafruit MiCS5524, wat verskillende gasse in die lug kan opspoor en die intensiteit daarvan kan analiseer deur analoog insette.

  1. Maak eerstens seker dat die drie leidings na die sensor - spanning, ingang en aarding - korrek bedraad is (gebruik verkieslik gepaste gekleurde draad om dit te help).
  2. Koppel die ingang aan op die 5V-uitgang op die Arduino-bord en verbind die grond met die grond op die bord.
  3. Koppel dan die uitset aan die A0 (of analoge pen van u keuse) op die Arduino -bord. Dit is alles wat nodig is om die sensor aan die Arduino te koppel.
  4. Gebruik die seriële monitor opsioneel om te verifieer dat die sensor deur die sensor gerapporteer word (die lesings moet om een nommer beweeg en verander wanneer die sensor naby 'n bron van koolstofmonoksied of ander dampe geplaas word).

Aanlyn is daar instruksies om veral hierdie sensor te kalibreer sodat dit sensitief is vir 'n verandering in die omgewing. Wat ons gedoen het, was om die sensor vir 'n paar uur te verlaat om vas te stel wat 'n 'gewone' leesafstand is vir die kamer waarin dit was. Toe, om die vertoning van die skerm te toets, gebruik ons 'n watte wat in vryfalkohol geweek is sodat die sensorlesing sal bo die vasgestelde drempel styg om een lus van die grafiek te begin.

Stap 4: Ontfout die kode

Image
Image

Aangeheg is die kode. Let op dat daar baie opskrifte bo -aan is. Om die vereiste opskrifte af te laai, klik in die Arduino IDE op skets, sluit biblioteek in en bestuur dan biblioteke. Voordat u die aangehegte lêer kan oplaai, moet u die volgende biblioteke aflaai:

  • Adafruit NeoPixel
  • Adafruit NeoMatrix
  • Adafruit GFX biblioteek

Nadat u hierdie biblioteke afgelaai het, in die Arduino IDE, onder lêer, voorbeelde, vind u voorbeeldkode wat aangepas kan word om te toets terwyl u gaan. Strandtoets en matrixtest was byvoorbeeld baie handig om die NeoPixel -rooster te toets. Aanlyn is dit ook maklik om monstertoetse vir die lugbesoedelingsensor te vind.

Hier is 'n paar kode -reëls wat u kan wysig voordat u die lêer kan oplaai en die werkrooster kan sien:

#definieer PIN 6

#definieer SENSOR_PIN A0

Die pen 6 moet oorgeskakel word na die speldnommer waarmee die NeoPixel -rooster aan die Arduino geheg is

Die pen AO moet oorgeskakel word na die pin nommer waarmee die sensor aan die Arduino gekoppel is

#definieer STOP 300

#definieer NUM_BALLS 8

Adafruit_NeoMatrix matriks = Adafruit_NeoMatrix (GRID_COLS, GRID_ROWS, PIN, NEO_MATRIX_TOP + NEO_MATRIX_LEFT + NEO_MATRIX_COLUMNS + NEO_MATRIX_ZIGZAG, NEO_GRB + NEO_K;

Die getal 300 definieer hoeveel pixels van die long afgebreek word om as een siklus van die vertoning te tel. Deur die getal te verhoog, word die siklus langer (byvoorbeeld meer van die longe word afgebreek) en omgekeerd.

Die nommer 8 definieer die aantal "balle" (uitlaat) wat uit die motor kom

As u nou die instruksies gevolg het om die rooster presies te konstrueer, behoort die opset van die NeoMatrix te werk. Dit is egter net goed om daarop te let dat hierdie opstelling sê dat die 0, 0-koördinaat links bo is, dat ons kolomme stroke verbind en die stroke in 'n S-formasie verbind is. As u rooster dus perfek lyk, behalwe dat dit weerspieël of 90 grade af is, is dit waarskynlik dat u die rooster anders opgestel het en die kode hier moet verander. Aan die einde van hierdie stap behoort u iets te hê wat soos die video lyk; ons aktiveer die t-hemp met 'n watte wat in alkohol gevryf is, die grafika speel een lus en kan nie weer geaktiveer word totdat die lus voltooi.

Stap 5: Sit die T-hemp saam

Yay! Noudat die skerm, die sensor en die kode werk, is dit tyd om alles aanmekaar te sit. Uiteindelik het ons al die hardeware aan die binneste hemp vasgemaak, en dan verberg die buitenste hemp bo alles. Die t-hemde was te groot, so ons het 'n strook van die onderkant afgesny. Dit het ons die materiaal gegee wat ons nodig gehad het om 'n sak vas te maak om die hardeware te verberg.

Binne hemp:

  1. Plaas eers stroke elektriese band agter op die NeoPixel -rooster net om dit vas te maak (u weet dat dit goed gaan as u die rooster in een stuk kan dra)
  2. Plak die NeoPixel-rooster op die binnekant van die t-hemp. Maak seker dat die rooster gesentreer is en waar die longe eintlik is.
  3. Laat die gom droog word soos nodig, maak seker dat die gom nie aan die agterkant van die hemp sypel nie en plak die hemp toe. Sodra die rooster aangeskakel is, kyk hoe ver die Arduino, battery, ens. Vir ons het ons die trui se drade gesoldeer sodat ons elektroniese komponente agter in die hemp sou wees.
  4. Werk die lap stof vas om 'n klein sak vir die elektroniese komponente te maak. U kan 'n paar komponente in die sak vasmaak (byvoorbeeld die Arduino) om dit veiliger te maak.
  5. Sny 'n klein spleet vir die sensor om uit te kyk, dit was vir ons in die middel van die kraag aan die agterkant van die hemp.

Buithemp: Die rede vir die buitenste hemp is omdat dit beter lyk met 'n buitenhemp. Die buitenste hemp verberg die elektronika en versprei die lig van die NeoPixels.

  1. Plaas die buitenste hemp versigtig oor die binneste hemp
  2. Stof gom of stik die binneste hemp aan die buitekant van die hemp vas sodat die rooster leer wanneer dit verlig word (in die prentjie is die swart strepies waar die stofgom is)

Stap 6: Probleemoplossing

Geluk! U het nou 'n draagbare t-hemp wat brand op grond van lugbesoedelingsvlakke. As dit nie die geval is nie, dan tref u waarskynlik 'n knou (ons tref baie), so hier is 'n paar voorstelle om probleme op te los:

  • Die soldeerblokkies op die NeoPixel -stroke is ongelooflik klein, so dit is moeilik om die netwerkverbindings veilig te kry. Ons het loodsoldeer, meerstrengs elektriese draad gebruik en die verbindings warm vasgeplak.
  • As gevolg van die feit dat die NeoPixel so naby aan mekaar was, het ons ten minste 1 pixel verloor wanneer ons die draad sny. Dit was beter om 'n skêr te gebruik as om 'n exacto -mes te gebruik, maar trek die plastiekhars af en sny dit af.
  • As die NeoPixel -skerm 'n vreemde kleur vertoon (byvoorbeeld 'n vervaag na rooi, enige rooi skakering in plaas van wit), is dit waarskynlik omdat die netwerk nie genoeg krag kry nie. Om die kode op te laai, het ons alles ontkoppel, die kode opgelaai, dan die rekenaar ontkoppel, die battery in die Arduino gekoppel en uiteindelik die skootrekenaar -adapter op die rooster ingeprop.
  • As die NeoPixel -skerm heeltemal ewekansige kleure met ewekansige tussenposes vertoon, moet u seker maak dat die gronde algemeen is.
  • As u stofgom gebruik, moet u nie te veel gebruik sodat dit deurtrek nie en die t-hemp toegeplak word. Ons sit 'n houtplank tussen twee stukke stof wat andersins raak.

Ons hoop dat u hierdie instruksies geniet het! Die volgende stap is om die netwerk aan te sluit op 'n draagbare battery en 'n draai op straat te maak, waar lugbesoedeling deur motors en ander besoedelstowwe die vertoning sal veroorsaak.

Aanbeveel: