Senin, 23 Februari 2015

latihan Permulaan Arduino

Apakah saudara baru belajar Mikrokontroller Arduino. Ingin Melakukan praktek...?
Baguuuusss... Pertama Tama siapkan terlebih dahulu Mikrokontrollernya kemudian siapkan Softwer pemrogramnya atau yang di sebut IDE yang dapat di download dari situs Arduino. atau minta saja ke teman tentunya lebih praktis bukan... Akuuuuurr...  Cobalah hubungkan mikrokontroller saudara ke komputer dan lihat apakah dikenali oleh komputer atau tidak. untuk Software Windows 7, 8,10  tentunya tidak akan masalah karena akan dikenali. bila menggunakan Windows Xp maka ada cara untuk pengenalan Mikrokontroller ke PC. Cari saja caranya di Google yaaa. atau dapat melihat dulu di Youtube.
 Jika sudah dihubungkan dengan PC maka Cobalah Praktek yang paling sederhana yaitu Led ber kedip kedip. atau blingking Led. yang harus kita persiapkan yaitu satu buah led kemudian Anodanya kita hubungkan dengan kaki Mikrokontroller Arduino nomor 13 dan Katodanya hubungkan dengan Ground.

Sketch Program latihan led berkedip ada di dalam contoh dan di sediakan di IDE nya coba klik File kemudian klik Examples kemudian klik Basic kemudian  Klik Blink dan taraaaaa.. muncullah contoh pemrogramannya.

Contoh Programnya adalah seperti di bawah ini. apapun versi idenya. isinya tetap sama..
------------------------------------------------------------------------------------------
/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.

  This example code is in the public domain.
 */

// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = 13;

// the setup routine runs once when you press reset:
void setup() {
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
}
------------------------------------------------------------------------------------
Bagian yang sengaja di beri warna merah adalah komentar, komentar tidak dijalankan di dalam program hanya sekedar hiasan yang tujuannya adalah memberi keterangan agar program lebih mudah di pelajari. Marilah  kita urut program di atas agar rekan rekan yang baru belajar lebih mengerti.
int led = 13; adalah mendeklarasikan variabel led bernilai 13 dan variabelnya adalah integer  disingkat int.
jadi jika di dalam program kita menemukan led itu berarti bernilai 13.
pinMode(led, OUTPUT);  artinya led atau 13 dijadikan sebagi output. dalam hal ini maksud 13 adalah kaki mikrokontroller Arduino nomor 13 (Pin Digital yaaa bukan yang analog).
digitalWrite(led, HIGH); artinya adalah kaki arduino nomor 13 kita jadikan berlogika HIGH atau akan mengeluarkan tegangan sebesar 5 Volt DC nah pada saat iinilah led akan hidup.
  delay(1000);  artinya program akan di tahan selama satu detik (1000 = 1 detik). selama di tahan tersebut mikrokontroller akan diam dan tentunya selama ini led akan menyala.
 digitalWrite(led, LOW);  artinya adalah kaki arduino nomor 13 kita jadikan berlogika LOW atau akan mengeluarkan tegangan sebesar 0 Volt DC nah pada saat iinilah led yang tadinya hidup selama satu detik akan mati.
 delay(1000);  artinya program akan di tahan selama satu detik dan selama di tahan tersebut mikrokontroller akan diam dan tentunya selama ini led akan tetap mati.
}  adalah akhir dari program bagian LOOP jika sudah mencapai bagian akhir ini maka program akan kembali ke bagian awal LOOP dan akan memulai kerja kembali yakni led akan hidup 1 detik dan akan mati 1 detik dan akan begitu terus sampai alat di matikan. terus berkedip dan ga ada capenya yaaa.. geniiit......

Masih ingin berlatih dengan led ayo ikuti halaman berikut... Berlatih dengan beberapa Led

Minggu, 15 Februari 2015

Skripsi arduino



ž
  Keran Solenoid air  tidak aktif.

  Keran Solenoid pupuk tidak aktif

  Pompa listrik  tidak aktif

Proses pemupukan tanaman dilakukan dengan cara  :
Keran Solenoid pupuk aktif.

  Keran Solenoid  air tidak aktif.

  Pompa listrik aktif dan akan memompa pupuk cair  dan disalurkan ke tanaman.




Keran Solenoid air aktif.

  Keran Solenoid pupuk tidak aktif

  Pompa listrik aktif dan akan memompa air  dari tangki air dan di salurkan ke tanaman












Jam tanpa rtc yang dapat diatur

Link ke Halaman utama

halaman ini adalah lanjutan dari halaman berlatih membuat jam tanpa RTC

Ceritanya jam yang dirancang kali ini dapat di atur dengan tombol tekan yang ada sehingga jam dapat disesuaikan. rangkaiannya adalah seperti dibawah ini.

nah ini dia poto-poto percobaannya

poto di atas adalah hasil percobaan kang mas Yadi tuuuch.. ada tombol saklar 3 biji,sebuah arduino board, satu buah lcd 16x2 karakter murah meriah dan powerbank samsung sebagai catu dayanya dengan menggunakan kabel printer, jadi abis ngupload programnya dari laptop langsung deh colokin ke power bang, terlihat dari poto
Langkah pertama adalah mengatur jamnya
Langkah selanjutnya adalah mengatur menitnya
langkah terakhir sesuaikan detiknyaa
Selesailah bagian pengaturan jam. tapi awas yaaa..  jangan sampai batrainya abis. batrai abis selesai sudah jamnya. atur lagi deh dari awal
---------------------------------------------------------------------------
#include <LiquidCrystal.h>
LiquidCrystal lcd(5, 4, 3, 2,1,0);
int aa,a,b,c,d,e,f,ff,g ,jamm,menitt,detikk;
String jam;
String mode="jam";
void setup() {
  lcd.begin(16, 2);
  pinMode(8,INPUT);
  pinMode(9,INPUT);
  pinMode(10,INPUT);
}

void loop() {
if (mode=="jam"){
if ( f!=ff){
  lcd.clear();
  lcd.setCursor (0,0); lcd.print("Proyek Jam");
  jam="Jam : "+String(a)+String(b)+":" +String(c);
  jam=jam +String(d)+":"+String(e)+String(f);
  lcd.setCursor (0,1); lcd.print(jam);
  ff=f;
}
  delay(200);
  g=g+1;
  if (g==5){  f=f+1; g=0;}
  if (f==10) {   f=0; e=e+1;}
  if (e==6) {   e=0; d=d+1;}
  if (d==10) {   d=0; c=c+1;}
  if (c==6) {   c=0; b=b+1;}
  if (b==10) {   b=0; a=a+1;}
  aa=(a*10)+b ;  if (aa==24) {   a=0; b=0;}
  if (digitalRead(8)==HIGH){ mode="atur1";
  jamm=(a*10)+b; menitt =(c*10)+d; detikk=(e*0)+f;
delay(200);}
}

if (mode=="atur1"){
  lcd.clear();
  lcd.setCursor (0,0); lcd.print("Rubah Jam: ");lcd.print(jamm);
  if (digitalRead(9)==HIGH){delay(100);
  jamm=jamm+1;
  if (jamm>23){jamm=0;}
    }
  if (digitalRead(10)==HIGH){delay(100);
  jamm=jamm-1;
  if (jamm<0){jamm=23;}
   }
  if (digitalRead(8)==HIGH){
  a=jamm/10; b=jamm % 10;
   mode="atur2";   delay(200);}
delay(200);} 

if (mode=="atur2"){
  lcd.clear();
  lcd.setCursor (0,0); lcd.print("Rubah menit: ");lcd.print(menitt);
  if (digitalRead(9)==HIGH){delay(100);
  menitt=menitt+1;
  if (menitt>59){menitt=0;}
   }
  if (digitalRead(10)==HIGH){delay(100);
  menitt=menitt-1;
  if (menitt<0){menitt=59;}
   }
  if (digitalRead(8)==HIGH){
  c=menitt/10; d=menitt % 10;
   mode="atur3";   delay(200);}
delay(200);} 
if (mode=="atur3"){
  lcd.clear();
  lcd.setCursor (0,0); lcd.print("Rubah Detik: ");lcd.print(detikk);
  if (digitalRead(9)==HIGH){ delay(100);
   detikk=detikk+1;
  if (detikk>59){detikk=0;}
   }
  if (digitalRead(10)==HIGH){delay(100);
   detikk=detikk-1;
  if (detikk<0){detikk=59;}
   }
  if (digitalRead(8)==HIGH){
  e=detikk/10;  f=detikk % 10 ;
   mode="jam";   delay(200);}
delay(200);}   

}

---------------------------------------------------------------------------
Setelah di jalankan ternyata dalam semalam jam mengalami telat sekitar 4 menit. Maksudnya waktu malam di jalankan waktunya sama dengan jam dindi. Dan setelah semalaman ham nya tidak sama dengan jam dinding. Ada telat sekitar 4 atau 5 menit. Dan juga baterainya tidak kuat lama. Jadi tidak mungkin di gunakan jangka panjang

Jumat, 13 Februari 2015

berlatih membuat jam tanpa RTC

Link menuju halaman utama
link menuju latihan sesion dua

    Ceritanya ingin membuat jam dengan memanfaatkan sebuah arduino dan lcd 16x2 karakter.disini sengaja tidak menggunakan RTC. Modal dasarnya adalah pemanpaatan delay pada program
Dengan cara menggunakan delay selama satu detik maka variabel detik bertambah, jika sudah 60 detik maka variabel menit bertambah, jika sudah 60 menit maka variabel Jam bertambah
Yang Kita perlukan adalah :
1. Mikrokontroller Arduino
 2. Lcd 16x2 karakter



-------------------------------------io-------------------------------------
#include <LiquidCrystal.h>
LiquidCrystal lcd(5, 4, 3, 2,1,0);
byte aa,a,b,c,d,e,f ;
String (jam);
void setup() {
  lcd.begin(16, 2);
}

void loop() {
  lcd.clear();
  lcd.setCursor (0,0); lcd.print("Proyek Jam");
  jam="Jam : "+String(a)+String(b)+":" +String(c);
  jam=jam +String(d)+":"+String(e)+String(f);
  lcd.setCursor (0,1); lcd.print(jam);
  delay(1000);
  f=f+1;
  if (f==10) {   f=0; e=e+1;}
  if (e==6) {   e=0; d=d+1;}
  if (d==10) {   d=0; c=c+1;}
  if (c==6) {   c=0; b=b+1;}
  if (b==10) {   b=0; a=a+1;}
  aa=(a*10)+b ;  if (aa==24) {   a=0; b=0;}
   
}
--------------------------------------------------------------------------
 program di atas akan berjalan menampilkan jam 00:00 (jam 12 malam). jadi pertama kali diaktipkan harus jam 12 malam. disini tidak ada cara untuk merubah jam dan menitnya.


link ke latihan sesion dua

Sabtu, 07 Februari 2015

RTC & Arduino

Pada kesempatan kali ini kita akan melakukan praktek Mikrokontroller arduino Dengan modul RTC. Nah perhatikan gambar modul LCD di bawah ini.


Modul RTC Mempunyai 4 kaki yang harus dihubungkan dengan Mikrokontroller yaitu  :
Kaki SCL harus dihubungkan dengan Pin Analog A5 tetapi jika menggunakan  ARduino Mega 2560 ada sedikit perbedaan silahkan cari melalui Mas Google yaaa...
Kaki SDA harus dihubungkan dengan Pin Analog A4
VCC dihubungkan dengan sumber daya 5 Volt yang ada di Mikrokontroller
Ground (Gnd) dihubungkan dengan ground yang ada di Mikrokontroller.

Nah sekarang Marilah kita coba memprogramnya. Silahkan buka komputernya dan cobalah program di bawah ini.




**********************************************************
#include "Wire.h"
#define DS1307_ADDRESS 0x68

void setup(){
  Wire.begin();
  Serial.begin(9600);
}

void loop(){
  printDate();   delay(1000);
}
byte bcdToDec(byte val)  {
// Convert binary coded decimal to normal decimal numbers
  return ( (val/16*10) + (val%16) );
}
void printDate(){

  // Reset the register pointer
  Wire.beginTransmission(DS1307_ADDRESS);

  byte zero = 0x00;
  Wire.write(zero);
  Wire.endTransmission();

  Wire.requestFrom(DS1307_ADDRESS, 7);

  int second = bcdToDec(Wire.read());
  int minute = bcdToDec(Wire.read());
  int hour = bcdToDec(Wire.read() & 0b111111); //24 hour time
  int weekDay = bcdToDec(Wire.read()); //0-6 -> sunday - Saturday
  int monthDay = bcdToDec(Wire.read());
  int month = bcdToDec(Wire.read());
  int year = bcdToDec(Wire.read());

  //print the date EG   3/1/11 23:59:59
  Serial.print(month) ;  Serial.print("/") ;   Serial.print(monthDay);
  Serial.print("/");   Serial.print(year);   Serial.print(" ");
  Serial.print(hour);   Serial.print(":");   Serial.print(minute);
  Serial.print(":");   Serial.println(second);

}
**********************************************************


 Program di atas akan menampilkan nilai jam di monitor serial atau di layar laptop. setelah program di uploud ke Mikrokontroller maka klik serial monitor yang ada di Arduino IDE dan akan ada tampilan waktu di layar yang muncul. yaa ini adalah latihan dasar dan tentunya tidak praktis. Alat yang kita buat belum bisa jadi jam yang dapat di tempatkan di meja kerja yaaa. harus dikembangkan lagi dengan tambahan layar LCD.

Mari kita kembangkan lagi program di atas agar lebih menarik. ikutilah halaman berikut untuk membuat jam sesi ke dua atau bila ingin mempelajari cara merubah nilai waktu yang ada di modul RTC maka kunjungi halaman ini ..  Ayo  Semangaath.....  !!!!!!!


Kembali Ke halaman Awal

Minggu, 01 Februari 2015

Halaman Utama

Selamat datang di Blog Kang Mas Yadi. Mudah mudahan rekan rekan berada dalam kebahagian dan dengan mengunjungi blog ini rekan rekan dapat memperoleh tambahan bekal dalam mempelajari mikrokontroller arduino. Kunci utama dalam belajar mikrokontroller adalah semangat dan pantang menyerah dalam berlatih pemrograman. yakinlah segala sesuatunya pasti akan sukses.

1. Penggunaan Bred Board dan latihan dasar arduino 

2.  Berlatih menggunakan EEPROM Arduino

3. Berlatih Arduino dan Saklar

4 Mikrokontroller Arduino dan Led Berjalan

5. Arduino dan saklar sesi ke dua

6. Berlatih LED

7. Berlatih Led Sesi Ke 2

8. Berlatih LED sesi 3

9. Arduino dan sensor ultrasonik 

10. Arduino dan Ultrasonik bagian dua

11. membuat jam tanpa RTC

12. Percobaan Analog out Arduino

13. Lampu Berjalan Arduino

14. Mencoba arduino dengan keypad

15. Lampu Otomatis dengan arduino

16. Skripsi Arduino

17.  Berlatih Pin Analog Dan Pin Digital Arduino Untuk Saklar

18. Arduino dan dasar servo

19. Belajar Servo Jugaaa 

  Pengendalian 2 Buah Led dengan Arduino dan Mit App Inventor


Arduino dan dasar servo

Kolaborasi Arduino Plus Sensor Jarak Ping Parallax


Kolaborasi Arduino ama Stepper

Pemikiran Untuk Membuat Jadwal Shalat Dengan Arduino

Jadwal Shalat Abadi dengan Arduino Uno  Praktek kedua

Jadwal Shalat Abadi dengan Arduino Uno Praktek ke 3

Berkreasi membuat Jadwal Shalat Abadi dengan Arduino Uno sesi 4




 



Blog ini memang berisi sedikit informasi semoga dapat bermanfaat, Mohon maaf atas segala kekurangan dan kesalahn yang terdapat dalam blog ini.