TUGAS AKHIR PROGRAM PEMBELAJARAN TRAFIK Diajukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Program Studi Teknik Elektro Oleh : VICTORIA ANGELINA ASA SMITH NIM : 055114015 PROGRAM STUDI TEKNIK ELEKTRO FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2011 i FINAL PROJECT TRAFFIC LEARNING PROGRAM Presented as Partial Fulfillment of the Requirements To Obtain the Sarjana Teknik Degree In Electrical Engineering Study Program VICTORIA ANGELINA ASA SMITH 055114015 ELECTRICAL ENGINEERING STUDY PROGRAM SCIENCE AND TECHNOLOGY FACULTY SANATA DHARMA UNIVERSITY YOGYAKARTA 2011 ii iii iv v HALAMAN PERSEMBAHAN DAN MOTO HIDUP vi MOTTO: WHERE THERE IS A WILL, THERE IS A WAY Skripsi ini kupersembahkan untuk….. Yesus Kristus sumber kekuatanku Papa dan Mama tercinta Adik-adikku yang terkasih vii viii INTISARI Perhitungan trafik dalam sebuah sistem telekomunikasi bertujuan untuk menentukan jumlah trunk yang terlayani dalam menangani volume trafik yang terjadi pada selang waktu tertentu, dan nilai grade of service. Perhitungan trafik seringkali dilakukan dengan cara manual yang memiliki kekurangan dalam efisiensi waktu. Program Pembelajaran Trafik akan membantu mahasiswa teknik elektro khususnya konsentrasi telekomunikasi dalam melakukan perhitungan trafik secara efisien dan akurat, agar dapat bermanfaat bagi mahasiswa teknik elektro khususnya konsentrasi telekomunikasi dalam memahami sistem telekomunikasi. Rancangan penelitian pada program pembelajaran trafik terdiri atas dua bagian yaitu diagram alir (flow chart) dan tampilan program. Diagram alir (flow chart) dapat menjelaskan alur perancangan program pembelajaran trafik, dan tampilan program dibuat secara sederhana agar dapat mempermudah pengguna yang akan menggunakan program pembelajaran trafik. Rancangan penelitian pada program pembelajaran trafik dibuat sesuai dengan tujuan penelitian yaitu menghasilkan suatu sistem yang dapat menentukan jumlah trunk yang terlayani dan nilai grade of service. Program pembelajaran trafik sudah berhasil dibuat dan dan dapat bekerja dengan baik. Keluaran pada program dapat menghitung intensitas trafik, grade of service serta dapat menentukan jumlah trunk yang terlayani sesuai dengan perancangan. Tampilan program pembelajaran trafik belum menyertakan ilustrasi mengenai proses pada jaringan telekomunikasi, sehingga masih dapat dikembangkan agar menjadi lebih menarik. Kata kunci : Trafik, grade of service, jumlah trunk ix ABSTRACT The calculation of traffic in a telecommunications system aims to conclude the number of trunks required to handle the volume of traffic that occur at specified intervals, and the grade of service. Calculation of traffic is often done by hand that have a deficiency in time efficiency. Traffic Learning Program will assist students in electrical engineering, especially the concentration of telecommunications in calculating traffic efficiently and accurately, in order to be useful to students of telecommunications, electrical engineering, especially the concentration of telecommunication in understanding telecommunications systems. The research design on traffic learning program consists of two parts, namely flow chart and the display program. Flow chart to explain the traffic flow design of learning programs, and the display is made in a simple program to make it easier for users who will use the learning program traffic. The research design on traffic learning program made in accordance with the purpose of this study was to produce a system that can calculate the grade of service and can conclude the number of trunks required. The traffic learning program has been created and and can work well. Output in the program can calculate the intensity of traffic, the grade of service and can conclude the number of trunk in accordance with the scheme. Display traffic learning program does not yet include an illustration of the process in the telecommunication network, which still can be developed to become more attractive. Key words : Traffic, number of trunks, grade of service x KATA PENGANTAR Syukur dan terima kasih kepada Tuhan Yesus Kristus dan santa perawan Maria atas segala rahmat dan karunia-Nya sehingga tugas akhir dengan judul “Program Pembelajaran Trafik” ini dapat diselesaikan dengan baik. Selama menulis tugas akhir ini, penulis menyadari bahwa ada begitu banyak pihak yang telah memberikan bantuan dengan caranya masing-masing, sehingga tugas akhir ini bisa diselesaikan. Oleh karena itu penulis ingin mengucapkan terima kasih kepada: 1. Kedua orang tua yang tercinta atas doa dan kepercayaan yang diberikan kepada penulis. 2. Adik-adik tercinta, Armando, Olivia, dan Gisella. 3. Ibu Wiwien Widiastuty, S.T., M.T., selaku dosen pembimbing yang dengan penuh kesabaran membimbing, memberi saran dan kritik yang membantu penulis dalam menyelesaikan tulisan ini. 4. Bapak Damar Wijaya, S.T., M.T., selaku dosen pembimbing angkatan 2005 atas segala perhatian dan dukungan yang diberikan kepada penulis selama kuliah. 5. Bapak A. Bayu Primawan, S.T., M.Eng selaku dosen pengampu mata kuliah teknik switching yang telah memberikan gambaran kepada penulis sehingga muncul ide untuk membuat Tugas Akhir dengan judul “Program Pembelajaran Trafik”. 6. Seluruh dosen teknik elektro dan laboran yang memberikan ilmu, bantuan dan pengetahuan kepada penulis selama kuliah. 7. I Made Dwi Ardiyama Giri atas waktu dan dukungan yang diberikan kepada penulis dari masa kuliah hingga penyusunan tulisan ini. 8. Teman-teman teknik elektro angkatan 2005. 9. Sahabat-sahabat dari asrama syantikara, Ma Doi Seng, Vina, dan Gusti yang selalu ada untuk berbagi suka dan duka. 10. Semua pihak yang telah membantu dan tidak bisa penulis sebutkan satu persatu. xi xii DAFTAR ISI HALAMAN JUDUL ……………………………………………………............ i HALAMAN PERSETUJUAN ………………………………………………… iii HALAMAN PENGESAHAN ………………………………………………….. iv LEMBAR PERSETUJUAN REVISI ………………………………………… v PERNYATAAN KEASLIAN KARYA ………………………………………. vi HALAMAN PERSEMBAHAN DAN MOTTO HIDUP …………………… vii LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ………………………….. viii INTISARI ………………………………………………………………………. ix ABSTRACT …………………………………………………………………… x KATA PENGANTAR ………………………………………………………… xi DAFTAR ISI ………………………………………………………………….. xiii DAFTAR GAMBAR…………………………………………………………. xv DAFTAR TABEL…………………………………………………………….. xvii BAB I PENDAHULUAN ..…………………………………………………… 1 1.1 Latar Belakang …......…..………………………………………………. 1 1.2 Tujuan dan Manfaat Penelitian …..……..…………………………........ 1 1.3 Batasan Masalah ……….…………..…………….…………………….. 2 1.4 Metodologi Penelitian ………...………………………………….……. 2 BAB II DASAR TEORI ………………………………..……………………. 4 2.1 Telekomunikasi ..………………………………………………………. 4 2.2 Trafik ………………………………………………………………....... 5 2.2.1 Besaran Trafik …..…………………………………………....... 7 2.2.2 Congestion ..………………………………………………........ 8 xiii 2.2.3 Pengukuran Trafik ………..…...…………………………......... 9 2.2.4 Model Matematika ...………………………………………...... 10 2.2.5 Lost Call System ..……………………………………….......... 11 2.2.6 Unjuk Kerja Trafik …..……………………………………....... 13 2.2.7 Penggunaan Tabel Trafik ………………….………………….. 16 BAB III RANCANGAN PENELITIAN …………………………………… 17 3.1 Diagram Alir ……………………………………………………........... 17 3.2 Tampilan Program ….………………………………………………….. 21 BAB IV HASIL DAN PEMBAHASAN …………....………………………. 26 4.1 Splash Form ……….…………………………………………………… 26 4.2 Form Utama ……………………………….…………………………… 26 4.3 Pembahasan Hasil ……..……………………………………………….. 29 4.3.1 Pembahasan Hasil Penentuan Trunk yang terlayani ………….. 29 4.3.2 Pembahasan Hasil Perhitungan Grade of Service ………………. 45 BAB V KESIMPULAN DAN SARAN ………………………………………. 55 5.1 Kesimpulan ……………………………………………………………… 55 5.2 Saran ……………………………………………………………………. LAMPIRAN ………………………………………………………………….. xiv 55 56 DAFTAR GAMBAR Halaman Gambar 2.1 Variasi trafik dalam waktu singkat[5] …………………………… 5 Gambar 2.2 Variasi trafik dalam satu hari[5] ………………………………… 6 Gambar 2.3 Contoh trafik satu Erlang yang dibawa oleh tiga trunk[5] …….. Gambar 2.4 Sistem lost-call[5] ………………………………………………… 11 Gambar 2.5 Pendudukan trunk pada sekelompok full availability[5] ……….. 14 Gambar 2.6 Efek dari kelebihan beban pada grade of service[5] ……………. 15 Gambar 2.7 Distribusi trafik pada sekelompok trunk 7 dengan pencarian sekuensial [5] ………………………………… 15 Gambar 3.1 Diagram alir program utama ……………………………………. 17 Gambar 3.2 Diagram alir sub rutin menentukan trunk yang terlayani ………. 19 Gambar 3.3 Diagram alir sub rutin look up table ……………………………. 20 Gambar 3.4 Diagram alir sub rutin utama menghitung grade of service ……. 21 Gambar 3.5 Diagram alir sub rutin menghitung grade of service …………… 23 Gambar 3.6 Tampilan program pembelajaran trafik ………………………… 25 Gambar 4.1 Splash form ………………………………………………………. 26 Gambar 4.2 Form utama program pembelajaran trafik ……………………… 26 Gambar 4.3 Form utama dengan keluaran berupa trunk yang terlayani ……. 27 Gambar 4.4 Form utama dengan keluaran berupa grade of service …………. 27 Gambar 4.5 Contoh penentuan trunk yang terlayani dengan GoS = 0.02 …. 29 Gambar 4.6 Grafik perbandingan nilai intensitas trafik dan trunk yang terlayani untuk tabel 4.1 ………………………… 32 Gambar 4.7 Contoh penentuan trunk yang terlayani dengan GoS = 0.01 …. xv 33 Gambar 4.8 Grafik perbandingan nilai intensitas trafik dan trunk yang terlayani untuk tabel 4.2 ………………………… 34 Gambar 4.9 Contoh penentuan trunk yang terlayani dengan GoS = 0.005 … 35 Gambar 4.10 Grafik perbandingan nilai intensitas trafik dan trunk yang terlayani untuk tabel 4.3 ………………………… 37 Gambar 4.11 Contoh penentuan trunk yang terlayani dengan GoS = 0.001 …. 38 Gambar 4.12 Grafik perbandingan nilai intensitas trafik dan trunk yang terlayani untuk tabel 4.4 ………………………… 40 Gambar 4.13 Kotak pesan untuk intensitas trafik > 87.6 ……………………… 41 Gambar 4.14 Contoh perhitungan GoS dengan keluaran = 0.14286 …… …….. 45 Gambar 4.15 Kotak pesan untuk trunk yang terlayani > 100 …………………. xvi 52 DAFTAR TABEL Halaman Tabel 4.1 Tabel penentuan trunk yang terlayani pada program dengan GoS = 0.02 ………………………………………… …….. 31 Tabel 4.2 Tabel penentuan trunk yang terlayani pada program dengan GoS = 0.01 ……………………………………………….. 33 Tabel 4.3 Tabel penentuan trunk yang terlayani pada program dengan GoS = 0.005 ……………………………………………… 36 Tabel 4.4 Tabel penentuan trunk yang terlayani pada program dengan GoS = 0.001 ……………………………………………… 39 xvii 1 BAB I PENDAHULUAN 1.1. Latar Belakang Trafik telekomunikasi (teletrafik) merupakan hal yang sangat penting dalam sistem telekomunikasi. Salah satu tujuan perhitungan trafik adalah untuk mengetahui unjuk kerja jaringan (Network Performance) dan mutu pelayanan jaringan telekomunikasi (Quality of Service) [1]. Selain dua hal tersebut, dengan melakukan perhitungan trafik dan dari tabel trafik dapat ditentukan jumlah trunk yang dapat melayani volume trafik yang terjadi pada selang waktu tertentu dan nilai grade of service. Hal ini sangat bermanfaat bagi mahasiswa Teknik Elektro khususnya konsentrasi Telekomunikasi dalam memahami sistem telekomunikasi. Berdasarkan hal di atas, penulis ingin membuat sebuah program pembelajaran trafik telekomunikasi agar dapat membantu mahasiswa Teknik Elektro khususnya konsentrasi telekomunikasi dalam melakukan perhitungan trafik guna memahami sistem komunikasi dan melakukan analisis yang lebih lanjut mengenai trafik telekomunikasi. Program ini dibuat untuk melengkapi penelitian yang telah ada sebelumnya yaitu analisis trafik pada sistem komunikasi selular berbasis CDMA 2000 1X di wilayah Semarang kota [2] dan analisis trafik untuk kualitas performansi jaringan berbasis teknologi GSM di PT Exelcomindo Pratama Semarang [3]. Perhitungan trafik secara teori atau manual merupakan pilihan pada solusi sebelumnya. Perhitungan secara teori atau manual tersebut memiliki kekurangan dalam efisiensi waktu. Program yang akan dibuat ini akan menentukan trunk yang terlayani (N) dan menghitung Grade of Service (B) apabila mendapat masukan dari pengguna berupa ratarata jumlah panggilan yang masuk selama waktu tertentu, rata-rata waktu tiap panggilan (Holding Time). 1.2. Tujuan dan Manfaat Penelitian Tujuan penelitian ini adalah menghasilkan suatu sistem yang dapat menentukan trunk yang terlayani dan Grade of Service. Manfaat dari penelitian ini adalah agar dapat membantu mahasiswa Teknik 1 Elektro khususnya konsentrasi 2 Telekomunikasi dalam melakukan perhitungan trafik guna memahami sistem komunikasi dan melakukan analisis yang lebih lanjut mengenai trafik Telekomunikasi. 1.3. Batasan Masalah Batasan masalah dalam penelitian ini adalah : a. Masukan pada program ini berasal dari pengguna. b. Keluaran pada program adalah intensitas trafik, trunk yang terlayani dan nilai grade of service. c. Nilai grade of service yang digunakan pada program ini berdasarkan pada tabel Erlang (lihat Lampiran 1), yaitu: 0.02, 0.01, 0.005, 0.001. d. Trafik tertinggi yang dapat dilayani oleh grade of service = 0.02 adalah 87.6 e. Trafik tertinggi yang dapat dilayani oleh grade of service = 0.01 adalah 84.0. f. Trafik tertinggi yang dapat dilayani oleh grade of service = 0.005 adalah 80.9. g. Trafik tertinggi yang dapat dilayani oleh grade of service = 0.001 adalah 75.3. h. Ketika pengguna memilih keluaran yang diinginkan adalah trunk yang terlayani, maka masukan pada sistem berupa jumlah panggilan yang datang selama waktu tertentu, waktu rata-rata tiap panggilan (holding time), dan nilai grade of service. i. Ketika pengguna memilih keluaran yang diinginkan adalah nilai grade of service, maka masukan pada sistem berupa jumlah panggilan yang datang selama waktu tertentu, waktu rata-rata tiap panggilan (holding time), dan trunk yang terlayani. j. 1.4. Waktu pengamatan ditentukan sebesar 60 menit. Metodologi Penelitian Penulisan skripsi ini menggunakan metode : a. Studi Literatur. Mengambil dan mengumpulkan bahan-bahan referensi berupa buku-buku dan jurnal-jurnal. b. Konsultasi. Melakukan konsultasi dengan dosen dan pembimbing Pra Tugas Akhir dan Tugas Akhir untuk memperoleh gambaran dan penjelasan tentang pemrograman. c. Perancangan program. 3 Tahap ini bertujuan untuk mencari bentuk model yang optimal dari program yang akan dibuat dengan mempertimbangkan berbagai faktor permasalahan dan kebutuhan yang telah di tentukan. d. Pembuatan program. Pembuatan program ini mengacu pada perancangan yang telah dibuat. e. Proses pengambilan data. Teknik pengambilan data dilakukan dengan cara memberi masukan pada program, kemudian program akan menghitung keluaran yang dibutuhkan. f. Analisis dan kesimpulan hasil percobaan. Analisa data dilakukan dengan mengecek keakuratan data terhadap program pembelajaran trafik ini dengan cara mengamati apakah program yang dibuat sudah berjalan sesuai dengan perancangan atau tidak, serta membandingkan data yang di hasilkan oleh program pembelajaran trafik dengan data yang dihasilkan pada perhitungan secara teori. 4 BAB II DASAR TEORI 2.1 Telekomunikasi Telekomunikasi adalah teknik pengiriman atau penyampaian infomasi, dari suatu tempat ke tempat lain[1]. Dalam kaitannya dengan telekomunikasi, bentuk komunikasi jarak jauh dapat dibedakan atas tiga macam yaitu[4]: 1. Komunikasi satu arah (Simplex). Dalam komunikasi satu arah, pengirim dan penerima informasi tidak dapat menjalin komunikasi yang berkesinambungan melalui media yang sama. Contoh : Pager, televisi, dan radio 2. Komunikasi Semi Dua Arah (Half Duplex). Dalam komunikasi semi dua arah, pengirim dan penerima informsi berkomunikasi secara bergantian namun tetap berkesinambungan. Contoh : Handy Talkie 3. Komunikasi Dua Arah (Full Duplex). Dalam komunikasi dua arah, pengirim dan penerima informasi dapat menjalin komunikasi yang berkesinambungan melalui media yang sama. Contoh : Telepon Sistem telekomunikasi (sistel) adalah suatu kesatuan (totalitas) yang terdiri dari bagian-bagian yang disebut subsistem yang saling berinteraksi untuk mencapai tujuan tertentu[1]. Untuk bisa melakukan telekomunikasi, ada beberapa komponen pendukung yaitu : 1. Informasi : merupakan data yang dikirim/diterima seperti suara, gambar, file, tulisan. 2. Pengirim : merubah informasi menjadi sinyal listrik yang siap dikirim 3. Media transmisi : alat yang berfungsi mengirimkan dari pengirim kepada penerima. Karena dalam jarak jauh, maka sinyal pengirim diubah lagi / dimodulasi agar dapat terkirim jarak jauh. 4. Penerima : menerima sinyal listrik dan merubah kedalam informasi yang bisa dipahami oleh manusia sesuai dengan informasi yang dikirim. Dalam merubah informasi menjadi sinyal listrik yang siap dikirim, ada dua model yang dipakai. Pertama adalah merubah informasi menjadi sinyal analog dimana sinyal 4 5 berbentuk gelombang listrik yang kontinyu (terus menerus). Kedua adalah sinyal digital, dimana setelah informasi diubah menjadi sinyal analog kemudian diubah lagi menjadi sinyal discrete. Sinyal discrete kemudian dikodekan dalam sinyal digital yaitu sinyal "0" dan "1". Dalam pengiriman sinyal melalui media transmisi, sinyal analog akan terkena gangguan, sehingga di sisi penerima sinyal tersebut terdegradasi. Sementara untuk sinyal digital, selama gangguan tidak melebih batasan yang diterima, sinyal masih diterima dalam kualitas yang sama dengan sinyal yang dikirim. 2.2 Trafik Dalam merancang sebuah industri, agar mendapatkan keluaran yang diinginkan maka rancangan awal yang harus ditentukan adalah besarannya[5]. Sebagai contoh, untuk sebuah kilang minyak, yang dibutuhkan adalah jumlah barel per hari atau untuk toko mesin, yang dibutuhkan adalah jumlah bagian potongan per hari. Dalam sistem telekomunikasi, yang dibutuhkan adalah trafik yang akan ditangani yaitu menentukan jumlah trunk yang dibutuhkan. Dalam teknik teletrafik, panjangnya trunk adalah untuk menggambarkan setiap satuan yang akan membawa satu panggilan. Hal ini dapat berupa sebuah sirkuit internasional antara switch dalam sentral telepon yang sama dengan panjang kawat beberapa meter atau ribuan kilometer. Pengaturan trunk dan switch dalam sebuah sentral telepon disebut trunking. Gambar 2.1 menunjukkan sebuah sistem telekomunikasi yang besar yang hanya melayani sejumlah panggilan dalam beberapa menit. Jumlah panggilan baru dan jumlah panggilan yang berakhir bervariasi dan bersifat acak[5]. Gambar 2.1 Variasi trafik dalam waktu yang singkat [5] Jika variasi acak yang diambil adalah rata-rata trafik yang sedang berlangsung, maka jumlah panggilan yang ditemukan akan bervariasi pada siang hari. Sebagai contoh 6 dapat dilihat pada gambar 2.2 yang menunjukkan jumlah panggilan lebih sedikit pada malam hari. Jumlah panggilan meningkat pada jam kerja dan mencapai maksimum pada pertengahan pagi. Jumlah panggilan berkurang pada pertengahan hari, saat jam istirahat dan meningkat kembali di sore hari. Jumlah panggilan mulai berkurang saat jam kerja usai dan akan kembali meningkat pada malam hari[5]. Gambar 2.2 Variasi trafik dalam satu hari [5] Gambar 2.2 mewakili sebuah sebuah sentral telepon yang melayani seluruh kota. Untuk sentral telepon yang melayani pusat kota, dimana penduduknya lebih sedikit maka trafik puncak di malam hari mungkin tidak ada. Sebaliknya, untuk sentral telepon yang melayani daerah perumahan di pinggiran kota, trafik puncak di malam hari bisa menjadi yang terbesar. Selain variasi per hari, jumlah panggilan juga dapat bervariasi per minggu. Misalnya sentral telepon pada pusat kota mungkin memiliki panggilan sangat sedikit selama akhir pekan. Jumlah trunk yang akan diberikan sangat tergantung pada besar trafik yang akan dibawa. Selain itu, jumlah trunk harus cukup untuk waktu tersibuk dalam satu hari. Busy hour adalah periode satu jam dimana terdapat trafik puncak. Sebagai contoh, busy hour pada gambar 2.2 adalah jam 10:00 sampai 11:00. Jumlah perangkat yang disediakan harus disesuaikan agar cukup untuk mengatasi trafik pada jam sibuk atau busy hour. Hal ini mengakibatkan banyak perangkat yang tidak terpakai pada saat bukan jam sibuk. Maka hal tersebut menjadi alasan mengapa perusahaan telekomunikasi yang beroperasi menawarkan harga yang murah untuk pelanggan yang melakukan panggilan pada jam jam tertentu dimana jam tersebut memiliki trafik yang sangat rendah atau bukan busy hour. Hal ini sering menjadikan beberapa pelanggan 7 memilih untuk melakukan panggilan pada jam tersebut agar mendapat biaya yang lebih murah daripada mereka malakukan panggilan pada saat jam sibuk. Maka hal tersebut membawa keuntungan untuk perusahaan telekomunikasi karena dapat mengurangi pemakaian perangkat dan mengurangi pengeluaran anggaran[5]. 2.2.1 Besaran Trafik Intensitas Trafik atau sering disebut dengan trafik didefinisikan sebagai jumlah rata-rata panggilan yang dibawa. Meskipun trafik bersifat dimensionless atau tak bersatuan, namun untuk menghargai jasa Agner Krarup Erlang, seorang ilmuwan asal Denmark yang merupakan pelopor teori trafik maka telah ditetapkan satuan trafik adalah Erlang. Pada sekelompok trunk, rata-rata jumlah panggilan yang dibawa tergantung pada jumlah panggilan yang masuk dan durasinya. Durasi satu panggilan sering disebut holding time. Gambar 2.3 menunjukkan bagaimana trafik satu Erlang dapat dihasilkan dari sebuah trunk yang sibuk sepanjang waktu, dari dua trunk yang sibuk setengah waktu, atau dari tiga trunk yang sibuk selama sepertiga dari waktu yang ditentukan[5]. Gambar 2.3Contoh trafik satu Erlang yang dibawa oleh tiga trunk[5] Trafik juga dapat dinyatakan dalam seratus detik panggilan per jam atau cent calls second (CCS). Satu jam berarti 3600 detik, maka 1 Erlang = 36 CCS. Trafik yang dibawa oleh sekelompok trunk dirumuskan dalam persamaan 2.1. 8 (2.1) Dengan A = intensitas trafik (Erlang) C = rata-rata jumlah panggilan yang masuk selama waktu T h = rata-rata waktu tiap panggilan (holding time) Dari persamaan 2.1, jika T = h, maka A = C. dengan demikian, trafik dalam Erlang sama dengan rata-rata jumlah panggilan yang masuk selama periode tertentu sama dengan rata-rata durasi tiap panggilan atau holding time. Sebuah trunk hanya dapat membawa satu panggilan (A ≤ 1). 2.2.2 Congestion Dalam sebuah sentral telepon, secara teori memungkinkan untuk setiap pelanggan melakukan panggilan secara bersamaan. Tetapi untuk menyediakan perangkat agar dapat melayani semua trafik, sangatlah tidak ekonomis karena memerlukan biaya yang sangat tinggi. Situasi di mana semua trunk sedang sibuk bisa saja terjadi dan hal itu menyebabkan sebuah sentral telepon tidak dapat menerima panggilan berikutnya. Keadaan ini dikenal sebagai kemacetan (congestion). Pada sistem packet-switch, panggilan yang masuk selama kemacetan akan menunggu dalam antrian sampai sebuah trunk keluaran tersedia. Dengan demikian panggilan tersebut tetap menunggu tetapi tidak hilang. Sistem seperti ini disebut sistem antrian (queuing system / delay systems). Pada sistem circuit-switch, seperti sentral telepon, semua usaha untuk melakukan panggilan melalui sekelompok trunk yang sibuk tidak akan berhasil. Sistem seperti ini disebut sistem lost-call. Dalam sistem lost-call kemacetan bisa terjadi karena trafik yang dibawa (carried traffic) lebih kecil dari trafik yang ditawarkan (offered traffic) oleh sistem. Maka dapat ditulis: (2.2) Perbandingan dari panggilan yang hilang atau tertunda tergantung pada kemacetan (congestion) yang terukur pada penyedia layanan, dan disebut grade of service. Untuk sistem lost-call, grade of service (B) dapat ditentukan dengan persamaan 2.3[5]. 9 (2.3) Atau dapat juga menggunakan persamaan 2.4. (2.4) Dengan B = grade of service Traffic lost = jumlah trafik yang hilang Offered traffic = trafik yang ditawarkan ke sistem Maka B dapat disebut juga sebagai perbandingan waktu dimana terdapat kemacetan, probabilitas kemacetan, dan probabilitas bahwa panggilan akan hilang karena terjadi kemacetan. Jadi, jika sebuah trafik (A) ditawarkan kepada sekelompok trunk dengan grade of service (B), maka : (2.5) (2.6) Semakin besar grade of service, maka semakin buruk kualitas layanan yang diberikan. Grade of service biasanya ditetapkan untuk trafik pada jam sibuk. Jika grade of service terlalu besar maka pelanggan akan merasa tidak puas karena akan banyak panggilan yang tidak berhasil. Namun sebaliknya, jika terlalu kecil maka akan banyak pengeluaran pada peralatan yang jarang digunakan[5]. Masalah dasar dalam menentukan ukuran dari sistem telekomunikasi atau dimensioning problem adalah penyediaan offered traffic, penentuan grade of service, dan penentuan jumlah trunk (N) yang dibutuhkan[5]. 2.2.3 Pengukuran trafik Pengukuran trafik merupakan hal yang sangat penting bagi perusahaan telekomunikasi yang beroperasi agar dapat mengetahui berapa besar trafik pada jam sibuk yang dapat ditangani oleh sistem. Secara khusus, perlu untuk mengetahui kapan sistem 10 kelebihan beban dan perlu menambahkan perangkat. Dengan demikian, pengukuran trafik harus dilakukan secara teratur dan disimpan dalam laporan khusus. Karena peralatan harus dibuat dan dipasang sebelum dapat digunakan untuk memberikan pelayanan kepada pelanggan, maka sangat penting untuk menentukan dan memperkirakan jumlah trafik yang akan ditangani. Agar memperoleh perkiraan trafik secara akurat, maka data trafik yang digunakan adalah data yang sangat akurat. 2.2.4 Model Matematika Dalam rangka untuk memperoleh solusi analitis untuk masalah teletrafik, diperlukan model matematika dari trafik yang ditawarkan pada sistem telekomunikasi. Sebuah model yang sederhana berdasarkan pada asumsi berikut : 1. Pure-chance traffic 2. Statistik kesetimbangan Asumsi dari pure-chance traffic berarti bahwa panggilan yang baru dan panggilan yang berakhir adalah kejadian acak yang independen. Panggilan baru yang dibuat oleh pelanggan tentu saja tidak dibuat secara acak. Namun, jumlah trafik yang dihasilkan oleh sejumlah besar pelanggan adalah bersifat seolah-olah panggilan yang dibuat adalah acak. Jika kedatangan panggilan adalah kejadian acak, maka keberadaannya tidak akan terpengaruh oleh panggilan-panggilan sebelumnya. Asumsi bahwa kedatangan dan akhir panggilan adalah kejadian acak mengarah pada hasil berikut: 1. Jumlah kedatangan panggilan pada waktu tertentu memiliki distribusi poisson, yaitu: (2.7) Dengan x = jumlah kedatangan panggilan pada waktu T µ = jumlah rata-rata kedatangan panggilan pada waktu T 2. Interval T antara kedatangan panggilan adalah interval diantara peristiwa acak yang independen. Intervalnya memiliki distribusi eksponensial negatif, yaitu : (2.8) Dengan adalah rata-rata interval antara kedatangan panggilan. 11 3. Selama kedatangan dan pengakhiran setiap panggilan adalah kejadian acak yang independen, maka durasi panggilan (T) juga merupakan interval antara dua kejadian acak dengan distribusi eksponensial negatif, yaitu : (2.9) Dengan h adalah holding time. Asumsi dari statistik kesetimbangan adalah bahwa pertumbuhan trafik adalah proses acak yang tetap, ini berarti probabilitasnya tidak akan berubah selama waktunya sedang berlangsung. Sehingga jumlah rata-rata panggilan yang sedang berlangsung adalah konstan. Gambar 2.2 menunjukkan bahwa kondisi ini terpenuhi pada saat jam sibuk dan dapat menentukan grade of service pada jam sibuk (statistik kesetimbangan tidak bisa ditentukan secara langsung pada saat sebelum terjadinya jam sibuk, saat tingkat penggunaan panggilan meningkat ataupu setelah jam sibuk berakhir, ketika tingkat panggilan sedang jatuh). 2.2.5 Lost-call Systems Gambar 2.4 Sistem lost-call [5] Gambar 2.4 menunjukkan sebuah sistem lost call yang memiliki sejumlah trunk (N) dan sejumlah offered traffic (A) dan dapat menentukan grade of service. Solusinya tergantung pada asumsi-asumsi berikut: Trafik murni, berarti bahwa panggilan yang baru dan panggilan yang berakhir adalah kejadian acak yang independen. Statistik kesetimbangan menunjukkan bahwa probabilitas panggilan tidak berubah atau tetap (konstan). Full availability (berkas sempurna) atau ketersediaan penuh berarti bahwa setiap panggilan yang baru akan terhubung ke trunk keluaran yang tersedia. Jika panggilan baru dihubungkan ke trunk keluaran melalui sebuah switch, maka 12 setiap switch harus memiliki outlet yang memadai untuk menyediakan akses kepada setiap trunk keluaran (pada prakteknya, kondisi ini jarang terjadi karena switch memiliki outlet yang terbatas sehingga hanya dapat memberikan layanan yang terbatas atau berkas tak sempurna atau limited availability). Panggilan-panggilan yang mengalami kemacetan akan hilang, ini berarti bahwa setiap panggilan yang mengalami kemacetan akan segera dihapus dari sistem. Ketika hal ini terjadi, pelanggan mungkin akan melakukan upaya lain tak lama sesudahnya. Trafik yang ditawarkan (offered traffic) diasumsikan sebagai total panggilan yang timbul dari panggilan yang berhasil dan panggilan yang gagal. jika x adalah panggilan yang sedang berlangsung maka probabilitas panggilan yang sedang berlangsung adalah: (2.10) Namun, jumlah panggilan tidak boleh negatif dan tidak boleh lebih dari jumlah trunk atau . Maka, Subtitusi dengan persamaan 2.10 maka: (2.11) Dengan : x = jumlah panggilan yang sedang berlangsung N = jumlah saluran yang tersedia A = intensitas trafik 13 Jika sejumlah saluran yang tersedia (N) telah diduduki atau sedang terpakai, maka panggilan berikutnya akan ditolak atau yang sering juga disebut sebagai probabilitas dari trafik yang hilang atau rugi Erlang yang dapat diperoleh dari persamaan[5]: (2.12) Persamaan 2.12 lebih dikenal sebagai “Erlang’s lost call formula”. Sedangkan Grade of Service dari loss system dapat langsung dihitung atau dengan menggunakan iterasi dari relasi rekursif rugi Erlang. Dari persamaan 2.12 maka: Subtitusi dengan persamaan 2.12 maka: (2.13) Saat E1,0=1, persamaan ini dapat juga dipakai untuk menentukan jumlah Trunk. 2.2.6 Unjuk Kerja Trafik Jika sejumlah trafik yang ditawarkan meningkat, maka jumlah trunk juga harus meningkat agar dapat memberikan kualitas layanan (grade of service) tertentu. Oleh karena itu, untuk pemakaian trunk yang sama, dalam sebuah kelompok yang menyediakan jumlah trunk yang banyak, probabilitas untuk menemukan semua trunk sedang sibuk lebih kecil dari kelompok yang menyediakan jumlah trunk yang sedikit. Dengan demikian, untuk sejumlah grade of service pada sejumlah besar trunk memiliki jumlah pendudukan 14 (occupancy) yang lebih besar dan dapat dikatakan bahwa sangat efisien. Hal tersebut dapat dilihat pada gambar 2.5 dengan grade of service sebesar 0.002. Gambar 2.6 menunjukkan beberapa nilai grade of service yang bervariasi dengan offered traffic untuk jumlah trunk yang berbeda yang telah di dimensioning untuk memperoleh grade of service sebesar 0.002 pada beban trafik normal. Pada gambar 2.6 dapat dilihat bahwa untuk sekelompok layanan yang terdiri dari 5 trunk dengan kelebihan beban sebesar 10% dapat meningkatkan grade of service sebesar 40%. Namun untuk kelompok layanan dengan 100 trunk dapat meningkatkan grade of service sebesar 550%. Untuk alasan ini, sebagian besar perusahaan Telekomunikasi yang beroperasi mengadopsi kriteria ganda yaitu dengan menentukan dua grade of service yang akan diberikan pada trafik normal dan grade of service yang lebih besar akan diberikan kepada trafik yang mengalami kelebihan beban dalam prosentasi tertentu. Misalnya, sebuah grade of service yang diberikan pada trafik normal sebesar B, maka untuk trafik yang kelebihan beban 20% grade of service diberikan sebesar 5B. Untuk penyediaan jumlah trunk, ada dua kriteria yang harus dipenuhi yaitu untuk penyediaan sejumlah kecil trunk menggunakan kriteria normal-load dan untuk penyediaan trunk dalam jumlah yang lebih besar menggunakan kriteria overload. Gambar 2.5 Pendudukan trunk pada sekelompok full-availability dalam berbagai ukuran. (grade of service = 0.002)[5] 15 Gambar 2.6 Efek dari kelebihan beban pada grade of service[5] Pada sebagian besar sistem switching, penentuan sejumlah trunk ditentukan secara berurutan. Sebuah panggilan tidak akan dihubungkan ke trunk nomor 2 kecuali nomor 1 sedang terpakai atau sibuk. Panggilan juga tidak akan dihubungkan ke trunk nomor 3 kecuali nomor 1 dan 2 sedang sibuk. Dan seterusnya panggilan yang menemukan trunk terakhir yang sibuk akan segera dibuang. Trunk nomor 1 akan membawa lebih banyak beban daripada trunk yang terakhir, kejadian ini digambarkan pada gambar 2.7. Gambar 2.7 Distribusi trafik pada sekelompok trunk dengan pencarian sekuensial[5] 16 2.2.7 Penggunaan Tabel Trafik Untuk menentukan nilai grade of service (B), dengan besar trafik (A) dan jumlah trunk (N) yang telah ditentukan dapat menggunakan persamaan 2.13 Namun, masalah dimensioning adalah untuk menentukan jumlah trunk (N) untuk besar trafik (A) dan grade of service (B) yang telah ditentukan. Persamaan 2.13 tidak dapat memecahkan permasalahan tersebut, namun nilai grade of service (B) telah dikalkulasikan sebelumnya oleh para pendahulu kita dan telah dipublikasikan melalui sebuah tabel yang dapat menentukan jumlah trunk (N) untuk berbagai variasi trafik dan grade of service. Sebagai contoh yang ditunjukkan pada tabel trafik (dapat dilihat pada lampiran), jika nilai grade of service adalah 0.01, dan besar trafik adalah 10 E maka jumlah trunk yang dibutuhkan adalah 18. 17 BAB III RANCANGAN PENELITIAN Rancangan penelitian pada program pembelajaran trafik terdiri atas dua bagian yaitu diagram alir (flow chart) dan tampilan program. Diagram alir (flow chart) dapat menjelaskan alur perancangan program pembelajaran trafik, dan tampilan program dibuat secara sederhana agar dapat mempermudah pengguna yang akan menggunakan program pembelajaran trafik. Rancangan penelitian pada program pembelajaran trafik dibuat sesuai dengan tujuan penelitian yaitu menghasilkan suatu sistem yang dapat menentukan jumlah trunk yang terlayani dan nilai grade of service. 3.1. Diagram alir Mulai Tidak Menghitung nilai grade of service (B) Keluaran yang diinginkan = jumlah jumlah trunk yang terlayani ? Ya Menghitung jumlah trunk yang terlayani (N) Selesai Gambar 3.1 Diagram Alir program utama 17 18 Diagram alir program pembelajaran trafik dibagi menjadi tiga bagian yaitu: 1. Diagram alir program utama, dimana keluaran yang diinginkan dibandingkan terlebih dahulu, apakah keluaran yang diinginkan adalah menentukan trunk yang terlayani. Jika keluaran yang diinginkan adalah menentukan trunk yang terlayani maka program yang digunakan selanjutnya adalah adalah program pembelajaran trafik menentukan trunk yang terlayani (N). Jika keluaran yang diinginkan bukan menentukan trunk yang terlayani, maka program yang digunakan selanjutnya adalah program pembelajaran trafik menghitung nilai grade of service (B). Diagram alir program utama dapat dilihat pada gambar 3.1. Mulai Jumlah panggilan (c) Holding time (h) Waktu (T) Grade of service (B) Intensitas trafik (A) = A ≤ 87.6 ? Ya trunk yang terlayani = look up table a ch T Tidak “Intensitas trafik harus kurang dari atau sama dengan 87.6. silahkan memasukkan kembali nilai jumlah panggilan dan holding time yang lain” 19 a Intensitas trafik (A) Jumlah trunk yang terlayani (N) Selesai Gambar 3.2 Diagram alir Sub Rutin menentukan jumlah trunk terlayani Mulai i=0 beda = 0 HitA = Intensitas trafik B = grade of service N = jumlah trunk terlayani Tidak Tidak B = 0.02 ? Ya beda <= 0 ? Ya i=i+1 beda = A(i,1) - HitA a Tidak Tidak B = 0.01 ? B = 0.005 ? B = 0.001 ? Ya Ya Ya 20 a N=i-1 N (jumlah trunk yang terlayani) Selesai Gambar 3.3 Diagram alir sub rutin look up table 2. Diagram alir program pembelajaran trafik sub rutin menentukan trunk yang terlayani, dengan masukan berupa berupa jumlah panggilan (c), holding time (h), waktu pengamatan (T), dan grade of service (B). Setelah mendapat masukan, program akan menghitung nilai Intensitas Trafik dengan menggunakan persamaan 2.1. Nilai intensitas trafik yang dihasilkan kemudian dibandingkan, apakah nilai Intensitas Trafik lebih dari 87.6. Hal ini dilakukan karena nilai tertinggi intensitas trafik pada tabel kapasitas krafik adalah 87.6 (dapat dilihat pada lampiran). Jika nilai intensitas trafik yang dihasilkan lebih besar dari 87.6, maka program akan meminta pengguna untuk memasukkan lagi nilai jumlah panggilan yang baru. Jika nilai intensitas trafik yang dihasilkan kurang dari atau sama dengan 87.6, maka program akan langsung menentukan trunk yang terlayani melalui look-up table. Diagram alir sub rutin look up table dapat dilihat pada gambar 3.3. Keluaran pada program pembelajaran trafik sub rutin menentukan trunk yang terlayani adalah intensitas trafik (A), dan jumlah trunk yang terlayani (N). Diagram alir program pembelajaran trafik sub rutin menentukan trunk yang terlayani dapat dilihat pada gambar 3.2. 21 Mulai Jumlah panggilan (c) Holding time (h) Waktu (T) Jumlah trunk (N) N > 100 ? Ya “Jumlah trunk harus kurang dari atau sama dengan 100, silahkan masukkan kembali nilai jumlah trunk yang lain” Tidak Intensitas trafik (A) = A > 87.6 ? ch T Ya “Intensitas trafik harus kurang dari atau sama dengan 87.6. silahkan memasukkan kembali nilai jumlah panggilan dan holding time yang lain” Tidak Menghitung grade of service Intensitas trafik (A) Nilai grade of service (B) Selesai Gambar 3.4 Diagram alir sub rutin utama menghitung Grade of Service 22 Mulai N = Jumlah trunk yang terlayani HitA = Intensitas trafik i=0 denom = 0 numer B1 B = grade of service HitA N 1 ( N 1)! numer ( N 1) denom i 0 B1 HitA i ( N 1)! numer denom a 23 a B (HitA B1) ( N (HitA B1)) Selesai Gambar 3.5 Diagram alir sub rutin menghitung grade of service 3. Diagram alir program pembelajaran trafik sub rutin menghitung nilai grade of service, dengan masukan berupa berupa jumlah panggilan (c), holding time (h), waktu pengamatan (T), dan jumlah trunk (N). Setelah mendapat masukan dari pengguna, masukan berupa jumlah trunk kemudian dibandingkan, apakah lebih dari 100. Hal ini dilakukan karena nilai tertinggi jumlah trunk yang terlayani pada tabel kapasitas trafik adalah 100 (dapat dilihat pada lampiran 1). Jika masukan jumlah trunk lebih besar dari 100, maka program akan meminta pengguna memasukkan jumlah trunk yang baru. Jika jumlah trunk lebih kecil atau sama dengan 100, maka program akan menghitung nilai intensitas trafik dengan menggunakan persamaan 2.1. Nilai intensitas trafik yang dihasilkan kemudian dibandingkan, apakah nilai intensitas trafik lebih besar dari 87.6. Hal ini dilakukan karena nilai tertinggi intensitas trafik pada tabel kapasitas trafik adalah 87.6 (dapat dilihat pada lampiran 1). Jika nilai intensitas trafik yang dihasilkan lebih besar dari 87.6, maka program akan meminta pengguna untuk memasukkan lagi nilai jumlah panggilan yang baru. Jika nilai intensitas trafik yang dihasilkan lebih kecil atau sama dengan 87.6, maka program langsung menghitung nilai grade of service dengan menggunakan persamaan 2.13. Keluaran yang dihasilkan pada program pembelajran trafik sub rutin menghitung grade of service ini adalah intensitas trafik (A), dan grade of service. Diagram alir program pembelajaran trafik sub 24 rutin utama menghitung nilai grade of service dapat dilihat pada gambar 3.4. Diagram alir sub rutin menghitung grade of service dapat dilihat pada gambar 3.5. 3.2. Tampilan program Tampilan dari Program Pembelajaran Trafik terdiri atas dua form yaitu: form yang pertama adalah form pembuka yang berisi nama program, nama pembuat dan tahun dibuatnya program pembelajaran trafik. Form pembuka akan tampil selama empat detik. Form yang kedua adalah form program pembelajaran trafik dimana pengguna dapat melakukan perhitungan terhadap trafik. Tampilan program pembelajaran trafik dapat dilihat pada gambar 3.4. Pada form pembelajaran trafik, pengguna diminta untuk menentukan terlebih dahulu keluaran yang diinginkan pada button group. “Title” pada button group dirubah menjadi keluaran yang diinginkan. Keluaran yang diinginkan terdiri atas dua pilihan yaitu: menghitung jumlah trunk atau menghitung nilai Grade of Service. Nilai Grade of Service pada program ini berdasarkan tabel kapasitas trafik (lihat Lampiran 1) yaitu: 0.02, 0.01, 0.005, 0.001. Jika pengguna memilih untuk menghitung jumlah trunk (N), maka masukan pada program terdiri dari jumlah panggilan(c), holding time(h), waktu pengamatan(T), dan nilai grade of service. Jumlah trunk pada panel masukan tidak aktif. Jika pengguna memilih untuk menghitung nilai grade of service, maka nilai grade of service pada panel masukan tidak aktif dan nilai trunk akan menjadi masukan. Pada from program pembelajaran trafik, edit text nomor 1 bertujuan untuk mennberikan masukan dari keyboard berupa nilai jumlah panggilan. Edit text nomor 2 bertujuan untuk memberikan masukan dari keyboard berupa nilai holding time. Pop up menu nomor 3 bertujuan untuk memberikan beberapa daftar pilihan dari nilai grade of service. Edit text nomor 4 bertujuan untuk memberikan masukan dari keyboard berupa nilai jumlah trunk. Setelah memberikan masukan pada program, maka pengguna dapat melakukan perhitungan trafik dengan cara menekan push button1 sehingga keluaran dari sistem berupa nilai intensitas trafik akan tertera pada edit text nomor 5, keluaran berupa nilai jumlah trunk akan tertera pada edit text nomor 6, dan keluaran berupa nilai grade of service akan tertera pada edit text nomor 7. “String” pada push button1 dirubah menjadi “menghitung” agar memudahkan pengguna. Untuk kembali ke keadaan awal, pengguna 25 dapat menekan push button2. “String” pada push button2 dirubah menjadi “kembali” agar memudahkan pengguna. Untuk mengakhiri program pembelajaran trafik, pengguna dapat menekan push button3. “String” pada push button3 dirubah menjadi “selesai”. Gambar 3.6 Tampilan Program Pembelajaran Trafik 26 BAB IV HASIL DAN PEMBAHASAN 4.1 SPLASH FORM Splash form atau form pembuka akan tampil selama empat detik sebelum form utama. Splash form berisi nama program, tahun pembuatan program, dan nama pembuat program. Splash form dapat dilihat pada gambar 4.1. Gambar 4.1. Splash form 4.2 FORM UTAMA Form utama adalah form di mana pengguna dapat melakukan perhitungan trafik. Form utama dapat dilihat pada gambar 4.2. Perhitungan trafik pada form utama terdiri atas dua hal yaitu: menentukan jumlah trunk yang terlayani dan nilai grade of Service. Gambar 4.2. Form Utama Program Pembelajaran Trafik 26 27 Saat pengguna memilih untuk menghitung jumlah trunk, maka jumlah trunk pada panel masukan akan tidak aktif karena jumlah trunk di sini adalah sebagai keluaran. Hal ini dapat dilihat pada gambar 4.3 di mana semua keluaran pada panel keluaran dan jumlah trunk pada panel masukan tidak aktif. Gambar 4.3. Form Utama dengan keluaran berupa jumlah trunk yang terlayani Saat pengguna memilih untuk menghitung grade of Service, maka grade of Service pada panel masukan akan tidak aktif karena grade of Service di sini adalah sebagai keluaran. Hal ini dapat dilihat pada gambar 4.4 di mana semua keluaran pada panel keluaran dan grade of service pada panel masukan tidak aktif. Gambar 4.4. Form Utama dengan keluaran berupa grade of Service 28 Perintah pada program untuk tampilan gambar 4.3 dan gambar 4.4 adalah: % --- Executes when selected object is changed in uipanel1. function uipanel1_SelectionChangeFcn(hObject, eventdata, handles) % hObject handle to the selected object in uipanel1 % eventdata structure with the following fields (see UIBUTTONGROUP) % EventName: string 'SelectionChanged' (read only) % OldValue: handle of the previously selected object or empty if none was selected % NewValue: handle of the currently selected object % handles structure with handles and user data (see GUIDATA) %retrieve GUI data, i.e. the handles structure %updates the handles structure guidata(hObject, handles); switch get(eventdata.NewValue,'Tag') % Get Tag of selected object. case 'radiobutton1' set(handles.edit1,'Enable','on'); set(handles.edit2,'Enable','on'); set(handles.edit3,'Enable','off'); set(handles.popupmenu1,'Enable','on'); set(handles.edit10,'Enable','off'); set(handles.edit11,'Enable','off'); set(handles.edit12,'Enable','off'); case 'radiobutton2' set(handles.edit1,'Enable','on'); set(handles.edit2,'Enable','on'); set(handles.edit3,'Enable','on'); set(handles.popupmenu1,'Enable','off'); set(handles.edit10,'Enable','off'); set(handles.edit11,'Enable','off'); set(handles.edit12,'Enable','off'); otherwise % Code for when there is no match. end Program untuk tampilan gambar 4.3 dan 4.4 dapat dijelaskan sebagai berikut: Perintah “switch get(eventdata.NewValue,'Tag'” memungkinkan pengguna untuk dapat memilih keluaran yang diinginkan pada uipanel1. Pada gambar 4.3, saat pengguna memilih untuk menentukan jumlah trunk yang terlayani, maka program akan menonaktifkan masukan jumlah trunk dan semua keluaran yaitu dapat dilihat pada perintah di atas di mana edit3, edit10, edit11, dan edit12 diberikan perintah 'Enable','off'. Masukan jumlah panggilan, holding time, dan grade of Service diaktifkan dengan memberikan perintah pada edit1, edit2, dan popupmenu1 yaitu 'Enable','on' Pada gambar 4.4, saat pengguna memilih untuk menghitung grade of Service, maka program akan menonaktifkan masukan grade of Service dan semua keluaran yaitu dapat dilihat pada perintah di atas di mana popupmenu1, edit10, edit11, dan edit12 diberikan 29 perintah 'Enable','off'. Masukan jumlah panggilan, holding time, dan jumlah trunk diaktifkan dengan memberikan perintah pada edit1, edit2, dan edit3 yaitu 'Enable','on'. 4.3 PEMBAHASAN HASIL Pembahasan hasil dilakukan dengan cara membandingkan hasil perhitungan dari program dan hasil dari perhitungan secara teori. Pembahasan ini akan menunjukkan apakah program pembelajaran trafik telah bekerja sesuai dengan perancangan atau tidak. Pembahasan hasil dibedakan atas dua bagian yaitu: pembahasan hasil perhitungan jumlah trunk dan pembahasan hasil perhitungan grade of Service. 4.3.1 Pembahasan Hasil Penentuan Jumlah Trunk yang terlayani Penentuan jumlah trunk yang terlayani pada program dapat dilakukan dengan memberi masukan berupa jumlah panggilan, holding time, dan grade of service. Pada penentuan jumlah trunk yang terlayani secara teori, persamaan 2.1 digunakan untuk mendapat nilai intensitas trafik dan tabel kapasitas trafik (dapat dilihat pada Lampiran 1) digunakan untuk menentukan jumlah trunk yang terlayani. Pembahasan untuk penentuan jumlah trunk yang terlayani dapat dilihat pada beberapa contoh berikut: 1. Dengan Grade of Service (B) = 0.02 Pembahasan pada program untuk menentukan jumlah trunk yang terlayani dengan grade of service = 0.02 dilakukan dengan cara memberikan masukan pada program sehingga program akan memproses keluarannya seperti pada beberapa contoh berikut. Gambar 4.5. Contoh penentuan jumlah trunk dengan GoS = 0.02 30 Berdasarkan contoh pada tabel 4.1 nomor 1, masukan yang diberikan pada program adalah: Grade of Service (B) = 0.02 Jumlah panggilan = 10 Holding time = 1 menit, Maka keluaran pada form utama untuk menentukan jumlah trunk dengan grade of service = 0.02 dapat dilihat pada gambar 4.5. Untuk pembahasan menentukan jumlah trunk pada program dengan grade of Service sebesar 0.02 selanjutnya dapat dilihat pada tabel 4.1 Dengan menggunakan data pada tabel 4.1 nomor 1, maka dapat dilakukan perhitungan secara teori dengan menggunakan persamaan 2.1 dan tabel kapasitas trafik. Nilai intensitas trafik (A) berdasarkan persamaan 2.1 yaitu: Maka: Nilai intensitas trafik sebesar 0.16667 E dengan grade of Service = 0.02 tidak terdapat pada tabel kapasitas trafik, karena angka 0.16667 E berada diantara 0.02 E (dengan jumlah trunk = 1) dan 0.22 E (dengan jumlah trunk = 2). Dalam hal ini, kebanyakan perusahaan telekomunikasi akan memberikan trunk dalam jumlah yang kurang dari intensitas trafik walaupun akan beresiko adanya beberapa panggilan yang hilang. Di sisi lain, pemberian Trunk oleh perusahaan telekomunikasi yang melebihi intensitas trafik akan mengakibatkan adanya trunk yang tidak dipakai, akibatnya akan terjadi pemborosan biaya yang akan mendatangkan kerugian pada perusahaan tersebut. Dengan demikian, jumlah trunk yang diberikan untuk menangani trafik sebesar 0.16667 adalah 1, yang berarti trafik yang dapat dilayani adalah sebesar 0.02. Dari perhitungan di atas, hasil yang diperoleh adalah sama dengan keluaran pada program. Hal ini membuktikan bahwa program pembelajaran trafik telah bekerja dengan baik dan sesuai dengan perancangan program pada bab 3. 31 Tabel 4.1. Tabel penentuan Jumlah Trunk pada program dengan GoS = 0.02 No MASUKAN KELUARAN Jumlah Panggilan Holding Time Intensitas Trafik Trunk yang terlayani 1. 10 1 0.16667 1 2. 34 3 1.7 5 3. 52 5 4.3333 9 4. 45 10 7.5 13 5. 43 15 10.75 17 6. 840 1 14 21 7. 350 3 17.5 25 8. 254 5 21.1667 29 9. 149 10 24.8333 33 10. 114 15 28.5 37 11. 1920 1 32 41 12. 712 3 35.6 45 13. 473 5 39.4167 49 14 259 10 43.1667 53 15. 188 15 47 57 16. 3036 1 50.6 61 17. 1088 3 54.4 65 18. 699 5 58.25 69 19. 372 10 62 73 20. 264 15 66 77 21. 4176 1 69.6 81 22. 1468 3 73.4 85 23. 927 5 77.25 89 24. 486 10 81 93 25. 340 15 85 97 Grafik perbandingan nilai intensitas trafik dengan trunk yang terlayani untuk tabel 4.1 dapat dilihat pada gambar 4.6. Dari gambar 4.6, dapat dilihat bahwa trunk yang terlayani berbanding lurus dengan nilai intensitas trafik. Semakin besar nilai intensitas trafik, maka jumlah trunk yang terlayani semakin banyak. 32 Gambar 4.6 grafik perbandingan nilai intensitas trafik dan trunk yang terlayani untuk tabel 4.1 2. Grade of Service (B) = 0.01 Pembahasan pada program untuk menentukan trunk yang terlayani dengan grade of Service = 0.01 dilakukan dengan cara memberikan masukan pada program sehingga program akan memproses keluarannya. Berdasarkan contoh pada tabel 4.2 nomor 25, masukan yang diberikan pada program adalah: Grade of Service (B) = 0.01 Jumlah panggilan = 343 Holding Time = 15 menit Maka keluaran pada form utama untuk menentukan trunk yang terlayani dengan grade of service = 0.01 dapat dilihat pada gambar 4.7. Untuk pembahasan menentukan trunk yang terlayani pada program dengan grade of service sebesar 0.01, selanjutnya dapat dilihat pada tabel 4.2. Dengan menggunakan data pada tabel 4.2 nomor 1 pada, maka dapat dilakukan perhitungan secara teori dengan menggunakan persamaan 2.1 dan tabel kapasitas trafik. Nilai intensitas trafik (A) adalah: 33 Nilai intensitas sebesar 85.75 E pada tabel kapasitas trafik tidak dapat ditemukan pada grade of service = 0.01 karena nilai intensitas trafik tertinggi untuk grade of service = 0.01 adalah 84.0. Agar intensitas trafik sebesar 85.75 dapat dilayani, maka nilai grade of service yang digunakan harus diturunkan menjadi 0.02. Gambar 4.7. Contoh penentuan trunk yang terlayani dengan GoS = 0.01 Tabel 4.2. Tabel penentuan trunk yang terlayani pada program dengan GoS = 0.01 No MASUKAN KELUARAN Jumlah Panggilan Holding Time Intensitas Trafik Trunk yang terlayani 1. 9 1 0.15 2 2. 38 3 1.9 6 3. 54 5 4.5 10 4. 45 10 7.5 14 5. 42 15 10.5 18 6. 822 1 13.7 22 7. 338 3 16.9 26 8. 245 5 20.4167 30 9. 143 10 23.8333 34 10. 110 15 27.5 38 34 Tabel 4.2.(Lanjutan) Tabel penentuan trunk yang terlayani pada program dengan GoS = 0.01 No MASUKAN KELUARAN Jumlah Panggilan Holding Time Intensitas Trafik Trunk yang terlayani 11. 1848 1 30.8 42 12. 686 3 34.3 46 13. 455 5 37.9167 50 14. 249 10 41.5 54 15. 181 15 45.25 58 16. 2928 1 48.8 62 17. 1048 3 52.4 66 18. 672 5 56 70 19. 359 10 59.8333 74 20. 267 15 66.75 78 21. 4230 1 70.5 82 22. 1488 3 74.4 86 23. 939 5 78.25 90 24. 492 10 82 97 25. 343 15 85.75 - Gambar 4.8 grafik perbandingan intensitas trafik dan jumlah trunk untuk tabel 4.2 35 Grafik perbandingan intensitas trafik dan trunk yang terlayani untuk tabel 4.2 dapat dilihat pada gambar 4.8. Dari gambar 4.8, dapat dilihat bahwa trunk yang terlayani berbanding lurus dengan nilai intensitas trafik. Semakin besar nilai intensitas trafik, maka jumlah trunk yang terlayani semakin banyak. 3. Grade of Service (B) = 0.005 Pembahasan pada program untuk menentukan trunk yang terlayani dengan grade of service = 0.01 dilakukan dengan cara memberikan masukan pada program sehingga program akan memproses keluarannya. Berdasarkan contoh nomor 23 pada tabel 4.3, masukan yang diberikan pada program adalah: Grade of Service (B) = 0.005 Jumlah panggilan = 873 Holding Time = 5 menit Maka keluaran pada form utama untuk menentukan trunk yang terlayani dengan grade of service sebesar 0.005 dapat dilihat pada gambar 4.9, dan pembahasan menentukan trunk yang terlayani dengan grade of service = 0.005 pada program, selanjutnya dapat dilihat pada tabel 4.3. Gambar 4.9. Contoh penentuan trunk yang terlayani dengan GoS = 0.005 Dengan menggunakan data pada tabel 4.3 nomor 1 pada, maka dapat dilakukan perhitungan secara teori dengan menggunakan persamaan 2.1 dan tabel kapasitas trafik. Nilai intensitas trafik (A) adalah: 36 Nilai intensitas sebesar 72.75 E dengan grade of service = 0.005 tidak terdapat pada tabel kapasitas trafik, karena nilai 72.75 E berada diantara 72.7 E (dengan jumlah trunk = 91) dan 73.6 E (dengan jumlah trunk = 92). Dalam hal ini, kebanyakan perusahaan telekomunikasi akan memberikan trunk dalam jumlah yang kurang dari intensitas trafik walaupun akan beresiko adanya beberapa panggilan yang hilang. Di sisi lain, pemberian trunk oleh perusahaan telekomunikasi yang melebihi intensitas trafik akan mengakibatkan adanya trunk yang tidak dipakai, akibatnya akan terjadi pemborosan biaya yang akan mendatangkan kerugian pada perusahaan tersebut. Dengan demikian, jumlah trunk yang diberikan untuk menangani trafik sebesar 72.75 adalah 91, yang berarti trafik yang dapat dilayani adalah sebesar 72.7. Dari perhitungan di atas, hasil yang diperoleh adalah sama dengan keluaran pada program. Hal ini membuktikan bahwa program pembelajaran trafik telah bekerja dengan baik dan sesuai dengan perancangan pada bab 3. Tabel 4.3. Tabel penentuan trunk yang terlayani pada program dengan GoS = 0.005 No MASUKAN KELUARAN Jumlah Panggilan Holding Time Intensitas Trafik Trunk yang terlayani 1. 21 1 0.35 3 2. 44 3 2.2 7 3. 56 5 4.6667 11 4. 45 10 7.5 15 5. 42 15 10.5 19 6. 804 1 13.4 23 7. 332 3 16.6 27 8. 238 5 19.8333 31 9. 139 10 23.1667 35 10. 106 15 26.5 39 11. 1794 1 29.9 43 12. 666 3 33.3 47 37 Tabel 4.3.Tabel (Lanjutan) penentuan trunk yang terlayani pada program dengan GoS = 0.005 No MASUKAN KELUARAN Jumlah Panggilan Holding Time Intensitas Trafik Trunk yang terlayani 13. 442 5 36.8333 51 14. 242 10 40.3333 55 15. 176 15 44 59 16. 2844 1 47.4 63 17. 1020 3 51 67 18. 656 5 54.6667 71 19. 350 10 58.3333 75 20. 248 15 62 79 21. 3924 1 65.4 83 22. 1380 3 69 87 23. 873 5 72.75 91 24. 458 10 76.3333 95 25. 320 15 80 99 Grafik perbandingan nilai intensitas trafik dan trunk yang terlayani untuk tabel 4.3 dapat dilihat pada gambar 4.10. Dari gambar 4.10, dapat dilihat bahwa trunk yang terlayani berbanding lurus dengan nilai intensitas trafik. Semakin besar nilai intensitas trafik, maka trunk yang terlayani semakin banyak. Gambar 4.10 grafik perbandingan intensitas trafik dan trunk yang terlayani 38 4. Grade of Service (B) = 0.001 Pembahasan pada program untuk menentukan trunk yang terlayani dengan grade of service = 0.001 dilakukan dengan cara memberikan masukan pada program. Sesuai dengan contoh pada tabel 4.4 nomor 25 masukan pada program yaitu: Grade of Service (B) = 0.001 Jumlah panggilan = 302 Holding Time = 15 menit Maka keluaran pada form utama untuk menentukan trunk yang terlayani dengan Grade of Service sebesar 0.001 dapat dilihat pada gambar 4.11. Untuk menentukan trunk yang terlayani dengan grade of service = 0.001 pada program, selanjutnya dapat dilihat pada tabel 4.4. Gambar 4.11. Contoh penentuan trunk yang terlayani dengan GoS = 0.001 Dengan menggunakan data pada tabel 4.4 nomor 25, maka dapat dilakukan perhitungan secara teori dengan menggunakan persamaan 2.1 dan tabel kapasitas trafik. Nilai intensitas trafik (A) adalah: Nilai intensitas sebesar 75.5 E pada tabel kapasitas trafik tidak dapat ditemukan pada grade of service = 0.001 karena nilai intensitas trafik tertinggi untuk grade of service = 0.001 39 adalah 75.5 E. Agar intensitas trafik sebesar 75.5 E dapat dilayani, maka nilai grade of service yang digunakan harus diturunkan menjadi 0.02, 0.01, atau 0.005. Dari perhitungan di atas, hasil yang diperoleh adalah sama dengan keluaran pada program. Hal ini membuktikan bahwa program pembelajaran trafik telah bekerja dengan baik dan sesuai dengan flow chart pada bab 3. Tabel 4.4. Tabel Penentuan trunk yang terlayani pada program dengan GoS = 0.001 No MASUKAN KELUARAN Jumlah Panggilan Holding Time Intensitas Trafik trunk yang terlayani 1. 27 1 0.45 4 2. 42 3 2.1 8 3. 51 5 4.25 12 4. 41 10 6.8333 16 5. 38 15 9.5 20 6. 732 1 12.2 24 7. 304 3 15.2 28 8. 219 5 18.25 32 9. 128 10 21.3333 36 10. 98 15 24.5 40 11. 1667 1 27.7 44 12. 618 3 30.9 48 13. 411 5 34.25 52 14. 225 10 37.5 56 15. 164 15 41 60 16. 2646 1 44.1 64 17. 950 3 47.5 68 18. 611 5 50.9167 72 19. 326 10 54.3333 76 20. 232 15 58 80 21. 3678 1 61.3 84 22. 1296 3 64.8 88 23. 820 5 68.3333 92 24. 431 10 71.8333 96 25. 302 15 75.5 - 40 Grafik perbandingan nilai intensitas trafik dan trunk yang terlayani untuk tabel 4.4 dapat dilihat pada gambar 4.12. Dari gambar 4.12, dapat dilihat bahwa trunk yang terlayani berbanding lurus dengan nilai intensitas trafik. Semakin besar nilai intensitas trafik, maka trunk yang terlayani semakin banyak. Gambar 4.12 grafik perbandingan intensitas trafik dan trunk yang terlayani Program untuk menentukan trunk yang terlayani dapat dijelaskan sebagai berikut: Keluaran pada program dapat ditampilkan setelah pengguna memberikan masukanmasukan yang dibutuhkan pada panel masukan dan menekan tombol menghitung yaitu pushbutton1. Masukan pada program yang berupa jumlah panggilan (c) dan holding time (h) sebelum digunakan untuk menghitung nilai intensitas trafik harus dideklarasikan terlebih dahulu. Perintah “str2double” berfungsi untuk mengubah masukan angka yang berupa string menjadi angka agar dapat digunakan dalam perhitungan. Fungsi “'String'” digunakan untuk menampilkan isi jumlah panggilan (c) dan holding time (h) masingmasing pada edit 1 dan edit2. Persamaan 2.1 digunakan pada program untuk menghitung nilai intensitas trafik dengan waktu pengamatan (T) ditentukan selama 60 menit. Kemudian nilai intensitas trafik tersebut dibandingkan apakah melebihi 87.6 dengan menambahkan perintah “if HitA>87.6”. Nilai 87.6 merupakan nilai intensitas trafik tertinggi yang terdapat pada tabel kapasitas trafik. Jika nilai intensitas trafik yang dihasilkan melebihi 87.6, maka program akan mengembalikan tampilan program pada keadaan semula seperti pada gambar 4.2 dengan menambahkan perintah “closeGUI = handles.figure1; 41 guiPosition = get(handles.figure1,'Position'); guiName = get(handles.figure1,'Name'); eval(guiName) close(closeGUI); set(gcf,'Position',guiPosition);”. trafik kembali harus kurang nilai dari jumlah lain','Perhatian','warn')” atau Perintah “msgbox('Nilai Intensitas dengan memasukkan sama panggilan dan 87.6. silahkan holding time yang ditambahkan untuk menampilkan kotak pesan yang berisi “Nilai Intensitas trafik harus kurang dari atau sama dengan 87.6. silahkan memasukkan kembali nilai jumlah panggilan dan holding time yang lain”. Kotak pesan ini dapat dilihat pada gambar 4.13. Jika nilai intensitas trafik yang dihasilkan kurang dari atau sama dengan 87.6, maka proses perhitungan akan berjalan ke tahap berikutnya dengan menambahkan perintah “else” [6]. Gambar 4.13 kotak pesan untuk intensitas trafik > 87.6 Perintah pada program untuk menghasilkan keluaran berupa intensitas trafik adalah: % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) proyek=guidata(gcbo); c=str2double(get(proyek.edit1,'String')); h=str2double(get(proyek.edit2,'String')); T=60; HitA=(c*h)/T; Saat pengguna memberikan masukan grade of service pada program, maka pengguna harus memilih untuk menetapkan nilai dari grade of service yang akan digunakan pada popupmenu1, karena nilai grade of service yang tersedia pada program (berdasarkan tabel kapasitas trafik) terdiri atas empat nilai yaitu: 0.02, 0.01, 0.005, dan 42 0.001. Masukan grade of service pada program dapat diberikan jika popupmenu1 aktif, atau jika pengguna memilih untuk menghitung jumlah trunk, untuk mengatur hal ini, maka diperlukan perintah “switch get(handles.popupmenu1,'Enable'”. Perintah “switch get(handles.popupmenu1,'Value')” perlu ditambahkan pada program, agar program dapat mengambil nilai grade of service pada popupmenu1 sesuai dengan nilai yang dipilih oleh pengguna. Perintah pada program untuk pilihan masukan grade of service adalah: switch get(handles.popupmenu1,'Enable') % Get Enables of selected popupmenu1. case 'on' switch get(handles.popupmenu1,'Value') case 1 B=0.02; if HitA>87.6 msgbox('Nilai Intensitas trafik harus kurang dari atau sama dengan 87.6. silahkan memasukkan kembali nilai jumlah panggilan dan holding time yang lain','Perhatian','warn') return; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI else end case 2 B=0.01; if HitA>84.0 msgbox('Nilai Intensitas trafik untuk grade of service 0.01 harus kurang dari atau sama dengan 84.0. silahkan memasukkan kembali nilai grade of service yang lain yaitu 0.02','Perhatian','warn') return; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI else end case 3 B=0.005; if HitA>80.9 43 msgbox('Nilai Intensitas trafik untuk grade of service 0.005 harus kurang dari atau sama dengan 80.9. silahkan memasukkan kembali nilai grade of service yang lain yaitu 0.02 atau0.01','Perhatian','warn') return; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI else end case 4 B=0.001; if HitA>75.3 msgbox('Nilai Intensitas trafik untuk grade of service 0.001 harus kurang dari atau sama dengan 75.3. silahkan memasukkan kembali nilai grade of service yang lain yaitu 0.02, 0.01, atau 0.005','Perhatian','warn') return; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI else end otherwise end Perhitungan jumlah trunk pada program dapat dilakukan dengan memasukkan tabel kapasitas trafik pada program dengan memberikan perintah “importdata”. Tabel kapasitas trafik yang dimasukkan pada program diatur menjadi empat kolom sesuai dengan nilai grade of service, dan seratus baris sesuai dengan jumlah trunk pada tabel kapasitas trafik yang terdiri dari 1 sampai 100. Empat kolom tersebut masing-masing adalah: kolom pertama untuk nilai grade of service = 0.02, kolom kedua untuk nilai grade of service = 0.01, kolom ketiga untuk nilai grade of service = 0.005, dan kolom ke-empat untuk nilai grade of service = 0.001. Saat pengguna memilih salah satu nilai grade of service, maka program akan mencari jumlah trunk yang dapat mengatasi trafik sesuai dengan nilai 44 intensitas trafik yang telah ditentukan terlebih dahulu sesuai dengan kolom yang telah ditentukan untuk nilai grade of service tersebut. Sebagai contoh dapat dilihat pada tabel 4.4 nomor 1, dengan grade of service = 0.001 dan intensitas trafik = 0.45, program akan mencari nilai trafik pada kolom ke-empat yang sama atau yang paling mendekati nilai 0.45 dengan cara mencari selisih nilai trafik di tiap baris pada kolom ke-empat dengan nilai 0.45 yaitu: Nilai trafik pada kolom ke-empat dan baris pertama adalah: 0.001, maka 0.001 – 0.45 = -0.449. -0.449 <= 0, maka program akan mencari pada baris berikutnya Nilai trafik pada kolom ke-empat dan baris ke-dua adalah: 0.046, maka 0.046 – 0.45 = -0.404. -0.404 <= 0, maka program akan mencari pada baris berikutnya Nilai trafik pada kolom ke-empat dan baris ke-tiga adalah: 0.19, maka 0.19 – 0.45 = -0.26. -0.26 <= 0 maka program akan mencari pada baris berikutnya Nilai trafik pada kolom ke-empat dan baris ke-empat adalah: 0.44, maka 0.44 – 0.45 = -0.01. -0.01 <= 0, maka program akan mencari pada baris berikutnya Nilai trafik pada kolom ke-empat dan baris ke-lima adalah: 0.8, maka 0.8 – 0.45 = 0.35. 0.35 > 0, maka program akan berhenti mencari. Jumlah trunk kemudian ditentukan dengan cara i-1 di mana “i” pada contoh diatas adalah baris ke-lima. Sehingga 5 - 1 = 4, maka jumlah trunk adalah 4. Perintah pada program untuk menghasilkan keluaran berupa jumlah Trunk adalah: A = importdata('C:\Documents and Settings\user\My Documents\MATLAB\tabel.txt','\t'); switch B case 0.02 i=0; beda=0; while beda <= 0 i=i+1; beda=A(i,1)-HitA; if beda>0 break, end end N=i-1; case 0.01 i=0; beda=0; while beda <= 0 i=i+1; beda=A(i,2)-HitA; if beda>0 break, end end N=i-1; case 0.005 i=0; beda=0; while beda <= 0 45 i=i+1; beda=A(i,3)-HitA; if beda>0 break, end end N=i-1; case 0.001 i=0; beda=0; while beda <= 0 i=i+1; beda=A(i,4)-HitA; if beda>0 break, end end N=i-1; otherwise end set(handles.edit10,'Enable','on'); set(handles.edit11,'Enable','on'); set(handles.edit12,'Enable','on'); set(handles.edit10,'String',num2str(HitA)); set(handles.edit11,'String',num2str(N)); set(handles.edit12,'String',num2str(B)); case 'off' 4.3.2 Pembahasan Hasil Perhitungan Grade of Service Perhitungan grade of service pada program dapat dilakukan dengan memberi masukan berupa jumlah panggilan, holding time, dan trunk yang terlayani. Pembahasan untuk perhitungan grade of service dapat dilihat pada contoh berikut: Gambar 4.14. Contoh perhitungan Grade of Service dengan keluaran = 0.14286 Berdasarkan data pada tabel 4.5 nomor 1 yaitu: Jumlah panggilan = 10 panggilan 46 Holding Time = 1 menit Jumlah Trunk = 1 Maka keluaran pada form utama untuk perhitungan grade of service dapat dilihat pada gambar 4.14. Untuk perhitungan grade of service pada program, selanjutnya dapat dilihat pada tabel 4.5 (dapat dilihat pada lampiran 2). Pembahasan hasil perhitungan grade of service secara teori dapat dilakukan berdasarkan persamaan 2.1 untuk menghitung nilai intensitas trafik dan persamaan 2.13 untuk menghitung grade of service. Pembahasan untuk perhitungan grade of service secara teori dapat dilihat pada beberapa contoh berikut: 1. Berdasarkan data pada tabel 4.5 nomor 1 yaitu: Jumlah panggilan = 10 Holding Time = 1 menit Jumlah Trunk = 1 Maka nilai intensitas trafik (A) adalah: Dengan intensitas trafik = 0.16667 Erlang, maka nilai Grade of Service dapat diperoleh menggunakan persamaan 2.13 yaitu: Dengan Maka: 47 Hasil dari perhitungan di atas sama dengan hasil dari perhitungan pada program. Nilai grade of service = 0.14286 tidak terdapat pada tabel kapasitas trafik, karena nilai grade of service yang terdapat pada tabel kapasitas trafik (0.02, 0.01, 0.005, dan 0.001) merupakan nilai-nilai yang telah ditentukan sebelumnya yang bertujuan untuk mempermudah dalam perhitungan trafik, namun berdasarkan persamaan 2.13 kita dapat menentukan nilai-nilai grade of service lainnya. 2. Berdasarakan data pada tabel 4.5 nomor 98 yaitu: Jumlah panggilan = 343 Holding Time = 15 menit Jumlah Trunk = 98 Maka nilai intensitas trafik (A) adalah: Dengan intensitas trafik = 1.7 Erlang, maka nilai grade of service adalah: 48 Nilai Grade of Service = 0.01910451097 jika dibulatkan maka akan menjadi 0.019 atau 0.02 di mana nilai ini sama dengan nilai dari hasil perhitungan pada program. Nilai 0.019 atau 0.02 terdapat pada tabel kapasitas trafik. 3. Berdasarkan data pada tabel 4.5 nomor 91 yaitu: Jumlah panggilan = 873 Holding Time = 5 menit Jumlah Trunk = 91 Maka nilai intensitas trafik (A) adalah: Dengan intensitas trafik = 72.75 Erlang, maka nilai Grade of Service adalah: 49 Nilai grade of service = 0.005105931336 jika dibulatkan maka akan menjadi 0.005106 di mana nilai ini sama dengan nilai dari hasil perhitungan pada program. Nilai 0.005106 atau 0.005 terdapat pada tabel kapasitas trafik. 4. Berdasarkan data pada tabel 4.5 nomor 100 yaitu: Jumlah panggilan = 302 Holding Time = 15 menit Jumlah Trunk = 100 Maka nilai intensitas trafik (A) adalah: Dengan intensitas trafik = 75.5 Erlang, maka nilai Grade of Service adalah: Nilai Grade of Service = 0.00108267646 jika dibulatkan maka akan menjadi 0.001083 di mana nilai ini sama dengan nilai dari hasil perhitungan pada program. Nilai 0.001083 atau 0.001 terdapat pada tabel kapasitas trafik. 5. Berdasarkan data pada tabel 4.5 nomor 20 yaitu: 50 Jumlah panggilan = 38 Holding Time = 15 menit Jumlah Trunk = 20 Maka nilai intensitas trafik (A) adalah: Dengan intensitas trafik = 9.5 Erlang, maka nilai Grade of Service adalah: Nilai grade of service = 0.001103883744 jika dibulatkan akan menjadi 0.001103 di mana nilai ini sama dengan nilai dari hasil perhitungan pada program. Nilai 0.001103 atau 0.001 terdapat pada tabel kapasitas trafik. Program untuk menghitung grade of service dapat dijelaskan sebagai berikut: Masukan pada program untuk menghitung grade of service adalah jumlah panggilan, holding time, dan jumlah trunk. Masukan-masukan tersebut sebelum digunakan, harus dideklarasikan terlebih dahulu. Seperti deklarasi pada jumlah panggilan dan holding time di atas, jumlah Trunk juga harus di deklarasikan dengan cara memberi perintah “str2double” yang berfungsi untuk merubah masukan pada edit3 yaitu jumlah trunk yang 51 berupa text menjadi angka sehingga dapat dipakai untuk menghitung nilai grade of service. Perhitungan grade of service pada program menggunakan persamaan 2.13 di mana dideklarasikan sebagai “numer”, dan denom=denom+HitA^i/factorial(i);”. dijadikan fungsi “for i=0:(N-1) Nilai E1,N-1 pada program diperoleh dengan menambahkan perintah “B1=numer/denom” dan nilai grade of service diperoleh dengan menambahkan perintah “B=(HitA*B1)/(N+(HitA*B1))”. Fungsi “end” untuk mengakhiri fungsi “for i=0:(N-1)”. Berdasarkan pada tabel kapasitas trafik, program pembelajaran trafik hanya dapat menghitung grade of service dengan masukan jumlah trunk kurang dari atau sama dengan 100, untuk membatasi hal tersebut, maka perlu ditambahkan perintah “closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI msgbox('Jumlah trunk harus kurang dari atau sama dengan 100, silahkan masukkan kembali nilai jumlah trunk yang lain','Perhatian','warn') return”. Dengan menambahkan perintah di atas, jika nilai jumlah trunk (N) yang dimasukkan lebih dari 100, maka program akan menampilkan kotak pesan seperti pada gambar 4.15, dan tampilan program akan kembali ke keadaan semula seperti pada gambar 4.2. Jika masukan nilai jumlah trunk (N) yang dimasukkan lebih kecil atau sama dengan 100, maka program akan menghitung nilai grade of service. Untuk mengaktifkan edit10, edit11, dan edit12 agar dapat menampilkan keluaran maka perlu menambahkan perintah: “else set(handles.edit10,'Enable','on'); set(handles.edit11,'Enable','on'); set(handles.edit12,'Enable','on');”. Keluaran yang diperoleh akan ditampilkan pada panel keuaran dengan menambahkan perintah: 52 “set(handles.edit10,'String',num2str(HitA)); set(handles.edit11,'String',num2str(N)); set(handles.edit12,'String',num2str(B));” perintah di atas akan menentukan keluaran intensitas trafik akan ditampilkan pada edit10, keluaran jumlah trunk akan ditampilkan pada edit11, dan keluaran nilai grade of service akan ditampilkan pada edit12. Untuk ketiga fungsi “end” pada perintah dibawah, masing-masing berfungsi untuk mengakhiri fungsi “if get(handles.popupmenu1,'Enable')”, N>100;”, fungsi “switch dan fungsi “if HitA>87.6”. Gambar 4.15 kotak pesan untuk jumlah trunk > 100 Perintah pada program untuk menghasilkan keluaran berupa jumlah trunk adalah: N=str2double(get(proyek.edit3,'String')); numer=HitA^(N-1)/factorial(N-1); denom=0; for i=0:(N-1) denom=denom+HitA^i/factorial(i); B1=numer/denom; B=(HitA*B1)/(N+(HitA*B1)); end if N>100; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI msgbox('Jumlah trunk harus kurang dari atau sama dengan 100, silahkan masukkan kembali nilai jumlah trunk yang lain','Perhatian','warn') return; else set(handles.edit10,'Enable','on'); set(handles.edit11,'Enable','on'); 53 set(handles.edit12,'Enable','on'); set(handles.edit10,'String',num2str(HitA)); set(handles.edit11,'String',num2str(N)); set(handles.edit12,'String',num2str(B)); end end end Tombol “kembali” berfungsi untuk mengembalikan tampilan program seperti pada gambar 4.2 dengan menambahkan perintah: % --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI Fungsi “function pushbutton2_Callback(hObject, eventdata, handles)” berfungsi untuk mengeksekusi perintah saat pushbutton2 ditekan[6]. Pushbutton2 adalah tombol “kembali”. Tombol “selesai” berfungsi untuk menutup program pembelajaran trafik dengan menambahkan perintah: % --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close; Fungsi “function pushbutton3_Callback(hObject, eventdata, handles” berfungsi untuk mengeksekusi perintah saat pushbutton3 ditekan[6]. Pushbutton2 adalah tombol “selesai”. 54 Gambar pada program dapat ditampilkan dengan menambahkan perintah: % --- Executes just before traffic is made visible. function traffic_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to traffic (see VARARGIN) backgroundImage = importdata('gambar13.jpg'); % memilih axes axes(handles.axes1); image(backgroundImage); axis off handles.output = hObject; % Update handles structure guidata(hObject, handles) Perintah handles)” “function Untitled_1_Callback(hObject, eventdata, berfungsi untuk menampilkan menu bar bantuan. Perintah “function Untitled_2_Callback(hObject, eventdata, handles Cara_Menggunakan;” berfungsi untuk menampilkan tampilan cara menggunakan saat pengguna menekan sub menu “Cara Menggunakan”. Perintah “function Untitled_3_Callback(hObject, eventdata, handles) copyright;” berfungsi untuk menampilkan tampilan hak cipta saat pengguna menekan sub menu “Hak Cipta”. Menu Bar Bantuan dapat ditampilkan dengan menambahkan perintah : % -------------------------------------------------------------------function Untitled_1_Callback(hObject, eventdata, handles) % hObject handle to Untitled_1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -------------------------------------------------------------------function Untitled_2_Callback(hObject, eventdata, handles) % hObject handle to Untitled_2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) Cara_Menggunakan; % -------------------------------------------------------------------function Untitled_3_Callback(hObject, eventdata, handles) % hObject handle to Untitled_3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) copyright; 55 BAB V KESIMPULAN DAN SARAN 5.1 KESIMPULAN 1. Program pembelajaran trafik telah bekerja sesuai perancangan. 2. Program pembelajaran trafik telah dapat menentukan jumlah trunk yang terlayani. 3. Program pembelajaran trafik telah dapat menampilkan grade of service. 4. Semakin besar nilai intensitas trafik, maka semakin banyak jumlah trunk yang di butuhkan agar nilai grade of service tetap. 5.2 SARAN Dari hasil pembahasan yang diperoleh, tampilan program pembelajaran trafik masih perlu disempurnakan dengan menambahkan beberapa ilustrasi mengenai proses pada jaringan telekomunikasi sehingga pengguna bisa mendapatkan gambaran yang lebih jelas dan tampilan program akan menjadi lebih menarik. . 55 56 DAFTAR PUSTAKA [1] Usman Kurniawan, Uke (2008) Pengantar Ilmu Telekomunikasi. Bandung: Penerbit Informatika. Hal. 180. [2] Budiyono, Eko (2006) Analisis Trafik Pada Sistem Telekomunikasi Selular Berbasis CDMA 2000 1X Di Wilayah Semarang Kota. Fakultas Teknik Universitas Negeri Semarang. [3] Cahyono, Dwi (2010) Analisis Trafik Untuk Kualitas Performansi Jaringan Berbasis Teknologi GSM Di P.T Excelcomindo Pratama Semarang. Fakultas Teknik Universitas Gadjah Mada. [4] http://file.upi.edu/Direktori/E%20%20FPTK/JUR.%20PEND.%20TEKNIK%20ELEKTRO/196406071995122%20%20ARJUNI%20BUDI%20PANTJAWATI/EK%20462%20Sistem%20Komunika si%20Digital/MODUL%20DASAR%20TELEKOMUNIKASI.pdf, diakses tanggal 15 februari 2010. [5] Flood, J. E (1994) Telecommunication Switching, Traffic and Networks, Prentice Hall,. [6] Paulus, Erick dan Nataliani, Yessica (2007) cepat mahir GUI Matlab, Penerbit Andi. [7] http://www.mathworks.com, diakses tanggal 3 april 2011. 57 LAMPIRAN 58 Tabel Kapasitas Trafik pada kelompok full-availability 59 Tabel 4.5. Tabel perhitungan nilai grade of service No MASUKAN KELUARAN Jumlah Panggilan Holding Time Jumlah Trunk Intensitas Trafik Grade of Service 1. 10 1 1 0.16667 0.14286 2. 9 1 2 0.15 0.009687 3. 21 1 3 0.35 0.005038 4. 27 1 4 0.45 0.001089 5. 34 3 5 1.7 0.02179 6. 38 3 6 2 0.012085 7. 44 3 7 2.2 0.005494 8. 42 3 8 2.1 0.001149 9. 52 5 9 4.3333 0.019752 10. 54 5 10 4.5 0.010494 11. 56 5 11 4.6667 0.005402 12. 51 5 12 4.25 0.001034 13. 45 10 13 7.5 0.03421 14. 45 10 14 7.5 0.011421 15. 45 10 15 7.5 0.005678 16. 41 10 16 6.8333 0.001164 17. 43 15 17 10.75 0.021181 18. 42 15 18 10.5 0.010471 19. 42 15 19 10.5 0.005753 20. 38 15 20 9.5 0.001103 21. 890 1 21 14.8333 0.029318 22. 822 1 22 13.7 0.010306 23. 804 1 23 13.4 0.004941 24. 732 1 24 12.2 0.000959 25. 350 3 25 17.5 0.019958 26. 338 3 26 16.9 0.009684 27. 332 3 27 16.6 0.005006 28. 304 3 28 15.2 0.001015 29. 254 5 29 21.1667 0.021031 30. 245 5 30 20.4167 0.01039 31. 238 5 31 19.8333 0.004941 60 Tabel 4.5. (Lanjutan)Tabel perhitungan nilai grade of service No MASUKAN KELUARAN Jumlah Panggilan Holding Time Jumlah Trunk Intensitas Trafik Grade of Service 32. 219 5 32 18.25 0.001034 33. 149 10 33 24.8333 0.021531 34. 143 10 34 23.8333 0.010273 35. 139 10 35 23.1667 0.004992 36. 128 10 36 21.3333 0.001026 37. 114 15 37 28.5 0.02 38. 110 15 38 27.5 0.011037 39. 106 15 39 26.5 0.004919 40. 98 15 40 24.5 0.001036 41. 1920 1 41 32 0.020517 42. 1848 1 42 30.8 0.010109 43. 1794 1 43 29.9 0.004912 44. 1667 1 44 27.7833 0.001087 45. 712 3 45 35.6 0.019961 46. 686 3 46 34.3 0.009922 47. 666 3 47 33.3 0.004835 48. 618 3 48 30.9 0.001011 49. 473 5 49 39.4167 0.020504 50. 455 5 50 37.9167 0.01005 51. 442 5 51 36.8333 0.004963 52. 411 5 52 34.25 0.001051 53. 259 10 53 43.1667 0.02054 54. 249 10 54 41.5 0.009984 55. 242 10 55 40.3333 0.004968 56. 225 10 56 37.5 0.001020 57. 188 15 57 47 0.020886 58. 181 15 58 45.25 0.010359 59. 176 15 59 44 0.005226 60. 164 15 60 41 0.001100 61. 3036 1 61 50.6 0.020051 62. 2928 1 62 48.8 0.010073 63. 2844 1 63 47.4 0.004973 61 Tabel 4.5. (Lanjutan)Tabel perhitungan nilai grade of service No MASUKAN KELUARAN Jumlah Panggilan Holding Time Jumlah Trunk Intensitas Trafik Grade of Service 64. 2646 1 64 44.1 0.000975 65. 1088 3 65 54.4 0.020103 66. 1048 3 66 52.4 0.009905 67. 1020 3 67 51 0.005034 68. 950 3 68 47.5 0.000983 69. 699 5 69 58.25 0.020302 70. 672 5 70 56 0.009714 71. 656 5 71 54.6667 0.005168 72. 611 5 72 50.9167 0.000988 73. 372 10 73 62 0.02004 74. 359 10 74 59.8333 0.010076 75. 350 10 75 58.3333 0.005270 76. 326 10 76 54.3333 0.000986 77. 264 15 77 66 0.020716 78. 267 15 78 66.75 0.01992 79. 248 15 79 62 0.005345 80. 232 15 80 58 0.001075 81. 4176 1 81 69.6 0.019827 82. 4230 1 82 70.5 0.019613 83. 3924 1 83 65.4 0.005019 84. 3678 1 84 61.3 0.001011 85. 1468 3 85 73.4 0.019682 86. 1488 3 86 74.4 0.019817 87. 1380 3 87 69 0.004971 88. 1296 3 88 64.8 0.001021 89. 927 5 89 77.25 0.019688 90. 939 5 90 78.25 0.019811 91. 873 5 91 72.75 0.005106 92. 820 5 92 68.3333 0.001037 93. 486 10 93 81 0.019342 94. 492 10 94 82 0.019457 95. 458 10 95 76.3333 0.005010 62 Tabel 4.5. (Lanjutan)Tabel perhitungan nilai grade of service No MASUKAN KELUARAN Jumlah Panggilan Holding Time Jumlah Trunk Intensitas Trafik Grade of Service 96. 431 10 96 71.8333 0.001035 97. 340 15 97 85 0.019784 98. 343 15 98 85.75 0.019105 99. 320 15 99 80 0.00501 100. 302 15 100 75.5 0.001088 63 LISTING PROGRAM PEMBELAJARAN TRAFIK function varargout = traffic(varargin) % TRAFFIC M-file for traffic.fig % TRAFFIC, by itself, creates a new TRAFFIC or raises the existing % singleton*. % % H = TRAFFIC returns the handle to a new TRAFFIC or the handle to % the existing singleton*. % % TRAFFIC('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in TRAFFIC.M with the given input arguments. % % TRAFFIC('Property','Value',...) creates a new TRAFFIC or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before traffic_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to traffic_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help traffic % Last Modified by GUIDE v2.5 25-Jun-2011 22:34:34 % Begin initialization code - DO NOT EDIT gui_Singleton = 0; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @traffic_OpeningFcn, ... 'gui_OutputFcn', @traffic_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before traffic is made visible. function traffic_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. 64 % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to traffic (see VARARGIN) % memuat gambar background kedalam GUI matlab backgroundImage = importdata('gambar13.jpg'); % memilih axes axes(handles.axes1); % menempatkan gambar pada axes image(backgroundImage); % menghapus axes axis off % Choose default command line output for traffic handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes traffic wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = traffic_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double % --- Executes during object creation, after setting all properties. function edit1_CreateFcn(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes when selected object is changed in uipanel1. function uipanel1_SelectionChangeFcn(hObject, eventdata, handles) % hObject handle to the selected object in uipanel1 65 % eventdata structure with the following fields (see UIBUTTONGROUP) % EventName: string 'SelectionChanged' (read only) % OldValue: handle of the previously selected object or empty if none was selected % NewValue: handle of the currently selected object % handles structure with handles and user data (see GUIDATA) %retrieve GUI data, i.e. the handles structure %updates the handles structure guidata(hObject, handles); switch get(eventdata.NewValue,'Tag') % Get Tag of selected object. case 'radiobutton1' set(handles.edit1,'Enable','on'); set(handles.edit2,'Enable','on'); set(handles.edit3,'Enable','off'); set(handles.popupmenu1,'Enable','on'); set(handles.edit10,'Enable','off'); set(handles.edit11,'Enable','off'); set(handles.edit12,'Enable','off'); case 'radiobutton2' set(handles.edit1,'Enable','on'); set(handles.edit2,'Enable','on'); set(handles.edit3,'Enable','on'); set(handles.popupmenu1,'Enable','off'); set(handles.edit10,'Enable','off'); set(handles.edit11,'Enable','off'); set(handles.edit12,'Enable','off'); otherwise % Code for when there is no match. end function edit2_Callback(hObject, eventdata, handles) % hObject handle to edit2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit2 as text % str2double(get(hObject,'String')) returns contents of edit2 as a double % --- Executes during object creation, after setting all properties. function edit2_CreateFcn(hObject, eventdata, handles) % hObject handle to edit2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end 66 function edit3_Callback(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit3 as text % str2double(get(hObject,'String')) returns contents of edit3 as a double % --- Executes during object creation, after setting all properties. function edit3_CreateFcn(hObject, eventdata, handles) % hObject handle to edit3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes on selection change in popupmenu1. function popupmenu1_Callback(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Proceed with callback... % Hints: contents = get(hObject,'String') returns popupmenu1 contents as cell array % contents{get(hObject,'Value')} returns selected item from popupmenu1 % --- Executes during object creation, after setting all properties. function popupmenu1_CreateFcn(hObject, eventdata, handles) % hObject handle to popupmenu1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: popupmenu controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit5_Callback(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) 67 % Hints: get(hObject,'String') returns contents of edit5 as text % str2double(get(hObject,'String')) returns contents of edit5 as a double % --- Executes during object creation, after setting all properties. function edit5_CreateFcn(hObject, eventdata, handles) % hObject handle to edit5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit6_Callback(hObject, eventdata, handles) % hObject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit6 as text % str2double(get(hObject,'String')) returns contents of edit6 as a double % --- Executes during object creation, after setting all properties. function edit6_CreateFcn(hObject, eventdata, handles) % hObject handle to edit6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes on button press in pushbutton1. function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) proyek=guidata(gcbo); c=str2double(get(proyek.edit1,'String')); h=str2double(get(proyek.edit2,'String')); 68 T=60; HitA=(c*h)/T; switch get(handles.popupmenu1,'Enable') % Get Enables of selected popupmenu1. case 'on' switch get(handles.popupmenu1,'Value') case 1 B=0.02; if HitA>87.6 msgbox('Nilai Intensitas trafik harus kurang dari atau sama dengan 87.6. silahkan memasukkan kembali nilai jumlah panggilan dan holding time yang lain','Perhatian','warn') return; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI else end case 2 B=0.01; if HitA>84.0 msgbox('Nilai Intensitas trafik untuk grade of service 0.01 harus kurang dari atau sama dengan 84.0. silahkan memasukkan kembali nilai grade of service yang lain yaitu 0.02','Perhatian','warn') return; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI else end case 3 B=0.005; if HitA>80.9 msgbox('Nilai Intensitas trafik untuk grade of service 0.005 harus kurang dari atau sama dengan 80.9. silahkan memasukkan kembali nilai grade of service yang lain yaitu 0.02 atau0.01','Perhatian','warn') return; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI 69 else end case 4 B=0.001; if HitA>75.3 msgbox('Nilai Intensitas trafik untuk grade of service 0.001 harus kurang dari atau sama dengan 75.3. silahkan memasukkan kembali nilai grade of service yang lain yaitu 0.02, 0.01, atau 0.005','Perhatian','warn') return; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI else end otherwise end A = importdata('C:\Documents and Settings\user\My Documents\MATLAB\tabel.txt','\t'); switch B case 0.02 i=0; beda=0; while beda <= 0 i=i+1; beda=A(i,1)-HitA; if beda>0 break, end end N=i-1; case 0.01 i=0; beda=0; while beda <= 0 i=i+1; beda=A(i,2)-HitA; if beda>0 break, end end N=i-1; case 0.005 i=0; beda=0; while beda <= 0 i=i+1; beda=A(i,3)-HitA; if beda>0 break, end end N=i-1; case 0.001 i=0; beda=0; while beda <= 0 i=i+1; 70 beda=A(i,4)-HitA; if beda>0 break, end end N=i-1; otherwise end set(handles.edit10,'Enable','on'); set(handles.edit11,'Enable','on'); set(handles.edit12,'Enable','on'); set(handles.edit10,'String',num2str(HitA)); set(handles.edit11,'String',num2str(N)); set(handles.edit12,'String',num2str(B)); case 'off' N=str2double(get(proyek.edit3,'String')); numer=HitA^(N-1)/factorial(N-1); denom=0; for i=0:(N-1) denom=denom+HitA^i/factorial(i); B1=numer/denom; B=(HitA*B1)/(N+(HitA*B1)); end if N>100; closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI msgbox('Jumlah trunk harus kurang dari atau sama dengan 100, silahkan masukkan kembali nilai jumlah trunk yang lain','Perhatian','warn') return; else set(handles.edit10,'Enable','on'); set(handles.edit11,'Enable','on'); set(handles.edit12,'Enable','on'); set(handles.edit10,'String',num2str(HitA)); set(handles.edit11,'String',num2str(N)); set(handles.edit12,'String',num2str(B)); end end % --- Executes on button press in pushbutton2. function pushbutton2_Callback(hObject, eventdata, handles) % hObject handle to pushbutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) closeGUI = handles.figure1; %handles.figure1 is the GUI figure guiPosition = get(handles.figure1,'Position'); %get the position of the GUI guiName = get(handles.figure1,'Name'); %get the name of the GUI 71 eval(guiName) %call the GUI again close(closeGUI); %close the old GUI set(gcf,'Position',guiPosition); %set the position for the new GUI % --- Executes on button press in pushbutton3. function pushbutton3_Callback(hObject, eventdata, handles) % hObject handle to pushbutton3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close; function edit8_Callback(hObject, eventdata, handles) % hObject handle to edit8 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit8 as text % str2double(get(hObject,'String')) returns contents of edit8 as a double % --- Executes during object creation, after setting all properties. function edit8_CreateFcn(hObject, eventdata, handles) % hObject handle to edit8 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit9_Callback(hObject, eventdata, handles) % hObject handle to edit9 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit9 as text % str2double(get(hObject,'String')) returns contents of edit9 as a double % --- Executes during object creation, after setting all properties. function edit9_CreateFcn(hObject, eventdata, handles) % hObject handle to edit9 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. 72 % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % --- Executes during object creation, after setting all properties. function uipanel1_CreateFcn(hObject, eventdata, handles) % hObject handle to uipanel1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called function edit10_Callback(hObject, eventdata, handles) % hObject handle to edit10 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit10 as text % str2double(get(hObject,'String')) returns contents of edit10 as a double % --- Executes during object creation, after setting all properties. function edit10_CreateFcn(hObject, eventdata, handles) % hObject handle to edit10 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit11_Callback(hObject, eventdata, handles) % hObject handle to edit11 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit11 as text % str2double(get(hObject,'String')) returns contents of edit11 as a double % --- Executes during object creation, after setting all properties. function edit11_CreateFcn(hObject, eventdata, handles) % hObject handle to edit11 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called 73 % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end function edit12_Callback(hObject, eventdata, handles) % hObject handle to edit12 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit12 as text % str2double(get(hObject,'String')) returns contents of edit12 as a double % --- Executes during object creation, after setting all properties. function edit12_CreateFcn(hObject, eventdata, handles) % hObject handle to edit12 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns called % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end % -------------------------------------------------------------------function Untitled_1_Callback(hObject, eventdata, handles) % hObject handle to Untitled_1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % -------------------------------------------------------------------function Untitled_2_Callback(hObject, eventdata, handles) % hObject handle to Untitled_2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) Cara_Menggunakan; % -------------------------------------------------------------------function Untitled_3_Callback(hObject, eventdata, handles) % hObject handle to Untitled_3 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) copyright; 74 LISTING PROGRAM SPLASH FORM function varargout = copyrightfin(varargin) % COPYRIGHTFIN M-file for copyrightfin.fig % COPYRIGHTFIN, by itself, creates a new COPYRIGHTFIN or raises the existing % singleton*. % % H = COPYRIGHTFIN returns the handle to a new COPYRIGHTFIN or the handle to % the existing singleton*. % % COPYRIGHTFIN('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in COPYRIGHTFIN.M with the given input arguments. % % COPYRIGHTFIN('Property','Value',...) creates a new COPYRIGHTFIN or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before copyrightfin_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to copyrightfin_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help copyrightfin % Last Modified by GUIDE v2.5 19-Apr-2011 19:02:17 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @copyrightfin_OpeningFcn, ... 'gui_OutputFcn', @copyrightfin_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT 75 % --- Executes just before copyrightfin is made visible. function copyrightfin_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to copyrightfin (see VARARGIN) backgroundImage = importdata('gambar6.jpg'); axes(handles.axes1); image(backgroundImage); axis off % Choose default command line output for copyrightfin handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes copyrightfin wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = copyrightfin_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; function traffik() copyrightfin; pause(4) close(copyrightfin) traffic; end 76 LISTING PROGRAM MENU BAR 1. CARA PENGGUNAAN function varargout = Cara_Menggunakan(varargin) % CARA_MENGGUNAKAN M-file for Cara_Menggunakan.fig % CARA_MENGGUNAKAN, by itself, creates a new CARA_MENGGUNAKAN or raises the existing % singleton*. % % H = CARA_MENGGUNAKAN returns the handle to a new CARA_MENGGUNAKAN or the handle to % the existing singleton*. % % CARA_MENGGUNAKAN('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in CARA_MENGGUNAKAN.M with the given input arguments. % % CARA_MENGGUNAKAN('Property','Value',...) creates a new CARA_MENGGUNAKAN or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before Cara_Menggunakan_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to Cara_Menggunakan_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help Cara_Menggunakan % Last Modified by GUIDE v2.5 25-Jun-2011 23:07:03 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Cara_Menggunakan_OpeningFcn, ... 'gui_OutputFcn', @Cara_Menggunakan_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else 77 gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before Cara_Menggunakan is made visible. function Cara_Menggunakan_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to Cara_Menggunakan (see VARARGIN) backgroundImage = importdata('gambar 55.jpg'); % memilih axes axes(handles.axes1); % menempatkan gambar pada axes image(backgroundImage); % menghapus axes axis off % Choose default command line output for Cara_Menggunakan handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes Cara_Menggunakan wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = Cara_Menggunakan_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output; 2. HAK CIPTA function varargout = copyright(varargin) % COPYRIGHT M-file for copyright.fig % COPYRIGHT, by itself, creates a new COPYRIGHT or raises the existing % singleton*. % % H = COPYRIGHT returns the handle to a new COPYRIGHT or the handle to % the existing singleton*. % % COPYRIGHT('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in COPYRIGHT.M with the given input arguments. % 78 % COPYRIGHT('Property','Value',...) creates a new COPYRIGHT or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before copyright_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to copyright_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one % instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES % Edit the above text to modify the response to help copyright % Last Modified by GUIDE v2.5 25-Jun-2011 22:31:00 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @copyright_OpeningFcn, ... 'gui_OutputFcn', @copyright_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end % End initialization code - DO NOT EDIT % --- Executes just before copyright is made visible. function copyright_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to copyright (see VARARGIN) backgroundImage = importdata('gambar6.jpg'); axes(handles.axes1); image(backgroundImage); axis off % Choose default command line output for copyrightfin handles.output = hObject; % Update handles guidata(hObject, % Choose default handles.output = structure handles); command line output for copyright hObject; 79 % Update handles structure guidata(hObject, handles); % UIWAIT makes copyright wait for user response (see UIRESUME) % uiwait(handles.figure1); % --- Outputs from this function are returned to the command line. function varargout = copyright_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Get default command line output from handles structure varargout{1} = handles.output;