Anda di halaman 1dari 37

LAPORAN

ANTARMUKA DAN PERIPHERAL

DISUSUN OLEH:

MICHAEL ALDRIUS PATA ALLO


(F44117031)

PROGRAM STUDI S1 TEKNIK ELEKTRO


JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS TADULAKO
2019
Pengenalan PORT Digital dan Analog,LED

1. Tujuan Percobaan

Maksud dan tujuan dari praktikum ini adalah:

1.1 Mahasiswa mengenal jenis-jenis dan fungsi pin pada mikrokontroler berbasis Atmega 328
(Arduino Uno).

1.2 Mahasiswa mampu menggunakan pin-pin pada mikrokontroler sesuai dengan fungsinya

1.3 Mahasiswa mampu menyelesaikan kasus tertentu dengan menggunakan setiap fungsi pin-pin
dalam mikrokontroler

2. Teori Dasar

A. Arduino UNO

Gambar 1.Pin-pin pada Arduino UNO

Arduino Uno adalah salah satu produk berlabel arduino yang sebenarnya adalah suatu papan
elektronik yang mengandung mikrokontroler ATMega328 (sebuah keping yang secara
fungsional bertindak seperti sebuah komputer). Piranti ini dapat dimanfaatkan untuk
mewujudkan rangkaian elektronik dari yang sederhana hingga yang kompleks. Pengendalian
LED hingga pengontrolan robot dapat diimplementasikan dengan menggunakan papan
berukuran relatif kecil ini. Bahkan dengan penambahan komponen tertentu, piranti ini bisa
dipakai untuk pemantauan kondisi pasien di rumah sakit dan pengendalian alat-alat di rumah.

Pin-pin pada Arduino UNO

A. 14 pin IO Digital (pin 0–13) Sejumlah pin digital dengan nomor 0–13 yang dapat dijadikan
input atau output yang diatur dengan cara membuat program IDE.

B. 6 pin Input Analog (pin 0–5) Sejumlah pin analog bernomor 0–5 yang dapat digunakan untuk
membaca nilai input yang memiliki nilai analog dan mengubahnya ke dalam angka antara 0
dan 1023.

C. 6 pin Output Analog (pin 3, 5, 6, 9, 10 dan 11) Sejumlah pin yang sebenarnya merupakan
pin digital tetapi sejumlah pin tersebut dapat diprogram kembali menjadi pin output analog
dengan cara membuat programnya pada IDE.

Papan Arduino Uno dapat mengambil daya dari USB port pada komputer dengan
menggunakan USB charger atau dapat pula mengambil daya dengan menggunakan suatu AC
adapter dengan tegangan 9 volt. Jika tidak terdapat power supply yang melalui AC adapter,
maka papan Arduino akan mengambil daya dari USB port. Tetapi apabila diberikan daya
melalui AC adapter secara bersamaan dengan USB port maka papan Arduino akan mengambil
daya melalui AC adapter secara otomatis.

Gambar 2. Spesifikasi ARDUINO UNO


B. Arduino IDE

Software arduino yang digunakan adalah driver dan IDE, walaupun masih ada beberapa
software lain yang sangat berguna selama pengembangan arduino. Integrated Development
Environment (IDE), suatu program khusus untuk suatu komputer agar dapat membuat suatu
rancangan atau sketsa program untuk papan Arduino. IDE arduino merupakan software yang
sangat canggih ditulis dengan menggunakan java. IDE arduino terdiri dari :

1. Editor Program Sebuah window yang memungkinkan pengguna menulis dan mengedit
program dalam bahasa processing.

2. Compiler Berfungsi untuk kompilasi sketch tanpa unggah ke board bisa dipakai untuk
pengecekan kesalahan kode sintaks sketch. Sebuah modul yang mengubah kode program
menjadi kode biner bagaimanapun sebuah mikrokontroler tidak akan bisa memahami bahasa
processing.

3. Uploader Berfungsi untuk mengunggah hasil kompilasi sketch ke board target. Pesan
error akan terlihat jika board belum terpasang atau alamat port COM belum terkonfigurasi
dengan benar. Sebuah modul yang memuat kode biner dari komputer ke dalam memory didalam
papan arduino.

Gambar 3.Tampilan Arduino IDE


Kode Program Arduino biasa disebut sketch dan dibuat menggunakan bahasa pemrograman
C. Program atau sketch yang sudah selesai ditulis di Arduino IDE bisa langsung dicompile dan
diupload ke Arduino Board. Secara sederhana, sketch dalam Arduino dikelompokkan menjadi
3 blok (lihat gambar di atas):

1. Header

2. Setup

3. Loop

1. Header Pada bagian ini biasanya ditulis definisi-definisi penting yang akan digunakan
selanjutnya dalam program, misalnya penggunaan library dan pendefinisian variable. Code
dalam blok ini dijalankan hanya sekali pada waktu compile.

2. Setup Di sinilah awal program Arduino berjalan, yaitu di saat awal, atau ketika power on
Arduino board. Biasanya di blok ini diisi penentuan apakah suatu pin digunakan sebagai input
atau output, menggunakan perintah pinMode. Initialisasi variable juga bisa dilakukan di blok
ini.

3. Loop Blok ini akan dieksekusi secara terus menerus. Apabila program sudah sampai akhir
blok, maka akan dilanjutkan dengan mengulang eksekusi dari awal blok. Program akan berhenti
apabila tombol power Arduino di matikan. Di sinilah fungsi utama program Arduino kita
berada.

Fungsi ikon-ikon dasar pada Arduino IDE

a. Icon menu verify yang bergambar ceklis berfungsi untuk mengecek program yang ditulis
apakah ada yang salah atau error.

b. Icon menu upload yang bergambar panah ke arah kanan berfungsi untuk memuat / transfer
program yang dibuat disoftware arduino ke hardware arduino.

c. Icon menu New yang bergambar sehelai kertas berfungsi untuk membuat halaman baru dalam
pemrograman.

d. Icon menu Open yang bergambar panah ke arah atas berfungsi untuk membuka program
yang disimpan atau membuka program yang sudah dibuat dari pabrikan software arduino
C. MATLAB

Bahasa pemrograman sebagai media untuk berinteraksi antara manusia dan komputer saat
dibuat semakin mudah dan cepat. Sebagai contoh, dapat dilihat dari perkembangan bahasa
pemrograman Pascal yang terus memunculkan varian baru sehingga akhirnya menjadi Delphi,
demikian pula dengan Basic dengan Visual Basicnya serta C dengan C + + Buildernya. Pada
akhirnya semua bahasa pemrograman akan semakin memberikan kemudahan pemakainya
(programmer) dengan penambahan fungsi-fungsi baru yang sangat mudah digunakan bahkan
oleh pemakai tingkat pemula.

MATLAB muncul di dunia bahasa pemrograman yang cenderung dikuasai oleh bahasa
yang telah mapan. Tentu saja sebagai bahasa pemrograman yang baru MATLAB akan sukar
mendapat hati dari pemakai. Namun MATLAB hadir tidak dengan fungsi dan karakteristik
yang umumnya ditawarkan bahasa pemrograman lain yang biasanya hampir seragam.
MATLAB dikembangkan sebagai bahasa pemrograman sekaligus alat visualisasi, yang
menawarkan banyak kemampuan untuk menyelesaikan berbagai kasus yang berhubungan
langsung dengan disiplin keilmuan matematika. MATLAB memiliki kemampuan
mengintegrasikan komputasi, visualisasi, dan pemrograman dalam sebuah lingkungan yang
tunggal dan mudah

digunakan. MATLAB menyediakan beberapa pilihan untuk dipelajari, mempelajari metode


visualisasi saja, pemrograman saja, atau kedua-duanya.

MATLAB adalah bahasa pemrograman level tinggi yang dikhususkan untuk komputasi
teknis. Bahasa ini mengintegrasikan kemampuan komputasi, visualisasi, dan pemrograman
dalam sebuah lingkungan yang tunggal dan mudah digunakan. MATLAB memberikan sistem
interaktif yang menggunakan konsep array sebagai standar variabel elemennya tanpa
membutuhkan pendeklarasian array seperti pada bahasa pemrograman lain.

Kehadiran MATLAB sebagai bahasa pemrograman memberikan jawaban sekaligus


tantangan. MATLAB menyediakan beberapa pilihan untuk dipelajari, mempelajari metoda
visualisasi saja, pemrograman saja, atau kedua-duanya. MATLAB memang dihadirkan bagi
orang-orang yang tidak ingin disibukkan dengan rumitnya sintaks dan alur logika
pemrograman, sementara pada saat yang sama membutuhkan hasil komputasi dan visualisasi
yang maksimal untuk mendukung pekerjaannya. Selain itu, MATLAB juga memberikan
kemudahan bagi programmer/developer program yaitu untuk menjadi pembanding yang sangat
handal, hal tersebut dapat dilakukan karena kekayaannya akan fungsi matematika, fisika,
statistika, dan visualisasi.

Tampilan awal MATLAB

D. Potensiometer

Potensiometer adalah sebuah jenis resistor yang nilai tahanannya atau hambatannya
(resistansi) dapat diubah atau diatur (adjustable). Potensiometer memiliki 3 terminal, 2 terminal
terhubung ke kedua ujung elemen resistif, dan terminal ketiga terhubung ke kontak geser yang
disebut wiper. Posisi wiper menentukan tegangan keluaran dari potensiometer. Potensiometer
pada dasarnya berfungsi sebagai pembagi tegangan variabel. Unsur resistif dapat dilihat sebagai
dua resistor seri, dimana posisi wiper menentukan rasio resistensi dari resistor pertama ke
resistor kedua. Potensiometer juga dikenal sebagai potmeter atau pot. Bentuk paling umum dari
potmeter adalah potmeter putar. Jenis pot sering digunakan dalam kontrol volume suara audio
dan berbagai aplikasi lainnya. Unsur resistif pada potensiometer biasanya terbuat dari bahan
seperti karbon, keramik logam, gulungan kawat (wirewound), plastik konduktif, atau film
logam.

E. Light Emiting Dioda

Light Emiting Diode (LED) adalah komponen yang dapat memancarkan cahaya. Sstruktur
LED sama dengan dioda. Untuk mendapatkan pancaran cahaya pada semikonduktor, dopping
yang dipakai adalah gallium, arsenic, dan phosporus. Jenis dopping yang berbeda akan
menghasilkan warna cahaya yang berbeda. Bentuk LED bermacam-macam, ada yang bulat,
persegi empat dan lonjong.

LED memiliki kaki 2 buah seperti dengan dioda yaitu kaki anoda dan kaki katoda. Pada
gambar diatas kaki anoda memiliki ciri fisik lebih panjang dari kaki katoda pada saat masih
baru, kemudian kaki katoda pada LED ditandai dengan bagian body yang dipapas rata.
Pemasangan LED agar dapat menyala adalah dengan memberikan tegangan bias maju yaitu
dengan memberikan tegangan positif ke kaki anoda dan tegangan negatif ke kaki katoda.
F. Resistor

Resistor merupakan komponen listrik yang membatasi atau mengatur aliran arus listrik di
sebuah sirkuit elektronik (lihat gambar 2.6). Kemampuan resistor untuk membatasi atau
mengatur aliran arus listrik disebut resistensi dan diukur dalam satuan ohm (simbol: Ω).
Resistor diciptakan menggunakan karbon pasir (grafit) dicampur dengan tanah liat dan
mengeras. Kemudian terdapat juga resistor yang diciptakan menggunakan kawat Nichrome.
Komponen ini disebut resistor wirewood dan mampu menangani arus yang lebih tinggi daripada
bahan karbon. Pada resistor mempunyai nilai yang berbeda – beda. Nilai tersebut dilihat dari
banyaknya warna.

G. Protoboard

Protoboard adalah board yang digunakan untuk membuat rangkaian elektronik sementara
dengan tujuan uji coba atau prototipe tanpa harus menyolder. Dengan memanfaatkan
protoboard, komponen-komponen elektronik yang dipakai tidak akan rusak dan dapat
digunakan kembali untuk membuat rangkaian yang lain.

Protoboard umumnya terbuat dari plastik dengan banyak lubang-lubang diatasnya. Lubang-
lubang pada protoboard diatur sedemikian rupa membentuk pola sesuai dengan pola jaringan
koneksi di dalamnya.

3. Alat Dan Bahan

Peralatan yang dibutuhkan dalam prektikum ini adalah:

1. Arduino Uno R3 + kabel USB (1 buah)

2. Kabel Jumper secukupnya

3. LED (3 buah)

4. Breadboard/Papan Percobaan (1buah)


PRAKTIKUM 1

A. Langkah Percobaan

1. Siapkan semua alat dan baha yang akan digunakan selama proses praktikum

2.Gambar Rangkaian sesuai gambar di bawah :

3. Masukan program dibawah pada Arduino IDE:

berikut program beserta fungsi pada masing-masing perintah yang ada :

int led0=12; // Berfungsi sebagai proses inisialisasi pin 12 pada arduino


dengan variabel led0 sebagai data integer

void setup(){ //kode didalam kurung kurawal akan dijalankan hanya satu
kali ketika program Arduino dijalankan untuk pertama kalinya

pinMode(led0,OUTPUT); //Penetapan mode suatu pin dimana led0 yang merupakan


inisilisasi pin 12 pada arduino sebagai output

}
void loop (){ //fungsi ini dijalankan setelah void setupselesai dan program
dalam fungsi ini akan dilakukan secara berulang-ulang

digitalWrite(led0,HIGH); //Menetapkan ‘led0’ atau pin 12 pada arduino dalam


kondisi menyala atau high secara digital

delay(1000); //Megatur lama LED dalam kondisi high yaitu selama


1000ms atau saa dengan 1 detik

digitalWrite(led0,LOW); // Menetapkan ‘led0’ atau pin 12 pada arduino dalam


kondisi mati atau low secara digital

delay(1000); //Mengatur lama LED dalam kondisi low yaitu selama


1000ms atau 1 detik

4. Setelah program di atas selasai di tulis pada Arduino IDE maka setelah itu upload program
tersebut ke board arduino uno dan jangan lupa untuk mengatur port ke port yang digunakan
oleh arduino pada menu tools di arduino IDE

5. Setelah itu buat lagi program sesuai dengan beberapa kondisi dibawah

a. LED menyala secara bersama-sama dengan durasi ON selama 2 detik dan OFF selama
1 detik

b.Setiap LED dapat menyala dan mati secara bergantian dengan durasi 500ms menyala dan
mati

6. Jelaskan perubahan pada masing-masing program tersebut.


B. Data Hasil Percobaan

1. Untuk kondisi LED menyala secara bersama-sama.

Untuk kondisi di atas maka program yang dibuat pada arduino IDE adalah:

Untuk program diatas maka pertama-tama kita harus menginisialisasikan ketiga pin
pada arduino yang kita pakai,jika dilihat di atas maka pin 10,11,12 pada arduino masing-
masing saya inisialisasikan dengan ‘led0’,’led1’,’led2’.kemudian kita juga harus mengatur
ketiga pin tersebut sebagai output pada void setup,setelah itu kita tinggal mengatur ketiga
pin tersebut dalam kondisi HIGH secara bersamaan dengan delay selama 2 detik (2000ms)
dan dalam kondisi LOW juga secara bersamaan selama 1 detik (1000ms) pada void loop
lalu setelah itu kita tinggal mengupload program tersebut ke arduino.
2. Untuk Kondisi LED menyala dan mati secara bergantian dengan durasi selama 500ms

Untuk kondisi tersebut maka program yang kita buat adalah sebagai berikut:

Untuk Program di atas maka seperti sebelumnya kita harus menginisialisasikan ketiga pin
yang kita gunakan dengan model data integer,proses inisialisasi yang saya lakukan sama
seperti sebelumnya dimana pin 10,11,12 pada arduino masing-masing saya inisialisasikan
dengan ‘led0’,’led1’,’led2’.Setelah itu kita juga harus mengatur ketiga pin tersebut sebagai
output kita pada void setup,Kemudian pada void loop kita perlu memberi kondisi HIGH dan
LOW pada masing-masing LED dengan delay pada setiap kondisi yaitu selama 500 milidetik
jika sudah maka kita hanya perlu mengupload program tersebut ke arduino uno dan jika tidak
ada error maka setiap led akan menyala secara bergantian selama 500ms atau biasa disebut
dengan running led.
PRAKTIKUM 2

A. Langkah Percobaan

1. Siapkan semua alat dan bahan yang kita perlukan selama praktikum berlangsung

2. Buat rangkaian seperti gambar dibawah ini :

3. Buat Program pada Arduino IDE dan MATLAB


Berikut adalah Program pada Arduino IDE beserta fungsinya masing-masing:
int ledPin0=12; // Disini kita menginisialisasikan pin 12 pada
arduino uno dengan variabel ‘ledPin0’ dan dalam bentuk data integer
int matlabData; // Menginisialisasikan variabel matlabData
void setup()
{
pinMode(ledPin0,OUTPUT); // Menjadikan ‘ledPin0’ sebagai ouput
Serial.begin(9600); // Mengatur kecepatan transfer data untuk
komunikasi
}
void loop()
{
if(Serial.available()>0) //Melihat jika sudah ada data yang siap
{
matlabData=Serial.read(); //Menginisialisasikan data yang dibaca dengan
variabel ‘matlabData’

if(matlabData==1) //Jika data yang dibaca sama dengan ‘1’


digitalWrite(ledPin0,HIGH); //Membuat ‘ledPin0’ dalam kondisi HIGH
else if(matlabData==2) //Jika data yang dibaca sama dengan ‘2’
digitalWrite(ledPin0,LOW); //Membuat ‘ledPin0’dalam kondisi LOW
}
}

Berikut Program pada MATLAB dan fungsinya masing-masing.


answer=1; % Menginisialisasikan variabel answer dengan nilai 1
arduino=serial('COM4','BaudRate',9600); % Set COM port pada arduino serta baudrate yang
digunakan
fopen(arduino); % Membuka objek 'Arduino'

while answer %Memberikan proses pegulangan pada variabel answer


fprintf(arduino,'%s',char(answer)); % Menampilkan variabel 'aruino' dan 'answer'
answer=input('Enter led value 1 or 2(1=ON, 2=OFF, 0=EXIT PROGRAM):'); %Menginput
Nilai pada variabel 'answer'
end % Mengakhiri proses pengualangan

fclose(arduino); % Menutup variabel 'arduino'

4. Setelah program pada Arduino IDE telah selesai lalu upload program tersebut kemudian
pergi ke MATLAB yang telah mendukung library Arduino dan ketikan program pada
matlab seperti yang sudah ditunjukkan lalu jika tidak terdapa error maka setelah itu akan
muncul perintah untuk memasukan nilai sebagai perintah jika bernilai ‘1’ maka led pada
pin 12 akan ON dan jika ‘2’ maka led pada pin 12 akan OFF dan jika perintah yang
dimasukan ‘0’ maka program akan berhenti.

5. Setelah itu buat program untuk beberapa kondisi dibawah:


a. LED menyala bersamaan saat data yang di beri 1
b. Setiap LED akan menyala dan mati secara bergantian dengan durasi 500ms dengan
mengirim data 1
c.Membuat LED 1 dapat menyala jika dikirim data 1,LED 2 menyala jika dikirm data 2
dan LED 3 menyala jika dikirm data 3.
6. Jelaskan perubahan program pada setiap kondisi yang ada.
B. Data Hasil Percobaan
1. Untuk LED menyala bersamaan saat data yang di beri 1
Untuk kondisi di atas maka buat program seperti dibawah:
Arduino:

int ledPin0=12;
int ledPin1=11;
int ledPin2=10;
int matlabData;
void setup()
{
pinMode(ledPin0,OUTPUT);
pinMode(ledPin1,OUTPUT);
pinMode(ledPin2,OUTPUT);
Serial.begin(9600);
}
void loop()
{
if(Serial.available()>0)
{
matlabData=Serial.read();
{
if(matlabData==1)
digitalWrite(ledPin0,HIGH);
else if(matlabData==2)
digitalWrite(ledPin0,LOW);

if(matlabData==1)
digitalWrite(ledPin1,HIGH);
else if(matlabData==2)
digitalWrite(ledPin1,LOW);

if(matlabData==1)
digitalWrite(ledPin2,HIGH);
else if(matlabData==2)
digitalWrite(ledPin2,LOW);
}
}
}
MATLAB:
answer=1; % Menginisialisasikan variabel answer dengan nilai 1
arduino=serial('COM4','BaudRate',9600); % Set COM port pada
arduino serta baudrate yang digunakan
fopen(arduino); % Membuka objek 'Arduino'

while answer %Memberikan proses pegulangan pada variabel answer


fprintf(arduino,'%s',char(answer)); % Menampilkan variabel
'aruino' dan 'answer'
answer=input('Enter led value 1 or 2(1=ON, 2=OFF, 0=EXIT
PROGRAM):'); %Menginput Nilai pada variabel 'answer'
end % Mengakhiri proses pengualangan

fclose(arduino); % Menutup variabel 'arduino'

Pada program di atas pertama-tama kita akan membuat program pada Arduino IDE,maka
kita mulai dengan proses inisialisasi pin-pin arduino yang kita gunakan,disini saya
menggunakan pin 10,11,12 pada arduino dan dengan variabel untuk masing-masing pin adalah
‘ledPin0’,’ledPin1’,’ledPin2’.dan setelah itu kita akan mengatur ketiga pin tersebut sebagai
ouput kita serta kita juga akan mengatur kecepatan komunikasi sebesar 9600 dengan perintah
(serial.Begin 9600) pada void setup .
Kemudian pada void loop,pertama-tama kita akan menulis perintah
if(Serial.available()>0) yang mengecek jika data data yang tersedia lebih dari 0,lalu
program selanjutnya yaitu kita akan menginisialisasikan nilai data yang terbaca
(matlabData=Serial.read();) dengan variabel matlabData,jika sudah sekarang kita akan
memprogram kondisi LED yang ada,pertama-tama jika kita memasukan data 1 maka led pada
pin 10,11,12 akan menyala atau berada dalam kondisi HIGH ditunjukan dengan program
(digitalWrite(ledPin0,HIGH);),(digitalWrite(ledPin0,HIGH);)(digitalWrite(le
dPin0,HIGH);) dengan begitu LED akan menyala jika di beri input data 1 dan jika kita
memasukan data dengan nilai 2 maka ketiga LED yang ada akan berada dalam kondisi LOW
atau mati,Untuk melihat apakah program ini berjalan maka kita akan pergi ke matlab lalu
menuliskan program untuk matlab dan saat kita RUN,maka perintah aka muncul pada
command Window matlab dan kita diminta untuk memasukan nilai dimana jika nilai 1maka
ketiga led akan mati bersamaan,jika nilai 2 maka ketiga led akan mati bersamaan.
2. Untuk Setiap LED akan menyala dan mati secara bergantian dengan durasi 500ms dengan
mengirim data 1.
Untuk kondisi diatas maka kita hanya perlu mengubah program pada arduino IDE tanpa
perlu mengubah program pada matlab.

Arduino IDE
int ledPin0=12;
int ledPin1=11;
int ledPin2=10;
int matlabData;
void setup()
{
pinMode(ledPin0,OUTPUT);
pinMode(ledPin1,OUTPUT);
pinMode(ledPin2,OUTPUT);
Serial.begin(9600);
}
void loop()
{
if(Serial.available()>0)
{
matlabData=Serial.read();
{
if(matlabData==1)
digitalWrite(ledPin0,HIGH);
delay(500);
digitalWrite(ledPin0,LOW);
delay(500);
if(matlabData==2)
digitalWrite(ledPin0,LOW);

if(matlabData==1)
digitalWrite(ledPin1,HIGH);
delay(500);
digitalWrite(ledPin1,LOW);
delay(500);
if(matlabData==2)
digitalWrite(ledPin1,LOW);

if(matlabData==1)
digitalWrite(ledPin2,HIGH);
delay(500);
digitalWrite(ledPin2,LOW);
delay(500);
if(matlabData==2)
digitalWrite(ledPin2,LOW);

}
}
}
Untuk membuat led menyala sesuai dengan kondisi yang diinginkan seperti di atas
(running led) maka program dan inisialisasi yang kita buat pada arduino ide tidak akan jauh
beda dengan program untuk kondisi sebelumnya,pada kondisi ini kita hanya perlu
manambahkan kondisi LOW atau mati pada setiap data 1 yang kita berikan untuk setiap
led, lalu kita juga akan memberi waktu delay selama 500ms untuk setiap kondisi pada saat
data 1,Untuk program pada matlab sendiri tidak ada yang berubah.
Jika proses pemrograman pada arduino ide telah selesai dan tanpa error maka
selanjutnya kita akan mengupload program tersebut ke arduino yang sudah
terhubung,setelah itu pada matlab RUN program yang sudah kita buat sebelumnya.
jika tidak ada error terjadi maka program perintah untuk memasukan nilai data akan
muncul pada command window matlab dan jika kita masukan data dengan nilai 1 led akan
menyala dan mati secara bergantian atau biasa disebut running led dengan delay pada setiap
perubahan kondisi selama 500ms.
3. Untuk Membuat LED 1 dapat menyala jika dikirim data 1,LED 2 menyala jika dikirm data
2 dan LED 3 menyala jika dikirm data 3.

Untuk membuat led berada pada kondisi diatas maka kita tidak perlu mengubah program
pada matlab,kita hanya perlu mengubah program pada arduino ide seperti dibwah:
int ledPin0=12;
int ledPin1=11;
int ledPin2=10;
int matlabData;
void setup()
{
pinMode(ledPin0,OUTPUT);
pinMode(ledPin1,OUTPUT);
pinMode(ledPin2,OUTPUT);
Serial.begin(9600);
}
void loop()
{
if(Serial.available()>0)
{
matlabData=Serial.read();
{
if(matlabData==1)
digitalWrite(ledPin0,HIGH);
if(matlabData==1)
digitalWrite(ledPin1,LOW);
if(matlabData==1)
digitalWrite(ledPin2,LOW);

if(matlabData==2)
digitalWrite(ledPin1,HIGH);
if(matlabData==2)
digitalWrite(ledPin0,LOW);
if(matlabData==2)
digitalWrite(ledPin2,LOW);

if(matlabData==3)
digitalWrite(ledPin2,HIGH);
if(matlabData==3)
digitalWrite(ledPin0,LOW);
if(matlabData==3)
digitalWrite(ledPin1,LOW);

if(matlabData==4)
digitalWrite(ledPin2,LOW);
if(matlabData==4)
digitalWrite(ledPin0,LOW);
if(matlabData==4)
digitalWrite(ledPin1,LOW);

}
}
}
Sama seperti program untuk kondisi sebelumnya,disini kita tidak perlu mengubah
program yang ada pada matlab,kita hanya perlu mengubah sedikit program yang ada pada
arduino ide.
Jadi seperti yang terlihat pada program di atas,penginisialisasian yang digunakan masih
sama,yang kita ubah yaitu pada bagian pemrogrman void loop dimana pada perintah
if(matlabData==1), if(matlabData==2) dan if(matlabData==3) masing-masing kita beri
kondisi led dalam keadaan HIGH atau menyala,dimana jika data yang di beri 1 maka led
yang terhubung pada pin 12 arduino akan menyala,jika data yang diberi 2 maka led pada
pin 11 arduino akan menyala dan jika diberi data 3 maka led yang terhubung pada pin 10
arduino akan menyala.
Terdapat perintah yang saya tambahkan pada kondisi ini,yaitu jika ada led yang menyala
maka led lain akan berada dalam kondisi LOW atau mati meskipun led tersebut sudah
dinyalakan sebelumnya jadi,pada setiap perintah yang dimasukkan hanya ada satu led yang
menyala dengan cara menambah kondisi LOW pada setiap data yang dimasukkan seperti
terlihat pada program di atas.Selain itu saya juga menambahkan perintah untuk mematikan
led yang sedang menyala dengan memasukkan nilai data 4.
PRAKTIKUM 3
A. Langkah Kerja
1. Siapkan semua alat dan bahan yang akan diperlukan selama praktikum berlangsung
2. Buatlah rangkaian seperti gambar di bawah :

3. Buatlah program dan tulis fungsinya,pada arduino IDE dan MATLAB seperti di bawah dan
upload ke board arduino

Arduino:
int ledPin0=12; // Inisialisasi pin 12 Arduino

void setup()

pinMode(ledPin0,OUTPUT); //Menjadikan pin dengan 'variabel ledpin0' sebagai


output

Serial.begin(9600);//Komunikasi mulai dengan kecepatan transfer data 9600

void loop()

Serial.flush();//Meunggu data terkirim

int nilaiSensor=analogRead(A0);//hasil analogRead dari potensiometer di beri


variabel nilaiSensor
Serial.println(nilaiSensor); //Mengirim data ASCII dari nilai yang ada pada
variabel nilaiSensor

delay(50); //Mengatur waktu tunda 50ms

if (nilaiSensor > 200)//Memberi logika,jika nilaiSensor berada di atas 200

digitalWrite(ledPin0,HIGH);//led dengan variabel 'ledPin0'akan berada dalam


kondisi HIGH

MATLAB:
clear
clc

SerialPort='com4'; %Isi dengan COM yang sesuai


judulGrafik='Logger Data Serial';%judul Grafik yang akan ditampikan
xLabel='Waktu(detik)';%Label x-axis
yLabel='Data';%Label y-axis
plotGrid='on';%Mengaktifkan grid pada grafik
min=0; %Nilai minimum axis y
max=1050; % Nilai maximum axis y
lebarScroll=10;
delay= .01; %waktu pencuplikan

waktu=0;%inisialisasi variabel
data=0;%inisialisasi variabel
cacah=0;%inisialisasi variabel

plotGraph=plot(waktu,data,'-o',...
'LineWidth',1,...
'MarkerSize',3,...
'MarkerEdgeColor','k',...
'MarkerFaceColor','r');

title (judulGrafik,'FontSize',15);
xlabel(xLabel,'FontSize',12);
ylabel(yLabel,'FontSize',12);
axis([0 10 min max]);

grid(plotGrid);

s=serial(SerialPort); %Membuka komunikasi serial dengan COM


disp('Tutup jendela grafik untuk mengakhiri logger');
fopen(s);

tic %Mengaktifkan deteksi waktu


while ishandle (plotGraph) %Meneruskan looping semasih plot aktif
nilaiInput=fscanf(s,'%d');

if(~isempty(nilaiInput) &&isfloat(nilaiInput))
cacah=cacah+1;
waktu(cacah)=toc;
data(cacah)=nilaiInput(1);

%Set Axis sesuai dengan nilai lebarScroll


if(lebarScroll > 0)
set(plotGraph,'XData',waktu(waktu>waktu(cacah)-lebarScroll),...
'YData',data(waktu>waktu(cacah)-lebarScroll));
axis([waktu(cacah)-lebarScroll waktu(cacah) min max]);
else
set(plotGraph,'XData',waktu,'YData',data);
axis ([0 waktu(cacah) min max]);
end
pause(delay); %Memberi waktu sesaat untuk update plot
end
end

fclose(s);%menutup plot yang ada


clear all;
disp('Logger berakhir...');%Menampilkan Tulilsan

4. Setelah program diatas telah selesai di tulis maka,pertama-tama uploadlah program yang ada
pada arduino ide jika sudah,selanjutnya jalankan program yang ada pada matlab setelah itu maka
sebuah plot akan muncul.
dimana plot ini akan menampilkan nilai real time dari potensiometer yang terhubung pin A0
arduino uno kemudian saat kita putar potensiometer dan mencapai nilai data lebi dari 200 maka
led pada pin 12 arduino akan menyala (HIGH).

5. Buatlah program untuk beberapa kondisi lainnya seperti berikut:


A. jika data sensor lebih dari 200 maka led 1 menyala
b. jika data sensor lebih dari 400 maka led 1dan led 2 akan menyala
c.jika data sensor lebih dari 500 maka led 1,led 2,dan led 3 akan menyala
d.jika data sensor kurang dari 200 maka semua led akan mati

6. Jelaskanlah program yang telah dibuat berdasarkan kondisi yang diminta

B. Data Hasil Percobaan


Berdasarkan kondisi yang diminta,maka disini saya mencoba untuk membuat program
langsung untuk semua kondisi sekaligus,Untuk program pada matlab kita menggunakan
program yang sama sepeti di langkah kerja dan untuk arduino dapat dilihat sebagai berikut :
Arduino:
int ledPin0=12;
int ledPin1=11;
int ledPin2=10;

void setup()
{
pinMode(ledPin0,OUTPUT);
pinMode(ledPin1,OUTPUT);
pinMode(ledPin2,OUTPUT);
Serial.begin(9600);
}

void loop()
{
Serial.flush();
int nilaiSensor=analogRead(A0);
Serial.println(nilaiSensor);
delay(50);
if (nilaiSensor > 200)// jika nilaiSensor menerima data >200
{
digitalWrite(ledPin0,HIGH);//led pada Pin 12 Menyala
}
if (nilaiSensor > 400)//jika niaiSensor menerima data >400
{
digitalWrite(ledPin0,HIGH);//led pada pin 12 menyala
digitalWrite(ledPin1,HIGH);//led pada pin 11 menyala
}
if (nilaiSensor > 500)//jika nilaiSensor >500
{
digitalWrite(ledPin0,HIGH);//led pada pin 12 menyala
digitalWrite(ledPin1,HIGH);//led pada pin 11 menyala
digitalWrite(ledPin2,HIGH);//led pada pin 10 menyala
}
if (nilaiSensor < 200)//jika nilaiSensor <200
{
digitalWrite(ledPin0,LOW);//led pada pin 12 mati
digitalWrite(ledPin1,LOW);//led pada pin 11 mati
digitalWrite(ledPin2,LOW);//led pada pin 10 mati
}
}

Jika dilihat dari program di atas maka dapat terlihat bahwa program untuk membuat nyala
led seperti kondisi yang diminta maka yang perlu kita lakukan adalah membuat logika
kondisi dengan memanfaatkan perintah IF yang ada pada arduino IDE,disini saya membuat
perintah logika tersebut kedalam 4 buah kondisi yaitu:
1. if (nilaiSensor > 200),maksud dari program ini adalah kita akan memberi logika
jika ‘nilaiSensor’ yang merupakan hasil inisialisasi dari perintah analogRead
menerima data lebih dari 200 maka led pada pin 12 arduino uno akan menyala (HIGH)
yang di tandai dengan perintah digitalWrite(ledPin0,HIGH);
2. if (nilaiSensor > 400),Maksud dari program ini adalah kita memberi logika jika
‘nilaiSensor’ menerima data lebih dari 400 maka led pada pin 12 dan 11 arduino uno
akan menyala (HIGH) yang ditandai dengan perintah digitalWrite(ledPin0,HIGH);
dan digitalWrite(ledPin1,HIGH);
3. if (nilaiSensor > 500) Maksud dari program ini adalah kita memberi logika jika
‘nialiSensor’ menerima data lebih dari 500 maka led pada pin 12,11,10 arduino akan
menyala yang di tandai dengan perintah digitalWrite(ledPin0,HIGH);,
digitalWrite(ledPin1,HIGH);, digitalWrite(ledPin2,HIGH);.
4. if (nilaiSensor < 200) Maksud dari program ini adalah kita memberi logika jika
‘nilaiSensor’ berada dibawah 200 maka led pada pin 12,11,dan 10 pada ardiuino akan
mati ditandai dengan perintah digitalWrite(ledPin0,LOW);,
digitalWrite(ledPin1,LOW);, digitalWrite(ledPin2,LOW);.

Untuk menjalankan program di atas maka pertama-tama kita mengupload program dari
arduino ide ke board arduino yang sudah terhubung,kemudian kita akan menjalankan
program pada matlab dengan mengklik run pada program yang sudah kita buat sebelumnya
Dan jika tidak terdapat error maka program tersebut akan berjalan dan grafik/plot akan
muncul dimana plot tersebut menunjukan data real-time dari putaran potensiometer yang
kita lakukan.
Dan kemudian saat kita memutar potensiometer yang ada pada rangkaian maka secara
otomatis akan terbentuk grafik yang nilainya sesuai dengan besar putaran potensiometer
kita,lalu saat nilai putaran tersebut mencapai level-level yang telah di programkan pada
arduino ide sebelumnya maka led akan berada pada kondisi tertuntu sesuai nilai yang ada
pada kondisi yang sudah diberikan sebelumnya.
PRAKTIKUM 4
A. Langkah Kerja
1. Siapkan semua alat dan bahan yang akan diperlukan selama proses praktikum berlangsun
2.buatlah rangkaian sesuai dengan gambar di bawah ini:

3. Buatlah program pada arduino ide dan matlab lalu tuliskan fungsi pada masing-masing
program:
Arduino:
int ledpin=12;
int matlabData;

void setup()
{
pinMode (ledpin,OUTPUT);
Serial.begin (9600);
}
void loop()
{
if(Serial.available()>0)//Jika ada data yang dibaca
{
matlabData=Serial.read();//Membaca data komunikasi serial
if(matlabData=='A') // Logika jika diberi data A
digitalWrite(ledpin,HIGH); // Led pada pin12 menyala
else if(matlabData=='Z') // Logika jika diberi data Z
digitalWrite(ledpin,LOW); // Led pada pin12 mati
}
}
Matlab :
function varargout = LATIHAN1(varargin)

gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @LATIHAN1_OpeningFcn, ...
'gui_OutputFcn', @LATIHAN1_OutputFcn, ...
'gui_LayoutFcn', [], ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end

function LATIHAN1_OpeningFcn(hObject, eventdata, handles, varargin)

handles.output = hObject;

guidata(hObject, handles);

function varargout = LATIHAN1_OutputFcn(hObject, eventdata, handles)

varargout{1} = handles.output;

function pushbutton1_Callback(hObject, eventdata, handles)


global s
fwrite(s,'Z');

function edit1_Callback(hObject, eventdata, handles)


function edit1_CreateFcn(hObject,eventdata, handles)

if ispc && isequal(get(hObject,'BackgroundColor')),


get(0,'defaultUicontrolBackgroundColor'),
set(hObject,'BackgroundColor','white');
end

function edit2_Callback(hObject, eventdata, handles)


function edit2_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor')),
get(0,'defaultUicontrolBackgroundColor'),
set(hObject,'BackgroundColor','white');
end

function pushbutton2_Callback(~,~,~)
global s
myform=guidata(gcbo);
aa=get(myform.edit1,'String');
bb=str2double(get(myform.edit2,'String'));
s=serial(aa,'Baudrate',bb,'Databits',8,'Stopbits',1,'InputBufferSize',
16000);
fopen(s)

function pushbutton3_Callback(hObject, eventdata, handles)


global s
fwrite(s,'A');

function pushbutton4_Callback(hObject, eventdata, handles)


global s
fclose(s);
delete(s);
clears;
close;

3. Setelah itu pada command window matlab ketikan GUIDE lalu pilih Create New GUI

4. lalu klik Blank GUI (default) akan terbuka tamplan seperti berikut :
5. Setelah itu kita hanya perlu menambahkan 3 buah PUSHBUTTON dan 2 buh EDIT
TEXT,untuk cara penambahannya sudah tersedia di samping kiri menu GUI

6. Lalu klik RUN pada GUI tersebut dan akan muncul tampilan program pada jendela M-
File.

7. Setelah itu kita hanya perlu memprogram masing-masing pushbutton sesuai pada gamar
program matlab di atas.

8. Jika sudah kilk RUN pada program M-file tadi maka tampilan gui akan
terbuka,selanjutnya kita hanya perlu memasukan COM dan Serial yang kita gunakan
pada arduino

9. Lalu klik tombol pushbutton yang berfungsi sebagai tombol OPEN,untuk membuka
komunikasi.

10. Lalu jika kita sudah,sekarang kita sudah bisa menyalakan dan mematikan LED dengan
tombol tertentu.

Perintah selanjutnya adalah membuat tombol untuk menyalakan masing-masing


LED. Dan jelaskan programnya.

B. Data Hasil Percobaan


Berdasarkan perintah diatas maka disini saya akan membut gui dengan 3 buah tobol ON, 3
buah tombol OFF dan 1 buah tombol OPEN dan 1 buah tomol CLOSE,maka program pada
arduino adalah sebagai berikut :

int ledpin0=12;
int ledpin1=11;
int ledpin2=10;
int matlabData;

void setup()
{
pinMode (ledpin0,OUTPUT);
pinMode (ledpin1,OUTPUT);
pinMode (ledpin2,OUTPUT);
Serial.begin (9600);
}
void loop()
{
if(Serial.available()>0)//Jika ada data yang dibaca
{
matlabData=Serial.read();//Membaca data komunikasi serial
if(matlabData=='A') // Logika jika diberi data A
digitalWrite(ledpin0,HIGH);
if(matlabData=='B')
digitalWrite(ledpin1,HIGH);
if(matlabData=='C')
digitalWrite(ledpin2,HIGH);// Led pada pin12 menyala
if(matlabData=='P') // Logika jika diberi data Z
digitalWrite(ledpin0,LOW);
if(matlabData=='J')
digitalWrite(ledpin1,LOW);
if(matlabData=='U')
digitalWrite(ledpin2,LOW);// Led pada pin12 mati
}
}

Lalu Pada Matlab Buatlah tampilan GUI dan programlah M-File nya seperti di bawah
1. Tampilan GUI (Menyalakan LED dengan masing-masing tombol)

2. Program Matlab
function varargout = percobaan4(varargin)
% PERCOBAAN4 MATLAB code for percobaan4.fig
% PERCOBAAN4, by itself, creates a new PERCOBAAN4 or raises the existing
% singleton*.
%
% H = PERCOBAAN4 returns the handle to a new PERCOBAAN4 or the handle to
% the existing singleton*.
%
% PERCOBAAN4('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in PERCOBAAN4.M with the given input
arguments.
%
% PERCOBAAN4('Property','Value',...) creates a new PERCOBAAN4 or raises
the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before percobaan4_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to percobaan4_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help percobaan4

% Last Modified by GUIDE v2.5 24-May-2019 22:08:15

% Begin initialization code - DO NOT EDIT


gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @percobaan4_OpeningFcn, ...
'gui_OutputFcn', @percobaan4_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT

% --- Executes just before percobaan4 is made visible.


function percobaan4_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to percobaan4 (see VARARGIN)

% Choose default command line output for percobaan4


handles.output = hObject;

% Update handles structure


guidata(hObject, handles);

% UIWAIT makes percobaan4 wait for user response (see UIRESUME)


% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line.
function varargout = percobaan4_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure


varargout{1} = handles.output;

% --- Executes on button press in pushbutton1.


function pushbutton1_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global s //Membuka data
fwrite(s,'A'); //Memberi data A

% --- Executes on button press in pushbutton2.


function pushbutton2_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global s //Membuka data
fwrite(s,'B'); //Memberi data B

% --- Executes on button press in pushbutton3.


function pushbutton3_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton3 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global s //Membuka data
fwrite(s,'C'); //Memberi data C

% --- Executes on button press in pushbutton4.


function pushbutton4_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton4 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global s
myform=guidata(gcbo);
aa=(get(myform.edit1,'String'));
bb=str2double(get(myform.edit2,'String'));
s=serial(aa,'Baudrate',bb,'DataBits',8,'StopBits',1,'InputBufferSize',16000);
fopen(s);

% --- Executes on button press in pushbutton5.


function pushbutton5_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton5 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global s
fclose(s);
delete(s);
clear;
close;

function edit1_Callback(hObject, eventdata, handles)


% hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of edit1 as text


% str2double(get(hObject,'String')) returns contents of edit1 as a
double
% --- Executes during object creation, after setting all properties.
function edit1_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit1 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.


% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit2_Callback(hObject, eventdata, handles)
% hObject handle to edit2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Hints: get(hObject,'String') returns contents of edit2 as text


% str2double(get(hObject,'String')) returns contents of edit2 as a
double

% --- Executes during object creation, after setting all properties.


function edit2_CreateFcn(hObject, eventdata, handles)
% hObject handle to edit2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles empty - handles not created until after all CreateFcns called

% Hint: edit controls usually have a white background on Windows.


% See ISPC and COMPUTER.
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

% --- Executes on button press in pushbutton6.


function pushbutton6_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton6 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global s
fwrite(s,'P'); // Memberi data P

% --- Executes on button press in pushbutton7.


function pushbutton7_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton7 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global s
fwrite(s,'J'); //Memberi data J

% --- Executes on button press in pushbutton8.


function pushbutton8_Callback(hObject, eventdata, handles)
% hObject handle to pushbutton8 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
global s
fwrite(s,'U'); //Memberi data U
Untuk membuat LED menyala seperti kondisi di atas maka saya mencoba memuat
tampilan GUI dengan 3 tombol on untuk masing-masing LED dan tombol OFF untuk
masing-masing LED dapat dilihat seperti gambar diatas.

Pada program saya,LED akan meyala saat arduino membaca data A,B,C dan OFF saat
membaca data P,J,U tombol-tombol tersebut saya atur sesuai dengan program yang saya
tunjukan pada program matlab diatas.jadi untuk mendapatkan program di atas maka kita
akan memprogram masing-masing pushbutton yang ada sesuai dengan fungsi yang akan
dilakukan.

Jika ingin memulai untuk menyalakan LED maka jangan lupa untuk mengisi nilai COM
dari port arduino yang kita gunakan dan juga isi nilai atau BaudRate komunikasi yang kita
gunakan dalam hal ini saya menggunakan nilai BaudRate 9600.
KESIMPULAN

Praktikum 1 :

Pada percobaan ini dapat disimpilkan bahwa LED yang terhubung pada pin board arduino
dapat kita atur kondisinya sesuai dengan program yang kita berikan,dengan begitu dapat
terlihat bahwa proses komunikasi antara papan arduino dengan komputer dapat di lakukan
dengan bantuan aplikasi ARDUINO IDE dalam hal ini program yang telah kita tulis pada
aplikasi arduin ide akan dikirim ke papan arduino untuk dijalankan.

Praktikum 2 :

Pada percobaan ini dapat disimpulkan bahwa arduino ide dapat kita komunkasikan secara
serial dengan matlab yang sudah terinstal library arduino dengan begitu kita dapat memberi
program ke papan arduino menggunakan arduino ide dan perintah yang sudah kita upload
ke arduino dapat di eksekusi melalui matlab.

Praktikum 3 :

Pada percobaan ini dapat disimpukan bahwa kita dapat mengatur nyala LED yang ada
pada papan arduino dapat kita atur dengan potensiometer dengan perintah (analogRead)
perintah ini akan membaca nilai analog yang diperoleh dari putaran potensiometer yang jika
mencapai nilai tertentu maka led yang menjadi output akan menyala.Pada matlab sendiri
untuk dapat memantau data yang ada maka kita dapat mambuat grafik yang akan memantau
nilai putaran pada potensiometer secara real-time.

Praktikum 4 :

Pada percobaan ini dapat disimpulkan bahwa pengaturan nyala LED pada arduino juga
dapat di lakukan dengan menggunakan GUI (graphical user interface) dengan menggunakan
GUI maka kita dapat membuat tampilan sederhana dengan beberapa ikon yang memiliki
fungsi masing-masing misalnya untuk menyalakan atau mematikan LED,dan pada
percobaan ini sebelum hendak mengatur nyala LED pada papan arduino maka pertama-tama
kita perlu mengatur program kondisi led melalui arduino ide dan menghubungkannya ke
matlab sesuai dengan port COM dan BaudRate yang kita gunakan melalui GUI yang telah
kita buat maka dengan begitu maka LED dapat berada pada kondisi yang kita programkan.

Anda mungkin juga menyukai