Selasa, 25 Oktober 2016

Komunikasi VISUAL BASIC

CARA MEMBUAT PROGRAM DI MICROSOFT VISUAL BASIC 6.0





I.TUJUAN
>Untuk melatih siswa dalam memprogram Arduino dan mengetahui fungsi fungsi pemrograman .> Agar siswa dapat mengetahui microsoft VISUAL BASIC.> Agar siswa dapat mengetahui membuat program dengan VISUAL BASIC.


II.ALAT DAN BAHAN
1.Komputer/PC
2.Kabel jumper
3.LED
4.Resistor 330 Ohm
5.Arduino UNO 
6.Kabel data Arduino 
7.Protoboard


III.CARA KERJA 
1.Jika tombol ON ditekan LED akan menyala (hijau)2.Jika tombol OFF ditekan LED akan mati3.Jika tombol SEVEN SEGMEN ditekan maka running led akan menyala dari ujung a   sampai g
4.Jika tombol ON ditekan mka LED akan menyala dan jika tombol 7 SEGMEN ditekan   maka running led akan menyala.
5.Jika tombol OFF ditekan maka led dan 7SEGMEN mati .


IV.LANGKAH KERJA
1.Download microsoft VISUAL BASIC 6.0 "HERE"
2.Jika sudah selesai mendownload buka microsoft VISUAL BASIC
3. Buat Layout Yang di inginkan. di bawah ini contoh layout yang saya buat.


              keterangan :
              - untuk Membuat "ON","OFF", dan "7 Segmen" .mengunakanCommand button pada Microsoft Visual Basic.
              - Untuk membuat Indikator LED. menggunakan Shape.
              - gambar Seperti telefon jadul di atas berfungsi sebagai alat komunikasi arduino dengan Komputer

  - Buka Software Arduino IDE.
  - Buat Program komunikasi serial. Berikut contoh Program Arduino yang telah saya buat:


char val;                                              
int Led = 13;
#define a 2
#define b 3
 #define c 4
 #define d 5
 #define e 6
 #define f 7
 #define g 8


void setup() {
   pinMode(Led,OUTPUT);
   Serial.begin(9600);
   pinMode(a,OUTPUT);
   pinMode(b,OUTPUT);
   pinMode(c,OUTPUT);
   pinMode(d,OUTPUT);
   pinMode(e,OUTPUT);
   pinMode(f,OUTPUT);
   pinMode(g,OUTPUT);
}

void loop() {
    if( Serial.available() >0 )   
{
    val = Serial.read();
    Serial.println(val);
}
    if( val == '1' )           
       { digitalWrite(Led,HIGH);
       Serial.write("nyala");
       }
    else if( val == '0' )           
       { digitalWrite(Led,LOW); }
digitalWrite(a,LOW);
digitalWrite(b,LOW);
digitalWrite(c,LOW);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);
if (val == 'a'){
  ss();}
}

void ss(){
  digitalWrite(a,HIGH);
  delay(200);
digitalWrite(a,LOW);
delay(200);
 digitalWrite(b,HIGH);
  delay(200);
digitalWrite(b,LOW);
 delay(200);
  digitalWrite(c,HIGH);
  delay(200);
digitalWrite(c,LOW);
 delay(200);
 digitalWrite(d,HIGH);
  delay(200);
digitalWrite(d,LOW);
delay(200);
 digitalWrite(e,HIGH);
  delay(200);
digitalWrite(e,LOW);
 delay(200);
  digitalWrite(f,HIGH);
  delay(200);
digitalWrite(f,LOW);
 delay(200);
}
  - Hubungkan Arduino dan PC dengan Kabel data
  - Compile dan Upload Program ke arduino
  - Buat Program pada Microsoft Visual basic. Berikut contoh Program saya

  - Selesai membuat program Pada Microsoft Visual basic lalu play untuk melihat hasil Pemograman.


Selasa, 11 Oktober 2016

KOMUKASI SERIAL INPUT ARDUINO DENGAN PUSH BUTTON DAN KEYBOARD



I. Alat dan Bahan
   1. Led (9buah)
   2. Kabel jumper male (18buah)
   3. Resistor (5buah)
   4. ArduinoUNO (1buah)
   5. Potensio 100k (1buah)
   6. Push button (2buah)
   7. Protoboard (1buah)
   8. Seperangkat PC 
   9. Kabel data Arduino UNO

II. Tujuan
    * Untuk melatih siswa dalam memprogram Arduino dan mengetahui fungsi fungsi pemrograman .

III.Cara kerja 
   1. Jika push button 1 ditekan maka Led akan menyala secara running dan led indikator menyala              (putih)
   2. Jika push button 2 ditekan maka Led akan menyala secara flip flop dan Led indikator akan                  menyala (merah)
   3.Jika serial Monitor menerima data 'r' dari Keyboard maka Led akan menyala secara running dan         Led indikator menyala (putih)
   4.Jika serial Monitor menerima data 'f' dari Keyboard maka Led akan menyala secara flip dlop dan         Led indikator menyala (merah)
  

IV.Proses kerja 
   1.Nyalakan komputer dan masuk ke PC
   2. Ketik program seperti dibawah ini :

#define PB A0
#define PBdua A1
#define POT A2
int kondisiPOT = 0;
int kondisiPB = 0;
int kondisiPBdua = 0;
int dataserial = 0;
#define led1 2
#define led2 3
#define led3 4
#define led4 5
#define led5 6
#define led6 7
#define led7 8
#define ledPB 9
#define ledPBdua 10
void setup() {
  Serial.begin(9600);
  pinMode(led1,OUTPUT);
  pinMode(led2,OUTPUT);
  pinMode(led3,OUTPUT);
  pinMode(led4,OUTPUT);
  pinMode(led5,OUTPUT);
  pinMode(led6,OUTPUT);
  pinMode(led7,OUTPUT);
  pinMode(ledPB,OUTPUT);
  pinMode(ledPBdua,OUTPUT);
}

void loop(){
  looping:
   digitalWrite(led4,LOW);
   digitalWrite(led3,LOW);
   digitalWrite(led2,LOW);
   digitalWrite(led1,LOW);
   digitalWrite(led5,LOW);
   digitalWrite(led6,LOW);
   digitalWrite(led7,LOW);
    digitalWrite(ledPB,LOW);
     digitalWrite(ledPBdua,LOW);
  dataserial = Serial.read();
  kondisiPB = digitalRead(PB);
  kondisiPBdua = digitalRead(PBdua);
  Serial.print("UBAH KONDISI");
  Serial.println();
  delay(300);
 if (kondisiPB == HIGH){
  digitalWrite(ledPB,HIGH);
  Serial.print("PB Satu di Tekan");
  Serial.println();
  RunLed(); }
 if (kondisiPBdua == HIGH){
  digitalWrite(ledPBdua,HIGH);
  Serial.print("PB Dua di Tekan");
  Serial.println();
 Flipflop(); }
 if (dataserial == 'r'){
  digitalWrite(ledPB,HIGH);
  Serial.print("keyboard r di Tekan");
  Serial.println();
  RunLed(); }
 if (dataserial == 'f'){
  digitalWrite(ledPBdua,HIGH);
  Serial.print("keyboard f di Tekan");
  Serial.println();
  Flipflop();}

}
void RunLed(){
  digitalWrite(ledPBdua,LOW);
  kondisiPOT = analogRead(POT)+50;
  dataserial = Serial.read();
  kondisiPB = digitalRead(PB);
  kondisiPBdua = digitalRead(PBdua);
   digitalWrite(led4,LOW);
   digitalWrite(led3,LOW);
   digitalWrite(led2,LOW);
   digitalWrite(led1,LOW);
   digitalWrite(led5,LOW);
   digitalWrite(led6,LOW);
   digitalWrite(led7,LOW);
 
   if (kondisiPBdua == HIGH){
  digitalWrite(ledPB,LOW);
  Serial.print("PB dua di tekan");
  Serial.println();
  Flipflop(); }
   if (dataserial == 'f'){
  digitalWrite(ledPB,HIGH);
  Serial.print("keyboard f di tekan");
  Serial.println();
  Flipflop(); }

  digitalWrite(led1,HIGH);
    digitalRead(kondisiPBdua);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led1,LOW);

   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led2,HIGH);
  digitalRead(kondisiPBdua);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led2,LOW);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led3,HIGH);
  digitalRead(kondisiPBdua);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led3,LOW);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led4,HIGH);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led4,LOW);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led5,HIGH);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led5,LOW);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led6,HIGH);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led6,LOW);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led7,HIGH);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
  digitalWrite(led7,LOW);
   delay(kondisiPOT);
   kondisiPOT = analogRead(POT)+50;
 if (kondisiPBdua == HIGH){
  digitalWrite(ledPB,LOW);
  Serial.print("PB dua di tekan");
  Serial.println();
  Flipflop(); }
 if (dataserial == 'f'){
  digitalWrite(ledPB,HIGH);
  Serial.print("keyboard f di tekan");
  Serial.println();
  Flipflop(); }

  RunLed();
}
void Flipflop(){
  digitalWrite(ledPB,LOW);
  dataserial = Serial.read();
  kondisiPB = digitalRead(PB);
  kondisiPBdua = digitalRead(PBdua);
   digitalWrite(ledPBdua,HIGH);
  digitalWrite(led4,LOW);
   digitalWrite(led3,LOW);
   digitalWrite(led2,LOW);
   digitalWrite(led1,LOW);
   digitalWrite(led5,LOW);
   digitalWrite(led6,LOW);
   digitalWrite(led7,LOW);
  kondisiPOT = analogRead(POT)+100;
  digitalWrite(led1,HIGH);
  digitalWrite(led2,HIGH);
  digitalWrite(led3,HIGH);
  digitalWrite(led5,LOW);
  digitalWrite(led6,LOW);
  digitalWrite(led7,LOW);
delay(kondisiPOT);
  digitalWrite(led7,HIGH);
  digitalWrite(led6,HIGH);
  digitalWrite(led5,HIGH);
  digitalWrite(led3,LOW);
  digitalWrite(led2,LOW);
 digitalWrite(led1,LOW);
delay(kondisiPOT);
if (kondisiPB == HIGH){
  digitalWrite(ledPB,HIGH);
  Serial.print("PB Satu di Tekan");
  Serial.println();
  RunLed();}
if (dataserial == 'r'){
  digitalWrite(ledPB,HIGH);
  Serial.print("keyboard r di tekan");
  Serial.println();
  RunLed();
}
Flipflop();

}

   3 .Compile program dengan menekan CTRL+R
   4. Rangkai rangkaian LED dengan potensio dan pushbutton
   5. Sambungkan Arduino dengan port USB pada PC
   6. Periksa port dan COMM Arduino pada software ArduinoIDE
   7. Setelah port dan COMM tersambung dan terbaca di software Arduino maka upload program               dengan menekan CTRL+U  
   8 . Setelah "DONE UPLOADING" kemudian jalankan rangkaian dengan mengetik di Keyboard              atau Pushbutton.


V. Rangkaian











( Contoh vidio "klik HERE" )