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

Pi Zero Talking Radio: 7 քայլ (նկարներով)
Pi Zero Talking Radio: 7 քայլ (նկարներով)

Video: Pi Zero Talking Radio: 7 քայլ (նկարներով)

Video: Pi Zero Talking Radio: 7 քայլ (նկարներով)
Video: Vatican, histoires secrètes - Qui sont les ennemis invisibles du Pape François ? -Documentaire HD-MP 2024, Նոյեմբեր
Anonim
Image
Image
Pi Zero Talking Radio
Pi Zero Talking Radio
Pi Zero Talking Radio
Pi Zero Talking Radio
Pi Zero Talking Radio
Pi Zero Talking Radio

Սա 1940 -ականների վերջի DeWald սեղանի ռադիոն է, որը ես նոր կյանք եմ տվել ՝ օգտագործելով Raspberry Pi Zero, Blinkt! LED ժապավեն և մի զույգ ԱՀ բարձրախոս: Այն կարդում է ծանուցումներ ինտերնետին միացած ծառայություններից ՝ օգտագործելով Pyvona տեքստային խոսքի (TTS) շարժիչը և IF This Then That (IFTTT) ինտեգրումը: LED- ները զարմանալիորեն պայծառ են, և ռադիոյի հավաքիչն այլ գույն են հաղորդում ՝ կախված ծանուցման տեքստի հիմնաբառերից, օրինակ ՝ «youtube» = կարմիր:

Ես վերցրեցի այս քաղցր փոքրիկ ռադիոն ամռանը մեքենայի կոշիկի վաճառքից 3 ֆունտ ստեռլինգով: Ինձ անմիջապես գրավեցին դրա կոմպակտ չափերը և դասական դիզայնը, և ես հասցրեցի տեսնել դրա ներուժը արևից խունացած արտաքինի և բազմաթիվ ճեղքերի միջոցով: Որոշ ժամանակ է, ինչ ցանկանում եմ ստեղծել «հյուրասենյակի համար պարկեշտ բան», և սա իդեալական ելակետ էր: Ես նախկինում «bitագար Պի» նախագծի վերաբերյալ տեքստից խոսքի մասին ծանուցումների փորձեր եմ արել և հույս ունեմ, որ սովորածս վրա կհիմնվեմ, որպեսզի ամեն օր «պարզապես աշխատեմ»:

Եթե չեք կարող տեսնել ներկառուցված տեսանյութը, այն գտնվում է ՝

Քայլ 1: Blinkty Pi

Բլինկտի Պի
Բլինկտի Պի
Բլինկտի Պի
Բլինկտի Պի

Վերջերս վերցրեցի իմ առաջին Pi Zeros- ը և ակնթարթորեն ապշեցի նրանց փոքր չափից: GPIO- ի վերնագրում զոդվելուց և ադապտերների միացումից հետո առաջինը պատրաստ էր գնալ: Սկզբում ես պլանավորում էի կատարելագործել Rabbit Pi- ն, բայց որոշ ժամանակ անց դա ինձ ավելի շատ նման էր աշխատանքի, քան զվարճանքի, ուստի ես այն հետ կանգնեցի, չնայած ոչ թե նախքան սկսեցի փորձարկել միաեղջյուր pHAT- ով, ծրագրավորվող LED- ների 4x8 մատրիցով, որը բացարձակ կույտ էր: զվարճալի! Միակ բացասական կողմն այն էր, որ pHAT- ի օգտագործումը բարդացրեց աուդիո կարգավորումը, և ես ուզում էի իմ հաջորդ նախագիծը իսկապես պարզ պահել:

Քեմբրիջի ազնվամորու ջեմում ամեն ինչ իր տեղը ընկավ սեպտեմբերին, երբ տեսա Blinkt! վաճառվում է Պիմորոնիի կրպակում. դա միաեղջյուրի pHAT- ի նման է, բայց ունի 8 LED- ների մեկ տող, որը կատարյալ չափս ունի `տեղավորվելով pi զրոյի GPIO վերնագրում: Այն գալիս է բազմաթիվ փաստաթղթերի և օրինակների հետ և արագ գործարկվում էր: Հիմա ժամանակն էր սկսել ծածկագրի մնացած մասը հավաքելը:

Քայլ 2. Խոսակցական ծածկագիր

Խոսակցական ծածկագիր
Խոսակցական ծածկագիր

Ես սկսեցի Rabbit Pi- ի հիմնական ծածկագրի պատճենով, քանի որ դրանում արդեն պահված էին իմ Ivona տեքստային խոսքի հավատարմագրերը: Theառայությունից օգտվելուց առաջ դուք պետք է Ivona ծրագրավորողի հաշիվ ստեղծեք, բայց գործընթացը պարզ է, ինչպես ես նախկինում փաստաթղթավորել եմ:

Հաջորդ քայլը Pyvona- ի տեղադրումն էր, Python փաթաթիչը ՝ Ivona TTS ծառայության հետ ինտեգրվելու համար, ինչը չէր կարող ավելի հեշտ լինել (pip install pyvona):

Այս ամենի հետ մեկտեղ ես սկսեցի փոփոխել Rabbit Pi ծածկագիրը ՝ հանելով շարժիչային կառավարման և սելֆի անելու տեղեկանքները, որպեսզի ինձ մնան այն հատվածները, որոնք կարդում են ծանուցումները Gmail- ի հաղորդագրությունների թեմայի տողերից: Այս ծածկագրի հետ կապված կարևոր զարգացումն այն էր, որ IF հայտարարությունների շարքում ավելացվում էր հաղորդագրությունների մեջ հատուկ հիմնաբառեր փնտրելը, որպեսզի Blinkt! կախված գույնի հաղորդագրությունից ՝ կփայլեր տարբեր գույներով:

Սա ինձ որոշ ժամանակ տևեց, քանի որ ես դեռ ոտքերս գտնում եմ Python- ի հետ, բայց որոշելով իմ հիմնաբառերը («Ամպամած», «Մայրամուտ», «ersնցուղներ», «Ֆեյսբուք», «Թվիթեր», «Յութուբ» և «Արևոտ») Ես կարողացա վերահսկել Blinkt- ը: գույնը ՝ կախված կարդացած տեքստից:

Իմ օգտագործած պարզ, եթե ոչ էլեգանտ ծածկագիրը GitHub- ում է, չնայած ես արդեն ավելացրել եմ ավելի շատ հիմնաբառեր և գույներ: Ես այն փորձարկեցի պատյանից դուրս ՝ օգտագործելով մարտկոցով աշխատող բարձրախոս, ավելի ուշ ՝ աուդիո կարգավորումների մասին: Վերջին քայլը պիթոնի սցենարի ՝ radiot.py- ի, գործարկման ժամանակ գործարկելն էր:

Քայլ 3: Կենտրոնական ծանուցում

Notանուցման կենտրոնական
Notանուցման կենտրոնական

Այժմ, երբ Pi- ն հուսալիորեն կկարդար հաղորդագրությունները և կփայլեր տարբեր գույներով, ինձ անհրաժեշտ էր ծանուցումները տեղադրելու համար, որպեսզի դրանք ինքնաբերաբար հայտնվեին. Հիշում եմ, որ Tom & Jerry- ի հին մուլտֆիլմում ռադիոն երբեմն երբեմն թնդում էր (Jerry's Diary (1949) - ռադիոյի հետ նույն ժամանակահատվածը) և սա այն ազդեցությունն էր, որից հետո ես նստում էի անկյունում և գեղեցիկ տեսք ուներ, երբեմն լուսավորվում և կարդում էր ծանուցումներ, որոնք հակառակ դեպքում չէի վերցնի իմ հեռախոսը:

Սկզբում ես ստեղծեցի առանձին Gmail հաշիվ ՝ ծանուցումների նամակները ստանալու համար, ինչը նշանակում էր, որ ես չէի ռմբակոծվի նոր փոստի ծանուցումների միջոցով կամ աղտոտեի իմ առկա մուտքի արկղը հարյուրավոր ավտոմատ ստեղծվող հաղորդագրություններով:

Հաջորդը ես անցա IFTTT (IF This Then That) ՝ ավտոմատացումը կարգավորելու համար: IFTTT- ի միջոցով դուք կարող եք հեշտությամբ միացնել բազմաթիվ «Ալիքներ» ձեր հաշվին և կարգավորել դրանք միմյանց հետ փոխազդելու միջոցով ՝ օգտագործելով «Բաղադրատոմսեր», այս դեպքում բազմաթիվ սոցիալական լրատվամիջոցների և իրական աշխարհի գործողությունները միացնելով էլ. Ես հարմարեցրել եմ բաղադրատոմսերի «Այնուհետև» մասը, որպեսզի նրանք բոլորը նամակ ուղարկեն Gmail հաշվին, որը ես ստեղծել եմ ծանուցումների համար, և օգտագործել եմ «Բաղադրիչներ» բաժինը ՝ համոզվելու համար, որ հիմնական տեղեկատվությունը կներառվի էլ., հատվածը, որը կարդացվում է: Այս պահին ես ունեմ IFTTT- ի հետևյալ բաղադրատոմսերը, բայց դրանք անընդհատ ավելանում են:

  • Ամեն օր ժամը 21.00 -ին էլ. Փոստով ուղարկեք վաղվա եղանակը
  • Ամեն օր Sunset- ում ամսաթիվն ու ժամը ուղարկեք էլ
  • ԵԹԵ ես պիտակված եմ Facebook- ի լուսանկարում, նամակ ուղարկեք
  • ԵԹԵ հեռախոսս միացված է/անջատված է, մարտկոցի տոկոսը ուղարկեք էլ
  • ԵԹԵ ես մտնեմ աշխարհագրական տարածք, նամակ ուղարկեք «MisterM- ը աշխատանքի է ժամանել»:
  • ԵԹԵ YouTube տեսանյութ վերբեռնեմ, նամակ ուղարկեք
  • ԵԹԵ կոնկրետ անձը թվիթ է անում, ուղարկեք այն էլ
  • ԵԹԵ Google- ի օրացույցի իրադարձությունը սկսի ուղարկել այն էլ
  • ԵԹԵ ներկայիս եղանակը փոխվում է անձրև, նամակ ուղարկեք («outգուշացեք, անձրև է սկսվում»):
  • ԵԹԵ խելացի վարդակը միացված կամ անջատված է, ուղարկեք նամակ
  • Եթե նոր SMS հաղորդագրություն է ստացվել, ուղարկեք այն էլ
  • ԵԹԵ հեռախոսի մարտկոցը 15% -ից ցածր լինի, նամակ ուղարկեք («Լիցքավորիր հեռախոսդ ապուշ»)
  • ԵԹԵ ես ունենամ Twitter- ի նոր հետևորդ կամ նշեմ նամակ ուղարկել

Դա կանխատեսելի ամենօրյա իրադարձությունների և անսպասելի հայտարարությունների հիանալի խառնուրդ է. Twitter- ի ծանուցումները ամենազվարճալին են, այս պահին այն կարդում է «Beef & Dairy Network», «Very British Problems», «My Sweetary Cat» և «Henry Thoreau» նոր թվիթերը (չնայած դրանցից ոմանք անջատվում են IFTTT ծրագիրը քաղաքավարի ընկերությունում): Twitter- ի որոշակի հաշիվներ կարդալ կարողանալն այն իսկապես ճկուն է դարձնում, և դրանք կարող են հարմարեցվել IFTTT- ի միջոցով, այլ ոչ թե ամեն անգամ Pi- ի վերագրագրավորման կարիք ունենալ:

Քայլ 4: Աուդիո ընտրանքներ

Աուդիո ընտրանքներ
Աուդիո ընտրանքներ
Աուդիո ընտրանքներ
Աուդիո ընտրանքներ
Աուդիո ընտրանքներ
Աուդիո ընտրանքներ
Աուդիո ընտրանքներ
Աուդիո ընտրանքներ

Հաջորդը ես պետք է դասավորեի ձայնագրությունը ՝ երկու մարտահրավերով: Նախ, ինչպես հեռացնել ձայնը Pi- ից: Ի տարբերություն իր մեծ եղբոր, Pi Zero- ն չունի 3.5 մմ աուդիո ելք, այնպես որ ես պետք է ինչ -որ ադապտեր օգտագործեի: Սկզբում ես կարծում էի, որ HDMI- ից VGA + Audio միակցիչ կօգտագործեմ, բայց դա չափազանցված էր թվում (և դա ինձ անհրաժեշտ էր մեկ այլ նախագծի համար), ուստի ես օգտագործեցի էժան USB աուդիո ադապտեր: Սա բավականին հեշտ էր կարգավորել, պարզապես USB ձայնային քարտը որպես Pi- ի նախնական ALSA սարք դնելու դեպք: Սա նշանակում էր, որ ես պետք է ներառեի USB հանգույց ՝ WiFi ադապտերը տեղադրելու համար, բայց ինձ հաջողվեց ապամոնտաժել և նորից օգտագործել հինը, որի շուրջը ես գտնվում էի:

Երկրորդ, ես պետք է ընտրեի ուժեղացուցիչ/բարձրախոս համադրություն, որը կտար լավ որակի ձայն և անընդհատ միացված կլիներ: Ես նախկինում օգտագործել եմ մարտկոցով աշխատող բարձրախոսներ, բայց կանոնավոր լիցքավորման կարիք ունենալու դեպքում դրանք լավ չեն լինի «միշտ օգտագործման» համար, ինչպես նաև հաճախ նկատելի ֆոնային սուլոցներ էին ունենում: Նախկինում ես նաև մարդասպան եմ դարձրել հին iPod նավահանգիստները, բայց դրանք հակված էին էներգախնայող «հատկանիշների» և անջատվեցին մի քանի րոպե լռությունից հետո:

Ի վերջո, ես գնացի ինչ -որ նոր բանով ՝ համակարգչի զույգ բարձրախոս ՝ 6,99 ֆունտ սակարկելի գնով: Ես շատ բան չէի սպասում, բայց ձայնի որակը բացարձակապես լավ էր, առանց սուլոցների և ժամկետների: ԱՀ բարձրախոսների հավելյալ բոնուսն այն էր, որ դրանք ներառում էին միացման/անջատման անջատիչ և ձայնի հավաքիչ, որը ես հույս ունեի, որ կկարողանայի միացնել ռադիոյի սկզբնական կարգավորիչներին: Ամեն ինչ աշխատեց նստարանին, ուստի ժամանակն էր այն տեղավորել գործի մեջ:

Քայլ 5: Ռետրո կցամասեր

Ռետրո կցամասեր
Ռետրո կցամասեր
Ռետրո կցամասեր
Ռետրո կցամասեր
Ռետրո կցամասեր
Ռետրո կցամասեր

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

Ես սկսեցի բարակ փայտե դարակից հին DVD դարակից, կտրելով այն չափի մեջ և հորատելով անցքեր պատյանների պտուտակների համար: Հաջորդը ես ապամոնտաժեցի բարձրախոսները ՝ կտրելով պլաստմասե պատյանները սղոցով և պտտվող գործիքով: Այժմ բարակ բարձրախոսները ամրացվեցին փայտե հիմքի վրա `90 աստիճանի բրա, որը պատրաստված էր Meccano- ից: Հաջորդը ուժեղացուցիչի միացումն էր. Տարածքի սահմանափակության պատճառով, ցավոք, դա անհրաժեշտ էր գլխիվայր ամրացնել և հիմքից մոտ մեկ մատնաչափ բարձրացնել: Ես ստիպված էի կառուցել սյուների մի տեսակ պայմանավորվածություն `տախտակին աջակցելու և ամրացնելու համար, բայց խրվեցի, թե ինչպես դա անել կոկիկ: Իդեալական լուծումը հենց քթի տակ էր `գունավոր մատիտ: Մատիտի հատվածները կտրեցի չափի, այնուհետև դրանք տեղադրեցի հիմքում փորված անցքերի մեջ: Գունավոր մատիտ օգտագործելու կատարյալ բանը այն է, որ կենտրոնում «կապարը» իսկապես հեշտությամբ կարելի է փորել ՝ թողնելով հարմար անցք տպատախտակի պտուտակների համար:

Ես օգտագործեցի Meccano- ի և Lego- ի կտորների համադրությունը ՝ բուն Pi- ին աջակցելու համար փակագիծ պատրաստելու համար, և մալուխային կապերով կարգի բերեցի թափառող լարերը: Ձայնի և միացման/անջատման անջատիչները բարձրախոսների տպատախտակին ավելի հեռու էին, քան ռադիոյի պատյանում եղած անցքերը (դուք չեք կարող ամեն ինչ ունենալ), ուստի դրանք երկարացրեցի ՝ օգտագործելով խոռոչ պլաստիկ փուչիկի փայտիկի հատվածներ:

Քայլ 6: Գործի աշխատանք

Գործի աշխատանք
Գործի աշխատանք
Գործի աշխատանք
Գործի աշխատանք
Գործի աշխատանք
Գործի աշխատանք

Ինչպես ավելի վաղ նշեցի, ռադիոյի գործը սարսափելի վիճակում էր, ուստի ես պոլիֆիլլայի օգնությամբ կարկատեցի ամենավատ անցքերն ու ճեղքերը և ամբողջովին ավազեցի այն: Ես որոշեցի կպչել ներկի համար նախատեսված գեղեցիկ սերուցքային գույնով, համակարգել թյունինգի հավաքման դարչնագույնի հետ: Ներկը պնդում էր, որ «այբբենարան և ներկ է մեկում», բայց ես նրան մի քանի շերտ նախաներկ տվեցի, որպեսզի ապահով կողմում լիներ: Բռնակները բավականին մանրակրկիտ մաքրեցին (60+ տարի լաք!), Բայց լավ դուրս եկան. Ես պարզապես ամրացրեցի օրիգինալ սերուցքային կոճակը պտուտակով, քանի որ այն կապված չէր որևէ բաղադրիչի:

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

Ռադիոյի հետևի շապիկը բացակայում էր, ուստի ես հին նկարի շրջանակից պատրաստեցի նորը ՝ ներկելով այն նույն կրեմի գույնով:

Քայլ 7: Radio Times

Radio Times
Radio Times
Radio Times
Radio Times
Radio Times
Radio Times

Սա իսկապես զվարճալի նախագիծ էր կառուցելու համար, լավ էր ամեն ինչ բավականին պարզ պահել և կենտրոնանալ հնարավորինս մաքուր դարձնելու վրա: Երբեմն ես գայթակղվում էի միկրոֆոն ավելացնել Alexa- ի ինտեգրման համար և նույնիսկ լրջորեն մտածում էի Chromecast Audio- ում կառուցելու մասին (հին ժամանակների ռադիոյի ոճով իմ սիրած նոր ժամանակի փոդքաստների համար), բայց ուրախ եմ, որ այն պարզ ու Ես հիացած եմ արդյունքով:

Այն այժմ տեղադրված է հյուրասենյակի անկյունում գտնվող բարձրախոսի վրա, լուսավորվում և երբեմն խոսում է այնպես, ինչպես ես հույս ունեի: Միակ բացասական կողմն այն է, որ կրեմագույն և շագանակագույն կիսաթափանցիկ հավաքիչը դժվարացնում է Blinkt- ի փայլուն գունային տեսականու ցուցադրումը: Դա բավականին ակնհայտ է մայրամուտի ծանուցումների (նարնջագույն) և տեքստային հաղորդագրությունների համար (մանուշակագույն), բայց եղանակային պայմանները մի փոքր նույնն են. Ինձ թվում է, որ ես պետք է փորձարկեմ տարբեր RGB գունային կոդեր:

Եթե ձեզ դուր է գալիս այս նախագիծը և ցանկանում եք ավելին տեսնել, կարող եք իմ կայքէջը տեսնել ընթացիկ նախագծի թարմացումների համար bit.ly/OldTechNewSpec կայքում, միացեք Twitter- ում @OldTechNewSpec կամ բաժանորդագրվեք աճող YouTube ալիքին bit.ly/oldtechtube - տալ որոշ ձեր հին տեխնիկայից `նոր տեխնիկա:

IoT շինարարների մրցույթ
IoT շինարարների մրցույթ
IoT շինարարների մրցույթ
IoT շինարարների մրցույթ

Երկրորդ մրցանակ IoT Builders մրցույթում

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