Isi kandungan:

Telefon Mudah Alih Putar Gaya Retro: 4 Langkah (dengan Gambar)
Telefon Mudah Alih Putar Gaya Retro: 4 Langkah (dengan Gambar)

Video: Telefon Mudah Alih Putar Gaya Retro: 4 Langkah (dengan Gambar)

Video: Telefon Mudah Alih Putar Gaya Retro: 4 Langkah (dengan Gambar)
Video: Cara mengukur tanah menggunakan Kamera HP 2024, Jun
Anonim
Telefon bimbit Putar Gaya Retro
Telefon bimbit Putar Gaya Retro

Projek ini didorong oleh keperluan praktikal dan ingin melakukan sesuatu yang menyeronokkan.

Seperti kebanyakan keluarga moden, kami berhenti mempunyai telefon "rumah" sebenar (berkabel) bertahun-tahun yang lalu. Sebagai gantinya, kami mempunyai kad SIM tambahan yang dikaitkan dengan nombor rumah "lama" kami, yang saya bawa dalam telefon bimbit dwi-sim saya. Ini baik sebagai persediaan untuk sebahagian besar masa, tetapi tidak berfungsi dengan baik dalam beberapa kes, seperti ketika ibu bapa kita berkunjung (mereka adalah generasi lama - tanpa telefon bimbit, dan saya tidak dapat menghubungi mereka di rumah kami ketika berada jauh kerana telefon "rumah" kami ada bersama saya). Ini juga diperkuat ketika saya menukar telefon saya (telefon baru mempunyai slot sim tunggal). Oleh itu, adalah idea yang baik untuk mencari cara untuk mempunyai telefon gaya "rumah" yang dapat menggunakan kad SIM tambahan kami.

Sejauh yang menggembirakan, kebanyakan kanak-kanak pada masa ini tidak tahu bagaimana telefon bimbit putar lama berfungsi, atau bahawa mereka ada seperti itu. Di bahagian dunia tempat saya dan isteri berasal, kami menggunakan ungkapan "putar nombor" untuk mendail, yang membingungkan bagi penduduk yang lebih muda, kerana "mengapa ada orang yang memutar telefon untuk menelefon". Oleh itu, saya berpendapat bahawa anak saya (yang aktif dalam projek ini) dapat memperoleh pengalaman menggunakan telefon putar.

Sudah tentu, saya juga yakin bahawa telefon "baru" ini akan menjadi topik perbualan yang baik ketika kita mempunyai rakan dan saudara. Atau lebih baik lagi, mengambil telefon dengan kami semasa melawat rakan, mengejutkan orang yang mempunyai telefon bimbit retro yang berfungsi sepenuhnya.

Semasa projek, kami mengubah beberapa tujuan reka bentuk asal. Sebagai contoh, saya memikirkan untuk memasukkan bateri luaran yang boleh dicas semula ke dalam telefon supaya dapat dibawa dengan mudah, tetapi akhirnya menyedari bahawa ini tidak perlu (kerana jenis telefon ini secara semula jadi tetap berada di satu tempat, sehingga boleh sentiasa terpasang ke outlet). Terdapat beberapa "jalan pintas" lain yang dapat kami ambil, yang menjadikan projek ini agak lurus dan tidak terlalu kompleks.

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

Sebagai bahan, saya pada awalnya berharap agar kami dapat memperoleh telefon putar lama dari ibu bapa saya dan menggunakan sebahagian besar bahagiannya (shell telefon, putar putar, alat dengar, dll.), Yang akan mengurangkan kos keseluruhan projek. Itu akhirnya tidak berlaku kerana COVID-19, yang menghalang perjalanan kami yang dirancang ke Eropah (keluarga pelawat), dan sebaliknya kami hanya menemui dan membeli telefon putar baru di Amazon (saya tidak berpuas hati dengan pilihan dan harga di eBay). Ini tidak apa-apa, kerana ia memberikan beberapa fungsi tambahan yang menarik, kerana kami mendapati telefon dail berputar dengan pilihan dail tambahan (* dan #), biasanya tidak tersedia pada telefon lama.

Bahagian utama projek ini adalah GSM / GPRS HAT yang sudah tersedia (kami tidak memerlukan versi 4G), dan yang dapat dikendalikan secara langsung dengan Raspberry Pi atau papan serupa. Dalam kes kami, kami mempunyai papan Raspberry Pi Zero kecil yang tidak kami gunakan secara aktif (dari projek anak saya yang lebih tua).

Sangat menarik bahawa sebahagian besar perubahan pemikiran dan reka bentuk dilakukan di sekitar bahagian projek yang agak sederhana dan kecil - membuat tindakan berdering. Seperti yang mereka ketahui dengan telefon lama, deringan gaya lama yang khas dihasilkan oleh "loceng" yang dipacu oleh 40-60 VAC, yang sukar dilakukan sebagai sebahagian daripada projek ini. Saya akhirnya memutuskan untuk menyederhanakan bahagian projek itu, dan berakhir dengan penyelesaian yang agak mudah dengan menggunakan modul suara yang dapat dirakam yang biasanya merupakan sebahagian daripada kad ucapan. Terdapat beberapa pilihan lain, tetapi ini benar-benar berkesan dan merupakan penyelesaian yang agak murah.

Bekalan

  • Raspberry Pi Zero W
  • Waveshare GSM / GPRS / GNSS / Bluetooth HAT
  • Modul Bunyi yang Boleh Dirakam, Tombol Tekan Diaktifkan
  • (Lama) Telefon Putar
  • Kad Micro SD (untuk Raspberry Pi), kabel / pin, fon kepala lama, dll.

Langkah 1: Menyiapkan Telefon

Menyiapkan Telefon
Menyiapkan Telefon

Telefon berkabel lama adalah peranti yang agak mudah. Seperti yang dapat dilihat dari gambar dengan telefon asal yang dipisahkan, bahagian yang dapat digunakan kembali adalah cengkerang telepon utama termasuk putar putar dan alas, alat dengar dan suisnya, sementara selebihnya dikeluarkan - loceng loceng dan papan kawalan.

Apa yang sangat baik dengan model telefon ini ialah kami bukan sahaja dapat menggunakan dail putar tetapi juga penyambungnya, yang dapat disambungkan terus ke header pada Raspberry Pi. Harus diingat bahawa penyambung ini mempunyai 3 wayar, satu untuk rujukan, dan 2 akan memasukkan input diskrit pada Raspberry Pi. Dengan logik yang sesuai (ditangkap dalam kod terlampir), ini membolehkan pengesanan bila dail dihidupkan, dan nombor mana yang dipilih.

Perkara yang sama berlaku untuk suis headset, yang mempunyai penyambung yang dapat langsung dipasang ke header. Ini adalah logik yang sederhana, kerana hanya memerlukan rujukan dan satu input tersendiri.

Seperti yang dijangkakan, kabel alat dengar mempunyai 4 wayar, dengan masing-masing 2 untuk pembesar suara dan mikrofon tahap rendah. Oleh kerana HAT yang kami gunakan mempunyai bicu audio 3.5 mm untuk fon kepala, saya akhirnya menghubungkan 4 wayar tersebut ke salah satu fon kepala lelaki 3.5 mm fon kepala lama.

Satu lagi perkara menarik yang berguna dari model telefon ini ialah memasang tiang dari pangkalan telefon. Walaupun kami perlu memotong beberapa dari mereka untuk memberi ruang pada papan, kami masih dapat menggunakan semula yang lain, dan mengamankan papan kami. Ini adalah rehat yang baik, dan menjimatkan masa kita.

Langkah 2: Menggabungkan Perkara

Menggabungkan Perkara
Menggabungkan Perkara
Menggabungkan Perkara
Menggabungkan Perkara
Menggabungkan Perkara
Menggabungkan Perkara

Untuk bukti konsep yang mudah, memadai menghubungkan Raspberry Pi dan GSM HAT secara langsung, dan pasangkan fon kepala biasa ke GSM HAT. Saya dapat menggunakan penyediaan itu bersama-sama dengan aplikasi MiniCom (menggerakkan port bersiri Raspberry Pi, yang disambungkan secara langsung ke GSM HAT) untuk memeriksa dengan cepat bahawa kad SIM saya berfungsi dan saya dapat memanggil dan menghantar / menerima mesej SMS dengan penyediaan itu.

Oleh kerana orang lain mungkin berminat untuk melakukan itu (sangat menyenangkan untuk menguji persediaan baru dengan cepat), berikut adalah petunjuk bagaimana melakukannya (jelas, berdasarkan andaian papan yang sama / serupa):

- Pasang dan konfigurasikan OS pada Raspberry Pi (Saya menggunakan versi Lite OS, yang hadir tanpa GUI).

- Pasang GSM HAT (dengan kad SIM terpasang) ke Raspberry Pi (pastikan bahawa GSM HAT mempunyai pilihan suis UART yang sesuai berdasarkan jenis sambungan, lihat pautan di bawah untuk manual HAT). Untuk langkah ini, anda mungkin memerlukan versi Raspberry Pi yang telah dipasang penyambung header, dalam kes ini saya perlu memasangnya (sejak saya menggunakan Pi zero, yang secara lalai datang tanpa header). Sebagai alternatif, pilihan yang lebih baik adalah menggunakan kabel USB mikro untuk menyambungkan kedua-dua kad (kedua-dua Raspberry Pi dan GSM HAT mempunyai USB mikro)

- Aktifkan penggunaan port bersiri Raspberry Pi jika menghubungkan GSM HAT melalui port bersiri (secara lalai, port Raspberry Pi ia digunakan untuk konsol). Untuk melakukannya, anda perlu mengikuti arahan untuk raspi-config (lihat pautan "konfigurasi" di atas), pilihan antara muka - membolehkan SSH dan pilihan bersiri. Sekiranya menggunakan versi Lite OS, anda mungkin juga perlu "menyambung ke rangkaian tanpa wayar" dan mengaktifkan SSH (lihat arahan dari atas "konfigurasi" pautan).

- Sambungkan Raspberry Pi ke monitor dan papan kekunci (atau akses melalui ssh jauh)

- Gunakan MiniCom atau aplikasi bersiri yang serupa untuk mengendalikan HAT secara manual melalui port yang sesuai (untuk port setup saya adalah "/ dev / ttyS0", akan berbeza jika menggunakan micro USB). Pasang MiniCom dengan "sudo apt-get install minicom", dan setelah dipasang mulakan dengan "minicom -D / devtyS0" (atau port mana yang digunakan).

- Gunakan manual GSM HAT atau manual AT Command untuk menggerakkan pelbagai fungsi HAT (kirim SMS, buat panggilan, dll.). Setelah disambungkan dengan betul, GSM HAT akan menjawab dengan "OK" apabila ditanyakan dengan perintah "AT". Untuk memeriksa sama ada kad SIM didaftarkan dengan betul, gunakan perintah "AT + CREG?", Yang juga harus mengembalikan "OK". Anda juga boleh mengesahkan penyedia rangkaian dengan "AT + COPS?", Atau periksa sendiri nombor telefon dengan "AT + CNUM"

Untuk mengintegrasikan bahagian yang diperlukan, kami membuat kabel 16 pin khusus untuk Raspberry Pi ke GSM HAT, kerana kami memerlukan beberapa pin IO tujuan umum lain untuk membaca putar putar, keadaan suis alat dengar dan untuk menggerakkan loceng loceng (juga untuk memulakan secara automatik GSM HAT semasa power-up / inisialisasi). Saya cuba menggunakan beberapa wayar pelindung luar untuk Raspberry Pi untuk tujuan itu, dan walaupun berfungsi dengan baik untuk menyambung dan menguji dengan cepat, saya tidak begitu senang dengan kualiti, dan akhirnya membuat penyambung 16 pin saya sendiri.

Cara lain untuk melakukan hubungan antara Raspberry Pi dan GSM HAT adalah melalui kedua-dua papan port USB mikro (dan sekali lagi, anda perlu menetapkan suis UART pada GSM HAT dengan betul), dan itu mungkin penyelesaian yang lebih cepat dan lebih mudah. Anda boleh melakukannya dengan mudah jika anda mendapat kabel yang sesuai (yang akan menjimatkan masa dan usaha anda untuk membuat kabel) - jangan lupa menukar port yang digunakan oleh perisian / aplikasi.

Setelah menyambungkan papan (dengan mikro USB), selebihnya mudah. Ikuti rajah di atas, di mana pin yang ditunjukkan ada kaitan dengan kod yang dilampirkan pada akhir arahan ini. Khususnya:

- Pin 35, 37 dan 39 (dikaitkan dengan Raspberry Pi GPIO 19, 26 dan ground) digunakan untuk menyambung ke dail (pin input). Telefon yang kami pilih telah membina penyambung 3 wayar, dengan wayar merah dan hitam dikaitkan dengan pin NO dan NC, dan wayar kuning menjadi biasa.

- Pin 23 dan 25 (Raspberry Pi GPIO 11 dan ground) digunakan untuk menyambungkan suis alat dengar (input - mengesan bila alat dengar diangkat atau diletakkan)

- Pin 22 dan 20 (Raspberry Pi GPIO 25 dan ground) digunakan untuk menyambung ke suis modul bunyi (output - tindakan cincin)

- Selain itu, pin 19 (GPIO 10) mungkin perlu disolder ke suis kuasa GSM HAT, kerana beberapa versi HAT tidak dapat dimulakan hanya dengan power-up, tetapi memerlukan seseorang secara manual menekan suis "power" pada HAT.

- Di sisi telefon, kami menanggalkan kabel wayar 4 wayar dalaman, dan menyambung ke bicu audio 3.5 mm dari fon kepala lama. Wayar Merah / Hijau adalah untuk mikrofon alat dengar, dan Kuning / Hitam adalah untuk pembesar suara alat dengar. Bergantung pada sisi bicu 3,5 mm yang digunakan, anda mungkin perlu mengetahui wayar yang sesuai (per ekstrak di atas untuk input fon kepala GSM HAT), tetapi dalam kes kami mikrofon disambungkan ke perisai dan merah, sementara kabel pembesar suara berwarna hijau dan biru. Pada akhirnya, pasangkan bicu 3.5 mm ke input fon kepala GSM HAT.

Langkah 3: Pembungkusan Akhir dan Menambah "Ringing Effect" Simulasi

Pembungkusan Akhir dan Penambahan Simulasi
Pembungkusan Akhir dan Penambahan Simulasi

Walaupun pembungkusan dalaman akhir seperti yang terlihat pada gambar di atas tampak relatif rapi, ia memerlukan banyak permainan dan pilihan yang berbeza. Kekangan utama adalah ruang di bawah putar putar dan penyambung tegar, dan keseluruhan prosesnya seperti mengumpulkan teka-teki.

Sangat beruntung kerana kami dapat menggunakan beberapa catatan yang sudah ada di dalam telefon (kami membuang catatan lain dengan alat Dremel), dan untuk mengamankan papan dan pembesar suara. Tetapi itu juga membatasi sisa ruang yang ada, yang akhirnya mendorong kita untuk meninggalkan idea asal untuk menambahkan sumber kuasa dalaman yang boleh dicas semula.

Bagi "ring", kami akhirnya membeli modul suara yang boleh dirakam dengan bateri. Sebagai pilihan (ketika menyambungkan papan melalui USB mikro), ada versi tanpa bateri yang boleh digerakkan secara langsung dari header Raspberry Pi 5V.

Dalam kedua kes tersebut, suis kawalan luaran dari modul suara perlu dilepaskan dan wayar disambungkan ke salah satu pin GPIO + ground. Dan nada dering pengaturcaraan ke dalam modul sangat mudah, sambungkan sahaja ke PC dan muat turun fail mp3 mana yang anda mahu gunakan untuk tindakan deringan. Inilah pautan ke laman web yang bagus dengan banyak bunyi dering lama.

Langkah 4: Perisian dan Integrasi Akhir

Perisian dan Integrasi Akhir
Perisian dan Integrasi Akhir
Perisian dan Integrasi Akhir
Perisian dan Integrasi Akhir

Gambarajah blok di atas menunjukkan semua komponen utama dan hubungannya. Pada dasarnya, pelaksanaan memerlukan 3 input diskrit, dan sekurang-kurangnya 1 output diskrit (kami menggunakan 2 DO kerana versi GSM HAT yang kami dapat tidak dapat dimulakan secara automatik tanpa menekan butang pada HAT, jadi kami perlu menyolder wayar ke butang itu untuk memaksa memulakan HAT ketika telefon dihidupkan).

Sejauh kodnya, ia ditulis dalam Python 2.7, jadi jika anda memasang / menggunakan versi 3.x dan lebih tinggi, mungkin ada beberapa perkara yang perlu diubah (yang jelas adalah pernyataan "cetak"). Agar kod berfungsi dengan betul, terdapat beberapa perpustakaan Python yang perlu ditambahkan terlebih dahulu, seperti:

- gpiozero (diperlukan untuk antara muka Raspberry Pi GPIO)

- re (perpustakaan ekspresi biasa - untuk menguraikan mesej SMS masuk, pasang jika bukan sebahagian daripada pemasangan Python lalai)

- bersiri (untuk menyambung ke GSM HAT - diperlukan walaupun menyambung melalui USB mikro, pasang jika bukan sebahagian daripada pemasangan Python lalai)

Juga, ada 2 tempat dalam kod terlampir yang harus diubah / disesuaikan bergantung pada pelaksanaan akhir (atau 3 tempat, jika pin GPIO yang berbeda digunakan). Yang pertama berkaitan dengan nombor yang ingin anda gunakan untuk meneruskan pesanan:

# *********************************** FORWARDING_NUMBER = "5551234567" # letakkan di sini telefon di mana anda mahu mesej anda untuk dimajukan

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

Dan yang kedua adalah untuk tetapan port bersiri:

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

# SIM868 inisialisasi dan rutinessim868 = bersiri. Serial ("/ dev / ttyS0", 115200)

# pastikan bahawa / dev / ttyS0 sesuai untuk persediaan anda

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

Kod dibina sebagai mesin negara, yang dijelaskan dalam rajah di atas. Sebilangan besar masa telefon dalam keadaan IDLE, menunggu acara: 1. Panggilan masuk (yang akan mendorong telefon ke keadaan RING)

2. Mesej SMS masuk - yang / dapat diteruskan secara automatik ke telefon lain

3. Mengangkat set kepala, sebagai persediaan untuk keluar keluar (mendorong telefon ke keadaan DIAL)

4. Mendail watak khas tanpa mengangkat headset (mengikut kod semasa, memanggil "#" telefon penutup) …

Terdapat banyak komen yang disertakan dalam kod, yang semestinya membantu membacanya dan memahaminya. Kami meninggalkan beberapa perkara yang belum selesai, seperti menambahkan pilihan panggilan cepat, atau menghantar mesej status, atau…

Sejauh cara menjalankan kod secara automatik ketika daya diterapkan, kami memilih untuk menerapkannya sebagai layanan, yang dapat dilakukan seperti yang dijelaskan di sini. Cukup lakukan perkara berikut:

- muat turun fail yang dilampirkan di bawah "rotaryPhoneStateMachine.txt" dan "myphone.txt" dan namakan semula menjadi "rotaryPhoneStateMachine.py" dan "myphone.service" (atas sebab yang pelik, pelayan Instructables tidak membenarkan memuat naik jenis fail tertentu)

- letakkan "rotaryPhoneStateMachine.py" ke dalam folder / home / pi

- masukkan "myphone.service" ke dalam / etc / systemd / system

- aktifkan perkhidmatan dengan arahan "sudo systemctl enabled myphone.service" (setelah menguji semuanya)

Disyorkan: