Բովանդակություն:
- Քայլ 1: Նախապատմություն
- Քայլ 2: Հիմնական ապարատային բաղադրիչներ
- Քայլ 3: Ամեն ինչ միասին դնելը
- Քայլ 4: Պատվերով PCB
- Քայլ 5: Շրջանակը
- Քայլ 6: Ազնվամորու Pi- ի կարգավորում
- Քայլ 7:.րագրակազմ
- Քայլ 8: Ի՞նչ հաջորդ
Video: Վերադարձ դեպի ապագա ժամացույց. 8 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Այս նախագիծը սկսեց կյանքը որպես զարթուցիչ իմ որդու համար: Ես այնպես արեցի, որ նման լինի «Հետ դեպի ապագա» ժամանակային շղթային: Theուցադրումը կարող է ցույց տալ ժամանակը տարբեր ձևաչափերով, ներառյալ ֆիլմերից, իհարկե: Այն կարող է կարգավորվել պարիսպի վերևում գտնվող կոճակների միջոցով, ինչպես նաև ներսում Raspberry Pi Zero- ի կողմից սպասարկվող վեբ էջի միջոցով: Theուցադրման ռեժիմներից մեկում այն կցուցադրի տեղական եղանակը (իմ Arduino- ով աշխատող եղանակային կայանից), ինչպես նաև կանխատեսումն ու ամենօրյա հիշեցումները, որոնք կազմաձևված են վեբ ինտերֆեյսի միջոցով: Այն նաև աուդիո ունի DAC- ի շնորհիվ և երաժշտություն կհեռարձակի ՝ օգտագործելով AirPlay արձանագրությունը: Theարթուցիչի ձայնը կարող է լինել ձեր ընտրած ցանկացած աուդիո ֆայլ: Այն ավտոմատ կերպով լուսավորելու և լուսավորելու է ցուցադրումը օրվա տվյալ ժամերին (օրինակ ՝ լուսաբաց և մայրամուտ):
Քայլ 1: Նախապատմություն
Անցյալ տարի ես փնտրում էի Arduino- ի նոր նախագիծ ՝ վերջերս ավարտելով իմ առաջին նախագիծը ՝ տնային եղանակային կայանը: Իմ 11-ամյա որդին նոր էր առաջին անգամ դիտել «Վերադարձ դեպի ապագա» ֆիլմերը, ուստի ես մտածեցի, որ զվարճալի կլինի նրան զարթուցիչ սարքել, որը նման էր իր ծննդյան տարեդարձի Դելորեանի ժամանակային շղթային: Սա նոր գաղափար չէ, կան բավականին շատ նմանատիպ նախագծեր (օրինակ ՝ այս մեկը), ուստի ես մտածեցի, որ դա լավ նախագիծ կլինի սովորել ուրիշներից և նոր հմտություններ ձեռք բերել:
Առաջին տարբերակը բավականին լավ աշխատեց (այն պատրաստ չէր նրա ծննդյան տարեդարձին. Ես դա արեցի մինչև Սուրբ Christmasնունդ), բայց ես բավականին հավակնոտ դարձա այն, ինչ ուզում էի, և գտա, որ իմ ուրվագիծը շարունակում է բախվել Arduino- ի հիշողության սահմանին: Ես ունեի նաև մի քանի փոքր արտաքին ապարատային մոդուլներ (WiFi, MP3 նվագարկիչ, աուդիո ուժեղացուցիչ, RTC և այլն), ուստի ամեն ինչ մի փոքր անշուք էր դառնում: Ի վերջո, ես որոշեցի տեղափոխվել Raspberry Pi հարթակ, որը պարզեցրեց սարքավորումները և թույլ տվեց ինձ փաթեթավորել շատ ավելի ֆունկցիոնալ և հնարավորություններ:
Քայլ 2: Հիմնական ապարատային բաղադրիչներ
Տուփի ներսում
Ահա իմ օգտագործած էլեկտրոնային բաղադրիչները: Դրանցից շատերը աղբյուրներ էին Ավստրալիայի Core Electronics- ից, բայց, իհարկե, դրանք մատչելի են նաև այլուր.
- 4 x Quad Alphanumeric Display -դեղին -կանաչ
- Ազնվամորի Pi Zero W
- Pimoroni pHAT DAC ազնվամորի Pi Zero- ի համար
- Աուդիո ուժեղացուցիչ (PAM8403 IC)
- Raspberry Pi 3+ էլեկտրամատակարարում
- 4 x Jumper մետաղալար - 0.1 ", 5 -փին, 12"
- 40 փին (2 x 20) ժապավենի մալուխ
- Raspberry Pi GPIO արական վերնագիր
- Raspberry Pi Model B - GPIO ծածկված վերնագիր (2X20)
- GPIO Stacking Header Pi A+/B+/PI 2/PI 3 - լրացուցիչ երկար 2X20
- 4 x 5 փին արական վերնագիր
- 2 փոքր 3W բարձրախոս
- 2 x coaxial մալուխներ DAC- ի և AMP- ի անալոգային աուդիո միացման համար
- Veraboard կամ անհատական PCB ՝ Rpi- ն ուժեղացուցիչի, LED- ի, կոճակների հետ աշխատելու համար
- 5 x ակնթարթային անջատիչ
- 4 x երկկողմանի PCB- ով տեղադրվող պտուտակային տերմինալային բլոկներ
Տուփը
- MDF- ի կտորներ, պտուտակներ և պտուտակներ `« շասսի »ստեղծելու համար
- Կանաչ երանգավորված perspex, տեղական մատակարար
- Ստիրոլ, մոդելավորման սոսինձ, լակի ներկ (ալյումինե գույն) տեղական հոբբիի խանութից
-
Կպչուն պիտակներ (ֆայլը հասանելի է ըստ պահանջի - տպված է Redbubble- ի կողմից)
Քայլ 3: Ամեն ինչ միասին դնելը
Displayամացույցի լուսադիոդային էկրանը բաղկացած է 16x14 հատվածից բաղկացած այբբենական թվային էկրաններից, բարեբախտաբար նույն թվով նիշերով, ինչ «Հետ դեպի ապագա» ժամանակաշրջանը: Թեև միայն առաջին երեք նիշերը պետք է լինեն այբբենական, իսկ մնացածը կարող են լինել 7 հատվածից բաղկացած թվային ցուցադրումներ ՝ ֆիլմի սցենարը նմանեցնելու համար, ես որոշեցի դրանք բոլորը դարձնել այբբենական, ինչը թույլ կտա որոշակի ճկունություն ցուցաբերել ցուցադրվողի մեջ և պահել նրանց բոլորին տեսքը նույնը Adafruit քառաթև ուսապարկերն այստեղ հիանալի լուծում են և կարող են գործարկվել Raspberry Pi- ի I2C ավտոբուսով: Այս միավորների և դրանց միացման եղանակների մասին լրացուցիչ տեղեկություններ կարելի է գտնել այստեղ ՝ Adafruit- ի կայքում: Միակ ոչ ստանդարտ բանը, որ պետք է անեի, դա նրանցից երեքի հասցեները փոխելն էր, որպեսզի յուրաքանչյուր ուսապարկ յուրահատուկ լիներ:
Աուդիո նվագարկելու համար (ստերեո) ես ներառեցի Pimoroni pHAT DAC- ը և 2 x 3W ստերեո աուդիո ուժեղացուցիչ ՝ հիմնված PAM8403 չիպի վրա: PHAT DAC- ն իսկապես հեշտ է միացնել Pi- ին: Pi- ի վրա դրեցի 2 x 20 փին արական վերնագիր և DAC- ի վրա GPIO- ի վրա տեղադրվող վերնագիր, որպեսզի դրանք կարողանան միացվել մյուսին: Տղամարդու վերնագրի քորոցները անցնում են DAC- ի վերևով, ինչը թույլ է տալիս ինձ միացնել ժապավենային մալուխը կին միակցիչներով, սկզբում Raspberry Pi- ի ճեղքվածքի համար `տախտակի փորձարկման համար, իսկ վերջում` պատվերով պատված PCB- ի վրա ծածկված վերնագրով:
Աուդիո ուժեղացուցիչի համար կան բազմաթիվ տարբերակներ (ներառյալ պարզապես չիպը ձեռք բերելը և ձեր սեփականը հավաքելը): Այս մեկն ունի ելքը խլացնելու տարբերակ ՝ պարզապես փոխելով կապանքներից մեկի վիճակը (բարձրը միացված է, ցածրը անջատված է), և ես այն լարեցի, որպեսզի այն վերահսկվի Pi- ից: Սա հաղորդակցելու իմ սկզբնական փորձերում ես հայտնաբերեցի բավականին մեծ ֆոնային աղմուկ, երբ ձայնը միացված էր: Հիմնավորման հետ շատ խաղալուց հետո, ի վերջո, ես փորձեցի մուտքի մատակարարման լարումը Pi- ի 5V- ից տեղափոխել 3.3V, և դա շտկեց այն: Ենթադրում եմ, որ բավականին մեծ աղմուկ է առաջանում շուրջբոլորը թռչող թվային ազդանշանների պատճառով, բայց թվում է, որ 3.3 Վ հոսանքը ինչ -որ կերպ մեկուսացված է:
Այլ միացումներ ներառում են անալոգային աուդիո DAC- ից մինչև ուժեղացուցիչ (ես այստեղ օգտագործել եմ կոաքսիալ մալուխ ՝ աղմուկի բարձրացումը կառավարելու համար) և աուդիո թողարկում զույգ փոքր 3W բարձրախոսներին, որոնք տեղավորվում են պարիսպում: Կան նաև GPIO միացումներ տուփի վերևում գտնվող չորս ակնթարթային անջատիչների համար, և ես միացրի մի ակնթարթային կոճակ կոշտ վերականգնման «RUN» կապում (տես այս էջի Լրացուցիչ կապեր բաժինը): Վերակայման կոճակը տեղադրված է պարիսպի հետևի մասում ՝ տեսադաշտից դուրս: Ահա միացում, որը ցույց է տալիս կապերը.
Քայլ 4: Պատվերով PCB
Շրջանակի մեջ շատ բարդ բան չկա, բայց բավականին շատ էլեկտրագծեր կան, և տախտակը բավականին արագ սպագետտիի տեսք ունի: Այսպիսով, ես նախագծեցի PCB ՝ այդ ամենը վերահսկողության տակ պահելու համար: Դա տան պատրաստման միակողմանի տախտակ է, և ես ընկեր ունեմ, որը կօգնի պատրաստել այն: Այն պատրաստվելուց և լարվելուց հետո ես հասկացա, որ մոռացել եմ ներառել աուդիոյի տերմինալային բլոկների միացումները, և ես հետագայում փոփոխություն կատարեցի ՝ ձայնային ուժեղացուցիչի հոսքը 5 Վ -ից տեղափոխելու 3.3 Վ, ուստի դա իդեալական չէ, և ես ստիպված էի միացնել այն: որոշ Veroboard թույլ է տալիս ձայնային կապերը: Բացի այդ, աուդիո ուժեղացուցիչի տախտակի քորոցները գտնվում են ոչ ստանդարտ տարանջատման մեջ (դրանք նույնիսկ տարբերվում են կապումների միջև), ուստի դրա հիմնական PCB- ի հետ կապը մի փոքր սարսափելի է `11 կարճ ~ 1 սմ կարճ միացման լարերով:
Եթե ես այլ տախտակ պատրաստեի, կներառեի այս բոլոր փոփոխությունները և նաև չորս կոճակների միակցիչը կփոխեի մի փոքր ավելի լավ բանի: DAC- ն և Pi- ը կտեղադրվեն հենց վերևում, այնպես որ ժապավենի մալուխի կարիք չկա: Վերը նշված դիագրամը ցույց է տալիս, թե ինչ տեսք կարող է ունենալ այն:
Քայլ 5: Շրջանակը
Ես ուզում էի մի պարիսպ պատրաստել, որը նման լիներ ֆիլմի ժամանակային շրջանի մեկ շարքին: Երեք տող LED էկրաններ չափազանց շատ կլինեին զարթուցիչի համար և զգալիորեն կավելացնեին ինքնարժեքը: Ես մտածում էի պարիսպը ալյումինից պատրաստելու մասին, բայց ես ոչ մի հմտություն չունեմ այդ ոլորտում: Ես իմ կյանքում բավականին պլաստմասե մոդելներ եմ պատրաստել և փայտամշակման փորձ ունեմ, ուստի որոշեցի MDF- ով շրջանակ պատրաստել LED- ները և բարձրախոսները ամրացնելու համար, իսկ պերսպեքսը ամրացնել առջևում, այնուհետև այն ծածկել 5 կողմի ստիրոլով: տուփ ՝ առջևի եզրով, ներկված ալյումինե մետաղական լակի ներկով: Պլաստիկը և ներկը ձեռք են բերվել տեղական մոդելային խանութից: Ես ուշադիր նայեցի ֆիլմի հենարանի պիտակներին և ամեն ինչ արեցի ՝ պատճենելու գույները, տառատեսակի տեսակը և չափը: Ես պիտակներ ստեղծելու համար օգտագործեցի Photoshop- ը և դրանք տպեցի որպես Redbubble- ի կպչուն պիտակներ:
Վերևում պատկերները ցույց են տալիս.
- MDF շասսիի ճակատը: 4 լուսադիոդային ուսապարկերը տեղադրված են առջևում ՝ կանաչ երանգով պերսպեքսով
- Տուփի ներսում: Բոլոր ուսապարկերը տեղադրված և շարված են, Raspberry Pi և անհատական PCB ներս, երկու կողմից բարձրախոսներ:
- Տեղադրված և արտաքին պատյանները պատրաստ են շարունակել: Դա մի փոքր սեղմում էր:
Քայլ 6: Ազնվամորու Pi- ի կարգավորում
Ես որոշ համատեղելիության խնդիրներ ունեի Raspbian Stretch- ի հետ (որոնք գուցե լուծելի լինեին, եթե համառեի), բայց essեսսին դրա հետ լավ է աշխատում, ուստի որոշեցի գնալ դրանով:
Ես Pi- ն ստեղծեցի որպես անգլուխ միավոր ՝ VNC և SSH մուտքով: Դա կարող էր արվել առանց ստեղնաշարի կամ մոնիտորի միացման, բայց ես պարզապես վերցրեցի հեռուստացույցը և մաքրեցի ստեղնաշարը, և այն արագորեն գլխատվեց: Այդ ժամանակից ի վեր, ես այդուհետև բավականին շատ օգտագործեցի VNC:
Իմ ժամացույցի կոդն օգտագործում է Python 2.7.9 և հիմնված է մի քանի գրադարանների վրա, որոնք թվարկված են ստորև: Բացի այդ, ես վարում եմ Flask վեբ սերվեր և MQTT հեռակառավարման համար և Shairplay ՝ երաժշտության հոսքի համար: Ես պարզապես հետևեցի այս բոլորի առցանց տեղադրման նշումներին և ընդհանրապես խնդիրներ չունեի: Ահա python գրադարանները և այլ փաթեթներ և այլն, որոնք ես պետք է տեղադրեի տեղադրման նշումների հղումներով կամ պարզապես այն ստանալու համար անհրաժեշտ հրամանով.
Python գրադարաններ
- Adafruit_LED_Backpack
- Rpi. GPIO (apt-get install python-rpi.gpio)
- ալսաաուդիո
- paho.mqtt.client (pip install paho-mqtt)
- շիշ (apt-get install python-flask)
Այլ փաթեթներ և այլն
- մոծակ (apt-get տեղադրել մոծակ)
- shairport
- Pimoroni վեբ կայքը ունի մի քանի լավ փաստաթղթեր DAC- ի ստեղծման վերաբերյալ, այնպես որ ես պարզապես վազեցի դրա հետ:
Քայլ 7:.րագրակազմ
Theամացույցի ծածկագիրը գրված է Python- ում և օգտագործում է թելեր ՝ ազդանշանը նվագարկելու համար, իսկ երբեմն հետզհետե ձայնը հնչում է հետին պլանում ՝ առանց ցուցադրման թարմացումները արգելափակելու: Ես օգտագործեցի ConfigParser գրադարանը, և այն պահող կազմաձևման ֆայլը կարդացվում և գրվում է ժամացույցի կոդով, ինչպես նաև Flask վեբ հավելվածով, այնպես որ, երբ կոնֆիգուրացիան փոխվում է վեբ ինտերֆեյսի կամ ժամացույցի միջոցով, այն համաժամացվում է: Theամացույցի ծրագրակազմը ներառում է նաև MQTT միջնորդ, որը թույլ է տալիս վերահսկել ցուցադրման ռեժիմը և խլացնելը վերահսկել հեռակա կարգով: Իմ հետին դրդապատճառը, ի վերջո, հեռակառավարման համար iOS ծրագիր գրելն է, բայց վեբ ինտերֆեյսը առայժմ բավական լավ է աշխատում:
Վերևի առաջին պատկերը ցույց է տալիս, թե ինչպես է ժամացույցը ցուցադրվում իր ցուցադրման տարբեր ռեժիմներում, և կա կարճ տեսանյութ, որը ցույց է տալիս այն ոլորման ռեժիմում:
Թեև ծածկագիրը գեղեցիկ չէ նայելու համար, այն գեղեցիկ և կայուն է: Ուրախ եմ ուղարկել այն բոլորին, ովքեր դա կխնդրեն և կտեղադրեն այն առցանց, երբ այն ավելի լավ կազմակերպվի և մեկնաբանվի:
Վեբ հավելվածը
Հաջորդ պատկերը ցույց է տալիս, թե ինչ տեսք ունի ժամացույցի վեբ ինտերֆեյսը: Կան նաև կազմաձևման և վերահսկման էջեր, և դրանք շատ ավելի հեշտ են դարձնում ժամացույցի հետ խաղը ՝ առանց կոճակների բազմանման:-):
Քայլ 8: Ի՞նչ հաջորդ
Կա Python shareport մետատվյալների ապակոդավորիչ, այնպես որ, կարծում եմ, ես մի քանի կոդ կավելացնեմ ՝ երաժշտության նվագարկման ժամանակ տեղեկություններ ցուցադրելու համար, ինչպիսիք են վերնագիրը և կատարողը: Նաև բավականին հեշտ կլիներ հաշվարկել արևածագի և մայրամուտի ժամանակները, որպեսզի էկրանն ինքնաբերաբար լուսավորվի և լուսավորվի, այլ ոչ թե ձեռքով կարգավորվի: Գուցե ինտերնետային ռադիոյի գործառույթ ավելացնելը նույնպես հաճելի կլինի: Պտտվող էկրանը կարող է նաև ավելի կարգավորելի լինել:
Խորհուրդ ենք տալիս:
Վերադարձ դեպի Ապագա հակագռավիտային ջրի կաթիլ - Seeeduino Lotus ՝ 5 քայլ
Վերադառնալ դեպի ապագա հակագրավիթիվ ջրի կաթիլ - Seeeduino Lotus: StoryTime- ը նման է տարափի, որը առաջ է մղում մարդկանց: Կա՞ մի ակնթարթ, երբ ցանկանում եք, որ ժամանակը կանգնի կամ հետ գնա: Ուշադիր նայեք ջրի կաթիլին: Արդյո՞ք այն կաթում է ներքև, թե բարձրանում: Աշխատանքը ներշնչված է տեսողական պարսի երևույթով
Բյուրեղապակյա գնդակ. Տես դեպի քո ապագա: 7 քայլ
Crystal Ball: See Into Your Future !: youանկանու՞մ եք իմանալ տիեզերքի գաղտնիքները: Դե, չես կարող: Այնուամենայնիվ, կարող եք պարզել, թե ինչ է սպասվում ձեր ապագային ՝ պատրաստելով ձեր սեփական բյուրեղյա գնդակը: Այսինքն ՝ ի՞նչ կա կորցնելու: Եթե ես կարող եմ պատրաստել մեկը, ապա դուք նույնպես կարող եք ՝ օգտագործելով LCD մոնիտոր, հետույք
3D Տպագրություն Վերադառնալ դեպի ապագա Iամացույցի ժամացույց ՝ 71 քայլ (նկարներով)
3D Տպագրված Վերադարձ դեպի Ապագա TIme Circuit Clock. Առջևի ձախ LED.stl ֆայլը սխալ էր և թարմացվել է: Circuitամացույցի ժամացույցը LED էկրանների միջոցով կցուցադրի հետևյալը. Նախատեսված ժամանակը - (Վերև-կարմիր) destinationամկետի ժամանակը մի տարածք է, որը ցույց է տալիս ֆիքսված ամսաթիվ և ժամ: Օգտագործեք սա են
Վերադարձ դեպի Արկադա ՝ JDRamos– ի կողմից. 9 քայլ (նկարներով)
Վերադարձ դեպի Արկադա JDRamos- ի կողմից. Ձեզ եմ ներկայացնում իմ արկադային նախագիծը: Նախագիծ, որը ես սկսեցի դեռ 2013 -ին, երբ իմ ծննդյան օրվա համար հայրս ինձ առաջարկեց հին արկադային պահարան, որը գնվել էր մի վաճառողից, որը դեռ տեղադրում և կառավարում է դրանք սուրճի խանութներում: Դա հին դահլիճ էր ՝ խնդիրներով
12v դեպի USB ադապտեր 12v դեպի 5v տրանսֆորմատոր (հիանալի է մեքենաների համար). 6 քայլ
12v դեպի USB ադապտեր 12v to 5v տրանսֆորմատոր (հիանալի է մեքենաների համար). Սա ցույց կտա ձեզ, թե ինչպես պատրաստել 12v դեպի USB (5v) ադապտեր: Դրա ամենաակնառու օգտագործումը 12 վ մեքենայի ադապտերների համար է, բայց ցանկացած վայրում, որտեղ ունեք 12 վ, կարող եք այն օգտագործել: Եթե USB- ից բացի այլ բանի կարիք ունեք, պարզապես բաց թողեք USB պորտերը ավելացնելու քայլերը