INSTRUMENTASI INDUSTRI
Class : 3C-EK
Experiment Number :
No/Practicum Module
: Serial MATLAB
Name
Proteus - 1
Arduino Library - 1
Software VSPE - 1
Hyperterminal - 1
Matlab - 1
3. Langkah Percobaan
A. Tahapan Koneksi Serial
a. Membuka Objek Port Serial
Ketikan pada command window matlab:
s =serial(‘COM2’)
maka akan tampak hasil:
b. Editing Atribut(setting parameter)
Dapat dilihat dan di edit parameter dari port serial dengan fungsi get dan set
Tetapi jika parameter yang ingin di set banyak maka kita dapat melakukan
cara berikut :
2. Buka program Com0Com dan lakukan PAIR COM1 dan COM2. Lalu running
PROTEUS
3. Buka Program MATLAB dan lakukan intruksi dibawah ini pada command
window untuk proses transmit teks dari MATLAB ke PROTEUS. Catatan :
Pastikan MATLAB bisa terkoneksi secara serial
s = serial (‘COM2’,’Baudrate’,9600);
fopen (s)
fprintf(s,’Laboratorium Instrumentasi’);
fprintf(s,’Prak ke 3’);
4. Hasilnya akan tampak seperti berikut:
5. Lakukan intruksi dibawah ini pada command window untuk proses receive teks
dari PROTEUS ke MATLAB dengan terlebih dahulu melakukan Clear Screen
dan Echo Typed Characters dengan cara klik kanan pada virtual terminal
fgets(s)
6. Hasilnya akan tampak seperti berikut :
Pada gambar diatas terdapat warning erro. Warning tersebut terjadi karena
terminator default-nya adalah ‘LF’ atau Line Feed yang mengakibatkan delay.
Sekarang diubah menjadi ‘CR’ atau Carriage Return sehingga transmisinya
menjadi lebih cepat, caranya dengan melakukan setting atribut seperti berikut:
Set(s,’terminator’,’CR’)
Coba ulangi poin 6, maka akan tampak hasil yang lebih cepat pada command
window. Hasilnya seperti berikut:
answer=1;
data=serial(‘COM2’,’baudrate’,9600)
while answer
fprintf(data,’%s’,char(answer));
answer=input(‘Masukan nilai LED 1 atau 2 (1=ON, 2=OFF, 0=Keluar): ‘);
end
Dan jika kita masukkan nilai 1 maka LED akan ON, hasilnya seperti:
Sebaliknya jika kita masukan nilai 2 maka LED akan OFF, hasilnya seperti:
5. Pada bagian ini kita telah berhasil melakukan ON/OFF LED menggunakan
MATLAB
D. Buat rangkaian dengan mengkoneksikan ke MATLAB, untuk melakukan ON/OFF
LED dengan delay waktu yang bisa diubah-ubah pada command window pada
MATLAB
Command Matlab
Hasil :
Untuk memberi delay pada lampu yaitu dengan memasukkan nilai delay(ms) pada
matlab. Misalkan Ketika pada matlab memasukan delay 200ms maka waktu on dan
off akan ter setting selama 2 detik.
2. Buat program yang sama pada praktikum 2 yang tampak seperti dibawah ini:
3. Jalankan Com0Com dengan Pair COM1-COM2
4. Jalankan MATLAB dengan perintah dibawah ini pada command window atau
editor window
clear all;
clc
%% ploting data
Tmax = 50; % Total waktu akuisisi (s)
figure,
grid on,
xlabel ('Time (s)'), ylabel('Data (8-bit)'),
axis([0 Tmax+1 -10 300]),
F. Tugas
Buat tampilan grafik pada MATLAB dengan dua input sensor (warna grafik
dibedakan yakni merah dan biru). Input sensor pada pin analog A0 dan A1. Setelah
itu berhasil, coba ganti input sensor digital pada pin digital 6 dan warnanya hijau
Program
Command Matlab
4. Pertanyaan
➢ Apa yang anda pahami dari modul 3 ini?
Yang di pahami adalah cara untuk mengkoneksikan antara arduno pada proteus
dengan matlab, membuat program untuk mengontrol menyalakan atau mematikan
LED dengan command window pada matlab, dan mermembuat program untuk
menampilkan akuisisidata sensor pada matlab dalam bentuk grafik.
➢ Implementasikan pengetahuan yang anda peroleh pada modul 3 ini dengan
membuat sebuah sistem instrumentasi yang terdiri dari elemen sensor dan aktuator,
elemen processing (ARDUINO), elemen display pada MATLAB. Ketentuannya
seperti berikut:
- Terdapat dua sensor LDR dan LM35 masing-masing pada pin analog A0 dan A1.
- Tempatkan aktuator MOTOR DC pada pin 12 dan indikator LED pada pin 13
- Tampilkan data LDR dan LM35 pada MATLAB (grafik).
- Jika nilai LDR > 300 (PWM) maka MOTOR ON sebaliknya jika < 300 (PWM)
maka MOTOR OFF.
- Jika nilai LM35 > 400 (PWM) maka LED ON dan sebaliknya jika <400 maka
LED OFF.
- Buat juga cara manual untuk melakukan ON/OFF LED dan MOTOR DC pada
command window MATLAB
5. Analysis
Dalam rangka menghubungkan ARDUINO ke Proteus melalui Matlab,
diperlukan beberapa modul tambahan di Proteus serta perangkat lunak ekstra. Di
Proteus, kita perlu menambahkan modul COMPIM yang berperan dalam
mensimulasikan komunikasi melalui port serial (COM Port). Sebelum menghubungkan
ARDUINO ke Proteus melalui Matlab, kita perlu mengonfigurasi beberapa parameter
di COMPIM. Parameter yang harus dikonfigurasi di COMPIM mencakup Physical
Port, Physical Baud rate, Physical Data Bit, Physical Parity, Physical Stop Bit, Virtual
Baud Rate, Virtual Data Bit, Virtual Parity, dan Virtual Stop Bit.
Selain itu, kita memerlukan perangkat lunak tambahan berupa emulator port
serial virtual untuk menghubungkan ARDUINO ke Proteus melalui Matlab. Saat
menggunakan emulator port serial virtual, kita harus memilih mode PAIR saat
membuat port virtual dan memilih port yang sesuai dengan yang akan digunakan.
Setelah mengatur COMPIM dan emulator port serial virtual, langkah
selanjutnya adalah memprogram di Matlab. Proses pemrograman di Matlab dapat
dilakukan melalui command prompt atau dalam bentuk script. Dalam pemrograman
Matlab, kita harus memilih COM yang sesuai dengan yang telah diatur di emulator port
serial virtual. Misalnya, jika di emulator port serial virtual kita memilih COM3 dan
COM4, maka COM4 akan digunakan di Matlab sedangkan COM3 di COMPIM,
sehingga ARDUINO dapat berkomunikasi secara serial dengan Matlab.
Untuk mengirim perintah data dari Matlab ke ARDUINO, kita dapat
menggunakan perintah fprintf atau fwrite, sedangkan untuk membaca data dari
ARDUINO ke Matlab, kita dapat menggunakan perintah fscanf. Terakhir, setelah
selesai menggunakan objek port serial, kita dapat menutupnya dengan perintah fclose
atau delete.
6. Kesimpulan
✓ Untuk menghubungkan ARDUINO dan Proteus ke HyperTerminal, diperlukan
COMPIM, dan virtual serial port emulator
✓ Untuk mengirim perintah dan data dari MATLAB ke ARDUINO, perintah
fprintf/fwrite dapat digunakan
✓ Untuk membaca data dari Arduino ke Matlab, perintah fscanf dapat digunakan
✓ Objek port serial harus ditutup menggunakan perintah fclose atau delet setelah
itu selesai digunakan