Կապույտ լամպ չկա `4 քայլ
Կապույտ լամպ չկա `4 քայլ
Կապույտ լամպ չկա
Կապույտ լամպ չկա
Կապույտ լամպ չկա
Կապույտ լամպ չկա
Կապույտ լամպ չկա
Կապույտ լամպ չկա
Կապույտ լամպ չկա
Կապույտ լամպ չկա

Այսպիսով, այս Lazy Old Geek- ը (L. O. G.) աշխատել է Blue Light նախագծի վրա.

www.instructables.com/id/Blue-Light-Projec…

www.instructables.com/id/Blue-Light-Projec…

Դե, հաջորդ քայլի համար ես ուզում էի մի լամպ, որը ցերեկը պայծառ լիներ և երեկոյան/գիշերը կապույտ լույս չուներ:

Դիզայնի սարքավորում

Ես որոշեցի օգտագործել RTC (Իրական ժամանակի ժամացույց) `լուսավորման փոփոխությունների ժամանակը վերահսկելու համար:

Ես ընտրեցի DS3231- ը, քանի որ այն ավելի լավ ժամանակ է պահում ճշգրտությունը, քան DS1307- ը: DS3231- ը կարող է լինել 5 վ կամ 3.3 վ:

Լույսի համար ես կօգտագործեմ WS2812B LED լար: Սրանք ունեն երեք մետաղալարով պարզ ինտերֆեյս և վերահսկելի կարմիր, կանաչ և կապույտ LED- ներ: WS2812B- ն 5 վ սարքեր են:

Միկրոհսկիչի համար ես կօգտագործեմ Pro Micro, 5v 16MHz:

Թեև WS2812B- ն, ամենայն հավանականությամբ, կաշխատի 3.3 Վ լարման հետ, ավելի լավ է օգտագործել 5 Վ Arduino:

Pro Micro- ն էժան Arduino է, որն օգտագործում է Atmega32U4 միկրոկոնտրոլեր:

Լամպը կունենա լամպը միացնելու/անջատելու միացման/անջատման անջատիչ:

Պոտենցիոմետր կլինի պայծառությունը վերահսկելու համար:

Դիզայնի ծրագրակազմ

DS3231 RTC- ը կվերահսկի ժամանակը, այն ունի մարտկոցի պահուստ, այնպես որ այն պետք է պահի նույնիսկ էներգիայի կորստի դեպքում:

Dayերեկը բոլոր RGB LED- ները միացված կլինեն, վերահսկելի կաթսայի միջոցով մինչև ամբողջ ուժգնությունը:

Վաղ երեկոյան Կապույտ LED- ները անջատված կլինեն, կարմիրը և կանաչը ՝ առավելագույնը:

Երեկոյան առաջընթացին կարմիր և կանաչ լուսադիոդային լուսարձակները կնվազեն ՝ կարմիրի նախընտրությամբ կանաչից (2 -րդ մասի իմ փորձարկումները ցույց են տալիս, որ կանաչ լուսադիոդների մեջ կա որոշ կապույտ):

Aroundամը 10 -ից հետո բոլոր LED- ները կանջատվեն:

ԽՆԴԻՐ:

Վերադառնալով DS3231 RTC մոդուլին, ես իմը գնեցի Aliexpress- ից, ինչպես դա արեցի մյուս բաղադրիչների համար:

Սրանք պետք է աշխատեն և լիցքավորեն LIR2032 վերալիցքավորվող մարտկոցով: Ես փորձեցի դա: Մոտ մեկ օր անց մարտկոցը վերջացել էր:

Ինտերնետում որոշ որոնումներից հետո ես գտա այս հոդվածը:

www.onetransistor.eu/2019/07/zs042-ds3231-…

Ես համաձայն եմ այս վերլուծության հետ, բայց կարծում էի, որ LIR2032- ը գանձվելու է համարժեք, բայց ոչ չափազանց մեծ: Ես, ըստ երևույթին, սխալ էի: Իմ DS3231- ը, չնայած նաև նշված էր որպես ZS-042, ինչպես հոդվածում, փոքր-ինչ տարբերվում էր դրանից հետո, բայց գրեթե նույնն էր: Այսպիսով, ես չվաճառեցի դիոդին, որը երևում է նկարում և տեղադրեցի CR2032 մարտկոց: Առանց դիոդի մոդուլը չի փորձի լիցքավորել մարտկոցը: Այժմ DS3231- ը ճիշտ ժամանակն է պահում նույնիսկ հոսանքն անջատված վիճակում, և մարտկոցը պետք է լավ լինի երկար տարիներ:

Էլեկտրաէներգիայի պահանջներ

WS2812B- ն RGB LED- ների շարք է, որոնք երբեմն կոչվում են NeoPixels: Յուրաքանչյուր NeoPixel- ի համար պահանջվում է առավելագույնը 60 մԱ: Ես օգտագործում եմ 12 Neo պիքսել, ուստի անհրաժեշտ է 0.72A: Ես օգտագործում եմ 2A USB ադապտեր, այնպես որ շատ հոսանք ունեցեք:

Քայլ 1: BlueLamp PCB

BlueLamp PCB
BlueLamp PCB
BlueLamp PCB
BlueLamp PCB

Այսպիսով, ինչպես սովորաբար անում եմ, ես օգտագործեցի Eagle Cadsoft անվճար ծրագրակազմը (այժմ ՝ Autodesk) ՝ իմ PCB- ն դասավորելու և ստեղծելու համար:

www.autodesk.com/products/eagle/free-downl…

Արծիվի սխեմատիկ և տախտակի ֆայլերը կցված են նկարի սխեմատիկին զուգահեռ:

Սխեմատիկայի, 330 օմ դիմադրության և 10 000uFd կոնդենսատորի վերաբերյալ մեկ մեկնաբանություն հանդիսանում են Adafruit- ի neopixel ուղեցույցի առաջարկությունները.

learn.adafruit.com/adafruit-neopixel-uberg…

«Chահի սեղմման կոճակ» օգտագործած միացման կոճակը այստեղից էր.

www.aliexpress.com/item/32904942704.html?s…

10K (B103) պոտենցիոմետր այստեղից.

www.aliexpress.com/item/32672253655.html?s…

Քայլ 2: Լամպի հավաքում

Լամպի հավաքում
Լամպի հավաքում
Լամպի հավաքում
Լամպի հավաքում

Ես պատահաբար ունեցա ծանր հիմք իմ գնած լամպից: Դրա վրա կար մեծ կլորիկ քորոց: Ես վերցրեցի մի կտոր PVC խողովակ, որը տեղավորվում էր դրա վրա: Դա մի փոքր թուլացած էր, այնպես որ ես վերցրեցի մի պտուտակ և մի երկու ընկույզ, որպեսզի կարողանամ այն սեղմել: (տես նկարը)

WS2812B- ն կարելի է կտրել ըստ ձեր ուզած NeoPixel- ի թվի: Իմ գնած ժապավենը լայն տարածություններ ունի NeoPixels- ի միջև: Ես ուզում էի, որ այն մի փոքր պայծառ լիներ, այնպես որ ես կտրեցի երկու 6 NeoPixel շերտ և դրանք զուգահեռաբար մի փոքր փոխհատուցեցի: WS2812B շերտերը կարող են կտրվել NeoPixels- ի միջև: Այս դեպքում ինձ 180 աստիճանի փոփոխություն էր պետք, այնպես որ ես կտրեցի ժապավենը և անցա ցատկող լարերը: Եթե երբևէ դա անեք, համոզվեք, որ ազդանշանները և ուղղության սլաքները ճիշտ են: (տես նկարը)

Այս WS2812B- ն ունի նաև լարեր և միակցիչ (այս միակցիչը JST-SM 3 պին միակցիչ է, եթե ցանկանում եք այն օգտագործել այլուր): Քանի որ այս միակցիչն արդեն այնտեղ էր, ես պարզապես լարերը միացրեցի իմ PCB- ին: Այս WS2812B- ի համար կարմիր մետաղալարը 5 վ է, կանաչը `ազդանշան, իսկ սպիտակը` հիմնավորված:

Երբ պատրաստեցի PCB- ն, ներքևից մի փոքր ժապավեն դրեցի և կպցրեցի հիմքին: Հետո միացրեցի Pro Micro- ն և DS3231- ը:

Քայլ 3: Arduino Sketch

Arduino Էսքիզ
Arduino Էսքիզ

Թեև ես գնել եմ իմ Pro Micro- ն Aliexpress.com- ից, բայց Arduino- ին աշխատեցնելու համար օգտագործել եմ հետևյալ տեղեկությունները.

learn.sparkfun.com/tutorials/pro-micro--fi…

DS3231- ի համար գրադարանը տեղադրելու համար ես օգտագործում եմ սա.

github.com/PaulStoffregen/DS1307RTC

Ներբեռնեք Zip ֆայլը

Բացեք Arduino- ն, ընտրեք «Էսքիզ» «Ներառել գրադարանը» «Ավելացնել. Zip գրադարան»

Տեղադրեք հետևյալը ՝ օգտագործելով նույն մեթոդը

Libraryամանակի գրադարան PaulStoffregen

github.com/PaulStoffregen/Time

Zամային գոտու գրադարան

github.com/JChristensen/Timezone

Ավարտելուց հետո գործարկեք Arduino- ն:

Գործիքների տախտակների ներքո ընտրեք «Sparkfun Pro Micro»

Կրկին կտտացրեք Գործիքներ, պրոցեսորի ընտրություն կլինի

Կարող է անհրաժեշտ լինել փոխել այն «Atmega32U4 (5V 16Mhz)»

ARԳՈՇԱՈՄ. Եթե դուք անփույթ եք, ինչպես ես, ես սխալմամբ ընտրել եմ «Atmega32U4 (3.3V 8Mhz)»: Սա «աղյուսեց», որպեսզի Արդուինոն չկարողանա տեսնել այն: Դե, ես սովորաբար փորձում եմ կարդալ նոր նյութեր, նախքան այն ձեռք բերելը և ինչ -որ բան հիշելը այս իրադարձության վերաբերյալ.

learn.sparkfun.com/tutorials/pro-micro--fi…

Այս ուղեցույցում կա մի հատված, որը կոչվում է «Ինչպես վերակենդանացնել« աղյուսով »միկրո»: Ինչպես նշվում է, դա բարդ ընթացակարգ է, բայց ինձ հաջողվեց վերականգնել իմը:

ԵՏՀ. Եթե ձեզ հետաքրքրում է, թե ինչու են տարբեր տարբերակներ `տարբեր լարումներով և արագություններով, Atmega32U4- ը (նույնը, ինչ Atmega328- ը) լավ կաշխատի 5 Վ լարման դեպքում` 16 ՄՀց ժամացույցով: Բայց 3.3 Վ -ում դիզայնի բնութագիրը ասում է, որ 16 ՄՀց ժամացույցը չի աշխատի, այդ իսկ պատճառով նրանք ունեն ժամացույց 8 ՄՀց հաճախականությամբ: Սովորաբար, խոսելով Arduino ծրագրային ապահովման հետ, կլուծվի ժամանակի ցանկացած խնդիր:

RTC TIP. DS1307- ի համար գրված ծրագրակազմի մեծ մասը կաշխատի DS3231- ի հետ, քանի որ դրանք ունեն շատ նման ծրագրակազմ:

Ամառային ժամանակ

Դե, ես ուզում էի DST- ն իրականացնել, այնպես որ ես ստիպված չէի լամպը տարեկան երկու անգամ ծրագրավորել: Ես մի քանի օր աշխատեցի դրա վրա: Ես չկարողացա գտնել որևէ լավ պարզ բացատրություն այն մասին, թե ինչպես են աշխատում Time- ը, TimeLib- ը և RTClib- ը:

Ես իրականում ինչ -որ DST կոդ եմ գրել իմ IPClock- ի համար.

www.instructables.com/id/NO-MORE-SPRING-FO…

դա աշխատում էր ինտերնետի համար, բայց ես չկարողացա այն աշխատել RTC ժամանակի համար:

Վերջապես ես հանդիպեցի JChristensen- ի հետևյալին.

forum.arduino.cc/index.php?topic=96891.0

github.com/JChristensen/Timezone

Սա օգտագործելու համար նախ պետք է RTC- ն սահմանել UTC (Համակարգված համընդհանուր ժամանակ), սա Անգլիայի Գրինվիչ քաղաքում է: Դե, չգիտեի, թե ինչպես դա անել, բայց գտա այս հոդվածը.

www.justavapor.com/archives/2482

Վերաշարադրեք այն Mountain time- ի համար (կցվում է) UTCtoRTC.ino

Հետո ես ներառեցի ժամային գոտին իմ ուրվագծի մեջ: Իշտն ասած, ես այն չեմ փորձարկել, այնպես որ ենթադրեմ, որ այն աշխատում է:

Իմ ուրվագիծը կցված է MTS_BlueLamp.ino:

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

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

Ես վերևում մի փոքրիկ կեռ պատրաստեցի իմ CPAP դեմքի դիմակի համար: Ես այն կախում էի իմ հին մահճակալի վրա:

Հիմնականում շատ գոհ է այս լամպից: Ամբողջովին պայծառ ցերեկը և ոչ մի կապույտ երեկոյան և գիշերը:

Մի բան, որն ինձ դուր չի գալիս, այն է, որ չեմ կարող օգտագործել այն առավոտյան 10 -ից հետո: և մինչև առավոտյան 5 -ը

Ես նաև պարզեցի, որ ես չեմ օգտագործում անջատիչը միացնելու/անջատելու համար, քանի որ սովորաբար ես օգտագործում եմ լուսամփոփ անջատիչը:

Ապագայում ես կարող եմ վերաշարադրել էսքիզը և փոխել կոճակը պլանավորված կամ չպլանավորված (լրիվ միացված) անջատիչին: Բայց կոդավորման վատ իմ հմտությունների դեպքում կարող եմ մի փոքր սպասել:

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