Mündəricat:
- Təchizat
- Addım 1: Quraşdırma (başsız) Raspberry Pi W
- Addım 2: Böyük Radio Proqramını Qurun
- Addım 3: Əlavə Proqramı Qurun
- Addım 4: Radio Stansiyalarının axınlarını tapın
- Addım 5: Dövrlər yaradın
- Addım 6: Test edin
- Addım 7: Daimi bir mühitə qoyun
- Addım 8: Başlanğıcda Çalışacaq Proqramı Qurun
Video: Böyük Radio - Raspberry Pi: 8 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Senior Radio layihəsi, həm hardware, həm də proqram komponentləri olan açıq mənbəli əlçatan dizaynlı bir internet radio cihazıdır. Zənglərin səs səviyyəsini və seçilmiş radio stansiyasını idarə etdiyi cib radiosuna nəzarət edən istifadəçilər üçün istifadə üçün nəzərdə tutulmuşdur. Layihə, standart bir əl radiosu kimi oxşar bir ölçü və idarəetmə istəyən bir istifadəçiyə yönəlmiş istifadəçi mərkəzli bir dizaynla hazırlanmışdır.
Əlilliyi olan şəxslərin, adətən yalnız internet brauzeri vasitəsi ilə mövcud olan minlərlə fərqli internet axını məzmununu dinləməsinə icazə vermək ehtiyaclarını ödəmək üçün qurulmuşdur. Bir çox insanın belə bir cihazı asanlıqla istifadə etmək qabiliyyəti yoxdur, buna görə də bu dizayn müasir bir texnologiya üçün tanış bir interfeys yaratmağı hədəfləyir.
Əsas funksiya,iorRadio.py adlı bir python 3.7.3 proqramında saxlanılan Github -dadır. Radionun vəziyyətini saxlamaq üçün bir json faylını oxuyur və yazır, buna görə söndürdüyünüz zaman seçdiyiniz səs səviyyəsini və stansiyanı xatırlayacaq. Əlavə olaraq, dəyişdirə biləcəyiniz bir onlayn ev sahibi json faylını oxuyur! Bu, başqasına verdiyiniz təqdirdə radio stansiyalarını uzaqdan yeniləməyə imkan verir.
Hal -hazırda bir bluetooth dinamikinə qoşulmaq üçün yaradılmışdır, ancaq asanlıqla bortdakı dinamikdən də çalına bilər.
Bu cihazın yaradıcısı, ehtimal ki, istifadəçi deyil və elektronika və əsas proqramlaşdırma bilikləri ilə bağlı ən azından bir az təcrübəyə ehtiyac duyur. Linux təcrübəsi də çox faydalıdır.
İstifadəçi üçün funksionallıq sadədir:
Güc açıldıqda, standart audio cihazı üzərində seçilmiş son stansiya çalınacaq. Sol düymə, bir neçə klik düyməsinin yeni bir URL -ə dəyişdiyi stansiyanı idarə edir. Son və ya ilk girişdən sonra yuvarlanacaq. Sağ düymə səs səviyyəsini idarə edir. LED proqramın aktiv olduğunu göstərir. Və düymə radionu dayandırır və ya "söndürür". Bir dəfə işə salındıqda, bir istifadəçi dayandırmaq/oynatmaq və ya "söndürmək/açmaq" düyməsini, radio və onu idarə etmək üçün iki düyməni basa bilər.
Təchizat
İstifadə etdiyim hər bir maddə əlaqəlidir. Mənə təxminən 60 dollara başa gəldi, bol miqdarda təchizat qaldı!
Əsas elektron və linux bilikləri - montaj və ayıklama üçün
Raspberry Pi Zero W (Zero WH başlıqları əvvəlcədən lehimli və ehtimal ki faydalıdır)
MicroSD kart-8 GB+ və qabiliyyəti o
MicroUSB 5V güc adapteri - Bağlantıya microHDMI adapteri və microUSB OTG -dən USB A adapterinə ehtiyacınız olarsa quraşdırma daxildir.
Bluetooth dinamik
M/F və M/M keçid kabelləri
2 Rotary encoder - yuxarıdakı link
Kiçik çörək taxtası
Düymə
LED (isteğe bağlı) - yuxarıdakı LED + düyməsini satın aldı
Qablaşdırma üçün qutu
Addım 1: Quraşdırma (başsız) Raspberry Pi W
Proqramı işləyəcək moruq pi üzərində əməliyyat sistemini qurmalıyıq. Bunların heç biri bu layihəyə xas deyil. Ayıklama üçün, başsız rejimdə də daxil ola biləcəyiniz üçün qurmağı məsləhət görürəm. Bu, WiFi şəbəkəniz üzərindəki pi-yə GUI və ya SSH terminalı vasitəsi ilə daxil olduğunuz deməkdir və hər dəfə istifadə etmək üçün klaviatura, siçan və monitora ehtiyacınız yoxdur. Texnologiyanı daha yaxşı bilirsinizsə, bunu monitor/siçan/klaviatura bağlamadan edə bilərsiniz. Bəzi nümunə təlimatlar burada. Ancaq daha az düzdür və aşağıda onu qurmağın başqa bir yolu var.
İlk dəfə ehtiyacınız olacaq:
- Raspberry Pi W
- MicroSD - SD kart adapteri [SD karta OS yazmaq üçün]
- MicroSD kartı (~ 8 GB+) [OS və proqramımızı saxlamaq üçün]
- MicroUSB gücü (5V)
- MicroUSB -dən USB A -a [siçan/klaviatura üçün]
- Mini HDMI - HDMI adapteri [ekran çıxışı üçün]
- Klaviatura
- Siçan
- Ekran
Əvvəlcə əməliyyat sistemini rPi micro SD kartına yandırmalısınız.
Mən raspian buster istifadə etdim, bunu SD kart oxuyan/yazan bir kompüterə yüklədin və sonra raspian OS -ni SD karta yandırdın. BalenaEtcher bunu etmək üçün asan bir proqramdır
Sonra SD kartı pi yuvasına qoyun, monitoru, klaviaturanı və gücünü qoşun. WiFi şəbəkənizə qoşulmaq və Bluetooth hoparlörünüzü GUI vasitəsi ilə qoşmaq da daxil olmaqla, raspianın sizə təklif etdiyi quraşdırma addımlarına davam edin. Aşağıdakı əmrləri istifadə edərək yeniləmək yaxşı bir təcrübə olardı
sudo apt-get yeniləməsi
sudo apt-get yeniləmə
Başınızı başsız olaraq işarələmək istəsəniz, əvvəlcə pi -nin ip ünvanını tutmalıyıq. Bir terminal vasitəsilə onu
ifconfig
əmr. Daha sonra SSH və VNC -ni interfeys seçimləri üzərində aktivləşdirməlisiniz
sudo raspi-config
Yenidən başladıqdan sonra, SSH və ya VNC üzərindən pi -yə daxil olmağı sınaya bilərsiniz. SSH yalnız bir terminal interfeysidir və bluetooth dinamikini qoşmaq üçün GUI -dən istifadə etmək daha asan ola bilər. Şəbəkənizdəki ayrı bir kompüterdə pi -yə asanlıqla daxil olmaq üçün VNC connect kimi bir proqramdan istifadə edə bilərsiniz. İçərisində SSH üçün macun kimi bir proqramdan istifadə edə bilərsiniz.
Bundan əlavə, VNC bulud hesabını qura bilərsiniz, beləliklə lazım olduqda cihazı şəbəkədən kənarda əldə edə bilərsiniz
Addım 2: Böyük Radio Proqramını Qurun
Bu, moruq pi -nin terminal pəncərəsindən edilə bilər. Əvvəlcə git quraşdırdığınızdan əmin olun
sudo apt-get install qurun
Hansı əməliyyat sistemini quraşdırdığınızdan asılı olaraq, bu paketlər fərqli ola bilər, çünki əlavə paketlər quraşdırmanız lazım ola bilər, sistem sizə belə olub olmadığını söyləyəcək. Əvvəlcə github -dan yüksək səviyyəli radio kodunu yükləməliyik. https://github.com/Bunborn/seniorRadio İdeal olaraq, mənim etdiyim kimi radio stansiyalarını dəyişdirə və asanlıqla dəyişdirə biləcəyiniz üçün öz repo edirik. Əgər belədirsə repo bölün
Ancaq radio json faylınızı başqa bir yerdə yerləşdirmək istəyirsinizsə, mənimki kimi eyni problemdən istifadə edə bilərsiniz
Sonra repo -nu istədiyiniz yerdə klonlayın. Varsayılan kataloq yaxşıdır. Yaşıl klon və ya yükləmə düyməsinə basaraq istədiyiniz github repo üçün URL əldə edin.
Terminal pəncərəsinə qayıdın, git klonu
Ls -dən istifadə edərkən artıqiorRadio adlı əlavə bir kataloq görməlisiniz. Fantastik!
Kodun özünü sənədləşdirməsi nəzərdə tutulur, nəzərdən keçirmək faydalı olardı. Xüsusilə ayıklama məqsədləri üçün və sistemi dəyişdirirsinizsə.
Addım 3: Əlavə Proqramı Qurun
Dövrəyə keçmədən və sınamadan əvvəl bunun üçün VLC və python api də yükləməliyik. VLC quraşdırılmış ola bilər. İlk iki əmr pi -ni yeniləyəcək və son iki əmr VLC və sonra python api quraşdıracaq.
sudo apt-get yeniləməsi
sudo apt-get yeniləmə
sudo snap VLC quraşdırın
sudo apt-get vlc-python quraşdırın
Bundan əlavə, pi -nin GPIO sancaqları ilə əlaqə qurmaq üçün istifadə edəcəyimiz gpiozero da quraşdırın. Əməliyyat sisteminizdən asılı olaraq artıq quraşdırılmış ola bilər.
sudo apt-get gpiozero quraşdırın
Addım 4: Radio Stansiyalarının axınlarını tapın
Sonra ən əyləncəli hissələrdən biri! İstədiyiniz axınları seçmək vaxtıdır.
İnternetStations.json faylımda əsasən xəbərlər və musiqi üçün axın bağlantılarımı görə bilərsiniz. Ancaq orada bir ton ev sahibliyi edən məzmun var. Burada əsas şey birbaşa axın URL ünvanını tapmaqdır. Məsələn, BBC xəbər və musiqi stansiyalarını bu bloqda tapa bilərsiniz. Bu birbaşa axınların heç bir qrafik interfeysi olmayacaq və avtomatik olaraq brauzerinizin media pleyeri vasitəsilə axını oynayacaq. VLC -nin onları oxuya bilməsi üçün ehtiyacımız olan URL -lərdir! İstənilən linki veb brauzerinizdə və ya adi kompüterinizdəki VLC vasitəsi ilə yoxlaya bilərsiniz ki, bu da pi üzərində işləyəcəkdir.
Bu stansiyaları tapmaq üçün, xidmətə ev sahibliyi edirsə, birbaşa onlayn axını axtara bilərsiniz. Tez bir yol da axını oynamaq, brauzerə sağ vurmaq və "elementi yoxlamaq" düyməsini vurmaq ola bilər. Şəbəkə nişanına gedin və axının 'birbaşa' URL'sini göstərməlidir. Bu youtube videosu bunu göstərir. Səhifəni açıq sekmə ilə yeniləmək kömək etməlidir.
Stansiyalarınızı əldə etdikdən sonra, onları sizin radioya yerləşdirmək istəyirsiniz ki,iorRadio python proqramınız onları tuta bilsin. Bunu etmək üçün bir çox variant var, Github, bitbucket və ya hətta sourceforge kimi saytlardan istifadə edə bilərsiniz. Bu siyahını onlayn olaraq yerləşdirməyin əsas məqsədi, onu quran istifadəçinin axın siyahısını uzaqdan onlayn olaraq dəyişdirə bilməsidir.
Python proqramının başlanğıcında url adlı bir dəyişən var, bunu stansiya URL bağlantıları ilə json faylınızın URL'si olaraq dəyişdirin
İnternetStation.json faylımla eyni formatı izləyə bilərsiniz. Githubdan da istifadə etmək istəsəniz,iorRadio deposumdan istifadə edə və öz internetStation.json faylınızı düzəldə və həmin "xam" URL -yə işarə edə bilərsiniz. Dosyaya tıkladığınızda bunu aşağıda Github GUI -də tapa bilərsiniz.
Addım 5: Dövrlər yaradın
İndi dövrəni qurmalıyıq. Bu, avadanlıqlarınızdan asılı olaraq dəyişəcək, amma aşağıda mənim necə qurduğum göstərilir.
Hansı sancaqlar olduğuna dair istinad üçün https://pinout.xyz/. Gpiozero kitabxanasından istifadə etdiyimiz üçün yalnız BCM pin nömrələməsi ilə maraqlanırıq. Diqqət yetirin ki, hamısı eyni dəqiqliyə malik olmadığı üçün onları sınamaq üçün bir neçə əlavə KY040 fırlanan kodlayıcı - kadrlar aldım. Hər birinin "sıçrayan" və ya sadəcə yanlış bir çıxışı olardı, buna görə də əlimdəki ən yaxşısını seçdim. Kodda qeyd edəcəksiniz ki, bu sıçrayışı məhdudlaşdırmaq üçün bəzi addımlar da var.
Düyməni BCM pin 17 və yerə bağladım
1k ohm rezistora LED, sonra BCM pin 27 və yerə
KY040 fırlanan kodlayıcılarımda + 5V -ə, GND -yə toprağa və SW -yə bağlı idi. Bunlar kiçik bir çörək taxtası ilə birləşdirildi
BCM pin 21 -ə qoşulmuş dt pin stansiyası fırlanan kodlayıcı
BCM pin 20 -yə qoşulmuş stansiya fırlanan kodlayıcı clk pin
BCM pin 19 -a qoşulmuş səs səviyyəli fırlanan kodlayıcı dt pin
BCM pin 16 ilə əlaqəli səs səviyyəli fırlanan kodlayıcı clk pin
Bu pinləri dəyişdirsəniz, python proqramındakı nömrəni və işləyiciləri qurduğu yeri yeniləyin
Bunu asanlaşdırmaq üçün mini çörək taxtasından istifadə etdim. İnterfeysi asanlaşdırmaq üçün M/M və M/F keçid tellərindən də istifadə etdim. Daha əvvəl aldığım düymənin/LEDin pinlərinə bəzi tullanan telləri lehimlədim. Lehimləməmək üçün artıq tullanan telləri olan və ya asanlıqla birinə qoşula bilən düymələr və LEDlər əldə edə bilərsiniz.
Addım 6: Test edin
İndi işləyən bir sistemə sahib olmalısan! Gəlin sınayaq. Python proqramı ilə qovluğa gedin, ehtimal ki:
cd böyük radio
python3 böyük radio.py
Hal -hazırda, proqramın başlanğıcında bluetooth dinamikini açmaq üçün vaxt vermək üçün 45 saniyə gecikmə var. Test zamanı ehtiyacınız yoxdursa bu sətiri şərh edə bilərsiniz. Proqram sizə əlavə paketlər quraşdırmanız lazım olduğunu söyləyə bilər, əgər varsa davam edin. Python -un daha yeni bir versiyasını da quraşdıra bilərsiniz.
sudo apt-get install python3.7
Proqram işləsə də bəzi mümkün problemlər:
Heç bir səs eşitmirəm
Dinamikin pi -də dinamikin açıq və seçilmiş olduğundan əmin olun. GUI vasitəsi ilə onu cütləşdirə və sonra səs çıxış cihazınız olaraq seçə bilərsiniz. Bundan əlavə, audio sürücülərinizi yoxlayın. Ümumi bir problem, pulseaudio paketini yenidən yükləməyinizə ehtiyac ola bilər
Səs kəsilir və ya kəsilir
Cihazı WiFi routerinizə yaxınlaşdırmağa çalışın. Əlavə olaraq, bluetooth dinamikinin yaxın olduğuna əmin olun. Səs sürücü problemi də ola bilər
Addım 7: Daimi bir mühitə qoyun
Sonra daimi yaşaması üçün bir qutuya və ya bənzər bir cihaza qoyun. Hata ayıklama üçün daha sonra daxil ola biləcəyiniz birini almağı məsləhət görürəm. Bu kiçik taxta qutunu bir sənətkarlıq mağazasında 2 dollara aldım və təchizat səhifəsinə bağladım. Dostlarımdan biri siqar qutusu tövsiyə etdi.
Daha sonra düymə və fırlanan açarlar üçün öndəki delikləri kəsdim və qutunun arxasında microUSB elektrik kabeli üçün bir delik açdım.
Dağı sınadım və işlədiyinə əmin oldum və səslənirəm!
Nəhayət, düyməni basıb saxlamaq üçün super yapışqan istifadə etdim. Çörək taxtamın altındakı qutunun bir hissəsinə bağladığım bir yapışdırıcı var idi. Pi'nin arxasını qutuya bağlamaq üçün kiçik bir bant zolağı istifadə etdim, buna görə lazım olduqda daha sonra köçürülə bilər.
Addım 8: Başlanğıcda Çalışacaq Proqramı Qurun
Nəhayət, bu python proqramının moruq pi -nin başlanğıcında işləməsini istəyəcəksiniz, buna görə əllə etməyinizə ehtiyac yoxdur. İnternetdə tapa biləcəyiniz bir çox yol var.
Şəxsən mən bu SparkFun təlimatında ikinci yolu istifadə edərək qurdum:
Burada proqramı işə salmadan əvvəl sistemin qrafik masaüstünə girməsini gözləyir. Daha sonra, sistemin bluetooth dinamikinə yenidən bağlanması üçün vaxt vermək üçün python proqramı tərəfindən 45 saniyə gecikdirilir. İnteqrasiya edilmiş dinamikdən istifadə edirsinizsə, bu gecikməni aradan qaldıra bilərsiniz. Unutmayın ki, bluetooth dinamik ilk növbədə olmalıdır! (bluetooth həlli üçün)
İndi pi-ni söndürməyə və yenidən işə salmağa cəhd edə bilərsiniz! Təxminən 90 saniyədən sonra pi bir daha radio axınlarını çalmağa başlamalıdır. Düyməni vurduqda fasilə/çalma olacaq. Bu yenidən başlatmalarda internetStations json faylını yenidən oxuduğunu unutmayın, buna görə stansiyalarınızı dəyişdirsəniz, işləmələri üçün cihazı yenidən başlatmalısınız. Təbrik edirik!
Bunu siz və ya layihədə dəyişikliklər etmisinizsə, mənə bildirin!
Github səhifəsi:
Tövsiyə:
Daha böyük və təkmilləşdirilmiş Milad ulduzu Neopixel Attiny85: 3 addım (şəkillərlə)
Daha böyük və təkmilləşdirilmiş Milad Ulduzu Neopixel Attiny85: Keçən il 3D çaplı kiçik bir Milad ulduzu düzəltdim, baxın https://www.instructables.com/id/Christmas-Star-LE… Bu il ipdən daha böyük bir ulduz düzəltdim. 50 Neopiksel (5V WS2811). Bu böyük ulduzun daha çox naxışı vardı (hələ də əlavə edirəm və təkmilləşdirirəm
Akkor Lampalarda Böyük VU Ölçer 220 Volt .: 18 Addım (Şəkillərlə birlikdə)
Akkor Lampalarda Böyük VU Ölçer 220 Volt .: Günaydın, əziz izləyicilər və oxucular. Bu gün sizə 220 voltluq közərmə lampalarındakı səs səviyyəsi göstəricisi haqqında məlumat verəcəyəm
LoRa Əsaslı Uzaqdan Nəzarətçi - Böyük Məsafələrdən Alətlərə Nəzarət: 8 Addım
LoRa Əsaslı Uzaqdan Nəzarətçi | Cihazları böyük məsafələrdən idarə edin: Hey, nə var, uşaqlar! Akarsh burada CETech-dən. Bu layihədə LEDlər, mühərriklər kimi müxtəlif alətləri idarə etmək üçün istifadə edilə bilən və ya gündəlik həyatımızdan danışsaq ev tətbiqetməmizi idarə edə biləcəyimiz bir uzaqdan idarəetmə cihazı yaradacağıq
Böyük faylları kompüterdən kompüterə necə göndərmək olar: 6 addım
Böyük Faylları Kompüterdən Kompüterə Necə Göndərmək olar: Texnologiya inkişaf etdikcə fayl ölçüləri artmağa davam edir. Dizayn və ya modelləşdirmə və ya sadəcə bir hobbi kimi yaradıcı bir sənətlə məşğulsanız, böyük faylları köçürmək çətin ola bilər. Əksər e -poçt xidmətləri maksimum əlavə ölçüsünü təxminən 25 ilə məhdudlaşdırır
Ən Böyük Tutuşlar: Ən Böyük Tutma Musiqisini Çalmaq Üçün Köhnə Telefonu Hack etdim.: 13 Addım (Şəkillərlə)
Greatest Holdies: Ən Yaxşı Hold Musiqisini Çalmaq Üçün Köhnə Bir Telefonu Hack etdim. Hazır olan "masa" nın bu ən sadə hack ilə edə biləcəyiniz saysız -hesabsız digər maraqlı layihələr var. telefonlar