Showing posts with label excel. Show all posts
Showing posts with label excel. Show all posts

09 July 2016

Simulasi tanki

Pengantar

Yang dimaksud simulasi tanki di sini adalah menggunakan model matematika untuk mengetahui dinamika ketinggian air di dalam tanki ketika debit air masukan berubah-rubah. Model matematika diturunkan dari sebuah tanki terbuka dengan satu pipa keluaran (Gb. 1) menggunakan persamaan kesetimbangan massa dan hukum Bernoulli.

image

Gambar 1. Tangki tunggal terbuka dengan satu pipa keluaran

Asumsi

Dalam menurunkan model tanki Gb. 1, sejumlah asumsi dipakai yaitu:

  1. Luas penampang di titik 2 (A2) jauh lebih besar dari luas penampang aliran fluida di titik 1 (A1), sehingga diasumsikan kecepatan fluida di 1 bisa diabaikan (v1 = 0).
  2. Titik 2 berada pada ketinggian 0 m dari tanah, sehingga h2 = 0 m.
  3. Debit fluida di titik 2 (qo) tidak dipengaruhi oleh gaya gesek fluida dengan pipa.

Model dinamika level tanki

Model dinamika tanki terdiri dari persamaan aliran debit output fluida dan persamaan ketinggian fluida di dalam tanki.

Debit output

Persamaan untuk debit output diturunkan menggunakan persamaan Bernoulli di dua titik, yaitu titik 1 dan titik 2 pada Gb. 1. Persamaan tersebut adalah

clip_image001. (1)

Berdasarkan asumsi no. 1, kecepatan fluida di titik 2 dapat diabaikan dibandingkan dengan kecepatan fluida di titik 1. Demikian juga, tekanan di titik 1 adalah sama dengan tekanan di titik 2, yaitu tekanan udara luar (p0). Berdasarkan asumsi no 2 dan 3, maka persamaan 1 dapat ditulis sebagai berikut:

clip_image001[3] atau clip_image001[5].

Dengan demikian, debit output tangki adalah: clip_image001[7],

dimana ao, g, dan h berturut-turut adalah luas penampang output, percepatan gravitasi, dan ketinggian permukaan air dari dasar tanki.

 

Ketinggian fluida di tanki

Berdasarkan Gb. 1, maka perubahan massa fluida yang terjadi di dalam tanki (dM/dt) adalah sama dengan perubahan jumlah fluida yang masuk (dMi/dt) dikurangi yang keluar tanki (dMo/dt), atau jika ditulis dalam bentuk persamaan adalah:

clip_image001[9]. (2)

Karena hanya ada satu jenis fluida (rho sama) dan tidak ada pemampatan, maka persamaan 2 dapat disederhanakan menjadi:

clip_image001[1]. (3)

Karena kecepatan perubahan volume fluida per detik adalah debit fluida dan volume tangki adalah luas penampang tangki kali tinggi tanki, maka persamaan 3 jika ditulis ulang dalam bentuk debit akan menjadi:

clip_image001[3]. (4)

Persamaan 4 menjadi persamaan yang akan digunakan dalam aplikasi simulink untuk mensimulasikan dinamika ketinggian fluida di dalam tanki Gb. 1.

Model simulink

Salah satu implementasi simulink dari persamaan 4 dapat dilihat pada Gb. 2 berikut.

image

Gambar 2. Aplikasi simulink untuk persamaan 4

Pada Gb. 2, aplikasi simulink menggunakan komponen-komponen sebagaimana tersebut di Tabel 1.

Tabel 1. Komponen simulink pada Gb. 2.

No.

Nama Komponen

Tempat

Parameter

Fungsi

1. DDE Source lihat: excel-DDE DDE Service: ‘excel’
DDE Topic: ‘tank_2.xlsx’
DDE Item: ‘r2c1’
membaca data dari sel excel
2. DDE Sink idem DDE Service: ‘excel’
DDE Topic: ‘tank_2.xlsx’
DDE Item: ‘r2c2’
menulis data ke sel excel
3. Add Simulink –> math operations List of signs: +- melakukan operasi pengurangan
4. Gain Simulink –> math operations Gain: a0 melakukan operasi perkalian dengan konstanta a0
5. Gain1 idem Gain: 1/A melakukan operasi perkalian dengan konstanta 1/A
6. Integrator Simulink –> continuous   melakukan integrasi numerik
h(t)=integral(dh/dt)
7. Fcn (user defined function) Simulink –> user-defined functions Expression:
2*9.8*u(1)
menghitung ekspresi matematika: 2gh
8. Fcn1 idem Expression:
sqrt(u(1))
menghitung akar dari 2gh
9. Scope Simulink –> Sink   menampikan h (ketinggian fluida dari awal – akhir simulasi)
10. Floating scope (optional) idem signal selections—>integrator menampilkan h saat simulasi berjalan.

Dari Gb. 2, aplikasi simulink membutuhkan parameter a0 dan A yang berturut-turut adalah luas penampang output dan luas penampang tangki. Parameter tersebut ditulis di m-file terpisah dan diberi nama: startFcnTank2.m. Kurang lebih isi dari startFcnTank2.m adalah:

a0 = 0.02;
A = 0.5;

M-file ini akan dijalankan aplikasi simulink saat pertama kali dibuka. File startFcnTank2.m harus didefinisikan di File – model properties – callbacks – initFcn.

Selain m-file, file excel juga perlu dipersiapkan (lihat excel-DDE) dulu. Contoh jalannya simulasi dapat dilihat di video ini.

16 June 2016

Komunikasi Simulink dan Excel Menggunakan DDE Library

Suatu saat, saya ingin menjalankan simulasi di Simulink – MATLAB dan melihat hasilnya di Microsoft Excel. Untuk keperluan tersebut, saya menggunakan DDE Library yang telah dibuat oleh Jan Houska (2003).

DDE adalah singkatan dari Dynamics Data Exchange yang merupakan sebuah standar dalam penggunaan bersama sebuah data untuk berbagai program (http://www.abbreviations.com/term/46373).

Adapun DDE Library untuk Simulink saya unduh dari laman File Exchange di Mathworks.com (http://www.mathworks.com/matlabcentral/fileexchange/3376-dde-library-for-simulink)

Langkah Mengunduh

  1. Pada halaman “DDE Lybrari for Simulink”, carilah tombol Download Zip, kemudian tekan tombol tersebut.
  2. Bagi yang belum terdaftar di www.mathworks.com, maka perlu melakukan regristrasi terlebih dahulu sebelum dapat mengunduh.
  3. Hasil unduhan dapat disimpan di hardisk komputer, di directory apa pun. Artinya tidak harus di directory MATLAB.

Persiapan file simulink dan excel

Langkah-langkah penggunaan DDE Library di Simulink akan dijabarkan melalui sebuah contoh sederhana, yaitu penjumlahan dua bilangan dalam bentuk persamaan X+Y=Z. Dua buah file akan digunakan untuk keperluan tersebut, yaitu file jumlah.mdl dan jumlah.xlsx. Yang pertama adalah file simulink dan kedua adalah file excel.

 

image image

jumlah.mdl

jumlah.xlsx

Di file simulink terdapat dua buah komponen DDE Source, sebuah komponen DDE Sink, dan sebuah komponen operator Add. Sedangkan di file excel, akan digunakan enam buah sel yaitu A1, A2, B1, B2, C1, dan C2. Sel-sel A1, B1, dan C1 digunakan untuk menuliskan nama variabel yaitu X, Y, dan Z. Sedangkan sel-sel A2, B2, dan C2 digunakan untuk data X, Y, dan Z.

Pengaturan parameter blok simulink

Selanjutnya mengatur parameter di komponen DDE Source dan DDE Sink. Parameter pada DDE Source untuk variabel X, Y, maupun Z, tampak pada gambar berikut.

image image

DDE Source untuk X

DDE Source untuk Y

 

 

image

DDE Sink untuk Z

Untuk ketiga komponen, isilah parameter “DDE Service” dengan ‘excel’, lalu “DDE Topic” dengan ‘jumlah.xlsx’, dan “DDE Item” dengan posisi sel di file excel yang akan menjadi variabel X, Y, dan Z. Format sel yang digunakan adalah baris-kolom (row – column). Baris (row) di file excel, berawal di baris ke-0 dan semakin ke bawah semakin besar, sedangkan posisi kolom (column) semakin ke kanan semakin besar. Jadi “DDE item” untuk komponen X, Y, dan Z berturut-turut adalah r2c1, r2c2, dan r2c3. Jika semua sudah terisi, maka klik OK sehingga pada layar komputer kembali hanya ada jendela simulink dan excel.

Persiapan menjalankan simulink

Agar program simulink dapat berjalan terus-menerus, maka pada bagian “simulation step time” diisi inf seperti tampak pada gambar berikut.

 

image

“simulation step time” diisi inf

 

Menjalankan proses simulasi

Untuk menjalankan, tekanlah tombol “run” (gambar segitiga) pada file simulink. Namun file excel “jumlah.xlsx” harus dipastikan sudah dibuka.

Di file jumlah.xlsx, tepat pada sel-sel yang berada di bawah huruf X dan Y, kita dapat mengisi dengan angka sembarang, dan akan terlihat jumlahnya di bawah sel Z. Selamat mencoba.

12 March 2013

Interpolasi Linier Menggunakan Fungsi Forecast

Interpolasi adalah sebuah metode untuk mengestimasi output sebuah fungsi dari dua pasang data yang telah diketahui. Misal disediakan data temperatur dan tekanan uap dalam bentuk tabel sebagai berikut:
tabel uapLalu akan dicari berapakah tekanan absolut pada temperatur 115 F? Maka untuk memperoleh jawaban atas pertanyaan tersebut, Excel menyediakan fungsi Forecast.
Cara menggunakannya adalah sebagai berikut:
1. Ketik di worksheet Excel sebagaimana gambar berikut:
forcast1 
2. Sel B10 dan C10 dikosongkan terlebih dahulu
3. Kemudian di sel C10 diisikan perintah FORCECAST sebagai berikut:
=FORECAST(B10;OFFSET($C$3:$C$6;MATCH(B10;$B$3:$B$6;1)-1;0;2);OFFSET($B$3:$B$6;MATCH(B10;$B$3:$B$6;1)-1;0;2))
4. Lalu isikan besarnya temperatur yang kita ingin ketahui tekanan absolutnya di sel B10 (dalam contoh di atas adalah 115). Maka di sel C10 akan muncul estimasi tekanan absolut yang telah dihitung oleh fungsi FORECAST.

25 September 2012

Perkalian Matriks Dalam Excel

Mengalikan matrik di excel dapat dilakukan menggunakan fungsi "mmult". Misal akan dikalikan dua matrik CodeCogsEqn(1) dan CodeCogsEqn

Cara mengalikannya diilustrasikan dengan langkah-langkah sebagai berikut:

1. Menuliskan matrik di dalam sel-sel exel:

image

2. Pada sel A4 dituliskan rumus “=mmult(A1:B2;D1:D2)” lalu tekan enter

image

3. Menyiapkan sel tempat hasil perkalian matrik. Karena melibatkan perkalian matrik (2x2)x(2x1), maka disiapkan sel (2x1) dengan cara men-select sel A4:A5.

4. Tekan berturut-turut: F2, Ctrl+Shift+Enter, sehingga diperoleh hasil:

image