Sadržaj:
- Korak 1: Popis radijskih dijelova vremenskih strojeva WW2
- Korak 2: Pronalaženje starog radija
- Korak 3: Uklanjanje starog radija i izrada nove šasije
- Korak 4: Obnavljanje kućišta
- Korak 5: Raspberry Pi nula i pojačalo
- Korak 6: Izrada novog brojčanika
- Korak 7: Kontrole glasnoće i odabira
- Korak 8: Napajanje i kontrola
- Korak 9: Opremanje kućišta
- Korak 10: Preuzimanje zvučnih datoteka
- Korak 11: Krug i softver za reprodukciju datoteka
- Korak 12: Automatski pokrenite softver pri učitavanju
- Korak 13: Što je sljedeće?
Video: WW2 Radio Broadcast Time Machine: 13 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
Ideja iza ovoga bila je iskoristiti neke dijelove koje sam ležao i izgraditi audio džuboks izrađen u starom radiju. Kako bih pružio dodatnu svrhu iza toga, odlučio sam ga napuniti starim radijskim emisijama iz Drugoga svjetskog rata, a zatim prenamijeniti frekvencijski brojčanik za odabir pojedinačne godine rata i tada će se reproducirati relevantni programi. Vidio sam nekoliko zbirki MP3 zapisa pa je sve spremno.
Što se tiče hardvera, moj favorit je ili arduino ili malina pi nula, a za to ću koristiti malinu pi nulu. Međutim, on ima svoje nedostatke, au ovom slučaju to je nedostatak zvuka koji se jednostavno koristi i nema lakih analognih ulaza. Kako bih to prevladao, koristim Adafruit I2S 3W pojačalo pojačala klase D - MAX98357A koji je zaista jednostavan način dodavanja zvuka u Pi, a za analogni ulaz MCP 3002 koji je dvokanalni u SPI pretvarač. Općenito, ljudi obično koriste MCP 3008 koji ima 4 ulaza, ali mislio sam da će to biti previše jednostavno, na sreću uspio sam pronaći neki softver koji je s njima radio.
Jedan od drugih problema s korištenjem PI -a je taj što može patiti ako ga samo isključite bez isključivanja, na to sam nailazio bezbroj puta i čini se da uvijek oštećuje datoteku konfiguracije mreže. S obzirom da je to zamišljeno kao jednostavno samostalno što bi predstavljalo problem, pa sam dodao i Pimoroni On/Off Shim koji izvodi i graciozno isključivanje pritiskom na gumb, ali i omogućuje pokretanje s istim gumbom.
Korak 1: Popis radijskih dijelova vremenskih strojeva WW2
Potrebni dijelovi
- Stari radio
- Francuski poljski
- Šmirgl papir
- Lexan za biranje
- Hladnjak
- Malina Pi Zero
- I2S pojačalo
- ON/OFF Shim
- Zvučnik
- Snaga opeke
- MCP3002
- LED
- Otpornik 270R
- 2x 10k lonaca
- Pritisnite za uključivanje
- USB kabel
Korak 2: Pronalaženje starog radija
Naravno, prvi korak je pronaći odgovarajući stari radio, a ovaj sam uspio pronaći na ebayu za 15 funti. U početku je došlo u iskušenje da se pokrene, ali kad je kućište izašlo i kada je bio prikazan cijeli niz otpornika i kondenzatora koje je trebalo zamijeniti, nisam se osjećao tako loše što sam ga rastavio. Iako strogo nije komplet iz 1940 -ih, postoje neki kompleti za kućnu izgradnju iz tog doba koji su zasigurno izgledali slično.
Korak 3: Uklanjanje starog radija i izrada nove šasije
Jednostavno je rastaviti jedan od njih, općenito se čini da je šasija montirana na kućište i da je na nju sve montirano. Dakle, jednom kad se odvrne i gumbi se otpuste, samo klizi van. Većina je u potpunosti izgrađena na podvozju. Moja je prvotna namjera bila upotrijebiti zvučnik iz poderane Bluetooth kutije zvučnika, ali sam se pitao hoće li stari raditi. Bilo je ugodno iznenađenje kad smo otkrili da ne samo da je to uspjelo, već je i zvučalo zaista sjajno. Dakle, sljedeći korak ovdje bio je nastaviti mjeriti sve i izgraditi novu šasiju u Tinkercadu. Ponovno sam definirao područje frekvencijskog biranja i držao zvučnik na istom mjestu. Dodatno je dodana montažna ploča za pi nulu. Ispisao sam ga u PETG -u za koji smatram da je manje otporan na iskrivljenje i činilo se da je probno uklapanje svih dijelova pokazalo da će funkcionirati. Morao sam se malo poigrati s jačinom zvuka kako bi se novi lonci lijepo uklopili i još uvijek montirali kroz kućište.
3D šasiju možete preuzeti ovdje ako se želite petljati s njom
www.thingiverse.com/thing:3174818
Korak 4: Obnavljanje kućišta
Sada je prvo što je trebalo učiniti kad je slučaj ogoljen bilo odlučiti što učiniti s završnom obradom. Iako slučaj nije bio tako loš, u početku sam razmišljao o tome da ga očistim kako bi očuvao izgled istrošene patine. Često će brisanje octom osvježiti staru kutiju, ali bilo je nekoliko mjesta na kojima je lak prošao pa sam je odlučio skinuti. Sa starim drvenim kutijama obično su obložene tankim drvenim furnirom, ali nisu toliko tanke da se na njemu ne može dobro brusiti. Prvo je uklonjena tkanina rešetke zvučnika, što je bilo prilično odvratno s oko 50 godina prašine i prljavštine u njoj i stavljeno na jednu stranu. Zatim je na kraju otpalo nekoliko debelih slojeva Nitromorsa, skidač boje i stari lak. To se moralo učiniti dva puta jer je vjerojatno bilo lakirano u nekom trenutku preko izvorne završne obrade. Kako bi se uklonile neke ogrebotine i postigao ljepši izgled, brušen je papirom od 100 komada, a zatim završnim brušenjem srednjom spužvom za brušenje. Učinite sve to u skladu sa zrnom, a zatim obrišite white spiritom kako biste očistili svu prašinu. U isto vrijeme kutija je također učvršćena ljepilom za drvo gdje se furnir malo povukao. Rešetke od drva također su se malo odložile, pa je potrebno više ljepila za drvo i vratiti dijelove gdje je to moguće. Kad se ovo osušilo, samo sam skalpelom očistio rubove drva i obojao ih smeđom bojom neke Tamiya akrilne boje.
Moja prva pomisao bila je samo zamijeniti tkaninu zvučnika, ali cijena materijala autentičnog izgleda prilično je velika jer se obično prodaje u dugim duljinama. Nakon što ste malo istražili starinske radijske forume, čini se kao da možete natopiti staru tkaninu. Tako sam hladnom vodom i puno tekućine za pranje namočila preko noći i iznenađujuće kad se ponovno osušila, postala je prilično čista.
Sad sam se namjeravao pozabaviti završnom obradom i u početku sam joj odlučio dati čist lak, a zatim sam razmišljao o upotrebi laka u spreju i dok sam na otočiću za lakove/boje u lokalnoj trgovini DIY pronašao bocu francuskog laka. Misleći da bi to bio dobar autentičan završetak, odlučio sam pokušati. Dakle, sada morate znati da je francusko poliranje prilično umjetnička forma/vještina koja zahtijeva puno prakse da biste to učinili. Upute možete potražiti na YouTubeu i iako izgleda prilično jednostavno, prilično je neuredna operacija. Čini se da spretnost dobiva poliranje u krpi namočenoj u vatu tako da možete istisnuti lak na drvo dok radite. Ako ga samo isprobate krpom, otprilike 3/4 laka počinje se sušiti dok etanol isparava i krpa se počinje vući. Tako da sam na kraju umjesto da dobijem završni sloj visokog sjaja, uspio nanijeti nekoliko slojeva, lagano obrusiti papirom od 1500, zatim nanijeti još nekoliko i na kraju je izgledalo OK. i dalje imam mrlje od francuskog laka na noktima.
Čišćenje ostalih dijelova bilo je mnogo lakše jer je sav hardver ušao u ultrazvučno sredstvo za čišćenje, a brojčanik je poliran nekim Silvo lakom. Brasso bi imao izbor, ali Silvo i malo više laktova masti bili su dovoljni za čišćenje indikatora brojčanika.
Na kraju ovoga imao sam prilično lijepu drvenu kutiju spremnu za sam vremeplov.
Koraci u ovom odjeljku1. Skinite sve vijke/brojčanike i tkaninu.
2. Drvo ogolite kućište nitromorima
3. Brušenje furnira
4. Ponovno postavljanje rešetke
5. Čišćenje tkanine zvučnika
6. Francusko poliranje kućišta
7. Ultrazvučno čišćenje vijaka i gumba
8. Poliranje pokazivača brojača
Korak 5: Raspberry Pi nula i pojačalo
S normalnim Raspberry PI audio izlazom vrlo je jednostavan jer ima izlaz za audio priključnicu, ali za Pi Zero nema pravih izvornih opcija. Isprobala sam neka rješenja gdje možete preusmjeriti GPIO pinove, a zatim upotrijebiti niskopropusni filtar, ali nikada nisam uspio dobiti nešto što zvuči pristojno, a naravno da vam je potrebno i pojačalo da biste dobili nešto upotrebljivo. Postoji mnogo DAC šešira, ali oni su za ljude koji traže jako dobar zvuk i pretjeruju u ovakvim projektima. Postoje i neki lijepi jeftini audio šeširi s ugrađenim zvučnicima, ali jednostavno nedovoljno glasni za to. Zato sam se sada odlučio na i2S pojačalu pojačala iz Adafruit -a koja rješava sve probleme u jednom potezu. Samo imajte na umu da je to i2S, a ne i2C.
Trebate samo nekoliko žica da biste ovo pokrenuli i s dovoljno pristojnim zvučnikom možete dobiti odličan, glasan mono zvuk.
Korak 6: Izrada novog brojčanika
Ovdje je naravno ideja zamijeniti postojeći brojčanik i staklo s onim koji prikazuje godinu umjesto frekvencije. Na sreću, postojeći je bio samo ispisani umetak pa sam ga spustio na skener i kopirao u Paint Shop Pro, upotrijebio alat za kloniranje i izbrisao stare brojeve, a zatim samo upisao neke nove za svaku godinu. Sa staklom je ono u radiju bilo izgrebano i napuklo, a kako se pokazalo i od plastike. Ispisao sam samo okvir okvira kako bih olakšao testiranje i prvotno sam pokušao napraviti jedan od akrila. Općenito nemam dovoljno strpljenja s akrilom i na kraju sam ga napukao pri pokušaju bušenja središnje rupe. Stoga sam pribjegao polikarbonatu od 1,5 mm koji je tako lakše rezati i bušiti. Možete ga pronaći i pod nazivom Lexan ili Macrolon, ovisno o tome gdje živite, a uzima i datoteku pa sam uskoro imao okvir i brojčanik koji su mu odgovarali. Zanimljivo je i to da je na izvornom papiru bilo lagano metalno naslaga, mogu samo pretpostaviti da je to bio netko na koga je utjecao izvorni mjedeni pokazivač, možda neki proces starenja?
Korak 7: Kontrole glasnoće i odabira
Jedan od nedostataka Raspberry pi za petljanje je to što nema izvorni analogni ulaz. Ne predstavlja preveliki problem ako dodate jednostavan ADC (analogno -digitalni pretvarač), a MPC3002 ovdje odgovara računu i pretvara analogni ulaz u 10 -bitnu vrijednost koja se može očitati na SPI sabirnici.
Gotovo svi primjeri koje pronađete su za MPC3008 koji je 4 -kanalni uređaj i kôd za to sigurno ne radi s MPC3002. Čini se da postoji i mnogo primjera koji također ne funkcioniraju, ali postoji jedan za koji mogu potvrditi da radi i njegov kôd se može pronaći ovdje.
github.com/CaptainStouf/Adafruit-raspi-pyt…
Pomoću ovog koda možete lako pročitati dva kanala i koristiti rezultate. Moj primjer će koristiti jedan za svezak, a drugi za odabir datuma. U jednom sam trenutku također imao instaliran rotacijski davač, ali volumen jednog okreta više odgovara, a s odabirom frekvencije to je značilo i da mogu sve to sastaviti, a zatim samo prilagoditi lokacije oznaka godine s velikom izjavom o velikom slučaju. Naravno, pyhon ne podržava izjavu slučaja tako dugo, ako inače, ako će izjava odraditi posao.
Na slici je MCP3002 koji sjedi na maloj prototipnoj ploči i 10K loncu
Korak 8: Napajanje i kontrola
Pi se upravo napaja putem USB -a tako da je vrlo jednostavan za pokretanje, no na kraju ćete pokvariti SD karticu ako samo izvučete napajanje. Postoji mnogo načina za praćenje pritiska na gumb i pokretanje gašenja, no tada ćete morati ponovo uključiti napajanje da biste ga vratili. Da bih to zaobišao i učinio projekt lakim za korištenje, koristim Pimoroni ON/OFF podmetač. Ovo vam omogućuje da jednom pritisnete i uključi se, a zatim dugim pritiskom i izvršit će čisto isključivanje. Kako bih bio i pomalo prenosiv, koristim staru bateriju napajanja koja se bavi i punjenjem baterije. Powerbankovi su dosta jeftini i sposobni su pokrenuti Pi neko vrijeme.
Gumb za izradu gumba namjestio sam na mjesto gdje je stari kabel za napajanje izlazio straga. Kako dolazi do kašnjenja dok se Pi podiže, ja sam čvrsto spojio LED u 3v3 šinu koja se uključuje i čim PI dobije napajanje i pruža lijep autentičan sjaj na brojčaniku. Stavio sam otpornik 270R u red, a drugi kraj samo uzemljio. Također biste mogli dodati još jedan GPIO pin -u ako želite dati dodatne efekte poput treperenja, ali za sada je to dovoljno da pokaže da je napajanje uključeno.
Korak 9: Opremanje kućišta
S kućištem i šasijom sve spremno i testirano, bilo je potrebno samo nekoliko vijaka od 4 mm i Nyloc matica za držanje. Prirubnički samorezni vijci drže stražnju stranu na mjestu.
Gumb za napajanje također se lijepo uklopio u stari otvor za mrežni vod.
Također sam htio ponovno upotrijebiti stare gumbe, a oni su izvorno dizajnirani tako da izgleda kao da idu na mjedene šipke i bili su malo preveliki za lonce. Kako ovo neće biti grubo rukovanje, samo sam stavio termoskupljanje preko posuda, a zatim zalijepio gumbe na to. Lijepo i čvrsto steže, a ako je potrebno i dalje ga možete rastaviti.
Korak 10: Preuzimanje zvučnih datoteka
Koristim MP3 datoteke i fantastičan je izbor s Archive.org, možete pronaći grupirane prijenose ratnih emitiranja, a postoje uglavnom dva izbora.
Počeo sam s odabirom uglavnom vijesti, koje se zatim kopiraju u direktorije na PI -ju. Veći izbor, nazvan Veliki, možete pronaći i na sljedećoj poveznici. Za svaku godinu postoji nekoliko stotina emitiranja, a nevjerojatna je količina i raspon tih emisija.
archive.org/details/1939RadioNews
archive.org/details/1940RadioNews
archive.org/details/1941RadioNews
archive.org/details/1942RadioNews
archive.org/details/1943RadioNews
archive.org/details/1944RadioNews
archive.org/details/1945RadioNews
Veća zbirka
archive.org/details/WWII_News_1939
archive.org/details/WWII_News_1940
archive.org/details/WWII_News_1941
archive.org/details/WWII_News_1942
archive.org/details/WWII_News_1943
archive.org/details/WWII_News_1944
archive.org/details/WWII_News_1945
Koristim Filezilla kao jednostavan način prijenosa na Pi jer se može prijaviti i prenijeti pomoću SSH -a, tako da nema potrebe za postavljanjem SAMBA pogona ili FTP poslužitelja.
Korak 11: Krug i softver za reprodukciju datoteka
Nakon što pojačalo počne raditi i možete slijediti donju vezu za postavljanje, za to ćete također morati instalirati mpg123 player, prilično ravno google pretraživanje za taj Python kod ispod. Samo provjerite imate li omogućene i2s i SPI u vašoj Raspi konfiguraciji. Ovu sam datoteku stavio u direktorij/home/pi/volume/kako bih je kasnije mogao pokrenuti pri pokretanju.
#!/usr/bin/env python
# WW2 Radio- softver za čitanje MCP3002 ADC-a i pretvaranje u podešavanje glasnoće i godine # Izlaz putem i2S pojačala 20.10.2018- Ajax Jones # Fragmenti koda dostavljeni s https://learn.adafruit.com/adafruit-max98357-i2s- class-d-mono-amp/raspberry-pi-usage # MCP 3002 Python https://github.com/CaptainStouf/Adafruit-raspi-python/blob/master/Adafruit_MCP3002/MCP3002.py uvoz RPi. GPIO kao GPIO, vrijeme, os iz os uvoza listdir podproces uvoza iz vremena uvoz spavanja uvoz slučajni GPIO.setmod (GPIO. BCM) # čita SPI podatke iz čipa MCP3002, 2 moguća ADC -a (0 i 1) def readadc (adcnum, clockpin, mosipin, misopin, cspin): if ((adcnum> 1) ili (adcnum <0)): return -1 GPIO.output (cspin, True) GPIO.output (clockpin, False) # start clock low GPIO.output (cspin, False) # dovesti CS nisko naredbu = adcnum << 1; commandout | = 0x0D # početni bit + jednostruki bit + MSBF bit naredba << = 4 # ovdje moramo poslati samo 4 bita za i u rasponu (4): if (commandout & 0x80): GPIO.output (mosipin, Tačno) inače: GPIO.output (mosipin, False) commandout << = 1 GPIO.output (clockpin, True) GPIO.output (clockpin, False) adcout = 0 # očitano u jednom null bitu i 10 ADC bitova za i u rasponu (11): GPIO.output (clockpin, True) GPIO.output (clockpin, False) adcout <0): print "Nije pronađena mp3 datoteka!" vrati ispis mp3_datoteka "--WW2 radio ------------------------------------------ --------------------- "last_read = 0 # spremi posljednju poziciju volumena potpuna_godina = 0 # spremi zadnju poziciju tolerancije pot frekvencije = 5 # dopuštaju malu toleranciju pa blago pomicanje posuda ne uzrokuje promjenu dok je True: trim_pot_changed = False year_pot_changed = False za adcnum u rasponu (2): ret = readadc (adcnum, SPICLK, SPIMOSI, SPIMISO, SPICS) if (adcnum == 0): # pročitajte pot za birač godina da vidite da li se pomaknuo year_adjust = abs (ret - last_year) if (year_adjust> tolerancija+10): year_pot_changed = True if (year_pot_changed): # Vrijednosti za if if provjere mogu biti napravljeno nakon izgrađenog podprocesa.call (['killall', 'mpg123']) # ubiti bilo koji MP3 pokrenuti san (0.1); ako ret 50 i ret = 150 i ret = 250 i ret = 350 i ret = 450 i ret = 550): war_year = "1945" # spremite vrijednost lonca za sljedeći put oko petlje last_year = ret print (" Reproducira se s "), ispis (ratna_godina), ispis (" broj datoteka = "), rat_dir = '/dom/pi/radio/Vijesti iz Drugoga svjetskog rata _'+ratna_godina+'/' play_list = popis_godina (ratna_godina) broj_fajlova = len (popis_za reprodukciju) ispis num_of_files play_file = random.randint (1, num_of_files) # nasumično odaberite jednu od datoteka za reprodukciju war_mp3 = war_dir + play_list [play_file] podproces. Popen (['mpg123', war_mp3]) # Koristite mpg123 kao player za audio spavanje (0,1); # dajte malu pauzu prije nastavka if (adcnum == 1): # pročitajte volumen pot pot_adjust = abs (ret - last_read) if (pot_adjust> tolerance): trim_pot_changed = True if (trim_pot_changed): set_volume = ret / 10.24 # convert 10bit adc0 (0-1024) pot vrijednost u razinu volumena 0-100 set_volume = round (set_volume) # zaokruži decimalnu vrijednost set_volume = int (set_volume) # glasi volumen kao cijeli broj # Koristite vrijednost iz pot za slanje razine na amixer prog print 'Volume = {volume}%'.format (volume = set_volume) set_vol_cmd = 'sudo amixer cset numid = 1 - {volume}%> /dev /null'.format (volume = set_volume) os.system (set_vol_cmd) # set volume # spremite očitanje potenciometra za sljedeću petlju last_read = ret # Pauza nakon promjene glasnoće tako da ne djelujemo na previše promjena ako se lonac brzo promijeni. sleep (0.5)
Korak 12: Automatski pokrenite softver pri učitavanju
Postoji mnogo načina za pokretanje naredbe na Pi -u pri pokretanju, ali smatram da je ovo najjednostavnije, Otvori Crontab
sudo crontab -e
Sada samo dodajte ovaj redak
@reboot python /home/pi/volume/year.py &
i to bi trebalo biti trik, sljedeći put kada ponovno pokrenete program Audio control će se pokrenuti i trebali biste čuti svoje prvo emitiranje.
Korak 13: Što je sljedeće?
Trenutno sam u procesu izrade male tiskane ploče koja će sjediti na vrhu maline pi kako bih mogao imati gdje montirati i2S pojačalo i ADC zajedno s nekim vijčanim terminalima za lonce. To će mi omogućiti da instalaciju učinim malo urednijom i lako napravim još nekoliko za prijatelje.
Trenutno prikupljam neke datoteke za radio za svemirske utrke, počevši od sputnika pa nadalje do slijetanja na Mjesec.
Javite mi ako imate bilo kakvih ideja ili želite bilo kakve savjete ili natuknice o tome da ih sami sastavite.
Odjava.
Druga nagrada na audio natjecanju 2018
Preporučeni:
Klizač za upravljanje kretanjem za Time Lapse Rail: 10 koraka (sa slikama)
Klizač za upravljanje kretanjem za Time Lapse Rail: Ova instrukcija objašnjava kako motorizirati time lapse šinu pomoću koračnog motora koji pokreće Arduino. Uglavnom ćemo se usredotočiti na upravljački sklop pokreta koji pokreće koračni motor pod pretpostavkom da već imate tračnicu koju želite motorizirati. Na primjer, kad ne
Arduino Time-Lapse Panorama Controller: 8 koraka (sa slikama)
Arduino Time-Lapse Panorama Controller: Panorama Controller za GoPro kamere Kontroler će rotirati vaš GoPro pod postavljenim kutom za određeno vrijeme ili će vas okretati GoPro za potpunu rotaciju za zadano trajanje. Ovaj se projekt temelji na izvornoj uputi koju je dao Tyler Winegarner Vidjeti
Sat od riječi Ribba s Wemos D1 Mini (Internet Time Server): 8 koraka (sa slikama)
Sat od riječi Ribba s Wemos D1 Mini (Internet Time Server): Pretpostavljam da svatko dolazi do točke u kojoj mu to golica u prstima i želi izgraditi Sat riječi. Pa ovo je moj pokušaj i moj opći zaključak da ga izgradim što učinkovitije. Prije svega posjedujem 3D pisač i imam pristup
Dolly Time Lapse Dolly: 3 koraka (sa slikama)
Time Lapse Dolly: Ako ste oduvijek sanjali o tome da napravite svoje video zapise s time lapseom, ali niste imali beskrajna sredstva za kupnju time lapse opreme, a niste bili odlični s elektronikom ili programiranjem, ovo je za vas Instructable. Moj cilj s ovim i svim mojim instrukcijama
Arduino Time Lapse klizač: 3 koraka (sa slikama)
Arduino Time Lapse Slider: pa sam razmišljao o snimanju timelapse videa sa svojim dslr -om i vidio sam mnoge koji su pomoću kliznog mehanizma dodali drugu dimenziju. Gledao sam da kupim jedan, ali malo ih je skupo kupiti samo da " umočim prste u vodu " pa t