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

Levitating LED լամպ. 6 քայլ (նկարներով)
Levitating LED լամպ. 6 քայլ (նկարներով)

Video: Levitating LED լամպ. 6 քայլ (նկարներով)

Video: Levitating LED լամպ. 6 քայլ (նկարներով)
Video: Нелогичная жизнь_Рассказ_Слушать 2024, Նոյեմբեր
Anonim
Levitating LED լամպ
Levitating LED լամպ

Երբևէ խաղացե՞լ եք մագնիսների հետ և փորձել նրանց ստիպել թռչել: Վստահ եմ, որ մեզանից շատերն ունեն, և չնայած դա հնարավոր է թվում, եթե շատ ուշադիր տեղադրվեն, որոշ ժամանակ անց կհասկանաք, որ դա իրականում անհնար է: Դա պայմանավորված է Էրնշոուի թեորեմով, որն ապացուցում է, որ անհնար է առարկա թռչել միայն ֆերոմագնիսական նյութերով: Այնուամենայնիվ, մենք ունենք լուծում: Մագնիսներ օգտագործելու փոխարեն, մենք կթափանցենք լամպը ՝ օգտագործելով լարվածություն կոչվող պատրանք ՝ պատրաստելով լամպ, որը կարծես լողում է:

Քայլ 1: Պաշարներ

Պարագաներ
Պարագաներ
Պարագաներ
Պարագաներ
Պարագաներ
Պարագաներ

Այս լամպը պատրաստելու համար անհրաժեշտ են մի շարք պարագաներ.

Էլեկտրոնիկա:

  • Arduino Nano տախտակ
  • Jumper լարերը
  • 24 LED մատանի
  • 9 Վ մարտկոց
  • 9 վ մարտկոցի միակցիչ

Դեկորատիվ պարագաներ.

  • Ստվարաթուղթ (կամ փայտ, եթե օգտագործում եք լազերային կտրում)
  • Ձկնորսական գիծ (ցանկացածը պետք է աշխատի, և փորձեք ընտրել հնարավորինս մեկը)

Մյուսները:

  • Ռետինե ժապավեն
  • Տաք սոսինձ ատրճանակ
  • Տաք սոսինձ ձողիկներ
  • Sոդման սարքավորումներ
  • Velcro

Քայլ 2: Հավաքեք էլեկտրոնիկան

Հավաքեք էլեկտրոնիկան
Հավաքեք էլեկտրոնիկան
Հավաքեք էլեկտրոնիկան
Հավաքեք էլեկտրոնիկան
Հավաքեք էլեկտրոնիկան
Հավաքեք էլեկտրոնիկան
Հավաքեք էլեկտրոնիկան
Հավաքեք էլեկտրոնիկան

Նախ պետք է հավաքել էլեկտրոնային մասերը: Սա պարզ է և կարող է կատարվել մի քանի քայլով.

  1. Vոդեք 9 Վ մարտկոցի միակցիչը Arduino Nano տախտակին: Սա կարող է մի փոքր դժվար լինել, բայց դա ծրագրի հաջողության էական մասն է, քանի որ խորհուրդը չտրամադրվող բավարար էներգիան կհանգեցնի այն, որ այն ճիշտ չգործի: Կարմիր մետաղալարը միացրեք VIN կապին և սև մետաղալարը միացրեք տախտակի GND կապումներից մեկին:
  2. Theոդեք կապում LED օղակի հետևի մասում: Այս 24 LED օղակների վրա սովորաբար 4 տեղ կա զոդման համար, սակայն այս նախագծում մենք կօգտագործենք միայն 3 -ը ՝ DI, VCC և GND: DO հատվածը չի օգտագործվի այս նախագծում: Sոդեք այն մետաղալարով, որը մատնացույց է անում օղակը, քանի որ մատանի արտաքին մասը թաքնված կլինի թղթի հետևում, բայց եթե թռիչքի լարերը սոսնձվեն սխալ ուղղությամբ, այն դուրս կգա լամպից:
  3. Միացրեք լարերը Նանոյին: DI- ն պետք է միացված լինի D5 կապին, VCC- ն `5V- ին, իսկ GND- ը` GND- ին `համապատասխանաբար LED օղակի և Arduino Nano- ի վրա:

Եվ ավարտեցիք էլեկտրոնիկան:

Քայլ 3. Լարվածության քանդակ

Tensegrity քանդակը
Tensegrity քանդակը
Tensegrity քանդակը
Tensegrity քանդակը
Tensegrity քանդակը
Tensegrity քանդակը

Այս նախագծի համար մենք օգտագործում ենք լարվածությունը, որը տերմին է, որն օգտագործվում է նկարագրելու լարվածության օգտագործման գործողությունը ՝ ինչ -որ բան տեղում պահելու համար: Եթե պարզապես ցանկանում եք ստեղծել քանդակը, ապա կարող եք ներբեռնել Adobe Illustrator ֆայլը, որը պատրաստված է լազերային կտրման համար, կամ նայեք լուսանկարին և ինքներդ կտրեք ստվարաթղթի մեջ:

Եթե ցանկանում եք հասկանալ, թե ինչպես է դա աշխատում, ապա շարունակեք կարդալ ստորև:

Այս լարվածության քանդակը օգտագործում է ձկնորսական գիծը, որպեսզի այն ավելի շատ նմանվի թռչող առարկայի: Theանոթագրված լուսանկարում 6 տողերից յուրաքանչյուրի դիրքն ընդգծված է ՝ առանձին գույներով: Ավելի երկար կարմիրներն են նրանք, ովքեր կանխում են գագաթի անկումը: Սրանք անվանենք «կառուցվածքային գծեր»: Այնուհետև մենք ունենք կապույտ գծեր, որոնք շատ ավելի կարճ են, քան կարմիրները ՝ վերևի մասը պահելով վերև: Սրանք անվանենք «լևիտացիոն գծեր»:

Մեր լարվածության քանդակում լևիտացիոն գծերն այն են, որոնք բարձրացնում են կառույցը: Քանի որ վերին հատվածը ձգտում է ներքև շարժվել ծանրության պատճառով, լևիտացիոն գծերը պետք է բարձր պահեն կառուցվածքը: Երբ դրանք կցվում են, դրանք շատ լարված են ՝ կառույցի վերին հատվածը պահելով վերև: Քանդակի չորսից երկու կողմերում դրանցից մեկը կա, թեև տեսականորեն մեկը բավական է կառույցը բարձր պահելու համար:

Այնուամենայնիվ, եթե փորձեք կցել միայն բարձրացման գծերը, կնկատեք, որ այն հեշտությամբ ընկնում է: Դա պայմանավորված է նրանով, որ գագաթը ամրացված է ընդամենը երկու կետով, ինչը բավարար չէ կայուն կառուցվածք ապահովելու համար: Պատկերացրեք սղոց: Այն ամրացված է մեկ տողով ՝ թույլ տալով ազատ տեղաշարժվել: Մեր դեպքում, մենք ունենք երկու կետով ամրացված վերին հատվածը, և երկու կետերը կազմում են գիծ, ուստի մեր լարվածության քանդակի գագաթը, միայն լևիտացիոն գծերով, պարզապես սղոց է:

Այստեղ է, որ խաղում են կառուցվածքային գծերը: Այս տողերը նույնպես լարված են, և դրանք պահում են կառույցը դիրքում: Եթե կառուցվածքի գագաթը թեքվում է որևէ ուղղությամբ, մյուս ուղղությամբ կառուցվածքային գծերը կառաջացնեն կառույցը տեղում, ինչը կառաջացնի կառույցի կայունությունը:

Չնայած այն կարծես կախարդական է, բայց իրականում շատ պատճառներ կան ամբողջ քանդակի հետևում:

Քայլ 4: Կառուցվածքի հավաքում

Կառուցվածքի հավաքում
Կառուցվածքի հավաքում
Կառուցվածքի հավաքում
Կառուցվածքի հավաքում
Կառուցվածքի հավաքում
Կառուցվածքի հավաքում
Կառուցվածքի հավաքում
Կառուցվածքի հավաքում

Այժմ ժամանակն է հավաքել կառույցը, որպեսզի լամպը կցված լինի դրան: Այս հատվածը համեմատաբար հեշտ է.

  1. Գտեք հիմնական կտորները: Նրանք միշտ ամենամեծ քառակուսիներն են:
  2. Տեղադրեք «թևի» կտորները: Համոզվեք, որ նրանք բոլորը նայում են նույն ուղղությամբ, երբ իրենց կողքից են նայում: Սա ապահովում է, որ լարվածության կառույցը կարողանա հավաքվել ըստ նախատեսվածի:
  3. Կողքի կտորներից մեկը դրեք: Սա թույլ է տալիս մեզ վստահ լինել, որ թևը շատ հեռու չի մղվում, մինչ այն կպչում ենք, և համոզվում է, որ կառույցի ամբողջ հիմքը կարող է հավասարեցվել:
  4. Հավաքեք մնացած կառուցվածքը: Կտորները պետք է ճշգրիտ ընկնեն տեղում, և որոշ սոսնձումներով դուք կավարտեք այն, ինչ ցույց է տրված վերևում:

Դա անելուց հետո ժամանակն է ձկնորսական գծերը միացնել կառույցներին:

  1. Օգտագործելով տաք սոսինձ, սոսնձեք չորս կտոր ձկնորսական գիծ կառույցի մասերից մեկի յուրաքանչյուր անկյունում: Համոզվեք, որ դրանք բոլորն ունեն նույն երկարությունը:
  2. Կպչեք ձկնորսական գիծը մյուս կառույցի համապատասխան անկյուններին: Ես ավելի հեշտ գտա սոսնձել, եթե ամբողջ կառույցը պառկած լիներ, այնպես որ ես ստիպված չեմ լինի այն պահել իմ ձեռքերով:
  3. Կպչեք «թռիչքային գծերը» տեղում: Սոսինձը հովանալուց հետո վերևի և ներքևի մասերը սեղմեք որքան հնարավոր է հեռու, իսկ դրանց միջև սոսնձեք վերջին երկու ձկնորսական գծերը ՝ միացնելով կառույցի թևերը:

Եթե դուք հասել եք այսքան հեռու, ապա լավ աշխատանք: Դուք արդեն կատարել եք աշխատանքի մեծ մասը:)

Այժմ մենք պետք է հավաքենք լամպը: Այս հատվածը իսկապես հեշտ է.

  1. Կպցրեք LED օղակը շրջանաձև «անիվի» կտորին, որի երկու անցքերը մեջտեղում են: Համոզվեք, որ ցատկող լարերի պլաստմասե հենարանն ամբողջությամբ դրված է արտաքին շրջանակի ներսում:
  2. Կպչեք երկու շրջանաձև կտորները միասին: Կպչեք առաջին «անիվի» կտորը ամբողջական շրջանով ՝ մեջտեղում երկու անցքով: Սրանք կազմում են մեր թռչող լամպի գագաթը:
  3. Կապեք մարտկոցը վերջին ուղղանկյուն կտորին: Այս կտորն ունի 9 Վ մարտկոցի համար նախատեսված անցք և այն ամրացրեք Arduino Nano տախտակի հետ միասին ՝ ռետինե ժապավեններով: Հիշեք, որ այստեղ սոսինձ մի օգտագործեք. Մարտկոցը, ի վերջո, կմեռնի, և դուք օգտագործելու ոչինչ չեք ունենա:
  4. Վերցրեք B5 թղթի կտոր և կպցրեք այն լամպի եզրին: Սա աշխատում է լամպի ստվերի պես, և դա նաև արգելափակելու է հեռուստադիտողներին լամպի մեջ տախտակն ու մարտկոցը տեսնելը:
  5. Դուք կարող եք ինչ -որ բան կախված լինել լամպի ներքևից: Իմ մի քանի լուսանկարներում ես ջահի էֆեկտ ստեղծելու համար փորձեցի օգտագործել կարճ, կտրված ծղոտի կտորներ, բայց հետագայում այն հանեցի, քանի որ դա խանգարում էր իմ լուսանկարներին: Կարող եք ստեղծագործել այն ամենով, ինչ տեղադրում եք այստեղ:
  6. Կպչեք լամպի գագաթը անիվի վերջին կտորին: Կրկին համոզվեք, որ ձկնորսական գծի բոլոր կտորները նույն երկարությունն են:
  7. Կպչուն ժապավենը կպցրեք երկրորդ անիվի վերևին և կառուցվածքի վերին հատվածի ներքևին: Սա կպահի լամպը տեղում, երբ այն թռչում է: Velcro- ի օգտագործումը թույլ է տալիս այն հանել և տալ անհրաժեշտ մարտկոցի նոր մարտկոց:

Քայլ 5: Կոդավորում:

Կոդավորում
Կոդավորում
Կոդավորում
Կոդավորում

Այժմ ահա զվարճալի մասը. Կոդավորումը, թե ինչպիսի տեսք ունեք լամպի տեսքով: Ես այստեղ օգտագործել եմ պտտվող RGB լույս, բայց ազատ զգացեք ստեղծել այն, ինչ ցանկանում եք և ստեղծագործեք դրա հետ:

Ես գիտեմ, որ ես օրենսգրքի յուրաքանչյուր մաս ինքնուրույն եմ բացատրել իմ վերջին հրահանգելիքում, բայց այս անգամ, ես բոլոր բացատրությունները ներառեցի կոդի մեկնաբանություններում: Մինչ դուք ուսումնասիրում եք ծածկագիրը, հիշեք, թե ինչ եմ ես ստեղծել ՝ պտտվող ծիածանի լամպ: Եթե այդ բացատրությունը բավականաչափ լավը չէր (չգիտեմ այլ կերպ ինչպես բացատրել այն), միշտ կարող եք հետադարձ հայացք գցել սկզբում ներառված տեսանյութին: Դուք կարող եք տեսնել ստորև նշված կոդը կամ ներբեռնել այն Arduino Ստեղծեք վեբ կայքի հղումից:

Arduino Ստեղծեք հղում

(Բացի այդ, եթե բավականաչափ մարդիկ խնդրեն ինձ ավելի մանրամասն բացատրել ծածկագիրը, գուցե ես ինչ -որ բան անեմ դրա համար …)

Levitating_Lamp.ino

#ներառում// ներառել գրադարանը `LED օղակից օգտվելու համար
#definePIN5 // քորոց, որին միացված է LED օղակը
#defineNumPixels24 // ռինգում պիքսելների քանակը: կան 8 LED- ով օղակներ, կամ կարող եք օգտագործել LED շերտ Neopixels- ի հետ: Պարզապես հիշեք, նշեք, թե քանի LED ունեք:
Adafruit_NeoPixel պիքսելներ (NumPixels, PIN, NEO_GRB + NEO_KHZ800); // հայտարարեք պիքսել կոչվող լուսային օբյեկտը: Կոդն անդրադառնալու է LED օղակին այսպես.
#defineDELAYVAL20 // սա որոշում է, թե տախտակը որքան պետք է սպասի, մինչև լույսերը պտտվեն: Եթե սա փոքրացնեք, ապա ծիածանի գույներն ավելի արագ կշրջվեն:
int r [NumPixels]; // սա բոլոր LED- ների կարմիր արժեքն է
int g [NumPixels]; // սա բոլոր LED- ների կանաչ արժեքն է
int b [NumPixels]; // սա բոլոր LED- ների կապույտ արժեքն է
սահմանափակում diff = 31; // սա սահմանում է պայծառության արժեքը: Առավելագույն թիվը 31 է, բայց ցանկացած x թիվ, որտեղ 0 <x <32 կգործի:
/////// Սահմանեք լույսերի սկզբնական դիրքը ////////
voidsetLights () {
int R = 8*diff, G = 0, B = 0; // բոլոր LED- ների սկզբնական դիրքը
համար (int i = 0; i <8; i ++, R- = diff, G+= diff) {
r = R;
g = G;
b = 0;
}
համար (int i = 0; i <8; i ++, G- = diff, B+= diff) {
g [i+8] = G;
b [i+8] = B;
r [i+8] = 0;
}
համար (int i = 0; i <8; i ++, B- = diff, R+= diff) {
r [i+16] = R;
b [i+16] = B;
g [i+16] = 0;
}
}
/////// Ավարտեք LED- ների սկզբնական դիրքի կարգավորումը /////////
voidsetup () {
pixels.begin (); // միացնել պիքսելային օբյեկտը
setLights (); // սահմանել LED- ների սկզբնական դիրքը
}
int idx = 0; // սահմանել LED պտույտի սկզբնական դիրքը
voidloop () {
/////// սահմանել LED- ներից յուրաքանչյուրի գույնը /////////
համար (int i = 0; i <numpixels; i ++) = "" {
pixels.setPixelColor (i, պիքսելներ. Color (r [(i+idx)%24], g [(i+idx)%24], b [(i+idx)%24]));
pixels.show ();
}
/////// ավարտել LED- ների գույնի կարգավորումը /////////
հետաձգում (DELAYVAL); // սպասեք DELAYVAL միլիվայրկյան
idx ++; // տեղափոխել LED- ների պտույտը մեկով
idx%= 24; // mod արժեքը 24 -ով: Սա սահմանափակում է idx- ի արժեքը 0 -ից 23 -ի սահմաններում, ներառյալ
}

դիտել rawLevitating_Lamp.ino հյուրընկալված ❤ -ի կողմից GitHub- ի կողմից

Քայլ 6: Ավարտեք:

Ամբողջական!
Ամբողջական!
Ամբողջական!
Ամբողջական!
Ամբողջական!
Ամբողջական!

Այժմ ժամանակն է միացնել լամպը, կպցնել Velcro- ն կառույցին և անջատել լույսերը. Ցուցադրման ժամն է: Ազատորեն կատարեք ձեր ուզած փոփոխությունները և կիսվեք աշխարհի հետ այն, ինչ ստեղծել եք այս նախագծով:

Հաջողություն և շարունակեք ուսումնասիրել:

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