Arduino Dasar (Latihan1)
SERI BELAJAR
ARDUINO
Oleh : Asep Hermawan, S.T.
A.
Tujuan Pembelajaran
Membuat LED nyala dan padam bergantian selama 1 detik (1000 ms)
B.
Alat dan Bahan
1. Arduino Uno + Kabel data
2. Led
3. Resistor 330 ohm
4. Kabel Jumper
5. Breadboard
6. Laptop / PC yang sdh terinstal Arduino IDE
C.
Langkah Kerja
1. Rakitlah Arduino seperti pada gambar Rangkaian
2. Buka Arduino IDE
3. Maka akan tampil lembaran
baru, jika tampil lembaran lama, tekan tombol Ctrl+N untuk lembaran baru.
4. Tulis sketch Arduino seperti pada Sketch Flip
Flop
5. Simpan (Ctrl+S) dengan nama file “FLIP_FLOP”
6. Colokkan kabel USB pada Arduino Uno ke PC / Laptop
7. Buka menu “alat (tool)” lihat
gambar. Sesuaikan papan board Arduino Uno dan Port Arduino.
8. Upload sketch FLIP_FLOP, dengan mengklik
tombol Upload
D. Gambar
Rangkaian
Keterangan:
Perhitungan Resistor pada LED:
Tegangan output pin Arduino adalah Vo = 5V
Arus normal LED = 20 mA=0,02A
Tegangan LED normalnya Vled = 2V
Maka perhitungan R Led adalah
R=Vo - Vled
/ Iled = 5 V – 2 V / 0.02 A = 150Ω
Pada praktiknya resistor yang dipasangkan antara 150 ohm – 330 ohm
E. Sketch Flip Flop
void setup() {
pinMode(8,OUTPUT);
}
void
loop() {
digitalWrite(8,HIGH);
delay(1000);
digitalWrite(8,LOW);
delay(1000);
}
Keterangan:
pinMode(8,OUTPUT);
Sebagai inisilisasi bahwa digunakan Pin D8 arduino sebagai output
digitalWrite(8,HIGH);
atau digitalWrite(8,LOW);
Membuat
kondisi keluaran Pin D8 arduino menjadi HIGH (5V)
atau LOW (0
delay(1000);
Menunda selama 1000 ms (1 detik)
F.
Tugas
1. Ganti delay mulai dari 200 ms – 3000 ms, Lihat hasilnya.
2. Pada rangkaian dan sketch
ganti Pin Arduino D8 dengan pin lainnya. Lihat hasilnya
MODUL 2
A.
Tujuan Pembelajaran
Membuat LED 10 Watt / 12V nyala dan padam bergantian selama 1 detik (1000 ms) pada sumber tegangan Led 12V
B.
Alat dan Bahan
1. Arduino Uno + Kabel data
2. Led 10W/12V
3. Resistor
4. Kabel Jumper
5. Breadboard
6. Transistor
7. Laptop / PC yang sdh terinstal Arduino IDE
C.
Langkah Kerja
Urutan langkah kerja sama seperti pada modul 1
D.
Gambar Rangkaian
Persyaratan:
1. Menghitung arus Led 10 Watt /12V
𝐼𝑙𝑒𝑑= 𝑃𝑙𝑒𝑑/𝑉𝑙𝑒𝑑= 10 𝑊/12𝑉=0,83 𝐴
2. Dari perhitungan di atas maka transistor harus mampu dialiri arus minimal 0,83A (ini kondisi kritis pada transistor), dengan demikian untuk amannya pemilihan transistor harus mampu dialiri arus (Ic) minimal 0,83 A x 1.5 = 1,245 A.
3. Karena sumber tegangan 12 V maka tegangan kolektor transistor minimal 12 V.
4. Untuk memenuhi persyaratan tersebut maka pemilihan transistor (NPN) berdasarkan datasheet transistor adalah:
a. TIP31C (Max, Pc = 40W, Vcb=140V, Vce =100V, Ic=3A, hfe= min 20)
b. TIP41C (Max, Pc = 65W, Vcb=140V, Vce =100V, Ic=6A, hfe= min 20)
c. TIP122 (Max, Pc = 65W, Vcb=100V, Vce =100V, Ic=5A, hfe= min 1000)
Perhitungan menentukan Resistor Basis:
1. Sumber Tegangan Led 12V
Karena Ic sudah diketahui yakni : 0,83A (Iled) maka 𝐼𝑏= 𝐼𝑐ℎ𝑓𝑒
Nilai hfe transistor dapat diketahui dengan mengukur hfe transistor, kita gunakan Transistor TIP41C dan nilai hasil pengukuran hfe nya adalah 200.
𝐼𝑏= 𝐼𝑐ℎ𝑓𝑒= 0,83𝐴200= 0,00415 𝐴
Nilai Ib yang sudah diketahui dimasukkan pada persamaan
𝑅𝑏=𝑉𝑏𝑏−𝑉𝑏𝑒𝐼𝑏= 5𝑉−0,7𝑉 0,00415 𝐴= 4,3 𝑉 0,00415 𝐴=1036 𝑜ℎ𝑚
Nilai Vbe dari transistor silicon adalah 0,7V (idealnya)
Dari perhitungan diatas di dapat nilai Rb=1036 sehingga resistor yang dipasang adalah 1K ohm
E. Sketch Flip Flop
void setup() {
pinMode(8,OUTPUT);
}
void
loop() {
digitalWrite(8,HIGH);
delay(1000);
digitalWrite(8,LOW);
delay(1000);
}
F.
Tugas
Lakukan dengan cara yang sama untuk Led daya dan
tegangan berbeda.
A.
Tujuan Pembelajaran
1. Memahami cara kerja input Pull Up eksternal
2. Memahami cara kerja input Pull Up Internal
B.
Alat dan Bahan
1. Arduino Uno + Kabel data
2. Led
3. Push Button
4. Resistor 330 ohm dan 10K ohm
5. Kabel Jumper
6. Breadboard
7. Laptop / PC (terinstal Arduino IDE)
C.
Langkah Kerja
1. Rakitlah Arduino seperti pada gambar rangkaian 1
2. Buka Arduino IDE
3. Buat halaman baru
4. Tulis Sktech
5. Simpan Sketch
6. Hubungkan kabel USB pada Arduino Uno ke PC /
Laptop
7. Konfigurasi board dan port
8. Upload sketch
9. Lihat hasilnya
10. Ulangi langkah 1 s/d 9 untuk gambar rangkaian 2
D.
Gambar Rangkaian
E. Sketch
Sketch Rangkaian 1
void
setup() {
pinMode(8,OUTPUT);
pinMode(2,INPUT);
}
void
loop() {
int
inputku = digitalRead(2);
if
(inputku == HIGH) {
digitalWrite(8,HIGH);
}
else {
digitalWrite(8,LOW);
}
}
Sketch Rangkaian 2
void setup() {
pinMode(8,OUTPUT);
pinMode(2,INPUT_PULLUP);
}
void
loop() {
int
inputku = digitalRead(2);
if (inputku
== HIGH) {
digitalWrite(8,HIGH);
}
else {
digitalWrite(8,LOW);
}
}
pinMode(2,INPUT);
merupakan konfigurasi pin 2 sebagai input
pinMode(2,INPUT_PULLUP);
merupakan konfigurasi pin 2 sebagai input dengan pull up resistor internal
int
inputku = digitalRead(2);
membaca masukan dari pin 2
dan hasilnya disimpan pada variabel inputku Ada 2 kondisi masukan yakni HIGH
(5V) dan LOW (0V)
if (inputku
== HIGH) {
digitalWrite(8,HIGH);
}
else {
digitalWrite(8,LOW);
}
Jika inputku = HIGH maka pin 8 mengeluarkan
tegangan 5V (LED Menyala)
Jika tidak pin 8 mengeluarkan tegangan 0V (LED
padam)
F. Rangkaian Resistor Pull Up
MODUL 4
Buatlah program
jika tombol 1 ditekan maka led akan ON
Jika tombol 2 ditekan maka 7 segment akan menunjukan angka 5
Bahan
Arduino Uno R3
Button
LED
7 segment Chatode
Skematik Proteus
void setup() {
pinMode(13,OUTPUT);
pinMode(1,INPUT_PULLUP);
pinMode(0,INPUT_PULLUP);
}
void loop() {
int inputku = digitalRead(1);
if (inputku == LOW) {
digitalWrite(13,HIGH);
}
else {
digitalWrite(13,LOW);
}
int inputku2 = digitalRead(0);
if (inputku2 == LOW) {
digitalWrite(12,HIGH);
digitalWrite(11,LOW);
digitalWrite(10,HIGH);
digitalWrite(9,HIGH);
digitalWrite(8,LOW);
digitalWrite(7,HIGH);
digitalWrite(6,HIGH);
}
else {
digitalWrite(12,LOW);
digitalWrite(11,LOW);
digitalWrite(10,LOW);
digitalWrite(9,LOW);
digitalWrite(8,LOW);
digitalWrite(7,LOW);
digitalWrite(6,LOW);
}
}
Hasil Simulasi
jika tombol 1 ditekan maka led akan ON
Jika potensiometer diputar maka 7 segment akan menunjukan angka 0-9
Skematik & Bahan Sama seperti pada modul 4
Sketch Arduino
int a=12, b=11, c=10, d=9, e=8, f=7, g=6;
int nilai;
int pinButton=1;
int pinLED=13;
void setup() {
pinMode(pinLED,OUTPUT);
pinMode(pinButton,INPUT_PULLUP);
pinMode(a,OUTPUT);
pinMode(b,OUTPUT);
pinMode(c,OUTPUT);
pinMode(d,OUTPUT);
pinMode(e,OUTPUT);
pinMode(f,OUTPUT);
pinMode(g,OUTPUT);
}
void loop() {
int i;
nilai= analogRead(A5);
if (nilai < 100) {
i=0;
LabTech(i);
}
else if (nilai < 200) {
i=1;
LabTech(i);
}
else if (nilai < 300) {
i=2;
LabTech(i);
}
else if (nilai < 400) {
i=3;
LabTech(i);
}
else if (nilai < 500) {
i=4;
LabTech(i);
}
else if (nilai < 600) {
i=5;
LabTech(i);
}
else if (nilai < 700) {
i=6;
LabTech(i);
}
else if (nilai < 800) {
i=7;
LabTech(i);
}
else if (nilai < 900) {
i=8;
LabTech(i);
}
else if (nilai < 1000) {
i=9;
LabTech(i);
}
}
void LabTech(int labtech){
switch(labtech){
case 0:
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,HIGH);
digitalWrite(f,HIGH);
digitalWrite(g,LOW);
break ;
case 1:
digitalWrite(a,LOW);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);
break ;
case 2:
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,LOW);
digitalWrite(d,HIGH);
digitalWrite(e,HIGH);
digitalWrite(f,LOW);
digitalWrite(g,HIGH);
break ;
case 3:
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
digitalWrite(g,HIGH);
break ;
case 4:
digitalWrite(a,LOW);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,HIGH);
digitalWrite(g,HIGH);
break ;
case 5:
digitalWrite(a,HIGH);
digitalWrite(b,LOW);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,LOW);
digitalWrite(f,HIGH);
digitalWrite(g,HIGH);
break ;
case 6:
digitalWrite(a,HIGH);
digitalWrite(b,LOW);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,HIGH);
digitalWrite(f,HIGH);
digitalWrite(g,HIGH);
break ;
case 7:
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,LOW);
digitalWrite(e,LOW);
digitalWrite(f,LOW);
digitalWrite(g,LOW);
break ;
case 8:
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,HIGH);
digitalWrite(f,HIGH);
digitalWrite(g,HIGH);
break ;
case 9:
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,LOW);
digitalWrite(f,HIGH);
digitalWrite(g,HIGH);
break ;
}
if (digitalWrite(pinButton)==LOW){
digitalWrite(pinLED,HIGH);
}else{digitalWrite(pinLED,LOW);
}}
=====================Silahkan disebar luaskan=====================
Comments
Post a Comment