Daftar Isi:
- Langkah 1: Bahan
- Langkah 2: Perencanaan
- Langkah 3: Cetak 3D
- Langkah 4: Perakitan - Lepaskan LED
- Langkah 5: Perakitan - Tambahkan Melalui Header Lubang
- Langkah 6: Perakitan - Pasang LED
- Langkah 7: Perakitan - Pasang PhidgetIR
- Langkah 8: Perakitan - Menambahkan Tombol
- Langkah 9: Perakitan - Menyatukan Semuanya
- Langkah 10: Perangkat Lunak - Kode
- Langkah 11: Perangkat Lunak - Perintah CIR
- Langkah 12: Menjalankan Program
- Langkah 13: Hasil
Video: Teknologi untuk Kakek Anda: 13 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Berapa kali Anda pergi ke rumah kakek-nenek Anda untuk membantu "masalah teknologi" yang berakhir dengan kabel listrik yang dicabut, baterai remote yang mati atau tidak dapat mengganti sumber di TV mereka? Saya tahu bahwa bagi saya, ini cukup sering terjadi. Sementara sebagian besar masalah mereka dapat diselesaikan dengan hanya menjalankan ke toko untuk beberapa AA baru, terkadang mereka dapat mengambil manfaat dari solusi yang lebih disesuaikan.
Misalnya, kakek pacar saya mendapatkan televisi baru dan kami mencoba mengajarinya cara mengubah sumber sehingga dia dapat beralih antara DVD dan TV - tetapi dia tidak dapat memahaminya. Dia juga berurusan dengan penglihatan yang gagal dan tidak terlalu tertarik untuk mencoba mengingat proses yang rumit, dia hanya ingin menonton acaranya ketika dia mau. Setelah mencoba menjelaskan langkah-langkah dengan tenang selama kunjungan terakhir kami tanpa banyak keberhasilan, saya memutuskan untuk menjadikannya remote control dua tombol sederhana miliknya sendiri. Ini akan memungkinkan dia untuk mengubah sumber input di televisinya tanpa rasa sakit, beralih antara DVD Matlock kesayangannya dan Price is Right dengan mudah.
Langkah 1: Bahan
- PhidgetIR
- PhidgetSBC4 (atau komputer papan tunggal seperti Raspberry Pi)
- Solder Besi
- Pemotong Samping
- Penari telanjang kawat
- Kabel Jumper
- Kabel USB
- Kabel Phidget
- Lampiran
- Header lubang tembus
- Tabung panas-menyusut
Langkah 2: Perencanaan
Untuk membuat remote, saya membutuhkan kemampuan untuk mengirim perintah consumer infrared (CIR) ke televisi. Saya memutuskan untuk menggunakan PhigetIR untuk tugas ini. PhidgetIR adalah perangkat yang dikendalikan USB yang memiliki kemampuan untuk mengirim dan menerima perintah CIR. Saya memilih ini karena beberapa alasan:
- Saya ingin menyelesaikan proyek ini sesegera mungkin dan menggunakannya, jadi pikiran untuk memecahkan osiloskop dan papan tempat memotong roti saya tidak menarik. Juga, seberapa besar kemungkinan sirkuit yang disolder tangan saya masih akan berfungsi dalam satu atau dua tahun?
- PhidgetIR memiliki kemampuan untuk "mempelajari" perintah CIR yang membuat pengembangan menjadi sangat sederhana.
- Anda dapat menggunakan hampir semua bahasa pemrograman utama dengan PhidgetIR. Ini berarti saya bisa menggunakan Java dan menyelesaikan semuanya dengan cepat.
- Akhirnya, saya bekerja untuk Phidget, jadi saya merasa nyaman dengan API, dan selalu ada perangkat cadangan yang bertebaran.
Karena saya memilih untuk menggunakan PhidgetIR, saya membutuhkan komputer untuk menjalankannya. Saya ingin proyek ini menjadi aplikasi yang berdiri sendiri, seperti remote biasa, jadi desktop atau laptop tidak tersedia. Saya memilih untuk menggunakan PhidgetSBC4 (komputer papan tunggal yang menjalankan Debian Linux), karena memungkinkan saya untuk berinteraksi dengan kedua tombol tekan tanpa perangkat keras tambahan. Mereka dapat dengan mudah disambungkan langsung ke VINT Hub bawaan. Catatan: Anda juga dapat menggunakan Raspberry Pi untuk proyek ini. Akhirnya, selain berfungsi secara fungsional, saya ingin proyek ini terlihat bagus, jadi saya memutuskan bahwa enklosur cetak 3D akan diperlukan.
Langkah 3: Cetak 3D
Untuk proyek ini, Geomagic digunakan untuk memodelkan enklosur. Ada file langkah 3D yang tersedia untuk PhidgetIR dan PhidgetSBC4 yang menyederhanakan prosesnya. Beberapa keputusan dibuat selama langkah ini mengenai ukuran dan fungsionalitas enklosur:
- PhidgetIR memiliki dua LED IR yang harus diarahkan ke TV untuk mengirim perintah. Alih-alih mendesain enklosur di sekitar papan PhidgetIR, LED IR dapat disolder dan direkatkan ke dalam lubang di sisi enklosur. Papan PhidgetIR kemudian dapat dipasang jauh dari LED, memanfaatkan ruang kosong.
- Konektor VINT Hub pada PhidgetSBC4 dapat ditekuk ke atas, yang masih memungkinkan akses untuk koneksi tombol tekan, dan juga akan mencegah keharusan membuat enklosur yang lebih besar.
Saya juga memutuskan untuk menambahkan label untuk tombol dan label yang menunjukkan arah yang harus dihadapi sehingga LED IR diarahkan ke arah yang benar. Saya mencetak enklosur secara lokal dari plastik ABS hitam.
Langkah 4: Perakitan - Lepaskan LED
LED IR pada akhirnya akan direkatkan ke dalam lubang di sisi enklosur. Ini berarti mereka harus disolder terlebih dahulu.
Langkah 5: Perakitan - Tambahkan Melalui Header Lubang
Selanjutnya, header melalui lubang ditambahkan di tempat LED dulu, yang membuatnya mudah untuk terhubung menggunakan kabel jumper 4-pin. Gunakan tabung heat-shrink untuk mencegah kontak yang tidak disengaja.
Langkah 6: Perakitan - Pasang LED
Rekatkan LED ke sisi enklosur.
Langkah 7: Perakitan - Pasang PhidgetIR
Pasang PhidgetIR ke enklosur, dan sambungkan LED.
Langkah 8: Perakitan - Menambahkan Tombol
Tombol tekan harus dihubungkan ke Hub VINT bawaan di PhidgetSBC, jadi saya memotong Kabel Phidget menjadi dua dan menyolder ujungnya ke tombol. Perhatikan bahwa hanya kabel putih (sinyal) dan hitam (arde) yang diperlukan.
Langkah 9: Perakitan - Menyatukan Semuanya
Beberapa manajemen kabel diperlukan untuk menyatukan semuanya, namun enklosurnya bekerja dengan baik.
Langkah 10: Perangkat Lunak - Kode
Hanya ada satu file Java yang diperlukan untuk proyek ini yang dapat Anda temukan di sini. Program ini menggunakan satu objek PhidgetIR, dan dua objek DigitalInput. Anda dapat membuat objek-objek ini seperti ini:
PhidgetIR ir =PhidgetIR baru();
DigitalInput tvButton =Input Digital baru(); DigitalInput otherButton=New DigitalInput();
Objek Input Digital dipetakan ke tombol tekan fisik di Hub VINT. Lampirkan, lepaskan, kesalahan, dan peristiwa perubahan status juga berlangganan:
tv.setIsHubPortDevice(benar);
tvButton.setHubPort(4); tvButton.addAttachListener(onAttachListener); tvButton.addDetachListener(onDetachListener); tvButton.addErrorListener(onErrorListener); tvButton.addStateChangeListener(onStateChangeListener); tvButton.buka(); otherButton.setIsHubPortDevice(true); otherButton.setHubPort(5); otherButton.addAttachListener(onAttachListener); otherButton.addDetachListener(onDetachListener); otherButton.addErrorListener(onErrorListener); otherButton.addStateChangeListener(onStateChangeListener); tombol lain.buka();
Pendengar perubahan status yang dirujuk di atas terlihat seperti ini:
privatestatic DigitalInputStateChangeListener onStateChangeListener =New DigitalInputStateChangeListener(){@OverridepublicvoidonStateChange(Disc DigitalInputStateChangeEvent){
DigitalInput ch =(DigitalInput) disce.getSource();try{if(ch.getHubPort()==4&& disce.getState()==true){ tvButtonActivated =true;}if(ch.getHubPort()==5&& disc.getState()==true){ otherButtonActivated =true;}}catch(PhidgetException ex){ System.out.println("Error: "+ ex.getDescription());}}};
Ketika sebuah tombol diaktifkan, kode acara akan dijalankan dan menetapkan bendera. Bendera ini akan direferensikan dan disetel ulang di loop utama. Loop utama hanya menunggu perubahan status tombol, dan kemudian mengirimkan perintah IR menggunakan fungsi transmisi yang tersedia dari API PhidgetIR.
while(benar){if(tvButtonActivated){
tvButtonActivated =salah; Log.log(LogLevel. INFO, "MENGANTI SUMBER - TV"); ir.transmit(sourceButtonString, codeInfo); Thread.sleep(500); ir.transmit(rightButtonString, codeInfo); Thread.sleep(500); ir.transmit(enterButtonString, codeInfo);}if(otherButtonActivated){ otherButtonActivated =false; Log.log(LogLevel. INFO, "MENGANTI SUMBER - DVD"); ir.transmit(sourceButtonString, codeInfo); Thread.sleep(500); ir.transmit(leftButtonString, codeInfo); Thread.sleep(500); ir.transmit(enterButtonString, codeInfo);} Thread.sleep(250);}
Langkah 11: Perangkat Lunak - Perintah CIR
Berikut adalah contoh cara membuat perintah (dalam hal ini perintah volume naik):
//Kode IR
IRCodeInfo sourceButtonCI =baru IRCodeInfo(); String volumeUp ="77e1d0f0";//Mengatur tombol sumber sourceButtonCI.bitCount=32; sourceButtonCI.encoding= IRCodeEncoding. SPACE; sourceButtonCI.gap=108921; sourceButtonCI.trail=549; sourceButtonCI.zero=newint[2]; sourceButtonCI.zero[0]=549; sourceButtonCI.zero[1]=627; sourceButtonCI.one=newint[2]; sourceButtonCI.one[0]=549; sourceButtonCI.one[1]=1755; sourceButtonCI.header=newint[2]; sourceButtonCI.header[0]=9084; sourceButtonCI.header[1]=4600; sourceButtonCI.repeat=newint[3]; sourceButtonCI.repeat[0]=9084; sourceButtonCI.repeat[1]=2308; sourceButtonCI.repeat[2]=549; sourceButtonCI.length= IRCodeLength. CONSTANT;
Untuk mendapatkan informasi untuk perintah ini, saya cukup menggunakan contoh PhidgetIR yang disertakan dengan perpustakaan Phidget. Setelah mengarahkan remote ke PhidgetIR dan menahan tombol volume atas, IR "mempelajari" kode, dan mengisi contoh. Informasi ini kemudian dapat dengan mudah disalin ke dalam kode.
Langkah 12: Menjalankan Program
File Java dapat ditulis dan dikompilasi di komputer eksternal. Tempatkan PhidgetRemote.java dan phidget22.jar di folder yang sama dan jalankan perintah berikut:
Windowsjavac -classpath.;phidget22.jar PhidgetRemote.java
macOS/Linuxjavac -classpath.:phidget22.jar PhidgetRemote.java
Setelah kompilasi, salin file kelas yang dihasilkan ke PhidgetSBC4, dan konfigurasikan untuk dijalankan saat boot.
Langkah 13: Hasil
Ketika saya memberikan remote kepada kakek pacar saya dan menunjukkan kepadanya cara menggunakannya, dia kagum dengan betapa sederhananya itu. Lihat video untuk melihatnya beraksi!
Hadiah Ketiga dalam Kontes Remote Control 2017
Direkomendasikan:
Steam Punk UPS Anda untuk Mendapatkan Jam Kerja untuk Router Wi-fi Anda: 4 Langkah (dengan Gambar)
Steam Punk UPS Anda untuk Mendapatkan Jam Kerja untuk Router Wi-fi Anda: Ada sesuatu yang pada dasarnya tidak menyenangkan ketika UPS Anda mengubah daya baterai 12V DC menjadi daya 220V AC sehingga transformator yang menjalankan router Anda dan serat ONT dapat mengubahnya kembali menjadi 12VDC! Anda juga melawan [biasanya
Mendeteksi Kakek Keluar dari Tempat Tidur Terlalu Lama: 7 Langkah
Mendeteksi Kakek Keluar dari Tempat Tidur Terlalu Lama: Latar Belakang Meskipun telah ada monitor alarm tempat tidur selama bertahun-tahun yang hanya merupakan penutup kontak alas tempat tidur sederhana yang membunyikan alarm lokal untuk penyedia perawatan ketika seseorang bangun dari tempat tidur, belum ada cara untuk keluarga terpencil pengasuh untuk melacak
Menyimpan Gambar Anda untuk Tugas Anda: 4 Langkah (dengan Gambar)
Menyimpan Gambar Anda untuk Tugas Anda: 1. Buka dokumen Google baru dan gunakan halaman ini untuk mengamankan gambar Anda.2. Gunakan ctrl (kontrol) dan tombol "c" kunci untuk menyalin.3. Gunakan ctrl (kontrol) dan tombol "v" kunci untuk menempel
Program PC Anda untuk Mati Secara Otomatis dengan Menetapkan Waktu Yang Anda Inginkan untuk Melakukannya: 4 Langkah
Program PC Anda untuk Mati Secara Otomatis dengan Menetapkan Waktu Yang Anda Ingin Lakukan Itu: hei, itu instruksi lain yang diambil dari kehidupan sehari-hari saya … terakhir kali saya harus mengunduh banyak perangkat lunak ke PC saya dan saya harus membiarkannya mengunduh semalaman, saya tidak ingin PC saya tetap menyala sepanjang malam setelah selesai mengunduh dan di s
Cara Membuat Kalender Kakek & Scrapbook (Bahkan Jika Anda Tidak Tahu Cara Membuat Scrapbook): 8 Langkah (dengan Gambar)
Cara Membuat Kalender Kakek & Scrapbook (bahkan Jika Anda Tidak Tahu Cara Membuat Scrapbook): Ini adalah hadiah liburan yang sangat ekonomis (dan sangat dihargai!) untuk kakek-nenek. Saya membuat 5 kalender tahun ini dengan harga masing-masing kurang dari $7. Bahan: 12 foto bagus anak Anda, anak-anak, keponakan, anjing, kucing, atau kerabat lainnya12 bagian berbeda