Tartalomjegyzék:

Interaktív gyermekláncfű: 11 lépés (képekkel)
Interaktív gyermekláncfű: 11 lépés (képekkel)

Videó: Interaktív gyermekláncfű: 11 lépés (képekkel)

Videó: Interaktív gyermekláncfű: 11 lépés (képekkel)
Videó: 11. Amputáció 2024, Július
Anonim
Image
Image
Készítse elő a NeoPixel gyűrűt
Készítse elő a NeoPixel gyűrűt

Ez a projekt bemutatja, hogyan lehet interaktív képet készíteni egy pitypangról. Sárga virágként kezdődik, a szirmok LED -jeivel, majd fehér pitypangórává változik, amelyet fel lehet fújni, hogy a magok szétszóródjanak.

Qi Jie gyönyörű alkotásán alapul, akinek képét Jessie Thompson és Zachory Berta egyetlen virágterve ihlette. Az enyémet szövetre készítettem, és egy gobelin karikába kereteztem, hogy a Tech és Textiles gyártótér falára menjek Devonban, Angliában, egy kezdő projekt példájaként, amely ötvözi a varrást az Arduino -val.

Videó Qi Jie fényfestéséről

Videó Jessie Thompson és Zachory Berta egyetlen virág tervezéséről

Mindkét meglévő projekthez rendelkezésre áll a kód, és azt hittem, hogy könnyű lesz elkészíteni, de az utasítások minimálisak voltak, és több kísérletbe telt, mire találtam egy működő módszert. Tehát itt vannak a teljes utasítások és időtakarékos tippek egy remixhez, amely egyesíti a tervek elemeit és a saját csípéseimet.

A részletek, amelyek nem működtek számomra, a végén azoknak szólnak, akiket érdekel, miért ezt az utat választottam.

Qi Jie fényfestési kódja

A kis virág kódja Jessie Thompson és Zachory Berta

Anyagok

  • Arduino UNO
  • Adafruit gyűrű 12 neopixelből
  • 5 V -os szalag 11 RGB LED -del
  • Hang mikrofon érzékelő
  • Jumper vezetékek
  • 5 V -os újratölthető akkumulátor USB A csatlakozóval
  • Nyomtatókábel (USB A -B kábel)
  • Ragasztó pontok vagy forró ragasztó
  • A4 -es kártya
  • 30 cm x 30 cm krém pamutszövet, például egy régi párnahuzat
  • Zöld szövet festék
  • Barna pamut szál
  • 70 cm x 50 cm hullámkarton, például pizza dobozok
  • Maszkolószalag
  • 9 hüvelykes hímzőkarika a kép bekeretezéséhez
  • 9 öntapadós tépőzáras fül

Eszközök

  • Letöltött egy Arduino IDE -vel rendelkező számítógépet
  • Forrasztópáka és ólommentes forrasztópáka
  • Kenyérlap az áramkör tesztelésére
  • Drótcsíkoló/vágók
  • Varrótű
  • Toll
  • Olló

1. lépés: Készítse elő a NeoPixel gyűrűt

Forrasztjon különböző színű vezetékeket a NeoPixel gyűrű hátoldalán lévő táp-, földelő- és adatpárnákhoz.

Ha a gyűrű másik verziója van, előfordulhat, hogy a vezetékek nem ugyanabban a helyzetben vannak, mint az enyém.

Jegyezze fel, hogy mely vezetékek a bemenet és a kimenet, valamint a pozitív, az adatok és a földelés, mert ezek jelölései a gyűrű alján találhatók, és nem láthatók, amikor a gyűrű a helyén van.

2. lépés: Vágja le a LED -ek csíkjait

Vágja le a LED -ek csíkjait
Vágja le a LED -ek csíkjait
Vágja le a LED -ek csíkjait
Vágja le a LED -ek csíkjait

Vágjon le 11 egyedi LED -et az RGB LED -ek csíkjából, ügyelve arra, hogy a középvonal mentén vágjon, hogy a vágás mindkét oldalán forrasztópárna maradjon. Dörzsöljön egy folt forrasztást minden párna felső oldalára.

Lépés: Forrasztja a LED -eket

Forrasztja a LED -eket
Forrasztja a LED -eket
Forrasztja a LED -eket
Forrasztja a LED -eket
Forrasztja a LED -eket
Forrasztja a LED -eket

Készítsen lyukat a kártya közepére, hogy illeszkedjen a mikrofonhoz. Ragasztási pontok segítségével ragassza a neo pixelek gyűrűjét és az egyes LED -eket az ábrán látható helyzetbe, ügyelve arra, hogy a LED -ek összes nyila azonos módon illeszkedjen, amikor a lánc össze van láncolva.

Forrasztja a kimeneti vezetékeket a gyűrűtől az első egyedi LED -ig, illessze a pozitív, a földelt és az adatvezetékeket mindkét LED azonos párnájához.

A leggyorsabb és legegyszerűbb módja a LED -ek összekapcsolásának, ha egy áthidaló vezetéket külön rézszálakká csupaszítunk. Csatlakoztasson egy szálat, hogy összekapcsolja a LED -ek forrasztott párnáit a következővel, pozitív, adatok és földeléssel. Csak egy gyors érintést igényel egy forró forrasztópáka, mert a párnákat az előző lépésben előforrasztották. Ahelyett, hogy ebben a szakaszban elvágná a vezetékeket, vigye át őket a LED tetején, hogy elérje a másik oldalon lévő forrasztott párnákat. Győződjön meg arról, hogy egyetlen vezeték sem keresztezi és nem érinti egymást, forrasztja ezeket a párnákat, és folytassa a körét az utolsó LED bemeneti oldaláig.

Ne csatlakoztasson vezetéket az utolsó LED kimeneti oldalához. Ellentétben néhány LED -del, amelyeket Ön ismerhet, nem kell körkörös áramkört befejeznie, amely visszavezeti az áramot a földhöz, mivel végig külön földelést és pozitív vonalakat vezetett. Vágja el az összes vezetéket, amelyek áthaladnak a LED -ek tetején, hogy csak a vezetékek kapcsolódjanak egymáshoz.

Tipp: Annak elkerülése érdekében, hogy a vezetékek megérintsék a sarkokat, fűzze vissza mindegyiket egy kis műanyag szigeteléscsíkba, amelyet korábban eltávolítottak.

4. lépés: A hát előkészítése

A hát előkészítése
A hát előkészítése
A hát előkészítése
A hát előkészítése

Csináljon egy másik lyukat a fehér kártyán a bemeneti vezetékekhez, és nyomja át őket.

Válassza szét a kárpit karika két gyűrűjét. Rajzolja le a legkisebb gyűrű külső oldalát 5 darab hullámkartonra, és vágja ki. Vágjon lyukakat a körök 3 közepébe, körülbelül 2 cm -re a szélétől, hogy gyűrűket készítsen, és vágjon mindegyikbe 5 mm -es rést. Ragassza a gyűrűket egymásra, illessze be a réseket, és ragassza fel a kártya többi körének egyikére.

Lépés: A mikrofon és az Arduino bekötése

A mikrofon és az Arduino bekötése
A mikrofon és az Arduino bekötése
A mikrofon és az Arduino bekötése
A mikrofon és az Arduino bekötése

Csatlakoztassa az Arduino -t a mikrofonérzékelőhöz és a LED -gyűrűhöz az ábrán látható módon. A TinkerCad segítségével készítettem az áramköri diagramot, amely nem rendelkezik mikrofonképpel, ezért lecseréltem egy másik érzékelőt, amely ugyanazokat a csapokat használja, és ugyanúgy működik a szimulációban.

A szimuláció megtekintéséhez keresse fel a https://www.tinkercad.com/things/5cgI2wluA0c oldalt. Húzza az érzékelőhöz rögzített kört az aktív területre, hogy szimulálja a mikrofonba fújást. A LED -ek 6 -os csíkokban vannak, így a szimuláció utolsó LED -je nem része a tervezésnek és nem világít.

6. lépés: Az Arduino programozása

Az Arduino programozása
Az Arduino programozása

Nyissa meg az Arduino IDE -t számítógépén, és indítson új vázlatot. Töröljön mindent a vázlaton belül, és másolja be és illessze be ezt a kódot

// A NeoPixel Ring egyszerű vázlatával adaptálva (c) 2013 Shae Erisson // és az érzékelő kódja a https://www.hackster.io/ingo-lohs/first-test-37-s… #include // Melyik tű a Az Arduino csatlakozik a NeoPixelshez? #define PIN 6 // Hány NeoPixel kapcsolódik az Arduino -hoz? #define NUMPIXELS 23 // Amikor beállítjuk a NeoPixel könyvtárat, megmondjuk, hogy hány képpont és melyik tűt kell használni a jelek küldéséhez. // Ne feledje, hogy a régebbi NeoPixel csíkok esetében előfordulhat, hogy módosítania kell a harmadik paramétert-a lehetséges értékekről további információt a strandtest // példában talál. Adafruit_NeoPixel pixelek = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); int delayval = 500; // késés fél másodperc int szenzorPin = A0; // válassza ki az érzékelő bemeneti érintkezőjét int sensorValue = 0; // változó az érzékelőből érkező érték tárolására // tetszőleges küszöbszint, amely az analóg bemeneti void setup tartományában van () {pixels.begin (); // Ezzel inicializálja a NeoPixel könyvtárat. pixels.setBrightness (20); // Fényerő beállítása Serial.begin (9600); } void loop () {// Egy NeoPixel halmaz esetén az első NeoPixel 0, a második 1, egészen a képpontok számáig mínusz egy. // Pitypang LED -ek // pixelek. A szín RGB értékeket vesz fel, 0, 0, 0 és 255, 255, 255 pixel között. SetPixelColor (0, pixel. Color (0, 0, 0)); // Ki. pixels.setPixelColor (1, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (2, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (3, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (4, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (5, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (6, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (7, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (8, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (9, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (10, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (11, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (12, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (13, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (14, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (16, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (17, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (18, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (19, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (20, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (21, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (22, pixels. Color (0, 0, 0)); // Ki. pixels.show (); // Ez elküldi a frissített pixelszínt a hardvernek. delay (delayval*6); // Fokozatos váltás virágról magfejre // pixel. A szín RGB értékeket vesz fel, 0, 0, 0 és 255, 255, 255 pixel között. setPixelColor (0, pixel. Color (0, 0, 0)); // Ki. pixels.setPixelColor (1, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (2, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (3, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (4, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (5, pixel. Color (226, 246, 255)); // kékesfehér pixelek.setPixelColor (6, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (7, pixel. Color (226, 246, 255)); // kékesfehér pixelek.setPixelColor (8, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (9, pixel. Color (226, 246, 255)); // kékesfehér pixelek.setPixelColor (10, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (11, pixel. Color (226, 246, 255)); // kékesfehér. pixels.setPixelColor (12, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (13, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (14, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (16, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (17, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (18, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (19, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (20, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (21, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (22, pixels. Color (0, 0, 0)); // Ki. pixels.show (); // Ez elküldi a frissített pixelszínt a hardvernek. késleltetés (delayval*6); // Vetőfej LED -ek pixels.setPixelColor (0, pixels. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (1, pixels. Color (0, 0, 0)); // off pixels.setPixelColor (2, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (3, pixels. Color (0, 0, 0)); // off pixels.setPixelColor (4, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (5, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (6, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (7, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (8, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (9, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (10, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (11, pixel. Color (226, 246, 255)); // off pixels.setPixelColor (12, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (13, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (14, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (16, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (17, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (18, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (19, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (20, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (21, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (22, pixels. Color (0, 0, 0)); // Ki. pixels.show (); // Ez elküldi a frissített pixelszínt a hardvernek. késleltetés (delayval*3); // Késleltetés egy bizonyos ideig (ezredmásodpercben). pixels.setPixelColor (0, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (1, pixels. Color (0, 0, 0)); // off pixels.setPixelColor (2, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (3, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (4, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (5, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (6, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (7, pixel. Color (255, 165, 0)); // Narancssárga. pixels.setPixelColor (8, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (9, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (10, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (11, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (12, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (13, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (14, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (16, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (17, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (18, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (19, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (20, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (21, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (22, pixels. Color (0, 0, 0)); // Ki. pixels.show (); // Ez elküldi a frissített pixelszínt a hardvernek. késleltetés (delayval*3); // Késleltetés egy bizonyos ideig (ezredmásodpercben). pixels.setPixelColor (0, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (1, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (2, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (3, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (4, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (5, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (6, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (7, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (8, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (9, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (10, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (11, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (12, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (13, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (14, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (16, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (17, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (18, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (19, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (20, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (21, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (22, pixels. Color (0, 0, 0)); // Ki. pixels.show (); // Ez elküldi a frissített pixelszínt a hardvernek. késleltetés (késleltetés); // Késleltetés egy bizonyos ideig (ezredmásodpercben). // Olvassa el az érzékelő értékét és jelenítse meg a soros monitorban sensorValue = analogRead (sensorPin); Serial.println (sensorValue); késleltetés (250); // Míg az érzékelő értéke kisebb, mint a küszöb, ellenőrizze az érzékelő értékét, és nyomtassa ki a soros monitoron. Ha az érték küszöbérték feletti, a vázlat folytatható, miközben (sensorValue <küszöb) {sensorValue = analogRead (sensorPin); Serial.println (sensorValue); késleltetés (250); } // Első szél LED -ek pixels.setPixelColor (0, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (1, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (2, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (3, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (4, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (5, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (6, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (7, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (8, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (9, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (10, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (11, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (12, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (13, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (14, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (15, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (16, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (17, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (18, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (19, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (20, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (21, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (22, pixels. Color (0, 0, 0)); // Ki. pixels.show (); // Ez elküldi a frissített pixelszínt a hardvernek. késleltetés (késleltetés); // Késleltetés egy bizonyos ideig (ezredmásodpercben). // Második szél LED -ek pixels.setPixelColor (0, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (1, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (2, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (3, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (4, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (5, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (6, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (7, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (8, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (9, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (10, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (11, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (12, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (13, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (14, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (15, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (16, pixels. Color (0, 0, 0)); // Ki. pixels.setPixelColor (17, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (18, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (19, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (20, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (21, pixel. Color (226, 246, 255)); // Kékesfehér. pixels.setPixelColor (22, pixel. Color (226, 246, 255)); // Kékesfehér.pixels.show (); // Ez elküldi a frissített pixelszínt a hardvernek. késleltetés (2000); // Késleltetés egy bizonyos ideig (ezredmásodpercben). }

Csatlakoztassa Arduino készülékét a számítógéphez az USB nyomtatókábellel

Lépjen az Eszközök> Tábla menübe, és válassza ki az Arduino/Genuino UNO táblát

Lépjen a Portra, és győződjön meg arról, hogy a kártya a megfelelő USB -porthoz van csatlakoztatva. Ha nem biztos benne, húzza ki az Arduino csatlakozót, és nézze meg, melyik port tűnik el a listából. Csatlakoztassa újra, és a port újra megjelenik.

Töltse fel a vázlatot a megjegyzésekkel ellátott fotón látható Feltöltés ikonra kattintva. Fények villogniuk kell az Arduino -n feltöltés közben. Amikor befejezi a feltöltést, a neo pixelgyűrű LED -jeinek fele felgyullad, majd sárga színűre vált, majd teljes fehér gyűrűre vált. Fújja be a mikrofont az áramkör teszteléséhez. A külső rétegekben lévő LED -eknek fel kell világítaniuk. Ellenőrizze a forrasztást minden LED -en, amely nem működik.

7. lépés: A színek, a fényerő és az érzékelő küszöbértékének módosítása

A színek, a fényerő és az érzékelőküszöb megváltoztatása
A színek, a fényerő és az érzékelőküszöb megváltoztatása
A színek, a fényerő és az érzékelőküszöb megváltoztatása
A színek, a fényerő és az érzékelőküszöb megváltoztatása

Színek

A LED -ek színeit RGB (piros zöld kék) színértékekkel állítják be. Ha inkább más színeket szeretne használni, mint én, a kívánt színek értékeit megtalálhatja egy online RGB színkalkulátorral, például www.w3schools.com/colors/colors_rgb.asp

A LED kikapcsolásához használja a 0, 0, 0 értékeket.

A LED fehérre állításához használja a 255, 255, 255 értékeket. Az előző lépésben használt kód kékes fehéret használ a 226, 246, 255 értékekkel, és egy narancssárgát a 255, 165, 0 értékekkel.

Fényerősség

A LED -ek fényerejének megváltoztatásához lépjen a kód üres beállítási szakaszába, és keresse meg a következő kódsort:

pixels.setBrightness (20); // Állítsa be a fényerőt

A zárójelben lévő szám szerkesztésével módosíthatja a LED -ek fényerejét.

Érzékelő küszöbértéke

Amikor futtatja a programot, a NeoPixel gyűrű fele sárga színnel kezdődik, virágot ábrázolva, és fokozatosan a fehér LED -ek teljes körére változik, hogy a magfejet ábrázolja. Ekkor a programnak szünetelnie kell, amíg rá nem fúj a mikrofon érzékelőjére. Ha a program folytatódik és a LED -ek külső rétegei világítanak anélkül, hogy az érzékelő aktiválná őket, menjen a kód üres beállítási szakaszába, és csökkentse az alább látható értéket. Növelje az értéket, ha a program leáll, de nem reagál, amikor ráfúj az érzékelőre.

const int küszöb = 200;

8. lépés: Az áramkör tartósabbá tétele

Az áramkör állandóbbá tétele
Az áramkör állandóbbá tétele

Ha az áramkör működik, húzza ki az Arduino -t a számítógépről, és távolítsa el a mikrofonérzékelőt a kenyértábláról. Forrasztja a vezetékeket az Arduino -tól a mikrofon -érzékelőig, hogy ugyanazt az áramkört állandóbbá tegye. Hátulról nyomja be a mikrofont a kártya lyukán. Ha szükséges, óvatosan hajlítsa meg a mikrofont 90 fokkal, hogy a tábla laposan feküdjön a kártya mögött. Csatlakoztassa az akkumulátort az Arduino -hoz a nyomtatókábel segítségével, és az egész sorozatnak működnie kell.

9. lépés: Hozzon létre egy képet

Hozzon létre egy képet
Hozzon létre egy képet

Készítsen lyukat a szövetébe, ahol a mikrofont szeretné elhelyezni. Forró forrasztópáka segítségével égettem egy kis lyukat, és ollóval vágtam, amíg a mikrofon be nem illeszkedett. Festse és varrja virágát az anyagra. Amikor a festék megszárad, rögzítse a festményt a hímzőkarikához, és vágja le a felesleges szövetet, hagyva egy kis szegélyt.

Ha meg szeretné nézni, hogy az áramkör bármely összetevője átlátszik -e az anyagon, ideiglenesen helyezze a szövetet és a karikát a kártya tetejére úgy, hogy a mikrofon a lyukon át mutasson. Ha szükséges, fedje le az áramkört maszkolószalag rétegekkel, időnként ellenőrizze, amíg az alkatrészek már nem jelennek meg. A LED -ek elég fényesek ahhoz, hogy egy maszkolószalagon keresztül láthatók legyenek. Ha még több réteget kell hozzáadnia, akkor a LED -eket világosabbá teheti a kód beállításával a 7. lépésben látható módon.

Helyezze vissza az anyagot és a karikát a kártya tetejére, mint korábban, és rögzítse a helyére úgy, hogy az extra szövetet a kártya hátoldalára ragasztja.

10. lépés: Összerakás

Összerakása
Összerakása

Ragassza fel a fehér kártyát a hullámkarton körre, körülvéve a mikrofont, de ne az Arduino -t és az akkumulátorcsomagot, amelyeknek körbe kell menniük a karton szélén, és a vezetékek áthaladnak a réseken.

Rögzítse az utolsó kartonkört tépőzárral, hogy hozzáférjen az akkumulátorhoz. Készítsen egy lyukat a kartonba, ahová akasztani szeretné a falon lévő horogra.

11. lépés: Tanulj a hibákból

Tanulás a hibákból
Tanulás a hibákból
Tanulás a hibákból
Tanulás a hibákból
Tanulás a hibákból
Tanulás a hibákból

Az első kísérletem áramköri matricákkal és rézszalaggal történt. Az áramköri matricák apró LED -ek, amelyeket rézpárnákkal ellátott matricákra szerelnek fel. Qi Jie cégétől, a Chibitroniks -tól származnak, és azt hittem, tökéletesek lesznek.

Nem tudtam megbízható kapcsolatot létesíteni rézszalag vagy ezüst szalag használatával, és amikor a huzalokat a matricákhoz forrasztottam, továbbra is csak egy 3 LED -es matrica sorozatát tudtam megvilágítani 9 V -os elem használatával. Világossá vált, hogy nem több fényprojekthez készültek, mint reméltem. Amikor alaposabban megnéztem az áramköri matricákról szóló weboldalt, egy 4 lámpával ellátott projekt más típusú LED -eknek bizonyult. Az áramköri matricákat 12 V -os akkumulátorral táplálhatnám, de túl nagy lenne ahhoz, hogy elférjen a képen.

Aztán kipróbáltam a varrható LED -eket. Azt hittem, hogy csak a táp és a föld csatlakoztatása könnyebb, mint a programozható LED -ek, amelyek táp-, föld- és adatvezetékekkel rendelkeznek. De kiderült, hogy ez egy bonyolultabb áramkör, amely extra tápegységet és MOSFET -et igényel, ami nekem nem volt. Használhattam volna varrható NeoPixelt, de drágábbak.

Így néhány hamis indítás után végül egy sor programozható LED -et kaptam, amelyek olcsók és könnyen használhatók.

Ajánlott: