Menulis sketch program arduino
ternyata mudah, tapi bagaimana cara menggabungkan sketch demi sketch ya?
Ini Uda contohin ya... Yg pertama sketch program untuk menghidupkan
LED.
#define LED
13
#define tombol
6
int nilaitombol = 0;
void setup()
{
pinMode (LED,OUTPUT);
pinMode (tombol,INPUT);
}
void loop()
{
nilaitombol = digitalRead(tombol);
if (nilaitombol == HIGH)
{
digitalWrite(LED,
HIGH);
}
else
{
digitalWrite(LED,
LOW);
}
}
Nah
sketch di atas adalah sketch menghidupkan LED pada pin 13. Jadi ketika tombol
dipencet LED nyala, dan ketika tombol di lepas LEDnya mati. Ini kita semua udah
pasti tau ya. Coba sekarang kita kombine dengan pembacaan tegangan
#define potensiometer A0
float tegangan = 0;
int nilaiPotensio = 0;
void setup()
{
Serial.begin(9600);
}
void loop()
{
nilaiPotensio = analogRead(potensiometer);
tegangan = nilaiPotensio
* (5.0 / 1023.0);
Serial.println(tegangan);
}
Diatas
kita punya sketch untuk pembacaan tegangan. Kita tambahin lagi ya untuk
penampilan di LCD 16 x 2. Langsung deh kita liat sketch yang di bawah. Tapi
sebelumnya kita pasang dulu LCDnya sesuai wiring diagram ya bray
Wiring
LCDnya
* LCD RS pin to digital pin 12
* LCD Enable pin to digital pin 11
* LCD D4 pin to digital pin 5
* LCD D5 pin to digital pin 4
* LCD D6 pin to digital pin 3
* LCD D7 pin to digital pin 2
* LCD R/W pin to ground
* LCD VSS pin to ground
* LCD VCC pin to 5V
* 10K resistor:
* ends to +5V and ground
* wiper to LCD VO pin (pin 3)
Selanjutnya
kita kopiin dulu, biar kerjanya jadi tambah enak dan relax, xixixix... eh
maksudnya kita kopiin sketch dibawah ke dalam arduino IDE kita. Berikut sketch
untuk penampilan LCD 16x2 nya
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup()
{
lcd.begin(16,
2);
lcd.print("hello,
world!");
}
void loop()
{
lcd.setCursor(0,
1);
lcd.print(“ “);
}
Nah dari
3 sketch di atas dapat kita gabungkan menjadi apa ya.... ayoo di bantu pak
tarno nya... :D.
Kita
dapat menggabungkan nya menjadi “pembaca tegangan dengan alarm pada nilai
tertentu” tentu saja ini bermanfaat bagi kita kalau di aplikasiin ke dalam pembacaan
gas sensor, misalnya LED akan nyala jika seseorang minum melebihi kadar alkohol
tertentu.
Atau LED
nyala kalau tegangan yang terbaca “undervoltage”. Atau dapat juga sebagai alarm
jika nilai dari cahaya yang diterima berkurang. Atau kadar air tanah mulai
kering. Atau apa ya.... silahkan di tambahin sendiri deh...
Sesuai
tujuan pertama dulu deh ya... kita akan “menyalakan LED jika tegangan dibawah
nilai tertentu”. Yuk kita gabungin...
Langkah
pertamanya kita copyin dulu semua inisialisasi program. Pernah kita bahas juga
ini. Tapi buat ngingatin aja bagi yang belum tau, inisialisasi program adalah
pengenalan variabel-variabel saat penulisan program.
#define LED
13
#define tombol
6
int nilaitombol = 0;
#define potensiometer A0
float tegangan = 0;
int nilaiPotensio = 0;
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
Oke
fix... lanjuuuttt...
Selanjutnya
kita copyin setup programnya menjadi satu. Kita langsung tambahin aja ya dengan
inisialisasi program
#define LED
13
#define tombol
6
int nilaitombol = 0;
#define potensiometer A0
float tegangan = 0;
int nilaiPotensio = 0;
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup()
{
pinMode (LED,OUTPUT);
pinMode (tombol,INPUT);
Serial.begin(9600);
lcd.begin(16,
2);
lcd.print("hello,
world!");// lcd.print("tegangan:");
}
Kita
ganti ya tuisan dalam “hello, word!” menjadi
“tegangan”. Hapus
aja tanda ”//” sampai ke awal tulisan “lcd.print(”hello, word!”); di awal. Selanjutnya kita copyin looping
programnya. Tapi bagian ini mesti kita susun sesuai kebutuhan kita. Pertama
kita baca tegangannya dulu. Selanjutnya kita tampilkan pembacaannya di LCD.
Barangkali aja kita bisa improv tulisannya nanti. Habis tu kita buat
persyaratan kapan LED kita hidup dan matikan.
#define LED
13
#define tombol
6
int nilaitombol = 0;
#define potensiometer A0
float tegangan = 0;
int nilaiPotensio = 0;
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup()
{
pinMode (LED,OUTPUT);
pinMode (tombol,INPUT);
Serial.begin(9600);
lcd.begin(16,
2);
lcd.print("tegangan:");
}
void loop()
{ // Bagian satu pembacaan tegangan
nilaiPotensio = analogRead(potensiometer);
tegangan = nilaiPotensio
* (5.0 / 1023.0);
Serial.println(tegangan);
// Bagian dua penulisan di LCD
lcd.setCursor(0,
1);
lcd.print(“ “);
// Bagian tiga persyaratan
menyalakan LED
nilaitombol = digitalRead(tombol);
if (nilaitombol == HIGH)
{
digitalWrite(LED,
HIGH);
}
else
{
digitalWrite(LED,
LOW);
}
}
Nah
begini nih jadinya kalo digabungin
semuanya. Selanjutnya kita perbaiki dulu beberapa sketch biar cocok dengan
tujuan yang kita inginkan dari program kita.
Dari
looping di atas, bagian awal adalah pembacaan tegangan. Bagian selanjutnya
adalah penulisan tulisan kosong di baris ke dua kolom pertama. Baris ketiga
adalah persyaratan untuk menyalakan LED.
Yuk kita
perbaiki.
Bagian
satu..
Pembacaan
tegangan udah cocok deh kayaknya.
Bagian
dua..
Kita
mesti memprint nilai tegangan ke kolom ke dua. Jadi bagian ini kita robah bray.
Nih uda contohin
// Bagian dua penulisan di LCD
lcd.setCursor(0,
1);
lcd.print(tegangan);
Bagian
3..
Persyaratan
menyalakan LED. LED akan nyala kalau tegangan dibawah 2,5 volt dan mati lagi di
atas tegangan tersebut.berarti kita tidak memakai tombol untuk menyalakan dan
mematikan LED kan bray. Tinggal ilangin semua variabel tombol aja kan
// Bagian tiga persyaratan menyalakan LED
nilaitombol = digitalRead(tombol);
if (nilaitombol == HIGH)
{
digitalWrite(LED,
HIGH);
}
else
{
digitalWrite(LED,
LOW);
}
Kita
robah menjadi
// Bagian tiga persyaratan menyalakan LED
if (tegangan <= 2.5)
{
digitalWrite(LED,
HIGH);
}
else
{
digitalWrite(LED,
LOW);
}
Yuk kita
gabungin lagi, dan membuang semua yang tidak di perlukan di sketch program kita
#define LED
13
#define potensiometer A0
float tegangan = 0;
int nilaiPotensio = 0;
#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup()
{
pinMode (LED,OUTPUT);
Serial.begin(9600);
lcd.begin(16,
2);
lcd.print("tegangan:");
}
void loop()
{ // Bagian satu pembacaan tegangan
nilaiPotensio = analogRead(potensiometer);
tegangan = nilaiPotensio
* (5.0 / 1023.0);
Serial.println(tegangan);
// Bagian dua penulisan di LCD
lcd.setCursor(0,
1);
lcd.print(tegangan);
// Bagian tiga persyaratan
menyalakan LED
if (tegangan <= 2.5)
{
digitalWrite(LED,
HIGH);
}
else
{
digitalWrite(LED,
LOW);
}
}
Coba
copyin lagi ya bray ke sketch programnya dan lihat keajaiban yang terjadi
setelah kita putar-putar potensiometer kita
baca juga: Menggabungkan Beberapa Sketch Program Arduino 2
baca juga: Menggabungkan Beberapa Sketch Program Arduino 3
baca juga: Menggabungkan Beberapa Sketch Program Arduino 2
baca juga: Menggabungkan Beberapa Sketch Program Arduino 3
Demikian
dulu ya brai tutorial penggabungan sketchnya. Lain kali kita tambahin lagi ya
contoh-contoh programnya. Atau kali aja teman-teman punya pertanyaan seputar
pembuatan sketch program dengan menggabungkan beberapa modul atau peralatan.
Silahkan tulis komen dibawah, Uda akan dengan senang hati menjawabnya. Selamat
mencoba...
Intip juga ide tugas akhir dari kami
Intip juga ide tugas akhir dari kami