Sadržaj:
- Supplies
- Korak 1: Postavljanje (bez glave) Raspberry Pi W
- Korak 2: Instalirajte stariji radio softver
- Korak 3: Instalirajte dodatni softver
- Korak 4: Pronađite prijenose radio stanica
- Korak 5: Kreirajte krugove
- Korak 6: Isprobajte
- Korak 7: Stavite u trajno kućište
- Korak 8: Postavljanje programa za pokretanje pri pokretanju
Video: Stariji radio - Raspberry Pi: 8 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
Projekt Senior Radio je otvoreni izvorni pristup dizajniranom internetskom radijskom uređaju sa hardverskim i softverskim komponentama. Namijenjen je za korisnike koji poznaju upravljanje džepnim radijem gdje brojčanici kontroliraju glasnoću i odabranu radio stanicu. Projekt je napravljen sa korisnički usmjerenim dizajnom, fokusiranim na korisnika koji želi sličnu veličinu i kontrole kao standardni ručni radio.
Izgrađen je kako bi zadovoljio potrebe omogućavanja osobama sa oštećenjima da slušaju hiljade različitih internetskih sadržaja koji su obično obično dostupni samo putem internetskog preglednika. Mnogi ljudi nemaju mogućnost lakog korištenja takvog uređaja, pa ovaj dizajn ima za cilj napraviti poznato sučelje za modernu tehnologiju.
Osnovna funkcionalnost je na Githubu, pohranjena u python 3.7.3 programu koji se zove seniorRadio.py. On čita i piše json datoteku za spremanje stanja radija, pa će je, kad je isključite, zapamtiti trenutni nivo zvuka i odabranu stanicu. Osim toga, čita json datoteku na mreži koju možete promijeniti! Ovo vam omogućava daljinsko ažuriranje radio stanica ako ovo dajete nekome drugom.
Trenutno je kreiran za povezivanje s bluetooth zvučnikom, ali se lako može napraviti i za reprodukciju putem ugrađenog zvučnika.
Tvorac ovog uređaja vjerojatno nije korisnik i potrebno mu je barem malo iskustva s elektronikom i osnovno znanje programiranja. Linux iskustvo je takođe vrlo korisno.
Korisniku je funkcija jednostavna:
Kada se uključi, reproducirat će zadnju stanicu odabranu preko zadanog audio uređaja. Lijevi brojčanik kontrolira stanicu, gdje se nekoliko klikova birača mijenja u novi URL. Premjestit će se nakon posljednjeg ili prvog unosa. Desni točkić kontroliše nivo zvuka. LED indikator označava da je program uključen. Taster pauzira ili "isključuje" radio. Dakle, nakon uključivanja, korisnik može samo pritisnuti dugme za pauziranje/reprodukciju ili "isključivanje/uključivanje", radija i dva točkića za upravljanje.
Supplies
Na svakoj stavci je povezana ona koju sam koristio. Koštalo me ukupno oko 60 USD sa dosta preostalih zaliha!
Osnovno znanje o elektronici i linux -u - za montažu i otklanjanje grešaka
Raspberry Pi Zero W (Zero WH ima zaglavlja prethodno lemljena i vjerovatno korisna)
MicroSD kartica-8 GB+ i mogućnost o
MicroUSB 5V adapter za napajanje - veza također uključuje microHDMI adapter i microUSB OTG na USB adapter za postavljanje ako vam trebaju
Bluetooth zvučnik
M/Ž i M/M kratkospojni kablovi
2 Rotacijski koder - ista veza kao gore
Mala ploča
Taster
LED (opcionalno) - kupljeno LED + dugme iznad
Kutija za pakovanje
Korak 1: Postavljanje (bez glave) Raspberry Pi W
Moramo postaviti operativni sistem na maline pi koji će pokretati softver. Ništa od ovoga nije jedinstveno za ovaj projekat. Za otklanjanje pogrešaka, preporučio bih da ga postavite tako da mu možete pristupiti i u načinu rada bez glave. To znači da pi pristupate putem svoje WiFi mreže putem GUI-ja ili SSH terminala i ne trebaju vam tipkovnica, miš i monitor da biste ga koristili svaki put. To možete učiniti bez potrebe za povezivanjem na monitor/miš/tastaturu ako ste više upućeni u tehnologiju. Evo nekoliko primjera uputstava ovdje. Međutim, to je manje jednostavno, a dolje je još jedan način da ga postavite.
Prvi put će vam vjerovatno trebati:
- Raspberry Pi W
- Adapter za microSD na SD karticu [za pisanje OS na SD karticu]
- MicroSD kartica (~ 8 GB+) [za pohranu OS -a i našeg programa]
- Napajanje MicroUSB (5V)
- MicroUSB na USB A [za miš/tastaturu]
- Mini HDMI na HDMI adapter [za izlaz na ekranu]
- Keyboard
- Miš
- Monitor
Prvo ćete morati prebaciti operativni sistem na rPi mikro SD karticu.
Koristio sam raspian buster, preuzmete ovo na računar sa čitačem/pisanjem SD kartica, a zatim fleš OS raspian prebacite na SD karticu. BalenaEtcher je jednostavan softver za to
Zatim umetnite SD karticu u pi slot, povežite monitor, tastaturu i napajanje. Prođite kroz korake postavljanja na koje vas Raspian od vas zatraži, uključujući povezivanje na vašu WiFi mrežu i uparivanje vašeg Bluetooth zvučnika putem grafičkog sučelja. Dobra bi praksa bila ažuriranje pomoću sljedećih naredbi
sudo apt-get update
sudo apt-get nadogradnja
Ako želite uključiti označavanje vašeg pi bez glave, morat ćemo prvo uzeti pi -jevu ip adresu. Putem terminala možete ga pronaći putem
ifconfig
komanda. Zatim trebate omogućiti SSH i VNC preko opcija sučelja u
sudo raspi-config
Nakon ponovnog pokretanja, sada možete testirati pristup pi preko SSH ili VNC -a. SSH je samo terminalno sučelje i možda će vam biti lakše koristiti GUI za uparivanje Bluetooth zvučnika. Možete koristiti program poput VNC connect za lak pristup vašem pi na zasebnom računaru na vašoj mreži. U njega možete koristiti program kao što je kit za SSH.
Nadalje, možete postaviti VNC cloud račun tako da možete pristupiti uređaju izvan mreže ako je potrebno
Korak 2: Instalirajte stariji radio softver
To se može učiniti iz terminalnog prozora maline pi. Prvo provjerite imate li instaliran git
sudo apt-get install git
U zavisnosti od toga koji ste operativni sistem instalirali, ovi koraci se mogu razlikovati jer ćete možda morati instalirati dodatne pakete, sistem će vam reći da li je tako. Prvo moramo preuzeti stariji radio kod sa github -a. https://github.com/Bunborn/seniorRadio Idealno bi bilo da napravite vlastiti repo kako biste mogli unositi izmjene i jednostavno mijenjati radio stanice na isti način kao i ja. Forkirajte repo ako je tako
Međutim, možete koristiti isto što i ja bez problema ako želite svoju radio json datoteku smjestiti na drugo mjesto
Zatim klonirajte repo na bilo kojoj lokaciji koju želite. Zadani direktorij je u redu. Dobijte URL za koji github repo želite pritiskom na zeleni klon ili dugme za preuzimanje.
Nazad u prozoru terminala, git clone
Sada biste trebali vidjeti dodatni direktorij pod imenom seniorRadio kada tražite pomoću ls -a. Fantastično!
Kod je zamišljen da se sam dokumentuje, pa bi bilo korisno pregledati ga. Posebno u svrhu otklanjanja grešaka i ako mijenjate sistem.
Korak 3: Instalirajte dodatni softver
Prije nego što pređemo na kolo i testiramo ga, također moramo preuzeti VLC i python api za njega. Možda ste već instalirali VLC. Prve dvije naredbe ažurirat će pi, a posljednje dvije naredbe ispod instalirat će VLC, a zatim i python api
sudo apt-get update
sudo apt-get nadogradnja
sudo snap install VLC
sudo apt-get install vlc-python
Osim toga, instalirajte i gpiozero, koji ćemo koristiti za povezivanje sa pi -jevim GPIO pinovima. Možda ste ga već instalirali, ovisno o operativnom sistemu.
sudo apt-get install gpiozero
Korak 4: Pronađite prijenose radio stanica
Zatim jedan od najzabavnijih dijelova! Vrijeme je da odaberete sve prijenose koje želite.
U mojoj datoteci internetStations.json možete vidjeti moje linkove za prijenos, uglavnom za vijesti i muziku. Ali postoji gomila hostiranog sadržaja. Ključ ovdje je pronaći URL adresu direktnog prijenosa. Na primjer, vijesti i muzičke stanice BBC -a mogu se pronaći ovdje na ovom blogu. Ovi izravni prijenosi neće imati nikakvo grafičko sučelje i automatski će reproducirati prijenos putem vašeg media preglednika preglednika. Ovo su URL -ovi koji su nam potrebni kako bi ih VLC mogao pročitati! Možete brzo testirati bilo koju vezu u pregledniku weba ili putem VLC -a na svom normalnom računaru kako biste bili sigurni da će raditi na pi.
Da biste pronašli ove stanice, možete potražiti izravan prijenos na mreži ako ga usluga hostira. Brzi način može biti i reprodukcija streama, desnim klikom na preglednik i pritiskom na "inspect element". Idite na karticu mreža i ona bi trebala označiti "direktni" URL prijenosa. Ovaj YouTube video to dokazuje. Osvježavanje stranice s otvorenom karticom trebalo bi pomoći.
Nakon što imate svoje stanice, želite ih staviti na mrežu kako bi ih vaš seniorRadio python program mogao preuzeti. Postoji mnogo opcija za to, možete koristiti web lokacije poput Github, bitbucket ili čak sourceforge. Glavna svrha hostiranja ove liste na mreži je da korisnik koji je postavi može daljinski promijeniti listu prijenosa na mreži.
Na početku programa python postoji varijabla koja se zove url, jednostavno promijenite ovo u URL vaše json datoteke s vezama na URL stanice
Možete slijediti isti format kao i moja datoteka InternetStation.json. Ako želite koristiti i github, mogli biste jednostavno forkirati moje seniorRadio spremište i urediti vlastitu datoteku internetStation.json i usmjeriti je na taj "sirovi" URL. To možete pronaći ispod u Github GUI -u nakon što kliknete na datoteku.
Korak 5: Kreirajte krugove
Sada moramo postaviti krug. Ovo će se promijeniti ovisno o vašoj opremi, ali dolje je kako sam ja postavio svoju.
pinout.xyz/ za referencu o tome koji su pinovi koji. Budući da koristimo gpiozero biblioteku, brinemo se samo o BCM numerisanju pinova. Imajte na umu da sam kupio nekoliko dodatnih KY040 rotacijskih davača - brojčanika - da ih isprobam jer nemaju svi istu točnost. Svaki od njih bi imao "odskakanje" ili jednostavno netačan izlaz, pa sam odabrao najbolje od dva koja sam imao. U kodu ćete primijetiti da postoje neki koraci za ograničavanje ovog skakanja.
Spojio sam dugme na BCM pin 17 i masu
Moja LED dioda na otpornik od 1 k ohma, zatim BCM pin 27 i uzemljenje
Moji rotacijski davači KY040 imali su + vod na 5V, GND na masu i SW isključeni. Oni su povezani preko mini ploče
Dt pin rotacijskog davača stanice priključen na BCM pin 21
Clk pin stacionarnog rotacijskog davača spojen na BCM pin 20
Rotirajući koder dt pin audio nivoa spojen na BCM pin 19
Clk pin rotacijskog davača razine zvuka spojen na BCM pin 16
Ako promijenite ove pinove, samo ažurirajte broj u programu python gdje on postavlja rukovatelje
Koristio sam mini ploču kako bih ovo olakšao. Koristio sam i M/M i M/F kratkospojnike kako bih olakšao sučelje. Zalemio sam neke žice kratkospojnika na pinove dugmeta/LED -a koji sam ranije kupio. Da ne lemite, mogli biste nabaviti gumbe i LED diode koji već imaju kratkospojnike ili bi se na njih lako spojili.
Korak 6: Isprobajte
Sada biste trebali imati funkcionalan sistem! Hajde da ga testiramo. Idite do mape s programom python, vjerovatno:
cd seniorRadio
python3 seniorRadio.py
Trenutno postoji kašnjenje od 45 sekundi na početku programa kako bi mu se dalo vremena da pronađe Bluetooth zvučnik pri uključivanju. Možete komentirati ovu liniju ako vam ne treba tokom testiranja. Program vam može reći da trebate instalirati dodatne pakete, ako je tako, nastavite. Možda će biti potrebno i instaliranje novije verzije Pythona.
sudo apt-get install python3.7
Neki mogući problemi čak i ako program radi:
Ne čujem zvuk
Provjerite je li zvučnik uključen i izabran u vašem maline pi. Putem grafičkog sučelja trebali biste ga moći upariti, a zatim odabrati kao audio izlazni uređaj. Nadalje, provjerite audio upravljačke programe. Uobičajen problem je da ćete možda morati ponovo instalirati paket pulseaudio
Zvuk je isprekidan ili se uključuje i isključuje
Pokušajte približiti uređaj svom WiFi usmjerivaču. Osim toga, provjerite je li Bluetooth zvučnik u blizini. Može biti i problem sa audio upravljačkim programom
Korak 7: Stavite u trajno kućište
Zatim ga stavite u kutiju ili sličan uređaj na kojem će trajno živjeti. Preporučujem da imate neki kojem ćete kasnije moći pristupiti radi otklanjanja grešaka. Ovu malu drvenu kutiju nabavio sam u zanatskoj radnji za 2 USD i povezao sam je na stranici sa zalihama. Jedan od mojih prijatelja mi je preporučio kutiju cigara.
Zatim sam izrezao rupe na prednjoj strani za gumb i okretne prekidače te izbušio rupu na stražnjoj strani kutije za kabel za napajanje microUSB.
Testirao sam nosač i uvjerio se da radi, i eto!
Konačno, upotrijebio sam super ljepilo za držanje gumba. Moja ploča je na dnu imala ljepilo koje sam povezala s dijelom kutije. Koristio sam malu traku ljepljive trake da pričvrstim stražnju stranu pi za kutiju, tako da se kasnije mogla pomaknuti ako je potrebno.
Korak 8: Postavljanje programa za pokretanje pri pokretanju
Konačno, vjerojatno ćete htjeti da se ovaj python program pokrene pri pokretanju maline pi, tako da to ne morate raditi ručno. Postoji mnogo načina za to koje možete pronaći na internetu.
Osobno, postavio sam ga na drugi način u ovom SparkFun vodiču:
Ovdje se čeka da sistem uđe na grafičku radnu površinu prije pokretanja programa. Python program ga zatim odlaže na 45 sekundi kako bi sistemu dao vremena za ponovno povezivanje sa bluetooth zvučnikom. Ako koristite integrirani zvučnik, ovo kašnjenje možete ukloniti. Imajte na umu da bi Bluetooth zvučnik trebao biti uključen prvi! (za bluetooth rješenje)
Sada možete pokušati isključiti i ponovo uključiti svoj pi! Nakon otprilike 90 sekundi vaš pi bi trebao ponovo početi reproducirati radijske prijenose. Kada pritisnete dugme, pauziraće se/reprodukovati. Imajte na umu da se pri ponovnom pokretanju ponovo čita ta internetStation json datoteka, pa ako promijenite svoje stanice morate ponovo pokrenuti uređaj kako bi radili. Čestitamo!
Javite mi ako ste ovo napravili ili izvršili izmjene na projektu!
Github stranica:
Preporučuje se:
Kako popraviti svoj mrtvi laptop stariji od dvije godine: 8 koraka
Kako popravljam svoj mrtvi laptop stariji od dvije godine: Napomena ** Molimo glasajte ako cijenite ovaj projekt, hvala Hvala Glup sam ovaj gateway NE522 laptop u mojoj ladici otprilike dvije godine vjerovatno zato što sam morao koristiti drugi, pa kad sam vidio ovo takmičenje Znam da je vrijedno popraviti ga i podijeliti sve popravke
Ham Radio radio pojasevi 2 metra/ 70 cm Microstrip PCB: 9 koraka
Ham Radio opsezi 2 metra/ 70 cm Microstrip PCB: Zdravo, ovdje Andy G0SFJI nigdje u literaturi nisam mogao pronaći nikakve planove za mikrotrakaste antenske ploče za opsege od 70 cm i 2 metra. Čini se da su svi za RFID uređaje ili 2,4 Ghz ili više. Pa sam krenuo u razvoj mikrotrakastog tiskanog bo
FM radio sa RDS (Radio Text), BT kontrolom i bazom za punjenje: 5 koraka
FM radio sa RDS -om (Radio Text), BT kontrola i baza za punjenje: Bonjour, Ovo je moja druga "instrukcija". Kako volim raditi ne baš korisne stvari, evo mog posljednjeg projekta: Ovo je FM radio sa radio tekstom sa bazu za punjenje i koja se može pratiti putem Bluetootha i Android aplikacije. Stoga ću
Jeftina šunka - pretvorite radio s rukom u mobilni radio: 6 koraka
Jeftina šunka - pretvorite radio u ruci u mobilni radio: Mobilni radio sa niskim budžetom? Da, to se može učiniti s malo kreativnosti. Tamo je mnoštvo jeftinih kineskih ručnih radija. Ovi jeftini novi radio uređaji zauzvrat su snizili cijene kvalitetne polovne opreme za šunku. Još jedna stvar koja dodaje
Nadogradite stariji švicarski vojni nož Memory Stick na 2 GB: 11 koraka
Nadogradite stariji švicarski nož Memory Stick Memory Stick na 2 GB: U ovom uputstvu pokazat ću korake potrebne za uklanjanje postojeće USB flash memorijske ploče s Victorinox Securelock "švicarskog noža" Memory Sticka i zamijeniti je USB memorijskom karticom većeg kapaciteta (Ovdje koristim Lexar 2GB Firefly koji