Rabu, 21 Januari 2015

Berlatih LED

Link Menuju Sesi 2
Saat ini ceritanya ingin berlatih Arduino untuk membuat led berjalan nih.. yang namanya berlatih itu bukan masalah latihannya ringan atau sukar yang penting kita harus berlatih dengan semangat.. seperti pepatah orang tua mengatakan " Practice make perpect " yang terjemahannya yang jelas bukan  " Lebih praktis makan kripik " .




 untuk membuat alat ini yang dibutuhkan adalah :
Mikrokontroller Arduino
Led 6 Buah,
BreadBoard dan kabel jumper secukupnya

Led yang enam buah tersebut dipasang di papan Bredboard yang rapi yaaa pemasangannya. Kemudian kaki led dihubungkan ke pin digital arduino nomor : 8,9,10,11,12 dan 13. Yang dihubungkan ke kaki digital adalah bagian anodanya. Sedangkan bagian katoda dihubungkan ke negatif yang ada di arduino.


 Untuk menghidupkan led pada prinsipnya mudah saja perintahnya adalah seperti di bawah ini
  digitalWrite ( 1, HIGH ) ;
perintah di atas itu artinya adalah memerintahkan  pin digital Arduino no 1 agar supaya berlogika HIGH ( Bertegangan 5 Volt ), tegangan tersebut akan menghidupkan led. untuk mematikan lednya perintahnya adalah
  digitalWrite ( 1, LOW );
Perintah low di atas berarti kaki akan berlogika LOW yang artinya tegangan kaki no 1 bernilai Nol Volt. dan tentunya led akan mati.
Untuk membuat sebuah lampu berjalan seperti animasi di atas maka perintahnya harus di modifikasi sedemikian rupa
Contoh Listing Programnya adalah seperti dibawah ini.

-----------------------------------------------------------------------------------------------
// Lampu beralan sampai nyala semua
// Terus mati sampai mati semua
void setup() {
pinMode(13,OUTPUT); pinMode(12,OUTPUT); pinMode(8,OUTPUT);
pinMode(11,OUTPUT); pinMode(10,OUTPUT); pinMode(9,OUTPUT);
}

void loop() {
for (int x = 8 ; x <= 13 ; x ++ ) {
  digitalWrite ( x, HIGH ); delay (555);
}
for (int y = 8 ; y <= 13 ; y ++ ) {
  digitalWrite ( y, LOW ); delay (555);
}
for (int a = 13 ; a >= 8 ; a -- ) {
  digitalWrite ( a, HIGH ); delay (555);
}
for (int b = 13 ;  b >= 8 ; b --  ) {
  digitalWrite ( b, LOW ); delay (555);
}

}
------------------------------------------------------------------------------------------------------

Nah sekarang bagaimanakah caranya memprogram alat agar dapat menyala seperti animasi dibawah ini




Tutorialnya ada di halamnn Berikut ---->  Berlatih Led Sesi Ke 2


Nah Latihan yang akan dilakukan pada percobaan di bawah adalah latihan mikrokontroller Arduino dengan saklar dan 6 buah led. susunlah rangkaian seperti di bawah ini


Nah listing programnya adalah seperti di bawah ini. coba pindahkan ke IDE Arduino yang ada di laptop Saudara.
------------------------------------------------------------------------------------------------------

 int Saklar =2;
int Led1 = 8 ;
int Led2 = 9 ;
int Led3 = 10 ;
int Led4 = 11 ;
int Led5 = 12 ;
int Led6 = 13 ;
int x =0 ; int y =0;
int KondisiSaklar;
boolean s =false;
void setup() {
  pinMode(Led1, OUTPUT);  pinMode(Led4, OUTPUT);
  pinMode(Led2, OUTPUT);  pinMode(Led5, OUTPUT);
  pinMode(Led3, OUTPUT);  pinMode(Led6, OUTPUT);
  pinMode (Saklar, INPUT);
}

void loop() {
  KondisiSaklar = digitalRead (Saklar);
  if (KondisiSaklar == HIGH && s == false)  {
   s = true;
    x=x+1; if (x>=4) x=0;
    delay (80);
  }
  if (KondisiSaklar == LOW ) s = false ;
 if (x == 0) {
 digitalWrite (Led1, LOW);  digitalWrite (Led2, LOW);
 digitalWrite (Led3, LOW);  digitalWrite (Led4, LOW);
 digitalWrite (Led5, LOW);  digitalWrite (Led6, LOW);
 }
 if (x == 1) {
 digitalWrite (Led1, HIGH);  digitalWrite (Led2, HIGH);
 digitalWrite (Led3, HIGH);  digitalWrite (Led4, HIGH);
 digitalWrite (Led5, HIGH);  digitalWrite (Led6, HIGH);
 }
 if (x == 2) {
 y=y+1; if (y>=80) y=0;
 if (y <= 10) {
 digitalWrite (Led1, HIGH);  digitalWrite (Led2, HIGH);
 digitalWrite (Led3, HIGH);  digitalWrite (Led4, HIGH);
 digitalWrite (Led5, HIGH);  digitalWrite (Led6, HIGH);
 }
 if (y >10 && y <=20){
 digitalWrite (Led1, LOW);  digitalWrite (Led2, LOW);
 digitalWrite (Led3, LOW);  digitalWrite (Led4, LOW);
 digitalWrite (Led5, LOW);  digitalWrite (Led6, LOW);
 }
 if (y>20) y=0;
 }
 if (x == 3) {
  if (y <= 10){
 digitalWrite (Led1, LOW);  digitalWrite (Led2, LOW);
 digitalWrite (Led3, LOW);  digitalWrite (Led4, LOW);
 digitalWrite (Led5, LOW);  digitalWrite (Led6, LOW);
  }
  if (y> 10 && y <= 20){
 digitalWrite (Led1, HIGH);  digitalWrite (Led2, LOW);
 digitalWrite (Led3, LOW);  digitalWrite (Led4, LOW);
 digitalWrite (Led5, LOW);  digitalWrite (Led6, LOW);
  }
  if (y >20 && y <= 30){
 digitalWrite (Led1, HIGH);  digitalWrite (Led2, HIGH);
 digitalWrite (Led3, LOW);  digitalWrite (Led4, LOW);
 digitalWrite (Led5, LOW);  digitalWrite (Led6, LOW);
  }
  if (y> 30 && y <= 40){
 digitalWrite (Led1, HIGH);  digitalWrite (Led2, HIGH);
 digitalWrite (Led3, HIGH);  digitalWrite (Led4, LOW);
 digitalWrite (Led5, LOW);  digitalWrite (Led6, LOW);
  }
  if (y > 40 && y <= 50){
 digitalWrite (Led1, HIGH);  digitalWrite (Led2, HIGH);
 digitalWrite (Led3, HIGH);  digitalWrite (Led4, HIGH);
 digitalWrite (Led5, LOW);  digitalWrite (Led6, LOW);
  }
  if (y > 50 && y <= 60){
 digitalWrite (Led1, HIGH);  digitalWrite (Led2, HIGH);
 digitalWrite (Led3, HIGH);  digitalWrite (Led4, HIGH);
 digitalWrite (Led5, HIGH);  digitalWrite (Led6, LOW);
  }
  if (y >60 && y <= 70){
 digitalWrite (Led1, HIGH);  digitalWrite (Led2, HIGH);
 digitalWrite (Led3, HIGH);  digitalWrite (Led4, HIGH);
 digitalWrite (Led5, HIGH);  digitalWrite (Led6, HIGH);
  }
 y=y+1; if (y>=80) y=0;
 }
 delay (50);
}
------------------------------------------------------------------------------------------------------

Setelah Rekan-rekan mencobanya coba rasakan apa bedanya dengan latihan yang ada di atas. Silahkan rekan -rekan terus kembangkan sesuai dengan imajinasi rekan rekan semua

Link menuju Halaman Pemandu



Tidak ada komentar:

Posting Komentar