Daftar Isi:

Menggunakan Sensor Inframerah Dengan Arduino: 8 Langkah (dengan Gambar)
Menggunakan Sensor Inframerah Dengan Arduino: 8 Langkah (dengan Gambar)

Video: Menggunakan Sensor Inframerah Dengan Arduino: 8 Langkah (dengan Gambar)

Video: Menggunakan Sensor Inframerah Dengan Arduino: 8 Langkah (dengan Gambar)
Video: Tutorial Cara Program Sensor Jarak Menggunakan Sensor Infrared / Inframerah Modul dengan Arduino 2024, November
Anonim
Menggunakan Sensor Inframerah Dengan Arduino
Menggunakan Sensor Inframerah Dengan Arduino

Apa itu sensor inframerah (alias IR)?

Sensor IR adalah instrumen elektronik yang memindai sinyal IR dalam rentang frekuensi tertentu yang ditentukan oleh standar dan mengubahnya menjadi sinyal listrik pada pin outputnya (biasanya disebut pin sinyal). Sinyal IR terutama digunakan untuk mengirimkan perintah melalui udara pada jarak pendek (biasanya beberapa meter) seperti yang telah Anda gunakan pada remote control TV atau perangkat elektronik serupa lainnya.

protokol komunikasi IR

Setiap sinyal mewakili kode tertentu. Sinyal listrik dapat diubah kembali menjadi data/kode aktual yang dikirimkan pengirim. Saat Anda menekan tombol di remote control TV Anda, itu menghasilkan sinyal yang sesuai dengan kode tombol (mis. On/Off, Volume Naik, dll.) dan mengirimkannya ke penerima (dalam hal ini TV Anda). Baik pengirim dan penerima menyepakati seperangkat kode sehingga penerima tahu apa yang harus dilakukan berdasarkan setiap kode. Cara kode harus dimodulasi (dimodelkan) sebagai sinyal didefinisikan dalam standar yang berbeda dan setiap produsen sensor biasanya mencoba untuk menghasilkan produk yang kompatibel dengan mereka sehingga dapat digunakan di perangkat yang berbeda. Salah satu protokol standar yang paling dikenal adalah dari NEC. Anda dapat menemukan sejarah singkat protokol IR di Wikipedia di bawah judul IR Konsumen.

Langkah 1: Bagaimana Sensor IR Terlihat?

Bagaimana Sensor IR Terlihat?
Bagaimana Sensor IR Terlihat?
Bagaimana Sensor IR Terlihat?
Bagaimana Sensor IR Terlihat?
Bagaimana Sensor IR Terlihat?
Bagaimana Sensor IR Terlihat?

Sensor IR tersedia dalam paket yang berbeda. Di sini Anda dapat melihat beberapa kemasan khas untuk penerima IR.

Langkah 2: Papan/modul Breakout Sensor IR

Papan/modul Breakout Sensor IR
Papan/modul Breakout Sensor IR
Papan/modul Breakout Sensor IR
Papan/modul Breakout Sensor IR
Papan/modul Breakout Sensor IR
Papan/modul Breakout Sensor IR
Papan/modul Breakout Sensor IR
Papan/modul Breakout Sensor IR

Anda juga dapat membelinya sebagai modul IR/papan breakout di eBay, Aliexpress, atau Amazon. Modul tersebut biasanya menggabungkan salah satu sensor yang disebutkan di atas dengan paket ramah papan tempat memotong roti yang bagus bersama dengan LED yang akan berkedip ketika sensor mendeteksi sinyal. Dengan melakukan itu, Anda akan melihat jika ada data yang sedang ditransfer. Saya sangat menyarankan memulai dengan salah satu modul ini.

Catatan: jika Anda memiliki sensor IR mentah, tidak ada yang akan berubah, kecuali Anda harus memeriksa lembar data sensor untuk memastikan Anda memasang kabel dengan benar karena jika tidak, Anda mungkin memiliki asap biru yang indah dengan bau yang akan bertahan selama jam. Kamu tahu apa maksudku;)

Langkah 3: Bagian dan Komponen yang Diperlukan

Bagian dan Komponen yang Diperlukan
Bagian dan Komponen yang Diperlukan

Di sini Anda dapat menemukan daftar komponen yang Anda perlukan untuk menyelesaikan tutorial ini:

Tautan eBay:

  • 1 x Arduino Uno:
  • 1 x modul sensor IR dengan remote:
  • 4 x 220 ohm resistor:
  • 4 x LED:
  • 8 x kabel Dupont:
  • 1 x Papan tempat memotong roti tanpa solder:
  • 1 x Mini breadboard (opsional):

Link Amazon.com:

  • 1 x Arduino Uno:
  • 1 x modul sensor IR dengan remote:
  • 1 x Papan tempat memotong roti tanpa solder:
  • 4 x 220 ohm resistor:
  • 4 x LED:
  • 8 x kabel Dupont:
  • 1 x Mini breadboard (opsional):

Langkah 4: Menghubungkan Sensor IR ke Arduino

Menghubungkan Sensor IR ke Arduino
Menghubungkan Sensor IR ke Arduino
Menghubungkan Sensor IR ke Arduino
Menghubungkan Sensor IR ke Arduino
Menghubungkan Sensor IR ke Arduino
Menghubungkan Sensor IR ke Arduino

Menyiapkan koneksi sensor IR ke Arduino sangat sederhana. Selain pin VCC dan GND, sensor ini hanya memiliki satu pin output yang harus dihubungkan ke salah satu pin digital Arduino. Dalam hal ini terhubung ke pin 13.

Saya mencoba mendemonstrasikan modul sensor IR dan pengaturan sensor IR mentah. Seperti terlihat pada gambar, posisi pin VCC dan GND pada modul sensor adalah kebalikan dari raw sensor. Namun itu mungkin tidak terjadi pada sensor Anda, jadi seperti yang disebutkan pada langkah sebelumnya, jika menggunakan sensor mentah, periksa lembar data terlebih dahulu.

Langkah 5: Temukan Kode yang Sesuai dengan Setiap Tombol di Remote

Temukan Kode yang Sesuai dengan Setiap Tombol di Remote
Temukan Kode yang Sesuai dengan Setiap Tombol di Remote
Temukan Kode yang Sesuai dengan Setiap Tombol di Remote
Temukan Kode yang Sesuai dengan Setiap Tombol di Remote
Temukan Kode yang Sesuai dengan Setiap Tombol di Remote
Temukan Kode yang Sesuai dengan Setiap Tombol di Remote

Untuk memprogram Arduino untuk melakukan sesuatu ketika Anda menekan tombol pada remote, Anda harus terlebih dahulu memiliki kode yang sesuai dengan tombol itu. Kode kunci adalah angka yang biasanya disajikan sebagai heksadesimal. Setiap pengontrol jarak jauh memiliki kumpulan kode kuncinya sendiri, sementara ada kemungkinan bahwa dua pengontrol berbagi kode yang sama untuk tujuan yang berbeda. Memiliki kode kunci yang berbeda bersama dengan menggunakan rentang frekuensi yang berbeda, memastikan bahwa dua pengendali jarak jauh dari perangkat yang berbeda tidak akan mengalami gangguan. Itu sebabnya ketika Anda mengubah saluran TV Anda, pemutar DVD Anda tidak bereaksi sama sekali.

Untuk mendeteksi kode untuk remote IR Anda, Anda harus terlebih dahulu menjalankan sketsa sederhana yang mencoba membaca kode dari sensor saat Anda menekan tombol dan mengirimkannya melalui port serial ke komputer Anda di mana Anda dapat mengaksesnya menggunakan alat Serial Monitor dari ArduinoIDE. Inilah yang dilakukan sketsa yang dilampirkan pada bagian ini. Akan lebih baik untuk menekan setiap tombol untuk melihat kode dan menuliskan daftar kode di suatu tempat sehingga Anda tidak perlu menjalankan kode ini lagi di masa mendatang. Daftar kode kunci yang Anda lihat sebagai tabel di gambar sebenarnya adalah kode yang saya terima saat menekan tombol pada remote IR murah saya.

Anda juga dapat mengakses kode sumber aktual yang dibagikan di editor web Arduino saya di ir-key-code-logger.

Catatan: Jangan takut jika Anda melihat kode seperti FFFFFF di antara keduanya. Ini berarti Anda telah menekan dan menahan tombol untuk sementara waktu. Kami akan membahasnya kembali nanti. Untuk saat ini abaikan saja dan fokus pada kode lain.

Langkah 6: Kontrol Satu Set LED Menggunakan IR Remote

Kontrol Satu Set LED Menggunakan IR Remote
Kontrol Satu Set LED Menggunakan IR Remote
Kontrol Satu Set LED Menggunakan IR Remote
Kontrol Satu Set LED Menggunakan IR Remote
Kontrol Satu Set LED Menggunakan IR Remote
Kontrol Satu Set LED Menggunakan IR Remote

Sekarang kita memiliki kode untuk setiap tombol, saatnya untuk fokus pada cara kita menggunakannya. Biasanya Anda menggunakan remote IR untuk mengirim perintah ke Arduino untuk melakukan sesuatu seperti menyalakan atau mematikan lampu, menggerakkan robot ke arah tertentu, menampilkan sesuatu di layar LCD/OLED, dll. Di sini kami mencoba mendemonstrasikan prosesnya menggunakan sederhana rangkaian yang terdiri dari 4 LED dengan warna yang berbeda. Kami ingin mengaktifkan atau menonaktifkan masing-masing dengan tombol khusus remote IR. Seperti yang Anda lihat pada skema, Anda harus menghubungkan Arduino dengan cara berikut ke LED dan sensor:

Arduino GND -> Sensor IR GND.

Arduino VCC -> VCC sensor IR.

Arduino 13 -> keluaran sinyal sensor IR.

Arduino 2 -> Anoda dari LED biru (pin lebih pendek dari LED biru)

Arduino 3 -> Anoda dari LED hijau (pin lebih pendek dari LED hijau)

Arduino 4 -> Anoda dari LED kuning (pin lebih pendek dari LED kuning)

Arduino 5 -> Anoda dari LED merah (pin lebih pendek dari LED merah)

Arduino GND -> Katoda semua LED melalui resistor 220 ohm (pin LED lebih panjang)

Anda dapat menemukan kode yang sesuai dengan sirkuit ini di file terlampir atau di editor web Arduino saya di ir-led-control.

Langkah 7: Pemecahan Masalah

Saat menyiapkan proyek Anda dan mengikuti langkah-langkahnya, Anda mungkin menghadapi banyak situasi aneh. Berikut adalah daftar beberapa kesalahan umum yang mungkin Anda dapatkan saat bekerja dengan sensor IR.

Mendapatkan FFFFFF saat menekan tombol

Saat menekan tombol, Anda mungkin memperhatikan bahwa sebagian besar waktu itu melaporkan kode seperti FFFFFF. Ini terjadi ketika Anda menekan tombol dan menahannya untuk sementara waktu, bahkan untuk waktu yang singkat. Skenarionya adalah ketika Anda menekan tombol pada awalnya, remote IR mengirimkan kode tombol dan selama Anda menahan tombol, itu akan mengulangi pengiriman FFFFFF yang berarti bahwa pengguna masih menekan tombol yang dilaporkan baru-baru ini. Itu akan baik-baik saja. Anda bisa menghilangkannya. Kode sebenarnya adalah kode yang Anda dapatkan tepat sebelum FFFFFF di Serial Monitor.

Sensor IR tidak bereaksi sama sekali dan sepertinya semakin hangat

Matikan listrik!!! Jika Anda yakin bahwa sketsa logger kode kunci sudah benar, maka masalahnya mungkin karena pengaturan kabel Anda yang salah. Skenario yang terjadi pada saya adalah untuk modul IR saya (yang terpasang pada papan) saya telah menghubungkan VCC dan GND dengan cara yang berlawanan (karena tidak menggunakan warna yang tepat untuk kabel hookup saya). Dengan demikian, komponen sensor terbakar dan asap biru yang bagus terangkat. Saya membeli satu pak sensor IR mentah dan mencoba menggantinya dan sekarang berfungsi seperti pesona:). Sayangnya saya melakukan kesalahan yang sama ketika saya menguji dengan sensor IR mentah dan kali ini tidak ada yang terjadi kecuali sensor menjadi hangat. Jadi selalu periksa sirkuit sebelum menyalakan daya!

Terkadang sensor mendeteksi kode yang belum pernah saya lihat sebelumnya

Ini adalah salah satu masalah yang paling umum. Kemungkinan besar karena salah satu alasan berikut:

Anda tidak mengarahkan remote IR Anda langsung ke sensor

Ini akan menghasilkan beberapa kode baru (kebanyakan kode yang lebih panjang) yang belum pernah Anda terima sebelumnya dan biasanya tidak cocok dengan panjang kode yang sudah Anda miliki. Jadi ingatlah untuk selalu mengarahkan remote ke sensor Anda.

Anda menggunakan remote IR murah (seperti yang saya gunakan dalam tutorial ini)

Alih-alih menggunakan remote murah yang tidak dapat diprediksi, Anda dapat mencoba skenario yang sama menggunakan remote control TV atau DVD Player atau remote IR dari perangkat apa pun yang Anda miliki. Mereka biasanya memiliki kualitas sinyal/perangkat keras yang baik (dan tentu saja lebih mahal) dan berdasarkan pengalaman saya, mereka biasanya bekerja dengan baik bahkan jika Anda tidak mengarahkan remote langsung ke sensor.

Bagaimana saya tahu jika kode yang dicatat bukan sampah

Kode biasanya disajikan dalam format heksadesimal. Jika Anda mengonversinya ke nilai biner yang sesuai, Anda akan melihat bahwa representasi biner dari byte terakhir adalah negasi dari byte sebelum itu. Jika Anda mengetahui hal ini, Anda dapat melakukan pemeriksaan ini pada kode Anda untuk memastikan bahwa kode yang Anda terima benar-benar valid atau tidak. Sebagai contoh, jika Anda mendapatkan FF7A85, representasi binernya adalah seperti di bawah ini:

1111 1111 0111 1010 1000 0101

Dari kiri ke kanan, setiap kumpulan 4 digit mewakili karakter dalam bilangan heksadesimal asli. Seperti yang Anda lihat, batch yang sesuai dengan 7 adalah 0111 dan batch yang sesuai dengan 8 adalah 1000 yang merupakan negasi yang tepat darinya. Dengan negasi, maksud saya semua 0 akan menjadi 1 dan semua 1 akan diganti dengan 0. Hal yang sama berlaku untuk yang berikutnya yaitu A (1010) dan 5 (0101).

Langkah 8: Apa yang Harus Dilakukan Selanjutnya?

Sekarang giliran Anda. Terserah imajinasi Anda untuk melihat apa yang dapat Anda lakukan dengan sensor kecil sederhana ini di tangan Anda. Berikut adalah beberapa ide untuk memulai:

  • Gunakan remote control IR dari salah satu perangkat yang Anda miliki di rumah (TV, Stereo, dll.) dan coba gunakan di proyek Arduino Anda
  • Coba nyalakan semua LED sekaligus dengan menekan tombol lalu matikan menggunakan tombol lain
  • Gunakan tombol Atas/Bawah pada remote untuk menyalakan/mematikan LED satu per satu hingga semuanya menyala/mati
  • Buat lampu lalu lintas menggunakan LED dan kendalikan menggunakan remote
  • Jika Anda memiliki motor DC kecil, cobalah untuk memulai/menghentikan atau mengubah arah putarannya melalui remote IR
  • Anda dapat menggunakan remote TV untuk mengontrol robot Anda atau mengaktifkan/menonaktifkan beberapa sensor/aktuator di dalamnya

Beri tahu saya di komentar, apa yang akan Anda lakukan (atau sudah Anda lakukan) menggunakan remote IR.

Direkomendasikan: