Dalam proyek ini saya akan memandu Anda melalui cara membuat lampu bohlam atau alat apa pun yang dikendalikan oleh remote TV, dan menunjukkan cara mendapatkan kode hex.
Hubungkan relai:
relay vcc => Arduino 5v
relay GND => Arduino GND
relay IN => Arduino 8
relay COM => BULB
relay NO => AC +
BULB => AC -
Langkah 1: Kumpulkan:
Papan Projeck
Jumper
Menyampaikan
Penerima TSOP atau IR
LED dua warna (Anda dapat menggunakan 2 LED untuk ini)
Langkah 2: Menyiapkan penerima
Arduino D2 => TSOP OUT
Arduino 5v => TSOP +
GNU Arduino => TSOP GND
Sekarang saya akan menunjukkan kepada Anda cara mendapatkan kode hex dari remote TV:
Pergi ke contoh> IRremote> IRrecvdemo jika perpustakaan tidak menginstal instal dari sini (setelah Anda menginstal file zip pergi ke sketsa> sertakan perpustakaan> Tambahkan .ZIP perpustakaan dan tunjukkan di mana Anda meletakkan file zip Anda)
Unggah kode dan buka monitor serial memastikan bahwa Anda memilih port COM yang benar, ambil remote TV Anda dan tekan tombol apa pun Anda akan mendapatkan kode hex. Tuliskan dan tambahkan 0x ke kode yang Anda punya, Anda akan membutuhkannya kode saya adalah 0x14EB18E7.
Langkah 3: Hubungkan Relay
relay vcc => Arduino 5v
relay GND => Arduino GND
relay IN => Arduino 8
relay COM => BULB
relay NO => AC +
BULB => AC -
Langkah 4: Hubungkan LED:
Hubungkan 9 dan 10 ke 2 LED seperti yang ditunjukkan. Saya memiliki led dua warna sehingga saya akan menggunakannya:
LED1 + => 9
LED2 + => 10
LED1 - => GND
LED2 - => GND
Langkah 5: Unggah kode:
Jangan lupa untuk mengubah kode hex. Ketik kode hex Anda di mana saya mengetik 0x14EB18E7 di sketsa pada tab kode.
# include <boarddefs.h>
# include <IRremote.h>
# include <IRremoteInt.h>
# include <ir_Lego_PF_BitStreamEncoder.h>
penerima int = 2 ; // Pin Sinyal penerima IR ke Arduino Digital Pin 11
hit
bool = false ;
/ * ----- (Nyatakan objek) ----- * / IRrecv irrecv ( penerima ); // buat instance dari 'irrecv' hasil decode_results ; // buat instance dari 'decode_results' void setup () / * ---- (SETUP: RUNS ONCE) ---- * / { Serial . begin ( 9600 ); Serial . println ( "Dekode Tombol Penerima IR" );
irrecv . enableIRIn (); // Mulai penerima
pinMode ( 8 , OUTPUT ); pinMode ( 10 , OUTPUT ); pinMode ( 9 , OUTPUT ); } / * - (end setup) --- * / void loop () / * ---- (LOOP: RUNS CONSTANTLY) ---- * / { if ( irrecv . decode ( & hasil )) // telah kami menerima sinyal IR? { translateIR (); irrecv . lanjut
(); // terima nilai selanjutnya
} } / * - (akhiri loop utama) - * / / * ----- (Fungsi) ----- * / void translateIR () // mengambil tindakan berdasarkan kode IR diterima // menjelaskan kode IR Jarak Jauh { jika ( hasil . nilai == 0x14EB18E7 ) { // gunakan kode yang Anda dapatkan di sketsa IRrecvdemo di sini tekan = ! memukul ; } if ( tekan == true ) { digitalWrite ( 10 , LOW ); digitalWrite (
8 , TINGGI );
digitalWrite ( 9 , HIGH ); } else { digitalWrite ( 9 , LOW ); digitalWrite ( 8 , LOW ); digitalWrite ( 10 , HIGH ); } delay ( 100 ); // Jangan segera ulangi }
Komentar