Përmbajtje:

Telefon celular rrotullues me stil retro: 4 hapa (me fotografi)
Telefon celular rrotullues me stil retro: 4 hapa (me fotografi)

Video: Telefon celular rrotullues me stil retro: 4 hapa (me fotografi)

Video: Telefon celular rrotullues me stil retro: 4 hapa (me fotografi)
Video: 📶 4G LTE USB modem cu WiFi de pe AliExpress / Review + Setări 2024, Qershor
Anonim
Telefon celular rrotullues me stil retro
Telefon celular rrotullues me stil retro

Ky projekt u nxit si nga nevoja praktike ashtu edhe nga dëshira për të bërë diçka argëtuese.

Si shumica e familjeve moderne, ne pushuam të kishim telefon të vërtetë "shtëpi" (të lidhur) shumë vite më parë. Në vend të kësaj, ne kemi një kartë SIM shtesë të lidhur me numrin tonë "të vjetër" të shtëpisë, të cilin e mbaja në celularin tim me dy sim. Kjo ishte mirë si rregullim për shumicën e kohës, por nuk funksionoi më mirë në disa raste, si kur kishim prindërit tanë të vizitonin (ata janë të brezit të vjetër - pa celularë, dhe nuk mund t'i telefonoja në shtëpinë tonë kur ishim larg meqenëse telefoni ynë "shtëpi" ishte me mua). Kjo u përforcua edhe kur ndërrova telefonin tim (telefoni i ri që kishte një slot të vetme SIM). Pra, dukej si një ide e mirë për të gjetur një mënyrë për të pasur një telefon të stilit "shtëpi" i cili do të ishte në gjendje të përdorte kartën tonë SIM shtesë.

Sa i përket pjesës argëtuese, shumica e fëmijëve në ditët e sotme nuk e kanë shumë idenë se sa të vjetër funksiononin telefonat rrotullues, ose që ata madje ekzistonin si të tillë. Në një pjesë të botës nga ku jam unë dhe gruaja ime, ne përdorim shprehjen "ktheni numrin" për thirrje, e cila është konfuze për popullsinë më të re, pasi "pse dikush do ta kthejë telefonin për të thirrur". Prandaj, mendova se do të ishte mirë që djali im (i cili po merrte pjesë aktive në këtë projekt) të ishte në gjendje të merrte përvojë me telefonin rrotullues.

Sigurisht, isha gjithashtu i sigurt se ky telefon "i ri" do të ishte një temë e bukur bisede kur të kemi miq dhe të afërm. Ose edhe më mirë, duke marrë telefon me ne kur vizitojmë miqtë, duke befasuar njerëzit me celularin plotësisht funksional retro.

Gjatë projektit, ne ndryshuam disa nga qëllimet e projektimit origjinal. Për shembull, po mendoja të fusja baterinë e jashtme të rimbushshme brenda telefonit në mënyrë që të mund të merret me vete, por përfundimisht kuptova se kjo nuk është e nevojshme (pasi ky lloj telefoni natyrisht qëndron në një vend gjatë gjithë kohës, kështu që mund të lidheni gjithmonë me prizë). Kishte disa "shkurtore" të tjera që ne ishim në gjendje të merrnim, gjë që e bëri projektin relativisht të drejtpërdrejtë dhe jo shumë kompleks.

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

Për materialin, fillimisht shpresoja se do të mund të merrnim telefonin e vjetër rrotullues nga prindërit e mi dhe të përdorim pjesën më të madhe të pjesëve të tij (guaskë telefoni, dial rrotullues, kufje, etj.), Gjë që do të ulte koston e projektit të përgjithshëm. Kjo përfundimisht nuk ndodhi për shkak të COVID-19, i cili parandaloi udhëtimin tonë të planifikuar në Evropë (duke vizituar familjen), dhe në vend të kësaj ne sapo gjetëm dhe blemë telefonin e ri rrotullues në Amazon (nuk isha i kënaqur me opsionet dhe çmimet në eBay). Kjo ishte në rregull, pasi siguroi disa funksionalitete shtesë interesante, pasi gjetëm një telefon rrotullues me opsione shtesë të thirrjes (* dhe #), që zakonisht nuk janë të disponueshëm në telefonat e vjetër.

Pjesa kryesore e projektit ishte GSM/GPRS HAT që është në dispozicion (nuk kemi nevojë për versionin 4G), dhe e cila mund të kontrollohet drejtpërdrejt me ndonjë Raspberry Pi ose borde të ngjashme. Në rastin tonë, ne kishim borde të vogla Raspberry Pi Zero që nuk po i përdorim në mënyrë aktive (nga projekti më i vjetër i djalit tim).

Shtë interesante se shumica e ndryshimeve të të menduarit dhe të projektimit janë bërë rreth një pjese relativisht të thjeshtë dhe të vogël të projektit - duke krijuar veprime zile. Siç e dinë ata që janë të njohur me telefonat e vjetër, zilja dalluese e stilit të vjetër u prodhua nga "këmbanat" të drejtuara nga 40-60 VAC, gjë që ishte e ndërlikuar të bëhej si pjesë e këtij projekti. Më në fund vendosa ta thjeshtoj atë pjesë të projektit, dhe përfundova me një zgjidhje relativisht të thjeshtë duke përdorur modulin e zërit të regjistrueshëm, i cili zakonisht është pjesë e kartave përshëndetëse. Kishte disa opsione të tjera, por kjo në të vërtetë funksionoi shkëlqyeshëm dhe ishte zgjidhje relativisht e lirë.

Furnizimet

  • Raspberry Pi Zero W
  • Waveshare GSM/GPRS/GNSS/Bluetooth HAT
  • Moduli i Zërit i Regjistrueshëm, Butoni i Shtypur i Aktivizuar
  • Telefoni rrotullues (i vjetër)
  • Kartë mikro SD (për Raspberry Pi), kabllo/kunja, kufje të vjetra, etj.

Hapi 1: Përgatitja e telefonit

Përgatitja e telefonit
Përgatitja e telefonit

Telefonat me stil të vjetër janë pajisje relativisht të thjeshta. Siç mund të shihet nga fotografia me telefonin origjinal të ndarë, pjesët e ripërdorshme janë pjesa kryesore e telefonit duke përfshirë numrin dhe bazën rrotulluese, kufjet dhe çelësin e saj, ndërsa pjesa tjetër u mor - zilja e ziles dhe tabela e kontrollit.

Ajo që ishte shumë e bukur me këtë model të veçantë të telefonit është se ne ishim në gjendje jo vetëm të ri-përdorim çelësin rrotullues, por edhe lidhësin e tij, i cili mund të lidhej drejtpërdrejt me kokën në Raspberry Pi. Duhet të theksohet se ky lidhës ka 3 tela, një për referencë, dhe 2 do të ketë hyrje diskrete në Raspberry Pi. Me logjikën e duhur (e kapur në kodin e bashkangjitur), kjo lejon zbulimin se kur rrotullohet çelësi dhe cili numër është zgjedhur.

E njëjta gjë ishte e vërtetë për kalimin e kufjeve, i cili ka lidhës që mund të lidhet drejtpërdrejt me kokën. Logicshtë logjikë e thjeshtë, pasi kërkon vetëm referencë dhe një hyrje diskrete.

Siç pritej, kablloja e kufjeve ka 4 tela, me 2 secila për altoparlantë dhe mikrofon të nivelit të ulët. Meqenëse HAT që ne po përdornim kishte fole audio 3.5 mm për kufje, unë vetëm përfundoj duke i lidhur ato 4 tela me një nga kufjet e vjetra 3.5 mm audio mashkullore.

Një gjë më interesante që ishte e dobishme nga ky model i veçantë i telefonit ishin ngritja e postimeve nga baza e telefonit. Ndërsa ne kishim nevojë për të prerë disa prej tyre për të bërë hapësirë për dërrasat, ne ishim akoma në gjendje të ripërdorim të tjerët dhe të siguronim dërrasat tona. Kjo ishte një pushim i bukur, dhe na kurseni pak kohë.

Hapi 2: Vendosja e Gjërave së bashku

Vendosja e Gjërave së bashku
Vendosja e Gjërave së bashku
Vendosja e Gjërave së bashku
Vendosja e Gjërave së bashku
Vendosja e Gjërave së bashku
Vendosja e Gjërave së bashku

Për prova të thjeshta të konceptit, mjafton të lidhni Raspberry Pi dhe GSM HAT drejtpërdrejt dhe të lidhni kufje të rregullta në GSM HAT. Unë kam qenë në gjendje ta përdor atë konfigurim së bashku me aplikacionin MiniCom (drejtimi i portës serike Raspberry Pi, e cila lidhet drejtpërdrejt me GSM HAT) për të kontrolluar shpejt se karta ime SIM po punon dhe se mund të telefonoj dhe dërgoj/marr mesazhe SMS me atë konfigurim.

Meqenëse të tjerët mund të jenë të interesuar ta bëjnë këtë (është argëtuese të provosh shpejt konfigurimin e ri), këtu janë udhëzuesit se si ta bëni këtë (padyshim, bazuar në supozimin e të njëjtave borde/të ngjashme):

- Instaloni dhe konfiguroni OS në Raspberry Pi (kam përdorur versionin Lite OS, i cili vjen pa asnjë GUI).

- Lidhni GSM HAT (me kartën SIM të instaluar) në Raspberry Pi (sigurohuni që GSM HAT të ketë përzgjedhjen e duhur të ndërprerësit UART bazuar në llojin e lidhjes, shihni lidhjen më poshtë për manualin HAT). Për këtë hap ju mund të keni nevojë për versionin Raspberry Pi i cili ka lidhësin e kokës tashmë të instaluar, në rastin tonë më duhej ta bashkoja atë (pasi isha duke përdorur Pi zero, i cili si parazgjedhje vjen pa kokë). Përndryshe, opsioni më i mirë është të përdorni kabllo mikro USB për të lidhur të dy kartat (të dy Raspberry Pi dhe GSM HAT kanë mikro USB)

- Aktivizoni përdorimin e portës serike të Raspberry Pi nëse lidhni GSM HAT përmes portit serik (si parazgjedhje, porta Raspberry Pi përdoret për tastierë). Për ta bërë këtë, do t'ju duhet të ndiqni udhëzimet për raspi -config (shikoni lidhjen më lart "konfiguro"), opsionet e ndërlidhjes - duke mundësuar SSH dhe opsionet seriale. Nëse përdorni versionin Lite OS, mund t'ju duhet gjithashtu të "lidheni me rrjetin pa tel" dhe të aktivizoni SSH (shikoni udhëzimet nga lart lidhja "konfiguro").

- Lidhni Raspberry Pi me monitorin dhe tastierën (ose përdorni atë përmes ssh të largët)

- Përdorni MiniCom ose aplikacion të ngjashëm serik për të kontrolluar manualisht HAT përmes portit të duhur (për portin tim të konfigurimit ishte "/dev/ttyS0", do të jetë ndryshe nëse përdorni mikro USB). Instaloni MiniCom me "sudo apt -get install minicom", dhe sapo të instalohet filloni me "minicom -D /devtyS0" (ose cilado port që përdoret).

- Përdorni manualin GSM HAT ose manualin AT Command për të drejtuar funksione të ndryshme HAT (dërgoni SMS, telefononi, etj.). Pasi të lidhet siç duhet, GSM HAT do të përgjigjet me "OK" kur pyetet nga komanda "AT". Për të kontrolluar nëse karta SIM është regjistruar siç duhet, përdorni komandën "AT+CREG?", E cila gjithashtu duhet të kthejë "OK". Ju gjithashtu mund të verifikoni ofruesin e rrjetit me "AT+COPS?", Ose të kontrolloni numrin tuaj të telefonit me "AT+CNUM"

Për të integruar pjesën tjetër të pjesëve të nevojshme, ne krijuam një kabllo me porosi 16 pin për Raspberry Pi në GSM HAT, pasi na duheshin disa kunja të tjera të përgjithshme IO për të lexuar dial rrotullues, gjendjen e ndërrimit të kufjeve dhe për të përzënë zile (gjithashtu për të filluar automatikisht GSM HAT gjatë fuqizimit / inicimit). Unë u përpoqa të përdor disa nga telat e daljes jashtë raftit për Raspberry Pi për atë qëllim, dhe ndërsa kjo funksionoi mirë për lidhjen dhe testimin e shpejtë, nuk isha shumë i kënaqur me cilësinë dhe përfundova duke bërë lidhësin tim 16 pin.

Një mënyrë tjetër për të bërë lidhjen midis Raspberry Pi dhe GSM HAT është përmes të dy bordeve mikro USB (dhe përsëri, do t'ju duhet të vendosni në mënyrë të duhur ndërprerësin UART në GSM HAT), dhe kjo mund të jetë një zgjidhje më e shpejtë dhe shumë më e thjeshtë. Ju lehtë mund ta bëni këtë nëse merrni kabllon e duhur (kjo do t'ju kursejë kohë dhe përpjekje për të bërë kabllo) - thjesht mos harroni të ndryshoni portën e përdorur nga softueri/aplikacioni.

Pas lidhjes së bordeve (me mikro USB), pjesa tjetër është e lehtë. Vetëm ndiqni diagramin e mësipërm, ku kunjat e paraqitura atje shoqërohen me kodin e bashkangjitur në fund të këtij udhëzuesi. Konkretisht:

- Kunjat 35, 37 dhe 39 (të lidhura me Raspberry Pi GPIO 19, 26 dhe ground) përdoren për t'u lidhur me numrin (kunjat e hyrjes). Telefoni që ne zgjodhëm kishte ndërtuar tashmë 3 tela lidhës, me tela të kuqe dhe të zezë që lidheshin me kunjat NO dhe NC, dhe tela e verdhë ishte e zakonshme.

- Kunjat 23 dhe 25 (Raspberry Pi GPIO 11 dhe toka) përdoren për lidhjen e ndërprerësit të kufjeve (hyrja - zbulimi kur kufjet ngrihen ose vendosen poshtë)

- Kunjat 22 dhe 20 (Raspberry Pi GPIO 25 dhe toka) përdoren për t'u lidhur me ndërruesin e modulit të zërit (dalja - veprimi i ziles)

- Për më tepër, kunja 19 (GPIO 10) mund të ketë nevojë të lidhet me ndërprerësin e energjisë GSM HAT, pasi disa versione të HAT nuk mund të fillojnë vetëm me ndezje, por duhet që dikush të shtypë manualisht çelësin "pushtet" në HAT.

- Nga ana e telefonit, ne hoqëm kabllon 4 tela të kufjeve të brendshme dhe u lidhëm me fole audio 3.5 mm nga kufjet e vjetra. Telat e kuq/jeshil janë për mikrofonin e kufjeve dhe Yellow/Black janë për altoparlantin e kufjeve. Në varësi të anës së folesë të përdorur 3.5 mm, mund t'ju duhet të kuptoni tela të përshtatshëm (për ekstraktin e mësipërm për hyrjen e kufjeve GSM HAT), por në rastin tonë mikrofoni ishte i lidhur me mburojën dhe të kuqen, ndërsa telat e altoparlantëve ishin jeshile dhe blu. Në fund, futni folenë 3.5 mm në hyrjen e kufjeve GSM HAT.

Hapi 3: Paketimi përfundimtar dhe shtimi i "Efektit të ziles" të simuluar

Paketimi Final dhe Shtimi i Simuluar
Paketimi Final dhe Shtimi i Simuluar

Ndërsa paketimi përfundimtar i brendshëm siç shihet në foton e mësipërme duket relativisht i zoti, ai kërkoi shumë ngatërrim dhe provë të opsioneve të ndryshme. Kufizimet kryesore ishin hapësira nën numrin rrotullues dhe lidhësit e ngurtë, dhe i gjithë procesi ishte si të bashkosh enigmën.

Ishte shumë me fat që ne ishim në gjendje të përdorim disa postime që tashmë ekzistonin brenda telefonit (ne hoqëm postimet e tjera me mjetin Dremel), dhe të siguronim dërrasat dhe altoparlantin. Por kjo gjithashtu kufizoi pjesën tjetër të hapësirës në dispozicion, e cila përfundimisht na bëri të braktisim idenë origjinale për të shtuar burimin e brendshëm të energjisë së rimbushshme.

Sa i përket "unazës", ne përfunduam duke blerë modul të shëndoshë të regjistrueshëm me bateri. Si një opsion (kur lidhni bordet përmes mikro USB), ekziston një version pa bateri i cili mund të mundësohet drejtpërdrejt nga Raspberry Pi header 5V.

Në të dy rastet, kalimi i jashtëm i kontrollit nga moduli i zërit do të duhej të hiqet dhe telat të lidhen me njërën nga pin GPIO + tokëzimin. Dhe programimi i tonit të ziles në modul është shumë i thjeshtë, thjesht lidheni atë me PC dhe shkarkoni cilindo skedar mp3 që dëshironi të përdorni për veprimin e ziles. Këtu është lidhja me një sit të bukur me shumë tinguj të vjetër zile.

Hapi 4: Softueri dhe integrimi përfundimtar

Softueri dhe Integrimi Final
Softueri dhe Integrimi Final
Softueri dhe Integrimi Final
Softueri dhe Integrimi Final

Mbi bllok -diagramin paraqitni të gjithë përbërësit kryesorë dhe marrëdhëniet e tyre. Në thelb, zbatimi ka nevojë për 3 hyrje diskrete, dhe të paktën 1 dalje diskrete (ne përdorëm 2 DO që nga versioni i GSM HAT që morëm, nuk mund të fillojë automatikisht pa shtypur butonin në HAT, kështu që na duhej të bashkonim tela në atë buton për të detyruar fillimi i HAT kur telefoni është i ndezur).

Sa i përket kodit, ai ishte shkruar në Python 2.7, kështu që nëse instaloni/përdorni versionin 3.x dhe më të lartë, mund të ketë disa gjëra që do të duheshin ndryshuar (e qartë është një deklaratë "print"). Që kodi të funksionojë siç duhet, ka disa biblioteka Python që duhet të shtohen së pari, si:

- gpiozero (nevojitet për ndërfaqen Raspberry Pi GPIO)

- re (biblioteka e rregullt e shprehjes - për analizimin e mesazheve SMS në hyrje, instaloni nëse nuk është pjesë e instalimit të paracaktuar të Python)

- serial (për t'u lidhur me GSM HAT - nevojitet edhe nëse lidheni përmes mikro USB, instaloni nëse nuk është pjesë e instalimit të paracaktuar të Python)

Gjithashtu, ka 2 vende në kodin e bashkangjitur që duhet të modifikohen/përshtaten në varësi të zbatimit përfundimtar (ose 3 vende, nëse përdoren kunja të ndryshme GPIO). E para lidhet me numrin që dëshironi të përdorni për përcjelljen e mesazheve:

# ******************************** FORWARDING_NUMBER = "5551234567" # vini këtu telefonin ku dëshironi mesazhet tuaja të përcillet

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

Dhe e dyta është për vendosjen e portit serik:

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

# SIM868 inicimi dhe rutinessim868 = serial. Serial ("/dev/ttyS0", 115200)

# sigurohuni që /dev /ttyS0 është i përshtatshëm për konfigurimin tuaj

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

Kodi u ndërtua si makinë shtetërore, e përshkruar në diagramin e mësipërm. Shumicën e kohës telefoni është në gjendje IDLE, duke pritur për ngjarjet: 1. Thirrja hyrëse (e cila do ta çojë telefonin në gjendje RING)

2. Mesazhi SMS hyrës - i cili/mund të përcillet automatikisht në një telefon tjetër

3. Ngritja e kufjeve, në përgatitje për daljen në telefon (e çon telefonin në gjendje DIAL)

4. Thirrja e një karakteri të veçantë pa ngritjen e kufjeve (sipas kodit aktual, thirrja e telefonit të mbyllur "#")…

Ka shumë komente të përfshira në kod, të cilat duhet të ndihmojnë në leximin dhe kuptimin e tij. Ne i lamë disa gjëra të papërfunduara, si shtimi i opsionit të thirrjes së shpejtë, ose dërgimi i mesazhit të statusit, ose…

Sa i përket mënyrës se si të funksionojë kodi automatikisht kur aplikohet energjia, ne zgjodhëm ta zbatojmë atë si shërbim, i cili mund të bëhet siç përshkruhet këtu. Thjesht bëni sa më poshtë:

- shkarkoni skedarët e bashkangjitur më poshtë "rotaryPhoneStateMachine.txt" dhe "myphone.txt" dhe i riemërtoni ato në "rotaryPhoneStateMachine.py" dhe "myphone.service" (për ndonjë arsye të çuditshme, serveri Instructables nuk lejon ngarkimin e disa llojeve të skedarëve)

- vendosni "rotaryPhoneStateMachine.py" në dosjen /home /pi

- vendosni "myphone.service" në/etc/systemd/system

- aktivizoni shërbimin me komandën "sudo systemctl aktivizoni myphone.service" (pasi të keni testuar gjithçka)

Recommended: