Daftar Isi:
- Langkah 1: Pengendali Jarak Jauh
- Langkah 2: Perangkat Lunak
- Langkah 3: Modul Penerima IR
- Langkah 4: Cara Menggunakan Perangkat
Video: Pengendali Jarak Jauh IR Komputer: 4 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Selain banyak tujuan lain saya menggunakan PC saya sebagai pusat multimedia. Ada kalanya saya bersantai di sofa mendengarkan musik atau menonton film atau TV dan tidak ingin bangun untuk mengatur volume atau mengganti saluran TV setiap kali iklan bodoh muncul atau saya tertidur dan berharap untuk itu. kesunyian. Jadi saya telah memutuskan untuk membuat PC saya dikendalikan dari jarak jauh dengan kendali jarak jauh IR standar sehingga saya bisa langsung menekan tombol alih-alih menyambar mouse atau tombol mute pada keyboard.
Proyek ini terdiri dari beberapa bagian:
- Pengendali jarak jauh
- perangkat lunak komputer
- modul penerima IR
Langkah 1: Pengendali Jarak Jauh
Item pertama - remote control - sepele untuk diselesaikan. Cukup gunakan kontrol IR apa pun yang Anda suka. Saya menggunakan yang dijual sebagai satu set bersama dengan penerima IR - lihat gambar. Satu-satunya alasan saya memutuskan untuk jenis ini adalah karena saya sudah memilikinya di rumah.
Langkah 2: Perangkat Lunak
Saya telah membuat program untuk GNU/Linux OS yang berjalan di terminal. Kode sumbernya gratis untuk diunduh/digunakan/dibagikan/dimodifikasi. Untuk mengkompilasi kode cukup jalankan perintah seperti gcc -o remotePC remotePC.c di terminal. Untuk menjalankan program ketik./remotePC.
Informasi berikut dalam langkah ini ditujukan kepada mereka yang tertarik dengan cara kerjanya.
Deskripsi program
Program pertama-tama memeriksa apakah file /dev/ttyACM0 atau ttyACM1 ada. Jika demikian, ID grup file dicentang agar berbeda dari nol. Ini berarti bahwa port serial dapat dibaca dan ditulis oleh pengguna biasa. Dua byte dengan nilai 0xAA 0x55 kemudian ditulis ke port untuk memberi sinyal bahwa program siap menerima data. Data yang masuk dibandingkan dengan nilai yang disimpan. Jika kecocokan ditemukan, tindakan yang telah ditentukan akan dieksekusi.
Kontrol volume
Program ini dapat menghidupkan/mematikan suara, menaikkan/menurunkan level volume pada level sistem. Ini dicapai dengan menggunakan program pactl. Perintah kemudian terlihat seperti ini:
pactl set-sink-mute 0 toggle
pactl set-sink-volume 0 +10%
pactl set-sink-volume 0 -10%
Jika perlu instal paket yang diminta.
Kontrol VLC Media Player
Program juga dapat memulai/menjeda audio/video dan mengubah trek ke sebelumnya/berikutnya dalam daftar putar VLC Media Player. Bus Desktop digunakan dalam kasus ini. Perintah:
dbus-send --type=method_call --dest=org.mpris. MediaPlayer2.vlc
/org/mpris/MediaPlayer2 org.mpris. MediaPlayer2. Player. PlayPause
dbus-send --type=method_call --dest=org.mpris. MediaPlayer2.vlc
/org/mpris/MediaPlayer2 org.mpris. MediaPlayer2. Player. Next
dbus-send --type=method_call --dest=org.mpris. MediaPlayer2.vlc
/org/mpris/MediaPlayer2 org.mpris. MediaPlayer2. Player. Previous
Langkah 3: Modul Penerima IR
Bagian ketiga dari proyek ini adalah yang paling kompleks namun masih cukup sederhana. Idenya adalah penerima IR akan mengeluarkan sinyal ke MCU yang akan mengubahnya menjadi nomor unik. Nomor ini kemudian akan dikirimkan ke PC melalui USB.
Modul ini dimaksudkan untuk dipasang di dalam casing PC dan dihubungkan ke slot USB pada motherboard dengan kabel. Jika Anda lebih suka koneksi eksternal ke USB, Anda harus melakukan sedikit penyesuaian.
MCU
Saya telah membangun modul pada mikrokontroler PIC16F1829. Pilihan MCU tidak kritis, Anda dapat menggunakan MCU lain jika Anda dapat menyesuaikan kode sumber. Saya telah memilih PIC ini karena dua alasan. Pertama saya memilikinya dan kedua pinnya sebagian rusak oleh penggunaan intensif dalam proyek pengujian yang berbeda. Jadi saya ingin menggunakannya dalam proyek permanen sebelum benar-benar tidak dapat digunakan.:-)
penerima inframerah
Bagian kedua yang menjadi dasar modul ini adalah penerima IR VS1838B - yang disebutkan di langkah pertama.
Konverter UART/USB
Bagian ketiga adalah MCP2221 yang merupakan konverter UART/I2C/USB.
Tugasnya adalah menggabungkan 3 bagian ini untuk membangun modul yang dapat menerima sinyal dari remote control IR dan menyerahkannya ke PC.
Pengkabelan
Pada gambar pertama ada rangkaian pengujian pada papan tempat memotong roti. Yang kedua ada skema pengkabelan.
Daftar bagian
1 pc PIC16F1829 (atau MCU lainnya)
1 pc VS1838B (atau penerima IR lainnya)
1 pc MCP2221 (atau konverter UART/USB lainnya)
2 pcs 4-pin header
1 pc 6-pin header
1 buah resistor 100R
2 buah resistor 10K
2 buah resistor 330R
1 pc kapasitor 470 nF
2 pcs kapasitor elektrolit 4.7 uF
1 buah sakelar (opsional)
perakitan PCB
Kumpulkan modul dengan menggunakan skema. Anda dapat menggunakan papan universal atau membuat PCB khusus. Jika yang terakhir ini, saya telah menyediakan file KiCad dalam arsip di bawah ini.
Firmwarenya
Kode sumber untuk PIC yang ditulis dengan menggunakan MPLAB X IDE dan compiler XC8 tersedia untuk diunduh di bawah ini.
Catatan kode sumber
Bagi mereka yang ingin tahu apa sebenarnya program ini lakukan adalah baris berikut.
Setelah semua pengaturan selesai, LED merah menyala dan MCU menunggu data 0x55AA. Setelah itu LED berubah menjadi hijau dan MCU mulai mendeteksi sinyal dari penerima IR dengan menggunakan interupsi. Ini mengukur dan mencatat interval waktu sinyal di level Tinggi dan Rendah. Kali ini kemudian diubah menjadi nomor 32-bit yang dikirim ke PC.
Hubungan antara waktu dan angka akhir diberikan oleh protokol NEC.
Langkah 4: Cara Menggunakan Perangkat
Firmware
Unggah firmware ke PIC. Saya menggunakan pemrogram PICkit 3.
Perangkat keras
Pasang modul penerima IR seperti terlihat pada gambar:
- Hubungkan header USB baik ke slot USB internal pada motherboard di dalam casing PC dengan kabel 4-kawat yang sesuai atau secara eksternal ke slot USB dengan kabel USB standar. Dalam kasus kedua, Anda harus membantu diri sendiri dalam beberapa cara, mis. seperti yang terlihat pada gambar ke-3 untuk inspirasi.
- Pasang kabel daya 5 V dari sumber daya di dalam casing PC ke header 4-pin. Atau nyalakan modul dengan cara lain untuk penggunaan eksternal.
Cari deskripsi pin soket USB motherboard. Saya tidak yakin apakah kabel mengikuti semacam standar sehingga lebih baik untuk memastikan. Dalam kasus saya ada dua baris pin dengan 5 pin di baris atas dan 4 pin di bawah. Dari kiri ke kanan pinnya adalah + 5 V, D-, D+, Gnd. Pin ke-5 di baris pertama tidak terhubung. Saya memasang kabel seperti yang terlihat pada gambar kedua.
Perangkat lunak
Jalankan program di terminal. Jika semuanya berjalan dengan benar, pesan terakhir dari program ini adalah "menunggu data…". Sekarang ketika Anda menekan tombol pada remote control, kode yang diterima akan muncul di terminal. Dengan cara ini Anda akan tahu tombol mana yang mengeluarkan kode mana.
Sekarang beberapa hal pemrograman menunggu Anda tetapi jangan khawatir. Hanya beberapa hal yang harus diubah dalam kode sumber program sehingga program merespons kendali jarak jauh Anda. Buka file remotePC.c di editor teks atau di beberapa IDE jika Anda suka dan ganti kode saya dengan kode Anda. Cukup tekan tombol yang ingin Anda gunakan untuk setiap tindakan satu per satu. Cukup salin kode yang muncul di terminal dan tempel ke kode sumber ke tempat dengan tindakan yang sesuai.
Ketika Anda selesai mengakhiri program dan mengkompilasi ulang kode dengan perintah gcc -o remotePC remotePC.c. Jalankan program lagi dan mulai sekarang akan merespons remote control Anda.
Saya menggunakan cara ini dengan tindakan hardcoded dalam program karena saya merasa tidak ada artinya membuang waktu saya dengan pengembangan proyek lebih lanjut ke keadaan ketika mungkin untuk menambah/mengubah kode/tindakan di lingkungan grafis yang ramah pengguna misalnya. Tetapi jika Anda ingin melakukan ini atau bahkan lebih, Anda bisa.
Direkomendasikan:
Pengendali Jarak Jauh Berbasis LoRa - Kontrol Peralatan Dari Jarak Jauh: 8 Langkah
Pengendali Jarak Jauh Berbasis LoRa | Mengontrol Peralatan Dari Jarak Jauh: Hai, apa kabar, Guys! Akarsh di sini dari CETech. Dalam proyek ini, kita akan membuat remote control yang dapat digunakan untuk mengontrol berbagai instrumen seperti LED, motor atau jika kita berbicara tentang kehidupan kita sehari-hari, kita dapat mengontrol aplikasi rumah kita
Papan Pengendali Jarak Jauh Lainnya: 7 Langkah
Namun Papan Pengendali Jarak Jauh Lain: بسم الله الرحمن الرحيم Papan dapat digunakan untuk mengendalikan robot sebagai contoh. Papan dapat ditenagai oleh 2 baterai Lipo 7.4 V. Papan ini mencakup fitur-fitur berikut: ATMega328Pb Pengontrol (ekosistem Arduino) MPU6050 a 3- sumbu giroskop
Sensor Jarak IR Jarak Jauh: 3 Langkah
Sensor Jarak IR Jarak Jauh: Sensor inframerah adalah Modul terbaik untuk deteksi objek tetapi masalahnya adalah ia bekerja untuk jarak yang sangat pendek. dalam artikel ini, kami akan membagikan bagaimana Anda dapat meningkatkan jangkauan dan faktor-faktor apa yang mempengaruhi jangkauan
Tingkatkan Jarak Efektif pada Pemancar Pemicu Jarak Jauh Flash 'ebay' Dengan Antena: 6 Langkah
Tingkatkan Jarak Efektif pada Pemancar Pemicu Jarak Jauh Flash 'ebay' Dengan Antena: Penggemar kamera dapat membeli pemicu jarak jauh versi murah untuk unit lampu kilat eksternal, mengendalikan unit lampu kilat tipe hot-shoe atau 'studio'. Pemicu ini menderita karena daya pemancar yang rendah dan dengan demikian jarak kontrol efektif yang kecil. ini bulan
Pelepasan Kabel Jarak Jauh Olympus Evolt E510 (Versi 2 Dengan Fokus Otomatis pada Jarak Jauh): 6 Langkah (dengan Gambar)
Olympus Evolt E510 Remote Cable Release (Versi 2 Dengan Fokus Otomatis pada Remote): Kemarin saya membuat remote satu tombol sederhana untuk Olympus E510 saya. Sebagian besar kamera memiliki tombol pelepas rana (tombol yang Anda tekan untuk mengambil gambar) yang memiliki dua mode. Jika tombol ditekan perlahan, kamera akan fokus otomatis dan mengukur cahaya