Nah jika pada projeck sebelumnya kita sudah membuat aplikasi pengontrolan menggunakan remote infrared, maka pada projeck kali ini kita akan membuat mobil remote control menggunakan remote infrared, adapun hal yang perlu dilakukan pertama- tama ialah membuat rangkaian seperti pada gambar dibawah inijika menggunakan Arduino UNO.
dan jika anda menggunakan Atmega 8 atau Atmega328 maka anda harus menyesuiakanya sendiri, sesuai dengan pinmaping ataupun gambar dibawah ini.
sedangkan untuk programnya silahkan cek diisini:
//=============================================================
//Mobil Remote Kontrol
//=============================================================
#include <IRremote.h>
IRrecv irrecv(11);
String Atas = "CC00718E";
String Kanan = "CC00916E";
String Bawah = "CC00F10E";
String Kiri = "CC00A05F";
String Tengah = "CC00F00F";
decode_results results;
String TOMBOLYANGDITEKAN;
int TombolAtas = 0;
int TombolBawah = 0;
int TombolKiri = 0;
int TombolKanan = 0;
int TombolTengah = 0;
void setup(){
irrecv.enableIRIn();
//mengatur motor dalam mode output
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);}
void loop() {
if (irrecv.decode(&results)) {irrecv.resume();
TOMBOLYANGDITEKAN = String(results.value, HEX);
TOMBOLYANGDITEKAN.toUpperCase();
if (TOMBOLYANGDITEKAN == Atas){if (TombolAtas == 0){
//robot maju
digitalWrite(13, LOW);
digitalWrite(12, HIGH);
digitalWrite(11, LOW);
digitalWrite(10, HIGH);}}
if (TOMBOLYANGDITEKAN == Kanan){if (TombolKanan == 0){
//robot belok kanan
digitalWrite(13, HIGH);
digitalWrite(12, LOW);
digitalWrite(11, LOW);
digitalWrite(10, HIGH);}}
if (TOMBOLYANGDITEKAN == Bawah){if (TombolBawah == 0){
//robot mundur
digitalWrite(13, HIGH);
digitalWrite(12, LOW);
digitalWrite(11, HIGH);
digitalWrite(10, LOW);}}
if (TOMBOLYANGDITEKAN == Kiri){if (TombolKiri == 0){
//robot belok kiri
digitalWrite(13, LOW);
digitalWrite(12, HIGH);
digitalWrite(11, HIGH);
digitalWrite(10, LOW);}}
if (TOMBOLYANGDITEKAN == Tengah){if (TombolTengah == 0){
//robot berhenti
digitalWrite(13, LOW);
digitalWrite(12, LOW);
digitalWrite(11, LOW);
digitalWrite(10, LOW);}}
irrecv.resume(); }}
//=============================================================
namun perlu diketahui Remote yang saya gunakan disini adalah remote Panasonic Projecktor, untuk itu jika anda menggunakan remote lain anda terlebih dahulu harus mengubah kode tersebut dengan cara membaca kode remote tersebut untuk mengetahui kode remote yang anda miliki silahkan klik disini.


No comments:
Post a Comment