Სარჩევი:

Pi Zero Talking Radio: 7 ნაბიჯი (სურათებით)
Pi Zero Talking Radio: 7 ნაბიჯი (სურათებით)

ვიდეო: Pi Zero Talking Radio: 7 ნაბიჯი (სურათებით)

ვიდეო: Pi Zero Talking Radio: 7 ნაბიჯი (სურათებით)
ვიდეო: უზბეკური პილაფი ყაზანში ცეცხლზე. როგორ ამზადებენ ფერგანა პლოვს ოდესაში 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 ფუნტად - მე მაშინვე მომხიბლა მისმა კომპაქტურმა ზომამ და კლასიკურმა დიზაინმა და მისი პოტენციალის დანახვა მზით გაცვეთილი გარედან და მრავალი ბზარებიდან შევძელი! მე დიდი ხანია მინდა შევქმნა "მისაღები ოთახისთვის ღირსეული" და ეს იყო იდეალური ამოსავალი წერტილი. მე უკვე ექსპერიმენტი გავაკეთე ტექსტით მეტყველების შეტყობინებებზე კურდღლის პი პროექტზე და ვიმედოვნებდი, რომ შემეძლო დაეყრდნო იმას, რაც ვისწავლე იმისთვის, რომ შემექმნა ის, რაც ყოველდღიურად "უბრალოდ იმუშავებდა".

თუ თქვენ ვერ ხედავთ ჩაშენებულ ვიდეოს, ეს არის:

ნაბიჯი 1: ბლინკი პი

ბლინკი პი
ბლინკი პი
ბლინკი პი
ბლინკი პი

მე ავიღე ჩემი პირველი Pi Zeros ახლახანს და მაშინვე გამაოცა მათმა მცირე ზომამ! GPIO სათაურში შედუღების და გადამყვანების შეერთების შემდეგ პირველი მზად იყო წასასვლელად. თავდაპირველად ვგეგმავდი გაუმჯობესებული კურდღლის Pi- ს გაკეთებას, მაგრამ გარკვეული პერიოდის შემდეგ ეს უფრო მუშაობას ჰგავდა, ვიდრე გართობას, ასე რომ გამოვტოვე ის - თუმცა არა მანამ, სანამ არ დავიწყებდი ექსპერიმენტებს Unicorn pHAT– ით, პროგრამირებადი LED- ების 4x8 მატრიცაზე, რაც აბსოლუტური გროვა იყო გართობა! ერთადერთი მინუსი ის იყო, რომ pHAT– ის გამოყენებით აუდიო კონფიგურაცია გართულდა და მე მინდოდა ჩემი შემდგომი პროექტი მართლაც მარტივი ყოფილიყო.

ყველაფერი კემბრიჯის ჟოლოს ჯემზე დალაგდა სექტემბერში, როდესაც მე დავინახე ბლინქტი! იყიდება პიმორონის სადგომზე - ეს იგივეა, როგორც Unicorn– ის pHAT, მაგრამ ერთი მწკრივი 8 LED– ით, სრულყოფილად ზომის, რომელიც შეესაბამება pi ნულის GPIO სათაურს. მას გააჩნია უამრავი დოკუმენტაცია და მაგალითი და ამოქმედდა უმოკლეს დროში - ახლა დროა დავიწყოთ დანარჩენი კოდის შედგენა.

ნაბიჯი 2: საუბრის კოდი

სასაუბრო კოდი
სასაუბრო კოდი

მე დავიწყე კურდღლის პიდან ძირითადი კოდის ასლი, რადგან მასში უკვე იყო შენახული ჩემი Ivona ტექსტის მეტყველების სერთიფიკატები. თქვენ უნდა შექმნათ Ivona დეველოპერის ანგარიში სერვისის გამოყენებამდე, მაგრამ პროცესი მარტივია, როგორც ეს ადრე დავწერე.

შემდეგი ნაბიჯი იყო Pyvona- ს დაყენება, პითონის შესაფუთი Ivona TTS სერვისთან ინტეგრირებისთვის, რაც არ შეიძლებოდა ყოფილიყო ადვილი (pip install pyvona).

ამის გათვალისწინებით, მე დავიწყე კურდღლის პი კოდის შეცვლა, ამოვიღე ცნობები საავტომობილო კონტროლსა და სელფის გადაღებაზე, რათა დამტოვოს მხოლოდ ის ნაწილები, რომლებიც კითხულობენ შეტყობინებებს Gmail შეტყობინებების სათაურიდან. ამ კოდის კრიტიკული განვითარება იყო IF განცხადებების სერიის დამატება შეტყობინებებში კონკრეტული საკვანძო სიტყვების მოსაძებნად, რათა Blinkt! გაანათებს სხვადასხვა ფერს შეტყობინების მიხედვით.

ამას ცოტა დრო დამჭირდა, რადგან მე ჯერ კიდევ ვპოულობ ფეხებს პითონთან, მაგრამ განვსაზღვრე ჩემი საკვანძო სიტყვები ("ღრუბლიანი", "მზის ჩასვლა", "საშხაპეები", "ფეისბუქი", "ტვიტერი", "Youtube" და "მზიანი") მე შევძელი ბლინქტის გაკონტროლება! ფერი დამოკიდებულია წაკითხულ ტექსტზე.

მარტივი, თუ არა ელეგანტური კოდი, რომელიც მე გამოვიყენე არის GitHub– ზე, თუმცა მე უკვე დავამატე მეტი საკვანძო სიტყვა და ფერი! მე გამოვცადე იგი გარედან ბატარეაზე მომუშავე დინამიკის გამოყენებით - უფრო დაწვრილებით აუდიოს დაყენებაზე მოგვიანებით. ბოლო ნაბიჯი იყო პითონის სკრიპტის, radiot.py, დაყენება გაშვებისას.

ნაბიჯი 3: ცენტრალური შეტყობინება

ცენტრალური შეტყობინება
ცენტრალური შეტყობინება

ახლა, როდესაც Pi საიმედოდ წაიკითხავს შეტყობინებებს და ანათებს სხვადასხვა ფერს, მე მჭირდება შეტყობინებების დაყენება ისე, რომ ისინი სპონტანურად მოხვდნენ - მახსოვს, ტომ და ჯერის ძველ მულტფილმში რადიო ხანდახან მიდიოდა (ჯერის დღიური (1949) - იგივე პერიოდი, რაც რადიო!) და ეს არის ის ეფექტი, რომლის მიხედვითაც მე ვიჯექი, რომ ის იჯდა კუთხეში და ლამაზად გამოიყურებოდა, ხანდახან ანათებდა და კითხულობდა შეტყობინებებს, რომლებიც სხვაგვარად არ ავიღებდი ჩემს ტელეფონს.

პირველი მე შევქმენი ცალკე Gmail ანგარიში შეტყობინებების წერილების მისაღებად - ეს იმას ნიშნავდა, რომ მე არ დავიბომბებდი ახალი ფოსტის შეტყობინებებით ან არ დამიბინძურებდა ჩემი არსებული შემოსულები ასობით ავტომატურად გენერირებული შეტყობინებით.

შემდეგ მე გადავედი IFTTT– ზე (IF This Then That) ავტომატიზაციის დასაყენებლად. IFTTT– ით თქვენ შეგიძლიათ მარტივად დაუკავშიროთ მრავალჯერადი „არხი“თქვენს ანგარიშს და დააკავშიროთ ისინი ერთმანეთთან „რეცეპტების“გამოყენებით, ამ შემთხვევაში მრავალჯერადი სოციალური მედიისა და რეალური ქმედებების მიწოდება ელ.ფოსტის ნაკადში. მე მოვამზადე რეცეპტების "მაშინ ეს" ნაწილი ისე, რომ ისინი ყველა გამოგზავნიან ელ.წერილს Gmail ანგარიშზე, რომელიც მე შევქმენი შეტყობინებისთვის და გამოვიყენე "შემადგენლობა" განყოფილება, რათა დავრწმუნდე, რომ ძირითადი ინფორმაცია ელფოსტის სათაურში იქნება ჩართული., ნაწილი, რომელიც იკითხება. ამ მომენტში მე მაქვს შემდეგი IFTTT რეცეპტები, მაგრამ ეს ემატება ყველა დროს!

  • ყოველდღე საღამოს 9 საათზე გააგზავნეთ ხვალინდელი ამინდი ელექტრონული ფოსტით
  • ყოველდღე მზის ჩასვლისას გაგზავნეთ თარიღი და დრო ელ.წერილით
  • თუ ფეისბუქის ფოტოში ვარ მონიშნული, გამომიგზავნე წერილი
  • თუ ჩემი ტელეფონი არის ჩართული/გამორთული გამოაგზავნეთ ბატარეის პროცენტი ელ
  • გეოგრაფიულ მხარეში რომ შევიდე, გამომიგზავნე ელ.წერილი "MisterM მოვიდა სამსახურში!"
  • თუ YouTube ვიდეოს ავტვირთავ გამომიგზავნე ელ
  • თუ კონკრეტული ადამიანი ტვიტს აგზავნის, გაუგზავნეთ მას ელ
  • თუ Google კალენდარული მოვლენა დაიწყებს ელფოსტით გაგზავნას
  • თუ მიმდინარე ამინდი იცვლება წვიმის გამოგზავნით ელ.წერილს ("დააკვირდი, წვიმა დაიწყება!"
  • თუ ჭკვიანი სოკეტი ჩართულია ან გამორთულია გაგზავნეთ წერილი
  • თუ ახალი SMS შეტყობინება მიიღება, გაგზავნეთ იგი ელექტრონული ფოსტით
  • თუ ტელეფონის ბატარეა დაეცემა 15% -ზე დაბლა, გაგზავნეთ წერილი ("დატენე ტელეფონი, იდიოტო")
  • თუ მე მაქვს Twitter– ის ახალი მიმდევარი ან აღვნიშნავ ელ.ფოსტის გაგზავნას

ეს არის პროგნოზირებადი ყოველდღიური მოვლენებისა და მოულოდნელი განცხადებების დიდი ნაზავი - ჩემი ფავორიტი არის მზის ჩასვლის შესახებ შეტყობინება, საინტერესოა წელიწადის ამ დროს იმის ნახვა, თუ როგორ იცვლება მისი დრო ყოველდღიურად. ტვიტერის შეტყობინებები ყველაზე სახალისოა, ამ მომენტში ის კითხულობს რაიმე ახალ ტვიტს "ძროხისა და რძის ქსელისგან", "ძალიან ბრიტანული პრობლემები", "ჩემი სამარცხვინო კატა" და "ჰენრი ტორო" (თუმცა ზოგიერთი მათგანი გამორთულია IFTTT აპლიკაცია ზრდილობიან კომპანიაში). Twitter– ის კონკრეტული ანგარიშების წაკითხვის უნარი მას ნამდვილად მოქნილს ხდის და მათი მორგება შესაძლებელია IFTTT– ის საშუალებით, ვიდრე ყოველ ჯერზე Pi– ს გადაპროგრამება.

ნაბიჯი 4: აუდიო პარამეტრები

აუდიო პარამეტრები
აუდიო პარამეტრები
აუდიო პარამეტრები
აუდიო პარამეტრები
აუდიო პარამეტრები
აუდიო პარამეტრები
აუდიო პარამეტრები
აუდიო პარამეტრები

შემდეგ მჭირდებოდა აუდიოს დალაგება, ორი გამოწვევით! პირველ რიგში, როგორ ამოიღოთ აუდიო Pi- დან. განსხვავებით მისი უფროსი ძმისგან Pi Zero– ს არ აქვს 3.5 მმ აუდიო გამომავალი, ამიტომ დამჭირდა რაიმე სახის ადაპტერის გამოყენება. თავდაპირველად ვფიქრობდი, რომ გამოვიყენებ HDMI– ს VGA + აუდიო კონექტორზე, მაგრამ ეს ზედმეტად მომეჩვენა (და ეს მჭირდებოდა სხვა პროექტისთვის!), ამიტომ გამოვიყენე იაფი USB აუდიო ადაპტერი. ამის დაყენება საკმაოდ ადვილი იყო, მხოლოდ USB ხმის ბარათის დაყენების შემთხვევაში, როგორც ნაგულისხმევი ALSA მოწყობილობა Pi- ზე. ეს იმას ნიშნავდა, რომ მე მჭირდებოდა USB ჰაბის ჩართვა WiFi ადაპტერის განსახორციელებლად, მაგრამ მე მოვახერხე დემონტაჟი და ხელახლა გამოყენება ძველი, რომელსაც მე ვიწექი.

მეორეც, მე უნდა შევარჩიო გამაძლიერებელი/დინამიკის კომბინაცია, რომელიც მისცემს კარგი ხარისხის ხმას და მუდმივად ჩართული იქნება. მე ადრე გამოვიყენე ბატარეაზე მომუშავე დინამიკები, მაგრამ რეგულარული დატენვა მჭირდება, ეს არ იქნება კარგი "ყოველთვის" გამოყენებისთვის, ასევე მათ ხშირად ჰქონდათ შესამჩნევი ფონის ხმა. მე ასევე კანიბალიზირებული მაქვს ძველი iPod დოკები წარსულში, მაგრამ მათ ჰქონდათ ენერგიის დაზოგვის "მახასიათებლები" და გამორთულია რამდენიმე წუთის დუმილის შემდეგ.

მე საბოლოოდ რაღაც ახალი წამოვედი, კომპიუტერის წყვილი წყვილი გარიგების ფასად 6.99 ფუნტი. მე არ ველოდი ძალიან ბევრს, მაგრამ ხმის ხარისხი იყო აბსოლუტურად კარგი, ყოველგვარი ჩხუბისა და დროის ამოწურვის გარეშე. კომპიუტერის დინამიკების დამატებული ბონუსი იყო ის, რომ მათ ჩართეს ჩართვა/გამორთვა და მოცულობის აკრიფეთ, რაც ვიმედოვნებდი, რომ შევძლებდი რადიოს თავდაპირველ კონტროლთან დაკავშირებას. ეს ყველაფერი მუშაობდა სკამზე, ასე რომ, დრო იყო მოერგო საქმეში!

ნაბიჯი 5: რეტრო მორგება

რეტრო იარაღი
რეტრო იარაღი
რეტრო იარაღი
რეტრო იარაღი
რეტრო იარაღი
რეტრო იარაღი

როდესაც პირველად მოვიყვანე რადიო სახლში, მე ამოვიღე ორიგინალური სქემები, რომლებიც, ფაქტიურად, სადღეგრძელო იყო. მე შთაბეჭდილება მოახდინა ორიგინალურ კონსტრუქციაზე, თუმცა აშკარად შეიქმნა მისი ადვილად დემონტაჟი და დაფიქსირება, რადგან რამოდენიმე ჭანჭიკის გაუქმების შემდეგ მთელი ასამბლეა გადმოვიდა ერთგვარ შასისზე. მე გადავწყვიტე გამომეყენებინა იგივე მიდგომა და ახალი კომპონენტები ერთად დამეყენებინა იმ ბაზაზე, რომელიც შემდგომ შეიძლებოდა ჩამსხდარიყო კორპუსში და დაცულიყო ორიგინალის მსგავსად.

დავიწყე თხელი ხის თაროზე ძველი DVD თაროდან, გავჭრა მას ზომაში და ჩავარჭე ხვრელები საქმის ჭანჭიკებისთვის. შემდეგ მე დავშალე დინამიკები, დავჭრა პლასტმასის ქეჩები ხრახნიანი და მბრუნავი იარაღით. ახლა გამხდარი დინამიკები ხის ბაზაზე დაფიქსირდა მექანოსგან დამზადებული 90 გრადუსიანი სამაგრით. შემდეგი იყო გამაძლიერებლის წრე - სივრცის შეზღუდვის გამო, სამწუხაროდ, ეს საჭირო იყო თავდაყირა დამონტაჟებული და ბაზაზე დაახლოებით ერთი ინჩის ზემოთ აწევა. მე უნდა ავაშენო რაიმე სახის სვეტის მოწყობა დაფის მხარდასაჭერად და უზრუნველსაყოფად, მაგრამ დავრჩი, როგორ გავაკეთო ეს სისუფთავე. იდეალური გადაწყვეტა სწორედ ცხვირის ქვეშ იყო - ფერადი ფანქარი! ფანქრის მონაკვეთები გავჭრა ზომაზე, შემდეგ კი ჩავასხი ბაზაზე გაბურღულ ხვრელებში. ფერადი ფანქრის გამოყენებისას სრულყოფილი ის არის, რომ ცენტრში "ტყვიის" მართლაც ადვილად გაბურღვა შესაძლებელია, რის გამოც მოსახერხებელი ხვრელია მიკროსქემის ხრახნებისათვის.

მეკანოსა და ლეგოს ნაჭრების კომბინაცია გამოვიყენე ფრჩხილი, რომლითაც Pi მხარს უჭერდა, და მაწანწალა ლიდერები დავალაგე საკაბელო კავშირებით. ხმის და ჩართვის/გამორთვის ჩამრთველები დინამიკის მიკროსქემის დაფაზე უფრო დაშორებული იყო, ვიდრე რადიოს კორპუსში არსებული ხვრელები (თქვენ არ გექნებათ ყველაფერი), ამიტომ მე გავაფართოვე ისინი ღრუ პლასტიკური ბუშტის ჯოხის მონაკვეთების გამოყენებით.

ნაბიჯი 6: საქმეზე მუშაობა

საქმის მუშაობა
საქმის მუშაობა
საქმის მუშაობა
საქმის მუშაობა
საქმის მუშაობა
საქმის მუშაობა

როგორც ადრე აღვნიშნე, რადიოსადგური საშინელ მდგომარეობაში იყო, ამიტომ პოლიფილას გამოყენებით ყველაზე ცუდი ხვრელები და ბზარები დავაფიქსირე და გავანადგურე. მე გადავწყვიტე გამყარებაში სასიამოვნო კრემის ფერი საღებავისთვის, კოორდინაცია მოვახერხე აკრიფეთ ყავისფერთან. საღებავი ამტკიცებდა, რომ არის "პრაიმერი და საღებავი ერთში", მაგრამ მე მას მივეცი პრაიმერის რამდენიმე ფენა, რათა ის უსაფრთხო მხარეს იყოს. ღილაკებმა საკმაოდ კარგად გაიწმინდა (60 წელზე მეტი ხნის განმავლობაში!), მაგრამ კარგად გამოვიდა - მე უბრალოდ დავიმაგრე ორიგინალური კრემის ამომრთველი სახელური ციფერბლატზე, რადგან ის არ იყო დაკავშირებული რომელიმე კომპონენტთან.

მას შემდეგ, რაც საღებავი გამკვრივდა, დრო იყო შევაჯამო ყველაფერი - როგორც წესი, პროექტის ნაწილი, რომელიც ყველაზე მეტად ამოწმებს ჩემს მოთმინებას! ამჯერად ის ძალიან შეუფერხებლად წარიმართა, რადგან ყველა რთული კონსტრუქცია უკვე გაკეთდა ბაზაზე, ყველაფერი რაც მე უნდა გამეკეთებინა იყო ასამბლეის ჩადება ყუთში, ჩავამაგრებდი ჭანჭიკებით და ვკრავდი ღილაკებს.

რადიოს უკანა ყდა დაკარგული იყო, ამიტომ ძველი სურათის ჩარჩოდან ახალი გავაკეთე და იგივე კრემის ფერი შევიღებე.

ნაბიჯი 7: რადიო თაიმსი

რადიო თაიმსი
რადიო თაიმსი
რადიო თაიმსი
რადიო თაიმსი
რადიო თაიმსი
რადიო თაიმსი

ეს მართლაც სახალისო პროექტი იყო, კარგი იყო რომ ყველაფერი საკმაოდ მარტივი ყოფილიყო და მაქსიმალურად სუფთა გამხდარიყო აქცენტი. ხანდახან მაცდუნებდა მიკროფონის დამატება ალექსას ინტეგრაციისთვის და სერიოზულად ვიფიქრე Chromecast Audio– ში (ძველი დროის რადიოს სტილში ჩემი საყვარელი ახალი პოდკასტებისათვის) აშენებაზე, მაგრამ მიხარია, რომ ეს მარტივი და აღფრთოვანებული ვარ შედეგით.

ის ახლა დამონტაჟებულია დინამიკზე მისაღები ოთახის კუთხეში, ანათებს და ზოგჯერ მეტყველებს ზუსტად ისე, როგორც მე ვიმედოვნებდი. ერთადერთი უმნიშვნელო მინუსი ის არის, რომ კრემისფერი და ყავისფერი გამჭვირვალე ციფერბლატი ართულებს ბრწყინვალების ბრწყინვალე ფერის დიაპაზონის ჩვენებას! ეს საკმაოდ აშკარაა მზის ჩასვლის შეტყობინებებისათვის (ნარინჯისფერი) და ტექსტური შეტყობინებებისათვის (მეწამული), მაგრამ ამინდის პირობა ოდნავ ერთნაირია - მე მხოლოდ ექსპერიმენტი მჭირდება სხვადასხვა RGB ფერის კოდებით, ვფიქრობ!

თუ მოგწონთ ეს პროექტი და გინდათ მეტი ნახოთ შეგიძლიათ ნახოთ ჩემი ვებ – გვერდი მიმდინარე პროექტის განახლებებზე bit.ly/OldTechNewSpec, შეუერთდით Twitter– ზე @OldTechNewSpec ან გამოიწერეთ მზარდი YouTube არხი bit.ly/oldtechtube - მისცეს ზოგიერთი თქვენი ძველი ტექნიკის ახალი სპეციფიკა!

IoT მშენებელთა კონკურსი
IoT მშენებელთა კონკურსი
IoT მშენებელთა კონკურსი
IoT მშენებელთა კონკურსი

მეორე პრიზი IoT Builders კონკურსში

გირჩევთ: