Мазмұны:
- 1 -қадам: Blinkty Pi
- 2 -қадам: сөйлесу коды
- 3 -қадам: Орталық хабарландыру
- 4 -қадам: Аудио параметрлері
- 5 -қадам: ретро фитинг
- 6 -қадам: Кейспен жұмыс
- 7 -қадам: Radio Times
Бейне: Pi Zero Talking Radio: 7 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Бұл 1940 жылдардың соңында DeWald үстел радиосы, мен Raspberry Pi Zero, Blinkt арқылы жаңа өмір сыйладым! Жарықдиодты жолақ және ДК динамиктерінің жұбы. Ол Pyvona мәтінді сөйлеуге (TTS) қозғалтқышы мен IF This Then That (IFTTT) интеграциясын қолдана отырып, Интернетке қосылған қызметтердің бірқатар хабарламаларын оқиды. Жарықдиодты шамдар керемет жарқырайды және хабарландыру мәтініндегі кілт сөздерге байланысты, мысалы, «youtube» = Қызыл радионың циферблатын басқа түспен жарықтандырады.
Мен бұл тәтті радионы жазда автокөлік сатылымында 3 фунт стерлингке алдым - мені оның ықшам өлшемі мен классикалық дизайны бірден қабылдады, мен оның әлеуетін күн сәулесінен және көптеген жарықтардан көре алдым! Мен көптен бері «қонақ бөлмеге лайықты нәрсе» жасағым келді, және бұл идеалды бастапқы нүкте болды. Мен бұрын Rabbit Pi жобасында мәтінді сөйлеуге арналған хабарландырулармен тәжірибе жасадым және күнделікті «жұмыс істейтін» нәрсені жасау үшін білгеніме сүйенемін деп үміттендім.
Егер сіз ендірілген бейнені көрмесеңіз, ол мына жерде:
1 -қадам: Blinkty Pi
Мен жақында бірінші Pi нөлдерін алдым және олардың кішкентай өлшеміне бірден таң қалдым! GPIO тақырыбына дәнекерлеп, адаптерлерді қосқаннан кейін біріншісі дайын болды. Бастапқыда мен жақсартылған Rabbit Pi құруды жоспарладым, бірақ біраз уақыттан кейін бұл жұмыстан гөрі жұмыс сияқты болды, сондықтан мен оны сақтап қойдым - бірақ мен Unicorn pHAT, 4х8 бағдарламаланатын жарықдиодты матрицамен тәжірибе жасаудан бұрын емес, бұл абсолютті үйме болды. көңілді! Жалғыз кемшілігі - pHAT -ты қолдану дыбысты орнатуды қиындатты, мен келесі жобамды шынымен қарапайым етіп сақтағым келді.
Қыркүйек айында Кембридж таңқурай джемінде Блинкті көргенде бәрі өз орнына келді! Pimoroni дүңгіршегінде сатылады - бұл Unicorn pHAT сияқты, бірақ бір қатарлы 8 светодиодты, pi нөлінің GPIO тақырыбына сәйкес келетін өлшемде. Ол көптеген құжаттар мен мысалдармен бірге келеді және тез арада іске қосылды - енді кодтың қалған бөлігін жинауды бастау керек болды.
2 -қадам: сөйлесу коды
Мен Rabbit Pi негізгі кодының көшірмесінен бастадым, себебі онда Ivona мәтінді сөйлеуге арналған тіркелгі деректерім сақталған. Қызметті пайдаланбас бұрын сізге Ivona әзірлеуші тіркелгісін орнату қажет, бірақ бұл процесс бұрын құжатталғандай қарапайым.
Келесі қадам - Ivona TTS қызметімен интеграцияланатын Python орауышы Pyvona -ны орнату болды, бұл оңай болмады (pip install pyvona).
Осының арқасында мен Rabbit Pi кодын өзгерте бастадым, моторды басқару және селфи түсіру сілтемелерін алып тастадым, мені Gmail хабарламаларының тақырыптық жолдарынан хабарландыруларды оқитын биттерді қалдырдым. Бұл кодтың маңызды дамуы хабарларда белгілі бір кілт сөздерді іздеу үшін IF мәлімдемелерін қосады, осылайша Blinkt! хабарламаға байланысты әр түрлі түстермен жарқырайды.
Мен Python -мен әлі де аяғымды іздеп жүргенде, бірақ кілт сөздерді анықтағаннан кейін біраз уақыт қажет болды («Бұлтты», «Күннің батуы», «Душ», «Facebook», «Twitter», «Youtube» және «Шуақты») Мен Блинкті басқара алдым! түсі оқылған мәтінге байланысты.
Мен қолданатын қарапайым код GitHub -де, бірақ мен кілт сөздер мен түстерді қостым! Мен оны корпустың сыртында аккумулятормен жұмыс істейтін динамик арқылы сынап көрдім - кейінірек дыбысты орнату туралы толығырақ. Соңғы қадам - radiot.py питон сценарийін іске қосу кезінде іске қосу.
3 -қадам: Орталық хабарландыру
Енді Pi хабарламаларды сенімді түрде оқиды және хабарландыруларды өздігінен өтуі үшін әр түрлі түстермен жарқырайды - ескі Том мен Джерри мультфильмінде радио кейде қосылатынын есіме түсіремін (Джерридің күнделігі (1949) - радио сияқты!) және бұл мен бұрышта отыратын және әдемі көрінетін, кейде телефонды қабылдамайтын хабарламаларды оқитын және оқитын әсер болды.
Алдымен мен электрондық пошта хабарландыруларын алу үшін бөлек Gmail есептік жазбасын орнаттым, бұл мені жаңа пошта хабарландыруларымен қоршамайтынын немесе автоматты түрде жасалған жүздеген хабарламалармен бұрыннан бар кіріс жәшігімді ластамайтынымды білдіреді.
Содан кейін мен автоматтандыруды орнату үшін IFTTT (IF This then That) -ге кірдім. IFTTT көмегімен сіз өзіңіздің есептік жазбаңызға бірнеше «Арналарды» оңай қосуға және оларды «Рецепттер» көмегімен бір-бірімен өзара әрекеттесуге орната аласыз, бұл жағдайда бірнеше әлеуметтік медиа мен нақты әрекеттерді электрондық хаттар ағынына айналдырады. Мен рецептілердің «Содан кейін» бөлігін олардың мен хабарландырулар үшін орнатқан Gmail есептік жазбасына электрондық пошта жіберетін етіп реттедім және «Ингредиенттер» бөлімін пайдаланып, негізгі ақпарат электрондық пошта тақырыбына енгізілетініне көз жеткіздім., оқылатын бөлігі. Қазіргі уақытта менде IFTTT келесі рецепттері орнатылған, бірақ олар үнемі қосылады!
- Күн сайын 21: 00 -де ертеңгі ауа -райы электрондық пошта арқылы жіберіледі
- Күн батқанда күн мен уақытты электрондық пошта арқылы жіберіңіз
- Егер мені Facebook -тегі фотосуретте белгілеген болса, электрондық пошта жіберіңіз
- Егер менің телефоным қосулы/ажыратылған болса, батареяның пайызын электрондық поштаға жіберіңіз
- Егер мен географиялық аймаққа кірсем, «MisterM жұмысқа келді!» Электрондық поштасын жіберіңіз.
- Егер мен YouTube бейнесін жүктесем, электрондық пошта жіберіңіз
- Егер белгілі бір адам твит жазса, оны электрондық поштаға жіберіңіз
- Егер Google күнтізбелік оқиғасы оны электрондық пошта арқылы жібере бастаса
- ЕГЕР ауа райы жаңбырға байланысты өзгерсе, электронды пошта жіберіңіз («Абайлаңыз, жаңбыр жауа бастайды!»)
- Егер смарт розетка қосылған немесе өшірілген болса, электрондық пошта жіберіңіз
- Егер жаңа SMS хабарлама қабылданса, оны электрондық поштаға жіберіңіз
- Егер телефонның аккумуляторы 15% -дан төмен түссе, электрондық пошта жіберіңіз («Ақымақ телефонды зарядтаңыз»)
- Егер менде Twitter -дің жаңа оқырманы болса немесе электрондық поштаны жіберемін
Бұл болжанатын күнделікті оқиғалар мен күтпеген хабарландырулардың тамаша қоспасы - менің ұнататыным - Күннің батуы туралы хабарландыру, оның уақытының күнделікті қалай өзгеретінін көру қызықты. Twitter хабарландырулары - ең қызықты, қазіргі уақытта ол «Beef & Dairy Network», «Өте британдық проблемалар», «Менің мысық мысығым» және «Генри Торо» кез келген жаңа твиттерді оқиды (бірақ олардың кейбіреулері өшіріледі) IFTTT қосымшасы сыпайы компанияда). Твиттердегі арнайы есептік жазбаларды оқи білу оны икемді етеді және оларды әр уақытта Pi бағдарламасын қайта бағдарламалаудың орнына IFTTT арқылы баптауға болады.
4 -қадам: Аудио параметрлері
Содан кейін маған екі қиындықпен аудионы сұрыптау қажет болды! Алдымен аудионы Pi -ден қалай шығаруға болады. Үлкен ағасынан айырмашылығы, Pi Zero -да 3,5 мм аудио шығысы жоқ, сондықтан маған қандай да бір адаптер қажет болды. Бастапқыда мен HDMI -VGA + Аудио коннекторын қолданамын деп ойладым, бірақ бұл шамадан тыс болып көрінді (және бұл маған басқа жоба үшін қажет!), Сондықтан мен арзан USB аудио адаптерін қолдандым. Мұны орнату өте оңай болды, тек USB дыбыстық картасын Pi -де әдепкі ALSA құрылғысы ретінде орнатуға болады. Бұл маған WiFi адаптерін орналастыру үшін USB хабын қосу керек дегенді білдірді, бірақ мен ескі қондырғыны бөлшектеп, қайта қолдана алдым.
Екіншіден, жақсы дыбыс беретін және үнемі қосылатын күшейткіш/динамик комбинациясын таңдау керек болды. Мен бұрын аккумулятормен жұмыс істейтін динамиктерді қолдандым, бірақ оларды үнемі зарядтау қажет болса, «үнемі қосылып тұруға» жарамайды, сонымен қатар оларда фонның ысуы жиі байқалады. Мен де ескі айпод қондырғыларын бұрын каннибализацияладым, бірақ олар энергияны үнемдейтін «мүмкіндіктерге» ие болды және бірнеше минуттық үнсіздіктен кейін өшірілді.
Мен соңында жаңа нәрсемен келдім, бағасы 6,99 фунт болатын ДК динамиктері. Мен көп нәрсені күтпедім, бірақ дыбыс сапасы өте жақсы болды, ешқандай ысқырық немесе уақыт жоқ. ДК динамиктерінің қосымша бонусы - оларда радионың бастапқы басқару элементтеріне қосылуға үміттенетін қосу/өшіру қосқышы мен дыбыс қаттылығы бар болды. Мұның бәрі орындықта жұмыс істеді, сондықтан қазір оны осы жағдайға сай ету уақыты келді!
5 -қадам: ретро фитинг
Мен радионы үйге алғаш рет әкелгенде, мен тост болатын түпнұсқалық схемаларды алып тастадым. Түпнұсқалық конструкция мені таң қалдырды, бірақ ол оңай бөлшектеуге және бекітуге арналған, өйткені бірнеше болтты шешкеннен кейін бүкіл құрастыру бір шассиде сырғып кетті. Мен дәл осы әдісті қолдануға шешім қабылдадым және жаңа компоненттерді корпустың ішіне кіріп, түпнұсқа сияқты бекітілетін негізге біріктіруге шешім қабылдадым.
Мен ескі DVD сөресінен жіңішке ағаш сөреден бастадым, оны өлшеміне қарай кесіп, корпустың болттары үшін тесіктер бұрғыладым. Содан кейін мен динамиктерді бөлшектедім, пластикалық корпусты темір қарамен және айналмалы құралмен кесіп тастадым. Қазіргі жұқа динамиктер ағаш негізге Meccano-дан жасалған 90 градус кронштейнмен бекітілген. Күшейткіш схемасы келесі болды - кеңістік шектеулеріне байланысты, өкінішке орай, оны төңкеріп, негізден бір дюйм биіктікке көтеру қажет болды. Мен тақтаны қолдау және бекіту үшін қандай да бір тірек құрылымын жасауым керек болды, бірақ мұны қалай ұқыпты жасау керектігін білмедім. Идеалды шешім менің мұрнымның астында болды - түрлі -түсті қарындаш! Мен қарындаштың бөліктерін өлшеміне қарай кесіп алдым, содан кейін оларды негізде тесілген тесіктерге қойдым. Түрлі -түсті қарындашты қолданудың тамаша жағы - орталықтағы «қорғасынды» шынымен оңай бұрғылауға болады, бұл тізбектегі бұрандалар үшін ыңғайлы тесік қалдырады.
Мен Meccano мен Lego бөлшектерінің комбинациясын қолданып, Pi -дің тіреуішін жасадым және кабельдік байланыстармен адасқан сымдарды реттедім. Дыбыс қаттылығы мен қосу/өшіру қосқыштары радио корпустағы саңылауларға қарағанда динамиктің тақтасында бөлек орналасқан (сізде бәрі болмайды), сондықтан мен оларды қуыс пластикалық әуе шарының таяқшасы арқылы ұзарттым.
6 -қадам: Кейспен жұмыс
Жоғарыда айтқанымдай, радио корпусы қорқынышты күйде болды, сондықтан мен полифилла көмегімен ең нашар тесіктер мен жарықтарды түзеп, барлық жерін тегістедім. Мен бояудың жағымды кремді түсімен жабысқақ болуды шештім. Бояу «праймер және бір бояу» деп мәлімдеді, бірақ мен қауіпсіз жақта болу үшін алдымен оған бірнеше қабат праймер бердім. Тұтқалар аздап тазартылды (60+ жыл кір!), Бірақ жақсы шықты - мен кремнің түпнұсқа тұтқасын болтпен бекітіп қойдым, себебі ол ешқандай компоненттерге қосылмаған.
Бояу қатайғаннан кейін бәрін біріктірудің уақыты келді - бұл менің шыдамдылығымды сынайтын жобаның бөлігі! Бұл жолы бәрі өте жақсы өтті, өйткені барлық күрделі құрылыстар қазірдің өзінде негізде жасалды, мен құрастыруды корпусқа сырғытып, болттармен бекітіп, тұтқаларды бекітуім керек болды.
Радионың артқы қақпағы жоқ болғандықтан, мен ескі сурет жақтауынан жаңасын жасадым, оны кремнің түсіне бояймын.
7 -қадам: Radio Times
Бұл өте қызықты жоба болды, оны қарапайым етіп сақтап, оны мүмкіндігінше таза етуге көңіл бөлу жақсы болды. Кейде мен Alexa интеграциясына микрофон қосуға азғырылдым, тіпті Chromecast Audio-да (ескі радио стиліндегі менің сүйікті жаңа уақыттағы подкасттарым үшін) салу туралы ойландым, бірақ мен оны қарапайым ұстағаныма қуаныштымын. Мен нәтижеге қуаныштымын.
Ол қазір қонақ бөлмесінің бұрышындағы динамикке орнатылды, ол мен күткендей жарықтандырады және анда -санда сөйлейді. Жалғыз минус - крем мен қоңыр мөлдір теру Blinkt -тің керемет түс диапазонын көрсетуді қиындатады! Бұл күннің батуы (апельсин) және мәтіндік хабарламалар (күлгін) үшін өте айқын, бірақ ауа райы сәл қарапайым - маған әр түрлі RGB түс кодтарымен тәжірибе жасау керек!
Егер сіз бұл жобаны ұнатсаңыз және көбірек көргіңіз келсе, bit.ly/OldTechNewSpec сайтынан менің жаңартылған веб -сайтымды қарап шығыңыз, Twitter -ге қосылыңыз @OldTechNewSpec немесе bit.ly/oldtechtube бойынша өсіп келе жатқан YouTube каналына жазылыңыз - беріңіз сіздің кейбір ескі технологияларыңыз жаңа специфика!
IoT құрылысшылар байқауының екінші жүлдесі
Ұсынылған:
Raspberry Pi Zero жұмыс жасайтын ағаштан жасалған LED дисплейі: 11 қадам (суреттермен)
Raspberry Pi Zero жұмыс жасайтын ағаштан жасалған ойын -сауық дисплейі: Бұл жоба 20x10 пиксельді WS2812 өлшемді 78x35 см жарықдиодты дисплейді іске қосады, оны қонақ бөлмесінде ретро ойындарын ойнау үшін оңай орнатуға болады. Бұл матрицаның бірінші нұсқасы 2016 жылы салынған және оны көптеген адамдар қайта жасаған. Бұл экспозиция
Электронды қағаз дисплейі мен Raspberry Pi Zero W қолданатын YouTube абоненттерінің есептегіші: 5 қадам (суреттермен)
Электронды қағаз дисплейі мен Raspberry Pi Zero W қолданатын YouTube жазылушыларының есептегіші: Бұл нұсқаулықта мен сізге YouTube API сұрау үшін электронды қағаз дисплейі мен Raspberry Pi Zero W көмегімен өз Youtube жазылушыларының есептегішін қалай құруға болатынын көрсетемін. және дисплейді жаңартыңыз. Электронды қағаз дисплейлері жобаның бұл түрі үшін өте қолайлы, себебі
DIY Raspberry Pi Zero портативті ойын консолі: 6 қадам (суреттермен)
DIY Raspberry Pi Zero портативті ойын консолі: Бұл жобада мен сізге Raspberry Pi Zero, NiMH батареяларын, үйден асып кетуден қорғаныс тізбегін, артқы көріністі дисплей мен аудио күшейткішті қалай қолдануға болатынын көрсетемін. ретро ойындары. Бастайық
Waveshare Game-HAT MOD Raspberry PI Zero/Zero W [EN/ES]: 4 қадам
Waveshare Game-HAT MOD Raspberry PI Zero/Zero W [EN/ES]: ENGLISH/INGLÉS: Өздеріңіз білетіндей, Waveshare Game-HAT құрастыру өте қарапайым, егер бұл дизайнмен толық үйлесімді болса. бұл Raspberry Pi 2/3 / 3A + / 3B / 3B + /, мен жеке ойнаймын, бұл ойын консолі
LM386 көмегімен Arduino мәтінді сөйлеу түрлендіргіші - Talking Arduino жобасы - Talkie Arduino кітапханасы: 5 қадам
LM386 көмегімен Arduino мәтінді сөйлеу түрлендіргіші | Talking Arduino жобасы | Talkie Arduino кітапханасы: Сәлеметсіздер ме, балалар, біз жобаның көп бөлігінде arduino -дан сөйлесуді талап етеміз, мысалы, сағаттар немесе кейбір мәліметтерді айту, біз мәтінді Arduino көмегімен сөйлеуге айналдырамыз