Talaan ng mga Nilalaman:

Arduino Light Up Sweater: 9 Mga Hakbang
Arduino Light Up Sweater: 9 Mga Hakbang

Video: Arduino Light Up Sweater: 9 Mga Hakbang

Video: Arduino Light Up Sweater: 9 Mga Hakbang
Video: UP and DOWN counter arduino MGA 2024, Hulyo
Anonim
Image
Image

Ang mga pangit na panglamig na panglamig ay isang sangkap na hilaw ng mga piyesta opisyal. Bawat taon kailangan mong itaas ang iyong laro at magsuot ng pinakamahusay na panglamig na maaari mong makita. Ngunit sa taong ito maaari mong gawin ang isang mas mahusay at gawin ang pinakamahusay na panglamig. Gumagamit kami ng Adafruit Wearables upang lumikha ng isang magandang naiilawan na panglamig na siguradong mapahanga ang iyong mga kaibigan at pamilya.

Lumikha ang Adafruit ng ilang magagaling na proyekto sa paligid ng Wearables kaya ginagamit namin ang kanilang binagong code upang maipatupad ang proyektong ito mula sa kanilang proyekto sa Sparkle Skirt.

Sa tutorial na ito gagawin mo:

  • Alamin na gumamit ng mga Nakasuot
  • I-code ang iyong pangunahing board ng Flora, accelerometer, at NeoPixels upang magaan ang ilaw gamit ang Arduino

Hakbang 1: Pagsisimula

Nagsisimula
Nagsisimula

Gagamitin namin ang Adafruit Flora Wearables, isang baterya pack, conductive thread, at isang holiday sweater. Kakailanganin mo rin ang ilang regular na thread, karayom, at nail polish. Ang lahat ay magkakaroon ng kahulugan sa oras. Ang aming bersyon ay magbibigay sa Santa ng ilaw mga mata ngunit sinusuportahan namin ang lahat ng mga relihiyon at pista opisyal at paniniwala, kaya maging malikhain!

  • Adafruit Flora Main Board (https://www.adafruit.com/product/659)
  • Flora Accelerometer (https://www.adafruit.com/product/1247)
  • Flora RGB NeoPixels (https://www.adafruit.com/product/1260)
  • Battery Pack (https://www.adafruit.com/product/727)
  • Conductive Thread (https://www.adafruit.com/product/641)

Hakbang 2: Layout

Layout
Layout

Kailangan naming i-layout ang mga pixel, pangunahing board, at accelerometer bago simulan ang proseso ng pagtahi. Ang mga pixel ay magkakaroon ng koneksyon ng data, + para sa lakas, at - para sa lupa. Ang accelerometer ay nangangailangan ng mga koneksyon para sa 3V, SCL, SDA, at ground.

I-layout ang mga pixel, pangunahing board, at accelerometer sa panglamig habang balak mong i-stitch ito. Siguraduhin na hindi ka tatawid sa anumang pagtahi dahil magdudulot ito ng shorts. Dahil ginagawa namin ang mukha ng aming board at nakaharap ang NeoPixels ginagamit namin ang 3V, Pin 9, at Ground upang ikonekta ang NeoPixels.

Ang mga NeoPixels ay may isang arrow na nagpapakita kung paano dapat pumunta ang koneksyon ng data mula sa pangunahing board ng Flora patungo sa susunod na NeoPixel. Siguraduhin na ang lahat ng NeoPixels ay nakapila na nakaharap sa parehong paraan.

Hakbang 3: Mga Tip sa Pagtahi

Ang mahalagang bahagi ng pagtahi ay tatlong bagay; walang shorts / tawiran ng mga tahi, mahigpit na buhol kapag nagtatapos ng isang tusok, at mahusay na koneksyon sa Wearables.

Walang Shorts / Stitch Crossing

Tiyaking i-layout ang iyong mga Wearable upang hindi tumawid ang iyong pagtahi. Ang mga linya ay hindi dapat tumawid, malinaw naman. Kapag mayroon kang isang layout na tinitiyak na ang lahat ng mga tahi ay mananatiling magkahiwalay, kailangan mong tiyakin kapag na-stitch mo na ito ay masikip. Kung nag-iiwan ka ng labis na katahimikan maaari nitong payagan ang thread na hawakan. Kapag natapos mo ang isang tusok gupitin ang labis na mga dulo upang walang mga ligaw na mga thread.

Masikip na Knot

Kapag nagtatapos ng isang linya ng tusok, titiyakin ng isang masikip na buhol ang stitch na hindi maluwag. Ang bilis ng kamay ay ilagay ang isang maliit na maliit na piraso ng malinaw na polish ng kuko sa buhol at hayaan itong matuyo. Tinutulungan nitong hawakan ang buhol sa lugar, katulad ng pandikit. Ang kondaktibong thread ay hindi rin nagtataglay sa isang magkabuhul-buhol bilang regular na thread kaya't lubos kong inirerekumenda ang paggamit ng nail polish o maaari kang umalis sa pag-stitching na maluwag.

Magandang Mga Koneksyon

Tiyaking masikip ang mga loop sa mga pin. Makakatulong ito na matiyak na kung hindi gumana ang iyong circuit, alam namin na hindi ang mga koneksyon ang problema. Maaari mong loop sa pamamagitan ng mga pin 2-3 beses upang matiyak na palaging magiging isang mahusay na koneksyon.

Mga Tip / Trick

Siguraduhin na ang iyong item ng damit ay hindi pinapagana kapag kinuha mo ito at naka-off. Ito ang pinakamadaling paraan upang hawakan ang mga thread at maging sanhi ng isang maikli. Huwag buksan ang iyong pack ng baterya hanggang sa maging komportable ang item ng damit.

Hakbang 4: Stitching the Components

Stitching the Components
Stitching the Components
Stitching the Components
Stitching the Components

Ang unang piraso na kailangan naming ikabit ay ang Flora Main Board. I-stitch ang board sa iyong panglamig gamit ang regular na thread sa pamamagitan ng dalawang mga pin na hindi mo balak gamitin. Hahawakan nito ang pisara sa lugar at gawing mas madali ang pagtahi gamit ang kondaktibo na thread. Ang ilang simpleng mga loop ay sapat na upang hindi ito gumalaw.

Susunod, kailangan mong tahiin ang apat na koneksyon mula sa Flora Main Board at ang Accelerometer. Ito ang magiging Power, Ground, SCL, at SDA. Kung inilagay mo ang Accelerometer sa kaliwang tuktok ng pangunahing board ang mga koneksyon ay direktang pumila. Kaya magkakaroon ka ng apat na magkakahiwalay na tahi upang ikonekta ang dalawang board. Gumamit ng isang maliit na malinaw na polish ng kuko sa magkabilang mga buhol ng pagtatapos upang maiwasang malutas ang mga ito. Ang isang maliit na polish ng kuko sa mga board ay hindi makakasakit sa kanila.

Sa wakas, kailangan mong ikonekta ang mga koneksyon ng 3V, lupa, at data mula sa Flora Main board sa NeoPixels. Maaari kang gumawa ng dalawang mahaba, tuloy-tuloy na mga tahi para sa lupa at lakas dahil ang mga iyon ay nasa ilalim at tuktok ng NeoPixels. Para sa mga koneksyon ng data mula sa Pin 9 kailangan mong gumawa ng magkakahiwalay na mga tahi mula sa bawat NeoPixel hanggang sa susunod.

Hakbang 5: Arduino IDE

Ang Flora Main Board ay tugma sa Arduino kaya gagamitin namin ang Arduino IDE para sa aming code. Maaari mong i-download ang pinakabagong bersyon sa pamamagitan ng link na ito.

Mayroon ding isang bersyon ng web sa pamamagitan ng link na ito.

Mayroong apat na mga silid-aklatan na kailangang idagdag upang magamit ang aming NeoPixels at Accelerometer. Pumunta sa Sketch, Isama ang Library, Pamahalaan ang Mga Aklatan. Para sa bawat isa kailangan mong hanapin ito sa pamamagitan ng pangalan, piliin ang pinakabagong bersyon, at i-click ang i-install.

  • Adafruit NeoPixel
  • Pinagsamang Sensor ng Adafruit
  • Adafruit TSL2561
  • Adafruit LSM303DLHC

Kapag na-install na ang mga ito at kumpleto na ang pagtahi handa na kaming subukan ang aming panglamig upang matiyak na gumagana ang lahat.

Hakbang 6: Mga Script ng Pagsubok

Mga Script ng Pagsubok
Mga Script ng Pagsubok

Upang subukan ang aming proyekto kailangan naming ikonekta ang aming pangunahing board ng Adafruit sa iyong computer gamit ang isang USB cable. Pagkatapos ay pumunta sa Tools, Port, at piliin ang iyong Flora Main board sa listahan.

Ang unang susubukan namin ay kung gumagana nang maayos ang accelerometer. Pumunta sa File, Mga Halimbawa, Adafruit LSM303DLHC, accelsensor. Bubuksan nito ang isang script na sumusubok kung ang sensor ay konektado at binabasa ang mga halagang pinagsama. Mag-upload sa iyong board at buksan ang Serial Monitor sa kanang tuktok ng Arduino IDE. Kung nakikita mo ang mga halagang nagbabago sa Serial Monitor, tulad ng larawan, habang inililipat ang accelerometer pagkatapos ay gumagana ito!

Ang pangalawang bagay na susubukan namin ay kung gumagana ang NeoPixels. Pumunta sa File, Mga Halimbawa, Adafruit NeoPixels, strandtest. Bago namin patakbuhin ang script na ito, baguhin ang Pin sa 9 at bilang ng mga pixel sa 6 (o kung ano ang iyong ginagamit para sa iyong proyekto). Mag-upload sa iyong board at kung ang lahat ng mga pixel ay lumiliwanag handa ka na para sa huling script!

Hakbang 7: Pangwakas na Script

Pangwakas na Script
Pangwakas na Script

Panahon na upang mai-load ang aming pangwakas na code. Kopyahin ang code sa ibaba sa isang bagong file ng proyekto. Ang Pin ay nakatakda sa 9 at ang bilang ng mga NeoPixels ay nakatakda sa 6. Kung gumagamit ka ng ibang bagay, baguhin ang mga bago patakbuhin ang script na ito. Maaari mong ayusin ang mga paboritong kulay sa pamamagitan ng pag-aayos ng mga halaga ng R, G, & B mula 0-255. Maaari ka ring magdagdag ng higit pang mga paboritong kulay sa pamamagitan ng pagdaragdag ng isang bagong linya. Ang threshold ng paglipat ay maaaring iakma din. Kung mas mababa ang numero, mas madaling makita ang paggalaw at i-on ang NeoPixels. Kapag gumawa ka ng anumang mga pagbabago na nais mo, i-save at i-upload sa iyong Flora Main Board. Dapat mong makita ang mga pag-iilaw ng mga pixel kung ilipat mo ang accelerometer sa paligid. Kapag nakita mo na maaari kang mag-unplug mula sa iyong computer at makakonekta kami sa aming pack ng baterya.

#include #include #include #include #define PIN 9 #define PIXELCOUNT 6 // Parameter 1 = bilang ng mga pixel sa strip // Parameter 2 = pin number (karamihan ay mabuti ngunit gumagamit kami ng 9) // Parameter 3 = uri ng pixel mga watawat, idagdag magkasama kung kinakailangan: // NEO_RGB Ang mga pixel ay naka-wire para sa RGB bitstream (v1 FLORA pixel, hindi v2) // NEO_GRB Ang mga pixel ay naka-wire para sa GRB bitstream (karamihan sa mga produktong NeoPixel. produkto na ginagamit namin) // NEO_KHZ400 400 KHz (klasiko 'v1' (hindi v2) FLORA pixel, mga driver ng WS2811) // NEO_KHZ800 800 KHz bitstream (karamihan sa mga produktong NeoPixel na w / WS2812 LEDs. produktong ginagamit namin) Adafruit_NeoPixel strip = Adafruit_NeoPixel (PIXELCOUNT, PIN, NEO_GRB + NEO_KHZ800); Adafruit_LSM303_Accel_Unified accel = Adafruit_LSM303_Accel_Unified (54321); // Ayusin ang R, G, B mula 0-255 at // magdagdag ng bagong {nnn, nnn, nnn}, para sa higit pang mga kulay // RGB uint8_t myFavoriteColors [3] = {{ 255, 255, 255}, // white {255, 0, 0}, // red {0, 255, 0}, // green}; // huwag i-edit ang linya sa ibaba # tukuyin ang laki ng mga FAVCOLORS (myFavoriteColors) / 3 // inaayos ng numerong ito ang pagiging sensitibo sa paggalaw // mas mababang numero = mas sensitibo # tukuyin ang MOVE_THRESHOLD 5 // sobrang sensitibo na kasalukuyang iniiwasang pag-setup () {Serial.begin (9600); // Subukan na ipasimula at bigyan ng babala kung hindi namin nakita ang chip // Gumamit ng Serial Monitor upang matingnan ang pag-print kung (! Accel.begin ()) {Serial.println ("Nagkaroon kami ng problema. Ikaw ito, hindi ako … hindi mapasimulan ang LSM303. Magsisimula ako sa isang mabilis na pagsusuri sa mga kable "); habang (1); } strip.begin (); strip.show (); // Itakda ang mga pixel sa 'off'} void loop () {/ * Kumuha ng isang bagong kaganapan ng sensor * / kaganapan ng sensors_event_t; accel.getEvent (& kaganapan); // Serial.print ("Accel X:"); Serial.print (event.acceleration.x); Serial.print (""); // Serial.print ("Y:"); Serial.print (event.acceleration.y); Serial.print (""); // Serial.print ("Z:"); Serial.print (event.acceleration.z); Serial.print (""); // Kunin ang magnitude (haba) ng 3 axis vector na doble na nakaimbakVector = event.acceleration.x * event.acceleration.x; nakaimbakVector + = event.acceleration.y * event.acceleration.y; nakaimbakVector + = event.acceleration.z * event.acceleration.z; naka-imbakVector = sqrt (naka-imbakVector); // Serial.print ("Len:"); Serial.println (naka-imbakVector); // maghintay ng kaunting pagkaantala (250); // kumuha ng bagong data! accel.getEvent (& kaganapan); dobleng newVector = event.acceleration.x * event.acceleration.x; newVector + = event.acceleration.y * event.acceleration.y; newVector + = event.acceleration.z * event.acceleration.z; newVector = sqrt (newVector); // Serial.print ("Bagong Len:"); Serial.println (newVector); // lilipat na ba tayo? kung (abs (newVector - naka-imbakVector)> MOVE_THRESHOLD) {Serial.println ("Flashy! Flash! Flash! McFlash!"); flashRandom (10, 2); // unang numero ay 'antay' na pagkaantala, mas maikli num == mas maikli twinkle flashRandom (10, 4); // pangalawang numero ay kung gaano karaming mga neopixel upang sabay na sindihan ang flashRandom (10, 6); }} void flashRandom (int wait, uint8_t howmany) {for (uint16_t i = 0; i <howmany; i ++) {// sapalarang napili mula sa mga paboritong kulay int c = random (FAVCOLORS); int white = myFavoriteColors [c] [0]; int red = myFavoriteColors [c] [1]; int green = myFavoriteColors [c] [2]; // ang mga pixel upang i-on sa isang order para sa (int i = 0; i <6; i ++) int j = strip.numPixels (); Serial.print ("Pixel on"); Serial.println (i); // ngayon ay 'fade' namin ito sa 3 mga hakbang para sa (int x = 0; x = 0; x--) {int w = white * x; w / = 3; int r = pula * x; r / = 3; int g = berde * x; g / = 3; strip.setPixelColor (i, strip. Color (w, r, g)); strip.show (); antala (maghintay); }} // Mapatay ang mga LED kapag tapos na (sila ay kupas sa 0)}

Hakbang 8: Pack ng Baterya

Battery Pack
Battery Pack

Upang mapanatili ang iyong panglamig na patuloy na pinapatakbo gagamit kami ng isang pack ng baterya. Kailangan naming gumawa ng isang harness para sa pack upang hindi lamang ito mag-hang mula sa board. Ginamit ko ang sulok ng isang lumang pillowcase bilang aking bulsa ng baterya. Tinahi ko ang bukas na gilid at tinahi ang isang gilid ng tuktok sa panglamig na malapit na malapit sa pangunahing board na madali itong mai-plug in at hindi hilahin ito.

I-plug ang pack ng baterya sa pangunahing board, i-on ang maliit na switch sa pangunahing board mula sa hanggang sa, at i-on ang iyong pack ng baterya. Ang iyong panglamig ay dapat na gumana at handa nang isuot.

Hakbang 9: Konklusyon

Konklusyon
Konklusyon

Gumawa ka na ngayon ng isang light up sweater na mapahanga ang lahat ng iyong mga kaibigan at pamilya! Ngunit hindi lamang ito isang proyekto sa holiday. Gawin ang iyong valentine isang pang-ilaw na panglamig ng puso o pag-iilaw ng isang shamrock shirt para sa Araw ng St. Patrick. Gamitin ang iyong imahinasyon at ipaalam sa amin kung ano ang iyong nilikha!

Inirerekumendang: