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

Այդահոյի խելացի քարտեզ LED տվյալներով + Արվեստ. 8 քայլ (նկարներով)
Այդահոյի խելացի քարտեզ LED տվյալներով + Արվեստ. 8 քայլ (նկարներով)
Anonim
Image
Image

Հետևեք հեղինակի ավելին ՝

Խելացի աշխարհի քարտեզ ՝ տվյալների էկրաններով և DMX ծրագրավորվող լուսավորությամբ
Խելացի աշխարհի քարտեզ ՝ տվյալների էկրաններով և DMX ծրագրավորվող լուսավորությամբ
Մորուքավոր Իրիս - Բաժանիր և նվաճիր
Մորուքավոր Իրիս - Բաժանիր և նվաճիր
Մորուքավոր Իրիս - Բաժանիր և նվաճիր
Մորուքավոր Իրիս - Բաժանիր և նվաճիր
Վեբ-միացված SMART LED անիմացիոն ժամացույց վեբ վրա հիմնված կառավարման վահանակով, ժամանակի սերվերի համաժամացում
Վեբ-միացված SMART LED անիմացիոն ժամացույց վեբ վրա հիմնված կառավարման վահանակով, ժամանակի սերվերի համաժամացում
Վեբ-միացված SMART LED անիմացիոն ժամացույց վեբ վրա հիմնված կառավարման վահանակով, ժամանակի սերվերի համաժամացում
Վեբ-միացված SMART LED անիմացիոն ժամացույց վեբ վրա հիմնված կառավարման վահանակով, ժամանակի սերվերի համաժամացում

Ես միշտ ցանկացել եմ աշխարհագրական տվյալները գեղարվեստորեն և դինամիկ կերպով ցուցադրելու միջոց ՝ քարտեզը «ներկելով» լույսով: Ես ապրում եմ Այդահոյում և սիրում եմ իմ նահանգը, ուստի ես մտածեցի, որ սա հիանալի վայր կլինի սկսելու համար: Բացի զովացուցիչ լուսավորության էֆեկտներով արվեստի գործ լինելուց, այն նաև օգտակար տեղեկություններ է տալիս: Օրինակ, կարող եք ցույց տալ «ջերմային քարտեզ» `բնակչության խտության, տեղումների մակարդակի, բարձրության առավելագույն/նվազագույնի, անապատի տարածքի քանակի և այլնի: Այդահոյի այս քարտեզը կազմելուց հետո ես մոտիվացված եմ նման բան անել համաշխարհային մասշտաբով!

Այս հրահանգի համար ձեզ հարկավոր կլինի հետևյալը.

  • (2) 1'4MDF- ի 2'x4 'թերթ
  • (1) 10 'կտոր 1 "x8" Սոճու տախտակ
  • (1) լույսի ցրող ակրիլային թերթ
  • 2 լար (50) ws2812B նախալարված ինդեքսավորվող LED- ի
  • 5 վոլտ սնուցման աղբյուր
  • Բիծ, ներկ, սոսինձ
  • Arduino Micro կամ համարժեք

Անհրաժեշտ գործիքներ

  • CNC մեքենա
  • Sոդման երկաթ
  • Սեղմակներ
  • Ավազի թուղթ

Քայլ 1: Կպչեք փայտը

Կպչեք փայտը
Կպչեք փայտը
Կպչեք փայտը
Կպչեք փայտը
Կպչեք փայտը
Կպչեք փայտը
Կպչեք փայտը
Կպչեք փայտը

Ամեն անգամ, երբ կպչում եմ փայտե վահանակներ, ես միշտ թխվածքաբլիթներ եմ միացնում դրանք միասին: Սա կանխում է պառակտումը `փոքրացման պատճառով, քանի որ փայտը չորանում է: Սա հատկապես կարևոր է այս նախագծի համար, քանի որ կտորները միմյանց միացնող մակերեսը կկրճատվի CNC գրպանման գործողությունների շնորհիվ: Երկու կողմերում, ինչպես նաև թխվածքաբլիթների խոռոչի երկու կեսերում լավ սոսինձ ստանալուց հետո սեղմեք և թողեք 24 ժամ:

Ամրացուցիչները իրարից հանելուց հետո օգտագործեք ափի սրվիչ (կամ եթե համարձակ եք գոտի քերիչով) և հարթեցրեք հոդերը: Անկասկած, սոսինձը սեղմելու է հոդերը, և ցանկանում եք տախտակը հղկել ներքև ՝ հնարավորինս հարթ և առանց թերությունների:

այժմ, երբ մենք ունենք երեք վահանակներ, որոնք մեզ անհրաժեշտ կլինեն, անցնենք CNC աշխատանքին:

Քայլ 2. CNC Երեք վահանակ (սահմանային վահանակ, սոճու կորիզ և LED վահանակ)

CNC երեք վահանակ (սահմանային վահանակ, սոճու կորիզ և LED վահանակ)
CNC երեք վահանակ (սահմանային վահանակ, սոճու կորիզ և LED վահանակ)
CNC երեք վահանակ (սահմանային վահանակ, սոճու կորիզ և LED վահանակ)
CNC երեք վահանակ (սահմանային վահանակ, սոճու կորիզ և LED վահանակ)
CNC երեք վահանակ (սահմանային վահանակ, սոճու կորիզ և LED վահանակ)
CNC երեք վահանակ (սահմանային վահանակ, սոճու կորիզ և LED վահանակ)
CNC երեք վահանակ (սահմանային վահանակ, սոճու կորիզ և LED վահանակ)
CNC երեք վահանակ (սահմանային վահանակ, սոճու կորիզ և LED վահանակ)

Կան երեք վահանակներ, որոնք կազմում են նախագիծը: Մոդելները կարող եք տեսնել իմ օգտագործած ծրագրաշարում: Քարտեզի տվյալները ձեռք են բերվել հոնորարից ազատ քարտեզագրական քարտեզների փաթեթներից: Amazարմանալի մանրամասներ և արժեք այստեղ: CAD ֆայլերը կցվում են հաջորդ քայլին, եթե ցանկանում եք կամ DXF- ը CAD- ի կամ Vector ֆայլերի համար:

LED միջուկի վահանակը հիմնականում մշակված 1/4 դյույմանոց MDF թերթ է, որն ամրացնում է լուսադիոդները ՝ սերտ շփման մեջ: Այս վահանակի վրա կնկատեք լուսադիոդի շուրջ մի մեծ «գրպան»: Սա թույլ կտա լույսը ցրվել նույնքան արագ, որքան հնարավոր է, որպեսզի խուսափեք ակրիլային տաք կետերից:

Միջուկը սոճու վահանակն է, որը մենք սոսնձեցինք նախորդ քայլում և ներկայացնում է ծրագրի ֆոնը: Որպեսզի լույսը հասնի ակրիլային վահանակներին, մենք մշակեցինք յուրաքանչյուր շրջան:

Ի վերջո, վերին վահանակը մշակվում է միայն շրջանների և նահանգի սահմանների ուրվագծերով: Յուրաքանչյուր շրջան ունի մի փոքրիկ դարակ, որը կստանա 1/8 դյույմ լուսարձակող ակրիլ:

Խոսելով ակրիլից, ժամանակն է դրանք հաջորդաբար մշակել:

Քայլ 3. Մշակեք շրջանները ակրիլային թերթից

Image
Image
Մշակեք շրջանները ակրիլային թերթից
Մշակեք շրջանները ակրիլային թերթից
Մշակեք շրջանները ակրիլային թերթից
Մշակեք շրջանները ակրիլային թերթից

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

Ես կարողացա ստանալ անհրաժեշտ բանաձևը 1/8 դյույմ երկու ֆլեյտայի պարույրով 18, 500 պտույտ/րոպե արագությամբ և 200 վայրկյան արագությամբ: Լավ հոսքերի և արագությունների հաշվիչն այստեղ օգտակար է: Ես խորհուրդ կտայի այն cnccookbook.com կայքում: Ֆլեյտայի մեկ բիթը նույնիսկ ավելի լավ կաշխատեր, բայց ես ձեռքը չունեի: CAM- ի աշխատանքներում այս կտորների վրա փոքր ներդիրներ պահելը կարևոր է, որպեսզի պատրաստի կտորները չկոտրվեն և չհայտնվեն սենյակ:

Մարզերը ճիշտ չափսերի դարձնելու կախարդական օֆսեթը ստացվեց.075 -ի հետընթացը գծի գծի կենտրոնական գծից: Սա թույլ տվեց 1/8 սահմանի 1/2 -ը գումարած մի փոքր ավելորդ, որպեսզի վահանակը տեղում ընկնի: Որոշ կտորների վրա փոքր քանակությամբ հղկում էր պահանջվում, որպեսզի նրանք տեղն ընկնեն: Կրկին, մի փունջ շփում հարմար կտորները դարձրեցին այս արագ և հեշտ աշխատանքը:

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

Պարզապես հաճույքի համար ես սկսեցի մի քանի կտոր փորձարկել: Սկսելով գալ: Թույն!

Wantանկանում եք ֆայլեր մշակել շրջանները: Իհարկե! Տեսնել Հավելվածը.

Քայլ 4: Ներկ և ներկ

Ներկ և բիծ
Ներկ և բիծ
Ներկ և բիծ
Ներկ և բիծ
Ներկ և բիծ
Ներկ և բիծ

Նախքան մեր բոլոր կտորները հավաքելը, մենք պետք է նախ ներկենք և ներկենք: Փայտե վահանակի համար օգտագործել եմ բծերի համադրություն, եզրային շերտի համար `լակի ներկ և LED շերտի համար` արտացոլող սպիտակ: Արագ աշխատանք, և մենք գնում ենք հավաքի: Զվարճանալ!

Քայլ 5: Կպչեք վահանակներ

Կպչեք վահանակներ
Կպչեք վահանակներ
Կպչեք վահանակներ
Կպչեք վահանակներ
Կպչեք վահանակներ
Կպչեք վահանակներ

Այժմ ժամանակն է սոսնձել ներքևի վահանակը սոճու միջուկի հատակին, այնուհետև MDF պետական սահմանի վահանակը `սոճու միջուկին: Ես պարզապես մի շարք սեղմակներ օգտագործեցի դա անելու համար:

Քայլ 6. Միացրեք LED- ները Friction Fit- ով և միացրեք Arduino- ն

Լարացրեք LED- ները Friction Fit- ով և միացրեք Arduino- ն
Լարացրեք LED- ները Friction Fit- ով և միացրեք Arduino- ն
Լարացրեք LED- ները Friction Fit- ով և միացրեք Arduino- ն
Լարացրեք LED- ները Friction Fit- ով և միացրեք Arduino- ն
Լարացրեք LED- ները Friction Fit- ով և միացրեք Arduino- ն
Լարացրեք LED- ները Friction Fit- ով և միացրեք Arduino- ն

Այս մղձավանջային աշխատանքը չափազանց պարզ էր այստեղ շփման հարմարվողականության հանդուրժողականությամբ: Գրիչի հետևի ծայրը ես նրանց սեղմեցի տեղում: Գործնականում ներխուժեց և դուրս չի գա առանց զգալի ուժի: Glueրագրի այս մասի համար որևէ տեսակի սոսինձ չի օգտագործվել: Սա հեշտացնում է հավաքումը: Ես շատ նախագծեր եմ կատարել, որտեղ ստիպված էի ժամեր շարունակ լարել լարերը և դա բառացիորեն տևել է 10 րոպե: Սա ամենահեշտ ճանապարհն է: Ես փորձեցի զիկզագի կարգով կարգավորել պետությունը ՝ խմբավորումները պահելով այնպես, որ յուրաքանչյուր շրջան հաջորդական լինի տողի երկայնքով:

Արդուինոյին միանալը պարզ էր փոքրիկ տախտակի և միացնող լարերի միջոցով: Էներգամատակարարումը ebay գնում էր: 5v և 8amps- ը չափազանց մեծ է այս ծրագրի համար, բայց տալիս է մեծ ծախսեր: Այս բաները միացնելը պարզ է: +5v դեպի VCC կապը, Ground to the ground pin և այնուհետև միացրեք լարը նույն 5 վ աղբյուրով: Մնացած միակ կապը տվյալների պինն է, որն ուժ է տալիս տողին: Իմ դեպքում ես տվյալների համար օգտագործել եմ D7- ը: Հիմա անցնենք ծրագրավորմանը:

Քայլ 7: Arduino- ի կոդավորում

Arduino- ի կոդավորում
Arduino- ի կոդավորում
Arduino- ի կոդավորում
Arduino- ի կոդավորում

LED- ները սնուցվում են arduino- ով, որը կոդավորող տորթ է պատրաստում: Նախնական առօրյաներից մի քանիսը փոխառվել են (այսինքն. Գողացվել) github- ի գերազանց ws2813fx գրադարանից: Հեշտ էր փոփոխել այս առօրյան ՝ անելու այն, ինչ ինձ պետք էր: Կոդի ամբողջ շրջանակը դժվար կլիներ ամբողջությամբ բացատրել, բայց ահա մի քանի կարևոր կետ:

Ահա ցուցադրման առկա ռեժիմները.

#define FX_MODE_STATIC 0 # սահմանել FX_MODE_BLINK 1 #define FX_MODE_BREATH 2 #define FX_MODE_COLOR_WIPE 3 #define FX_MODE_COLOR_WIPE_INV 4 #define FX_MODE_COLOR_WIPE_REV 5 #define FX_MODE_COLOR_WIPE_REV_INV 6 #define FX_MODE_COLOR_WIPE_RANDOM 7 #define FX_MODE_RANDOM_COLOR 8 #define FX_MODE_SINGLE_DYNAMIC 9 #define FX_MODE_MULTI_DYNAMIC 10 #define FX_MODE_RAINBOW 11 #define FX_MODE_RAINBOW_CYCLE 12 #define FX_MODE_SCAN 13 #define FX_MODE_DUAL_SCAN 14 #define FX_MODE_FADE 15 #define FX_MODE_THEATER_CHASE 16 #define FX_MODE_THEATER_CHASE_RAINBOW 17 #define FX_MODE_RUNNING_LIGHTS 18 #define FX_MODE_TWINKLE 19 #define FX_MODE_TWINKLE_RANDOM 20 #define FX_MODE_TWINKLE_FADE 21 #define FX_MODE_TWINKLE_FADE_RANDOM 22 #define FX_MODE_SPARKLE 23 #define FX_MODE_FLASH_SPARKLE 24 #սահմանել FX_MODE_HYPER_SPARKLE 25 #սահմանել FX_MODE_STROBE 26 #սահմանել FX_MODE_STROBE_RAINBOW 27 #սահմանել FX_MODE_MULTI_STROBE 28 #սահմանել FX_MODE_BOD_EXE_HEHEIN_BOW_BOW_BOW_BOW_BIN_HOW_BOW_BOW_BOW_BOW_BOW_BOW_BOW_BOW_BOW_BINDOW_BOW_BOW_BOW_BOW_BINK_FIN_HOW_FIN_HOW ne FX_MODE_CHASE_RANDOM 32 #define FX_MODE_CHASE_RAINBOW 33 #define FX_MODE_CHASE_FLASH 34 #define FX_MODE_CHASE_FLASH_RANDOM 35 #define FX_MODE_CHASE_RAINBOW_WHITE 36 #define FX_MODE_CHASE_BLACKOUT 37 #define FX_MODE_CHASE_BLACKOUT_RAINBOW 38 #define FX_MODE_COLOR_SWEEP_RANDOM 39 #define FX_MODE_RUNNING_COLOR 40 #define FX_MODE_RUNNING_RED_BLUE 41 #define FX_MODE_RUNNING_RANDOM 42 #define FX_MODE_LARSON_SCANNER 43 #define FX_MODE_COMET 44 #define FX_MODE_FIREWORKS 45 #define FX_MODE_FIREWORKS_RANDOM 46 #define FX_MODE_MERRY_CHRISTMAS 47 #define FX_MODE_FIRE_FLICKER 48 #define FX_MODE_FIRE_FLICKER_SOFT 49 #define FX_MODE_FIRE_FLICKER_INTENSE 50 #define FX_MODE_CIRCUS_COMBUSTUS 51 #define FX_MODE_HALLOWEEN 52 #define FX_MODE_BICOLOR_CHASE 53 #define FX_MODE_TRICOLOR_CHASE 54 #define FX_MODE_ICU 55

Եվ հայացք նմուշային առօրյայից մեկին:

uint16_t WS2812FX:: mode_breath (void) {// 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 // քայլ uint16_t breath_delay_steps = {7, 9, 13, 15, 16, 17, 18, 930, 19, 18, 15, 13, 9, 7, 4, 5, 10}; // կախարդական թվեր շնչառական LED uint8_t breath_brightness_steps = {150, 125, 100, 75, 50, 25, 16, 15, 16, 25, 50, 75, 100, 125, 150, 220, 255}; // նույնիսկ ավելի կախարդական թվեր:

եթե (SEGMENT_RUNTIME.counter_mode_call == 0) {

SEGMENT_RUNTIME.aux_param = շնչառական_պայծառ_ քայլեր [0] + 1; // մենք օգտագործում ենք aux_param ՝ պայծառությունը պահելու համար}

uint8_t breath_brightness = SEGMENT_RUNTIME.aux_param;

եթե (SEGMENT_RUNTIME.counter_mode_step <8) {breath_brightness--; } այլ {շնչառական_պայծառություն ++; }

// թարմացնել ընթացիկ հետաձգման ինդեքսը, երբ հասնում է նպատակային պայծառությանը, սկսեք նորից վերջին քայլից հետո

if (breath_brightness == breath_brightness_steps [SEGMENT_RUNTIME.counter_mode_step]) {SEGMENT_RUNTIME.counter_mode_step = (SEGMENT_RUNTIME.counter_mode_step + 1) % (sizeof (breath_brightness_steps)) }

int lum = քարտեզ (շնչառական_պայծառություն, 0, 255, 0, _ պայծառություն); // պահպանել լուսավորությունը օգտագործողի կողմից սահմանված պայծառությունից ցածր

uint8_t w = (SEGMENT.colors [0] >> 24 & 0xFF) * lum / _brightness; // փոփոխել RGBW գույները պայծառությամբ info uint8_t r = (SEGMENT.colors [0] >> 16 & 0xFF) * lum / _brightness; uint8_t g = (SEGMENT.colors [0] >> 8 & 0xFF) * lum / _brightness; uint8_t b = (SEGMENT.colors [0] & 0xFF) * lum / _brightness; for (uint16_t i = SEGMENT.start; i <= SEGMENT.stop; i ++) {Adafruit_NeoPixel:: setPixelColor (i, r, g, b, w); }

SEGMENT_RUNTIME.aux_param = շնչառական_պայծառություն;

վերադարձնել breath_delay_steps [SEGMENT_RUNTIME.counter_mode_step]; }

Ամբողջական աղբյուրը կարելի է ներբեռնել ws2812fx github պահոցից:

Քայլ 8: Վայելեք գեղարվեստական լուսացույցը

Ես շատ գոհ էի արդյունքից: Դա իսկապես ուրախություն է դիտել, և ես հուզված եմ շարունակել խաղալ տարբեր տվյալների ցուցադրման կոնֆիգուրացիաներով: Ազատ զգալ տվեք ցանկացած հարց կամ զանգահարեք ինձ բաց թողած ցանկացած տեղեկատվության համար:

LED մրցույթ 2017 թ
LED մրցույթ 2017 թ
LED մրցույթ 2017 թ
LED մրցույթ 2017 թ

Երկրորդ մրցանակ LED մրցույթում 2017 թ

Arduino մրցույթ 2017
Arduino մրցույթ 2017
Arduino մրցույթ 2017
Arduino մրցույթ 2017

Երկրորդ տեղը զբաղեցնող Arduino մրցույթում 2017 թ

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