Ash

Menjadi bagian dalam pembuktian bahwa Islam adalah Rahmatan lil Alamin

Arduino – Matlab Serial Plot

Leave a comment

Bismillahirrahmanirrahim..

hari ini saya mau coba share bagaimana cara plot data serial dari arduino ke matlab..

saya merasa bersalah sekali klo tidak menshare ini, karena entah kenapa saya sangat kesulitan mencari informasi dari internet,

dan kalaupun banyak, lebih sering gagalnya dan tidak jelasnya..

kali ini saya coba share fungsi sederhana yang saya masukkan ke arduino yaitu sin dan cos.

nanti output dari sin dan cos ini saya kirim serial dan oleh matlab dibaca kemudian di plot dalam grafik.

banyak sekali manfaat dari plotting grafik ini, salah satunya adalah untuk memudahkan dalam analisis.

selama ini saya selalu melakukan manual yaitu baca output serial dari arduino kemudian keluarkan di serial monitor,

setelah itu baru di copy-paste ke excel dan bikin grafik dari excel.

sangat merepotkan dan melelahkan..

berikut programnya 🙂

// masukan program ini di arduino
float t,y,y2;

void setup(void)
{
Serial.begin(115200);
t = 0;
}

void loop(void)
{
y = sin(t);
y2 = cos(t);
Serial.println(y);
Serial.println(y2);
delay(100);
t = t+0.2;

}

kemudian buat file program di matlab

s = serial(‘COM6’);  %sesuaikan dengan settingan port serial arduino anda
set(s, ‘InputBufferSize’, 256);
set(s, ‘BaudRate’, 115200);
set(s, ‘DataBits’, 8);
set(s, ‘Parity’, ‘none’);
set(s, ‘StopBit’, 1);
set(s, ‘FlowControl’, ‘hardware’);  %jangan pake none, lemot
set(s, ‘Timeout’, 10);

disp(get(s, ‘Name’))
prop(1)=(get(s, ‘BaudRate’));
prop(2)=(get(s, ‘DataBits’));
prop(3)=(get(s, ‘StopBit’));
prop(4)=(get(s, ‘InputBufferSize’));
disp([‘Port Setup Done ‘, num2str(prop)])

fopen(s);
t=1;
disp(‘mulai’)
while(t<100)
data_sin = fscanf(s, ‘%f’);
data_cos = fscanf(s, ‘%f’);
plot(t,data_sin, ‘-.ro’, t, data_cos, ‘:bs’);  % lebih detail apa itu -.ro dan :bs lihat di help matlab 🙂
hold on;
t=t+1;
drawnow;
end

fclose(s);
clear s;

daaaan…. jadilah hasilnya seperti ini :

sin cos

alhamdulillah.. berhasil juga…

udah dulu ya, mau pulang dan taraweh dulu..

semoga bermanfaat..

reference :

help matlab bagian serial, plot, fopen, fscanf.

http://mycola.info/2011/04/02/plotting-the-serial-port-data-with-matlab/

Advertisements

Author: ashlih

electrical engineering ITB no gakusei desu

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s