Difference between revisions of "Imam Akbar Bastary"
(→Material Tangki Penyimpanan Hidrogen) |
(→Progress Tugas Merancang Drone Kelompok 12) |
||
(35 intermediate revisions by the same user not shown) | |||
Line 10: | Line 10: | ||
Kelas : Metode Numerik 01 | Kelas : Metode Numerik 01 | ||
− | == Progress Tugas == | + | == Progress Tugas Merancang dan kelas CFD Kelompok 12 == |
+ | == Minggu Ke-1 == | ||
+ | |||
+ | Serah terima drone dari CFD Camp oleh Bu Illa kepada kelompok 12. Dilakukan juga inventarisasi serah terima lalu uji coba terbang drone bersama 2 mahasiswa angkatan 2024. Terdapat masalah pada kalibrasi receiver dengan remote sehingga drone tidak bisa terbang. | ||
+ | |||
+ | == Minggu ke -2 == | ||
+ | |||
+ | Percobaan penerbangan drone bersama Pak Angga dari pihak BRIN. Drone terjatuh dan membentur aspal sehingga satu penyangga motor mengalami patah. | ||
+ | |||
+ | == Minggu ke -3== | ||
+ | |||
+ | Pada Minggu ke 3, Pengamatan drone oleh pihak BRIN. Dugaan awal dari penyebab kegagalan pada drone adalah perhitungan CoG juga belum akurat, ESC, radio kontrol, dan accelerometer yang belum dikalibrasi. | ||
+ | |||
+ | == Minggu ke -4 == | ||
+ | |||
+ | Pada Minggu 4,kelom[ok 12 berdiskusi dengan Pak Dai mengenai arah aliran yang terjadi apabila sebuah benda bergerak ke arah tertentu. Kami juga memberikan update mengenai perkembangan drone. Drone masih ditangani oleh BRIN dan kelompok tumer sudah ada di tahap persiapan 3d print propeller yang sudah didesain sebelumnya. | ||
+ | |||
+ | == Minggu ke -5 == | ||
+ | Pada Minggu 5, kelompok 12 mempelajari sedikit mengenai karakteristik aliran berdasarkan bilangan reynolds. | ||
+ | |||
+ | == Minggu ke -6 == | ||
+ | Rangkuman Lid-driven cavity | ||
+ | https://www.canva.com/design/DAGTPgSZrv4/sKwiwp6NbZZm42BIocHKdQ/edit | ||
+ | |||
+ | == Minggu UTS == | ||
+ | Mengerjakan 10 soal pilihan gandaa yang kita minta ke chatgpt. Berikut merupakan link chatgpt https://chatgpt.com/c/671b5abf-6f04-800c-a7a0-ebf2274101c4 | ||
+ | |||
+ | == Desain dan Optimasi Penyimpanan Hidrogen Terkompresi == | ||
Pada minggu pertama ini kita mahasiswa kelas Metode Numerik-01 diberikan study case mengenai sesuatu yang harus diperhatikan dalam mendesain dan mengoptimalkan tangki hidrogen yang berkapasitas 1 liter serta mempunyai tekanan 8 bar dengan biaya produksi tidak lebih dari Rp. 500.000. berikut adalah beberapa hal yang perlu diperhatikan: | Pada minggu pertama ini kita mahasiswa kelas Metode Numerik-01 diberikan study case mengenai sesuatu yang harus diperhatikan dalam mendesain dan mengoptimalkan tangki hidrogen yang berkapasitas 1 liter serta mempunyai tekanan 8 bar dengan biaya produksi tidak lebih dari Rp. 500.000. berikut adalah beberapa hal yang perlu diperhatikan: | ||
− | '''Bahan Tangki''' | + | |
+ | ''' Bahan Tangki ''' | ||
Pilih bahan yang kuat dan tahan terhadap tekanan dan korosi yang disebabkan oleh hidrogen. Pilihan bahan yang umum digunakan termasuk serat karbon, baja tahan karat, atau aluminium. Pastikan bahan yang dipilih sesuai dengan anggaran biaya produksi. | Pilih bahan yang kuat dan tahan terhadap tekanan dan korosi yang disebabkan oleh hidrogen. Pilihan bahan yang umum digunakan termasuk serat karbon, baja tahan karat, atau aluminium. Pastikan bahan yang dipilih sesuai dengan anggaran biaya produksi. | ||
Line 77: | Line 105: | ||
Material hidrida seperti paduan magnesium hidrida atau titanium hidrida dapat digunakan dalam bentuk padatan untuk penyimpanan hidrogen. Material hidrida memiliki kemampuan untuk menyerap dan melepaskan hidrogen secara reversibel. Mereka dapat menyimpan hidrogen dengan kepadatan energi yang tinggi, tetapi membutuhkan kondisi khusus untuk pengisian dan pengosongan. | Material hidrida seperti paduan magnesium hidrida atau titanium hidrida dapat digunakan dalam bentuk padatan untuk penyimpanan hidrogen. Material hidrida memiliki kemampuan untuk menyerap dan melepaskan hidrogen secara reversibel. Mereka dapat menyimpan hidrogen dengan kepadatan energi yang tinggi, tetapi membutuhkan kondisi khusus untuk pengisian dan pengosongan. | ||
+ | |||
+ | Untuk mendesain tangki hidrogen dengan kapasitas 1 liter, tekanan maksimal 8 bar, dan biaya produksi maksimal 500.000, salah satu opsi yang dapat dipertimbangkan adalah menggunakan tangki hidrogen berbahan baja paduan. Baja paduan dapat memenuhi persyaratan kekuatan dan tekanan yang dibutuhkan, sambil tetap memiliki biaya produksi yang lebih terjangkau dibandingkan dengan material lain seperti karbon komposit. | ||
+ | |||
+ | ''' Material Tangki yang dipilih ''' | ||
+ | |||
+ | Baja paduan nikel dengan kandungan karbon rendah, seperti seri AISI 300 (misalnya, AISI 304, AISI 316), juga dapat menjadi pilihan yang baik untuk tangki hidrogen kecil. Baja paduan nikel memiliki ketahanan yang baik terhadap korosi hidrogen dan tahan terhadap retakan. Meskipun biaya baja paduan nikel mungkin sedikit lebih tinggi daripada baja paduan aluminium, namun tetap dapat dianggap sebagai opsi yang relatif terjangkau. | ||
+ | |||
+ | [[File:Aisi Grade 304.png|400x400px]] | ||
+ | |||
+ | Kekuatan luluh (yield strength) baja AISI 304 adalah sekitar 205 MPa (megapascal) atau sekitar 30,000 psi (pound per square inch). Kekuatan luluh adalah titik ketika baja mulai mengalami deformasi permanen atau perubahan bentuk yang permanen setelah diberikan beban. Kekuatan luluh ini merupakan salah satu parameter penting dalam menentukan kinerja dan kemampuan struktural dari baja 304. | ||
+ | |||
== Kode Phyton == | == Kode Phyton == | ||
+ | ''' Mencari ukuran permukaan optimal dari tangki hidrogen kapasitas 1 liter ''' | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | |||
+ | import numpy as np | ||
+ | from scipy.optimize import minimize | ||
+ | |||
+ | def objective(x): | ||
+ | # x[0] merepresentasikan jari-jari, x[1] merepresentasikan tinggi | ||
+ | radius = x[0] | ||
+ | tinggi = x[1] | ||
+ | |||
+ | # Menghitung luas permukaan struktur silinder | ||
+ | luas_permukaan = 2 * np.pi * radius * (radius + tinggi) | ||
+ | |||
+ | return luas_permukaan | ||
+ | |||
+ | def constraint(x): | ||
+ | # x[0] merepresentasikan jari-jari, x[1] merepresentasikan tinggi | ||
+ | radius = x[0] | ||
+ | tinggi = x[1] | ||
+ | |||
+ | # Menghitung volume internal struktur silinder | ||
+ | volume = np.pi * radius**2 * tinggi | ||
+ | |||
+ | # Mengembalikan selisih antara volume dan nilai yang diinginkan (1000 sentimeter kubik) | ||
+ | return volume - 1000 | ||
+ | |||
+ | # Nilai awal untuk jari-jari dan tinggi | ||
+ | x0 = [1.0, 10.0] | ||
+ | |||
+ | # Batasan variabel (jari-jari dan tinggi) | ||
+ | bounds = [(0, None), (0, None)] | ||
+ | |||
+ | # Mendefinisikan dictionary kendala | ||
+ | constraint_dict = {'type': 'eq', 'fun': constraint} | ||
+ | |||
+ | # Menggunakan fungsi minimize untuk mengoptimalkan fungsi tujuan dengan mempertahankan kendala function subject to the constraint | ||
+ | result = minimize(objective, x0, method='SLSQP', bounds=bounds, constraints=constraint_dict) | ||
+ | |||
+ | # Hasil Optimasi | ||
+ | print("Hasil Optimasi:") | ||
+ | print("Radius: {:.2f} cm".format(result.x[0])) | ||
+ | print("Tinggi: {:.2f} cm".format(result.x[1])) | ||
+ | print("Luas Permukaan: {:.2f} cm^2".format(result.fun)) | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | |||
+ | Output: | ||
+ | |||
+ | <syntaxhighlight lang="xml"> | ||
+ | |||
+ | Hasil Optimasi: | ||
+ | Radius: 5.42 cm | ||
+ | Tinggi: 10.84 cm | ||
+ | Luas Permukaan: 553.58 cm^2 | ||
+ | |||
+ | </syntaxhighlight> | ||
+ | |||
+ | ''' Mencari ketebalan tangki dengan tekanan 8 bar serta memperhatikan Mechanical Properties AISI 304 ''' | ||
+ | |||
+ | <syntaxhighlight lang="xml"> | ||
+ | |||
+ | r = 5.51e-2 # jari-jari tangki | ||
+ | p = 800000 # kendala tekanan 8 bar | ||
+ | t = 2.7e-3 # ketebalan minimum | ||
+ | |||
+ | while t < 11.05e-3: | ||
+ | hoop = (p * r) / t | ||
+ | print('Untuk ketebalan', t, 'tekanan lingkar =', hoop, "Pa") | ||
+ | t += 1e-3 | ||
+ | if hoop > 215e9: #Yield Strength of AISI 304 | ||
+ | break | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Output: | ||
+ | <syntaxhighlight lang="xml"> | ||
+ | Untuk ketebalan 0.0027 tekanan lingkar = 16325925.925925925 Pa | ||
+ | Untuk ketebalan 0.0037 tekanan lingkar = 11913513.513513513 Pa | ||
+ | Untuk ketebalan 0.0047 tekanan lingkar = 9378723.40425532 Pa | ||
+ | Untuk ketebalan 0.0057 tekanan lingkar = 7733333.333333333 Pa | ||
+ | Untuk ketebalan 0.0067 tekanan lingkar = 6579104.47761194 Pa | ||
+ | Untuk ketebalan 0.0077 tekanan lingkar = 5724675.324675324 Pa | ||
+ | Untuk ketebalan 0.0087 tekanan lingkar = 5066666.666666667 Pa | ||
+ | Untuk ketebalan 0.0097 tekanan lingkar = 4544329.896907216 Pa | ||
+ | Untuk ketebalan 0.010700000000000001 tekanan lingkar = 4119626.1682242984 Pa | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Kode di atas berfungsi untuk menentukan tegangan lingkaran dengan mengevaluasi berbagai nilai ketebalan dalam rentang 2,7 mm hingga 10 mm. Kode tersebut menggabungkan sebuah batasan yang menghentikan iterasi jika total tegangan lingkaran melebihi kekuatan luluh dari baja tahan karat Aisi 304. | ||
+ | |||
+ | |||
+ | Hasilnya semua nilai ketebalan dari 2,7 mm hingga 10 mm, dengan penambahan 1 mm, memenuhi persyaratan kekuatan luluh. Kode tersebut menghasilkan bahwa tegangan lingkaran masih aman jauh di bawah kekuatan luluh sebesar 205 MPa. | ||
− | + | ''' Mencari optimasi tangki hidrogen dengan maksimal anggaran Rp500.000: ''' | |
<syntaxhighlight lang="xml"> | <syntaxhighlight lang="xml"> | ||
Line 183: | Line 313: | ||
plt.xlabel('Anggaran') | plt.xlabel('Anggaran') | ||
plt.ylabel('Kapasitas/Biaya') | plt.ylabel('Kapasitas/Biaya') | ||
− | plt.title('Optimisasi | + | plt.title('Optimisasi Biaya Hidrogen') |
plt.legend() | plt.legend() | ||
plt.grid(True) | plt.grid(True) | ||
Line 190: | Line 320: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | Output: | |
+ | |||
[[File:grafik imam2.png|600x300px]] | [[File:grafik imam2.png|600x300px]] | ||
+ | |||
+ | ''' Analisis Biaya ''' | ||
+ | |||
+ | Untuk membuat tangki hidrogen ini diperlukan estimasi biaya pembuatan tangki dengan material Baja AISI 304. Berdasarkan referensi dari Tokopedia, ''' harga baja 30x30cm ''' [https://www.tokopedia.com/suryajaya-4/plat-stainless-steel-304-tebal-8mm-10cm-x-10cm?extParam=ivf%3Dfalse&src=topads]yang digunakan adalah sebesar Rp165.000. Estimasi biaya machining yang mencakup pengelasan,fit up,machining/taper, dan coating adalah sebesar Rp170.000. Diperlukan pemasangan katup/valve pada salah satu ujung tangki agar dapat dilakukan pengisian/pengosongan gas hidrogen dalam tangki dengan mudah. Biaya katup valve referensi dari tokopedia sebear Rp10.000. | ||
+ | |||
+ | Maka total biaya Rp165.000 + Rp170.000 + 10.000= Rp345.000 | ||
+ | |||
+ | ''' Kesimpulan ''' | ||
+ | |||
+ | Pada desain tangki hidrogen ini diperoleh ukuran geometris tangki, yaitu radius sebesar 5,42 cm, tinggi sebesar 10,84 cm, luas permukaan sebesar 553.58 cm^2 dengan tebal tangki 8mm. Tangki tersebut menggunakan material Baja AISI304 dengan estimasi biaya produksi dan bahan sekitar RP 345.000 | ||
+ | |||
+ | =My Conscious Efforts on Numerical Method Learning & Its Application in Hydrogen Storage Design Optimization= | ||
+ | |||
+ | <youtube width="200" height="100">v=pO9P5mkawcc</youtube> |
Latest revision as of 10:43, 15 November 2024
Contents
- 1 Introduction
- 2 Progress Tugas Merancang dan kelas CFD Kelompok 12
- 3 Minggu Ke-1
- 4 Minggu ke -2
- 5 Minggu ke -3
- 6 Minggu ke -4
- 7 Minggu ke -5
- 8 Minggu ke -6
- 9 Minggu UTS
- 10 Desain dan Optimasi Penyimpanan Hidrogen Terkompresi
- 11 Material Tangki Penyimpanan Hidrogen
- 12 Kode Phyton
- 13 My Conscious Efforts on Numerical Method Learning & Its Application in Hydrogen Storage Design Optimization
Introduction
Nama : Imam Akbar Bastary
NPM : 2106640695
Kelas : Metode Numerik 01
Progress Tugas Merancang dan kelas CFD Kelompok 12
Minggu Ke-1
Serah terima drone dari CFD Camp oleh Bu Illa kepada kelompok 12. Dilakukan juga inventarisasi serah terima lalu uji coba terbang drone bersama 2 mahasiswa angkatan 2024. Terdapat masalah pada kalibrasi receiver dengan remote sehingga drone tidak bisa terbang.
Minggu ke -2
Percobaan penerbangan drone bersama Pak Angga dari pihak BRIN. Drone terjatuh dan membentur aspal sehingga satu penyangga motor mengalami patah.
Minggu ke -3
Pada Minggu ke 3, Pengamatan drone oleh pihak BRIN. Dugaan awal dari penyebab kegagalan pada drone adalah perhitungan CoG juga belum akurat, ESC, radio kontrol, dan accelerometer yang belum dikalibrasi.
Minggu ke -4
Pada Minggu 4,kelom[ok 12 berdiskusi dengan Pak Dai mengenai arah aliran yang terjadi apabila sebuah benda bergerak ke arah tertentu. Kami juga memberikan update mengenai perkembangan drone. Drone masih ditangani oleh BRIN dan kelompok tumer sudah ada di tahap persiapan 3d print propeller yang sudah didesain sebelumnya.
Minggu ke -5
Pada Minggu 5, kelompok 12 mempelajari sedikit mengenai karakteristik aliran berdasarkan bilangan reynolds.
Minggu ke -6
Rangkuman Lid-driven cavity https://www.canva.com/design/DAGTPgSZrv4/sKwiwp6NbZZm42BIocHKdQ/edit
Minggu UTS
Mengerjakan 10 soal pilihan gandaa yang kita minta ke chatgpt. Berikut merupakan link chatgpt https://chatgpt.com/c/671b5abf-6f04-800c-a7a0-ebf2274101c4
Desain dan Optimasi Penyimpanan Hidrogen Terkompresi
Pada minggu pertama ini kita mahasiswa kelas Metode Numerik-01 diberikan study case mengenai sesuatu yang harus diperhatikan dalam mendesain dan mengoptimalkan tangki hidrogen yang berkapasitas 1 liter serta mempunyai tekanan 8 bar dengan biaya produksi tidak lebih dari Rp. 500.000. berikut adalah beberapa hal yang perlu diperhatikan:
Bahan Tangki
Pilih bahan yang kuat dan tahan terhadap tekanan dan korosi yang disebabkan oleh hidrogen. Pilihan bahan yang umum digunakan termasuk serat karbon, baja tahan karat, atau aluminium. Pastikan bahan yang dipilih sesuai dengan anggaran biaya produksi.
Ketahanan Terhadap Tekanan
Pastikan tangki memiliki ketahanan yang cukup terhadap tekanan 8 bar. Desain dan bahan tangki harus mampu menahan tekanan tersebut dengan aman dan tidak terjadi kebocoran.
Keamanan
Pastikan tangki memiliki sistem keamanan yang memadai, seperti katup pengaman tekanan dan relief valve. Sistem ini akan membantu mengurangi risiko kegagalan struktural dan mencegah peningkatan tekanan yang berlebihan.
Volume dan Dimensi
Sesuaikan volume tangki dengan kebutuhan Anda, yaitu 1 liter. Pertimbangkan dimensi tangki untuk memastikan tangki dapat diintegrasikan dengan perangkat lainnya dan memenuhi spesifikasi ruang yang tersedia.
Biaya Produksi
Tetapkan batasan biaya produksi maksimum sebesar Rp. 500.000 dan perhatikan biaya bahan, biaya produksi, serta biaya desain dan pengujian. Optimalkan desain dan material tangki untuk mencapai biaya produksi yang sesuai dengan anggaran.
Uji dan Sertifikasi
Pastikan tangki melalui pengujian yang sesuai dan memenuhi standar keamanan dan kualitas yang berlaku. Uji tekanan dan uji kebocoran diperlukan untuk memastikan keamanan dan performa tangki.
Efisiensi Ruang
Perhatikan efisiensi ruang dalam mendesain tangki. Desain yang kompak akan memungkinkan pemanfaatan ruang yang optimal dan memungkinkan integrasi dengan perangkat lainnya.
Penggunaan Energi
Perhatikan efisiensi energi dalam produksi dan penggunaan tangki hidrogen. Optimalkan desain untuk mengurangi konsumsi energi selama proses produksi dan penggunaan tangki.
Skala Produksi
Pertimbangkan skala produksi tangki hidrogen. Pada skala produksi yang lebih besar, biaya produksi per unit biasanya lebih rendah. Namun, pastikan untuk tetap memenuhi anggaran biaya produksi maksimum yang ditetapkan.
Regulasi dan Standar
Pastikan tangki mematuhi semua regulasi dan standar yang berlaku untuk keselamatan dan kualitas. Pastikan juga untuk memperhitungkan biaya sertifikasi jika diperlukan.
Material Tangki Penyimpanan Hidrogen
Tangki penyimpanan hidrogen menggunakan berbagai material tergantung pada aplikasi dan persyaratan spesifik. Berikut adalah beberapa material yang umum digunakan untuk tangki penyimpanan hidrogen:
Baja
Baja adalah material yang sering digunakan dalam tangki penyimpanan hidrogen bertekanan tinggi. Baja memiliki kekuatan yang baik dan mampu menahan tekanan hidrogen yang tinggi. Namun, baja rentan terhadap korosi hidrogen, sehingga perlindungan dan pelapisan tambahan diperlukan.
Aluminium
Aluminium adalah pilihan material alternatif untuk tangki penyimpanan hidrogen bertekanan tinggi. Aluminium memiliki kekuatan yang baik dan lebih ringan dari baja, sehingga dapat mengurangi berat tangki. Namun, aluminium juga rentan terhadap korosi hidrogen dan membutuhkan perlindungan tambahan.
Komposit Serat Karbon
Tangki penyimpanan hidrogen bertekanan tinggi sering menggunakan material komposit serat karbon. Komposit serat karbon terdiri dari serat karbon yang diperkuat dengan matriks resin. Mereka memiliki kekuatan yang tinggi dan ringan, serta tahan terhadap korosi hidrogen. Tangki serat karbon sering digunakan dalam aplikasi transportasi seperti mobil hidrogen.
Komposit Serat Polimer
Komposit serat polimer merupakan alternatif lain dalam tangki penyimpanan hidrogen. Mereka terbuat dari serat polimer yang diperkuat dengan serat karbon atau serat kaca. Komposit serat polimer memiliki kekuatan yang baik, ringan, dan tahan terhadap korosi hidrogen. Mereka sering digunakan dalam aplikasi kendaraan hidrogen.
Material Hidrida
Material hidrida seperti paduan magnesium hidrida atau titanium hidrida dapat digunakan dalam bentuk padatan untuk penyimpanan hidrogen. Material hidrida memiliki kemampuan untuk menyerap dan melepaskan hidrogen secara reversibel. Mereka dapat menyimpan hidrogen dengan kepadatan energi yang tinggi, tetapi membutuhkan kondisi khusus untuk pengisian dan pengosongan.
Untuk mendesain tangki hidrogen dengan kapasitas 1 liter, tekanan maksimal 8 bar, dan biaya produksi maksimal 500.000, salah satu opsi yang dapat dipertimbangkan adalah menggunakan tangki hidrogen berbahan baja paduan. Baja paduan dapat memenuhi persyaratan kekuatan dan tekanan yang dibutuhkan, sambil tetap memiliki biaya produksi yang lebih terjangkau dibandingkan dengan material lain seperti karbon komposit.
Material Tangki yang dipilih
Baja paduan nikel dengan kandungan karbon rendah, seperti seri AISI 300 (misalnya, AISI 304, AISI 316), juga dapat menjadi pilihan yang baik untuk tangki hidrogen kecil. Baja paduan nikel memiliki ketahanan yang baik terhadap korosi hidrogen dan tahan terhadap retakan. Meskipun biaya baja paduan nikel mungkin sedikit lebih tinggi daripada baja paduan aluminium, namun tetap dapat dianggap sebagai opsi yang relatif terjangkau.
Kekuatan luluh (yield strength) baja AISI 304 adalah sekitar 205 MPa (megapascal) atau sekitar 30,000 psi (pound per square inch). Kekuatan luluh adalah titik ketika baja mulai mengalami deformasi permanen atau perubahan bentuk yang permanen setelah diberikan beban. Kekuatan luluh ini merupakan salah satu parameter penting dalam menentukan kinerja dan kemampuan struktural dari baja 304.
Kode Phyton
Mencari ukuran permukaan optimal dari tangki hidrogen kapasitas 1 liter
import numpy as np
from scipy.optimize import minimize
def objective(x):
# x[0] merepresentasikan jari-jari, x[1] merepresentasikan tinggi
radius = x[0]
tinggi = x[1]
# Menghitung luas permukaan struktur silinder
luas_permukaan = 2 * np.pi * radius * (radius + tinggi)
return luas_permukaan
def constraint(x):
# x[0] merepresentasikan jari-jari, x[1] merepresentasikan tinggi
radius = x[0]
tinggi = x[1]
# Menghitung volume internal struktur silinder
volume = np.pi * radius**2 * tinggi
# Mengembalikan selisih antara volume dan nilai yang diinginkan (1000 sentimeter kubik)
return volume - 1000
# Nilai awal untuk jari-jari dan tinggi
x0 = [1.0, 10.0]
# Batasan variabel (jari-jari dan tinggi)
bounds = [(0, None), (0, None)]
# Mendefinisikan dictionary kendala
constraint_dict = {'type': 'eq', 'fun': constraint}
# Menggunakan fungsi minimize untuk mengoptimalkan fungsi tujuan dengan mempertahankan kendala function subject to the constraint
result = minimize(objective, x0, method='SLSQP', bounds=bounds, constraints=constraint_dict)
# Hasil Optimasi
print("Hasil Optimasi:")
print("Radius: {:.2f} cm".format(result.x[0]))
print("Tinggi: {:.2f} cm".format(result.x[1]))
print("Luas Permukaan: {:.2f} cm^2".format(result.fun))
Output:
Hasil Optimasi:
Radius: 5.42 cm
Tinggi: 10.84 cm
Luas Permukaan: 553.58 cm^2
Mencari ketebalan tangki dengan tekanan 8 bar serta memperhatikan Mechanical Properties AISI 304
r = 5.51e-2 # jari-jari tangki
p = 800000 # kendala tekanan 8 bar
t = 2.7e-3 # ketebalan minimum
while t < 11.05e-3:
hoop = (p * r) / t
print('Untuk ketebalan', t, 'tekanan lingkar =', hoop, "Pa")
t += 1e-3
if hoop > 215e9: #Yield Strength of AISI 304
break
Output:
Untuk ketebalan 0.0027 tekanan lingkar = 16325925.925925925 Pa
Untuk ketebalan 0.0037 tekanan lingkar = 11913513.513513513 Pa
Untuk ketebalan 0.0047 tekanan lingkar = 9378723.40425532 Pa
Untuk ketebalan 0.0057 tekanan lingkar = 7733333.333333333 Pa
Untuk ketebalan 0.0067 tekanan lingkar = 6579104.47761194 Pa
Untuk ketebalan 0.0077 tekanan lingkar = 5724675.324675324 Pa
Untuk ketebalan 0.0087 tekanan lingkar = 5066666.666666667 Pa
Untuk ketebalan 0.0097 tekanan lingkar = 4544329.896907216 Pa
Untuk ketebalan 0.010700000000000001 tekanan lingkar = 4119626.1682242984 Pa
Kode di atas berfungsi untuk menentukan tegangan lingkaran dengan mengevaluasi berbagai nilai ketebalan dalam rentang 2,7 mm hingga 10 mm. Kode tersebut menggabungkan sebuah batasan yang menghentikan iterasi jika total tegangan lingkaran melebihi kekuatan luluh dari baja tahan karat Aisi 304.
Hasilnya semua nilai ketebalan dari 2,7 mm hingga 10 mm, dengan penambahan 1 mm, memenuhi persyaratan kekuatan luluh. Kode tersebut menghasilkan bahwa tegangan lingkaran masih aman jauh di bawah kekuatan luluh sebesar 205 MPa.
Mencari optimasi tangki hidrogen dengan maksimal anggaran Rp500.000:
from scipy.optimize import minimize
# Harga dan kapasitas yang dibutuhkan
harga_per_unit = 500000 # Rupiah
kapasitas_per_unit = 1 # Liter
# Anggaran maksimal
anggaran_maksimal = 500000
# Fungsi Akhir
def fungsi_akhir(x):
return -x * kapasitas_per_unit
# Kendala yang terjadi
def kendala(anggaran):
return anggaran_maksimal - (harga_per_unit * anggaran)
kendala_anggaran = {'type': 'ineq', 'fun': kendala}
# Nilai awal
x0 = 0
# Batasan
batas = [(0, None)]
# Menyelesaikan masalah optimisasi
solusi = minimize(fungsi_akhir, x0, method='SLSQP', bounds=batas, constraints=[kendala_anggaran])
# Menampilkan hasil
print("Status:", solusi.success and "Biaya Optimal" or "Tidak ditemukan solusi")
print("Jumlah unit yang bisa dibeli:", solusi.x[0])
print("Total kapasitas penyimpanan yang didapat:", solusi.x[0] * kapasitas_per_unit, "liter")
print("Total anggaran:", solusi.x[0] * harga_per_unit, "Rupiah")
Output:
Status: Biaya Optimal
Jumlah unit yang bisa dibeli: 1
Total kapasitas penyimpanan yang didapat: 1.0 liter
Total anggaran: 500000.0 Rupiah
Dalam kode di atas, tujuan utama adalah memaksimalkan jumlah unit penyimpanan hidrogen yang akan dibeli. Batasan anggaran diimplementasikan menggunakan fungsi kendala untuk memastikan bahwa total biaya tidak melebihi anggaran maksimal yang telah ditentukan. Output dari kode ini akan menampilkan jumlah unit yang perlu dibeli, total kapasitas penyimpanan, dan total biaya yang diperlukan.
import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import minimize
# Harga dan kapasitas
harga_per_unit = 500000 # Harga per unit penyimpanan hidrogen
kapasitas_per_unit = 1 # Kapasitas penyimpanan hidrogen per unit
# Anggaran maksimal
budget_maksimal = 500000
# Fungsi tujuan
def fungsi_tujuan(x):
return -x
# Kendala
def kendala(x):
return budget_maksimal - (harga_per_unit * x[0])
kendala_anggaran = [{'type': 'ineq', 'fun': kendala}]
# Nilai awal
x0 = [0]
# Batasan
batas = [(0, None)]
# Membuat fungsi untuk menampilkan hasil
def tampilkan_hasil(solusi):
print("Status:", "Optimal" if solusi.success else "Tidak ditemukan solusi")
print("Jumlah unit penyimpanan hidrogen yang akan dibeli:", solusi.x[0])
print("Total kapasitas penyimpanan:", solusi.x[0] * kapasitas_per_unit, "liter")
print("Total biaya:", solusi.x[0] * harga_per_unit, "Rupiah")
# Menyelesaikan masalah optimisasi
solusi = minimize(fungsi_tujuan, x0, method='SLSQP', bounds=batas, constraints=kendala_anggaran)
# Menampilkan hasil
tampilkan_hasil(solusi)
# Menghasilkan grafik
anggaran = np.linspace(0, 10, 100) # Range anggaran
kapasitas = anggaran * kapasitas_per_unit # Total kapasitas penyimpanan untuk setiap anggaran
biaya = anggaran * harga_per_unit # Total biaya untuk setiap anggaran
plt.figure()
plt.plot(anggaran, kapasitas, label='Kapasitas Penyimpanan')
plt.plot(anggaran, biaya, label='Total Biaya')
plt.axhline(solusi.x[0] * kapasitas_per_unit, color='b', linestyle='--', label='Jumlah Unit Optimal')
plt.axvline(solusi.x[0], color='y', linestyle='--', label='Anggaran Optimal')
plt.xlabel('Anggaran')
plt.ylabel('Kapasitas/Biaya')
plt.title('Optimisasi Biaya Hidrogen')
plt.legend()
plt.grid(True)
plt.show()
Output:
Analisis Biaya
Untuk membuat tangki hidrogen ini diperlukan estimasi biaya pembuatan tangki dengan material Baja AISI 304. Berdasarkan referensi dari Tokopedia, harga baja 30x30cm [1]yang digunakan adalah sebesar Rp165.000. Estimasi biaya machining yang mencakup pengelasan,fit up,machining/taper, dan coating adalah sebesar Rp170.000. Diperlukan pemasangan katup/valve pada salah satu ujung tangki agar dapat dilakukan pengisian/pengosongan gas hidrogen dalam tangki dengan mudah. Biaya katup valve referensi dari tokopedia sebear Rp10.000.
Maka total biaya Rp165.000 + Rp170.000 + 10.000= Rp345.000
Kesimpulan
Pada desain tangki hidrogen ini diperoleh ukuran geometris tangki, yaitu radius sebesar 5,42 cm, tinggi sebesar 10,84 cm, luas permukaan sebesar 553.58 cm^2 dengan tebal tangki 8mm. Tangki tersebut menggunakan material Baja AISI304 dengan estimasi biaya produksi dan bahan sekitar RP 345.000