Difference between revisions of "Valve - M. D. Fachturrohman"

From ccitonlinewiki
Jump to: navigation, search
(Pertemuan Ke Lima)
(Jawaban UAS)
 
(8 intermediate revisions by the same user not shown)
Line 333: Line 333:
  
 
[[File:MessageImage_1607592136822.jpg|700px]]
 
[[File:MessageImage_1607592136822.jpg|700px]]
 +
 +
 +
= '''Pertemuan ke Enam''' =
 +
 +
Pada pertemuan ini, saya diajar oleh dosen tamu yaitu CEO dari PT. Indopower Internasional, Bapak Dr. Ir. Harun Al Rasyid tentang Combined Cycle Power Plant. Beliau awalnya memberi tau kami tentang pengenalan turbin gas, yaitu merupakan combustion turbine yang memiliki beberapa konfigurasi seperti turbojet, turboprop, turboshaft, high-bypass turbofan, low bypass afterburning turbofan. Terdapat beberapa pertimbangan dalam memilih turbin gas, beberapa pertimbangan tersebut adalah tahun dibuat produknya, efisiensi site, heat rate, dan fuel consumption. Combined Cycle Power Plant merupakan pembangkit listrik menggunakan siklus dari Turbin gas dan juga Turbin uap yang penjelasan setiap part dan juga rangkaian sistemnya seperti tugas yang diberikan oleh Pak Hariyotejo
 +
 +
 +
= '''Sinopsis Tugas Besar''' =
 +
 +
Kali ini, saya diberikan tugas besar oleh Pak Ahmad Indra untuk merangkum kurang lebih apa yang saya pelajari selama di sistem fluida ini. Saya disini akan membuat suatu sistem fluida yaitu sistem perpipaan
 +
 +
 +
== '''Latar Belakang''' ==
 +
 +
Dari awal saya mempelajari sistem fluida ini, saya menggunakan beberapa software yaitu CFDSOF, sedikit dari Autodesk Inventor, dan juga OpenModelica. Dari semua yang sudah saya pelajari itu, saya diminta untuk melakukan analisis dengan tools tugas besar ini untuk memperdalam ilmu saya dalam analisa pada suatu sistem fluida dan disini saya akan menggunakan ketiga software OpenModelica untuk menganalisa Water Heating System yang ada pada library OpenModelica
 +
 +
 +
== '''Tujuan''' ==
 +
 +
Dari tugas ini, tujuan yang akan saya capai adalah memahami water heating system, mampu membuat pemodelan pada water heating system didalam OpenModelica, memahami parameter-parameter yang ada, mendapat hasil akhir yang didapat setelah melakukan simulasi
 +
 +
 +
== '''Metodologi''' ==
 +
 +
Metodologi yang akan saya gunakan adalah
 +
 +
1. Saya akan mempelajari terlebih dahulu model nyata atau flow diagram dari water heating system
 +
 +
2. Membuat model system di OpenModelica
 +
 +
3. Lalu saya menginput atau merubah parameter yang ada di dalam sistem ini
 +
 +
4. Simulasi
 +
 +
5. Jika terdapat error pada saat ingin simulasi atau pada saat tahap pengecekan, saya akan merubah parameter atau codingan yang ada
 +
 +
6. Jika tidak ada error, saya akan mendapatkan output yang saya inginkan
 +
 +
 +
== '''Konsep Water Heating System''' ==
 +
 +
Jadi dari gambar yang bisa dilihat dibawah dari simulasi water heating system yang ada di dalam library OpenModelica, pada sistem ini tahapannya adalah yang pertama air yang berada didalam tank atau biasanya torent dialirkan melalui pipa ke pompa yang ada dan dialirkan ke boiler pada sistem heaeter yang ada, lalu uap panas yang dihasilkan mengalir kembali melalui valve yang memiliki sensor terbuka dan tertutup, pada sistem ini setelah 2000 second simulasi, valve tersebut akan terbuka. Lalu akan mengalir ke radiator sebagai pengaturan temperature lagi untuk disalurkan lagi ke outflow yang ada.
 +
 +
[[File:bagolz.jpg|700px]]
 +
 +
Valve ini akan mengatur heating system yang ada dari terbuka dan tertutupnya valve ini. Selain valve, boiler (heater) dan pompa yang ada juga memiliki peran yang sangat penting untuk mengatur Temperature (T) dan juga Pressure (p)
 +
 +
Disini saya mencoba untuk meremodel sistem yang ada seperti gambar diatas, disana saya mencoba meremodel dari parameter pada T di heater dan juga T di Radiator untuk mengubah output Temperature yang dikeluarkan. Disini saya juga mengubah outflow dari radiator yang tadinya ke tanki awal kembali sekarang saya mengubahnya untuk mendistribusikan ke tanki lain.
 +
 +
Berikut merupakan pemodelan yang saya lakukan berikut juga dengan codingnya
 +
 +
[[File:99481.jpg|1000px]]
 +
 +
model Tubes_Sisflu
 +
replaceable package Medium =
 +
      Modelica.Media.CompressibleLiquids.LinearWater_pT_Ambient
 +
    constrainedby Modelica.Media.Interfaces.PartialMedium;
 +
  Modelica.Fluid.Vessels.OpenTank tank(
 +
    redeclare package Medium = Medium,
 +
    crossArea=0.01,
 +
    height=2,
 +
    level_start=1,
 +
    nPorts= 2,
 +
    massDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial,
 +
    use_HeatTransfer=true,
 +
    portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=
 +
        0.01),Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=
 +
        0.01)},
 +
    redeclare model HeatTransfer =
 +
        Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=10),
 +
    ports(each p(start=1.1e5)),
 +
    T_start=Modelica.SIunits.Conversions.from_degC(13))
 +
    annotation(
 +
    Placement(visible = true, transformation(origin = {-83, 61}, extent = {{-9, -9}, {9, 9}}, rotation = 0)));
 +
  inner Modelica.Fluid.System system annotation(
 +
    Placement(visible = true, transformation(origin = {-89, 86}, extent = {{-11, -10}, {11, 10}}, rotation = 0)));
 +
  Modelica.Fluid.Machines.ControlledPump Pompa(
 +
    redeclare package Medium = Medium,
 +
    N_nominal=1500,
 +
    use_T_start=true,
 +
    T_start=Modelica.SIunits.Conversions.from_degC(13),
 +
    m_flow_start=0.01,
 +
    m_flow_nominal=0.01,
 +
    control_m_flow=false,
 +
    allowFlowReversal=false,
 +
    p_a_start=110000,
 +
    p_b_start=130000,
 +
    p_a_nominal=110000,
 +
    p_b_nominal=130000)
 +
    annotation(
 +
    Placement(visible = true, transformation(origin = {-46, 26}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 +
  Modelica.Fluid.Pipes.DynamicPipe Heater(
 +
    redeclare package Medium = Medium,
 +
    use_T_start=true,
 +
    T_start=Modelica.SIunits.Conversions.from_degC(110),
 +
    length=2,
 +
    redeclare model HeatTransfer =
 +
        Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer,
 +
    diameter=0.01,
 +
    nNodes=1,
 +
    redeclare model FlowModel =
 +
        Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow,
 +
    use_HeatTransfer=true,
 +
    modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b,
 +
    p_a_start=130000)
 +
    annotation(
 +
    Placement(visible = true, transformation(origin = {28, 26}, extent = {{-14, -14}, {14, 14}}, rotation = 0)));
 +
  Modelica.Thermal.HeatTransfer.Sources.FixedHeatFlow Burner(
 +
    Q_flow=1.6e3,
 +
    T_ref=373.15,
 +
    alpha=-0.5) 
 +
    annotation(
 +
    Placement(visible = true, transformation(origin = {10, 68}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 +
  Modelica.Fluid.Valves.ValveIncompressible Valve(
 +
    redeclare package Medium = Medium,
 +
    CvData=Modelica.Fluid.Types.CvTypes.OpPoint,
 +
    m_flow_nominal=0.01,
 +
    show_T=true,
 +
    allowFlowReversal=false,
 +
    dp_start=18000,
 +
    dp_nominal=10000)
 +
    annotation(
 +
    Placement(visible = true, transformation(origin = {46, -72}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));
 +
 +
 +
  Modelica.Fluid.Pipes.DynamicPipe Radiator(
 +
    use_T_start=true,
 +
    redeclare package Medium = Medium,
 +
    length=10,
 +
    T_start=Modelica.SIunits.Conversions.from_degC(60),
 +
    redeclare model HeatTransfer =
 +
        Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer,
 +
    diameter=0.01,
 +
    nNodes=1,
 +
    redeclare model FlowModel =
 +
        Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow,
 +
    use_HeatTransfer=true,
 +
    modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b,
 +
    p_a_start=110000,
 +
    state_a(p(start=110000)),
 +
    state_b(p(start=110000)))
 +
    annotation(
 +
    Placement(visible = true, transformation(origin = {-2, -72}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 +
  Modelica.Thermal.HeatTransfer.Components.ThermalConductor wall(G = 1.6e3 / 20)  annotation(
 +
    Placement(visible = true, transformation(origin = {-2, -48}, extent = {{10, -10}, {-10, 10}}, rotation = 90)));
 +
  Modelica.Thermal.HeatTransfer.Sources.FixedTemperature fixedTemperature(T = system.T_ambient)  annotation(
 +
    Placement(visible = true, transformation(origin = {-25, -25}, extent = {{-7, -7}, {7, 7}}, rotation = 0)));
 +
  Modelica.Fluid.Sensors.MassFlowRate massFlowRate(redeclare package Medium = Medium)
 +
  annotation(
 +
    Placement(visible = true, transformation(origin = {-14, 26}, extent = {{-12, -12}, {12, 12}}, rotation = 0)));
 +
  Modelica.Fluid.Sensors.Temperature temperature(redeclare package Medium = Medium)
 +
  annotation(
 +
    Placement(visible = true, transformation(origin = {60, 44}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 +
  Modelica.Fluid.Sensors.Temperature temperature1(redeclare package Medium
 +
      = Medium)
 +
      annotation(
 +
    Placement(visible = true, transformation(origin = {-40, -58}, extent = {{8, -8}, {-8, 8}}, rotation = 0)));
 +
  Modelica.Blocks.Interfaces.RealOutput m_flow annotation(
 +
    Placement(visible = true, transformation(origin = {3, 45}, extent = {{-5, -5}, {5, 5}}, rotation = 0), iconTransformation(origin = {-12, 50},
 +
extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 +
    Modelica.Blocks.Sources.Step step annotation(
 +
    Placement(visible = true, transformation(origin = {24, -42}, extent = {{-6, -6}, {6, 6}}, rotation = 0)));
 +
  Modelica.Fluid.Pipes.DynamicPipe Pipa(
 +
    redeclare package Medium = Medium,
 +
    use_T_start=true,
 +
    T_start=Modelica.SIunits.Conversions.from_degC(80),
 +
    redeclare model HeatTransfer =
 +
        Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer,
 +
    diameter=0.01,
 +
    redeclare model FlowModel =
 +
        Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow,
 +
    length=10,
 +
    p_a_start=130000)
 +
    annotation(
 +
    Placement(visible = true, transformation(origin = {72, -14}, extent = {{-16, -16}, {16, 16}}, rotation = -90)));
 +
  Modelica.Fluid.Vessels.OpenTank tank1(
 +
    redeclare package Medium = Medium,
 +
    crossArea=0.01,
 +
    height=2,
 +
    level_start=1,
 +
    nPorts= 2,
 +
    massDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial,
 +
    use_HeatTransfer=true,
 +
    portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=
 +
        0.01),Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=
 +
        0.01)},
 +
    redeclare model HeatTransfer =
 +
        Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=10),
 +
    ports(each p(start=1.1e5)),
 +
    T_start=Modelica.SIunits.Conversions.from_degC(13)) annotation(
 +
    Placement(visible = true, transformation(origin = {-83, -71}, extent = {{-11, -11}, {11, 11}}, rotation = 90)));
 +
protected
 +
Modelica.Blocks.Interfaces.RealOutput tanklevel annotation(
 +
    Placement(visible = true, transformation(origin = {-56, 66}, extent = {{-10, -10}, {10, 10}}, rotation = 0), iconTransformation(origin = {-56,
 +
66}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 +
protected
 +
  Modelica.Blocks.Interfaces.RealOutput T_forward annotation(
 +
    Placement(visible = true, transformation(origin = {84, 44}, extent = {{-6, -6}, {6, 6}}, rotation = 0), iconTransformation(origin = {84, 42},
 +
extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 +
  Modelica.Blocks.Interfaces.RealOutput T_return annotation(
 +
    Placement(visible = true, transformation(origin = {-56, -58}, extent = {{6, -6}, {-6, 6}}, rotation = 0), iconTransformation(origin = {-44, -54}, 
 +
extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 +
equation
 +
tanklevel = tank.level;
 +
  connect(tank.ports[1], Pompa.port_a) annotation(
 +
    Line(points = {{-82, 52}, {-80, 52}, {-80, 26}, {-56, 26}, {-56, 26}}, color = {0, 127, 255}));
 +
  connect(Heater.port_b, Pipa.port_a) annotation(
 +
    Line(points = {{42, 26}, {72, 26}, {72, 2}}, color = {0, 127, 255}));
 +
  connect(Pipa.port_b, Valve.port_b) annotation(
 +
    Line(points = {{72, -30}, {72, -72}, {36, -72}}, color = {0, 127, 255}));
 +
  connect(step.y, Valve.opening) annotation(
 +
    Line(points = {{30, -42}, {46, -42}, {46, -64}}, color = {0, 0, 127}));
 +
  connect(Valve.port_b, Radiator.port_b) annotation(
 +
    Line(points = {{36, -72}, {8, -72}, {8, -72}, {8, -72}}, color = {0, 127, 255}));
 +
  connect(Pompa.port_b, massFlowRate.port_a) annotation(
 +
    Line(points = {{-36, 26}, {-26, 26}}, color = {0, 127, 255}));
 +
  connect(massFlowRate.port_b, Heater.port_a) annotation(
 +
    Line(points = {{-2, 26}, {14, 26}}, color = {0, 127, 255}));
 +
  connect(temperature.port, Heater.port_b) annotation(
 +
    Line(points = {{60, 34}, {60, 34}, {60, 26}, {42, 26}, {42, 26}}, color = {0, 127, 255}));
 +
  connect(temperature1.port, Radiator.port_a) annotation(
 +
    Line(points = {{-40, -66}, {-40, -66}, {-40, -72}, {-12, -72}, {-12, -72}}, color = {0, 127, 255}));
 +
  connect(massFlowRate.m_flow, m_flow) annotation(
 +
    Line(points = {{-14, 40}, {-14, 44}, {3, 44}, {3, 45}}, color = {0, 0, 127}));
 +
  connect(temperature.T, T_forward) annotation(
 +
    Line(points = {{68, 44}, {76, 44}, {76, 45}, {81, 45}}, color = {0, 0, 127}));
 +
  connect(temperature1.T, T_return) annotation(
 +
    Line(points = {{-46, -58}, {-56, -58}}, color = {0, 0, 127}));
 +
  connect(Radiator.port_a, tank1.ports[1]) annotation(
 +
    Line(points = {{-12, -72}, {-72, -72}, {-72, -71}}, color = {0, 127, 255}));
 +
connect(T_forward, temperature.T) annotation(
 +
    Line(points = {{84, 44}, {68, 44}}, color = {0, 0, 127}));
 +
connect(wall.port_b, Radiator.heatPorts[1]) annotation(
 +
    Line(points = {{-2, -68}, {-2, -58}}, color = {191, 0, 0}));
 +
connect(fixedTemperature.port, wall.port_a) annotation(
 +
    Line(points = {{-18, -25}, {-2, -25}, {-2, -38}}, color = {191, 0, 0}));
 +
connect(Burner.port, Heater.heatPorts[1]) annotation(
 +
    Line(points = {{28, 32}, {28, 32}, {28, 68}, {20, 68}, {20, 68}}, color = {191, 0, 0}));
 +
end Tubes_Sisflu;
 +
 +
Lalu dari pemodelan yang saya lakukan, saya menganalisis temperatur yang ada pada sistem tersebut dan saya simulasikan untuk mengetahui temperature yang ada setelah dipanaskan melalui heater dan di kontrol kembali pressure oleh valve dan juga temperature oleh radiator. Dan berikut merupakan hasil simulasi dari pemodelan saya.
 +
 +
[[File:MessageImage 1609946114218.jpg|700px]]
 +
 +
Disini saya mendapatkan temperature fluida yang ada di tanki pertama adalah 20 derajat celcius, lalu setelah dipanaskan oleh heater menjadi 88 derajat celcius, lalu setelah di kontrol kembali di radiator, temperaturenya 64 derajat celcius yang akan disalurkan ke tanki berikutnya yang airnya diperuntukkan untuk kebutuhan
 +
 +
 +
= '''Jawaban UAS''' =
 +
 +
بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ
 +
 +
Berikut merupakan jawaban UAS Sistem Fluida 03 saya
 +
 +
[[File:BAGOL1.jpg|700px]]
 +
 +
[[File:BAGOL2.jpg|700px]]
 +
 +
[[File:BAGOL3.jpg]]

Latest revision as of 15:19, 18 January 2021

بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ

Assalamualaikum wr. wb.


Biodata Diri


Muhammad Daffa Fachturrohman

Nama : Muhammad Daffa Fachturrohman

NPM : 1806181855

Agama : Islam

Program Studi : S1 Teknik Mesin Paralel



Pertemuan Pertama


Pada pertemuan pertama kelas Sistem Fluida 03 dengan Pak Ahmad Indra Siswantara, saya bertemu dengan mahasiswa-mahasiswa di mata kuliah pilihan Aplikasi CFD. Pada pertemuan ini, saya diberikan beberapa reminder tentang CFDSOF yang pada kelas Mekanika Fluida saya telah menggunakan software ini. Saya juga diberikan link youtube untuk mempelajari terlebih dahulu tentang CFDSOF ini. Pada saat kelas, saya diberikan tugas untuk menggunakan CFDSOF ini namun telah diberikan part-part dan juga asseblied partnya pada deskripsi di link youtube tersebut.

Berikut merupakan hasil simulasi saya pada software CFDSOF

CFD Sisflu1.jpg CFD Sisflu2.jpg

Lalu, saya menggunakan software Paraview untuk mencari pressure dropnya.

CFD Sisflu3.jpg CFD Sisflu4.jpg

Dari simulasi, saya mendapatkan p inlet sebesar 0.0010025 dan p outlet 0.000286522, Sehingga pressure drop yang saya dapatkan dari inlet dan juga outlet adalah 0.000715978



Tugas I


Pada tugas pertama, Pak Ahmad Indra Siswantara meminta kami untuk membuat simulasi di CFDSOF menggunakan valve yang berbeda dari contoh yang telah diberikan pada saat kelas Sistem Fluida pertama, berikut merupakan ball valve yang saya gunakan

1605706955931.jpg

Setelah saya mengexport file tersebut menjadi format .stl, saya menggunakan file .stl tersebut untuk memasukannya ke CFDSOF lalu saya melakukan simulasi dari scaling, geometry meshing, sampai pada run solver dan mendapatkan residual grafik pada gambar-gambar yang ada dibawah ini

1605708646434.jpg

1605710763684.jpg

1605710850350.jpg

Dan berikut merupakan hasil dari paraview saya sampai mendapatkan pstatic, pdynamic, dan juga ptotal. Berikut merupakan hasil dari visual inlet dan juga outlet terhadap tekanan yang diterima dari kedua part tersebut.

1605711708507.jpg

Berikut merupakan ptotal dari inlet dan juga outlet yang saya dapatkan.

1605711782177.jpg 1605711823324.jpg

Lalu setelah mendapatkan ptot inlet yaitu 1254.98 dan juga ptot outlet 164.691, saya mendapatkan pressure drop dari data tersebut yaitu :

ΔP = Ptot in - Ptot out = 1254.98 - 164.691 = 1090.289


Pertemuan Kedua

Pada pertemuan kedua saya dengan pak Ahmad Indra Siswantara, saya di remind kembali pada segitiga kecepatan dan juga saya mendapatkan beberapa pelajaran baru dari presentasi-presentasi yang diberikan dari kelas Aplikasi CFD.


Tugas II

Pada pertemuan kedua dengan Pak Ahmad Indra Siswantara, saya diberikan tugas untuk mensimulasikan pembelajaran Sistem Fluida di dalam OpenModelica.

Berikut merupakan pembelajaran saya, saya membuat 3 tank di OpenModelica yang digabungkan dengan menggunakan port ke pipe-pipe yang ada sebagai berikut

1606377787653.jpg

Dan berikut merupakan pemrograman yang saya lakukan

Coding1Bagol.jpg Coding2Bagol.jpg

Dari gambar-gambar diatas, saya menggunakan 1 port pada setiap tanki yang saya gunakan, dan tiap port tersebut dapat menyambungkan ke 3 lines, pada port di tank 2, saya menggunakannya untuk menyambungkan ke 2 lines untuk menyambungkan ke pipe 1 dan juga pipe 2 untuk mengalirkan fluida dari tanki 1 sampai ke tanki 3. Untuk itu saya menggukana 4 connector lines untuk menghubungkan semua tanki dan juga pipa-pipa yang ada.


Dan berikut merupakan hasil grafik dari perbandingan volume fluida yang ada di setiap tanki dari tanki 1, tanki 2, dan tanki 3

1606380914953.jpg


Pertemuan Ketiga

Pada pertemuan kali ini, kami mempelajari Permodelan Sistem Fluida yang diampu oleh bapak Hariyotejo, dan pada pertemuan ini saya mencoba simulasi dari library OpenModelica yaitu TwoTanks.

Twotanksbagol.jpg

dan berikut merupakan kodingan dari twotanks yang ada seperti gambar diatas

Twotanksbagol1.jpg


Tugas III

Pada tugas ini, saya diminta untuk menganalisis mengenai 2 simulasi, yaitu HeatingSystem dan ThreeTanks.

1. Deskripsi/Uraian fisik

1606925619329.jpg

Komponen yang ada didalam sistem tersebut adalah pompa, valve, combustion, sensor, pipa, tangki, heater, burner, radiator, wall

Sistem ini bertujuan untuk memanaskan sistem fluida, dan dari komponen-komponen ini memberikan feedback dan menyesuaikannya dengan temperatur fluida yang kita inginkan

1606925941490.jpg

Dari simulasi ThreeTanks diatas, dapat dilihat bahwa ada 3 tanki yang berbeda posisi penempatan, area, dan juga ketinggian dari penempatan tanki yang mengakibatkan perbedaan ketinggian fluida didalam ketiga tanki yang ada.

2. Prosedur Analisa pemodelan

Prosedurnya adalah yang pertama membuka OpenModelica, lalu membuka library, dan membuka heating system didalam fluid, lalu kita bisa melihat sistem yang ada di dalam openmodelica, lalu melakukan pengecekan dan jika setelah di cek semua sudah benar, bisa melakukan simulasi dan dapat menghasilkan hasil berupa variabel-variabel yang diinginkan dalam kodingan yang kita masukkan dan juga bisa menimbulkan grafik yang ingin kita lihat, jika ingin mengganti hasil yang ada, kita bisa mengganti area-area ataupun penempatan yang ada.

2.1. Heating System

Pada heating system ini, kita dapat menganalisa pemodelan ini dari variabel-variabel yang ada, dari komponen yang disebutkan diatas bisa dianalisis dengan menggunakan tipe-tipe dari komponen yang berbeda untuk mendapat hasil simulasi yang berbeda juga dan dapat dianalisa

2.2. ThreeTanks

Pada ThreeTanks, Tekanan hidrostatis menjadi acuan dari analisis di dalam sistem ini. Tetapi kita juga bisa mengganti area dan pemosisisan di sistem tersebut untuk menganalisis hasil dari simulasi yang dilakukan.

3. Analisa dan Interpretasi Hasil Pemodelan

Dari volume tanki 1 yaitu 8 meter kubik, dan kepala tanki 2 dan 3 yaitu 3 meter kubik, untuk volume fluida dari tanki tersebut untuk tanki 1 yaitu 3.67 meter kubik, tanki 2 dan 3 yaitu 6.67 meter kubik dikarenakan perbedaan height dan pada pipes.

4. Hukum-Hukum Fisika

Hukum II Newton, Heat Transfer

5. Hasil-hasil Simulasi

1606927761338.jpg

Hasil simulasi dari heating system

1606927771177.jpg

Hasil simulasi dari Three Tanks

Pertemuan KeEmpat

Pada pertemuan ini, saya diajar oleh Pak Hariyotejo yang mengajarkan saya untuk meremodelling TwoTanks yang ada di library OpenModelica.

Berikut merupakan codingan dan juga model yang ada di libraryi OpenModelica pada examples TwoTanks.

1606994408175.jpg 1607527408858.jpg

Berikut merupakan codingan dari remodelling yang saya lakukan di OpenModelica saya.

1607526924664.jpg

Lalu saya diajarkan juga untuk melakukan pemodelan konversi massa pada control volume.

ControlvolumeTrio.png

Lalu saya mencoba untuk melakukan codingannya dan hasil simulasinya sbg berikut

1607527800722.jpg

1607527996513.jpg


Tugas IV

Berikut merupakan tugas yang diberikan oleh Pak Hariyotejo

MessageImage 1607528878788.jpg

1. Analisa Termodinamika (Konversi massa dan energi) pada sistem tersebut dan membuat skematik analisanya.

Pada model diatas bertujuan untuk mensimulasikan beban reduksi menggunakan power generator 100% menjadi 50% dalam waktu 2500 second, sederhananya seperti Combined Cycle Power Plant sebagai berikut

1607529596299.jpg

Ada 2 proses dari Power Plant diatas

I. Gas Turbine

A. Air Compressor yang berguna untuk menghisap udara dari luar untuk menaikan tekanan udara yang di alirkan menuju combustion chamber.Pada compressor terjadi proses isentropik

B. Combustion Chamber yang merupakan tempat dimana bahan bakar dan udara Bersatu untuk menciptakan suatu energi yaitu udara panas yang dialirkan menuju turbin melalui nozzle,dimana pada alat ini tekanan dianggap konstan (Isobarik).

C. Turbin yang berfungsi untuk memutar generator untuk menghasilkan suatu energi.

Gas Turbine yang berputar akibat dari panas yang di hasilkan pada combustiom chamber yang di aliri oleh nozzle menuju turbin. Panas yang ada di gas turbin di alirkan menuju Heat recovery Steam generator.

II. Steam Turbin

A. HRSG (Heat Recovery Steam Generator) menangkap gas buangan dari Gas Turbine yang jika tidak dipasang, dapat keluar melalui saluran pembuangan.HRSG berguna untuk memanaskan Kembali uap pembuangan dari gas turbine untuk dialiri ke turbin,yang dimana turbin 2 bertugas memutar generator untuk menghasilkan suatu energi

B. Steam Turbine dilewati oleh aliran steam tersebut, sehingga membuat Steam Turbine berputar dan menggerakkan generator drive shaft. Generator drive shaft ini kemudian mengubah sisa energi buangan dari Gas Turbine menjadi listrik.

C. Hasil buangan dari turbin dialirkan menuju Kondesor untuk merubah sifat dari uap menjadi cair agar dapat didorong oleh pompa menuju HRSG untuk dipanaskan Kembali.

2. Mengidentifikasi komponen-komponen utama pada sistem serta memberi deskripsi fungsi kerjanya dalam sistem dan penjelasan analisis parameter yang digunakan.

Karena sistem diatas, maka terdapat 2 bagian sistem pembangkit, yaitu Gas Turbin dan juga Steam Turbin

Berikut merupakan bagian dari Steam Turbin dan Gas Turbin yang saya dapatkan dari library ThermoSysPro.Examples.CombinedCyclePowerPlant.CombinedCycle_Load_100_50

I. Turbin Uap

A. Condensor

Bisa mengubah fasa uap panas menjadi liquid

1607571713578.jpg

B. Drum

1607572373613.jpg

C. Generator

Didalam generator bisa mengubah energi mekanik menjadi energi listrik.

1607572467873.jpg

Ada juga beberapa jenis dari Heat Exchanger :

-SuperHeater

1607572745051.jpg

-Evaporator

1607573289712.jpg

-Economiser

1607573357489.jpg

Pipa yang digunakan dari library ThermoSysPro.WaterSteam.PressureLosses.LumpedStraightPipe

1607573627127.jpg

D. Turbin Uap

Pada turbin uap ini, ada tiga jenis turbin seperti yang ada di sistem, yaitu high pressure, intermediate pressure, dan low pressure

1607573627127.jpg

E. Valve

Untuk mengatur laju aliran fluida

1607573971079.jpg

F. Water Mixer

Junction yang menghubungkan beberapa inlet dan menggabungkannya menjadi kurang dari atau sama dengan jumlah inlet.

1607574175011.jpg

G. Water Splitter

Junction yang menghubungkan 1 atau 2 inlet dan memecahnya menjadi lebih dari atau sama dengan jumlah inlet pada outlet.

1607574261456.jpg

II. Turbin Gas

Berikut merupakan perincian dari turbin gas yang didapat dari ThermoSysPro.FlueGases.TAC

1607574823249.jpg

A. Compressor

1607574909507.jpg

B. Turbin Gas

Udara di turbin gas mengalami peningkatan tekanan dan temperatur akibat proses pembakaran yang terjadi. Udara panas tersebut kemudian digunakan untuk menggerakkan turbin gas tersebut.

1607574984026.jpg

C. Combustion Chamber

1607575063899.jpg

3. Medium fluida kerja yang ada didalam proses siklus tersbut dan analisis perhitungan dalam pemodelannya.

Berikut merupakan medium fluida yang bekerja dalam proses siklus tersebut :

- Turbin Gas (Menghasilkan kerja)

- Turbin Uap (Menghasilkan kerja)

- Pompa Sentrifugal (Membutuhkan kerja)

- Kompresor (Membutuhkan kerja)

Lalu, pada Analisa perhitungannya dapat menggunakan hukum konservasi energi dan konservasi massa

- Pada kompresor,pompa,turbin dan HRSG mengalami proses adiabatic,yang dimana proses adiabatik adalah proses yang tidak terjadi pergantian kalor dari sistem ke lingkungan ataupun sebaliknya.

- proses ini diasumsikan kondisi steady state dan energi kinetic potensial diabaikan

4. Flow line pada jalur hitam, merah, dan biru sesuai dengan interkoneksi yang ada

A. Jalur Hitam: Sebagai jalur energi keluar yang dimanfaatkan sebagai penggerak.

B. Jalur merah: Sebagai aliran fluida high temperature.

C. Warna Biru : Sebagai jalur Fluida low Temperature.


Pertemuan Ke Lima

Hari ini pak Hariyotejo memberikan materi tentang example di library Test Compressor

MessageImage 1607592136822.jpg


Pertemuan ke Enam

Pada pertemuan ini, saya diajar oleh dosen tamu yaitu CEO dari PT. Indopower Internasional, Bapak Dr. Ir. Harun Al Rasyid tentang Combined Cycle Power Plant. Beliau awalnya memberi tau kami tentang pengenalan turbin gas, yaitu merupakan combustion turbine yang memiliki beberapa konfigurasi seperti turbojet, turboprop, turboshaft, high-bypass turbofan, low bypass afterburning turbofan. Terdapat beberapa pertimbangan dalam memilih turbin gas, beberapa pertimbangan tersebut adalah tahun dibuat produknya, efisiensi site, heat rate, dan fuel consumption. Combined Cycle Power Plant merupakan pembangkit listrik menggunakan siklus dari Turbin gas dan juga Turbin uap yang penjelasan setiap part dan juga rangkaian sistemnya seperti tugas yang diberikan oleh Pak Hariyotejo


Sinopsis Tugas Besar

Kali ini, saya diberikan tugas besar oleh Pak Ahmad Indra untuk merangkum kurang lebih apa yang saya pelajari selama di sistem fluida ini. Saya disini akan membuat suatu sistem fluida yaitu sistem perpipaan


Latar Belakang

Dari awal saya mempelajari sistem fluida ini, saya menggunakan beberapa software yaitu CFDSOF, sedikit dari Autodesk Inventor, dan juga OpenModelica. Dari semua yang sudah saya pelajari itu, saya diminta untuk melakukan analisis dengan tools tugas besar ini untuk memperdalam ilmu saya dalam analisa pada suatu sistem fluida dan disini saya akan menggunakan ketiga software OpenModelica untuk menganalisa Water Heating System yang ada pada library OpenModelica


Tujuan

Dari tugas ini, tujuan yang akan saya capai adalah memahami water heating system, mampu membuat pemodelan pada water heating system didalam OpenModelica, memahami parameter-parameter yang ada, mendapat hasil akhir yang didapat setelah melakukan simulasi


Metodologi

Metodologi yang akan saya gunakan adalah

1. Saya akan mempelajari terlebih dahulu model nyata atau flow diagram dari water heating system

2. Membuat model system di OpenModelica

3. Lalu saya menginput atau merubah parameter yang ada di dalam sistem ini

4. Simulasi

5. Jika terdapat error pada saat ingin simulasi atau pada saat tahap pengecekan, saya akan merubah parameter atau codingan yang ada

6. Jika tidak ada error, saya akan mendapatkan output yang saya inginkan


Konsep Water Heating System

Jadi dari gambar yang bisa dilihat dibawah dari simulasi water heating system yang ada di dalam library OpenModelica, pada sistem ini tahapannya adalah yang pertama air yang berada didalam tank atau biasanya torent dialirkan melalui pipa ke pompa yang ada dan dialirkan ke boiler pada sistem heaeter yang ada, lalu uap panas yang dihasilkan mengalir kembali melalui valve yang memiliki sensor terbuka dan tertutup, pada sistem ini setelah 2000 second simulasi, valve tersebut akan terbuka. Lalu akan mengalir ke radiator sebagai pengaturan temperature lagi untuk disalurkan lagi ke outflow yang ada.

Bagolz.jpg

Valve ini akan mengatur heating system yang ada dari terbuka dan tertutupnya valve ini. Selain valve, boiler (heater) dan pompa yang ada juga memiliki peran yang sangat penting untuk mengatur Temperature (T) dan juga Pressure (p)

Disini saya mencoba untuk meremodel sistem yang ada seperti gambar diatas, disana saya mencoba meremodel dari parameter pada T di heater dan juga T di Radiator untuk mengubah output Temperature yang dikeluarkan. Disini saya juga mengubah outflow dari radiator yang tadinya ke tanki awal kembali sekarang saya mengubahnya untuk mendistribusikan ke tanki lain.

Berikut merupakan pemodelan yang saya lakukan berikut juga dengan codingnya

99481.jpg

model Tubes_Sisflu 
replaceable package Medium =
     Modelica.Media.CompressibleLiquids.LinearWater_pT_Ambient
    constrainedby Modelica.Media.Interfaces.PartialMedium;
 Modelica.Fluid.Vessels.OpenTank tank(
   redeclare package Medium = Medium,
   crossArea=0.01,
   height=2,
   level_start=1,
   nPorts= 2,
   massDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial,
   use_HeatTransfer=true,
   portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=
       0.01),Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=
       0.01)},
   redeclare model HeatTransfer =
       Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=10),
   ports(each p(start=1.1e5)),
   T_start=Modelica.SIunits.Conversions.from_degC(13))
   annotation(
   Placement(visible = true, transformation(origin = {-83, 61}, extent = {{-9, -9}, {9, 9}}, rotation = 0)));
 inner Modelica.Fluid.System system annotation(
   Placement(visible = true, transformation(origin = {-89, 86}, extent = {{-11, -10}, {11, 10}}, rotation = 0)));
 Modelica.Fluid.Machines.ControlledPump Pompa(
   redeclare package Medium = Medium,
   N_nominal=1500,
   use_T_start=true,
   T_start=Modelica.SIunits.Conversions.from_degC(13),
   m_flow_start=0.01,
   m_flow_nominal=0.01,
   control_m_flow=false,
   allowFlowReversal=false,
   p_a_start=110000,
   p_b_start=130000,
   p_a_nominal=110000,
   p_b_nominal=130000)
    annotation(
   Placement(visible = true, transformation(origin = {-46, 26}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 Modelica.Fluid.Pipes.DynamicPipe Heater(
   redeclare package Medium = Medium,
   use_T_start=true,
   T_start=Modelica.SIunits.Conversions.from_degC(110),
   length=2,
   redeclare model HeatTransfer =
       Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer,
   diameter=0.01,
   nNodes=1,
   redeclare model FlowModel =
       Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow,
   use_HeatTransfer=true,
   modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b,
   p_a_start=130000)
    annotation(
   Placement(visible = true, transformation(origin = {28, 26}, extent = {{-14, -14}, {14, 14}}, rotation = 0)));
 Modelica.Thermal.HeatTransfer.Sources.FixedHeatFlow Burner(
   Q_flow=1.6e3,
   T_ref=373.15,
   alpha=-0.5)  
   annotation(
   Placement(visible = true, transformation(origin = {10, 68}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 Modelica.Fluid.Valves.ValveIncompressible Valve(
   redeclare package Medium = Medium,
   CvData=Modelica.Fluid.Types.CvTypes.OpPoint,
   m_flow_nominal=0.01,
   show_T=true,
   allowFlowReversal=false,
   dp_start=18000,
   dp_nominal=10000)
    annotation(
   Placement(visible = true, transformation(origin = {46, -72}, extent = {{10, -10}, {-10, 10}}, rotation = 0)));


 Modelica.Fluid.Pipes.DynamicPipe Radiator(
   use_T_start=true,
   redeclare package Medium = Medium,
   length=10,
   T_start=Modelica.SIunits.Conversions.from_degC(60),
   redeclare model HeatTransfer =
       Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer,
   diameter=0.01,
   nNodes=1,
   redeclare model FlowModel =
       Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow,
   use_HeatTransfer=true,
   modelStructure=Modelica.Fluid.Types.ModelStructure.a_v_b,
   p_a_start=110000,
   state_a(p(start=110000)),
   state_b(p(start=110000)))
    annotation(
   Placement(visible = true, transformation(origin = {-2, -72}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 Modelica.Thermal.HeatTransfer.Components.ThermalConductor wall(G = 1.6e3 / 20)  annotation(
   Placement(visible = true, transformation(origin = {-2, -48}, extent = {{10, -10}, {-10, 10}}, rotation = 90)));
 Modelica.Thermal.HeatTransfer.Sources.FixedTemperature fixedTemperature(T = system.T_ambient)  annotation(
   Placement(visible = true, transformation(origin = {-25, -25}, extent = {{-7, -7}, {7, 7}}, rotation = 0)));
 Modelica.Fluid.Sensors.MassFlowRate massFlowRate(redeclare package Medium = Medium)
  annotation(
   Placement(visible = true, transformation(origin = {-14, 26}, extent = {{-12, -12}, {12, 12}}, rotation = 0)));
 Modelica.Fluid.Sensors.Temperature temperature(redeclare package Medium = Medium)
  annotation(
   Placement(visible = true, transformation(origin = {60, 44}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 Modelica.Fluid.Sensors.Temperature temperature1(redeclare package Medium
     = Medium)
      annotation(
   Placement(visible = true, transformation(origin = {-40, -58}, extent = {{8, -8}, {-8, 8}}, rotation = 0)));
 Modelica.Blocks.Interfaces.RealOutput m_flow annotation(
   Placement(visible = true, transformation(origin = {3, 45}, extent = {{-5, -5}, {5, 5}}, rotation = 0), iconTransformation(origin = {-12, 50}, 
extent = {{-10, -10}, {10, 10}}, rotation = 0)));
   Modelica.Blocks.Sources.Step step annotation(
   Placement(visible = true, transformation(origin = {24, -42}, extent = {{-6, -6}, {6, 6}}, rotation = 0)));
  Modelica.Fluid.Pipes.DynamicPipe Pipa(
   redeclare package Medium = Medium,
   use_T_start=true,
   T_start=Modelica.SIunits.Conversions.from_degC(80),
   redeclare model HeatTransfer =
       Modelica.Fluid.Pipes.BaseClasses.HeatTransfer.IdealFlowHeatTransfer,
   diameter=0.01,
   redeclare model FlowModel =
       Modelica.Fluid.Pipes.BaseClasses.FlowModels.DetailedPipeFlow,
   length=10,
   p_a_start=130000)
    annotation(
   Placement(visible = true, transformation(origin = {72, -14}, extent = {{-16, -16}, {16, 16}}, rotation = -90)));
 Modelica.Fluid.Vessels.OpenTank tank1(
   redeclare package Medium = Medium,
   crossArea=0.01,
   height=2,
   level_start=1,
   nPorts= 2,
   massDynamics=Modelica.Fluid.Types.Dynamics.FixedInitial,
   use_HeatTransfer=true,
   portsData={Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=
       0.01),Modelica.Fluid.Vessels.BaseClasses.VesselPortsData(diameter=
       0.01)},
   redeclare model HeatTransfer =
       Modelica.Fluid.Vessels.BaseClasses.HeatTransfer.IdealHeatTransfer (k=10),
   ports(each p(start=1.1e5)),
   T_start=Modelica.SIunits.Conversions.from_degC(13)) annotation(
   Placement(visible = true, transformation(origin = {-83, -71}, extent = {{-11, -11}, {11, 11}}, rotation = 90)));
protected
Modelica.Blocks.Interfaces.RealOutput tanklevel annotation(
   Placement(visible = true, transformation(origin = {-56, 66}, extent = {{-10, -10}, {10, 10}}, rotation = 0), iconTransformation(origin = {-56, 
66}, extent = {{-10, -10}, {10, 10}}, rotation = 0)));
protected
 Modelica.Blocks.Interfaces.RealOutput T_forward annotation(
   Placement(visible = true, transformation(origin = {84, 44}, extent = {{-6, -6}, {6, 6}}, rotation = 0), iconTransformation(origin = {84, 42}, 
extent = {{-10, -10}, {10, 10}}, rotation = 0)));
 Modelica.Blocks.Interfaces.RealOutput T_return annotation(
   Placement(visible = true, transformation(origin = {-56, -58}, extent = {{6, -6}, {-6, 6}}, rotation = 0), iconTransformation(origin = {-44, -54},  
extent = {{-10, -10}, {10, 10}}, rotation = 0)));
equation
tanklevel = tank.level;
 connect(tank.ports[1], Pompa.port_a) annotation(
   Line(points = {{-82, 52}, {-80, 52}, {-80, 26}, {-56, 26}, {-56, 26}}, color = {0, 127, 255}));
 connect(Heater.port_b, Pipa.port_a) annotation(
   Line(points = {{42, 26}, {72, 26}, {72, 2}}, color = {0, 127, 255}));
 connect(Pipa.port_b, Valve.port_b) annotation(
   Line(points = {{72, -30}, {72, -72}, {36, -72}}, color = {0, 127, 255}));
 connect(step.y, Valve.opening) annotation(
   Line(points = {{30, -42}, {46, -42}, {46, -64}}, color = {0, 0, 127}));
 connect(Valve.port_b, Radiator.port_b) annotation(
   Line(points = {{36, -72}, {8, -72}, {8, -72}, {8, -72}}, color = {0, 127, 255}));
 connect(Pompa.port_b, massFlowRate.port_a) annotation(
   Line(points = {{-36, 26}, {-26, 26}}, color = {0, 127, 255}));
 connect(massFlowRate.port_b, Heater.port_a) annotation(
   Line(points = {{-2, 26}, {14, 26}}, color = {0, 127, 255}));
 connect(temperature.port, Heater.port_b) annotation(
   Line(points = {{60, 34}, {60, 34}, {60, 26}, {42, 26}, {42, 26}}, color = {0, 127, 255}));
 connect(temperature1.port, Radiator.port_a) annotation(
   Line(points = {{-40, -66}, {-40, -66}, {-40, -72}, {-12, -72}, {-12, -72}}, color = {0, 127, 255}));
 connect(massFlowRate.m_flow, m_flow) annotation(
   Line(points = {{-14, 40}, {-14, 44}, {3, 44}, {3, 45}}, color = {0, 0, 127}));
 connect(temperature.T, T_forward) annotation(
   Line(points = {{68, 44}, {76, 44}, {76, 45}, {81, 45}}, color = {0, 0, 127}));
 connect(temperature1.T, T_return) annotation(
   Line(points = {{-46, -58}, {-56, -58}}, color = {0, 0, 127}));
 connect(Radiator.port_a, tank1.ports[1]) annotation(
   Line(points = {{-12, -72}, {-72, -72}, {-72, -71}}, color = {0, 127, 255}));
connect(T_forward, temperature.T) annotation(
   Line(points = {{84, 44}, {68, 44}}, color = {0, 0, 127}));
connect(wall.port_b, Radiator.heatPorts[1]) annotation(
   Line(points = {{-2, -68}, {-2, -58}}, color = {191, 0, 0}));
connect(fixedTemperature.port, wall.port_a) annotation(
   Line(points = {{-18, -25}, {-2, -25}, {-2, -38}}, color = {191, 0, 0}));
connect(Burner.port, Heater.heatPorts[1]) annotation(
   Line(points = {{28, 32}, {28, 32}, {28, 68}, {20, 68}, {20, 68}}, color = {191, 0, 0}));
end Tubes_Sisflu;

Lalu dari pemodelan yang saya lakukan, saya menganalisis temperatur yang ada pada sistem tersebut dan saya simulasikan untuk mengetahui temperature yang ada setelah dipanaskan melalui heater dan di kontrol kembali pressure oleh valve dan juga temperature oleh radiator. Dan berikut merupakan hasil simulasi dari pemodelan saya.

MessageImage 1609946114218.jpg

Disini saya mendapatkan temperature fluida yang ada di tanki pertama adalah 20 derajat celcius, lalu setelah dipanaskan oleh heater menjadi 88 derajat celcius, lalu setelah di kontrol kembali di radiator, temperaturenya 64 derajat celcius yang akan disalurkan ke tanki berikutnya yang airnya diperuntukkan untuk kebutuhan


Jawaban UAS

بِسْمِ اللهِ الرَّحْمَنِ الرَّحِيْمِ

Berikut merupakan jawaban UAS Sistem Fluida 03 saya

BAGOL1.jpg

BAGOL2.jpg

BAGOL3.jpg