MATLAB GUI – Simulink Model Integration

March 10, 2009

Introduction

Tutorial kali ini akan menunjukkan bagaimana caranya untuk menjalankan proses yang telah dibangun dala model Simulink melalui GUI. Contoh masalah yang akan digunakan adalah sebuah masalah sederhana, yaitu penjumlahan. Namun berbeda dengan apa yang telah kita lakukan sebelumnya dengan penjumlahan, kali ini proses utamanya akan dijalankan di dalam model Simulink.

akhirBagi yang baru memulai membuat GUI di MATLAB, disarankan untuk mengikuti MATLAB GUI – Introduction for Beginners terlebih dahulu.

Simulink Model Initialization

1. Klik pada icon librarybrowser yang terdapat di MATLAB Toolbar, kemudian akan muncul sebuah tampilan Simulink Library seperti berikut:

simlib

2. Untuk membuat file Simulink yang baru, klik pada icon new yang terdapat di toolbar Simulink Library Browser. Kemudian sebuah bidang kosong seperti berikut akan muncul:

blanksim

Di bidang inilah segala diagram blok Simulink kita akan dibangun dan saling dihubungkan.

3. Arahkan kursor kembali pada Simulink Library Browser dan klik pada bagan Commonly Used Blocks.

libcommon

Kemudian klik pada block Constant dan drag block tersebut ke dalam area bidang putih Simulink, seperti:

constant

4. Untuk membangun operasi penjumlahan sederhana, kita akan membutuhkan 2 blok Constant, 1 block Add (dari bagan Math Operations) dan 1 block To Workspace (dari bagan Sinks).

basicsim

Kemudian hubungkan tiap-tiap block tersebut dengan cara meng-klik dan drag dari output sebuah block ke input block tujuan, seperti:

click

5. Selanjutnya kita perlu merubah parameter dari block Constant dan block To Workspace di atas.

Klik dua kali pada salah satu block Constant dan rubah parameter Constant Value menjadi input1.

Lakukan hal yang sama pada block Constant berikutnya, namun rubah parameter Constant Value menjadi input2.

Kemudian klik dua kali pada block To Workspace dan rubah parameter Variable Name menjadi dataout dan parameter Save Format menjadi Array.

Variabel input1 dan input2 akan dihasilkan oleh proses GUI (meminta data dari user) dan setelah proses penjumlahan, variabel dataout akan dipanggil oleh GUI untuk kemudian ditampilkan hasilnya.

(note: untuk menghilangkan nama tiap block, klik kanan pada block >> Format >> Hide Name)

simall

6. Diagram block Simulink kita telah selesai dan siap untuk dihubungkan dengan GUI, save-lah file Simulink yang telah Anda buat. Dalam tutorial ini, file di-save dengan nama “addsim.mdl”.

MATLAB GUI Initialization

1. Buka MATLAB dan di command window ketik: guide

command-window_guideatau klik pada icon guide di MATLAB toolbar guideicon

2. Tampilan berikut akan muncul pada layar:

guide-quick-start

Pilih Blank GUI (Default) lalu klik OK.

3. Tampilan sebuah GUI kosong akan muncul di layar.

untitled_fig2

4. Masukkan komponen Edit Text edit-icon, Static Text static-icon dan Push Buttonpushbutton-icon ke dalam area desain GUI (area yang memiliki grid).

Susunlah komponen-komponen tersebut hingga menjadi seperti tampilan dasar berikut ini.

basic

5. Klik dua kali pada komponen Edit Text yang mewakili input pertama, kemudian rubahlah parameter String menjadi 0 (nol) dan Tag menjadi input1_edit.

6. Klik dua kali pada komponen Edit Text yang mewakili input kedua, kemudian rubahlah parameter String menjadi 0 (nol) dan Tag menjadi input2_edit.

7. Klik dua kali pada komponen Static Text yang mewakili simbol “+”, kemudian rubahlah parameter String menjadi “+”.

8. Klik dua kali pada komponen Push Button yang mewakili tombol “=”, kemudian rubahlah parameter String menjadi “=” dan Tag menjadi add_push.

9. Klik dua kali pada komponen Static Text, kemudian rubahlah parameter String menjadi o (nol) danTag menjadi output1.

10. Inisialisasi GUI sudah selesai. Save file GUI ini dengan nama yang diinginkan, dalam tutorial ini nama file adalah GUIadd.

Creating Programming Code For Your GUI

1. Buka file “*.m” yang terkait dengan GUI (dalam tutorial ini: “GUIadd.m”). Klik icon function pada MATLAB Toolbar.function

2. Klik pada pilihan input1_edit_Callback dan masukkan barisan kode berikut untuk mendefinisikan input yang akan diambil.

ymin_fun2

3. Masukkan barisan kode yang sama pada input2_edit_Callback.

4. Klik kembali icon function pada MATLAB Toolbar.function

5. Klik pada pilihan add_push_Callback dan masukkan barisan kode berikut ini.

push

function assigin digunakan untuk memasukkan variabel input1 dan input2 ke dalam workspace MATLAB, hal ini perlu dilakukan agar model Simulink kita dapat memanggil variabel input1 dan input2 yang telah dimasukkan melalui GUI.

masukkan nama file Simulink yang ingin dipanggil pada function sim(‘simulink‘,[],options). Dengan ini diagram Simulink Anda akan mulai berjalan.

(Note: yang dituliskan hanyalah nama file nya tanpa tulisan .mdl)

Kemudian variabel dataout yang merupakan hasil dari Simulink dipanggil dan dirubah ke dalam format String, sehingga akan dapat ditampilkan pada GUI.

Ketikkan guidata(hObject,handles) untuk meng-update handles GUI Anda.

6. Selesailah proses pembuatan GUI kita kali ini yang menghubungkan GUI dengan Simulink. Save file tersebut di atas dan jalankanlah GUI Anda.

Launch the GUI

1. Klik tombol guide_play dari file GUIDE Editor (*.fig) atau save-run-icon dari M-File editor (*.m). GUI kita akan tampil seperti ini.

awal

2. Cobalah untuk memasukkan sejumlah angka dan klik tombol “=” untuk melihat GUI Anda berjalan. Selamat mencobaaa!!

Inilah akhir dari tutorial kali ini. Apabila ada pertanyaan dan diskusi seputar MATLAB GUI, silahkan menuliskannya pada kolom comment di bawah ini atau email kami di ganeshatech@gmail.com.

5 Responses to “MATLAB GUI – Simulink Model Integration”

  1. robert Says:

    apa ada contoh simulink traffick light.?

  2. yhadibowo Says:

    boleh tanya tanya nich mas…end punya email pribadi

  3. tatik Says:

    mksud error ni apa y…:

    ??? Error using ==> feval
    Undefined command/function ‘btnhisto_Callback’.

    Error in ==> gui_mainfcn at 75
    feval(varargin{:});

    Error in ==> histogram at 42
    gui_mainfcn(gui_State, varargin{:});

    ??? Error while evaluating uicontrol Callback.

    udh tak cb kok ttp gak ktmu…
    blz d email aja..
    mkasih..^_^

  4. yustinus sinuhaji Says:

    mas saya nyoba gui dengan memanggil blok fuzzy logic kok terjadi error sperti ini ya..
    ??? Error using ==> guiminyakisolasi>cari_nilai_Callback at 321
    Error in ‘untitled/Fuzzy Logic Controller’: Parameter ‘skripsi1’ cannot be evaluated. MATLAB error
    message: Undefined function or variable ‘skripsi1’.

    Error in ==> gui_mainfcn at 96
    feval(varargin{:});

    Error in ==> guiminyakisolasi at 42
    gui_mainfcn(gui_State, varargin{:});

    Error in ==>
    @(hObject,eventdata)guiminyakisolasi(‘cari_nilai_Callback’,hObject,eventdata,guidata(hObject))

    ??? Error while evaluating uicontrol Callback

    yang saya ingin tahu, apa GUI itu gak bisa digabungkan dengan fuzzy , apa cuma dengan matematika biasa saja seperti contoh diatas..
    mohon bantuannya,,via email saja ya

  5. khusnul Says:

    Cara mengatasi push button yang tidak muncul kak.. gmna ?


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

%d bloggers like this: