Senin, 19 September 2016

Membuat Traffic Light Menggunakan Program Arduino


Kali ini saya akan membagikan bagaimana suatu sistem traffic light sebuah pertigaan yang sederhana dapat bekerja dengan menggunakan program arduino dengan bahasa yang mirip c++ namun lebih sederhana dan disimulasikan menggunakan proteus. Sebelumnya akan saya jelaskan apa itu arduino dan perintah perintah  apa saja yang akan kita gunakan dalam program ini. Dan juga cara menggunakan proteus yang kita gunakan sebagai simulasinya.
Arduino adalah pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri.
Arduino juga merupakan platform hardware terbuka yang ditujukan kepada siapa saja yang ingin membuat purwarupa peralatan elektronik interaktif berdasarkan hardware dan software yang fleksibel dan mudah digunakan. Mikrokontroler diprogram menggunakan bahasa pemrograman arduino yang memiliki kemiripan syntax dengan bahasa pemrograman C. Karena sifatnya yang terbuka maka siapa saja dapat mengunduh skema hardware arduino dan membangunnya.
Arduino menggunakan keluarga mikrokontroler ATMega yang dirilis oleh Atmel sebagai basis, namun ada individu/perusahaan yang membuat clone arduino dengan menggunakan mikrokontroler lain dan tetap kompatibel dengan arduino pada level hardware. Untuk fleksibilitas, program dimasukkan melalui bootloader meskipun ada opsi untuk membypass bootloader dan menggunakan downloader untuk memprogram mikrokontroler secara langsung melalui port ISP.(wikipedia-2016).
Aplikasi arduino ketika dibuka.


Lalu buat program seperti script dibawah ini

int merah1 = 13;   //inisialisasi port 13 sebagai lampu merah jalan pertama
int kuning1 = 12;  //inisialisasi port 12 sebagai lampu kuning jalan pertama
int hijau1 = 11;   //inisialisasi port 11 sebagai lampu hijau jalan pertama
int hijau2 = 10;  //inisialisasi port 10 sebagai lampu hijau jalan kedua
int kuning2 = 9;  //inisialisasi port 9 sebagai lampu kuning jalan kedua
int merah2 = 8;  //inisialisasi port 8 sebagai lamopu merah jalan kedua
int hijau3 = 7;  //inisialisasi port 7 sebagai lampu hijau jalan ketiga
int kuning3 = 6;  //inisialisasi port 6 sebagai lampu kuning jalan ketiga
int merah3 = 5;  //inisialisasi port 5 sebagai lampu merah jalan ketiga

void setup() {
  // masukkan masing masing mode port semuanya sebagai output
pinMode (merah1, OUTPUT);
pinMode (kuning1, OUTPUT);
pinMode (hijau1, OUTPUT);
pinMode (merah2, OUTPUT);
pinMode (kuning2, OUTPUT);
pinMode (hijau2, OUTPUT);
pinMode (merah3, OUTPUT);
pinMode (kuning3, OUTPUT);
pinMode (hijau3, OUTPUT);


}

void loop () {
  // masukkan program utama

digitalWrite (hijau1, HIGH);  //lampu hijau jalan pertana hidup
digitalWrite (merah2, HIGH);  //lampu merah jalan kedua hidup
digitalWrite (merah3, HIGH);  //lampu merah jalan ketiga hidup
delay(5000);  //delay atau penundaan selama 5000 mili sekon
digitalWrite (hijau1, LOW);  //lampu hijau jalan pertama mati
digitalWrite (merah2, LOW);  // lampu merah jalan kedua mati
digitalWrite (merah3, LOW);  //lampu merah jalan ketiga mati

digitalWrite (kuning1, HIGH);  //lampu kuning jalan pertama hidup
digitalWrite (merah2, HIGH);  //lampu merah jalan kedua hidup
digitalWrite (merah3, HIGH);  //lampu merah jalan ketiga hidup
delay(2000);  //delay atau penundaan selama 2000 mili sekon
digitalWrite (kuning1, LOW);   //lampu kuning jalan pertama mati
digitalWrite (merah2, LOW);  //lampu merah jalan kedua mati
digitalWrite (merah3, LOW);  //lampu merah jalan ketiga mati

digitalWrite (merah1, HIGH);  //lampu merah jalan pertama hidup
digitalWrite (hijau2, HIGH);  //lampu hijau jalan kedua hidup
digitalWrite (merah3, HIGH);  //lampu merah jalan ketiga hidup
delay(5000);  //delay atau penundaan selama 5000 mili sekon
digitalWrite (merah1, LOW);  //lampu merah jalan pertama mati
digitalWrite (hijau2, LOW);  //lampu hijau jalan kedua mati
digitalWrite (merah3, LOW);  //lampu merah jalan ketiga mati

digitalWrite (merah1, HIGH);  //lampu merah jalan pertama hidup
digitalWrite (kuning2, HIGH);  //lampu kuning jalan kedua hidup
digitalWrite (merah3, HIGH);  //lampu merah jalan ketiga hidup
delay(2000);  //delay atau penundaan selama 2000 mili sekon
digitalWrite (merah1, LOW);  //lampu merah jalan pertama mati
digitalWrite (kuning2, LOW);  // lampu kuning jalan kedua mai
digitalWrite (merah3, LOW);  //lampu merah jalan ketiga mati

digitalWrite (merah1, HIGH);  //lampu merah jalan pertama hidup
digitalWrite (merah2, HIGH);  //lampu merah jalan kedua hidup
digitalWrite (hijau3, HIGH);   //lampu hijau jalan ketiga hidup
delay(5000); // delay atau penundaan selama 5000 mili sekon
digitalWrite (merah1, LOW);  //lampu merah jalan pertama mati
digitalWrite (merah2, LOW);  //lampu merah jalan kedua mati
digitalWrite (hijau3, LOW);  //lampu hijau jalan ketiga mati

digitalWrite (merah1, HIGH);  //lampu merah jalan pertama hidup
digitalWrite (merah2, HIGH);  //lampu merah jalan kedua hidup
digitalWrite (kuning3, HIGH);  //lampu kuning jalan ketiga hidup
delay(2000);  //delay atau penundaan selama 2000 mili sekon
digitalWrite (merah1, LOW);  //lampu merah jalan pertama mati
digitalWrite (merah2, LOW);  //lampu merah jalan kedua mati
digitalWrite (kuning3, LOW);   //lampu kuning jalan ketiga mati

int nLooping = 3;
  while ( nLooping < 100 )
     nLooping++;   // pengulangan sebanyak 100 kali      }
setelah program dibuat lalu klik verify tanda centang di pojok kiri atas.
Setelah itu buat simulasi pertigaan menggunakan proteus isis dengan komponen:
-          Arduino R3
-          Lampu LED merah, kuning, dan hijau masing masing 3 buah
Buat rangkaian seperti skema dibawah ini:

 Setelah membuat skema rangkaian seperti ini maka langkah selanjutnya adalah memasukkan program ke arduino yaitu dengan cara double klick pada arduino maka akanmuncul kotak seperti gambar dibawah :
Klick pada kotak merah lalu masukkan alamat file hex dari program arduino yang telah dibuat .
Alamat file hex berada pada kotak merah, copy alamat tersebut lalu paste ke alamat yang ada pada edit program.
Langkah terakhir adalah mensimulasikannya yaitu dengan menekan tombol play yang ada di pojok kiri bawah aplikasi proteus.


Daftar Pustaka
-          Materi dari smk tentang arduino dan proteus
-          Materi dari mas gilang

-          https://id.wikipedia.org/wiki/Arduino

Tidak ada komentar:

Posting Komentar