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
Halaman Blog yang memberikan informasi tentang cara belajar mikrokontroller arduino disertai dengan praktek praktek arduino
Senin, 23 Februari 2015
Minggu, 15 Februari 2015
Skripsi arduino
Link Ke Halaman Utama
• 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
Jam tanpa rtc yang dapat diatur
Link ke Halaman utama
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
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
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.
**********************************************************
#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
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.
Blog ini memang berisi sedikit informasi semoga dapat bermanfaat, Mohon maaf atas segala kekurangan dan kesalahn yang terdapat dalam blog ini.
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 ParallaxKolaborasi 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.
Langganan:
Postingan (Atom)