BAB 2 LANDASAN TEORI
2.1.
Dasar Perancangan Perangkat Lunak Menurut Pressman (2001, p6), perangkat lunak adalah (1) instruksi (program
komputer) yang ketika dieksekusi akan memberikan fungsi dan performa seperti yang diinginkan (2) struktur data yang memungkinkan program memanipulasi informasi secara proporsional, dan (3) dokumen yang menggambarkan operasi dan penggunaan program. Menurut Sommerville (2001, p6), perancangan perangkat lunak adalah disiplin perancangan yang berhubungan dengan semua aspek dari produksi perangkat lunak dari tahap awal spesifikasi sistem sampai dengan pemeliharaan setelah sistem dalam tahap berjalan.
2.1.1. Daur Hidup Perangkat Lunak Salah satu model perancangan perangkat lunak adalah dengan menggunakan model air terjun (waterfall model). Menurut Sommerville (2001, p45), tahap-tahap utama dalam model air terjun yang menggambarkan aktivitas dasar pengembangan perangkat lunak adalah sebagai berikut : -
Analisis dan penentuan kebutuhan. Tugas, kendala dan tujuan sistem ditentukan melalui konsultasi dengan pemakai sistem. Kemudian ditentukan cara yang dapat dipahami, baik oleh user maupun pengembang.
-
Desain sistem dan perangkat lunak.
11 Proses desain sistem terbagi dalam kebutuhan perangkat keras dan perangkat lunak. Hal ini menentukan arsitektur perangkat lunak secara keseluruhan. Desain perangkat lunak mewakili fungsi sistem perangkat lunak dalam suatu bentuk yang dapat ditransformasikan ke dalam satu atau lebih program yang dapat dieksekusi. -
Implementasi dan pengujian unit. Dalam tahap ini, desain perangkat lunak direalisasikan dalam suatu himpunan program atau unit-unit program. Pengujian unit mencakup kegiatan verifikasi terhadap suatu unit sehingga memenuhi syarat spesifikasinya.
-
Integrasi dan pengujian sistem. Unit program secara individual diintegrasikan dan diuji sebagai satu sistem yang lengkap untuk memastikan bahwa kebutuhan perangkat lunak telah terpenuhi. Setelah pengujian, sistem perangkat lunak disampaikan kepada user.
-
Pengoperasian dan pemeliharaan. Secara normal, walaupun tidak selalu diperlukan, tahap ini merupakan bagian siklus hidup yang terpanjang. Sistem telah terpasang dan sedang dalam penggunaan. Pemeliharaan mencakup perbaikan kesalahan yang tidak ditemukan dalam tahap-tahap sebelumnya, meningkatkan implementasi unit-unit sistem dan mempertinggi pelayanan sistem yang disebabkan oleh ditemukannya kebutuhan baru.
12
ANALISIS DESAIN CODING DAN DEVELOPMENT IMPLEMENTASI TESTING
MAINTENANCE
Gambar 2.1. Model Waterfall Sumber : Sommerville, I. (2001). Software Engineering (6th ed.) Addison Wesley Publishing Limited, Harlow
2.2.
Interaksi Manusia dan Komputer Pengertian dari Interaksi Manusia dengan Komputer (Human-Computer
Interaction) adalah disiplin ilmu yang berhubungan dengan perancangan, evaluasi implementasi sistem komputer interaktif yang digunakan oleh manusia serta studi fenomena-fenomena besar yang berhubungan dengannya (Shneiderman, 1992, p8). Suatu program aplikasi komputer penting sekali untuk didukung oleh sistem interaksi manusia komputer yang baik. User harus merasa tidak dipersulit dalam menggunakan aplikasi tersebut. Jika perancangan program aplikasi kurang baik, maka hal tersebut dapat menimbulkan rasa enggan pada pengguna untuk menggunakannya. Hal ini dapat mengakibatkan tujuan program aplikasi tersebut menjadi tidak tercapai.
13 Menurut Shneiderman (1992, p15-18), ada lima kriteria yang harus dimiliki oleh suatu program sehingga dapat berinteraksi dengan baik dan bersifat user friendly, yaitu : 1. memiliki waktu belajar yang relatif singkat 2. mampu menyajikan informasi yang diperlukan dengan tepat dan jelas 3. mudah untuk dioperasikan oleh user 4. kemudahan untuk mengingat program tersebut walaupun telah lama tidak mengoperasikannya 5. kepuasan pribadi Menurut Shneiderman (1992, p72), untuk merancang sebuah sistem interaksi manusia dan komputer yang baik ada delapan aturan yang harus diperhatikan, yaitu : 1. Bertahan untuk konsisten (strive for consistency) 2. Memperbolehkan user untuk menggunakan jalan pintas (enable frequent user to use shortcuts) 3. Memberikan umpan balik yang informatif (offer informative feed back) 4. Pengorganisasian yang baik sehingga pengguna mengetahui kapan awal dan akhir dari suatu aksi (design dialogs to yield closure) 5. Pengguna mampu mengetahui dan menangani kesalahan dengan mudah (offer simple error handling) 6. Memperbolehkan pengguna mengulangi atau memperbaiki suatu aksi yang telah dilakukannya (permit easy reversal of actions) 7. Pengguna mampu aktif dalam mengambil langkah selanjutnya bukan hanya merespon pesan yang muncul (support internal locus of control)
14 8. Mengurangi
penghapalan
jangka
pendek
bagi
pengguna
dengan
memperhatikan kaidah ingatan manusia yang terbatas (reduce short term memory load)
2.3.
Diagram Alir (flowchart) Diagram alir adalah sebuah skema yang merepresentasikan sebuah algoritma
atau sebuah proses (http://en.wikipedia.org/wiki/Flowchart). Adapun simbol-simbol dari diagram alir yang digunakan dalam ilmu komputer seperti pada gambar 2.2.
Simbol untuk mulai dan selesai Simbol untuk menentukan aliran data yang dilakukan Simbol untuk langkah proses
Simbol untuk input ataupun output
Simbol untuk merepresentasikan sebuah kondisi atau keputusan. Biasanya berisi pertanyaan ya/tidak atau test benar/salah Gambar 2.2. Simbol-simbol Diagram Alir Sumber :http://en.wikipedia.org/wiki/Flowchart
15 2.4.
Simulasi Simulasi dari suatu sistem adalah suatu bentuk model operasi sistem tersebut.
Simulasi dibuat sebelum suatu sistem dirubah atau dibangun dengan tujuan mencegah terjadinya
kesalahan
konfigurasi
dan
memprediksi
kemungkinan-kemungkinan
terjadinya bottleneck. Bentuk-bentuk simulasi yang biasa digunakan dalam sistem komputer ada tiga seperti yang diungkapkan oleh Lilja(2003, p183-185) yaitu : 1.
Discrete-event Simulation, suatu simulasi yang didasarkan pada satuan waktu yang discrete.
2.
Emulation, simulasi operasi yang dilakukan dalam lingkungan yang berbeda dengan aslinya.
3.
Monte-Carlo Simulation, simulasi yang berubah sepanjang waktu (continue) hingga mencapai equilibrium.
Pemilihan jenis simulasi yang tepat dapat ditentukan pada tahap pembuatan model. Secara umum simulasi cocok diterapkan dalam menganalisis sifat acak suatu sistem. Secara lebih spesifik lagi, suatu sistem dapat disimulasikan jika : •
Mustahil atau mahal melakukan observasi dan percobaan pada sistem yang nyata.
•
Masalah dapat dirumuskan secara matematik tetapi mustahil dipecahkan secara analitis.
•
Sulitnya membangun model matematis yang mungkin diakibatkan kurangnya pengumpulan data.
Menurut Fishwick (1995, p1), simulasi komputer adalah disiplin ilmu mengenai : perancangan sebuah model dari suatu sistem fisik, eksekusi model pada komputer
16 digital, dan analisis hasil eksekusi. Untuk dapat mempelajari sebuah sistem harus terlebih dahulu dibuat modelnya dan dijalankan, sehingga dengan demikian dapat dimengerti realitas dan semua kompleksitas yang mungkin dihadapi pada sistem tersebut Simulasi digunakan untuk meminimalkan risiko dari besarnya biaya yang harus dikeluarkan dan kesalahan-kesalahan fatal dalam dunia nyata. Simulasi menghindari pemborosan biaya, pemborosan waktu, dan kerusakan akibat teknik tradisional trialand-error. Faktanya, simulasi menyediakan sebuah metode analisis yang tidak hanya formal dan prediktif, tapi juga dapat mengevaluasi dengan akurat performansi dari sistem yang paling kompleks sekalipun.
2.4.1. Tahapan Kerja Simulasi Setelah
permasalahan
simulasi
ditentukan,
langkah
selanjutnya
adalah
menjalankan simulasi dari permasalahan tersebut. Menurut Fishwick terdapat beberapa kegiatan pokok dalam menjalankan simulasi yaitu : •
Pembuatan model. Model adalah representasi dari sistem nyata yang diperoleh dari observasi maupun pengetahuan tentang sistem yang akan dimodelkan.
•
Eksekusi dari model. Model yang sudah ada diformulasikan dalam algoritma untuk dieksekusi oleh komputer.
•
Analisis hasil output. Merupakan suatu proses interpretasi dari hasil output simulasi. Tahapan-tahapan di atas dapat dilihat pada gambar di bawah ini :
17
Real World
Simulation Study
System Under Study
Simulation Model
Simulation Experiment
Simulation Analysis Conclusions Altered system Gambar 2.3. Tahapan dalam Simulasi Sumber : Fishwick, P.A. (1995). Simulation Model Design and Execution : Building Digital Worlds. Prentice Hall, New Jersey.
2.4.2. Pembangunan Model Suatu Sistem Model adalah representasi dari sistem sesungguhnya dalam bentuk formulasi matematik sehingga tidak menimbulkan ambiguitas. Setiap model yang dibangun harus berdasarkan masalah. Para perancang simulasi harus benar-benar paham tentang sistem dan permasalahannya sehingga dapat memilih tingkat abstraksi yang sesuai dengan permasalahan. Untuk mengetahui masalah secara tepat, Kelton (1997, p8) telah merumuskan beberapa tahapan kerja dalam membangun suatu model, yaitu :
18 •
Identifikasi
masalah,
disini
diperlukan
menulis
semua
penyebab
permasalahan dan menghasilkan kebutuhan program untuk mensimulasikan sistem tersebut. •
Perumusan dari masalah, harus membatasi permasalahan dimana yang akan disimulasikan mana yang tidak. Dari sini kita dapat menentukan tingkat abstraksi dari model, data-data yang akan dikumpulkan, dan hasil output yang ingin dituliskan.
•
Pengumpulan data baik performa sistem nyata, mencari sumber dari sifat acak pada sistem, dan sebaran dari sifat acak tersebut. Pada sistem komputer, kita selalu melakukan observasi terlebih dahulu dalam merancang simulasi.
•
Pembangunan model dengan diagram alur atau dengan gambar dan simbolsimbol.
Perlu diingat bahwa model tidak akan mampu meniru sepenuhnya sistem yang ada. Hal yang terpenting, model harus menangkap apa saja yang penting dalam perhitungan performa yang dibuat. Dalam pembuatan model ada dua cara pandang yang biasanya digunakan yaitu : •
Sintesis, dari cara kerja detil dari sistem kita berusaha meringkas dan mengelompokkan komponen-komponen tersebut sehingga semakin tinggi tingkat abstraksinya.
•
Dekomposisi, cara kerja dekomposisi terbalik dari sintesis. Disini kita melihat suatu sistem sebagai satuan yang utuh lalu memecah-mecah menjadi beberapa bagian yang relevan untuk dimodelkan.
19 Sintesis sering digunakan jika kita mengetahui secara mendetil kerja dari sistem yang diamati, sementara dekomposisi lebih banyak digunakan untuk memodelkan sistem yang besar dan kompleks. Namun menurut MacDougall(1986, p70) lebih baik menggunakan cara dekomposisi sehingga level abstraksi kita akan selalu berorientasi pada performa yang akan diukur. Selanjutnya, model yang telah selesai digunakan dalam sistem komputer baik dengan menggunakan bahasa pemrograman ataupun dengan software simulasi.
2.4.3. Verifikasi dan Validasi Dari Model Setelah model selesai dibangun dan diimplementasikan, kita harus melakukan verifikasi program yang dibuat apakah sudah sesuai dengan model yang kita bangun. Disini kita melakukan debugging dan tracing dari program untuk menguji dan mencari kesalahan-kesalahan dari program yang dibuat. Setelah program kita lulus verifikasi, langkah selanjutnya adalah melakukan validasi program, apakah mampu menjawab persoalan yang ingin dipecahkan. Biasanya kita menggunakan statistik perbandingan untuk melihat tingkat ketepatan simulasi, dan melakukan presentasi di depan para ahli untuk menambah tingkat kepercayaan dari simulasi yang kita bangun.
2.4.4. Eksekusi Simulasi Setelah model selesai dan diyakini tepat, selanjutnya kita tinggal menjalankan simulasi. Perlu diingat, simulasi hanya tiruan dari sistem sesungguhnya dan melibatkan variabel stokastik. Menjalankan simulasi sekali atau tanpa skenario yang jelas tidak akan
20 membawa hasil yang bermanfaat bagi kita. Beberapa langkah yang harus dipersiapkan sebelum menjalankan simulasi adalah : •
Memilih desain eksperimen yang jelas, disini kita memilih hasil output yang akan diamati dan mengamati input-input yang penting didalam sistem.
•
Memilih skenario pengujian dan waktu pengujian. Disini kita harus memperhatikan beberapa kali simulasi dijalankan. Kita harus mengumpulkan data dalam beberapa kali jalan untuk mendapatkan interval kepercayaan dari hasil yang kita peroleh.
•
Menjalankan simulasi sesuai dengan skenario yang telah dibuat.
Hasil-hasil simulasi harus didokumentasikan untuk diolah lebih lanjut dan diintepretasikan.
2.4.5. Analisis Hasil Output Simulasi Simulasi sering kali memberi hasil yang sangat bias dengan sistem sebenarnya. Hal ini terjadi karena anggapan banyak orang bahwa membuat dan mengeksekusi sudah cukup untuk merepresentasikan sistem. Padahal simulasi perlu dijalankan beberapa kali karena mengandung variabel yang bersifat stokastik. Menurut Kelton (1997, p8), simulasi harus dijalankan berkali-kali atau lebih baik jika dijalankan hingga mencapai kondisi steady-state. Tapi untuk mencapai kondisi steady-state dibutuhkan analisis statistik yang lebih rumit dalam jangka waktu yang lebih panjang. Solusi termudahnya, kita menjalankan simulasi secara fixed-time dalam beberapa kali run, hasil dari simulasi dapat kita presentasikan dalam selang kepercayaan.
21 2.5.
Hukum Newton II Bila gaya resultan F yang bekerja pada suatu benda dengan massa m tidak sama
dengan nol, maka benda tersebut mengalami percepatan ke arah yang sama dengan gaya. Percepatan a berbanding lurus dengan gaya dan berbanding terbalik dengan massa benda. Dengan F dalam Newton, m dalam kilogram, dan a dalam m/(detik)2, perbandingan ini dapat ditulis sebagai suatu persamaan : a=
F m
atau
F = m.a
Bila persamaan ini atau yang lainnya yang diturunkan dari persamaan ini digunakan, maka F, m dan a harus menggunakan satuan-satuan gaya yang benar. Percepatan a mempunyai arah yang sama dengan F. Persamaan vektor F = m.a dapat ditulis dalam suku-suku komponen seperti : ∑ Fx = m.ax
∑ Fy = m.ay
∑ Fz = m.az
dimana gaya-gaya adalah komponen-komponen gaya eksternal yang bekerja pada benda.
2.6.
Dorongan Jet Dorongan jet adalah penerapan menarik hukum ketiga Newton dan kekekalan
momentum. Hal ini, misalnya, adalah cara yang dipakai cumi-cumi atau gurita untuk mendorong diri mereka. Mereka mengeluarkan air dari tubuh mereka dengan gaya yang besar, dan air yang dikeluarkan mengerjakan gaya yang sama dan berlawanan pada cumi-cumi atau gurita, mendorongnya ke depan. Sebuah roket mendapatkan dorongan dengan membakar bahan bakar dan membuang gas yang terbentuk lewat belakang. Roket mengerjakan gaya pada gas buang, dan dari hukum ketiga Newton, gas mengerjakan gaya yang sama dan berlawanan pada roket, mendorongnya ke depan.
22 Momentum yang hilang karena gas yang dikeluarkan sama dengan momentum yang diperoleh roket. Suatu salah pengertian yang sering terjadi sebelum roket di ruang angkasa menjadi hal yang biasa adalah bahwa roket membutuhkan udara untuk mendorongnya. Ini tidak benar, roket mendorong melawan gas buangnya sendiri, yang mendorong kembali melawan roket tersebut. Dorongan jet malah lebih efisien di ruang kosong yang tidak ada hambatan udara.
2.7.
Roket Roket merupakan kendaraan, misil atau pesawat udara yang menghasilkan gaya
dorong dari reaksi penyemburan cairan dan gas yang bergerak cepat dari dalam mesin roket. Roket digunakan untuk petasan, persenjataan, peluncuran satelit buatan, penerbangan dan penjelajahan ke planet-planet lainnya. Walaupun roket tidak efisien karena kecepatan yang rendah, bila dibandingkan dengan sistem pendorong lainnya, roket sangat ringan, bertenaga, dan mampu mencapai ketinggian yang luar biasa. Gaya-gaya yang bekerja pada roket terdiri dari tiga bagian, antara lain : 1. Gaya Dorong (thrust) Gaya dorong pada roket dihasilkan dari spesifikasi mesin. Pada kenyataannya, gaya dorong tidak konstan selama pembakaran tetapi selalu berubah-ubah. Biasanya hal ini memiliki efek yang kecil pada pencapaian ketinggian tetapi memberikan efek yang penting pada awal peluncuran. Hukum Newton kedua bekerja pada gaya dorong dimana gaya yang dihasilkan dari massa m dikalikan dengan percepatan a. F=m.a
23 Percepatan a merupakan turunan dari kecepatan v terhadap waktu t, sehingga dapat ditulis menjadi : F=m.a = m.
dV dt
Pada roket umumnya, gaya yang bekerja : F = mo . go . Isp
mo
= massa total roket (massa roket dengan massa propelan)
go
= gaya gravitasi (9,8 m/s2)
Isp
= Impuls spesifik (220 s)
Impuls spesifik merupakan parameter yang menunjukkan kinerja roket. Ukuran standar yang digunakan oleh LAPAN adalah 220 s. Tiap roket memiliki impuls spesifik yang berbeda-beda. Namun, secara umum, Lapan menggunakan ukuran impuls spesifik yang standar. 2. Gaya Gravitasi Gaya gravitasi yang bekerja adalah gaya yang konstan, menuju ke bawah dan bernilai negatif. Bernilai negatif karena membawa roket ke bawah, maka dari itu nilainya selalu mengurangi ketinggian yang dicapai. Seperti yang ditunjukkan oleh Galileo dengan menjatuhkan benda dari Pisa, percepatan dari gaya gravitasi hasilkan adalah sama untuk semua benda berapa pun massanya, yaitu senilai dengan 9,8 m/s2. 3. Gaya Hambatan (drag) Gaya hambatan merupakan gaya tahan angin, gaya hambatan ini dirasakan ketika roket meluncur di udara. Artinya gaya tahan angin selalu bertolak
24 belakang dengan arah gerak roket, baik arah roket ke atas maupun ke bawah. Sehingga gaya hambatan yang bekerja ke bawah adalah negatif selama roket meluncur ke atas dan gaya hambatan yang bekerja ke atas adalah positif selama roket menurun.
Gambar 2.4. Gaya-gaya yang Bekerja Pada Roket Sumber : http://my.execpc.com/~culp/rockets/rckt_sim.html
2.7.1.
Perhitungan Gaya Roket Proses simulasi trayektori ini dibagi menjadi tiga tahap, yaitu :
1.
Tahap input Pada tahap ini, diperlukan beberapa inputan seperti : •
Massa roket
= mo (kg)
•
Massa propelan
= mp (kg)
•
Diameter roket
= d (m)
25 •
Interval waktu
= time (s)
•
Derajat serang
= ө (theta)
•
Waktu pembakaran
= tp (s)
Semua inputan ini diperlukan untuk dilanjutkan pada tahap proses selanjutnya. 2.
Tahap proses Setelah semua input dipenuhi, dilanjutkan dengan tahap proses perhitungan. Massa propelan (massa bahan bakar roket) dihitung dengan membagi waktu pembakaran (time burning), sehingga menghasilkan
m&p (dibaca : m dot). Tiap roket memiliki waktu pembakaran masingmasing. Sehingga muncul perhitungan seperti :
m&p =
mp tb
Setelah massa propelan diperoleh, dilanjutkan dengan menghitung luas permukaan (A) roket dengan perhitungan seperti :
⎞ ⎛1 A = π × ⎜ × D⎟ ⎠ ⎝2
2
Pada roket, berlaku rumus : F = mo . go . Isp dimana, mo
= massa total roket (massa roket dengan massa propelan)
go
= gaya gravitasi (9,8 m/s2)
Isp
= Impuls spesifik (220 s)
26 Setelah massa propelan dan luas permukaan roket diketahui, dilanjutkan dengan menghitung gaya hambat terhadap aliran massa roket dan massa propelan yang sudah dikalikan dengan waktu pembakaran (time burning), seperti :
1 * ρ * Cd * V 2 * A 2
D=
m = mo − m&p .t p Sehingga didapat rumus gaya hambat : 1 × ρ × Cd × V 2 × A D 2 gd = = m mo − m&p t p Theta / sudut serang (ө) luncuran roket dapat ditentukan sendiri oleh user. Interval pada grafik dapat ditentukan pula oleh user. Biasanya menggunakan interval 0,1 karena memiliki ketepatan nilai pada perhitungan trayektori roket. Gaya-gaya yang bekerja pada roket umumnya dapat digambarkan seperti ini : Y
F sin ө ө
D cos ө D
F cos ө D sin ө
X
m.go
Gambar 2.5. Gaya-gaya yang Bekerja Pada Roket
27 Untuk memudahkan perhitungan pada tahap proses, dapat dibagi menjadi tiga bagian yaitu : a.
Tahap Pertama Y tb
0
X
Gambar 2.6. Trayektori Tahap Pertama Tahap pertama adalah tahap dimana roket meluncur dengan bantuan gaya dorong (thrust), yang mana akan membakar massa propelan. Massa propelan akan terbakar habis terhadap waktu pembakaran (time burning) yang mana penentuan waktunya sudah diuji sebelumnya. Pada tahap pertama ini, perhitungan yang berlaku adalah : tp Vx =
∫ 0
=
(m
o
− m&p .t )
mo × g o × I sp × cos θ m&p
tp Vy =
mo × g o × I sp × cos θ
∫ 0
t p 1 × ρ × C × V 2 × A × cos θ d dt − ∫ 2 dt (mo − m&p .t ) 0
⎛ mo ln⎜ ⎜ m − m& .t p p ⎝ o
mo × g o × I sp × sin θ
(m
o
− m&p .t )
1 2 ⎞ 2 × ρ × C d × V × A × cos θ ⎛ mo ⎟− ln⎜ ⎟ ⎜ m&p ⎠ ⎝ mo − m&p .t p
t p 1 × ρ × C × V 2 × A × sin θ tp d 2 dt − ∫ dt − ∫ g o dt (mo − m&p .t ) 0 0
⎞ ⎟ ⎟ ⎠
28
=
V =
mo × g o × I sp × sin θ m&p
(V
2 x
+ Vy
2
⎛ mo ln⎜ ⎜ m − m& .t p p ⎝ o
1 2 ⎞ 2 × ρ × C d × V × A × sin θ ⎛ mo ⎟− ln⎜ ⎟ ⎜ m&p ⎠ ⎝ mo − m&p .t p
)
X = Vx × t p Y = Vy × t p ⎛ Vy ⎝ Vx
θ = arc tan ⎜⎜
⎞ ⎟⎟ ⎠
Theta / sudut serang (ө) merupakan ukuran sudut yang menentukan posisi dari pergerakan roket. Biasanya besaran sudut akan selalu berkurang sesuai dengan pergerakan roket sehingga membentuk gerakan parabolik. mo adalah variabel massa total roket dengan massa propelan yang sudah dikalikan dengan waktu pembakaran (time burning). Setiap perulangan interval, nilai mo selalu berubah yaitu nilai mo awal dikurangi dengan nilai dari massa propelan yang sudah dikalikan dengan interval (konstan). Sehingga nilai mo yang baru adalah nilai mo yang sebelumnya. Proses ini akan berulang-ulang sampai waktu pembakaran (time burning) tercapai. b.
Tahap Kedua
⎞ ⎟ − g ot p ⎟ ⎠
29
Y
Vy = 0
h =Y max 0
X
Gambar 2.7. Trayektori Tahap Kedua Setelah proses tahap pertama selesai, dilanjutkan pada proses tahap kedua. Pada tahap ini, massa propelan sudah habis digunakan sebagai tenaga dorong roket. Massa yang tersisa adalah tinggal massa roket saja. Sisa-sisa tenaga dari tenaga dorong roket tadi masih terus berlanjut, hanya saja kecepatan Vy nya berkurang sedikit demi sedikit hingga mencapai Vy = 0. Pada kondisi ini, posisi roket sudah pada ketinggian (Y) maksimum. Untuk perhitungannya, masih menggunakan perhitungan yang sama dengan di tahap pertama. Hanya saja, mo yang digunakan adalah mo yang konstan (tidak dikurangi lagi dengan massa propelan yang sudah dikalikan dengan interval), dimana nilai mo terakhir pada saat tercapainya waktu pembakaran (time burning). Selain itu, Isp (impuls spesifik) tidak berlaku lagi karena impuls spesifik digunakan hanya pada saat massa propelan digunakan (tahap pertama). c.
Tahap Ketiga
30
Y
Vy = 0
h =Y maksimum
0
X Jarak (X) maksimum
Gambar 2.8. Trayektori Tahap Ketiga Setelah Vy = 0, dilanjutkan pada proses tahap ketiga dimana merupakan tahap terakhir dari perhitungan trayektori roket. Pada tahap ini, roket meluncur ke bawah. Kecepatan Vy akan terus bertambah tetapi bernilai negatif karena menuju ke arah gravitasi bumi. Pada tahap ini, impuls spesifik (Isp) tidak digunakan lagi (bernilai 0) karena impuls spesifik hanya berlaku pada saat tahap pertama, yaitu digunakan bersamaan dengan terpakainya massa propelan sebagai tenaga dorong roket. Untuk perhitungannya, masih menggunakan perhitungan yang sama dengan tahap pertama, sekaligus memperhatikan gaya-gaya yang berlaku di tahap ketiga ini, seperti :
Vx =
mo × g o × I sp × cos θ m&p
⎛ mo ln⎜ ⎜ m − m& .t p p ⎝ o
1 2 ⎞ 2 × ρ × C d × V × A × cos θ ⎛ mo ⎟− ln⎜ ⎟ ⎜ m&p ⎠ ⎝ mo − m&p .t p
1 × ρ × C d × V 2 × A × cos θ ⎛ mo 2 =0− ln⎜ ⎜ m&p ⎝ mo − m&p .t p
⎞ ⎟ ⎟ ⎠
⎞ ⎟ ⎟ ⎠
31
Vy =
m o × g o × I sp × sin θ m&p
⎛ mo ln⎜ ⎜ m − m& .t p p ⎝ o
1 2 ⎞ 2 × ρ × C d × V × A × sin θ ⎛ mo ⎟− ln⎜ ⎟ ⎜ m&p ⎠ ⎝ m o − m&p .t p
1 × ρ × C d × V 2 × A × sin θ ⎛ mo 2 = 0− ln⎜ ⎜ m&p ⎝ m o − m&p .t p
V =
(V
2 x
+ Vy
2
⎞ ⎟ − g ot p ⎟ ⎠
)
X = Vx × t p Y = Vy × t p ⎛ Vy θ = arc tan ⎜⎜ ⎝ Vx
3.
⎞ ⎟⎟ ⎠
Tahap Output Setelah semua tahap proses dihitung, hasil outputnya adalah berupa simulasi trayektori roket berbentuk parabolik disertai dengan hasil perhitungan berupa tabel. Isi dari tabel antara lain : •
Waktu (t)
•
Sudut serang (ө)
•
Massa jenis udara ( ρ )
•
X
•
Y
•
Vx
•
Vy
•
V
⎞ ⎟ − got p ⎟ ⎠
32 2.8.
Java
Programer menuliskan instruksi-instruksi dalam berbagai macam bahasa pemograman, beberapa dapat dimengerti secara langsung oleh komputer dan beberapa lagi membutuhkan langkah-langkah penerjemahan. Ratusan bahasa komputer digunakan saat ini. Jenis bahasa pemograman ini dapat dibagi menjadi tiga bagian utama yaitu : •
Bahasa Mesin
•
Bahasa Rakitan
•
Bahasa Tingkat Tinggi
Semua komputer hanya dapat mengerti secara langsung bahasa mesinnya sendiri. Bahasa mesin adalah bahasa alami yang merupakan bagian dari komputer. Hal ini didefinisikan oleh rancangan perangkat keras dari komputer. Bahasa komputer secara umum terdiri dari sederetan angka-angka (yang akhirnya diubah menjadi 0 dan 1). Pemograman bahasa mesin terlalu lambat dan membosankan bagi kebanyakan programer. Daripada menggunakan serangkaian angka yang komputer dapat pahami langsung, programer mulai menggunakan penyingkatan kata dalam bahasa Inggris untuk mewakili operasi dasar. Bentuk penyingkatan ini merupakan dasar dari bahasa rakitan. Program penerjemah disebut rakitan dikembangkan untuk mengubah bahasa pemograman rakitan menjadi bahasa mesin pada kecepatan komputer. Penggunaan komputer berkembang pesat dengan datangnya bahasa rakitan, tetapi membuat program dengan bahasa ini masih membutuhkan banyak instruksi untuk menyelesaikan bahkan untuk tugas yang sederhana.
33 Untuk mempercepat proses pemograman, bahasa tingkat tinggi dikembangkan dimana pernyataan tunggal dapat dituliskan untuk menyelesaikan tugas yang banyak. Penerjemah program yang mengubah program bahasa tingkat tinggi menjadi bahasa mesin disebut dengan compiler. Jelas sekali, bahwa bahasa tingkat tinggi lebih diperlukan oleh para programer daripada bahasa mesin atau bahasa rakitan. C, C++, Java merupakan di antara yang paling luas penggunaannya untuk bahasa pemograman tingkat tinggi. Sun Microsytems mendanai sebuah proyek penelitian internal yang diberi nama Green pada tahun 1991. Proyek ini menghasilkan pengembangan dari C++, bahasa dasar menurut penciptanya, James Gosling, menamai Oak setelah sebuah pohon oak berada di luar jendela di gedung Sun. Hal ini kemudian ditemukannya bahwa bahasa komputer yang sudah siap dinamakan dengan Oak. Ketika sejumlah kelompok orang Sun berkunjung pada kedai kopi setempat, penamaan Java dianjurkan, kemudian menemui jalan buntu. Proyek Green menemui beberapa kesulitan. Pemasaran untuk pemakaian peralatan elektronik pintar tidak berkembang seperti yang telah diantisipasi Sun. Buruknya lagi, kontrak utama yang diperjuangkan oleh Sun diberikan kepada perusahaan yang lain. Proyek pun terancam gagal. Dengan sedikit keberuntungan, World Wide Web mencapai popularitasnya pada tahun 1993, kemudian karyawan Sun melihat kesempatan untuk menggunakan Java untuk menambah isi yang dinamik dan animasianimasi pada halaman web. Hal ini membawa harapan pada proyek. Sun secara resmi mengumumkan Java di konferensi utama pada Mei 1995. Biasanya, peristiwa seperti ini tidak menarik banyak peminat. Namun, Java tiba-tiba menarik perhatian bagi komunitas bisnis karena peristiwa yang fenomenal pada World
34 Wide Web. Java sekarang digunakan untuk mengembangkan aplikasi perusahaan berskala besar untuk memperluas penggunaan server World Wide Web, untuk menyediakan aplikasi bagi pengguna alat (seperti telepon genggam, pager, dan PDA), serta untuk kegunaan lainnya. Program Java terdiri dari bagian-bagian yang disebut dengan classes. Di dalam classes terdapat bagian-bagian lagi yang disebut dengan methods yang menampilkan tugas-tugas dan mengembalikan informasi setelah menyelesaikan tugas-tugasnya. Kebanyakan programer Java mengetahui classes yang ada melalui Java class libraries, yang mana dikenal sebagai Java APIs (Application Programming Interfaces). Secara umum, program Java melewati lima fase untuk dijalankan yaitu edit, compile, load, verify dan execute.
Gambar 2.9. Lima Fase Java Secara Umum
35