Kelas Metode Numerik 2022
DESIGN AND OPTIMIZATION OF PRESSURIZED HYDROGEN STORAGE
When designing the optimization of pressurized hydrogen storage with a volume of 1 liter, pressure of 8 bar, and a production cost not exceeding Rp500,000.00, there are several considerations to take into account. Here are some important factors to consider:
1. Container Material and Construction
- Choose materials that are safe and resistant to high pressure and corrosion, such as aluminum, stainless steel, or carbon fiber-reinforced composites.
- Ensure that the container construction can safely withstand the desired hydrogen pressure.
2. Safety
- Certification and compliance with applicable safety standards such as ISO 15869 or SAE J2579.
- Consider adequate safety features, such as pressure relief valves, pressure sensors, and fire suppression systems.
3. Space Efficiency
- Design the container to maximize the use of space within the 1-liter volume.
- Utilize optimal packaging techniques to maximize the amount of hydrogen that can be stored within the available space.
4. Storage Efficiency
- Consider the most efficient method of hydrogen storage, such as physical storage as compressed gas or storage in the form of a fuel cell if hydrogen fuel cells are being :considered.
5. Production Cost
- Take into account the cost of materials, production, and testing associated with the storage design.
- Optimize the design to achieve a production cost that does not exceed the budgetary constraints.
6. Reliability
- Ensure that the container design can maintain a stable pressure over the desired period without leaks or potential damage.
7. Regulations
- Ensure that the design complies with applicable regulations and standards in the hydrogen storage industry.
DESIGN CALCULATION
Specification of a Cylindrical Hydrogen Tank
Capacity : 1 liter Pressure : 8 bar Material : ASTM A36 sheet metal Cost : Rp500.000,00
Code to Optimize The Design of Cylindrical Hydrogen Tank
To optimize the design, i write a code in Python to find the optimium thickness, radius, and the height of the tank with cost and volume as a constant variables. Here is the code that i used:
from scipy.optimize import minimize def objective_function(x): thickness, radius, height = x[0], x[1], x[2] # Calculate the weight of the tank (assuming density of ASTM A36 sheet metal) density_astm_a36 = 7850 # kg/m^3 (density of ASTM A36 sheet metal) volume = 3.14159 * radius * radius * height / 1000 # Convert to liters weight = density_astm_a36 * volume # Calculate the cost of the tank (based on material price per kg) material_price = 500000 / weight # Rp/kg (maximum allowed cost divided by weight) cost = weight * material_price # Define the objective function as a combination of weight and cost # You can adjust the coefficients based on your preference for weight vs. cost objective_value = weight + 0.001 * cost return objective_value def constraint(x): thickness, radius, height = x[0], x[1], x[2] # Volume constraint: tank volume should be 1 liter volume = 3.14159 * radius * radius * height / 1000 # Convert to liters # Pressure constraint: tank should handle 8 bar pressure with a safety factor of 2 allowable_stress = 250e6 # Pa (allowable stress for ASTM A36 sheet metal) inside_radius = radius - thickness # Inner radius of the tank pressure = 8e5 # Pa (8 bar pressure) stress = pressure * inside_radius / thickness # Stress in the tank wall safety_factor = 2.0 # Safety factor stress_allowable = allowable_stress / safety_factor return [ volume - 1, # Volume constraint (1 liter) stress - stress_allowable, # Pressure constraint thickness - 5, # Minimum thickness constraint (5 mm) 10 - thickness # Maximum thickness constraint (10 mm) ] # Initial guess for thickness, radius, and height (in mm) x0 = [10.0, 50.0, 100.0] # Define bounds for thickness, radius, and height (in mm) bounds = [ (5, 10), # Bounds for thickness (assumed range from 5 to 10 mm) (1, 50), # Bounds for radius (assumed range from 1 to 50 mm) (100, 1000) # Bounds for height (assumed range from 100 to 1000 mm) ] # Define the optimization problem problem = { 'type': 'SLSQP', 'fun': objective_function, 'x0': x0, 'bounds': bounds, 'constraints': [{'type': 'ineq', 'fun': lambda x: constraint(x)}] } # Solve the optimization problem result = minimize(problem['fun'], x0=problem['x0'], bounds=problem['bounds'], constraints=problem['constraints'], method=problem['type']) # Extract the optimal solution optimal_thickness, optimal_radius, optimal_height = result.x # Calculate the weight of the tank (assuming density of ASTM A36 sheet metal) density_astm_a36 = 7850 # kg/m^3 (density of ASTM A36 sheet metal) volume = 3.14159 * optimal_radius * optimal_radius * optimal_height / 1000 # Convert to liters weight = density_astm_a36 * volume # Calculate the cost of the tank (based on material price per kg) material_price = 500000 / weight # Rp/kg (maximum allowed cost divided by weight) cost = weight * material_price # Print the optimal solution with units print(f"Optimal Thickness: {optimal_thickness:.2f} mm") print(f"Optimal Radius: {optimal_radius:.2f} mm") print(f"Optimal Height: {optimal_height:.2f} mm") print(f"Cost: {cost:.2f} Rp")
The result of the code is:
Optimal Thickness: 5.00 mm Optimal Radius: 24.28 mm Optimal Height: 100.00 mm Cost: 500000.00 Rp
3D MODELLING
After finding out the optimum design using the code above, i try to create the 3D Design using Autodesk Inventor: