
Բովանդակություն:
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48




Fusion 360 նախագծեր »
Սա Arduino- ի վրա հիմնված ժամացույց է, որն ունի OLED էկրան, որը գործում է որպես ժամացույց ամսաթվով, որպես քնելու ժամաչափ և գիշերային լույս: Տարբեր «գործառույթները» վերահսկվում են արագացուցիչով և ընտրվում են խորանարդի ժամացույցը պտտելով:
Ես ուզում էի գիշերային ժամացույցի նոր ժամացույց, բայց չէի ուզում գումար ծախսել մի շքեղ ժամացույցի վրա, որն ուներ բազմաթիվ գործառույթներ, որոնք ես չէի օգտագործի: Բացի այդ, ես հավաքում էի բաղադրիչներ և տվիչներ, որոնք պարզապես տեղադրված էին, ուստի որոշեցի օգտագործել դրանք `իմ սեփական ժամացույցը պատրաստելու համար:
Այս նախագծի համար ես մի քանի նպատակ ունեի.
- Displayուցադրեք այդ ժամանակը անջատման տարբերակով
- Ներառեք գիշերային լուսավորության գործառույթ
- Ներառեք 15 րոպեանոց քնելու ժամաչափ ՝ ահազանգով
- Կարողանալ ցուցադրել ամսաթիվը
Պարագաներ
- Arduino Pro Mini 5V
- ADXL335 3 առանցքի արագացուցիչ
- DS3231 AT24C32 IIC ճշգրիտ Իրական ժամանակի ժամացույց
- Մինի բարձրախոս
- OLED էկրան SSD1306 IIC 0.96 դյույմ
- 5V DC սնուցման աղբյուր
- LED x 2
- Ռեզիստորներ 220 օհմ x 2
- DC տակառի խցիկ
- Մետաղալար
-
Գործիքներ
- Մետաղալարեր/մերկացուցիչներ
- Oldոդման երկաթ/զոդ
- 3D տպիչ (ըստ ցանկության)
- FTDI ծրագրավորող ՝ Pro mini- ի և Arduino IDE- ի միջև ինտերֆեյսի համար
Քայլ 1. Նախատիպ և փորձարկեք շրջանը



Միացրեք բաղադրիչները Arduino- ին: Գրատախտակի դասավորությունը կամ սխեման ներկայացված են վերևում: RTC- ն և OLED- ն օգտագործում են I2C արձանագրությունը Arduino- ի հետ աշխատելու և A4 և A5 կապում օգտագործելու համար: Արագացուցիչը օգտագործում է 3 անալոգային կապում: Ես օգտագործել եմ A0, A1, A2: LED- ները և Piezo- ն կարող են օգտագործել ցանկացած թվային կապում, ես համապատասխանաբար օգտագործել եմ 4 և 8:
Ինտերֆեյս յուրաքանչյուր բաղադրիչի հետ: Ստիպված էի Arduino- ի գրադարաններ տեղադրել յուրաքանչյուր բաղադրիչի հետ ինտերֆեյսի համար: Դրանք ցուցադրվում են վերևի պատկերում:
Կոդ `օգտագործելով Arduino IDE- ն: Ես ուսումնասիրեցի յուրաքանչյուր գրադարանի կողմից տրված մի քանի էսքիզներ `յուրաքանչյուր բաղադրիչի համապատասխան շարահյուսությունը պարզելու համար, թե ինչ եմ ուզում, որ նրանք անեն: Ես հանդես եկա էսքիզով յուրաքանչյուր բաղադրիչի համար `դրանք առանձին ստուգելու համար: Դրանք տրված են ստորև: Ես սկսեցի պիեզո բարձրախոսով, քանի որ դա ամենահեշտն էր: Այն իրականում հատուկ գրադարանի կարիք չուներ, այլ հատուկ գործառույթ, որը սահմանում է հաճախականությունն ու ձայնը: LED- ները գործարկելը պարզապես պահանջում էր թվային կապումներից մեկը բարձր ու ցածր քաշել: Հաջորդը, ես անցա OLED- ի վրա, և դա նույնպես բավականին պարզ էր կարգավորելը: Ստորև ներկայացված ուրվագիծը Adafruit- ի ցուցադրական ցուցադրումն է, որն անցնում է ցուցադրվող բոլոր անիմացիաներով/տեքստերով: Հետո, ես փորձեցի RTC- ին գործի դնել: Իմ տված ուրվագիծը գրադարանում եղած օրինակի մի մասն էր, որը ստանում է ընթացիկ ժամանակը և տպում այն սերիական մոնիտորի վրա: Ի վերջո, ես օգտագործեցի բերված օրինակը ՝ արագացուցիչը ստուգելու համար: Յուրաքանչյուր առանցքի ելքերը տպվում են սերիական մոնիտորի վրա:
Հիմա ժամանակն է ամեն ինչ հավաքել:
Քայլ 2: Հիմնական ծրագիր


Այժմ, երբ ես գիտեմ, որ ամեն ինչ աշխատում է անհատապես, ես կարող եմ սկսել հանդես գալ մի ծրագրով, որն ամեն ինչ համախմբում է: Ստորև կքննարկեմ ծրագիրը գրելու իմ ընթացքը, բայց ազատ զգացեք պարզապես ներբեռնեք ստորև բերված ամբողջական կոդը ՝ ձեր սեփական նախագծի համար օգտագործելու համար: Փորձեցի կոնկրետ մեկնաբանություններ թողնել, որպեսզի ինքներդ կարողանաք քայլել կոդի միջով:
Ես պետք է ցուցադրեի ժամանակը և ամսաթիվը OLED- ով, որը բավականին պարզ էր: Ես պարզապես ստիպված էի ընթացիկ ժամանակը տպել էկրանին `սերիական մոնիտորի փոխարեն: Ֆորմատավորման մի քանի բան կար, որ ես պետք է հաշվի առնեի, որպեսզի այն 24 -ի փոխարեն ցուցադրեր 12 -ժամյա ձևաչափ և ավելացներ/հեռացնեի 0 -երը, երբ դրանք տեղին էին: Ամսաթիվը նույնն էր ՝ ամիսն ու օրը էկրանին գծված ուղղանկյունների ցուցադրման հավելումով: Usedամաչափը ստեղծելու համար օգտագործեցի ներկառուցված FOR հանգույց և հանգույցի ավարտից հետո անջատեցի պիեզոն: Ես որոշեցի էկրանը բռնկել, քանի որ ազդանշանը անջատվում էր, որը Adafruit- ի ցուցադրական ցուցադրությունից վերցված հիմնական անիմացիա էր: Ես դարձրի խորանարդը ժամացույցի դիրքի վերադարձնելը միակ միջոցը, որն անջատում է ազդանշանը: Ի վերջո, ես ուզում էի էկրանն անջատելու միջոց, որն իրականացվեց ՝ պարզապես մաքրելով էկրանը: Այժմ, ինձ անհրաժեշտ էին այս բոլոր գործառույթները ՝ արագացուցիչի ելքերի հիման վրա աշխատելու համար: Ես օգտագործեցի Accel_Test սցենարը `որոշելու յուրաքանչյուր դիրքի առանցքի կոորդինատները, որոնցից յուրաքանչյուր գործառույթ ցանկանում էի: Ես ձեռքով շարժեցի արագացուցիչի չիպը և գրանցեցի ընթերցումները սերիական մոնիտորի վրա: Վերևի դիագրամը տալիս է ԳՐՈՅ -ում յուրաքանչյուր դիրքի ելքային կոորդինատները: RED- ի կոորդինատները յուրաքանչյուր դիրքի սահմաններն են, և ես այդ թվերը օգտագործել եմ իմ ծրագրի համար: Displayուցադրման 4 դիրքերում անհրաժեշտ են միայն X և Y առանցքների կոորդինատները: Գիշերային լույսի հինգերորդ դիրքը օգտագործում է Z առանցքը: Ես ֆունկցիոնալ յուրաքանչյուր բլոկից առաջ արագացուցիչի դիրքերի համար օգտագործել եմ IF պարզ արտահայտություններ: Եթե դուք օգտագործում եք այլ արագացուցիչ, ապա այս կոորդինատները կարող են տարբեր լինել և դրանք պետք է ճշգրտվեն ծրագրում:
Քայլ 3. Խորանարդի 3D տպագրություն



Ես մտածեցի, որ խորանարդը կլինի լավագույն ձևը, որը կբավարարի այն, թե ինչպես ես ուզում էի, որ ժամացույցը գործի: Մոդելը պատրաստելու համար օգտագործեցի fusion360- ը: Ինձ պետք էր OLED- ի և տակառի խցիկի անջատում: Ես նաև ցանկանում էի հեշտ մուտք ունենալ RTC- ի բջջային մարտկոցը փոխարինելու համար, երբ ամեն ինչ լարված էր: Ինձ անհրաժեշտ էր մի անցք ՝ Arduino- ն կողմնորոշման մեջ պահելու համար, որը անհրաժեշտության դեպքում հեշտությամբ կվերագրագրավորվեր: Բացի այդ, պարիսպը պետք է հեշտությամբ հեռացվեր, որպեսզի կարողանայի մուտք գործել Arduino: Դուք կարող եք տեսնել CAD մոդելը վերևում, իսկ STL ֆայլերը ՝ ներքևում:
Ես մարմինը տպել եմ սև PLA- ով ՝ 20% լցված, 0.2 մմ լուծույթով:
Խցիկը կամ թևը տպագրվել է Solutech ճկուն թելով `100% լցված, 0.3 մմ թույլտվությամբ: Ես օգտագործել եմ այս նյութը, քանի որ այն ունի որոշակի ճկունություն, ինչը հեշտացրել է մարմնի վրա ձգվելը: Այն նաև ավելի մեղմ է զգում ժամացույցը շուրջը պտտելիս: Ի վերջո, ես ընտրեցի թափանցիկ թել, որպեսզի գիշերային լուսարձակների LED- ները փայլեն:
Քայլ 4: Հավաքում



Ես ամեն ինչ միացրեցի ՝ օգտագործելով Քայլ 1 -ի սխեմատիկ պատկերը: Ես օգտագործեցի մի փոքր կտոր տախտակ ՝ բոլոր ընդհանուր լարերը միացնելու համար, որպեսզի ես ստիպված չլինեմ Arduino- ի վրա մեկ լարին միացնել մի քանի լար: Տաք սոսինձ էր օգտագործվում ամեն ինչ իր տեղում ամրացնելու համար, բացառությամբ Arduino- ի: Այն պարզապես մղվեց իր նշանակված անցքի մեջ: Ես համոզվեցի, որ արագացուցիչի տախտակը ուղղահայաց է և մարմնի ներքևի մասում, որպեսզի ծածկագրում կոորդինատները փոխելու կարիք չունենան:
Քայլ 5: Վերբեռնեք և կատարված է:




Այժմ վերջնական ծրագիրը կարող է վերբեռնվել ժամացույցի վրա `ճիշտ ժամանակը սահմանելու համար: Բջջային մարտկոցը պետք է պահի ժամանակը նույնիսկ այն ժամանակ, երբ հոսանքը անջատված է: Սահեցրեք 3D տպված թևը մարմնի վրա ՝ բոլոր բաղադրիչները թաքցնելու համար և կունենաք ամբողջական խորանարդի ժամացույց:
Հուսով եմ, որ ձեզ դուր կգա այս նախագիծը պատրաստելն ու այն ինձ պես օգտակար կգտնեք: Այս նախագծի հաճելի մասն այն է, որ այն շատ հարմարեցված է: Ազատորեն ավելացրեք ձեր սեփական տարբեր գործառույթներ, ինչպես ահազանգի գործառույթը, օգտագործեք տարբեր բաղադրիչներ, ինչպիսիք են ավելի մեծ OLED- ը, FM ռադիոընդունիչը և այլն: Ուրախ պատրաստում:
Խորհուրդ ենք տալիս:
CD4017- ի վրա հիմնված բազմաֆունկցիոնալ հեծանիվի լուսավորություն. 15 քայլ

CD4017- ի վրա հիմնված բազմաֆունկցիոնալ հեծանիվի լուսավորություն. Այս միացումն արվում է շատ տարածված CD4017 LED միացումի միջոցով, որը կոչվում է LED հետապնդող: Բայց այն կարող է աջակցել լուսադիոդների թարթման բազմազան մեթոդների ՝ կառավարման եղանակը միացնելով տարբեր եղանակներով: Գուցե այն կարող է օգտագործվել որպես հեծանիվի լուսավորություն կամ տեսողական ցուցիչ
Հեշտ թեքության վրա հիմնված գույնի փոփոխման անլար Ռուբիկի խորանարդի լամպ. 10 քայլ (նկարներով)

Հեշտ թեքության վրա հիմնված գույնը փոխող անլար Ռուբիկի խորանարդի լամպ. Այսօր մենք պատրաստվում ենք կառուցել այս հիանալի Ռուբիկի խորանարդիկով լամպը, որը փոխում է գույնը `կախված այն կողմի վերևից: Խորանարդն աշխատում է LiPo- ի փոքր մարտկոցով, որը լիցքավորված է միկրո-USB ստանդարտ մալուխով և, իմ փորձարկմամբ, ունի մի քանի օր մարտկոցի կյանք: Այս
Arduino- ի վրա հիմնված ժամացույց ՝ օգտագործելով DS1307 իրական ժամանակի ժամացույց (RTC) մոդուլ և 0.96: 5 քայլ

Arduino- ի վրա հիմնված ժամացույց ՝ օգտագործելով DS1307 Իրական ժամանակի ժամացույց (RTC) մոդուլ և 0.96. Բարև տղերք, այս ձեռնարկում մենք կտեսնենք, թե ինչպես պատրաստել աշխատանքային ժամացույց ՝ օգտագործելով իրական ժամանակի DS1307 ժամացույցի մոդուլ և AMP; OLED էկրաններ: Այսպիսով, մենք կկարդանք ժամանակը ժամացույցի մոդուլից DS1307: Եվ տպեք այն OLED էկրանին
Եղանակի վրա հիմնված երաժշտության գեներատոր (ESP8266 վրա հիմնված միջինի գեներատոր). 4 քայլ (նկարներով)

Եղանակի վրա հիմնված երաժշտության գեներատոր (ESP8266 Based Midi Generator). Բարև, այսօր ես կբացատրեմ, թե ինչպես պատրաստել ձեր սեփական եղանակի վրա հիմնված փոքր երաժշտության գեներատոր: Այն հիմնված է ESP8266- ի վրա, որը նման է Arduino- ին և արձագանքում է ջերմաստիճանին, անձրևին: և լույսի ուժգնություն: Մի ակնկալեք, որ այն ամբողջ երգեր կամ ակորդներ կհաղորդի
Վեբ-միացված SMART LED անիմացիոն ժամացույց ՝ վեբ վրա հիմնված կառավարման վահանակով, Serverամային սերվերի համաժամացում ՝ 11 քայլ (նկարներով)

Վեբ-միացված SMART LED անիմացիոն ժամացույց ՝ վեբ վրա հիմնված կառավարման վահանակով, Time Server Synchronized: Այս ժամացույցի պատմությունը հեռու է գնում ՝ ավելի քան 30 տարի: Հայրս այս գաղափարի առաջատարն էր, երբ ես ընդամենը 10 տարեկան էի, LED- ի հեղափոխությունից շատ առաջ: Իսկական