Sisällysluettelo:

Retro -tyylinen kiertovalintapuhelin: 4 vaihetta (kuvilla)
Retro -tyylinen kiertovalintapuhelin: 4 vaihetta (kuvilla)

Video: Retro -tyylinen kiertovalintapuhelin: 4 vaihetta (kuvilla)

Video: Retro -tyylinen kiertovalintapuhelin: 4 vaihetta (kuvilla)
Video: Retro Xitlar Yangi Yil Soni (01.01.2024) 2024, Kesäkuu
Anonim
Retro -tyylinen pyörivä puhelin
Retro -tyylinen pyörivä puhelin

Tämä projekti johtui sekä käytännön tarpeesta että halusta tehdä jotain hauskaa.

Kuten useimmat nykyaikaiset perheet, lakkasimme käyttämästä todellista "kotipuhelinta" (langallista) monta vuotta sitten. Sen sijaan meillä on ylimääräinen SIM-kortti, joka liittyy "vanhaan" kotinumeroomme, jota kantoin dual-sim-matkapuhelimessani. Tämä toimi hyvin kokoonpanona suurimman osan ajasta, mutta se ei toiminut parhaiten joissakin tapauksissa, kuten silloin, kun vanhempamme vierailivat (he ovat vanhan sukupolven - ilman matkapuhelimia, enkä voinut soittaa heille kotona poissa ollessamme) koska "kotipuhelin" oli kanssani). Tämä vahvistui myös, kun vaihdoin puhelinta (uusi puhelin, jossa on yksi sim -korttipaikka). Niinpä tuntui hyvältä ajatukselta löytää tapa saada "kotityylinen" puhelin, joka voisi käyttää ylimääräistä SIM -korttiamme.

Mitä hauskaa on, suurin osa nykyajan lapsista ei tiedä paljon, kuinka vanhat pyörivät puhelimet toimivat tai että ne olivat olemassa sellaisenaan. Osassa maailmaa, josta vaimoni ja minä olemme kotoisin, käytämme ilmaisua "käännä numero ympäri" soitettaessa, mikä on hämmentävää nuoremmille, koska "miksi kukaan kääntäisi puhelimen soittaakseen". Siksi ajattelin, että olisi hienoa, että poikani (joka osallistui aktiivisesti tähän projektiin) voisi saada kokemusta pyörivästä puhelimesta.

Olin tietysti myös varma, että tämä "uusi" puhelin olisi mukava keskustelun aihe, kun meillä on ystäviä ja sukulaisia. Tai vielä parempi, kun otat puhelimen mukaamme vieraillessasi ystävien kanssa, yllättäen ihmiset täysin toimivalla retronäköisellä matkapuhelimella.

Projektin aikana muutimme joitain alkuperäisiä suunnittelutavoitteita. Esimerkiksi ajattelin upottaa ladattavan ulkoisen akun puhelimen sisään, jotta se on helppo ottaa mukaan, mutta lopulta tajusin, että tämä ei ole välttämätöntä (koska tämäntyyppinen puhelin pysyy luonnollisesti yhdessä paikassa koko ajan, joten se voi aina pistorasiaan). Meillä oli joitakin muita "pikavalintoja", jotka pystyimme valitsemaan, mikä teki projektista suhteellisen suoraviivaisen eikä liian monimutkaisen.

================

Materiaalin osalta toivoin alun perin, että pystymme saamaan vanhan vanhempani pyörivän puhelimen vanhemmiltani ja käyttämään suurinta osaa sen osista (puhelinkuori, kiertovalitsin, kuulokkeet jne.), Mikä alentaisi koko projektin kustannuksia. Näin ei lopulta tapahtunut COVID-19: n vuoksi, joka esti suunnitellun matkamme Eurooppaan (vieraileva perhe), ja sen sijaan löysimme ja ostimme uuden pyörivän puhelimen Amazonista (en ollut tyytyväinen eBayn vaihtoehtoihin ja hintoihin). Tämä oli OK, koska se tarjosi joitain mielenkiintoisia lisätoimintoja, koska löysimme kiertovalintapuhelimen, jossa oli lisävalintavaihtoehtoja (* ja #), joita ei normaalisti ole saatavana vanhoissa puhelimissa.

Suurin osa projektista oli GSM/GPRS HAT, joka on helposti saatavilla (emme tarvinneet 4G -versiota) ja jota voidaan ohjata suoraan millä tahansa Raspberry Pi: llä tai vastaavalla levyllä. Meidän tapauksessamme meillä oli pieni Raspberry Pi Zero -levy, jota emme käyttäneet aktiivisesti (poikani vanhemmasta projektista).

On mielenkiintoista, että suurin osa ajattelua ja suunnittelua koskevista muutoksista tehtiin suhteellisen yksinkertaisen ja pienen osan projektista - soittoäänen luomisen ympärille. Kuten vanhat puhelimet tuntevat tietävät, erottuva vanhan tyylin soitto syntyi 40-60 VAC: n "kellojen" avulla, mikä oli hankalaa tehdä osana tätä projektia. Päätin lopulta yksinkertaistaa tätä projektin osaa ja päädyin suhteellisen yksinkertaiseen ratkaisuun käyttämällä tallentavaa äänimoduulia, joka on yleensä osa onnittelukortteja. Muitakin vaihtoehtoja oli, mutta tämä toimi todella hyvin ja oli suhteellisen edullinen ratkaisu.

Tarvikkeet

  • Raspberry Pi Zero W
  • Waveshare GSM/GPRS/GNSS/Bluetooth HAT

  • Tallennettava äänimoduuli, painike aktivoitu
  • (Vanha) pyörivä puhelin
  • Micro SD -kortti (Raspberry Pi), kaapelit/nastat, vanhat kuulokkeet jne.

Vaihe 1: Puhelimen valmistelu

Puhelimen valmistelu
Puhelimen valmistelu

Vanhat tyylikkäät langalliset puhelimet ovat suhteellisen yksinkertaisia laitteita. Kuten kuvasta voidaan nähdä, kun alkuperäinen puhelin on irrotettu, uudelleenkäytettävät osat ovat puhelimen pääkuori, mukaan lukien pyörivä valitsin ja pohja, kuulokkeet ja sen kytkin, kun taas loput otettiin pois - soittokello ja ohjaustaulu.

Mikä oli erittäin mukavaa tämän tietyn puhelinmallin kanssa, on se, että pystyimme paitsi käyttämään kiertovalitsinta myös sen liitintä, joka voidaan kytkeä suoraan Raspberry Pi -laitteen otsikkoon. On huomattava, että tässä liittimessä on 3 johtoa, joista yksi on viitteellinen, ja 2 erillistä tuloa Raspberry Pi -laitteessa. Sopivalla logiikalla (tallennettu liitteenä olevaan koodiin) tämä mahdollistaa sen tunnistamisen, milloin valitsinta käännetään ja mikä numero on valittu.

Sama koskee kuulokkeiden kytkintä, jossa on liitin, joka voidaan kytkeä suoraan kuulokkeeseen. Se on yksinkertainen logiikka, koska se vaatii vain viittauksen ja yhden erillisen syötteen.

Kuulokkeiden kaapelissa on odotetusti 4 johtoa, joista kukin on tarkoitettu pienitehoisille kaiuttimille ja mikrofonille. Koska käyttämässämme HAT: ssa oli 3,5 mm: n ääniliitäntä kuulokkeille, päädyn vain yhdistämään nämä 4 johtoa yhteen vanhoista 3,5 mm: n urosliitinpistokkeista.

Vielä yksi mielenkiintoinen asia, joka oli hyödyllinen tästä nimenomaisesta puhelinmallista, olivat kiinnityspylväät puhelimen pohjasta. Vaikka meidän piti leikata joitakin niistä, jotta saisimme tilaa levyille, pystyimme silti käyttämään toisia uudelleen ja kiinnittämään levyt. Tämä oli mukava tauko ja säästä aikaa.

Vaihe 2: Asioiden yhdistäminen

Asioiden yhdistäminen
Asioiden yhdistäminen
Asioiden yhdistäminen
Asioiden yhdistäminen
Asioiden yhdistäminen
Asioiden yhdistäminen

Yksinkertainen todiste konseptista riittää yhdistämällä Raspberry Pi ja GSM HAT suoraan ja kytkemällä tavalliset kuulokkeet GSM HAT -laitteeseen. Pystyin käyttämään tätä asetusta yhdessä MiniCom -sovelluksen kanssa (ajaen Raspberry Pi -sarjaporttia, joka on kytketty suoraan GSM HAT -järjestelmään) ja tarkistamaan nopeasti, että SIM -korttini toimii ja että voin soittaa ja lähettää/vastaanottaa tekstiviestejä tällä asetuksella.

Koska muut saattavat olla kiinnostuneita tekemään sen (on hauskaa testata nopeasti uusia asetuksia), tässä on vinkkejä siihen, miten se tehdään (tietysti samojen/vastaavien levyjen olettaman perusteella):

- Asenna ja määritä käyttöjärjestelmä Raspberry Pi: lle (käytin Lite OS -versiota, joka tulee ilman GUI: ta).

- Liitä GSM HAT (SIM -kortti asennettu) Raspberry Pi -laitteeseen (varmista, että GSM HAT -laitteessa on sopiva UART -kytkinvalinta yhteystyypin mukaan, katso alla oleva linkki HAT -oppaaseen). Tässä vaiheessa saatat tarvita Raspberry Pi -version, johon on jo asennettu otsikkoliitin, meidän tapauksessani minun oli juotettava se (koska käytin Pi nollaa, joka oletuksena tulee ilman otsikkoa). Vaihtoehtoisesti parempi vaihtoehto on käyttää mikro -USB -kaapelia molempien korttien liittämiseen (sekä Raspberry Pi- että GSM HAT -laitteessa on mikro -USB)

- Ota Raspberry Pi -sarjaportin käyttö käyttöön, jos yhdistät GSM HAT -sarjaportin kautta (oletuksena Raspberry Pi -portti, jota käytetään konsolina). Tätä varten sinun on noudatettava raspi -config -ohjeita (katso yllä "configure" -linkki), liitäntävaihtoehtoja - SSH- ja sarjavaihtoehtojen käyttöönotto. Jos käytät Lite OS -versiota, sinun on ehkä myös "muodostettava yhteys langattomaan verkkoon" ja otettava SSH käyttöön (katso ohjeet yllä olevasta "configure" -linkistä).

- Liitä Raspberry Pi näyttöön ja näppäimistöön (tai käytä sitä kauko -ohjaimen kautta)

- Käytä MiniComia tai vastaavaa sarjasovellusta HAT: n manuaaliseen ohjaamiseen sopivan portin kautta (asetusporttini oli "/dev/ttyS0", se on erilainen, jos käytetään mikro -USB: tä). Asenna MiniCom komennolla "sudo apt -get install minicom" ja käynnistä se asennuksen jälkeen "minicom -D /devtyS0" (tai mikä tahansa portti on käytössä).

- Käytä GSM HAT -käsikirjaa tai AT -komentokäsikirjaa eri HAT -toimintojen ohjaamiseen (tekstiviestien lähettäminen, soittaminen jne.). Kun yhteys on muodostettu oikein, GSM HAT vastaa "OK", kun "AT" -komento kysyy. Tarkista, onko SIM -kortti rekisteröity oikein, komennolla "AT+CREG?", Jonka pitäisi myös palauttaa "OK". Voit myös vahvistaa verkkopalveluntarjoajan "AT+COPS?" Tai tarkistaa oman puhelinnumerosi "AT+CNUM"

Muiden tarvittavien osien yhdistämiseksi loimme räätälöidyn 16 -nastaisen kaapelin Raspberry Pi -GSM HAT -laitteelle, koska tarvitsimme joitain muita yleiskäyttöisiä IO -nastoja kiertovalitsimen, kuulokkeen kytkimen tilan ja soittokellon soittamiseen (myös automaattisesti käynnistymään) GSM HAT käynnistyksen / alustuksen aikana). Yritin käyttää joitain Raspberry Pi: n valmiita katkaisijohtoja tähän tarkoitukseen, ja vaikka se toimi hyvin yhteyden muodostamisessa ja testaamisessa, en ollut kovin tyytyväinen laatuun ja päädyin tekemään oman 16-nastaisen liittimen.

Toinen tapa muodostaa yhteys Raspberry Pi: n ja GSM HAT: n välillä on molempien korttien mikro -USB -porttien kautta (ja sinun on jälleen asetettava UART -kytkin GSM HAT -laitteeseen), ja se voi olla nopeampi ja paljon yksinkertaisempi ratkaisu. Voit tehdä sen helposti, jos saat sopivan kaapelin (se säästää aikaa ja vaivaa kaapelin tekemisessä) - älä unohda vaihtaa ohjelmiston/sovelluksen käyttämää porttia.

Levyjen liittämisen jälkeen (mikro -USB: llä) loput ovat helppoja. Seuraa vain yllä olevaa kaaviota, jossa esitetyt nastat liittyvät tämän ohjeen lopussa olevaan koodiin. Erityisesti:

- Nastat 35, 37 ja 39 (liittyvät Raspberry Pi GPIO 19: een, 26: een ja maahan) käytetään liittämiseen valitsimeen (tulonastat). Valitsemamme puhelin oli jo rakentanut 3 -johdinliittimen, jossa punainen ja musta johto liittyivät NO- ja NC -nastoihin, ja keltainen johto oli yleinen.

- Nastat 23 ja 25 (Raspberry Pi GPIO 11 ja maadoitus) käytetään kuulokekytkimen kytkemiseen (tulo - havaitseminen, kun kuuloke nostetaan tai lasketaan alas)

- Nastat 22 ja 20 (Raspberry Pi GPIO 25 ja maa) käytetään äänimoduulikytkimen liittämiseen (lähtö - rengastoiminto)

- Lisäksi nasta 19 (GPIO 10) on ehkä juotettava GSM HAT -virtakytkimeen, koska joitakin HAT-versioita ei voida käynnistää pelkällä käynnistyksellä, vaan tarvitaan joku, joka painaa manuaalisesti HAT-laitteen virtakytkintä.

- Puhelimen puolella irrotimme sisäisen kuulokkeen 4 -johtoisen kaapelin ja liitettiin 3,5 mm: n ääniliitäntään vanhoista kuulokkeista. Punaiset/vihreät johdot ovat kuulokemikrofonille ja keltaiset/mustat kuulokkeiden kaiuttimille. Riippuen käytetystä 3,5 mm: n liittimestä saatat joutua selvittämään sopivan johdon (edellä olevan GSM HAT -kuulokeliitännän otteen mukaan), mutta meidän tapauksessamme mikrofoni oli kytketty suojaan ja punaiseen, kun taas kaiutinjohdot olivat vihreitä ja sinisiä. Kytke lopuksi 3,5 mm: n liitin GSM HAT -kuulokkeiden tuloliitäntään.

Vaihe 3: Lopullinen pakkaus ja simuloidun soittoäänen lisääminen

Lopullinen pakkaus ja lisäys simuloitu
Lopullinen pakkaus ja lisäys simuloitu

Vaikka lopullinen sisäpakkaus, kuten yllä olevasta kuvasta näkyy, näyttää suhteellisen siistiltä, se vaati paljon tinkimistä ja eri vaihtoehtojen kokeilua. Tärkeimmät rajoitukset olivat tila pyörivän valitsimen alla ja jäykät liittimet, ja koko prosessi oli kuin palapelin kokoaminen.

Oli erittäin onnekasta, että pystyimme käyttämään useita viestejä, jotka olivat jo puhelimen sisällä (poistimme muut viestit Dremel -työkalulla), ja turvaamaan levyt ja kaiuttimet. Mutta tämä rajoitti myös muuta käytettävissä olevaa tilaa, mikä lopulta johti siihen, että hylkäsimme alkuperäisen idean lisätä sisäinen ladattava virtalähde.

Mitä tulee "renkaaseen", ostimme paristokäyttöisen tallennettavan äänimoduulin. Lisävarusteena (kun liität levyt mikro-USB: n kautta) on olemassa ei-paristokäyttöinen versio, joka voidaan saada suoraan virtalähteenä Raspberry Pi -liitännästä 5V.

Molemmissa tapauksissa äänimoduulin ulkoinen ohjauskytkin on poistettava ja johdot kytkettävä yhteen GPIO -nasta + maadoitus. Ja soittoäänen ohjelmointi moduuliksi on hyvin yksinkertaista, liitä se tietokoneeseen ja lataa kumpi mp3 -tiedosto haluat soittaa. Tässä on linkki mukavaan sivustoon, jossa on paljon vanhoja soittoääniä.

Vaihe 4: Ohjelmisto ja lopullinen integrointi

Ohjelmisto ja lopullinen integrointi
Ohjelmisto ja lopullinen integrointi
Ohjelmisto ja lopullinen integrointi
Ohjelmisto ja lopullinen integrointi

Yllä oleva lohkokaavio esittää kaikki pääkomponentit ja niiden suhteet. Pohjimmiltaan toteutus tarvitsee 3 erillistä tuloa ja vähintään yhden erillisen lähdön (käytimme 2 tehtävää, koska saamamme GSM HAT -versio ei voi käynnistyä automaattisesti ilman HAT -painikkeen painamista, joten meidän oli juotettava johto kyseiseen painikkeeseen pakottaaksesi HATin käynnistäminen, kun puhelimeen on kytketty virta).

Koodin osalta se on kirjoitettu Python 2.7: ssä, joten jos asennat/käytät versiota 3.x tai uudempaa, jotkin asiat saattavat muuttua (ilmeinen on "print" -lauseke). Jotta koodi toimisi oikein, pari Python -kirjastoa on lisättävä ensin, kuten:

- gpiozero (tarvitaan Raspberry Pi GPIO -liitäntään)

- re (säännöllisen lausekkeen kirjasto - saapuvien tekstiviestien jäsentämiseen asenna, jos se ei ole osa Python -oletusasennusta)

- sarjaliitäntä (GSM HAT -yhteyttä varten - tarvitaan, vaikka yhdistettäisiin mikro -USB: n kautta, asenna, jos ei ole osa Python -oletusasennusta)

Lisäksi liitteenä olevassa koodissa on 2 paikkaa, joita on muutettava/mukautettava lopullisen toteutuksen mukaan (tai 3 paikkaa, jos käytetään erilaisia GPIO -nastoja). Ensimmäinen liittyy numeroon, jota haluat käyttää viestien edelleenlähettämiseen:

# *********************************** FORWARDING_NUMBER = "5551234567" # laita tähän puhelin mihin haluat viestisi välitettäväksi

# ***********************************

Ja toinen on sarjaportin asetus:

# ***********************************

# SIM868 alustus ja rutinessim868 = serial. Serial ("/dev/ttyS0", 115200)

# varmista, että /dev /ttyS0 on oikea asetuksillesi

# ***********************************

Koodi rakennettiin tilakoneeksi, joka on kuvattu yllä olevassa kaaviossa. Suurimman osan ajasta puhelin on IDLE -tilassa ja odottaa tapahtumia: 1. Saapuva puhelu (joka ajaa puhelimen RING -tilaan)

2. Saapuva tekstiviesti - joka lähetetään/voidaan siirtää automaattisesti toiseen puhelimeen

3. Kuulokkeiden nostaminen ylös, valmistautumista varten (ajaa puhelimen DIAL-tilaan)

4. Erikoismerkin valitseminen nostamatta kuulokkeita (nykyisen koodin mukaan, "#" sammutuspuhelimen valitseminen)…

Koodiin on upotettu paljon kommentteja, joiden pitäisi auttaa lukemaan ja ymmärtämään sitä. Jätimme joitakin asioita kesken, kuten pikavalintavaihtoehdon lisäämisen tai tilaviestin lähettämisen tai…

Mitä tulee koodin suorittamiseen automaattisesti, kun virta kytketään, päätimme toteuttaa sen palveluna, joka voidaan tehdä tässä kuvatulla tavalla. Toimi yksinkertaisesti seuraavasti:

- lataa alla olevat liitetiedostot "rotaryPhoneStateMachine.txt" ja "myphone.txt" ja nimeä ne uudelleen "rotaryPhoneStateMachine.py" ja "myphone.service" (jostain kummallisesta syystä Instructables -palvelin ei salli tiettyjen tiedostotyyppien lataamista)

- Aseta "rotaryPhoneStateMachine.py" /home /pi -kansioon

- Sijoita "myphone.service" kansioon/etc/systemd/system

- ota palvelu käyttöön komennolla "sudo systemctl enable myphone.service" (kaiken testaamisen jälkeen)

Suositeltava: