Minggu, 22 April 2018

Tutorial Program Motor Servo Menggunakan Arduino patr II / 2 motor servo

setelah kita mempelajari 1 motor servo maka kita lanjutkan dengan 2 motor servo

dan masih dengan peralatan yang sama 

perbedaanya hanya kita menggunakan 2 buah motor servo

dan ini progam ardiuno motor servo

============================================

#include <Servo.h>

Servo servo1,servo2;  // create servo object to control a servo
// twelve servo objects can be created on most boards
int pos = 0;    // variable to store the servo position
void setup() {
  servo1.attach(9);  // attaches the servo on pin 9 to the servo object
  servo2.attach(10);  // attaches the servo on pin 10 to the servo object
}

void loop() {
  for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
    // in steps of 1 degree
    servo1.write(pos);              // tell servo to go to position in variable 'pos'
    servo2.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
  for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
    servo1.write(pos);              // tell servo to go to position in variable 'pos'
    servo2.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
}

=======================================================

maka akan menjadi seperti ini

 


Tutorial Program 1 Buah Motor Servo Menggunakan Arduino

Motor servo adalah salah satu jenis motor DC yang memiliki sistem umpan balik tertutup.Di dalam motor servo sendiri terdiri dari beberapa bagian yaitu : motor DC,rangkaian gear,kontrol dan potensiometer.

Alat dan Komponen :
  • Mikrokontroller Arduino UNO / type lain
  • Motor Servo (“admin memakai sevo type HS 311 dan HS-325HB”)
Rangkailah alat dan komponen seperti di bawah ini :
Untuk memulai memprogram motor servo terlebih dahulu set posisi servo ke 0 derajat / 180 derajat .
Program untuk reset posisi ke 0/180 derajat di bawah ini :
 ===============================================
#include <Servo.h>
Servo servoku;
void setup()
{
servoku.attach(9); // pin out data servo terletak di pin 9 arduino
servoku.write(0); //mereset posisi servo ke posisi sudut 0 derajat
}
void loop()
{
}
 ================================================
Selanjutnya  masukkan program putaran servo dari posisi 0 ke 180 dan 180 ke 0
================================================
#include <Servo.h>

Servo myservo;  // create servo object to control a servo
// twelve servo objects can be created on most boards

int pos = 0;    // variable to store the servo position

void setup() {
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
}

void loop() {
  for (pos = 0; pos <= 180; pos += 1) { // goes from 0 degrees to 180 degrees
    // in steps of 1 degree
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
  for (pos = 180; pos >= 0; pos -= 1) { // goes from 180 degrees to 0 degrees
    myservo.write(pos);              // tell servo to go to position in variable 'pos'
    delay(15);                       // waits 15ms for the servo to reach the position
  }
}
======================================================


 

CARA MEMBUAT  "INPUT-OUTPUT(I/O)"


A.) Mengetahui Inputan Bekerja Dengan Serial Monitor

      Program :
   
 int x=0;              //variabel x bil. bulat 0

void setup(){         //program inialisasi satu kali setting dan start
  Serial.begin(9600); //kirim dengan v=9600 data/s
  pinMode(2,OUTPUT);  //pin 2 Arduino disetting sebagai output
  pinMode(3,INPUT);   //pin 3 Arduino disetting sebagai input(tombol/push button)
}

void loop(){          //program berulang dan start
  x= digitalRead(3);  //baca pin 3 Arduino hasilnya dijadikan nilai x
  Serial.println(x);  //munculkan di serial monitor
  delay(200);
}
Jika tombol ditekan akan muncul 1 , jika tidak maka akan muncul 0
B.) lampu akan NYALA jika tombol ditekan , jika tidak lampu akan MATI
      Program :
int x;              //variabel x bil. bulat
void setup(){         //program inialisasi satu kali setting dan start
  Serial.begin(9600); //kirim dengan v=9600 data/s
  pinMode(2,OUTPUT);  //pin 2 Arduino disetting sebagai output
  pinMode(3,INPUT);   //pin 3 Arduino disetting sebagai input
}
void loop(){          //program berulang dan start
  x= digitalRead(3);  //baca pin 3 Arduino hasilnya dijadikan nilai x
  Serial.println(x);  //munculkan di serial monitor
  if(x==HIGH){        //jika nilai x tinggi/tombol ditekan
    digitalWrite(2,HIGH);//maka output/lampu akan menyala
    else{             //jika tidak ditekan
      digitalWrite(2,LOW);//maka lampu akan mati
    }
    delay(50);        //tahan 50ms
  }
}
C.) Lampu akan NYALA jika diklik 1 kali dan akan MATI jika diklik 1 kali lagi
      Program :
===========================================================
      int x;              //variabel x bil. bulat 0
void setup(){         //program inialisasi satu kali setting dan start
  Serial.begin(9600); //kirim dengan v=9600 data/s
  pinMode(2,OUTPUT);  //pin 2 Arduino disetting sebagai output
  pinMode(3,INPUT);   //pin 3 Arduino disetting sebagai input
}
void loop(){          //program berulang dan start
  x= digitalRead(3);  //baca pin 3 Arduino hasilnya dijadikan nilai x
  Serial.println(x);  //munculkan di serial monitor
  if(x==1){           //jika nilai x tinggi/tombol ditekan
    if(a==0){         //jika variabel a = 0
    digitalWrite(2,HIGH);//maka output/lampu akan menyala
    a=1;              //variabel a = 1
    }
    else{             //jika ditekan lagi
      digitalWrite(2,LOW);//maka lampu akan mati
      a=0;            //variabel a = 0
    }
}
========================================================


CARA MEMBUAT LAGU HAPPY BIRTHDAY DI ARDUINO



Diantara para pembaca pasti banyak yang uka mendengarkan musik bukan ? Atau malah suka main musik ? Nah pada tutorial kali ini, NP akan share bagaimana cara untuk memainkan nada musik melalui Arduino. Siapa tahu nanti kita bisa bikin alat musik sendiri semisal piano dgital hehehe😀 .
Yaps, seperti biasa, komponen yang perlu kamu siapkan yaitu :
  • 1 buah Arduino(UNO, Mega, NANO, atau yang lain)
  • 1 buah speaker 8 ohm (atau yang lain)
  • Kabel jumper secukupnya
Dan untuk review Selanjutnya monggo dirangkai Sesuai DENGAN SKEMA berikut Penyanyi:
Hasil gambar untuk CARA MEMBUAT PROGRAM ARDUINO MUSIK 

Keterangan :


Salah satu kaki speaker hubungkan ke pin A5
Kaki yang lain hubungkan ke Ground (GND)
Nah sekarang masukkan program berikut ini pada software IDE Arduino, lalu jalankan :
===============================================================
int speakerPin = 10;

int length = 28; // the number of notes

char notes[] = "GGAGcB GGAGdc GGxecBA yyecdc";

int beats[] = { 2, 2, 8, 8, 8, 16, 1, 2, 2, 8, 8,8, 16, 1, 2,2,8,8,8,8,16, 1,2,2,8,8,8,16 };

int tempo = 150;

void playTone(int tone, int duration) {

for (long i = 0; i < duration * 1000L; i += tone * 2) {

   digitalWrite(speakerPin, HIGH);

   delayMicroseconds(tone);

   digitalWrite(speakerPin, LOW);

   delayMicroseconds(tone);

}

}

void playNote(char note, int duration) {

char names[] = {'C', 'D', 'E', 'F', 'G', 'A', 'B',          

                 'c', 'd', 'e', 'f', 'g', 'a', 'b',

                 'x', 'y' };

int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014,

                 956,  834,  765,  593,  468,  346,  224,

                 655 , 715 };

int SPEE = 5;

// play the tone corresponding to the note name

for (int i = 0; i < 17; i++) {

   if (names[i] == note) {
    int newduration = duration/SPEE;
     playTone(tones[i], newduration);

   }

}

}

void setup() {

pinMode(speakerPin, OUTPUT);

}

void loop() {

for (int i = 0; i < length; i++) {

   if (notes[i] == ' ') {

     delay(beats[i] * tempo); // rest

   } else {

     playNote(notes[i], beats[i] * tempo);

   }

   // pause between notes

   delay(tempo);

}

}
 ==============================================================
DAN HASILNYA

 CARA MEMBUAT LAMPU LED REDUP TERANG


Untuk ujicoba  Mengontrol Terang Redup Nyala LED dengan menggunakan PWM pada arduino salah satu syarat utama nya adalah jangan sampai terbalik dalam pemasangan LED nya ya. kenali kaki anoda dan katoda dengan baik ya supaya anda tidak merusakkan led yang anda gunakan

Berikut adalah Gambar kaki anoda dan kaki katoda pada sebuah LED

Gambar kaki anoda dan kaki katoda pada sebuah LED
Gambar kaki anoda dan kaki katoda pada sebuah LED

Pastikan pin LED tidak terbalik ya (intip bentuk kaki di dalam LED),kalau terbalik LED tidak akan berkedip, karena arus akan di alirkan dari Anoda ke katoda, arus tidak dapat mengalir dari Katoda ke Anoda (oh iya dapat terjadi sih, tapi … tapinya LED rusak alias jebol, LED ga nyala dan LED rusak), so jangan sampai terbalik memasang led di kaki pin arduinonya ya.

Selanjutnya buat rangkaian Mengontrol Terang Redup Nyala LED dengan menggunakan PWM pada arduino sebagai mana gambar di bawah ini :

Rangkaian Mengontrol Terang Redup Nyala LED dengan menggunakan PWM pada arduino
Rangkaian Mengontrol Terang Redup Nyala LED dengan menggunakan PWM pada arduino



Keterangan :
LED nilai opsional boleh 220 ohm, 330 ohm 470 ohm 680ohm sebaiknya di bawah 1000 ohm
Dalam contoh ini pin anoda mendapatkan jalur dari pin 9 arduino (cek gambar di atas)
Sedangkan pin katoda ke ground arduino (cek gambar di atas)
Sudah cukup jelas kan ?

Sekarang bagian coding alias sketch untuk Mengontrol Terang Redup Nyala LED dengan menggunakan PWM pada arduino
//=======================================================================
int ledPin = 9;    // LED connected to digital pin 9
void setup()  {
}
void loop()  {
  // fade in from min to max in increments of 5 points:
  for(int nilaiTerangRedup = 0 ; nilaiTerangRedup <= 255; nilaiTerangRedup +=5) {
    // sets the value (range from 0 to 255):
    analogWrite(ledPin, nilaiTerangRedup);        
    // wait for 30 milliseconds to see the dimming effect   
    delay(30);                           
  }

  // fade out from max to min in increments of 5 points:
  for(int nilaiTerangRedup = 255 ; nilaiTerangRedup >= 0; nilaiTerangRedup -=5) {
    // sets the value (range from 0 to 255):
    analogWrite(ledPin, nilaiTerangRedup);        
    // wait for 30 milliseconds to see the dimming effect   
    delay(30);                           
  }
}
//======================================================================

Setelah rangkaian Mengontrol Terang Redup Nyala LED dengan menggunakan PWM pada arduino dibuat
Silakan simpan dan upload sketch tersebut ke arduino, dan hasil nya adalah :

Led akan menyala dari redup menjadi terang dan kembali dari terang menuju redup secara berulang ulang penundaan proses perstep kenaikan level terang redup adalah sebesar 30 milidetik (silakan ubah ubah nilainya) supaya penundaan yang dilakukan teramati oleh mata anda dengan lebih jelas.


DAN INILAH HASILNYA



CARA MEMBUAT LAMPU LED BERJALAN
Sebelum saya memulai Project Lampu LED Berjalan Menggunakan Arduino UNO, saya mengucapkan selamat Hari Raya Idul Adha 1437 H, yang jatuh pada tanggal 12 September 2016 atau 1 Dzulhijjah. Saya berharap dengan berqurban, umat muslim bisa lebih diajarkan saling berbagi kepada umat yang kurang mampu serta keikhlasan hati, dan di jauhkan dari sifat tamak serta berlebih-lebihan, yang mana segala sesuatu yang kita punya adalah titipan dari sang pencipta kita, Allah SWT.
Oke, balik lagi pada topik kita hari ini Project sekarang saya akan menggunakan dari pin 0 sampai 4 pada Arduino UNO untuk menyalakan sebuah Project Lampu LED Berjalan Menggunakan Arduino UNO, serta saya akan menjelaskan mulai dari hardware dan software berserta cara kerjanya yang bermaksud membuat para pembaca dapat mengerti dengan apa yang saya sampaikan . Aamiin.
Alat dan Bahan
  • 5 Buah LED 5mm atau LED 3mm (Warna Bebas)
  • 5 Buah Resistor 100Ω Ohm
  • 6 Buah Kabel Jumper
  • 1 Buah Protoboard
  • 1 Buah Arduino
Rangkaian Lampu LED Berjalan Menggunakan Arduino UNO
lampu-led-berjalan-menggunakan-arduino-uno
Keterangan
  • Pin GND Arduino (Warna Hitam) ke GND/KATODA LED0, 1, 2, 3, dan 4 (Warna Hitam)
  • Pin 4 (Warna Hijau) ke Resistor
  • Pin 3 (Warna Orange) ke Resistor
  • Pin 2 (Warna Merah) ke Resistor
  • Pin 1(Warna Ungu) ke Resistor
  • Pin 0 (Warna Biru) ke Resistor
  • Sisi lain dari semua Resistor di hubungkan ke Positif LED (1 LED = 1 Resistor dan seterusnya)
Sketch Program

====================================================================
void setup() {
int n; // variabel n bilangan bulat
for(n=0;n<4;n++){ // kondisikan 1 persatu mulai dari 0 sd 5
  pinMode(led[n],OUTPUT); // kondisikan led n sebaggai output
  }                                                  // akhir for to do
}                                                    // akhir vvoid setup
void loop() {
int n;
int tunda=50;
for(n=0; n<6;n++){
  digitalWrite(led[n],HIGH);
  delay (tunda);
digitalWrite(led[n],LOW);
}                                        // akhir pengulangan for to do
}                                         // akhir void loop
================================================================

TUGAS PRAKTIKUM-1 "Mencetak Kalimat di Monitor"

Nama Kelompok :
1. Rudi Setiawan / 163600005
2. Moh. Rifqi Afiudin / 163600049
a) Mencetak Kalimat di Monitor

Listing code
void setup()
     {
             Serial.begin(9600);
                     Serial.print(“HALO, PAK KETUT”);            
     }
void loop(){ }

Running program

b) Mencetak Kalimat di Monitor Dengan Pengulangan While to Do

Listing Code
int n;
void setup() {
  Serial.begin(9600);
    Serial.println("Pengulangan while do ");
do{
           Serial.print(n);
                Serial.println(“. Hallo Pak Ketut, Sampai Jumpa di Pantai Damas”);
                   n=n+1;
                   delay(100);
        }
                while(n<=5);
delay(100);
}
void loop(){ }
Running program























c) Mencetak Kalimat di Monitor Dengan Pengulangan For to Do
Listing code 
int n;
void setup() {
  Serial.begin(9600);
    Serial.println("Pengulangan for to do didalam void loop");
      for(n=1;n<=5;n++)
    {
      Serial.print(n);
        Serial.println(". Hallo Pak Ketut, Sampai Jumpa di Pantai Damas");
    }
}
void loop() {}
Running program








d) Mencetak Kalimat di Monitor Dengan Pengulangan While to Do di dalam Void loop
Listing code
int n=1;
void setup() {
  Serial.begin(9600);
    Serial.println("Pengulangan while to do didalam void loop");
}
void loop(){
  if(n<=5){
        do{
           Serial.print(n);
                Serial.println(“. Hallo Pak Ketut, Sampai Jumpa di Pantai Damas”);
                   n=n+1;
                   delay(50);
        }
                while(n<=5);
     }
           delay(100);
}
Running program








e) Mencetak Kalimat di Monitor Dengan Pengulangan For to Do di dalam Void loop
Listing code 
int n=1;
void setup() {
  Serial.begin(9600);
    Serial.println("Pengulangan for to do didalam void loop");
}
void loop() {
  if(n<=5){
    for(n=1;n<=5;n++)
    {
      Serial.print(n);
        Serial.println(". Halo Pak Ketut , Sampai Jumpa di Pantai Damas");
        delay(100);
    }
  }
}
Running program



Komentar