• Tidak ada hasil yang ditemukan

PERCOBAAN REMOTE CONTROL TUJUAN :

Dalam dokumen Buku Petunjuk Praktikum Mikrokontroler (Halaman 86-95)

1. Mahasiswa mampu memahami rangkaian interface Infra merah 2. Mahasiswa mampu mengenali berbagai macam remote control

3. Mahasiswa mampu memprogram mikrokontroler untuk membaca kode remote control 4. Mahasiswa mampu mengendalikan devias dari jarak jauh

PERALATAN

1. Sebuah Komputer

2. Satu set trainer mikrokontroler

TEORI DASAR

Cahaya Infra Merah

Infra Merah sebenarnya cahaya normal dengan warna tertentu. Kita tidak bisa melihat warna ini karena panjang gelombang 950 nm nya di bawah spektrum cahaya tampak. Itulah salah satu alasan mengapa IR dipilih untuk tujuan remote control, kita ingin menggunakannya, tapi kita tidak tertarik melihatnya. Meskipun kita tidak dapat melihat cahaya Infra Merah yang dipancarkan dari remote control bukan berarti kita tidak dapat membuatnya terlihat.

Sebuah kamera video atau kamera foto digital dapat membuat kita melihat cahaya Infra Merah. Cukup arahkan remote ke kamera tersebut, tekan sembarang tombol maka kita akan melihat kedipan

LED Infra Merah.

Gambar 11.1. Remote Control

Matahari adalah sumber cahaya dan memancar cahaya infra merah. Beberapa sumber cahaya lain misal bola lampu, lilin, sumber pemanas dan bahkan tubuh kita memancarkan cahaya Infra Merah serta segala sesuatu yang memancarkan panas juga memancarkan cahaya Infra Merah.

Oleh karena itu harus diambil beberapa tindakan sebagai pencegahan untuk menjamin bahwa pesan IR yang akan dikirim ke penerima tidak mengalami error dikarenakan banyak sumber cahaya infra merah disekitar kita sehingga mempengaruhi data yang dikirim melalui Remote Control Infra Merah.

Tindakan yang dilakukan untuk mencegah pengaruh cahaya infra merah dari sumber lain beberapa vendor menggunakan protokol komunikasi data untuk Remote Control Infra Merah yakni dengan cara

87 LABORATORIUM MIKROKONTROLER UNIVERSITAS NAROTAMA SURABAYA

memodulasi dengan frekuensi tertentu pada data dijital (berbentuk kedipan) sehingga dengan menset protokol yang sama antara Transmitter dan Receiver maka sumber cahaya infra merah yang lain tidak dapat mempengaruhi data yang dikirim.

Modulasi

Gambar 11.2 Modulasi Data

Pada gambar di atas sinyal termodulasi mengendalikan IR LED dari pemancar sinyal ke penerima. Dalam komunikasi data dijital kita mengenal kondisi 1 dan 0 dimana 1 mewakili on(lampu menyala) dan 0 mewakili off (lampu mati). Sinyal 1 dan 0 ini dimodulasi dengan ferekunsi antara 30kHz dan 60kHz.

Transmitter

Gambar 11.3. Pemancar Remote Control

Gambar diatas merupakan contoh umum pemancar (transmitter) pada Remote Control Infra Merah. Masukan pada basis transistor merupakan data digital yang sudah termodulasi dengan frekuensi tertentu dari mikrokontroller.

Receiver

Gambar 11.4. Penerima Remote Control

Pada gambar di atas merupakan diagram blok dari penerima IR dan semuanya dibangun dalam satu rangkaian terpadu.

88 LABORATORIUM MIKROKONTROLER UNIVERSITAS NAROTAMA SURABAYA

Sinyal yang diterima IR deteksi photo dioda penerima. Sinyal ini diperkuat dan dibatasi oleh pertama 2 tahap. Limiter bertindak sebagai rangkaian AGC untuk mendapatkan tingkat pulsa konstan. Sinyal gelomang kotak dikirim ke Band Pass Filter. Band Pass Filter diset pada frekuensi modulasi unit penerima dan umumnya Frekuensi berkisar antara 30kHz sampai 60kHz.

Tahap berikutnya adalah detektor, integrator dan komparator. Tujuan dari tiga blok adalah untuk mendeteksi keberadaan frekuensi modulasi.

Percobaan 14

Ketiklah program dibawah ini untuk menangkap sinyal infra merah dari remote control dan selanjutnya memproses menjadi kode hexadecimal dan ditampilkan pada layar serial monitor

#include <IRremote.h> int RECV_PIN = 11; IRrecv irrecv(RECV_PIN); decode_results results; void setup() { Serial.begin(9600);

irrecv.enableIRIn(); // Start the receiver }

void loop() {

if (irrecv.decode(&results)) { Serial.println(results.value, HEX); irrecv.resume(); // Receive the next value }

}

Percobaan 15

Ketik Program dibawah ini untuk latihan mengenali tombol-tombol remote control merk Sony dan Chung He dan hasilnya ditampilkan dalam sebuah led pada pin 13 dari mikrokontroler Arduino

#include <IRremote.h> int RECV_PIN = 11; IRrecv irrecv(RECV_PIN);

89 LABORATORIUM MIKROKONTROLER UNIVERSITAS NAROTAMA SURABAYA

long data;

char alamat, remote;

void setup() {

Serial.begin(9600);

irrecv.enableIRIn(); // Start the receiver pinMode(2,INPUT_PULLUP); pinMode(3,INPUT_PULLUP); pinMode(4,INPUT_PULLUP); pinMode(5,INPUT_PULLUP); pinMode(13,OUTPUT); } void baca_dip_switch() {

if ((digitalRead(2) == LOW)&&(digitalRead(3) == LOW)&&(digitalRead(4) == LOW)&&(digitalRead(5) == LOW))

{alamat = '0';}

if ((digitalRead(2) == HIGH)&&(digitalRead(3) == LOW)&&(digitalRead(4) == LOW)&&(digitalRead(5) == LOW))

{alamat = '1';}

if ((digitalRead(2) == LOW)&&(digitalRead(3) == HIGH)&&(digitalRead(4) == LOW)&&(digitalRead(5) == LOW))

{alamat = '2';}

if ((digitalRead(2) == HIGH)&&(digitalRead(3) == HIGH)&&(digitalRead(4) == LOW)&&(digitalRead(5) == LOW))

{alamat = '3';}

if ((digitalRead(2) == LOW)&&(digitalRead(3) == LOW)&&(digitalRead(4) == HIGH)&&(digitalRead(5) == LOW))

{alamat = '4';}

if ((digitalRead(2) == HIGH)&&(digitalRead(3) == LOW)&&(digitalRead(4) == HIGH)&&(digitalRead(5) == LOW))

{alamat = '5';}

if ((digitalRead(2) == LOW)&&(digitalRead(3) == HIGH)&&(digitalRead(4) == HIGH)&&(digitalRead(5) == LOW))

90 LABORATORIUM MIKROKONTROLER UNIVERSITAS NAROTAMA SURABAYA

if ((digitalRead(2) == HIGH)&&(digitalRead(3) == HIGH)&&(digitalRead(4) == HIGH)&&(digitalRead(5) == LOW))

{alamat = '7';}

if ((digitalRead(2) == LOW)&&(digitalRead(3) == LOW)&&(digitalRead(4) == LOW)&&(digitalRead(5) == HIGH))

{alamat = '8';}

if ((digitalRead(2) == HIGH)&&(digitalRead(3) == LOW)&&(digitalRead(4) == LOW)&&(digitalRead(5) == HIGH))

{alamat = '9';}

if ((digitalRead(2) == LOW)&&(digitalRead(3) == HIGH)&&(digitalRead(4) == LOW)&&(digitalRead(5) == HIGH))

{alamat = 'A';}

if ((digitalRead(2) == HIGH)&&(digitalRead(3) == HIGH)&&(digitalRead(4) == LOW)&&(digitalRead(5) == HIGH))

{alamat = 'B';}

if ((digitalRead(2) == LOW)&&(digitalRead(3) == LOW)&&(digitalRead(4) == HIGH)&&(digitalRead(5) == HIGH))

{alamat = 'C';}

if ((digitalRead(2) == HIGH)&&(digitalRead(3) == LOW)&&(digitalRead(4) == HIGH)&&(digitalRead(5) == HIGH))

{alamat = 'D';}

if ((digitalRead(2) == LOW)&&(digitalRead(3) == HIGH)&&(digitalRead(4) == HIGH)&&(digitalRead(5) == HIGH))

{alamat = 'E';}

if ((digitalRead(2) == HIGH)&&(digitalRead(3) == HIGH)&&(digitalRead(4) == HIGH)&&(digitalRead(5) == HIGH)) {alamat = 'F';} } void banding() { baca_dip_switch(); if (remote == alamat) digitalWrite(13,HIGH); if (remote == 'X') digitalWrite(13,LOW); } void RC_Sony_RM827S()

91 LABORATORIUM MIKROKONTROLER UNIVERSITAS NAROTAMA SURABAYA

{ //--- //Remote Sony RM-827S //--- if (results.value == 0x10){ Serial.println('1'); remote = '1';} else if (results.value == 0x810) { Serial.println('2'); remote = '2';} else if (results.value == 0x410) { Serial.println('3'); remote = '3';} else if (results.value == 0xC10) { Serial.println('4'); remote = '4';} else if (results.value == 0x210) { Serial.println('5'); remote = '5';}

else if (results.value == 0xA10) { Serial.println('6');

remote = '6';}

else if (results.value == 0x610) { Serial.println('7');

remote = '7';}

else if (results.value == 0xE10) { Serial.println('8'); remote = '8';} else if (results.value == 0x110) { Serial.println('9'); remote = '9';} else if (results.value == 0x910) { Serial.println('0'); remote = '0';} else if (results.value == 0x310) { Serial.println('A'); remote = 'A';} else if (results.value == 0xB10) {

92 LABORATORIUM MIKROKONTROLER UNIVERSITAS NAROTAMA SURABAYA

Serial.println('B'); remote = 'B';} else if (results.value == 0x490) { Serial.println('C'); remote = 'C';} else if (results.value == 0xC90) { Serial.println('D'); remote = 'D';} else if (results.value == 0x90) { Serial.println('E'); remote = 'E';} else if (results.value == 0x890) { Serial.println('F'); remote = 'F';}

else if (results.value == 0xA90) { Serial.println('X'); remote = 'X';} else Serial.print(' '); } void RC_chung_he_SMG1() { //---

//Remote CHUNG HE SMG-1 D024 01 A-0028B //---

if (results.value == 0xE13DDA28){ Serial.println('1');

remote = '1';}

else if (results.value == 0xAD586662) { Serial.println('2'); remote = '2';} else if (results.value == 0x273009C4) { Serial.println('3'); remote = '3';} else if (results.value == 0xF5999288) { Serial.println('4'); remote = '4';}

93 LABORATORIUM MIKROKONTROLER UNIVERSITAS NAROTAMA SURABAYA

Serial.println('5'); remote = '5';}

else if (results.value == 0x2C452C6C) { Serial.println('6');

remote = '6';}

else if (results.value == 0x4592E14C) { Serial.println('7');

remote = '7';}

else if (results.value == 0x6825E53E) { Serial.println('8');

remote = '8';}

else if (results.value == 0x8B8510E8) { Serial.println('9');

remote = '9';}

else if (results.value == 0xB9F56762) { Serial.println('0');

remote = '0';}

else if (results.value == 0x52A5A66) { Serial.println('A');

remote = 'A';}

else if (results.value == 0xCA8CBCC6) { Serial.println('B');

remote = 'B';}

else if (results.value == 0x83B19366) { Serial.println('C');

remote = 'C';}

else if (results.value == 0x68733A46) { Serial.println('D');

remote = 'D';}

else if (results.value == 0x189D7928) { Serial.println('E');

remote = 'E';}

else if (results.value == 0x5F12E8C4) { Serial.println('F');

remote = 'F';}

else if (results.value == 0xF4BA2988) { Serial.println('X');

94 LABORATORIUM MIKROKONTROLER UNIVERSITAS NAROTAMA SURABAYA

else Serial.print(' '); } void loop() { if (irrecv.decode(&results)) { //data = results.value; RC_Sony_RM827S(); RC_chung_he_SMG1();

irrecv.resume(); // Receive the next value } banding(); // Serial.print(alamat); delay(500); }

LANGKAH-LANGKAH PERCOBAAN

1. Nyalakan computer dengan program Arduino !

2. Sambungkan Trainer mikrokontroler dengan computer menggunakan kabel USB ! 3. Sambungkan kabel-kabel jumper sesuai dengan praktikum yang dilaksanakan ! 4. Ketiklah program yang diatas pada software Arduino !

5. Lakukan verifikasi terhadap program, apakah terjadi error atau tidak !

6. Jika tidak terjadi error lanjutkan dengan mengupload program ke dalam mikrokontroler ! 7. Amati hasilnya apakah sudah sesuai dengan perintah instruktur atau belum, kalau belum

95 LABORATORIUM MIKROKONTROLER UNIVERSITAS NAROTAMA SURABAYA

BAB XII : PERCOBAAN MOTOR STEPPER

Dalam dokumen Buku Petunjuk Praktikum Mikrokontroler (Halaman 86-95)

Dokumen terkait