Daftar Isi:
- Langkah 1: Lepaskan Dial Dari Telepon
- Langkah 2: Identifikasi Sakelar
- Langkah 3: Buat Sirkuit
- Langkah 4: Kembangkan Kode
- Langkah 5: Periksa Berhasil
- Langkah 6: Kaitkan Ini Menjadi Sesuatu yang Berguna
Video: Menghubungkan Rotary Phone Dial ke Arduino: 6 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:59
Telepon putar lama dapat digunakan untuk sejumlah tujuan dalam proyek Arduino Anda - gunakan sebagai perangkat input baru, atau gunakan Arduino untuk menghubungkan telepon putar ke komputer Anda. Ini adalah panduan yang sangat mendasar yang menjelaskan cara menghubungkan dial ke Arduino, dan dapatkan nomor yang dihubungi diteruskan ke komputer melalui tautan serial Arduino.
Langkah 1: Lepaskan Dial Dari Telepon
Langkah pertama adalah melepas unit dial dari telepon. Saya menggunakan telepon GPO dari beberapa jenis dari tahun 1970-an. Pada telepon ini, dial muncul langsung - saya hanya perlu memberikan tarikan. Jika tidak, Anda mungkin harus membuka telepon dan mencari cara untuk melepaskannya. Ada lima kabel yang terhubung ke bagian belakang unit dial. Di ponsel saya, ini adalah koneksi sekop biasa, jadi saya melonggarkan sekrup dan menariknya keluar. Jika Anda ingin memasang kembali ponsel Anda, ingatlah untuk mencatat kabel warna mana yang terhubung ke koneksi mana.
Langkah 2: Identifikasi Sakelar
Setelah dial keluar, seharusnya relatif mudah untuk melihat bagaimana dial mengubah gerakan putar menjadi pulsa. Coba putar dial dengan tangan dan perhatikan gerakan di bagian belakang. Anda akan melihat sakelar membuat dan memutus sirkuit dengan cepat - jadi jika Anda menekan '9', sakelar tersebut akan aktif sembilan kali. Bagi Anda yang mungkin belum pernah menggunakan pemutar putar sebelumnya - ingat bahwa panggilan hanya terjadi ketika Anda membiarkan buka nomornya dan biarkan berputar kembali. Saya telah mendokumentasikan cara kerjanya untuk ponsel saya di Catatan foto di bawah ini. Ada juga video buram tentang mekanisme kerja.
Langkah 3: Buat Sirkuit
Setelah Anda menemukan sakelar yang sedang dibuat dan rusak, Anda harus dapat mengidentifikasi koneksi dengan mengikuti kabel kembali ke terminal koneksi. Dalam kasus saya, kedua sisi sakelar terhubung ke dua terminal paling kiri. Hubungkan terminal ini ke beberapa kabel jumper, dan buat prototipe! Sakelar di dial saya selalu aktif, dan rusak untuk setiap pulsa saat melakukan panggilan, jadi saya menggunakan rangkaian yang sangat sederhana di bawah ini. Pin 2 akan menjadi TINGGI untuk setiap pulsa saat dial berputar. Ketika telepon tidak dihubungi, sakelar di unit dial ditutup (disebut sakelar NORMAL TERTUTUP, untuk alasan yang jelas) sehingga sirkuit menghubungkan pin 2 ke ground (yang ke Arduino RENDAH). Ini karena hambatan yang melalui resistor 470 ohm jauh lebih sedikit daripada resistor 10K. Ketika telepon dihubungi, sakelar membuka dan menutup dengan cepat (untuk 9, ia akan membuka dan menutup lagi sembilan kali, ingat). Ketika sakelar terbuka, pin 2 tidak terhubung ke ground - melainkan terhubung ke suplai 5V melalui resistansi 10470 ohm. Ini ditafsirkan oleh Arduino sebagai TINGGI. Jika dial Anda memiliki sakelar NORMALLY OPEN, maka menukar posisi resistor 10K dan dial harus berhasil.
Langkah 4: Kembangkan Kode
Sekarang kita memerlukan beberapa kode untuk Arduino untuk menghitung pulsa dan mengirim nomor total per nomor yang dipanggil kembali melalui port serial. Kode saya di bawah ini. Karena kita berurusan dengan mekanik di sini, Anda mungkin berbeda. Cobalah bermain-main dengan konstanta debounce dan konstanta 'berapa lama kita menunggu sebelum menganggap dial telah selesai berputar'. Saya sudah mencoba mengomentarinya serapi mungkin. Mudah-mudahan cukup sederhana.int needToPrint = 0;int count;int in = 2;int lastState = LOW;int trueState = LOW;long lastStateChangeTime = 0;int clear = 0;// constantsint dialHasFinishedRotatingAfterMs = 100;int debounceDelay = 10; void setup(){ Serial.begin(9600); pinMode(dalam, INPUT);}void loop(){ int membaca = digitalRead(dalam); if ((millis() - lastStateChangeTime) > dialHasFinishedRotatingAfterMs) { // dial tidak dihubungi, atau baru saja selesai dihubungi. if (needToPrint) { // jika baru saja selesai dipanggil, kita perlu mengirimkan nomor ke baris // serial dan mengatur ulang hitungan. Kami mod hitungan dengan 10 karena '0' akan mengirim 10 pulsa. Serial.print(hitung % 10, DES); needToPrint = 0; menghitung = 0; dibersihkan = 0; } } if (membaca != lastState) { lastStateChangeTime = milis(); } if ((millis() - lastStateChangeTime) > debounceDelay) { // debounce - ini terjadi setelah distabilkan if (membaca != trueState) { // ini berarti sakelar baru saja beralih dari tertutup->terbuka atau sebaliknya. trueState = membaca; if (trueState == HIGH) { // menambah jumlah pulsa jika sudah tinggi. menghitung++; needToPrint = 1; // kita perlu mencetak nomor ini (setelah dial selesai berputar) } } } lastState = reading;}
Langkah 5: Periksa Berhasil
Periksa bekerja dengan membuka jendela serial (saya menggunakan layar pada mesin unix, Anda mungkin ingin menggunakan Hyperterm atau serupa pada Windows), dan coba tekan beberapa nomor. Pastikan bahwa program serial diatur untuk membaca dari USB- > adaptor serial di Arduino Anda (periksa menu Tools->Serial Port di perangkat lunak Arduino jika Anda lupa apa itu), dan baud rate 9600 bps. Anda akan melihat nomor yang benar muncul saat dipanggil.
Langkah 6: Kaitkan Ini Menjadi Sesuatu yang Berguna
Saya datang dengan file Quartz Composer di Mac saya untuk mengambil input dan menampilkannya dengan baik ke layar. Setelah di mesin sebagai data serial, Anda dapat melakukan apa saja dengan itu. Menunggu untuk mendengar ide-ide Anda!Saya akan membuat video 'beraksi' dan mencetak nomor ke layar segera setelah saya bisa mendapatkan seseorang untuk memegang kamera untuk saya - berharap saya memiliki tiga tangan.
Direkomendasikan:
Ponsel Rotary Dial Gaya Retro: 4 Langkah (dengan Gambar)
Ponsel Rotary Dial Gaya Retro: Proyek ini didorong oleh kebutuhan praktis dan keinginan untuk melakukan sesuatu yang menyenangkan. Seperti kebanyakan keluarga modern, kami berhenti memiliki "rumah" yang sesungguhnya. telepon (dijalin dgn tali) bertahun-tahun yang lalu. Sebagai gantinya, kami memiliki kartu SIM tambahan yang terkait dengan "lama" kami. nomor rumah
Vintage Rotary Phone Dial PC Volume Control: 7 Langkah (dengan Gambar)
Vintage Rotary Phone Dial PC Volume Control: Jika Anda seperti saya, Anda cukup sering mengubah volume di komputer Anda. Beberapa video lebih keras daripada yang lain, terkadang Anda ingin volume dimatikan di komputer saat Anda mendengarkan podcast atau musik, dan Anda mungkin perlu
Menghubungkan Keypad Dengan Arduino. [Metode Unik]: 7 Langkah (dengan Gambar)
Menghubungkan Keypad Dengan Arduino. [Metode Unik]: Halo, dan selamat datang di instruksi pertama saya! :) Dalam instruksi ini saya ingin berbagi perpustakaan yang luar biasa untuk menghubungkan keyboard dengan arduino - 'Perpustakaan kata sandi' termasuk 'Perpustakaan Keypad'. Perpustakaan ini menyertakan fitur terbaik yang kami
Iphone berbulu! DIY PHONE CASE Life Hacks - Hot Glue Phone Case: 6 Langkah (dengan Gambar)
Iphone berbulu! DIY PHONE CASE Life Hacks - Hot Glue Phone Case: Saya yakin Anda belum pernah melihat iPhone berbulu! Nah, dalam tutorial casing ponsel DIY ini, Anda pasti akan melakukannya! :)) Karena ponsel kita saat ini sedikit mirip dengan identitas kedua kita, saya telah memutuskan untuk membuat " miniatur saya "…Sedikit menyeramkan, tapi sangat menyenangkan
Raspberry Pi Rotary Phone Case: 10 Langkah (dengan Gambar)
Raspberry Pi Rotary Phone Case: Saya sedang mencari proyek yang menyenangkan untuk Raspberry Pi saya, dan memutuskan sebuah case akan menyenangkan. Saya menemukan telepon putar lama dan mengubahnya menjadi kasing untuk Pi saya. Saya membutuhkan suku cadang senilai $40, Anda mungkin bisa melakukannya dengan harga lebih murah. Seluruh proyek mengambil