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

Անլար լուսնային փուլին հետևող ՝ 6 քայլ (նկարներով)
Անլար լուսնային փուլին հետևող ՝ 6 քայլ (նկարներով)

Video: Անլար լուսնային փուլին հետևող ՝ 6 քայլ (նկարներով)

Video: Անլար լուսնային փուլին հետևող ՝ 6 քայլ (նկարներով)
Video: EL OVNI QUE SOBREVOLÓ ZARAGOZA con CARLOS BOGDANICH 2024, Նոյեմբեր
Anonim
Անլար լուսնային փուլին հետևող
Անլար լուսնային փուլին հետևող
Անլար լուսնային փուլին հետևող
Անլար լուսնային փուլին հետևող
Անլար լուսնային փուլին հետևող
Անլար լուսնային փուլին հետևող
Անլար լուսնային փուլին հետևող
Անլար լուսնային փուլին հետևող

Լուսնային փուլին հետևող սարքը փոքր, կիսափակ սարք է, որը թույլ է տալիս հավաքել Լուսնի մասին կրիտիկական տեղեկատվություն: Սարքը զեկուցում է այնպիսի պարամետրերի մասին, ինչպիսիք են տեսանելի լուսավորությունը, փուլը, լուսնի ծագումն ու մայրամուտը և այլն:

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

Նախագիծը բավականին պարզ է և պահանջում է ինտերնետին միացված սարք, ինչպիսին է ESP32- ը, սակայն միշտ կարող եք ծածկագիրը հարմարեցնել WiFi վահանի, Ethernet վահանի կամ ինտերնետին միացած ցանկացած այլ սարքի հետ աշխատելու համար: Lunar Phase Tracker- ը նախագծված է լիթիում-պոլիմերային մարտկոցներից աշխատելու և էլեկտրաէներգիայի արդյունավետ էներգիայի արդյունավետ էկրանով, որը ոչ միայն ապահովում է հիանալի տեսք, այլև պահում է վերջին պատկերը, նույնիսկ եթե հոսանքը անջատված է:

Քայլ 1. Աստղագիտության տեղեկատվության գրանցում

Աստղագիտության տեղեկատվության գրանցում
Աստղագիտության տեղեկատվության գրանցում
Աստղագիտության տեղեկատվության գրանցում
Աստղագիտության տեղեկատվության գրանցում

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

Գնացեք Եղանակի ստորգետնյա տարածք, կտտացրեք «գրանցվել» և լրացրեք ձեր բոլոր տվյալները: Հաշիվը լիովին անվճար է, ինչպես նաև ձեր API զանգերը, քանի դեռ չեք պահանջում շատ արդյունքներ րոպեում կամ գերազանցում եք օրական 500 հարցումը: Համոզվեք, որ էջանշում եք այս էջը, միշտ կարող եք հետ վերադառնալ և օգտագործել API- ն եղանակի վիճակագրության և այլ հիանալի տեղեկությունների համար: Ձեր հաշիվը ստեղծելուց հետո գնացեք API կայք, կտտացրեք «գնման բանալին» և ընտրեք անվճար ծրագիրը, պարզապես պետք է մուտքագրեք մի քանի մանրամասներ, և դուք խնդիրներ կունենաք devoloper Key ID- ի հետ: Այս ID- ն եզակի է ձեզ համար և պետք է գաղտնի լինի: Ես տրամադրել եմ իմ բանալին Arduino- ի կոդի օրինակով, որը մենք մի փոքր ուշ կանդրադառնանք: Դուք ավելի քան ողջունելի եք օգտագործել իմ բանալին ID- ն փորձարկման նպատակով, բայց ես խորհուրդ եմ տալիս գրանցվել ձեր սեփականի համար:

Ձեր յուրահատուկ ID- ն ունենալուց հետո կարող եք անցնել Աստղագիտության API տեղեկատվությանը, որն անկեղծորեն շատ մերկ է: Դուք կգտնեք մի պարզ օրինակ, որն այսպիսի տեսք ունի.

api.wunderground.com/api/8c6dc2e5c6f36de9/a…

Այս URL- ը չափազանց կարևոր է, քանի որ հենց դա է մեզ տալիս այն ամբողջ տեղեկատվությունը, որն անհրաժեշտ է մեր նախագիծը պատրաստելու համար: Շարունակեք, կտտացրեք հղմանը, կտեսնեք արդյունքներ Սիդնեյի համար, ինչպիսիք են լուսնի փուլը, լուսավորությունը և այլ լավ տեղեկություններ: Նայեք URL- ին, մենք կտեսնենք Սիդնեյ, Ավստրալիա և երկար ծածկագիր, որը սկսվում է «8c6dcwe…» - ով: Այդ ծածկագիրը ձեր հիմնական ID- ն է, որը մենք ավելի վաղ վերցրել էինք: Փոխեք ձեր ծածկագիրը ձեր եզակի ID- ով և տեսեք, թե ինչպես է այն աշխատում, դուք պետք է ստանաք նույն արդյունքը: Փորձեք խաղալ տեղերով: Ինձ համար Հարավային Աֆրիկայում ես օգտագործում եմ Յոհանեսբուրգը և AԱ -ն:

Քայլ 2: Բաղադրիչներ

Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ
Բաղադրիչներ

Այսպիսով, հիմա հետաքրքիր նյութերի համար: Մեզ պետք կլինի մի քանի բաղադրիչ, շատերը և դրանցից ոչ մեկը չափազանց թանկ չէ, և ես տրամադրել եմ Amazon- ի հղումները իմ օգտագործած բաղադրիչների համար: Հիշեք, որ եթե դուք լավ եք ծրագրավորում, ազատ զգացեք օգտագործել ցանկացած հասանելի էկրան կամ ինտերնետ սարք: Իմ կառուցվածքի համար ես օգտագործել եմ հետևյալը.

Waveshare E-Ink SPI 4.2 "SPI էկրան

  • ESP32 Dev Board (ընդհանուր)
  • Adafruit Power Boost 500
  • 5000mAh Lipo մարտկոցի փաթեթ
  • Stripboard (Protoboard)

Ձեզ անպայման անհրաժեշտ կլինեն այնպիսի հիմնական գործիքներ, ինչպիսիք են.

  • Oldոդման երկաթ
  • Sոդող
  • Բազմաչափ
  • Կալիպերներ
  • Հորատեք մի փոքր հատված ՝ նախատախտակի վրա հետքերը բաժանելու համար
  • Մետաղալար
  • Մետաղալարեր
  • Սոսինձ (տաք սոսինձը կաշխատի)
  • Տեղադրված է Arduino IDE- ով աշխատող համակարգիչ

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

Քայլ 3: Համակարգչային ծրագրակազմ

Նախքան սկսենք աշխատել միացման և ծրագրավորման վրա, մեզ առաջին հերթին անհրաժեշտ կլինի Arduino IDE- ի վերջին տարբերակը, որը կարելի է գտնել այստեղ:

Քանի որ մենք օգտագործում ենք ESP32- ը Arduino միջուկով, մենք պետք է տեղադրենք այս միջուկը Arduino IDE- ի վրա: Հետևեք Github- ի այս պարզ ուղեցույցին, որը ցույց է տալիս, թե ինչ ծրագրակազմ և կազմաձևում է անհրաժեշտ անել, որպեսզի կարողանաք օգտագործել ձեր ESP32 dev board- ը Arduino IDE- ի շրջանակներում:

Մեզ անհրաժեշտ կլինի նաև երկու լրացուցիչ գրադարան ՝ մեր համակարգը աշխատեցնելու համար: Առաջինը Arduino JSON գրադարանն է, որը մեզ թույլ է տալիս կարդալ և վերլուծել JSON- ի հարցումները, ինչը հենց այն է, ինչ մենք ստանում ենք Եղանակային ստորգետնյա տարածքից: Այս երկու գրադարանները կարող եք ներբեռնել իմ անձնական Dropbox- ից կամ ներքևում: Երբ ունեք ֆայլերը, հանեք դրանք և տեղադրեք դրանք ձեր Arduino գրադարանի թղթապանակում: Այն հիմնականում տեղակայված է C: / Users / YOUR_NAME / Documents / Arduino / գրադարաններում: Համոզվեք, որ վերագործարկեք ձեր IDE- ն, հակառակ դեպքում Arduino- ն չի վերցնի նոր հավելումները: Այդ թղթապանակում է գտնվում նաև Arduino ՊԵԿ -ի հիմնական կոդը: Գրադարանը պարունակում է նաև Waveshare ցուցադրումներից տրամադրված նմուշի փոփոխված տարբերակ: Ֆայլերը փոխվել են ESP32 մոդուլով աշխատելու համար ՝ իրենց GPIO- ներով, և ես ներդրել եմ նոր «տառատեսակ», որը պարունակում է լուսնի տարբեր փուլերի բոլոր պատկերները:

Քայլ 4: Շղթան

The Circuit
The Circuit
The Circuit
The Circuit
The Circuit
The Circuit

Լավ, ուրեմն դրա միացումը չափազանց պարզ է և պահանջում է ընդամենը մի քանի բաղադրիչ և լարեր:

Ընդհանուր գաղափարն այն է, որ մենք ունենք Lipo լիցքավորիչի միացում, խթանման փոխարկիչ, որը մեզ տալիս է 5V, այնուհետև ESP32 Dev Kit- ը, որը լարումը նվազեցնում է մինչև 3.3V: Այս 3.3 Վ-ն օգտագործվում է նաև Waveshare E-Ink ցուցադրման համար: Այո, սա փոքր -ինչ անարդյունավետ է ՝ գծային կարգավորիչով իջնելուց, այնուհետև հեռանալուց, բայց ESP32- ը աշխատում է շատ սարսափելի լարման տիրույթում: Ինչ -որ տեղ մոտ 2.5 - 3.6 Վ: Սա հարմար չէ մարտկոցների նախագծերի համար, հատկապես այն դեպքում, երբ օգտագործվում են լիթիումի պոլիմերային բջիջներ:

Հիմնական էլեկտրագծերը հետևյալն են.

  • ESP32 Dev Kit- ում բարձրացրեք 5V փոխարկիչի Vin & GND թողարկիչը
  • ESP32 3.3V 3.3V & GND E-Ink Display
  • ESP32 PIN 18 CLK E-Ink Display
  • ESP32 PIN 23 DIN/MOSI E-Ink Display
  • ESP32 PIN 5 CS/SS E-Ink Display
  • ESP32 PIN 32 DC E-Ink Display
  • ESP32 PIN 33 RST E-Ink Display
  • ESP32 PIN34 BUSY E-Ink Display

Դուք կարող եք տեսնել, որ էլեկտրամոնտաժը շատ պարզ է, և իմ DIY վահանակների կառուցումը տևեց ընդամենը 15 րոպե: Համոզվեք, որ էլեկտրամատակարարում ստանալուց մի քանի մետր երկարությամբ միացումների առկայությունը ստուգեք:

Ես նաև հանեցի LED- ները իմ ESP32 և Lipo խթանման տախտակից `քնի ռեժիմում մոտ 40 մԱ էներգիա խնայելու համար: Սա կօգնի մարտկոցներին մի փոքր ավելի երկար ծառայել: Youանկության դեպքում կարող եք տեղադրել հոսանքի անջատիչ, էներգախնայողության միացում, ավտոմատ անջատում և այլն: Դուք կարող եք ընդլայնել այս նախագիծը և այն դարձնել այնքան բարդ, որքան ցանկանում եք:

Քայլ 5: Կոդ

Օրենսգիրքը
Օրենսգիրքը
Օրենսգիրքը
Օրենսգիրքը
Օրենսգիրքը
Օրենսգիրքը
Օրենսգիրքը
Օրենսգիրքը

Կոդը կարելի է գտնել մատակարարվող թղթապանակում 3 -րդ քայլի ընթացքում կամ կարող եք ներբեռնել.ino ֆայլը ներքևից: Դուք պետք է տեղադրեք համապատասխան գրադարանները, ինչպես նշված է 3 -րդ քայլում, որպեսզի ամեն ինչ միասին աշխատի: Այս քայլի համար շատ բան չկա ասելու, քանի որ կոդը մատակարարվում է աշխատանքային վիճակում: Sureրագիրը փորձարկելուց առաջ համոզվեք, որ տեղադրեք ձեր SSID- ը և ցանցի գաղտնաբառը: Դուք միշտ կարող եք գործարկել ESP32 WiFi Scan- ը ՝ մոտակա անլար ցանցերը հայտնաբերելու համար: Գուցե դուք կարող եք փոփոխել այն ՝ հարցնելով, թե որ ցանցին եք ուզում միանալ:)

Կոդը բավականին պարզ է, և ես որոշ ժամանակ կանցկացնեմ այն մեկնաբանելու և կատարելագործելու համար առաջիկա մի քանի շաբաթվա ընթացքում: Մենք հիմնականում միանում ենք ցանցին, իմ դեպքում `իմ տան ցանցին: Այնուհետև մենք փորձում ենք միանալ Weather Underground- ին և ստանալ JSON տեքստը կայքից: Այնուհետև ArduinoJSON գրադարանը օգտագործվում է արդյունահանման համար: կամ վերլուծել JSON ծածկագիրը char զանգվածների կամ տողերի մեջ, որոնք թույլ են տալիս մեզ շահարկել արժեքները նախքան այն օգտագործողին ցուցադրելը: Կոդի վերջին հատվածը խստորեն նախատեսված է GUI- ի ծրագրավորման համար և կատարվել է փորձարկման և սխալի միջոցով: Ես նայեցի էկրանին, ավելացրի կամ նվազեցրեցի ակտիվների դիրքը և նորից գործարկեցի ծածկագիրը, մինչև որ գոհ մնացի տառատեսակի չափից, դասավորությունից և պատկերներից:

Ես էներգիայի խնայողության համար ESP32- ի համար խոր քնի ռեժիմ իրականացրեցի: Կանխադրվածը 60 վայրկյան է, սակայն ես առաջարկում եմ փոխել արժեքը մեկ կամ երկու ժամվա ընթացքում, քանի որ թարմացումները չեն լինում առնվազն մի քանի ժամ: Օրինակն ընդունում է վայրկյաններ, այնպես որ համոզվեք, որ ճիշտ եք կատարում փոխակերպումները:

Ես նաև օգտագործեցի The Dot Factory ծրագիրը ՝ նոր տառատեսակի համար վեցանկյուն զանգվածներ գեներացնելու համար: Այս տառատեսակն օգտագործվում է լուսնի փուլերի համար «պատկերներ» ստեղծելու համար: Եթե ցանկանում եք խմբագրել տառատեսակների ֆայլը, ապա համոզվեք, որ օգտագործում եք վերը նշված ծրագիրը սերնդի համար: Մի փոքր շփոթեցնող է, քանի որ E-Ink գրադարանը լավ փաստաթղթավորված չէ, և իմ հաջողության մեծ մասը փորձության և սխալի շնորհիվ էր: Երբ ես ավելի շատ ժամանակ անցկացնեմ այս ծածկագրի հետ, ես կթարմացնեմ Instructable- ը `իմ գտածոների մասին ավելի շատ տեղեկատվություն տրամադրելու համար:

Լուսնի փուլերի համար օգտագործվող տառատեսակը պետք է կատարվի ըստ ASCII ստանդարտ դասավորության: Եթե դուք բացում եք font24- ը EPD-master թղթապանակում, կարող եք տեսնել այն դասավորությունը, որտեղ 1-ին գրաֆիկը նույնականացվում է սպիտակ տարածությամբ, երկրորդը `«! »: (բացականչական նշան) և այլն: Կտեսնեք, որ ես քաշում եմ համապատասխան տառատեսակը ՝ օգտագործելով 3 -րդ համարը կամ հեշթեգի խորհրդանիշը կոդի վերջին բիթում (գործառույթ getLunarChar): Դա պայմանավորված է նրանով, որ Arduino- ն ակնկալում է ASCII ստանդարտը 32 -ից մինչև 127 -ը: Քանի որ մենք օգտագործում ենք տառատեսակներ, որոնք ոչ մի կապ չունեն իրական տառատեսակների հետ, այլ ավելի շուտ լուսնային փուլի գրաֆիկական մատրիցա, մենք պետք է ապահովենք, որ ASCII- ի կերպարը հղում կատարի լուսնի փուլի մեր ընտրած պատկերին: Սա նշանակում է, որ օգտագործելով! նշան, մեր լուսնային փուլի տառատեսակը ցույց է տալիս այդ ցուցակի երկրորդ լուսնի փուլի գրաֆիկը: Եթե նայեք լուսնային փուլի տառատեսակին, կտեսնեք լուսնի փուլերի մի ամբողջ փունջ ՝ բոլորը տարբեր լուսավորության մակարդակներով: Հետագայում ես ավելի շատ կոդ կավելացնեմ ՝ մեր կողմից գործադրված բոլոր գրաֆիկաներից օգտվելու համար: Այս պահին մենք օգտագործում ենք միայն մի քանիսը, սակայն գրաֆիկան արդեն կիրառված է լուսնային փուլի տառատեսակով և դրանից օգտվելու համար պարզապես անհրաժեշտ է ներդնել ծածկագրում:

Քայլ 6: Վերջնական հավաքում

Վերջնական ժողով
Վերջնական ժողով
Վերջնական ժողով
Վերջնական ժողով
Վերջնական ժողով
Վերջնական ժողով

Շինության վերջին և ամենագոհացուցիչ մասը հավաքման գործընթացն է: Ես նախագծեցի և 3D տպեցի պատյան, որը համապատասխանում է իմ տախտակին: Նախագիծը շատ ինքնագործ է, չկան մասնագիտական PCB- եր կամ մեկ ստանդարտ դասավորություն: Մեծ մասամբ, այն տուփը, որն ես օգտագործել եմ, բավականաչափ մեծ է ՝ տեղավորելու համար օգտագործվող ցանկացած լիպո լիցքավորիչ կամ խթանիչ փոխարկիչ: Քանի դեռ դրանք ապահովում են սույն Հրահանգում նշված նույն հիմնական գործառույթները, ապա դուք պետք է լավ լինեք:

Ես օգտագործել եմ 4 պտուտակ ՝ պարիսպի վերին և ստորին կեսը միասին պահելու և տաք սոսինձ ՝ իմ DIY սխեմաները ամրացնելու համար: Ես օգտագործեցի սոսնձի շատ փոքր կաթիլներ մարտկոցը պահելու համար, բայց եթե ավելի շատ ժամանակ ունենայի, ես կպատրաստեի բոլոր էլեկտրոնիկայի հարմարեցված փակագիծը:

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

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

Եթե ունեք որևէ հարց, կարող եք ազատորեն հարցնել, ես ավելի քան պատրաստ կլինեմ օգնել, և եթե այս Հրահանգի մեջ որևէ սխալ գտնեք, խնդրում եմ ինձ տեղյակ պահեք:

Խմբագրել. Ես իրականում CNC մեքենա սարքեցի փոքր պատյանով ՝ 3D տպագրված տարբերակի փոխարեն, ինչն այն է, ինչ տեսնում եք ցուցադրված պատկերներում:

Խմբագրել. Հատված պատկերներում մենք տեսնում ենք լիալուսին `99% լուսավորությամբ: Այսպիսով, սպիտակ շրջանակը, երբ լուսինը անցնում է իր բնորոշ փուլերով, լուսնի պատկերը համապատասխանաբար կփոխվի: Լրացուցիչ պատկերներ կբեռնվեն, երբ Լուսինն անցնում է իր փուլերով, որպեսզի կարողանաք պատկերացում կազմել գրաֆիկայի մասին:

Տիեզերական մարտահրավեր
Տիեզերական մարտահրավեր
Տիեզերական մարտահրավեր
Տիեզերական մարտահրավեր

Երկրորդ տեղը տիեզերական մարտահրավերում

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