Բովանդակություն:

Arduino Light Up սվիտեր `9 քայլ
Arduino Light Up սվիտեր `9 քայլ

Video: Arduino Light Up սվիտեր `9 քայլ

Video: Arduino Light Up սվիտեր `9 քայլ
Video: Styling 101: Colour Balancing #shorts 2024, Հուլիսի
Anonim
Image
Image

Տգեղ սվիտեր երեկույթները տոների հիմնական մասն են: Ամեն տարի դուք պետք է բարձրացնեք ձեր խաղը և կրեք ձեր գտած լավագույն սվիտերը: Բայց այս տարի դուք կարող եք ավելի լավ անել և պատրաստել լավագույն սվիտեր: Մենք օգտագործում ենք Adafruit Wearables- ը `գեղեցիկ լուսավորված սվիտեր ստեղծելու համար, որն անշուշտ տպավորություն է թողնելու ձեր ընկերների և ընտանիքի անդամների վրա:

Adafruit- ն արդեն ստեղծել է որոշ հիանալի ծրագրեր Wearables- ի շուրջ, այնպես որ մենք օգտագործում ենք նրանց փոփոխված ծածկագիրը `այս նախագիծը իրենց Sparkle Skirt նախագծից իրականացնելու համար:

Այս ձեռնարկում դուք.

  • Սովորեք օգտագործել Wearables- ը
  • Կոդավորեք ձեր Flora- ի հիմնական տախտակը, արագացուցիչը և NeoPixels- ը ՝ Arduino- ի միջոցով լուսավորելու համար

Քայլ 1: Սկսելու համար

Սկսել
Սկսել

Մենք պատրաստվում ենք օգտագործել Adafruit Flora Wearables- ը, մարտկոցի տուփ, հաղորդիչ թել և տոնական սվիտեր: Ձեզ նույնպես պետք է սովորական թել, ասեղներ և եղունգների լաք: Այդ ամենը ժամանակի ընթացքում իմաստ կունենա: Մեր տարբերակը պատրաստվում է Ձմեռ պապին լուսավորել աչքերը, բայց մենք պաշտպանում ենք բոլոր կրոններն ու տոներն ու հավատալիքները, ուստի եղե՛ք ստեղծագործ:

  • Adafruit Flora հիմնական խորհուրդը (https://www.adafruit.com/product/659)
  • Ֆլորա արագացուցիչ (https://www.adafruit.com/product/1247)
  • Flora RGB NeoPixels (https://www.adafruit.com/product/1260)
  • Մարտկոցի փաթեթ (https://www.adafruit.com/product/727)
  • Հաղորդիչ թեմա (https://www.adafruit.com/product/641)

Քայլ 2: Դասավորություն

Դասավորություն
Դասավորություն

Նախքան կարի գործընթացը սկսելը, մենք պետք է դասավորենք պիքսելները, հիմնական տախտակը և արագացուցիչը: Պիքսելները կունենան տվյալների միացում, + հզորության և - գետնի համար: Արագացուցիչին անհրաժեշտ են միացումներ 3V, SCL, SDA և գրունտի համար:

Սվիտերի վրա դասավորեք պիքսելները, հիմնական տախտակը և արագացուցիչը, երբ նախատեսում եք այն կարել: Համոզվեք, որ դուք չեք հատի որևէ կար, քանի որ դա կարճ շորտեր կառաջացնի: Քանի որ մենք ունենք մեր տախտակի երեսը ներսից, իսկ NeoPixels- ը ՝ դեմքով, մենք օգտագործում ենք 3V, Pin 9 և Ground- ը ՝ NeoPixels- ը միացնելու համար:

NeoPixels- ն ունի սլաք, որը ցույց է տալիս, թե ինչպես պետք է տվյալների կապը անցնի Flora- ի հիմնական տախտակից մինչև հաջորդ NeoPixel- ը: Համոզվեք, որ բոլոր NeoPixels- ը շարված են նույն ուղղությամբ:

Քայլ 3: Կարելու խորհուրդներ

Կարերի կարևոր մասը երեք բան է. ոչ շորտեր/կարերի խաչմերուկ, կարը վերջացնելիս ամուր հանգույցներ և կրելի սարքերի հետ լավ կապեր:

Շորտեր/կարի խաչմերուկ չկա

Համոզվեք, որ ձեր Wearables- ը դասավորեք այնպես, որ ձեր կարերը չանցնեն: Ակնհայտ է, որ գծերը չպետք է հատվեն: Երբ դուք ունեք դասավորություն, որն ապահովում է, որ բոլոր կարերը մնան առանձին, դուք պետք է համոզվեք, որ կարելիս այն ամուր է: Եթե չափազանց շատ թուլություն եք թողնում, դա կարող է թույլ տալ, որ շարանը դիպչի: Կարի ավարտելուց հետո կտրեք ավելորդ ծայրերը, որպեսզի թափառող թելեր չլինեն:

Ամուր հանգույցներ

Կարերի գիծը ավարտելիս, ամուր հանգույցը կապահովի, որ կարը չթուլանա: Հնարքն այն է, որ եղունգների վրա դնել հստակ եղունգների լաքի մի փոքրիկ տիկնիկ և թողնել, որ այն չորանա: Սա օգնում է հանգույցը պահել տեղում, սոսնձի նման: Հաղորդիչ թելը այնքան լավ չի պահվում հանգույցի մեջ, որքան սովորական թելը, ուստի խորհուրդ եմ տալիս օգտագործել եղունգների լաք, այլապես կարող եք փչանալ, երբ կարերը թուլանում են:

Լավ կապեր

Համոզվեք, որ կապում գտնվող օղակները ամուր են: Սա կօգնի ապահովել, որ եթե ձեր սխեման չի աշխատում, մենք գիտենք, որ խնդիրը կապերը չեն: Դուք կարող եք 2-3 անգամ շրջել կապում ՝ համոզվելու համար, որ միշտ լավ կապ կլինի:

Խորհուրդներ/հնարքներ

Համոզվեք, որ հագուստը միացնելիս և հանելիս միացված չէ: Սա թելերը դիպչելու և կարճ առաջացնելու ամենահեշտ ձևն է: Մի միացրեք մարտկոցի փաթեթը, մինչև հագուստը հարմարավետ միացված չլինի:

Քայլ 4: Բաղադրիչների կարում

Բաղադրիչների կարում
Բաղադրիչների կարում
Բաղադրիչների կարում
Բաղադրիչների կարում

Առաջին կտորը, որը մենք պետք է կցենք, Flora Main Board- ն է: Կպցրեք տախտակը ձեր սվիտերին ՝ օգտագործելով սովորական թել ՝ երկու կապում, որոնք չեք պատրաստվում օգտագործել: Սա կպահի տախտակը տեղում և կդարձնի ավելի հեշտ կարել ՝ օգտագործելով հաղորդիչ թելը: Մի քանի պարզ հանգույց բավական է, որպեսզի այն չշարժվի:

Հաջորդը, դուք պետք է կարեք չորս միացումները Ֆլորայի հիմնական տախտակից և արագացուցիչից: Սա կլինի Power, Ground, SCL և SDA: Եթե արագացուցիչը տեղադրեք հիմնական տախտակի վերևի ձախ մասում, կապերն ուղղակիորեն կհարթվեն: Այսպիսով, դուք կունենաք չորս առանձին կարեր `երկու տախտակները միացնելու համար: Երկու ծայրային հանգույցների վրա օգտագործեք մի փոքր թափանցիկ լաք, որպեսզի դրանք չբացվեն: Տախտակների վրա եղունգների փոքրիկ լաքը նրանց չի վնասի:

Վերջապես, դուք պետք է միացնեք 3V, գետնին և տվյալների միացումներին Flora Main տախտակից NeoPixels- ին: Դուք կարող եք երկու երկար, շարունակական կարել գետնի և հզորության համար, քանի որ դրանք գտնվում են NeoPixels- ի ներքևում և վերևում: Pin 9 -ից տվյալների միացումների համար անհրաժեշտ է յուրաքանչյուր NeoPixel- ից հաջորդ կարել առանձին:

Քայլ 5: Arduino IDE

Ֆլորայի հիմնական խորհուրդը Arduino- ի հետ համատեղելի է, այնպես որ մենք կօգտագործենք Arduino IDE- ն մեր ծածկագրի համար: Այս հղումով կարող եք ներբեռնել վերջին տարբերակը:

Այս հղման միջոցով կա նաև վեբ տարբերակ:

Կան չորս գրադարաններ, որոնք պետք է ավելացվեն մեր NeoPixels և Accelerometer- ից օգտվելու համար: Գնացեք ուրվագիծ, ներառեք գրադարան, կառավարեք գրադարանները: Յուրաքանչյուրի համար անհրաժեշտ կլինի որոնել այն անունով, ընտրել վերջին տարբերակը և սեղմել տեղադրել:

  • Adafruit NeoPixel
  • Adafruit միասնական ցուցիչ
  • Adafruit TSL2561
  • Adafruit LSM303DLHC

Երբ դրանք տեղադրվեն և կարերն ավարտվեն, մենք պատրաստ ենք փորձարկել մեր սվիտերը `համոզվելու համար, որ ամեն ինչ աշխատում է:

Քայլ 6: Փորձարկեք գրությունները

Փորձարկման սցենարներ
Փորձարկման սցենարներ

Մեր նախագիծը փորձարկելու համար մենք պետք է մեր Adafruit- ի հիմնական տախտակը միացնենք ձեր համակարգչին `օգտագործելով USB մալուխ: Այնուհետև գնացեք Գործիքներ, նավահանգիստ և ընտրեք ձեր Flora Main տախտակը ցուցակից:

Առաջին բանը, որ մենք փորձարկելու ենք, այն է, արդյոք արագացուցիչը ճիշտ է աշխատում: Գնացեք Ֆայլ, Օրինակներ, Adafruit LSM303DLHC, accensensor: Սա կբացի սցենար, որը ստուգում է, թե արդյոք սենսորը միացված է և կարդում է կոորդինատների արժեքները: Վերբեռնեք ձեր տախտակին և բացեք Serial Monitor- ը Arduino IDE- ի վերևի աջ մասում: Եթե տեսնում եք, որ արժեքները փոխվում են Սերիական մոնիտորի վրա, ինչպես լուսանկարում, արագացուցիչը տեղափոխելիս այն աշխատում է:

Երկրորդ բանը, որ մենք փորձարկելու ենք, այն է, եթե NeoPixels- ը աշխատում է: Գնացեք Ֆայլ, Օրինակներ, Adafruit NeoPixels, strandtest: Նախքան այս սցենարը գործարկելը, փոխեք Pin- ը 9 -ի և պիքսելների թիվը `6 -ի (կամ այն, ինչ դուք օգտագործում եք ձեր նախագծի համար): Վերբեռնեք ձեր տախտակին և եթե պիքսելներն ամբողջությամբ լուսավորվեն, պատրաստ եք վերջնական սցենարին:

Քայլ 7: Վերջնական սցենար

Վերջնական սցենար
Վերջնական սցենար

Այժմ ժամանակն է բեռնել մեր վերջնական կոդը: Ստորև բերված կոդը պատճենեք նոր նախագծի ֆայլում: The Pin- ը սահմանվել է 9, իսկ NeoPixels- ի թիվը `6: Եթե այլ բան եք օգտագործում, փոխեք դրանք մինչ այս սցենարը գործարկելը: Դուք կարող եք հարմարեցնել ձեր նախընտրած գույները ՝ կարգավորելով R, G և B արժեքները 0-255-ից: Կարող եք նաև ավելացնել ավելի շատ սիրված գույներ ՝ ավելացնելով նոր տող: Տեղափոխման շեմը նույնպես կարող է ճշգրտվել: Որքան ցածր է թիվը, այնքան ավելի հեշտ է հայտնաբերել շարժումը և միացնել NeoPixels- ը: Youանկացած փոփոխություն կատարելուց հետո պահեք և վերբեռնեք ձեր Flora Main Board- ում: Եթե արագացուցիչը պտտեցնեք, պետք է կարողանաք տեսնել, թե ինչպես են լուսավորվում պիքսելները: Երբ տեսնեք, որ կարող եք անջատել ձեր համակարգիչը, և մենք կարող ենք միանալ մեր մարտկոցին:

#ներառել #ներառել #ներառել #ներառել #սահմանել PIN 9 #սահմանել PIXELCOUNT 6 // պարամետր 1 = պիքսելների քանակը ժապավենի մեջ // պարամետր 2 = փին համար (շատերը լավն են, բայց մենք օգտագործում ենք 9) // պարամետր 3 = պիքսելային տիպ դրոշներ, անհրաժեշտության դեպքում ավելացնել միասին. // NEO_RGB պիքսելները միացված են RGB բիթսթրիմի համար (v1 FLORA պիքսել, ոչ v2) // NEO_GRB պիքսելները միացված են GRB բիթսթրիմի համար (NeoPixel- ի արտադրանքներից շատերը: արտադրանքը, որը մենք օգտագործում ենք) // NEO_KHZ400 400 ԿՀց (դասական «v1» (ոչ v2) FLORA պիքսելներ, WS2811 վարորդներ) // NEO_KHZ800 800 ԿՀց բիթսթրիմ (NeoPixel- ի արտադրանքներից շատերը WS2812. արտադրանք, որը մենք օգտագործում ենք) Adafruit_NeoPixel ժապավեն = Adafruit_NeoPixel (PIXELCOUNT, PIN, NEO_GRB + NEO_GRB + NEO_GRB + NEO_GRB + NEO_GRB + NEO_GRB + NEO_GRB + NEO_GRB + NEO_GRB + NEO_GRB + NEO_GRB + NEO_GRB + N00 Adafruit_LSM303_Accel_Unified accel = Adafruit_LSM303_Accel_Unified (54321); // Կարգավորեք R, G, B 0-255-ից և // ավելացրեք նոր {nnn, nnn, nnn}, ավելի շատ գույների համար // RGB uint8_t myFavoriteColors [3] = 255, 255, 255}, // սպիտակ {255, 0, 0}, // կարմիր {0, 255, 0}, // կանաչ}; // մի խմբագրեք ներքևի տողը #սահմանեք FAVCOLORS- ի չափը (myFavoriteColors) /3 // այս թիվը կարգավորում է շարժման զգայունությունը // ստորին թիվը = ավելի զգայուն #սահմանել MOVE_THRESHOLD 5 // գերզգայուն ներկայումս չեղյալ կարգավորումը () {Serial.begin (9600); // Փորձեք նախաստորագրել և նախազգուշացնել, եթե չկարողացանք հայտնաբերել չիպը // Օգտագործեք Serial Monitor ՝ տպելու համար, եթե (! Accel.begin ()) {Serial.println ("Մենք խնդիր ունենք: Դուք եք, ոչ թե ես … Ի վիճակի չեմ նախաստորագրել LSM303- ը: Ես կսկսեի էլեկտրագծերի արագ ստուգումից »); մինչդեռ (1); } strip.begin (); strip.show (); // Սահմանել պիքսելները «անջատ»} void loop () {/ * Ստացեք նոր սենսորային իրադարձություն */ sensors_event_t իրադարձություն; accel.getEvent (& իրադարձություն); // 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 (""); // Ստացեք 3 առանցքի վեկտորի մեծությունը (երկարությունը) կրկնակի պահվածՎեկտոր = event.acceleration.x*event.acceleration.x; պահվածՎեկտոր += event.acceleration.y*event.acceleration.y; պահվածՎեկտոր += event.acceleration.z*event.acceleration.z; պահվածՎեկտոր = sqrt (պահվածՎեկտոր); // Serial.print ("Len:"); Serial.println (պահվածՎեկտոր); // սպասեք մի փոքր ուշացումով (250); // ստացեք նոր տվյալներ: accel.getEvent (& իրադարձություն); կրկնակի 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 («Նոր Լեն.»); Serial.println (newVector); // մենք դեռ շարժվու՞մ ենք if (abs (newVector - storageVector)> MOVE_THRESHOLD) {Serial.println ("Flashy! Flash! Flash! McFlash!"); flashRandom (10, 2); // առաջին համարը «սպասել» ուշացումն է, ավելի կարճ համարը == ավելի կարճ լուսաշող flashRandom (10, 4); // երկրորդ թիվն այն է, թե քանի նեոպիքսել պետք է միաժամանակ լուսավորել flashRandom (10, 6); }} void flashRandom (int wait, uint8_t howmany) {for (uint16_t i = 0; i <howmany; i ++) {// պատահաբար ընտրված սիրելի գույներից int c = random (FAVCOLORS); int սպիտակ = myFavoriteColors [c] [0]; int կարմիր = myFavoriteColors [c] [1]; int կանաչ = myFavoriteColors [c] [2]; // պիքսելները միանալու կարգով (int i = 0; i <6; i ++) int j = strip.numPixels (); Serial.print («Pixel on»); Serial.println (i); // այժմ մենք այն «կխամրենք» 3 քայլով (int x = 0; x = 0; x--) {int w = white * x; w /= 3; int r = կարմիր * x; r /= 3; int g = կանաչ * x; g /= 3; strip.setPixelColor (i, strip. Color (w, r, g)); strip.show (); ուշացում (սպասել); }} // LED լուսադիոդներն անջատված կլինեն (դրանք մարել են 0 -ի)}

Քայլ 8: Մարտկոցի փաթեթ

Մարտկոցի փաթեթ
Մարտկոցի փաթեթ

Որպեսզի ձեր սվիտերը անընդհատ սնուցվի, մենք կօգտագործենք մարտկոցի փաթեթ: Մենք պետք է ամրագոտի պատրաստենք փաթեթի համար, որպեսզի այն պարզապես չկախվի տախտակից: Որպես մարտկոցի գրպան ես օգտագործել էի բարձի հին երեսպատման անկյունը: Ես կարեցի բաց կողմը և գագաթի մի կողմը կպցրի սվիտերին, որը բավական մոտ է հիմնական տախտակին, որպեսզի այն հեշտությամբ միանա և չքաշվի դրա վրա:

Միացրեք մարտկոցի տուփը հիմնական տախտակին, միացրեք հիմնական տախտակի փոքր անջատիչը միացվածից և միացրեք մարտկոցի փաթեթը: Ձեր սվիտերն այժմ պետք է աշխատի և պատրաստ լինի հագնելու:

Քայլ 9: Եզրակացություն

Եզրակացություն
Եզրակացություն

Դուք այժմ պատրաստել եք լուսավոր սվիտեր, որը տպավորություն կգցի ձեր բոլոր ընկերների և ընտանիքի անդամների վրա: Բայց սա պարզապես արձակուրդային նախագիծ չէ: Դարձրեք ձեր վալենտինը սրտաճմլիկ սվիտեր կամ լուսավորեք շամրուկի վերնաշապիկը Սուրբ Պատրիկի օրվա համար: Օգտագործեք ձեր երևակայությունը և տեղեկացրեք մեզ, թե ինչ եք ստեղծել:

Խորհուրդ ենք տալիս: