Indholdsfortegnelse:
- Forbrugsvarer
- Trin 1: Oversigt
- Trin 2: Radioen
- Trin 3: Picaxe
- Trin 4: Hindbær Pi
- Trin 5: Sæt det hele sammen
Video: Raspberry Pi-drevet internetradio: 5 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:25
Der er noget tilfredsstillende ved at dreje på drejeknapper og trykke på knapper, som dem på gamle radioer. Desværre er mange af disse radioer gået i stykker, eller stationerne er gået stille. Det er heldigvis ikke for svært at opdatere enhver radio til en internetradio ved hjælp af en hindbær pi zero W, og jeg vil vise dig hvordan!
Noget af arbejdet vil afhænge af donorradioen, du har, men jeg forklarer, hvad jeg gjorde med mit for at give dig en ide om, hvordan det foregår.
Da pi'en kører let at følge python -kode, kan du, når radiokontrollerne er tilsluttet, nemt tilføje andre funktioner som en alarm, Bluetooth -højttaler, taleur osv. Ved blot at ændre softwaren over ssh.
Dette projekt blev inspireret af Dansette Pi internetradio, den største forskel er, at her styrer urskiverne radioen ved at dreje dem, ikke som trykknapper.
Forbrugsvarer
- gammel transistorradio
- Hindbær pi zero W
- Picaxe 20X2
- Adafruit 3W mono forstærker - MAX98357 I2S Amp Breakout
- Tønde stik til strømforsyning
- 5V DC strømforsyning, der passer til tønde -stik
- forskellige modstande
- et par 100nF kondensatorer
- stripboard
- 20 -polet IC DIP -stik
- jumperwires og header pins
- små møtrikker og bolte
Trin 1: Oversigt
Ideen er at få hindbær pi tilsluttet internettet via wifi ombord og streame en af en liste over forudkonfigurerede internetradiostationer. De originale radioknapper og skiver (potentiometre) vil blive forbundet til en picaxe-chip, der fungerer som en analog-til-digital-konverter. Pi’en læser kontinuerligt kontrollerne fra picaxen og reagerer i overensstemmelse hermed og ændrer enten lydstyrken eller stationen. Når stationen ændres, taler radioen navnet på den nye station. Endelig ledes den streamede lyd til en monoforstærker, der er forbundet til den originale radiohøjttaler.
Det gode ved at bruge en hindbær pi er, at når kredsløbet er oprettet, kan radioens funktioner let ændres ved blot at ændre et par linjer kode på pi'en gennem ssh. For eksempel kan du nemt oprette forbindelse til en bluetooth -højttaler eller lave et vækkeur:)
Trin 2: Radioen
Den vigtigste del er donorradioen. Det behøver ikke at fungere, men det skal have en fungerende højttaler (medmindre du vil installere en ny).
Min radio har 4 skiver og 7 trykknapper. To af skiverne bruges til at ændre lydstyrken og stationen. De to andre skiver og knapperne gør intet, men jeg forbinder dem alligevel, hvis jeg vil bruge dem senere.
Det første trin er omhyggeligt at adskille radioen og fjerne al den interne elektronik, vi har ikke brug for dem, bortset fra højttaleren.
Skift station På min radio, når du skifter station, bevæger en lille rød markør sig hen over et display for at angive, hvilken frekvens du lytter til. Jeg ville virkelig gerne beholde denne funktion! Stationskifteknappen drejer en variabel kondensator og driver et remskive -system med et stykke snor, der holder den røde markør.
Jeg forsøgte at bygge et kredsløb for at måle kapacitansen for denne variable kondensator, men kapacitansen var så lille, at den enkle metode til timing af opladning/afladning ikke virker. Der er andre metoder, men de virkede komplicerede for mig og ikke umagen værd …
Så hvad jeg gjorde her, var at fil en aksel flad, der pegede ud af bunden af den variable kondensator, så denne aksel kunne passe ind i rillen på et moderne potentiometer. Heldigvis kunne dette potentiometer monteres i den originale batterikasse ved at bore et hul i det. Efter alt det driver den variable kondensator nu direkte et potentiometer, som jeg bruger til at indstille stationen på min digitale radio.
Trykknapper
Der var et kompliceret printkort, der husede infrastrukturen til trykknapperne. Efter at have fjernet de komponenter og ledninger, der blev loddet på, fandt jeg ud af, hvilke forbindelser der laves/brydes, når der trykkes på eller slippes på en knap. Nogle af knapperne var forbundet til hinanden, så jeg måtte bryde et par kobberspor i kredsløbskortet. Til sidst lod jeg på nogle ledninger, der gik til picaxen for at give 6 trykknapper, der arbejder isoleret.
Find også et hyggeligt sted for pi og picaxe at sidde, ideelt så langt væk fra højttaleren som muligt, da magnetfeltet fra højttaleren kan ødelægge mikroprocessorer. Jeg borede et par huller i radioens metalramme for at montere pi’et.
Trin 3: Picaxe
Picaxe -kredsløbet er ovenfor, med kun to af potentiometrene og en knap vist for klarhed. Kredsløbet er ret enkelt, med viskeren af hvert potentiometer forbundet til en ADC -indgang. For knapperne er inputpinden bundet til jorden, og knappen er mellem input og +3,3V. Dette kredsløb inkluderer ikke downloadkredsløbet, fordi jeg programmerede min picaxe på et separat bord.
Picaxe -koden er ret enkel. Picaxen læser i potentiometrenes ADC -værdier og knappernes tilstande og gemmer dem derefter i den interne hukommelse, som pi'en vil læse.
Du kan bruge enhver X2 picaxe -chip. Ikke X2 -dele har ikke I2C -slave -tilstand, og derfor fungerer de ikke med disse instruktioner.
Hvis du bruger en linux -computer til at programmere picaxe, skal du køre følgende kommandoer for at få AXE027 -downloadkablet til at fungere:
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
Hvis potentiometerværdierne springer uregelmæssigt, kan der placeres en 100nF kondensator mellem potten og jorden.
Trin 4: Hindbær Pi
Her kommer hjernen i operationen. Nogle pakker skal installeres på pi med
sudo apt-get opdatering
sudo apt-get install -y i2c-tools vlc espeak python-smbus python-pip sudo pip install python-vlc
Pi vil tale med picaxen gennem I2C. For at aktivere I2C skal du kontrollere, at filen /etc /modules indeholder linjen
i2c-dev
og at /boot/config.txt har
dtparam = i2c_arm = tændt
Hvis du vil konfigurere pi'et til at arbejde med forstærkeren, skal du følge Adafruits egen guide her eller bare køre
curl -sS https://raw.githubusercontent.com/adafruit/Raspbe…> | bash
og acceptere alt.
Python -koden er ganske enkel, efter nogle indledende opsætninger en uendelig, mens loop lytter efter ændringer i potentiometerværdierne, og hvis der er trykket på knapperne.
n
Filen stations.txt indeholder en liste over stationswebadresser og stationsnavne, der vil blive talt, når stationen ændres. Det har følgende format
st1 = https:// someradiostream
n1 = noget radio st2 = https:// anotherstream n2 = en anden station
Denne fil må ikke indeholde tomme linjer.
For at finde stationens URL'er bruger jeg www.fmstream.org.
Hvis du har tænkt dig at slukke for radioen ved blot at trække i strømmen, er det en god idé at indstille pi'en til skrivebeskyttet for at forhindre korruption af SD-kort. Scriptet read_only_setup.sh gør det for dig og giver mulighed for at skifte mellem skrivebeskyttet og skrive-skrive ved at skrive "ro" og "rw" i en terminal.
Trin 5: Sæt det hele sammen
Ved hjælp af stripboard lavede jeg en lille hat til picaxen og forstærkeren til at sidde oven på pi’et.
Til strømforsyning fjernede jeg en af radioens gamle stik og installerede et nyt DC -tønde -stik, som jeg lodde et mikro -USB -kabel til. Sørg for at kontrollere ledningernes polaritet omhyggeligt!
Tilslut endelig alt, prøv at gøre et bedre stykke arbejde med at dirigere de ledninger, jeg gjorde, luk låget og nyd din radio!
Anbefalede:
BOSEBerry Pi internetradio: 4 trin (med billeder)
BOSEBerry Pi internetradio: Jeg elsker at lytte til radio! Jeg brugte en DAB -radio i mit hus, men fandt, at modtagelsen var lidt ujævn, og lyden blev ved med at bryde op, så jeg besluttede at bygge min egen internetradio. Jeg har et stærkt wifi -signal omkring mit hus og den digitale bro
1964 Dansette Pi internetradio: 6 trin (med billeder)
1964 Dansette Pi internetradio: Denne stilfulde bærbare radio fra midten af 1960'erne spiller nu det 21. århundredes fineste internetradiostationer takket være en kærlig opgradering. Alle de originale kontroller er blevet genbrugt, og du ville aldrig vide, at det er en konvertering - før du tænder det
Roberts RM33 Raspberry Pi internetradio (endnu en ): 8 trin (med billeder)
Roberts RM33 Raspberry Pi internetradio (endnu en …): Ja, det er en anden Raspberry Pi internetradiobygning og heller ikke min første. Jeg er ikke sikker på, hvorfor denne build stadig er så populær, men jeg nyder den stadig og kan ikke sige, at denne også bliver min sidste. Jeg elsker virkelig udseendet af Robert
Internetradio ved hjælp af en ESP32: 7 trin (med billeder)
Internetradio Brug af en ESP32: Kære venner velkommen til en anden instruerbar! I dag skal vi bygge en internetradioenhed med et stort 3,5”display ved hjælp af et billigt ESP32 -kort. Tro det eller ej, vi kan nu bygge en internetradio på mindre end 10 minutter og med mindre
1979 Bang & Olufsen Raspberry Pi internetradio: 10 trin (med billeder)
1979 Bang & Olufsen Raspberry Pi internetradio: Dette er en 1979 Bang & Olufsen Beocord 1500 kassettebåndoptager, som jeg har konverteret til en selvstændig Raspberry Pi internetradio. De analoge VU -målere drives af Pi via et DAC (Digital til Analog Converter) kredsløb, med den aktuelle tid