1.Tujuan [kembali]
a. Merangkai dan menguji aplikasi output pada mikrokontroller Arduino
b. Merangkai dan menguji input pada mikrokontroller Arduino
c. Merangkai dan menguji I/O pada mikrokontroller Arduino
b. Merangkai dan menguji input pada mikrokontroller Arduino
c. Merangkai dan menguji I/O pada mikrokontroller Arduino
2. Landasan Teori[kembali]
Arduino
Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan pada prkatikum ini adalah arduino mega yang menggunakan chip AVR ATmega 2560 yang memiliki fasilitas PWM, komunikasi serial, ADC, timer, interupt, SPI dan I2C. Sehingga Arduino bisa digabungkan bersama modul atau alat lain dengan protocol yang berbeda-beda. Bahasa pemograman yang digunakan adalah bahasa C. Tetapi bahasa ini sudah dipermudah menggunakan fungsi-fungsi yang sederhana sehingga lebih mudah dalam memprogramnya. Dalam memprogram arduino, kita bisa menggunakan serial komunikasi agar arduino dapat berhubungan dengan komputer ataupun aplikasi lain.Beberapa fitur dari Arduino Mega 2560 ini adalah :
Microcontroller ATmega2560
Operating Voltage 5V
Input Voltage (recommended)7-12V
Input Voltage (limits)6-20V
Digital I/O Pins 54 (of which 15 provide PWM output)
Analog Input Pins 16
DC Current per I/O Pin 20 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 256 KB of which 8 KB used by bootloader
SRAM 8 KB
EEPROM 4 KB
Clock Speed 16 MHz
BAGIAN-BAGIAN DARI ARDUINO MEGA 2560Soket USB Soket USB adalah soket untuk kabel USB yang disambungkan ke komputer atau laptop.Berfungsi untuk mengirimkan program ke Arduino dan juga sebagai port komunikasi serial.Input / Output Digital Input/Output Digital atau digital pin adalah pin-pin untuk menghubungkan Arduino dengankomponen atau rangkaian digital. Pada Arduino Mega terdapat 53 I/O Digital dimana 16diantaranya dapat dijadikan sebagai output PWM Input Analog Input Analog atau analog pin adalah pin-pin yang berfungsi untuk menerima sinyal dari komponen atau rangkaian analog. Misalnya dari potensiometer, sensor suhu, sensor cahaya, dsb.Terdapat 16 input analog pada arduino mega 2560.
Pin POWER Pin-pin catu daya adalah pin yang memberikan tegangan untuk komponen atau rangkaian yang dihubungkan dengan Arduino. Pada bagian catu daya ini terdapat juga pin Vin dan Reset.Vin digunakan untuk memberikan tegangan langsung kepada Arduino tanpa melalui tegangan USB atau adaptor.
Tombol RESET Reset adalah pin untuk memberikan sinyal reset melaui tombol atau rangkaian eksternal.
Jack Baterai/Adaptor Soket baterai atau adaptor digunakan untuk menyuplai Arduino dengan tegangan dari baterai/adaptor 9V pada saat Arduino sedang tidak disambungkan ke komputer. Kalau Arduino sedang disambungkan ke komputer melalui USB, Arduino mendapatkan suplai tegangan dari USB, jadi tidak perlu memasang baterai/adaptor saat memprogram Arduino.
3.Tugas Pendahuluan [kembali]
Motor DC No.7
Tambahkan 3 buah leddengan menggunakan input keypad tekan angka 2 pada keypad motor satu akan berputar medium kearah kanan dan motor dua akan berputar medium kekiri yang nilai kecepatannya tampil pada LCD lalu led 2 akan hidup
4.Flowchart [kembali]
5.Listing Program [kembali]
#include <Keypad.h> //memasukkan pustaka keypad
#include <LiquidCrystal.h> //library untuk LCD
LiquidCrystal lcd (41,39,37,35,33,31); // menunjukkan pin yang dihubungkan pada di LCD
int m1 = 7; //pin m1 pada L293 dihubungkan ke pin 14 pada Arduino
int m2 = 6; //pin m2 pada L293 dihubungkan ke pin 15 pada Arduino
int m3 = 5; //pin m3 pada L293 dihubungkan ke pin 16 pada Arduino
int m4 = 4; //pin m4 pada L293 dihubungkan ke pin 17 pada Arduino
int led1 = 11; //led1 dihubungkan ke pin 11
int led2 = 12; //led2 dihubungkan ke pin 12
int led3 = 13; //led3 dihubungkan ke pin 13
char tombol[4][3] = //menyatakan tombol di keypad adalah kolom tiga dan baris empat
{ //pembuka tata letak tombol keypad
{'1', '2', '3'},
{'4', '5', '6'}, //deklarasi posisi tombol keypad
{'7', '8', '9'},
{'*', '0', '#'}
}; //penutup tata letak tombol keypad
byte pinBaris[] = {17, 18, 19, 20}; //deklarasi pin yang dihubungkan dengan baris pada pada keypad
byte pinKolom[] = {14, 15, 16}; //deklarasi pin yang dihubungkan dengan kolom pada pada keypad
Keypad keypad = Keypad(makeKeymap(tombol), //digunakan untuk menciptakan objek keypad
pinBaris, pinKolom, 4, 3); //objek keypad yang diberikan yaitu empat kali tiga
void setup() // Settingan kondisi yang akan digunakan
{
pinMode(led1,OUTPUT);
pinMode(led2,OUTPUT);
pinMode(led3,OUTPUT);
pinMode(m1,OUTPUT); // menjelaskan bahwa pin m1 sebagai output
pinMode(m2,OUTPUT); // menjelaskan bahwa pin m2 sebagai output
pinMode(m3,OUTPUT); // menjelaskan bahwa pin m3 sebagai output
pinMode(m4,OUTPUT); // menjelaskan bahwa pin m4 sebagai output
lcd.begin(16,2);
}
void loop() // Perulangan dari semua kondisi yang ditetapkan
{
char kode = keypad.getKey(); // fungsi untuk membaca tombol apa pada keypad yang ditekan
if(kode == '2' ) //fungsi untuk keadaan tombol ditekan angka 2
{ //batas pembuka jika yang ditekan angka 2
lcd.clear(); // reset lcd
lcd.setCursor (0,1); // posisi lcd
lcd.print ("KECEPATAN MEDIUM"); // cetak tulisan pada LCD
delay(1); // delay selama 1 ms
analogWrite (m1,50); // m1 kondisi dengan nilai analog 0 dari 255
analogWrite (m2,0); // m2 kondisi mati
analogWrite (m3,0); // m3 kondisi mati
analogWrite (m4,50); // m4 kondisi dengan nilai analog 0 dari 255
digitalWrite (led2,HIGH); //led 2 menyala
} //penutup fungsi jika angka 2 ditekan
}
6.Video Simulasi [kembali]
7.Analisa [kembali]
Rangkaian di atas menggunakan komponen pendukung yaitu, Motor DC, Driver L293D, LCD dan Switch. Pertama pada program dibuat inisiasi LCD untuk mengkoneksi LCD ke in Arduino. selajutnya program logika if, yang mana ketika switch 1 diaktifkan maka motor DC diberi suplay digital yang randah yang diinput pada program dan juga program akan memberikan tulisan yang kemudian dicetak pada LCD. selanjutnya jika switch 2 diaktifkan maka sinyal keluaran digital dari Arduino nilainya lebih besar yang kemudian dikirimkan pada Motor DC sehingga motor DC berputar dengan kecepatan sedang dan program akan mengirimkan data tulisan ke LCD. Terakhir, Jika Switch 3 aktif maka Arduino diprogramkan untuk memberikan sinyal digital yang besar ke Driver Motor DC untuk menggerakkan motor DC berputar dengan Kecepatan yang cepat, dan program akan mengirimkan data digital ke LCD. Jika tidak ada kondisi yang terpenuhi dari 3 diatas, program arduino tidak mengirimkan sinyal digital ke Motor DC, tetapi program mengirimkan data ke LCD.
8.Link Download [kembali]
.


Tidak ada komentar:
Posting Komentar