INHOUDSOPGAWE:

Retro -styl draaiknop -selfoon: 4 stappe (met foto's)
Retro -styl draaiknop -selfoon: 4 stappe (met foto's)

Video: Retro -styl draaiknop -selfoon: 4 stappe (met foto's)

Video: Retro -styl draaiknop -selfoon: 4 stappe (met foto's)
Video: Foto Traceren, Nog nooit zo makkelijk! 2024, Junie
Anonim
Retro -styl draaiknop -selfoon
Retro -styl draaiknop -selfoon

Hierdie projek is gedryf deur beide praktiese behoefte en die begeerte om iets lekker te doen.

Soos die meeste moderne gesinne het ons baie jare gelede opgehou om 'n regte 'huis' telefoon te hê (met 'n koord). In plaas daarvan het ons 'n ekstra SIM-kaart wat verband hou met ons 'ou' huisnommer, wat ek in my dual-sim-selfoon gebring het. Dit was meestal goed as 'n opset, maar dit het in sommige gevalle nie die beste gewerk nie, soos toe ons ons ouers besoek het (hulle is 'n ou generasie - sonder selfone, en ek kon hulle nie tuis bel as ek weg was nie) aangesien ons 'tuis' telefoon by my was). Dit is ook versterk toe ek my telefoon skakel ('n nuwe telefoon met 'n enkele SIM -gleuf). Dit was dus 'n goeie idee om 'n telefoon met '' tuis '' styl te vind wat ons ekstra SIM -kaart kan gebruik.

Wat die pret betref, het die meeste kinders deesdae nie veel idee hoe ou draaiknoppe werk nie, of dat hulle selfs so bestaan het nie. In 'n deel van die wêreld waar ek en my vrou vandaan kom, gebruik ons die uitdrukking 'draai die nommer' om te bel, wat verwarrend is vir die jonger bevolking, aangesien 'hoekom iemand die telefoon sou draai om te skakel'. Daarom het ek gedink dat dit gaaf sou wees as my seun (wat aktief aan hierdie projek deelgeneem het) ervaring met 'n roterende telefoon kon kry.

Ek was natuurlik ook seker dat hierdie 'nuwe' telefoon 'n aangename onderwerp sou wees as ons vriende en familie het. Of nog beter: neem die telefoon saam wanneer u vriende besoek, en verras mense met 'n volledig funksionele retro -selfoon.

Tydens die projek het ons 'n paar van die oorspronklike ontwerpdoelwitte verander. Ek het byvoorbeeld daaraan gedink om 'n herlaaibare eksterne battery in die telefoon in te sluit, sodat ek dit maklik kan wegneem, maar ek het uiteindelik besef dat dit nie nodig is nie (aangesien hierdie tipe telefoon natuurlik altyd op een plek bly, so dit kan moet altyd in die stopcontact gekoppel wees). Daar was 'n paar ander 'kortpaaie' wat ons kon gebruik, wat die projek relatief eenvoudig en nie te ingewikkeld gemaak het nie.

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

Wat materiaal betref, het ek oorspronklik gehoop dat ons 'n ou roterende telefoon by my ouers kan kry en die meeste onderdele (telefoonomhulsel, draaiknop, headset, ens.) Kan gebruik, wat die koste van die totale projek kan verlaag. Dit het uiteindelik nie gebeur nie weens COVID-19, wat ons beplande reis na Europa (besoekende familie) verhinder het, en in plaas daarvan het ons net die nuwe draaiknop-telefoon op Amazon gevind en gekoop (ek was nie tevrede met die opsies en pryse op eBay nie). Dit was goed, aangesien dit 'n paar interessante bykomende funksies bied, aangesien ons 'n draaiknop met 'n ekstra skakelaar (* en #) gevind het, wat gewoonlik nie op ou telefone beskikbaar is nie.

Die belangrikste deel van die projek was GSM/GPRS HAT wat geredelik beskikbaar is (ons het nie 'n 4G -weergawe nodig gehad nie) en wat direk beheer kan word met enige Framboos Pi of soortgelyke borde. In ons geval het ons 'n klein Raspberry Pi Zero -bord gehad wat ons nie aktief gebruik het nie (van my seun se ouer projek).

Dit is interessant dat die meeste denk- en ontwerpveranderinge plaasgevind het rondom 'n relatief eenvoudige en klein deel van die projek, wat 'n luidrugtige aksie veroorsaak het. Soos u weet met ou telefone, is 'n kenmerkende lui in die ou styl geproduseer deur 'klokke' aangedryf deur 40-60 VAC, wat moeilik was as deel van hierdie projek. Ek het uiteindelik besluit om die deel van die projek te vereenvoudig, en ek het 'n relatiewe eenvoudige oplossing gekry deur 'n opneembare klankmodule te gebruik, wat gewoonlik deel uitmaak van die groetekaartjies. Daar was 'n paar ander opsies, maar dit het eintlik goed gewerk en was 'n relatief goedkoop oplossing.

Voorrade

  • Framboos Pi Zero W
  • Waveshare GSM/GPRS/GNSS/Bluetooth -hoed

  • Opneembare klankmodule, drukknop geaktiveer
  • (Ou) Rotary Phone
  • Micro SD -kaart (vir Raspberry Pi), kabels/penne, ou koptelefoon, ens.

Stap 1: berei die telefoon voor

Die telefoon voorberei
Die telefoon voorberei

Ou telefoontjies is relatief eenvoudige toestelle. Soos dit op die foto gesien kan word, met die oorspronklike telefoon uitmekaar gehaal, is die herbruikbare onderdele die belangrikste telefoonomhulsel, insluitend 'n draaiknop en 'n voetstuk, 'n headset en die skakelaar, terwyl die res uitgehaal is - 'n lui en 'n bedieningsbord.

Wat baie aangenaam was met hierdie spesifieke telefoonmodel, is dat ons nie net die draaiknop kon gebruik nie, maar ook die aansluiting wat direk in die kop van die Raspberry Pi gekoppel kan word. Daar moet op gelet word dat hierdie aansluiting drie drade het, een vir verwysing en 2 wat diskrete insette op Raspberry Pi het. Met gepaste logika (vasgelê in aangehegte kode), kan dit opspoor wanneer die draaiknop gedraai word en watter nommer gekies is.

Dieselfde geld vir die headset -skakelaar, met 'n aansluiting wat direk in die kopkop kan gekoppel word. Dit is 'n eenvoudige logika, aangesien dit slegs verwysing en een diskrete invoer benodig.

Soos verwag, het die koptelefoonkabel 4 drade, waarvan 2 elk vir 'n laesterkte luidspreker en mikrofoon. Aangesien HAT wat ons gebruik het 'n 3,5 mm -klankaansluiting vir 'n koptelefoon gehad het, kon ek uiteindelik die vier drade aansluit op een van die ou koptelefoonaansluitmate van 3,5 mm.

Nog 'n interessante ding wat nuttig was vir hierdie spesifieke telefoonmodel, was die montering van poste vanaf die telefoonbasis. Terwyl ons 'n paar daarvan moes sny om ruimte vir planke te maak, kon ons ander steeds hergebruik en ons planke beveilig. Dit was 'n lekker wegbreek en spaar ons tyd.

Stap 2: Saamvoeg dinge

Om dinge bymekaar te sit
Om dinge bymekaar te sit
Om dinge bymekaar te sit
Om dinge bymekaar te sit
Om dinge bymekaar te sit
Om dinge bymekaar te sit

Vir 'n eenvoudige bewys van die konsep is dit voldoende om Raspberry Pi en GSM HAT direk aan te sluit en gewone koptelefoon in GSM HAT aan te sluit. Ek kon die opstelling saam met die MiniCom -toepassing (met die Raspberry Pi -seriële poort, wat direk aan die GSM HAT gekoppel is) gebruik om vinnig te kyk of my SIM -kaart werk en dat ek met die opstelling kan bel en stuur/ontvang.

Aangesien ander belangstel om dit te doen (dit is lekker om die nuwe opset vinnig te toets), is die wenke hoe u dit moet doen (natuurlik, gebaseer op die aanname van dieselfde/soortgelyke borde):

- Installeer en konfigureer die bedryfstelsel op Raspberry Pi (ek het Lite OS -weergawe gebruik, sonder 'n GUI).

- Koppel GSM HAT (met geïnstalleerde SIM -kaart) aan die Raspberry Pi (maak seker dat GSM HAT die toepaslike UART -skakelaarskeuse het, gebaseer op die verbindingstipe, sien die onderstaande skakel vir die HAT -handleiding). Vir hierdie stap benodig u moontlik die Raspberry Pi -weergawe met 'n kopkonnekteerder wat reeds geïnstalleer is. In ons geval moes ek dit soldeer (aangesien ek Pi zero gebruik het, wat standaard sonder koptekst kom). Alternatiewelik is 'n beter opsie om 'n mikro -USB -kabel te gebruik om albei kaarte aan te sluit (beide Raspberry Pi en GSM HAT het mikro -USB)

- Aktiveer die gebruik van die seriële poort van die Raspberry Pi as u 'n GSM -hoed via die seriële poort aansluit (standaard word die Raspberry Pi -poort vir konsole gebruik). Om dit te kan doen, moet u die instruksies volg vir raspi -config (sien die skakel hierbo "instel"), koppelvlakopsies - om SSH en seriële opsies moontlik te maak. As u 'n Lite OS -weergawe gebruik, moet u moontlik ook 'koppel aan 'n draadlose netwerk' en SSH aktiveer (sien instruksies van die hierbo "opstel" -skakel).

- Koppel Raspberry Pi aan die monitor en die sleutelbord (of kry toegang tot dit via afstandsbediening ssh)

- Gebruik MiniCom of soortgelyke seriële app om HAT handmatig deur die toepaslike poort te beheer (want my opsetpoort was "/dev/ttyS0", dit sal anders wees as ek mikro -USB gebruik). Installeer MiniCom met "sudo apt -get install minicom", en begin sodra dit geïnstalleer is met "minicom -D /devtyS0" (of watter poort ook al gebruik word).

- Gebruik GSM HAT -handleiding of AT Command -handleiding om verskillende HAT -funksies te bestuur (stuur SMS, bel, ens.). Sodra dit behoorlik gekoppel is, sal GSM HAT antwoord met 'OK' as dit uitgevra word deur 'AT' opdrag. Om te kyk of die SIM -kaart behoorlik geregistreer is, gebruik die opdrag "AT+CREG?", Wat ook "OK" moet gee. U kan ook die netwerkverskaffer met 'AT+COPS?' Verifieer, of u eie telefoonnommer met 'AT+CNUM' nagaan

Om die res van die benodigde onderdele te integreer, het ons 'n pasgemaakte 16 -pins kabel vir Raspberry Pi tot GSM HAT gemaak, aangesien ons 'n paar ander IO -penne vir algemene doeleindes nodig gehad het om die draaiknop, die headset -skakelaar te lees en om die klokkie te stuur (ook om outomaties te begin) GSM-hoed tydens opstart / inisialisering). Ek het daarvoor probeer om 'n paar uitbreekdrade van die rak vir Raspberry Pi te gebruik, en hoewel dit goed gewerk het om vinnig aan te sluit en te toets, was ek nie baie tevrede met die kwaliteit nie, en uiteindelik het ek my eie 16-pins aansluiting gemaak.

'N Ander manier om die verbinding tussen Raspberry Pi en GSM HAT te bewerkstellig, is deur middel van beide USB -poorte (en weer moet u die geskikte UART -skakelaar op GSM HAT instel), en dit kan 'n vinniger en baie eenvoudiger oplossing wees. U kan dit maklik doen as u die toepaslike kabel kry (dit spaar u tyd en moeite om 'n kabel te maak) - moenie vergeet om die poort wat deur sagteware/toepassings gebruik word, te verander nie.

Na die aansluiting van borde (met mikro -USB), is die res maklik. Volg net die diagram hierbo, waar penne wat daar aangebied word, verband hou met die kode wat aan die einde van hierdie instruksie aangeheg is. Spesifiek:

- Pennetjies 35, 37 en 39 (wat verband hou met Raspberry Pi GPIO 19, 26 en gemaal) word gebruik om aan die skakelaar (invoerpenne) te koppel. Die telefoon wat ons gekies het, het reeds drie drade -aansluiting gebou, met rooi en swart draad wat verband hou met NO en NC penne, en geel draad is algemeen.

- Spelde 23 en 25 (Raspberry Pi GPIO 11 en grond) word gebruik vir die aansluiting van die koptelefoonskakelaar (invoer - opspoor wanneer die koptelefoon omhoog of neergesit word)

- Penne 22 en 20 (Raspberry Pi GPIO 25 en grond) word gebruik om aan te sluit op die klankmodule -skakelaar (uitset - ringaksie)

- Boonop moet pen 19 (GPIO 10) aan die GSM HAT-skakelaar gesoldeer word, aangesien sommige weergawes van HAT nie net met die aanskakel kan begin nie, maar dat u iemand met die handskakelaar op HAT moet druk.

- Aan die telefoonkant het ons die interne 4 -draads kabel van die koptelefoon verwyder en met 'n 3,5 mm -aansluiting van die ou koptelefoon gekoppel. Rooi/groen drade is vir 'n koptelefoonmikrofoon, en geel/swart is vir 'n koptelefoonluidspreker. Afhangende van die gebruikte 3,5 mm -aansluiting, moet u moontlik die toepaslike draad uitvind (volgens die uittreksel hierbo vir die ingang van die GSM HAT -koptelefoon), maar in ons geval is die mikrofoon aan die skild en rooi gekoppel, terwyl die luidsprekerdrade groen en blou was. Koppel uiteindelik 3,5 mm -aansluiting in die ingang van die GSM HAT -koptelefoon.

Stap 3: Laaste verpakking en byvoeging van gesimuleerde "lui -effek"

Finale verpakking en byvoeging gesimuleer
Finale verpakking en byvoeging gesimuleer

Alhoewel die finale interne verpakking, soos op die foto hierbo, relatief netjies lyk, het dit baie geknoei en verskillende opsies probeer. Die belangrikste beperkings was die ruimte onder die draaiknop en die stewige verbindings, en die hele proses was soos om 'n legkaart saam te voeg.

Dit was baie gelukkig dat ons verskeie poste wat reeds in die telefoon bestaan het, kon gebruik (ons het ander poste met die Dremel -instrument verwyder) en om borde en luidsprekers te beveilig. Maar dit het ook die res van die beskikbare ruimte beperk, wat uiteindelik daartoe gelei het dat ons die oorspronklike idee laat vaar het om 'n interne herlaaibare kragbron by te voeg.

Wat die 'ring' betref, het ons uiteindelik 'n opneembare klankmodule met 'n battery aangeskaf. As 'n opsie (as u borde met 'n mikro-USB verbind), is daar 'n weergawe sonder batterye wat direk vanaf die Raspberry Pi-kop 5V aangedryf kan word.

In beide gevalle moet die eksterne stuurskakelaar van die klankmodule verwyder word en drade aan een van die GPIO -pen + grond gekoppel word. En die luitoon in die module is baie eenvoudig; verbind dit net met 'n rekenaar en laai die mp3 -lêer af wat u vir die lui wil gebruik. Hier is die skakel na 'n lekker webwerf met baie ou ringgeluide.

Stap 4: Sagteware en finale integrasie

Sagteware en finale integrasie
Sagteware en finale integrasie
Sagteware en finale integrasie
Sagteware en finale integrasie

Bogenoemde blokdiagram bied alle hoofkomponente en hul verwantskappe aan. In wese benodig die implementering 3 diskrete insette en ten minste 1 diskrete uitset (ons het 2 DO's sedert die weergawe van GSM HAT wat ons gekry het, nie outomaties kan begin sonder om op die HAT -knoppie te druk nie, so ons moes die draad aan die knoppie soldeer om te dwing die HAT begin as die telefoon aangeskakel is).

Wat die kode betref, is dit in Python 2.7 geskryf, dus as u weergawe 3.x en hoër installeer/gebruik, is daar dalk 'n paar dinge wat verander moet word (een is duidelik 'print'). Om kode reg te laat werk, is daar 'n paar Python -biblioteke wat eers bygevoeg moet word, soos:

- gpiozero (benodig vir Raspberry Pi GPIO -koppelvlak)

- re (gewone uitdrukkingsbiblioteek - vir die ontleding van inkomende SMS -boodskappe, installeer indien nie deel van die standaard Python -installasie nie)

- reeks (vir verbinding met GSM HAT - benodig selfs as u via mikro -USB aansluit, installeer as dit nie deel is van die standaard Python -installasie nie)

Daar is ook 2 plekke in die aangehegte kode wat moet verander/aangepas word, afhangende van die finale implementering (of 3 plekke, as verskillende GPIO -penne gebruik word). Die eerste een hou verband met die nommer wat u sou wou gebruik om boodskappe deur te stuur:

# ********************************* FORWARDING_NUMBER = "5551234567" # sit die telefoon hier waar u u boodskappe wil hê aangestuur word

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

En die tweede een is vir die instelling van die seriële poort:

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

# SIM868 -inisialisering en rutinessim868 = serial. Serial ("/dev/ttyS0", 115200)

# maak seker dat /dev /ttyS0 geskik is vir u opstelling

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

Die kode is gebou as 'n staatsmasjien, beskryf in die diagram hierbo. Die telefoon is meestal in 'n ledige toestand en wag op gebeure: 1. Inkomende oproep (wat die telefoon in die RING -toestand sal dryf)

2. Inkomende SMS -boodskap - wat outomaties na 'n ander telefoon gestuur kan word

3. Lig die koptelefoon op, ter voorbereiding op uitbel (dryf die telefoon in DIAL-toestand)

4. Spesiale karakter skakel sonder om die headset op te lig (volgens die huidige kode, skakel '#' afgesluit telefoon) …

Daar is baie opmerkings in die kode, wat u moet help om dit te lees en te verstaan. Ons het 'n paar dinge onvoltooid gelaat, soos die byvoeging van 'n snelkiesopsie, of die stuur van 'n statusboodskap, of …

Ten opsigte van hoe om kode outomaties te laat werk wanneer krag aangewend word, het ons gekies om dit as diens te implementeer, wat gedoen kan word soos hier beskryf. Doen eenvoudig die volgende:

- Laai die aangehegte lêers "rotaryPhoneStateMachine.txt" en "myphone.txt" hieronder af en hernoem dit na "rotaryPhoneStateMachine.py" en "myphone.service" (om 'n vreemde rede laat die Instructables -bediener nie sekere lêertipes toe nie)

- plaas "rotaryPhoneStateMachine.py" in die /home /pi -lêergids

- plaas "myphone.service" in/etc/systemd/system

- aktiveer diens met die opdrag "sudo systemctl aktiveer myphone.service" (nadat u alles getoets het)

Aanbeveel: