Kazalo:

Internetni radio, ki poganja Raspberry Pi: 5 korakov (s slikami)
Internetni radio, ki poganja Raspberry Pi: 5 korakov (s slikami)

Video: Internetni radio, ki poganja Raspberry Pi: 5 korakov (s slikami)

Video: Internetni radio, ki poganja Raspberry Pi: 5 korakov (s slikami)
Video: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, November
Anonim
Image
Image
Internetni radio z napajanjem Raspberry Pi
Internetni radio z napajanjem Raspberry Pi
Internetni radio z napajanjem Raspberry Pi
Internetni radio z napajanjem Raspberry Pi

V obračanju številčnic in pritisku na gumbe je nekaj zadovoljnega, na primer pri starih radijskih aparatih. Na žalost je veliko teh radijskih postaj pokvarjenih ali pa so postaje utihnile. Na srečo ni težko posodobiti katerega koli radia v internetni radio z uporabo maline pi nič W, in pokazal vam bom, kako!

Nekatera dela bodo odvisna od donatorskega radia, ki ga imate, vendar bom razložil, kaj sem naredil z mojim, da bi vam predstavil, kako to poteka.

Ker je pi enostavno slediti kodi python, lahko po priključitvi radijskih kontrolnikov preprosto dodate druge funkcije, kot so alarm, zvočnik bluetooth, govorna ura itd., Tako da preprosto spremenite programsko opremo prek ssh.

Ta projekt je navdihnil internetni radio Dansette Pi, glavna razlika pa je v tem, da tukaj številčnice upravljajo radio z obračanjem, ne pa kot gumbi.

Zaloge

  • star tranzistorski radio
  • Malina pi nič W
  • Picaxe 20X2
  • Adafruit 3W mono ojačevalnik - MAX98357 I2S Amp Breakout
  • Cevni priključek za napajanje
  • 5V DC napajalnik za namestitev cevnega priključka
  • različni upori
  • nekaj 100nF kondenzatorjev
  • stripboard
  • 20 -polna IC DIP vtičnica
  • mostične žice in zatiči glave
  • majhne matice in vijaki

1. korak: Pregled

Zamisel je, da bi bil malinov pi povezan z internetom prek vgrajenega WiFi-ja in pretakal eno od seznamov vnaprej konfiguriranih internetnih radijskih postaj. Prvotni izbirni gumbi in številčnice (potenciometri) bodo povezani s čipom picaxe, ki služi kot analogno-digitalni pretvornik. Pi neprestano bere kontrolnike s picaxeja in se ustrezno odziva ter spremeni glasnost ali postajo. Ko spremenite postajo, bo radio spregovoril ime nove postaje. Končno se pretočni zvok prenaša v mono ojačevalnik, ki je priključen na izvirni radijski zvočnik.

Odlična stvar pri uporabi maline pi je, da je po nastavitvi vezja mogoče funkcije radia preprosto spremeniti le s spremembo nekaj vrstic kode na pi skozi ssh. Na primer, preprosto se lahko povežete z zvočnikom Bluetooth ali naredite budilko:)

2. korak: Radio

Radio
Radio
Radio
Radio
Radio
Radio

Najpomembnejši del je donatorski radio. Ni nujno, da deluje, vendar mora imeti delujoč zvočnik (razen če želite namestiti novega).

Moj radio ima 4 številčnice in 7 gumbov. Dva gumba bosta uporabljena za spreminjanje glasnosti in postaje. Drugi dve številčnici in gumbi ne bodo naredili ničesar, vendar jih bom vseeno povezal, če jih želim uporabiti pozneje.

Prvi korak je, da radio skrbno razstavite in odstranite vso notranjo elektroniko, ki je razen zvočnika ne bomo potrebovali.

Spreminjanje postaj Na mojem radiu se pri menjavi postaj po zaslonu pomakne rdeča oznaka, ki označuje, katero frekvenco poslušate. Resnično sem želel ohraniti to funkcijo! Gumb za menjavo postaje obrača spremenljiv kondenzator in deluje s sistemom jermenic z vrvico, ki drži rdeči marker.

Poskušal sem zgraditi vezje za merjenje kapacitivnosti tega spremenljivega kondenzatorja, vendar je bila kapacitivnost tako majhna, da preprosta metoda merjenja polnjenja/praznjenja ne deluje. Obstajajo še druge metode, vendar so se mi zdele zapletene in niso vredne truda …

Torej sem tukaj naredil plosko gred, ki je kazala na dno spremenljivega kondenzatorja, tako da se ta gred lahko prilega utoru sodobnega potenciometra. Na srečo bi lahko ta potenciometer namestili v originalno škatlo za baterije tako, da bi vanj izvrtali luknjo. Po vsem tem spremenljivi kondenzator zdaj neposredno deluje s potenciometrom, s katerim nastavim postajo na svojem digitalnem radiu.

Potisni gumbi

Obstajalo je zapleteno vezje, v katerem je bila infrastruktura za gumbe. Po odstranitvi komponent in žic, ki so bile spajkane, sem ugotovil, katere povezave so narejene/prekinjene, ko pritisnete ali spustite gumb. Nekateri gumbi so bili med seboj povezani, zato sem moral na vezju prekiniti nekaj bakrenih sledi. Nazadnje sem spajkal na nekaj žic, ki bodo šle do picaxeja, da bi 6 gumbov delovalo ločeno.

Poiščite tudi prijetno mesto za sedenje pi in pikaxe, idealno čim dlje od zvočnika, saj lahko magnetno polje iz zvočnika pokvari mikroprocesorje. V kovinskem okvirju radia sem izvrtal nekaj lukenj za namestitev pi.

3. korak: Picaxe

Picaxe
Picaxe
Picaxe
Picaxe
Picaxe
Picaxe

Picaxe vezje je zgoraj, za jasnost pa sta prikazana le dva potenciometra in en gumb. Vezje je dokaj preprosto, brisalci vsakega potenciometra so povezani z vhodom ADC. Za gumbe je vhodni pin pritrjen na tla, gumb pa je med vhodom in +3,3 V. To vezje ne vključuje vezja za prenos, ker sem svoj picaxe programiral na ločeni plošči.

Koda picaxe je precej preprosta. Picaxe prebere vrednosti ADC potenciometrov in stanja gumbov, nato pa jih shrani v notranji pomnilnik, ki ga bo prebral pi.

Uporabite lahko kateri koli čip X2 picaxe. Deli, ki niso X2, nimajo podrejenega načina I2C, zato s temi navodili ne bodo delovali.

Če za programiranje picaxe uporabljate računalnik linux, morate za zagon prenosnega kabla AXE027 zagnati naslednje ukaze:

sudo modprobe ftdi_sio

sudo chmod 777/sys/bus/usb-serial/drivers/ftdi_sio/new_id sudo echo "0403 bd90">/sys/bus/usb-serial/drivers/ftdi_sio/new_id

V primeru, da vrednosti potenciometra neredno skočijo, lahko med zemljo in brisalcem lonca postavite 100 nF kondenzator.

4. korak: Raspberry Pi

Malina Pi
Malina Pi
Malina Pi
Malina Pi

Tu prihajajo možgani operacije. Nekatere pakete bo treba namestiti na pi z

sudo apt-get posodobitev

sudo apt-get install -y i2c-tools vlc espeak python-smbus python-pip sudo pip namestite python-vlc

Pi se bo s pikasom pogovarjal prek I2C. Če želite omogočiti I2C, preverite, ali datoteka /etc /modules vsebuje vrstico

i2c-dev

in da ima /boot/config.txt

dtparam = i2c_arm = vklopljeno

Če želite nastaviti pi za delo z ojačevalnikom, sledite Adafruitovemu lastnemu vodniku tukaj ali pa preprosto zaženite

curl -sS https://raw.githubusercontent.com/adafruit/Raspbe…> | bash

in sprejmi vse.

Koda python je precej preprosta, po nekaj začetnih nastavitvah se nikoli ne konča, medtem ko zanka posluša spremembe vrednosti potenciometra in če so pritisnjeni gumbi.

n

Datoteka station.txt vsebuje seznam URL -jev postaj in imen postaj, ki bodo izgovorjeni, ko spremenite postajo. Ima naslednjo obliko

st1 = https:// someradiostream

n1 = neki radio st2 = https:// anotherstream n2 = druga postaja

Ta datoteka ne sme vsebovati praznih vrstic.

Za iskanje URL -jev postaj uporabljam www.fmstream.org.

Če nameravate izklopiti radio samo tako, da povlečete napajanje, je dobro, da nastavite pi na samo za branje, da preprečite poškodbe kartice SD. Skript read_only_setup.sh to naredi namesto vas in omogoča preklapljanje med samo za branje in branje-pisanje z vnosom "ro" in "rw" v terminal.

5. korak: Združite vse skupaj

Vse skupaj
Vse skupaj
Vse skupaj
Vse skupaj
Vse skupaj
Vse skupaj

Z uporabo stripboard -a sem naredil majhen klobuk za pikaxe in ojačevalnik, ki bi sedel na vrhu pi.

Za oskrbo z električno energijo sem odstranil eno od starih vtičnic radia in namestil novo enosmerno vtičnico, na katero sem spajkal kabel mikro USB. Pazljivo preverite polarnost žic!

Končno povežite vse, poskusite bolje usmeriti žice, ki sem jih naredil jaz, zaprite pokrov in uživajte v radiu!

Priporočena: