Difference between revisions of "Nazwa Atirah"

From ccitonlinewiki
Jump to: navigation, search
(Design & Optimization of Compressed Hydrogen Storage (Pekan 2))
(Video Link for Presentation Video)
 
(4 intermediate revisions by the same user not shown)
Line 104: Line 104:
  
 
Jadi, ketebalan maksimalnya adalah 2.1 mm
 
Jadi, ketebalan maksimalnya adalah 2.1 mm
 +
 +
 +
'''OPTIMASI HYDROGEN STORAGE'''
 +
 +
Berikut merupakan code untuk perhitungan biaya Hydrogen Storage menggunakan software Python.
 +
 +
    # Spesifikasi sistem penyimpanan hidrogen
 +
    tank_volume = 1  # Volume tangki penyimpanan (liter)
 +
    target_pressure = 8  # Tekanan hidrogen yang diinginkan (bar)
 +
    material_cost_per_kg = 20000  # Harga material per kilogram (Rupiah/kg)
 +
    max_budget = 500000  # Anggaran maksimum (Rupiah)
 +
 +
    # Harga tangki per kilogram (Rupiah/kg)
 +
    tank_cost_per_kg = 100000
 +
 +
    # Harga regulator tekanan per kilogram (Rupiah/kg)
 +
    regulator_cost_per_kg = 50000
 +
 +
    # Menghitung massa tangki
 +
    def calculate_tank_mass(volume):
 +
        # Menggunakan asumsi massa jenis tangki berdasarkan material
 +
        if material == "HSLA ASTM A1011":
 +
            density = 7.85  # Massa jenis HSLA ASTM A1011 (g/cm^3)
 +
        else:
 +
            # Jika material tidak dikenali, anggap massa jenis 7.85 g/cm^3
 +
            density = 7.85
 +
 +
        # Menghitung massa tangki (kg)
 +
        tank_mass = volume * 1000 * density
 +
 +
        return tank_mass
 +
 +
    # Menghitung tekanan hidrogen
 +
    def calculate_hydrogen_pressure(volume, mass):
 +
        # Menggunakan asumsi gas hidrogen ideal
 +
        R = 8.314  # Konstanta gas ideal (J/(mol·K))
 +
        M = 2.016  # Massa molar hidrogen (g/mol)
 +
        V = volume * 1000  # Konversi volume dari liter ke mililiter
 +
        return (mass / M) * (R * 1000) / V
 +
 +
    # Menghitung biaya tangki penyimpanan hidrogen
 +
    def calculate_hydrogen_storage_cost():
 +
        # Menghitung massa tangki
 +
        tank_mass = calculate_tank_mass(tank_volume)
 +
 +
        # Menghitung tekanan hidrogen
 +
        hydrogen_pressure = calculate_hydrogen_pressure(tank_volume, tank_mass)
 +
 +
        # Menghitung biaya tangki
 +
        tank_cost = tank_mass * tank_cost_per_kg
 +
 +
        # Menghitung biaya regulator tekanan
 +
        regulator_mass = 0.1  # Anggap massa regulator tekanan 0.1 kg (contoh)
 +
        regulator_cost = regulator_mass * regulator_cost_per_kg
 +
 +
        # Menghitung biaya material
 +
        material_mass = tank_mass + regulator_mass
 +
        material_cost = material_mass * material_cost_per_kg
 +
 +
        # Menghitung total biaya
 +
        total_cost = tank_cost + regulator_cost + material_cost
 +
 +
        # Memeriksa apakah biaya melebihi anggaran maksimum
 +
        if total_cost > max_budget:
 +
            return "Biaya melebihi anggaran maksimum"
 +
 +
        return total_cost
 +
 +
    # Menentukan material tangki
 +
    material = "HSLA ASTM A1011"
 +
 +
    # Menghitung biaya penyimpanan hidrogen
 +
    cost = calculate_hydrogen_storage_cost()
 +
 +
    # Menampilkan biaya penyimpanan hidrogen
 +
    print("Biaya Penyimpanan Hidrogen: Rp.", cost)
 +
 +
Selanjutnya, merupakan code Python untuk optimasi dari Hydrogen Storage dengan spesifikasi yang diinginkan.
 +
 +
    import random
 +
    import numpy as np
 +
    from deap import algorithms, base, creator, tools
 +
 +
    # Spesifikasi sistem penyimpanan hidrogen
 +
    tank_volume = 1  # Volume tangki penyimpanan (liter)
 +
    target_pressure = 8  # Tekanan hidrogen yang diinginkan (bar)
 +
    material_cost_per_kg = 20000  # Harga material per kilogram (Rupiah/kg)
 +
    max_budget = 500000  # Anggaran maksimum (Rupiah)
 +
 +
    # Batasan-batasan
 +
    max_tank_mass = 5  # Batas massa tangki maksimum (kg)
 +
    max_regulator_mass = 0.5  # Batas massa regulator tekanan maksimum (kg)
 +
 +
    # Fungsi evaluasi
 +
    def evaluate(individual):
 +
        tank_mass = individual[0]
 +
        regulator_mass = individual[1]
 +
 +
        # Hitung perbedaan antara tekanan yang dihasilkan dengan target tekanan
 +
        pressure_difference = abs(calculate_hydrogen_pressure(tank_volume, tank_mass) - target_pressure)
 +
 +
        # Hitung biaya total
 +
        material_mass = tank_mass + regulator_mass
 +
        material_cost = material_mass * material_cost_per_kg
 +
        total_cost = material_cost
 +
 +
        # Jika biaya melebihi anggaran maksimal, berikan penalty
 +
        if total_cost > max_budget:
 +
            total_cost += max_budget * 10  # Penalty
 +
 +
        # Hitung fitness
 +
        fitness = 1.0 / (total_cost + pressure_difference)
 +
 +
        return fitness,  # Nilai fitness harus berupa tuple
 +
 +
    # Fungsi pembangkit populasi awal
 +
    def generate_individual():
 +
        tank_mass = random.uniform(0, max_tank_mass)
 +
        regulator_mass = random.uniform(0, max_regulator_mass)
 +
        return tank_mass, regulator_mass
 +
 +
    # Fungsi crossover
 +
    def crossover(parent1, parent2):
 +
        child1 = parent1[:]
 +
        child2 = parent2[:]
 +
        index = random.randint(0, len(parent1) - 1)
 +
        child1[index:] = parent2[index:]
 +
        child2[index:] = parent1[index:]
 +
        return child1, child2
 +
 +
    # Fungsi mutasi
 +
    def mutate(individual):
 +
        index = random.randint(0, len(individual) - 1)
 +
        mutation_range = max_tank_mass if index == 0 else max_regulator_mass
 +
        individual[index] = random.uniform(0, mutation_range)
 +
        return individual,
 +
 +
    # Menghitung tekanan hidrogen
 +
    def calculate_hydrogen_pressure(volume, mass):
 +
        # Menggunakan asumsi gas hidrogen ideal
 +
        R = 8.314  # Konstanta gas ideal (J/(mol·K))
 +
        M = 2.016  # Massa molar hidrogen (g/mol)
 +
        V = volume * 1000  # Konversi volume dari liter ke mililiter
 +
        return (mass / M) * (R * 1000) / V
 +
 +
    # Inisialisasi algoritma genetika
 +
    creator.create("FitnessMax", base.Fitness, weights=(1.0,))
 +
    creator.create("Individual", list, fitness=creator.FitnessMax)
 +
    toolbox = base.Toolbox()
 +
    toolbox.register("individual", tools.initIterate, creator.Individual, generate_individual)
 +
    toolbox.register("population", tools.initRepeat, list, toolbox.individual)
 +
    toolbox.register("evaluate", evaluate)
 +
    toolbox.register("mate", crossover)
 +
    toolbox.register("mutate", mutate)
 +
    toolbox.register("select", tools.selTournament, tournsize=3)
 +
 +
    def optimize_hydrogen_storage():
 +
        # Inisialisasi populasi awal
 +
        population_size = 50
 +
        population = toolbox.population(n=population_size)
 +
 +
        # Inisialisasi statistik
 +
        stats = tools.Statistics(lambda ind: ind.fitness.values)
 +
        stats.register("min", np.min)
 +
        stats.register("avg", np.mean)
 +
 +
        # Menjalankan algoritma genetika
 +
        generations = 10
 +
        population, logbook = algorithms.eaSimple(population, toolbox, cxpb=0.5, mutpb=0.2, ngen=generations, stats=stats, verbose=False)
 +
 +
        # Mendapatkan individu terbaik
 +
        best_individual = tools.selBest(population, k=1)[0]
 +
 +
        return best_individual
 +
 +
    # Menjalankan optimasi penyimpanan hidrogen
 +
    best_individual = optimize_hydrogen_storage()
 +
 +
    # Menampilkan hasil optimasi
 +
    best_tank_mass = best_individual[0]
 +
    best_regulator_mass = best_individual[1]
 +
    best_hydrogen_pressure = calculate_hydrogen_pressure(tank_volume, best_tank_mass)
 +
 +
    print("Optimasi Hydrogen Storage:")
 +
    print("Massa Tangki Terbaik:", best_tank_mass, "kg")
 +
    print("Massa Regulator Terbaik:", best_regulator_mass, "kg")
 +
    print("Tekanan Hidrogen Terbaik:", best_hydrogen_pressure, "bar")
  
  
Line 109: Line 296:
  
 
[[File:Final Design Nazwa.png|500x500px]]
 
[[File:Final Design Nazwa.png|500x500px]]
 +
 +
 +
== Video Link for Presentation Video ==
 +
 +
Here's the video link:
 +
 +
https://www.youtube.com/channel/UCWxgC9IdD5gzAzA9-QLg4aw
 +
 +
https://drive.google.com/file/d/1YRiv4C6YrcUV7Ws1XhExvBuCkAAmH3N8/view?usp=sharing

Latest revision as of 22:44, 11 June 2023

Introduction

Nazwa Atirah.jpg

Hi everyone! My name is Nazwa Atirah (NPM: 2106652505). I am currently pursuing my bachelor's degree in Mechanical Engineering at the Faculty of Engineering, Universitas Indonesia. I have a keen interest in enhancing my personal development skills and participating in volunteer activities. My desire is to consistently make positive contributions to my environment, continue learning and growing, and embrace new challenges.

Design & Optimization of Compressed Hydrogen Storage (Pekan 1)

LATAR BELAKANG

Pemilihan hidrogen sebagai bahan bakar ramah lingkungan didasarkan pada kebutuhan untuk mengurangi emisi gas rumah kaca dan mencari alternatif energi yang bersih dan berkelanjutan. Hidrogen dianggap sebagai salah satu solusi potensial untuk menggantikan bahan bakar fosil karena menghasilkan energi dengan hanya menghasilkan air sebagai produk sampingan.


Berikut merupakan latar belakang utama pembuatan compressed hydrogen storage adalah sebagai berikut:

1. Reduksi Emisi: Penggunaan hydrogen sebagai bahan bakar memiliki potensi untuk mengurangi emisi gas rumah kaca dan polutan udara. Saat digunakan dalam kendaraan bertenaga hidrogen, tidak ada emisi langsung dari knalpot, hanya air yang dihasilkan sebagai hasil pembakaran. Ini berkontribusi pada upaya global dalam mengurangi dampak negatif transportasi terhadap lingkungan.

2. Energi Alternatif: Dalam menghadapi keterbatasan bahan bakar fosil dan perubahan iklim, hidrogen dapat dihasilkan dari sumber energi terbarukan seperti energi surya atau energi angin. Dengan menggunakan compressed hydrogen tank, energi yang dihasilkan dari sumber-sumber ini dapat disimpan dan diangkut dengan efisien untuk digunakan di berbagai aplikasi, termasuk kendaraan bertenaga hidrogen dan sistem penyimpanan energi.

3. Efisiensi Penyimpanan: Compressed hydrogen tank memungkinkan penyimpanan hydrogen dalam volume yang relatif kecil dengan kepadatan energi yang tinggi. Ini memungkinkan pengangkutan yang efisien dan penggunaan hidrogen sebagai bahan bakar portabel atau untuk aplikasi di mana ruang terbatas.

4. Penelitian dan Pengembangan: Industri hydrogen terus melakukan penelitian dan pengembangan untuk meningkatkan teknologi tangki hydrogen terkompresi, termasuk penggunaan material yang lebih ringan dan kuat serta pengembangan metode pengisian dan pengosongan yang lebih cepat dan aman.

Dalam rangka mengurangi ketergantungan pada bahan bakar fosil dan mengurangi dampak negatif terhadap lingkungan, pembuatan compressed hydrogen tank sebagai bahan bakar ramah lingkungan merupakan langkah penting menuju keberlanjutan energi dan melindungi lingkungan alam kita.


KEUNTUNGAN PENGGUNAAN HIDROGEN SEBAGAI BAHAN BAKAR

Keuntungan menggunakan hidrogen sebagai bahan bakar kendaraan meliputi:

1. Zero Emissions: Sebagai bahan bakar kendaraan, hidrogen hanya menghasilkan air murni sebagai produk sampingan pembakaran. Hidrogen tidak menghasilkan emisi gas buang berbahaya seperti karbon dioksida (CO2) atau polutan udara lainnya. Hal ini membantu mengurangi polusi udara dan dampak gas rumah kaca dan berkontribusi pada upaya mengatasi perubahan iklim.

2. High Energy Density: Hidrogen memiliki kepadatan energi yang tinggi, artinya dalam jumlah yang relatif kecil, hidrogen dapat menyimpan energi yang signifikan. Hal ini membuatnya cocok untuk kendaraan yang membutuhkan jangkauan yang lebih panjang dan waktu pengisian yang cepat.

3. Fast Refueling: Pengisian hidrogen pada kendaraan membutuhkan waktu yang relatif singkat, serupa dengan pengisian bahan bakar konvensional seperti bensin atau diesel. Dalam beberapa menit, kendaraan dapat diisi ulang dengan hidrogen dan siap untuk melanjutkan perjalanan, tidak memerlukan waktu pengisian yang lama seperti kendaraan listrik dengan baterai.

4. Versatility: Hidrogen dapat digunakan dalam berbagai jenis kendaraan, termasuk mobil penumpang, truk, bus, dan bahkan kendaraan berat seperti kereta api dan kapal. Ini memungkinkan diversifikasi dan penggunaan hidrogen sebagai bahan bakar dalam berbagai sektor transportasi.

5. Renewable Energy Integration: Hidrogen dihasilkan dari sumber energi terbarukan seperti energi surya, angin, dan hidroelektrik. Dengan memanfaatkan hidrogen sebagai bahan bakar kendaraan, kita dapat mengintegrasikan produksi hidrogen dengan sumber energi terbarukan, membantu mempercepat transisi menuju sistem energi yang berkelanjutan.


SPESIFIKASI

Berikut adalah ringkasan spesifikasi sistem penyimpanan hydrogen terkompresi sesuai dengan kebutuhan pelanggan:

- Volume Tangki Penyimpanan: Sekitar 1 lt.

- Tekanan Hidrogen: Dikompresi hingga tekanan manometer 8 bar.

- Kondisi Operasional Normal: Dirancang untuk suhu dan kelembaban ruangan.

- Port Input dan Output: Memiliki port terpisah untuk pengisian dan pengeluaran hidrogen.

- Regulator Tekanan: Dilengkapi dengan regulator tekanan pada port output untuk mengatur tekanan sesuai kebutuhan.

- Anggaran Maksimum: Anggaran maksimal sebesar Rp.500.000.


ILUSTRASI DAN KOMPONEN

Hydrogen Tank.png

Tangki hidrogen memiliki berbagai bentuk dan jenis. Bentuk bulat seperti bola digunakan untuk beberapa tangki hidrogen cair dan bentuk apa pun dapat digunakan ketika menyimpan hidrogen pada tekanan mendekati tekanan atmosfer. Namun, bentuk yang paling umum dari tangki hydrogen adalah silinder. Berikut merupakan komponen yang umumnya terdapat pada sebuah tangki hidrogen:

Liner atau lapisan dalam pada tangki berfungsi untuk menahan hidrogen di dalam ruang penyimpanan tangki. Lapisan tersebut mungkin dikelilingi oleh lapisan luar atau Outer Wrapping yang berfungsi untuk menstabilkan Liner terhadap tekanan fisik yang diberikan saat hidrogen disimpan pada tekanan tinggi dan menciptakan lapisan insulasi termal tambahan (tangki hidrogen tekanan tinggi). Neck atau leher tangki adalah tempat hidrogen dimasukkan dan dikeluarkan dari tangki, dan terhubung ke valve (katup) atau selang tangki hidrogen yang memungkinkan masukan dan keluaran hydrogen yang terkendali. Biasanya, terdapat juga katup keselamatan dan mungkin juga sensor atau konstruksi katup tangki hydrogen yang lebih kompleks yang memungkinkan pengaturan tekanan tambahan. End plug atau tutup akhir opsional adalah pembukaan sekunder pada tangki.


PEMILIHAN MATERIAL

Umumnya hydrogen storage terbuat dari bahan Carbon Fiber Composite, Baja, Aluminium, atau Material Polymer-Based. Di antara bahan yang umum digunakan untuk Compressed Hydrogen Storage, baja umumnya dianggap sebagai pilihan yang paling hemat biaya. Tangki baja banyak digunakan karena keawetannya, ketersediaannya, dan biaya yang relatif lebih rendah dibandingkan dengan bahan lain seperti Carbon Fiber Composite atau paduan aluminium. Tangki baja sering dilapisi dengan bahan penghalang untuk mencegah hydrogen embrittlement. Baja adalah bahan yang sudah teruji dengan sejarah penggunaan yang panjang di berbagai industri, termasuk otomotif dan aplikasi industri. Ketersediaan yang luas dan proses manufaktur menjadikan baja kompetitif secara biaya. Tangki baja dapat diproduksi dalam jumlah besar, sehingga dapat menurunkan biaya produksi.

Jenis baja yang akan digunakan adalah HSLA ASTM A1011. ASTM A1011 umumnya dianggap sebagai pilihan yang lebih terjangkau. Baja ini menawarkan kombinasi kekuatan tinggi, keformabilitasan yang baik, dan kemampuan las yang sangat baik. Baja ini dapat memberikan integritas struktural yang diperlukan dan memenuhi persyaratan keamanan untuk penyimpanan hidrogen bertekanan tinggi. ASTM A1011 adalah spesifikasi untuk lembaran dan strip baja karbon yang dihasilkan dengan metode hot-rolled, biasa digunakan dalam aplikasi di mana keformabilitasan dan integritas struktural diperlukan.

Design & Optimization of Compressed Hydrogen Storage (Pekan 2)

PERHITUNGAN UKURAN WADAH

Volume Hidrogen yang dibutuhkan adalah 1 lt = 1000 cm^3

Maka,

Perhitungan tinggi naz.png

Jadi, untuk menampung 1 lt Hidrogen dengan diameter wadah 10 cm, tinggi dari wadah tersebut adalah 13 cm.


PEMILIHAN MATERIAL

Material yang akan saya gunakan adalah HSLA ASTM A1011 yang menawarkan kombinasi kekuatan tinggi, keformabilitasan yang baik, dan kemampuan las yang sangat baik. HSLA ASTM A1011 memiliki Yield Strength sebesar 70 Ksi, sehingga allowable strengthnya adalah 2/3 dari yield strength yaitu 47 Ksi.

Untuk ketebalan dari tabung bisa dihitung dengan rumus, sebagai berikut:

Rumus wawa.png

E = 0.6

P = 8 bar = 116 psi

R = 50 mm = 1,9685 inch

S = 47000 Psi

Corrosion allowance = 1 mm = 0.039 inch

Perhitungan wawa.png

Jadi, ketebalan maksimalnya adalah 2.1 mm


OPTIMASI HYDROGEN STORAGE

Berikut merupakan code untuk perhitungan biaya Hydrogen Storage menggunakan software Python.

   # Spesifikasi sistem penyimpanan hidrogen
   tank_volume = 1  # Volume tangki penyimpanan (liter)
   target_pressure = 8  # Tekanan hidrogen yang diinginkan (bar)
   material_cost_per_kg = 20000  # Harga material per kilogram (Rupiah/kg)
   max_budget = 500000  # Anggaran maksimum (Rupiah)
   # Harga tangki per kilogram (Rupiah/kg)
   tank_cost_per_kg = 100000
   # Harga regulator tekanan per kilogram (Rupiah/kg)
   regulator_cost_per_kg = 50000
   # Menghitung massa tangki
   def calculate_tank_mass(volume):
       # Menggunakan asumsi massa jenis tangki berdasarkan material
       if material == "HSLA ASTM A1011":
           density = 7.85  # Massa jenis HSLA ASTM A1011 (g/cm^3)
       else:
           # Jika material tidak dikenali, anggap massa jenis 7.85 g/cm^3
           density = 7.85
       # Menghitung massa tangki (kg)
       tank_mass = volume * 1000 * density
       return tank_mass
   # Menghitung tekanan hidrogen
   def calculate_hydrogen_pressure(volume, mass):
       # Menggunakan asumsi gas hidrogen ideal
       R = 8.314  # Konstanta gas ideal (J/(mol·K))
       M = 2.016  # Massa molar hidrogen (g/mol)
       V = volume * 1000  # Konversi volume dari liter ke mililiter
       return (mass / M) * (R * 1000) / V
   # Menghitung biaya tangki penyimpanan hidrogen
   def calculate_hydrogen_storage_cost():
       # Menghitung massa tangki
       tank_mass = calculate_tank_mass(tank_volume)
       # Menghitung tekanan hidrogen
       hydrogen_pressure = calculate_hydrogen_pressure(tank_volume, tank_mass)
       # Menghitung biaya tangki
       tank_cost = tank_mass * tank_cost_per_kg
       # Menghitung biaya regulator tekanan
       regulator_mass = 0.1  # Anggap massa regulator tekanan 0.1 kg (contoh)
       regulator_cost = regulator_mass * regulator_cost_per_kg
       # Menghitung biaya material
       material_mass = tank_mass + regulator_mass
       material_cost = material_mass * material_cost_per_kg
       # Menghitung total biaya
       total_cost = tank_cost + regulator_cost + material_cost
       # Memeriksa apakah biaya melebihi anggaran maksimum
       if total_cost > max_budget:
           return "Biaya melebihi anggaran maksimum"
       return total_cost
   # Menentukan material tangki
   material = "HSLA ASTM A1011"
   # Menghitung biaya penyimpanan hidrogen
   cost = calculate_hydrogen_storage_cost()
   # Menampilkan biaya penyimpanan hidrogen
   print("Biaya Penyimpanan Hidrogen: Rp.", cost)

Selanjutnya, merupakan code Python untuk optimasi dari Hydrogen Storage dengan spesifikasi yang diinginkan.

   import random
   import numpy as np
   from deap import algorithms, base, creator, tools
   # Spesifikasi sistem penyimpanan hidrogen
   tank_volume = 1  # Volume tangki penyimpanan (liter)
   target_pressure = 8  # Tekanan hidrogen yang diinginkan (bar)
   material_cost_per_kg = 20000  # Harga material per kilogram (Rupiah/kg)
   max_budget = 500000  # Anggaran maksimum (Rupiah)
   # Batasan-batasan
   max_tank_mass = 5  # Batas massa tangki maksimum (kg)
   max_regulator_mass = 0.5  # Batas massa regulator tekanan maksimum (kg)
   # Fungsi evaluasi
   def evaluate(individual):
       tank_mass = individual[0]
       regulator_mass = individual[1]
       # Hitung perbedaan antara tekanan yang dihasilkan dengan target tekanan
       pressure_difference = abs(calculate_hydrogen_pressure(tank_volume, tank_mass) - target_pressure)
       # Hitung biaya total
       material_mass = tank_mass + regulator_mass
       material_cost = material_mass * material_cost_per_kg
       total_cost = material_cost
       # Jika biaya melebihi anggaran maksimal, berikan penalty
       if total_cost > max_budget:
           total_cost += max_budget * 10  # Penalty
       # Hitung fitness
       fitness = 1.0 / (total_cost + pressure_difference)
       return fitness,  # Nilai fitness harus berupa tuple
   # Fungsi pembangkit populasi awal
   def generate_individual():
       tank_mass = random.uniform(0, max_tank_mass)
       regulator_mass = random.uniform(0, max_regulator_mass)
       return tank_mass, regulator_mass
   # Fungsi crossover
   def crossover(parent1, parent2):
       child1 = parent1[:]
       child2 = parent2[:]
       index = random.randint(0, len(parent1) - 1)
       child1[index:] = parent2[index:]
       child2[index:] = parent1[index:]
       return child1, child2
   # Fungsi mutasi
   def mutate(individual):
       index = random.randint(0, len(individual) - 1)
       mutation_range = max_tank_mass if index == 0 else max_regulator_mass
       individual[index] = random.uniform(0, mutation_range)
       return individual,
   # Menghitung tekanan hidrogen
   def calculate_hydrogen_pressure(volume, mass):
       # Menggunakan asumsi gas hidrogen ideal
       R = 8.314  # Konstanta gas ideal (J/(mol·K))
       M = 2.016  # Massa molar hidrogen (g/mol)
       V = volume * 1000  # Konversi volume dari liter ke mililiter
       return (mass / M) * (R * 1000) / V
   # Inisialisasi algoritma genetika
   creator.create("FitnessMax", base.Fitness, weights=(1.0,))
   creator.create("Individual", list, fitness=creator.FitnessMax)
   toolbox = base.Toolbox()
   toolbox.register("individual", tools.initIterate, creator.Individual, generate_individual)
   toolbox.register("population", tools.initRepeat, list, toolbox.individual)
   toolbox.register("evaluate", evaluate)
   toolbox.register("mate", crossover)
   toolbox.register("mutate", mutate)
   toolbox.register("select", tools.selTournament, tournsize=3)
   def optimize_hydrogen_storage():
       # Inisialisasi populasi awal
       population_size = 50
       population = toolbox.population(n=population_size)
       # Inisialisasi statistik
       stats = tools.Statistics(lambda ind: ind.fitness.values)
       stats.register("min", np.min)
       stats.register("avg", np.mean)
       # Menjalankan algoritma genetika
       generations = 10
       population, logbook = algorithms.eaSimple(population, toolbox, cxpb=0.5, mutpb=0.2, ngen=generations, stats=stats, verbose=False)
       # Mendapatkan individu terbaik
       best_individual = tools.selBest(population, k=1)[0]
       return best_individual
   # Menjalankan optimasi penyimpanan hidrogen
   best_individual = optimize_hydrogen_storage()
   # Menampilkan hasil optimasi
   best_tank_mass = best_individual[0]
   best_regulator_mass = best_individual[1]
   best_hydrogen_pressure = calculate_hydrogen_pressure(tank_volume, best_tank_mass)
   print("Optimasi Hydrogen Storage:")
   print("Massa Tangki Terbaik:", best_tank_mass, "kg")
   print("Massa Regulator Terbaik:", best_regulator_mass, "kg")
   print("Tekanan Hidrogen Terbaik:", best_hydrogen_pressure, "bar")


FINAL DESIGN

Final Design Nazwa.png


Video Link for Presentation Video

Here's the video link:

https://www.youtube.com/channel/UCWxgC9IdD5gzAzA9-QLg4aw

https://drive.google.com/file/d/1YRiv4C6YrcUV7Ws1XhExvBuCkAAmH3N8/view?usp=sharing