Sadržaj:

WW2 Radio Broadcast Time Machine: 13 koraka (sa slikama)
WW2 Radio Broadcast Time Machine: 13 koraka (sa slikama)

Video: WW2 Radio Broadcast Time Machine: 13 koraka (sa slikama)

Video: WW2 Radio Broadcast Time Machine: 13 koraka (sa slikama)
Video: Astounding abandoned manor of a WW2 soldier - Time capsule of wartime 2024, Decembar
Anonim
Image
Image
WW2 Radio Broadcast Time Machine
WW2 Radio Broadcast Time Machine

Ideja iza ovoga je bila da iskoristim neke dijelove koje sam ležao i da napravim audio džuboks napravljen u starom radiju. Da bih pružio još neku svrhu iza toga, odlučio sam ga napuniti starim radio emisijama iz Drugog svjetskog rata, a zatim prenamjeniti frekvencijski broj za odabir pojedinačne godine rata i tada će se emitovati relevantni programi. Vidio sam nekoliko kolekcija MP3 zapisa pa je sve spremno.

Što se tiče hardvera, moj favorit je ili arduino ili malina pi nula, a za ovo ću koristiti malinu pi nulu. Međutim, on ima svoje nedostatke, au ovom slučaju to je nedostatak zvuka koji se lako 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 na 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 pri korištenju PI -a je taj što može patiti ako ga samo isključite bez isključivanja, na to sam naišao bezbroj puta i čini se da uvijek oštećuje datoteku za konfiguraciju mreže. S obzirom na to da je ovo 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 dugme, ali i omogućava pokretanje sa istim dugmetom.

Korak 1: Lista radio dijelova WW2 Time Machine -a

Potrebni delovi

  1. Stari radio
  2. Francuski poljski
  3. SandPaper
  4. Lexan za biranje
  5. Heatshrink
  6. Raspberry Pi Zero
  7. I2S Amp
  8. ON/OFF Shim
  9. Zvučnik
  10. Moćna cigla
  11. MCP3002
  12. LED
  13. Otpornik 270R
  14. 2x 10k lonaca
  15. Pritisnite za uključivanje
  16. USB kabl

Korak 2: Pronalaženje starog radija

Pronalaženje starog radija
Pronalaženje starog radija
Pronalaženje starog radija
Pronalaženje starog radija
Pronalaženje starog radija
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 postojalo iskušenje da se pokrene, ali kad je šasija izašla i kada se pojavio 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 izradu iz tog doba koji su zasigurno izgledali slično.

Korak 3: Uklanjanje starog radija i izrada nove šasije

Uklanjanje starog radija i izrada nove šasije
Uklanjanje starog radija i izrada nove šasije
Uklanjanje starog radija i izrada nove šasije
Uklanjanje starog radija i izrada nove šasije
Uklanjanje starog radija i izrada nove šasije
Uklanjanje starog radija i izrada nove šasije

Prilično je jednostavno odvojiti jedan od ovih, općenito se čini da je šasija montirana na kućište i da je sve montirano. Dakle, jednom kad se odvrne i gumbi se otpuste, jednostavno klizi. Većina je u potpunosti izgrađena na podvozju. Moja prvotna namjera bila je koristiti zvučnik iz rascijepljene kutije bluetooth zvučnika, ali sam se pitao hoće li stari raditi. Bilo je ugodno iznenađenje kad smo otkrili da nije samo uspjelo, već je i zvučalo zaista odlično. Dakle, sljedeći korak ovdje bio je nastaviti mjeriti sve i izgraditi novu šasiju u Tinkercadu. Ponovno sam definirao područje frekvencijskog biranja i zadržao zvučnik na istom mjestu. Dodatno je dodana montažna ploča za pi nulu. Odštampao sam ga u PETG -u za koji smatram da je manje otporan na savijanje, a probno uklapanje svih dijelova pokazalo se da će funkcionirati. Morao sam se malo poigrati s postavkom za jačinu zvuka kako bi se novi lonci dobro uklopili i još uvijek se montirali kroz kućište.

3D šasiju možete preuzeti ovdje ako želite s njom petljati

www.thingiverse.com/thing:3174818

Korak 4: Obnavljanje kućišta

Renoviranje kućišta
Renoviranje kućišta
Renoviranje kućišta
Renoviranje kućišta
Renoviranje kućišta
Renoviranje kućišta

Sada je prva stvar koju je trebalo učiniti kada je slučaj ogoljen bio odlučiti šta će biti 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 torbicu, ali bilo je nekoliko mjesta na kojima je lak puknuo pa sam ga 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 je trebalo učiniti dva puta jer je vjerojatno bilo lakirano u nekom trenutku preko originalne 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 prič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 odgurnuti komade gdje je to moguće. Kad se ovo osušilo, samo sam skalpelom očistio rubove drva i obojao ih smeđom bojom Tamiya akrilne boje.

Moja prva misao bila je samo zamijeniti tkaninu zvučnika, ali cijena autentičnog materijala je prilično velika jer se obično prodaje u dugim duljinama. Nakon što ste malo istražili starinske radijske forume, izgleda kao da možete sa namočenjem vratiti staro platno. Tako sam hladnom vodom i puno tekućine za pranje namočila preko noći i iznenađujuće kad se ponovo osušila, postala je prilično čista.

Sada sam se htio pozabaviti završnom obradom i u početku sam odlučio nanijeti č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 "Uradi sam" 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 vježbe da biste to učinili ispravno. Upute možete potražiti na YouTubeu i iako izgleda prilično jednostavno, prilično je neuredna operacija. Čini se da vještina dolazi do laka u krpi namočenoj u vatu tako da možete istisnuti lak na drvo dok radite. Ako samo probate s 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 završne obrade visokog sjaja uspio nanijeti nekoliko slojeva, lagano obrusiti papirom od 1500, zatim nanijeti još nekoliko i sve je izgledalo u redu. 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 dugmadi

8. Poliranje pokazivača brojača

Korak 5: Raspberry Pi nula i pojačalo

Raspberry Pi nula i pojačalo
Raspberry Pi nula i pojačalo
Raspberry Pi nula i pojačalo
Raspberry Pi nula i pojačalo
Raspberry Pi nula i pojačalo
Raspberry Pi nula i pojačalo

S normalnim Raspberry PI audio izlazom je prilično jednostavan jer ima izlaz za audio priključnicu, ali za Pi Zero ne postoje prave izvorne opcije. Isprobao sam neka rješenja gdje možete preusmjeriti GPIO pinove, a zatim upotrijebiti niskopropusni filter, 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 zaista 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. Stoga sam se sada odlučio za i2S ploču za pojačavanje pojačala iz Adafruit -a koja rješava sve probleme u jednom potezu. Samo imajte na umu da je to i2S, a ne i2C.

Potrebno vam je samo nekoliko žica da biste ovo pokrenuli i s dovoljno pristojnim zvučnikom možete dobiti odličan, glasan mono zvuk.

Korak 6: Kreiranje novog biranja

Pravljenje novog biranja
Pravljenje novog biranja
Pravljenje novog biranja
Pravljenje novog biranja
Pravljenje novog biranja
Pravljenje novog biranja

Ideja je ovdje, naravno, zamijeniti postojeći brojčanik i staklo onim koji prikazuje godinu umjesto frekvencije. Na sreću, postojeći je bio samo ispisani umetak pa sam ga bacio na skener i kopirao u Paint Shop Pro, upotrijebio alat za kloniranje i izbrisao stare brojeve, a zatim samo ukucao neke nove za svaku godinu. Sa staklom je ono u radiju izgrebano i napuklo, a ispostavilo se i da je napravljeno od plastike. Odštampao sam samo okvir okvira kako bih olakšao testiranje i prvo sam pokušao da ga napravim od akrila. Općenito nemam dovoljno strpljenja s akrilom i na kraju sam ga napukao pri pokušaju bušenja središnje rupe. Zato sam pribjegao polikarbonatu od 1,5 mm koji je mnogo 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 originalnom papiru bilo blago metalno naslaga, samo mogu pretpostaviti da je na nekoga utjecao originalni pokazivač od mesinga, možda neki proces starenja?

Korak 7: Kontrole jačine zvuka i birača

Kontrole jačine zvuka i birača
Kontrole jačine zvuka i birača

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 četverokanalni 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 funkcionira, a njegov kôd možete pronaći ovdje.

github.com/CaptainStouf/Adafruit-raspi-pyt…

Pomoću ovog koda možete lako pročitati dva kanala i koristiti rezultate. U mom primjeru jedan će se koristiti za volumen, a drugi za odabir datuma. U jednom trenutku sam 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 obaviti posao.

Slika prikazuje MCP3002 kako sjedi na maloj prototipnoj ploči i 10K loncu

Korak 8: Napajanje i kontrola

Napajanje i upravljanje
Napajanje i upravljanje
Napajanje i upravljanje
Napajanje i upravljanje
Napajanje i upravljanje
Napajanje i upravljanje

Pi se samo napaja putem USB -a tako da je vrlo jednostavan za pokretanje, međutim na kraju ćete pokvariti SD karticu ako samo izvučete napajanje. Postoji mnogo načina za praćenje pritiska na dugme i pokretanje gašenja, ali tada ćete morati da uključite napajanje da biste ga ponovo pokrenuli. Da bih to zaobišao i učinio projekt lakim za korištenje, koristim Pimoronijevo uključivanje/isključivanje. Ovo vam omogućuje da pritisnete jednom i uključi se, a zatim dugim pritiskom i pokrenut će se čisto isključivanje. Da bih bio i malo prenosiv, koristim staru bateriju napajanja koja se bavi i punjenjem baterije. Powerbankovi su dovoljno jeftini i sposobni su da pokrenu Pi neko vrijeme.

Pritisnuo sam dugme kako bih ispravno postavio na mjesto gdje je stari kabel za napajanje izlazio sa stražnje strane. 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 od 270R u red, a drugi kraj samo na masu. Možete dodati i 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

Opremanje kućišta
Opremanje kućišta
Opremanje kućišta
Opremanje kućišta
Opremanje kućišta
Opremanje kućišta

S kućištem i šasijom sve spremno i testirano, bilo je potrebno samo nekoliko vijaka od 4 mm i najlonskih navrtki za držanje. Prirubnički samorezni vijci drže stražnju stranu na mjestu.

Dugme za uključivanje se takođe lepo uklopilo u stari otvor za mrežni provodnik.

Također sam htio ponovno upotrijebiti stare gumbe i oni su prvobitno 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 navukao termoskupljanje preko lonaca i zatim zalijepio dugmad na to. Lijepo i čvrsto steže, a ako je potrebno i dalje ga možete rastaviti.

Korak 10: Preuzimanje zvučnih datoteka

Image
Image

Koristim MP3 datoteke i postoji fantastičan izbor sa Archive.org, možete pronaći grupisane emisije ratnih prenosa i 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. Postoji nekoliko stotina emisija za svaku godinu i nevjerojatna je količina i raspon ovih.

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 kolekcija

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 prenošenja na Pi jer se može prijaviti i prenijeti putem SSH -a, tako da nema potrebe za postavljanjem SAMBA pogona ili FTP servera.

Korak 11: Krug i softver za reprodukciju datoteka

Šta dalje?
Šta dalje?

Kada pojačalo počne raditi i možete slijediti donju vezu za postavljanje, za to ćete također morati instalirati mpg123 player, prilično jednostavno pretraživanje Googlea za donji Python kod. Samo provjerite imate li omogućene i2s i SPI u vašem Raspi Config -u. 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 jačine zvuka i godine # Izlaz putem i2S pojačala 20.10.2018- Ajax Jones # Fragmenti koda dostavljeni sa 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 uvoznog potprocesa iz vremena uvoza spavanja uvoza nasumičnog GPIO.mododa (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)): povratak -1 GPIO.output (cspin, True) GPIO.output (clockpin, False) # start GPIO.output (cspin, False) # dovesti CS nisku komandu = adcnum << 1; commandout | = 0x0D # početni bit + jednostruki bit + MSBF bit commandout << = 4 # potrebno je samo poslati 4 bita za i u rasponu (4): if (commandout & 0x80): GPIO.output (mosipin, Tačno) else: 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 opsegu (11): GPIO.output (clockpin, True) GPIO.output (clockpin, False) adcout <0): print "Nije pronađena mp3 datoteka!" return mp3_files print "--WW2 Radio ------------------------------------------ --------------------- "last_read = 0 # pohraniti posljednju poziciju pot volumena last_year = 0 # pohraniti posljednju poziciju tolerancije pot frekvencije = 5 # dopuštaju malu toleranciju pa blago pomicanje posuda ne uzrokuje promjene 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 podprocess.call (['killall', 'mpg123']) # ubija 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" # sačuvajte vrijednost lonca za sljedeći put oko petlje last_year = ret print (" Reproducira se iz "), print (war_year), print (" number of files = "), war_dir = '/home/pi/radio/WWII_News _'+war_year+'/' play_list = list_year (war_year) num_of_files = len (play_list) print num_of_files play_file = random.randint (1, num_of_files) # nasumičnim odabirom jedne 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> tolerancija): trim_pot_changed = True ako (trim_pot_changed): set_volume = ret / 10.24 # convert 10bit adc0 (0-1024) pot vrijednost u nivo volumena 0-100 set_volume = round (set_volume) # zaokruži decimalnu vrijednost set_volume = int (set_volume) # emitirani volumen kao cijeli broj # Koristite vrijednost iz potta za slanje nivoa 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 jačine zvuka, 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, Otvorite Crontab

sudo crontab -e

Sada samo dodajte ovu liniju

@reboot python /home/pi/volume/year.py &

i to bi trebalo biti trik, sljedeći put kada ponovo pokrenete program Audio control će se pokrenuti i trebali biste čuti svoje prvo emitiranje.

Korak 13: Šta je sljedeće?

Šta dalje?
Šta dalje?

Trenutno sam u procesu izrade male štampane ploče koja će sjediti na vrhu maline pi, tako da mogu 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 svemirsku utrku, 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.

Odjavljivanje.

Audio takmičenje 2018
Audio takmičenje 2018
Audio takmičenje 2018
Audio takmičenje 2018

Druga nagrada na audio takmičenju 2018

Preporučuje se: