Tuesday, December 30, 2014

Membuat Program BMI (Body Mass Index) untuk Mengetahui Berat Badan Ideal

Pada artikel kali ini, saya akan mencoba menjelaskan sedikit tentang cara membuat program penghitung berat badan ideal atau bisa juga disebut Kalkulator BMI.
 Dan juga akan dijelaskan syntax yang digunakan pada GUI. 

Berikut pemaparan dari saya, 
1. Buka program Matlab, disini saya menggunakan Matlab 7.6.0 (R2008a)
2. Pada Command Window ketik guide dan Enter. 
3. pilih Blank Gui, klik Ok.
4. Akan muncul Guide Quick start. Pilih Blank GUI (default) --> klik Ok.
5. Di window inilah kita akan menentukan tampilan dan tata letak dari GUI kita. 






Kemudian pada jendela ini kita akan membuat 4 Edit text tools yang diisi oleh nama, usia, berat, tinggi. Sedangkan untuk tombol perintah bersihkan, hitung BMI dan simpan ke Excel bisa menggunakan tools pushbutton. Disini saya membuat 2 opsi satuan yang digunakan untuk input berat badan dan tinggi badan yakni bisa dengan memilih satuan Kg-Cm ataupun Pounds(Ibs)-Inchi. Dimana pilihan ini menggunakan Tools Radio Button. Keterangan selebihnya menggunakan Tools Text. 
     Untuk lebih jelasnya mengenai hal-hal yang perlu dimasukkan pada Inspector Window silahkan lihat pada tabel berikut ini 
  
Type                  Tag                    String               Value 
Text                 Nama:
Edit                  Nama_text             ‘ ‘
Text                 Usia:
Edit                  Usia_text                ‘ ‘
Panel                Pilihan:
Radio Button    anglo-radio          Ibs/in                     1
Radio Button    metric_radio       Kg/cm                    0
Text                  berat_label        Berat (Ib):
Text                  tinggi_label        Tinggi (in):
Edit                    berat_text              0
Edit                    tinggi_text             0
Text                                               Hasil:
Text                       hasil_text             ‘ ‘
Pushbutton    bersihkan_button     Bersihkan
Pushbotton     Hitung_button        Hitung BMI
Pushbotton     Simpan_button       Simpan ke Excel

            Setelah membuat GUI nya dan menyimpan sebagai file .fig, secara otomatis jendela M-File akan terbuka. Pada jendela inilah kita akan memasukkan fungsi-fungsi agar kalkulator BMI ini dapat dijalankan.
Ikutilah langkah berikut ini :
Klik icon function pada toolbar,kemudian:
a. untuk fungsi nama_text_Callback
handles.nama = get(hObject,'String');
guidata(hObject, handles)

b. untuk fungsi usia_text_Callback
handles.usia = get(hObject,'String');
guidata(hObject, handles)

c. untuk fungsi anglo_radio_Callback
 handles.anglo = get(hObject,'Value');
set(handles.berat_label, 'String' , 'berat (ib) :')
set(handles.tinggi_label, 'String' , 'tinggi (inc) :')
set(handles.metric_radio, 'Value' , 0
handles.metric=0;
handles.wu= 'lb';
handles.hu= 'inc';
 guidata(hObject, handles)

d. untuk fungsi metric_radio_Callback
handles.metric = get(hObject,'Value');
set(handles.berat_label, 'String' , 'berat (kg):')
set(handles.tinggi_label, 'String' , 'tinggi (cm) :')
set(handles.anglo_radio, 'Value' , 0)
handles.anglo=0;
handles.wu= 'kg';
handles.hu= 'cm';
guidata(hObject, handles)

 e. untuk fungsi memasukkan berat_text_Callback
num = str2double(get(hObject,'String'));
 if isnan(num)
  set(hObject,'String', 0);
end
handles.berat = num;
guidata(hObject, handles)

f. untuk fungsi memasukkan tinggi_text_Callback
num = str2double(get(hObject,'String'));
 if isnan(num)
   set(hObject,'String', 0);
 end
handles.tinggi = num;
guidata(hObject, handles)

  g. untuk fungsi hitung_button_Callback
if handles.metric
    w=handles.berat;
    h=handles.tinggi;
else
    w=handles.berat/2.2046;
   h=handles.tinggi/0.3937;
end

 bmi=1e4 *w/h^2;


Rumus untuk menghitung BMI adalah :
BMI = 104X (Berat dalam Kg) / (tinggi dalam cm)2
Jika ingin menggunakan satuan Pounds dan Inchi , rumusnya adalah:
 BMI = 104X (Berat dalam satuan pounds /2.2046) / (tinggi dalam inchi/0.3937)2

 Hasilnya didasarkan pada kondisi berikut ini :

 BMI < 18.5 terlalu kurus
       18.5 – 24.9 Normal
   25 – 29.9 Gemuk
   >30 Obesitas

  h. fungsi untuk membersihkan layar atau bersihkan_button_Callback
set(handles.nama_text, 'String', '')
handles.nama = '';
set(handles.usia_text, 'String', '')
handles.usia = '';
set(handles.berat_text, 'String', '0')
handles.berat = 0;
set(handles.tinggi_text, 'String', '0')
handles.tinggi = 0;
set(handles.hasil_text, 'String', '')
handles.hasil = 0;
handles.kondisi = '';

         Kita bisa melengkapi untuk menyimpan data yang sudah kita buat di Matlab kedalam file Ms. Excel . Sebelumnya kita harus menyiapkan dulu spreadsheet dengan nama misal, bmi.xls, dan menyimpannya pada folder yang sama dengan file .fig dan M-file yang sudah dibuat pada Matlab.




      Untuk menyimpan file Matlab kedalam Excel berikut fungsinya
i. simpan_button_Callback 
d{1, 1} = handles.nama;
d{1, 2} = handles.usia;
d{1, 3} = handles.berat;
d{1, 4} = handles.wu;
d{1, 5} = handles.tinggi;
d{1, 6} = handles.hu;
d{1, 7} = handles.hasil;
d{1, 8} = handles.kondisi;
c = xlsread('bmi', 1 , 'b1');
position = ['a' num2str(c+3)];
[status, message] = xlswrite('bmi',d,1,position);
if status
   helpdlg('Data saved ok...', 'Save Spreadsheet');
else
  errordlg('Could not save data', 'Save Spreadsheet');
end


      Selesai sudah pembahasan kita kali ini tentang langkah-langkah pembuatan Kalkulator BMI dengan Matlab. Semoga Bermanfaat. :D

No comments: