PROYEK AKHIR
Simulasi Pengiriman Dan Penerimaan Informasi Menggunakan Teknologi Spread Spektrum
Ria Puasasi NRP.7210 040 514
Dosen Pembimbing: Aries pratiarso, ST,MT NIP.19661117 199103 1 004 Arifin, ST,MT NIP. 19600503 198803 1 004
JURUSAN TEKNIK TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA SURABAYA 2012
PROYEK AKHIR
Simulasi Pengiriman Dan Penerimaan Informasi Menggunakan Teknologi Spread Spektrum
Ria Puasasi NRP.7210 040 514
Dosen Pembimbing: Aries pratiarso, ST,MT NIP. 19661117 199103 1 004 Arifin, ST,MT NIP. 19600503 198803 1 004
JURUSAN TEKNIK TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA SURABAYA 2012
i
LEMBAR PENGESAHAN Simulasi Pengiriman Dan Penerimaan Informasi Menggunakan Teknologi Spread Spektrum Oleh : Ria Puasasi 7210.0040.514 Proyek Akhir ini Diajukan Sebagai Salah Satu Syarat Untuk Memperoleh Gelar Sarjana Sains Terapan (S.ST.) di Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember Surabaya Disetujui Oleh Penguji Proyek Akhir :
Dosen Pembimbing:
1. Akuwan Saleh, S.ST, MT NIP. 19671123 198902 1 001
1. Aries pratiarso, ST, MT NIP. 19661117 199103 1 004
2. Amang Sudarsono, ST, Ph.D NIP. 19740920 200212 1 001
2. Arifin, ST,MT NIP. 19600503 198803 1 004
3. Ir. Sulistyo Mahargyo Buwono NIP. 19580531 198701 1 001 Mengetahui Ketua Jurusan Teknik Telekomunikasi
Arifin ST, MT NIP.19600503.198803.1.004
ii
ABSTRAK Pada proyek akhir ini akan dibuat Simulasi pengiriman dan penerimaan sinyal informasi yang dapat mendiskripsikan proses kerja teknik –teknik spread spectrum secara lebih jelas dan terarah sehingga para praktisi dapat benar-benar jelas memahami gambaran proses kerja dari pengiriman dan penerimaan teknik Direct Sequence Spread Spectrum, hopping Spread Spectrum dan Spread Spectrum metode Hibrid. Pada pembuatan software simulasi ini menggunakan bahasa pemprograman MATLAB agar dapat menampilkan grafik hasil proses pengiriman dan penerimaan dari ketiga teknik spread spectrum tersebut. Penelitian ini membuat program pada tiap-tiap blok transmitter dan receiver pada setiap teknik Direct Sequence Spread SpectrumFrequency, Frequency hopping Spread Spectrum dan Spread Spectrum metode Hibrid. Pengujian sampai sebatas keakuratan program pada masing–masing blok. Dari pengujian dikatakan sukses apabila sinyal yang diterima disisi transmiter sama dengan sinyal yang dikirim pada sisi receiver dan telah sesuai dengan teori.
Keywords : MATLAB,Direct Sequence Spread Spectrum,Frequency Hopping Spread Spectrum, Hybrid Method
ABSTRAK This final project will be made Simulation signal transmission and receiving of information that can explain the process of spread spectrum techniques in a more clear and explicit, so that practitioners can understand the flow of the working process of signal transmission and receiving signals by the method of Direct Sequence Spread Spectrum, hopping Spread Spectrum and Spread Spectrum Hybrid method. In making this software simulation, used the MATLAB programming language so it can display graphs the results of the process of sending and receiving information by using three kinds of spread spectrum techniques. This study makes a simulation of the transmitter and receiver blocks on Direct Sequence Spread Spectrum, Frequency hopping Spread Spectrum and Hybrid methods. Software testing was limited to the accuracy of delivery on each block. testing can be said to succeed if the received signal at the receiver results would be similar to signals sent by the transmitter and are in accordance with the theory.
Keywords : MATLAB,Direct Sequence Spread Spectrum,Frequency Hopping Spread Spectrum, Hybrid Method
KATA PENGANTAR Puji syukur kepada Tuhan Yang Maha Esa yang telah melimpahkan rahmat dan hikmad-Nya sehingga saya dapat menyelesaikan proyek akhir ini dengan judul: Simulasi Pengiriman dan Penerimaan Informasi Menggunakan Teknologi Spread Spektrum Proyek akhir ini diselesaikan dengan berpegang pada teori yang pernah didapatkan, dan bimbingan dari dosen pembimbing proyek akhir serta pihak-pihak lain yang sangat membantu hingga sampai terselesaikannya proyek akhir ini. Proyek akhir ini digunakan sebagai salah satu syarat akademis untuk memperoleh gelar Sarjana Sains Terapan (S.ST) di Politeknik Elektronika Negeri Surabaya, Institut Teknologi Sepuluh Nopember Surabaya. Penyusun juga mengucapkan terima kasih yang sebesar-besarnya kepada semua pihak yang telah menjadi bagian atas penyelesaian buku Proyek Akhir ini. Penyusun menyadari bahwa masih banyak kekurangan dalam perencanaan dan pembuatan buku proyek akhir ini. Oleh karena itu, besar harapan penyusun untuk menerima saran dan kritik dari para pembaca. Semoga buku ini dapat memberikan manfaat bagi para mahasiswa Politeknik Elektronika Negeri Surabaya pada umumnya dan dapat memberikan nilai lebih untuk para pembaca pada khususnya.
Surabaya, Januari 2012
Penulis
UCAPAN TERIMA KASIH Dengan penuh rasa syukur kehadirat Tuhan Yang Maha Esa, saya selaku penyusun dan penulis mengucapkan terima kasih yang sebesarbesarnya kepada pihak-pihak yang telah membantu penulis untuk menyelesaikan proyek akhir ini, penulis mengucapkan terima kasih kepada : 1. 2. 3.
4. 5.
6. 7. 8.
9.
Tuhan Yang Maha Esa yang memberikan hikmad-Nya agar proyek akhir ini dapat diselesaikan. Bapak, Ibu dan semua keluarga tercinta yang senantiasa mendoakan dan memberi dukungan. Bapak Dr. Dadet Pramadihanto, M.Eng, selaku Direktur Politeknik Elektronika Negeri Surabaya Institut Teknologi Sepuluh Nopember (ITS). Bapak Arifin, ST. MT, selaku Ketua Jurusan Teknik Listrik Industri PENS-ITS yang telah memberikan motivasi dan dukungan. Bapak Aries Pratiarso, ST MT selaku Dosen Pembimbing I dan bapak Arifin, S.ST, MT selaku Dosen Pembimbing II yang banyak memberikan masukan, saran dan kritik dalam menyelesaikan Proyek Akhir ini. Seluruh Dosen Penguji yang banyak memberikan kritik dan sarannya. Seluruh Dosen dan Karyawan di Politeknik Elektronika Negeri Surabaya, atas segala bantuan dan fasilitasnya. Semua saudaraku D4 LJ Telkom dan D4 LJ Elektro 2010 yang menjadi saudara terbaikku selama menuntut ilmu di Politeknik Elektronika Negeri Surabaya. Semua pihak yang telah membantu penulis hingga terselesainya proyek akhir ini yang tidak dapat penulis sebutkan satu persatu.
Semoga Tuhan selalu memberikan perlindungan, rahmat dan kasihNya bagi kita semua. Amin
DAFTAR ISI HALAMAN JUDUL............................................................................................ i LEMBAR PENGESAHAN.................................................................................. ii ABSTRAK............................................................................................................. iii ABSTRACT...........................................................................................................iv KATA PENGANTAR........................................................................................... v UCAPAN TERIMAKASIH.................................................................................. vi DAFTAR ISI......................................................................................................... vii DAFTAR GAMBAR............................................................................................ x DAFTAR TABEL .................................................................................................xiii BAB I PENDAHULUAN 1.1. Latar Belakang...................................................................................... 1 1.2. Tujuan................................................................................................... 2 1.3. Perumusan Masalah ............................................................................. 2 1.4. Batasan Masalah.................................................................................. 2 1.5. Tinjauan Pustaka.................................................................................. 3 1.6. Metodologi............................................................................................ 4 1.7. Sistematika Penulisan............................................................................ 5 BAB II LANDASAN TEORI 2.1. Narrow band transmission …………………………………………… 7 2.2. Teknologi Spread Spektrum………………………………………….. 8 2.2.1. Direct Sequence Spread Spectrum (DSSS)……. 12 2.2.1.1. Bagaimana DSSS bekerja…………………………………………….. 12 2.2.1.2. Pseudo Noise (PN)…………………………………..…….………….. 19 2.2.1.2.1. Maximal-Length Sequence………………………………………….. 19 2.2.1.2.2. Gold Code…………………………………………………………… 21 2.2.1.3. Binary Phase Shift Keying (BPSK)………….………………….…….. 22 2.2.2. Frequency Hopping Spread Spectrum (FHSS).... 25 2.2.3. Hybrid Method (DS-FH)…..… ……………… 28 BAB III PERENCANAN DAN PEMBUATAN SOFTWARE 3.1. DSSS ( Direct sequence spread spectrum )........................................... 31 3.1.1. Umum................................................................................................... 31 3.1.2. Input Data............................................................................................. 31 3.1.3. Kode Pseudo Noise.............................................................................. 34 3.1.3.1. Maximal-length Sequence...................................................................... 34 3.1.3.2. Gold Code............................................................................................... 37 3.1.4. Spreading.............................................................................................. 38 3.1.5. Modulasi.............................................................................................. 39 3.1.6. AWGN Channel.................................................................................. 40 3.1.7. DSSS Pada Sisi Receiver.................................................................... 41 3.2. FHSS (Frequency Hopping spread spectrum )...................................... 42 3.2.1. FHSS pada sisi Transmitter................................................................... 42 3.2.2. FHSS pada sisi receiver........................................................................ 43 3.3. Metode Hibrid ( DS - FH )................................................................. 44 3.3.1. Hybrid pada sisi Transmitter.............................................................. 44
3.3.2. Hibrid pada sisi Receiver.................................................................... 45 BAB IV PENGUJIAN DAN ANALISA SOFTWARE 4.1. Pengujian DSSS ( Direct Sequence Spread Spectrum )........................ 47 4.1.1. Pengaturan Pertama............................................................................... 47 4.1.2. Pengaturan Kedua.................................................................................. 50 4.2. Pengujian FHSS ( Frequency Hopping Spread Spectrum ).................. 53 4.2.1. Pengaturan Pertama............................................................................... 53 4.2.2. Pengaturan Kedua................................................................................. 56 4.3. Pengujian Hybrid method ( DS-FH ).................................................. 59 4.3.1. Pengaturan Pertama............................................................................. 59 4.3.2. Pengaturan Kedua................................................................................. 62 BAB V PENUTUP 5.1. Kesimpulan............................................................................................ 65 5.2. Saran ............................................................................................... 66 DAFTAR PUSTAKA ......................................................................................... 67
DAFTAR GAMBAR Gambar 2.1 Narrowband vs. spread spectrum dalam hal domain frekuensi7 Gambar 2.2. Bentuk pengiriman dan penerimaan sinyal informasi dengan menggunakan teknik DSSS............................................................................ 13 Gambar 2.3 Blok Diagram DSSS pada sisi pengirim............................... 14 Gambar 2.4 Blok Diagram DSSS pada sisi penerima……..…………… 14 Gambar 2.5. Bentuk sinyal hasil spreading antara sinyal informasi dengan pseudo noise………………….......................................................................... 15 Gambar 2.6 Blok sistem komunikasi Direct Sequence Spread Spectrum (DSSS)…........................................................................................................... 16 Gambar 2.7 Proses Spreading..................…………………………….. 17 Gambar 2.8 Proses Despreading............................... …………...……. 17 Gambar 2.9 Proses despreading kondisi pnt = pnr...........................…… 18 Gambar 2.10 Blok Diagram sebuah SSRG………………….…………. 19 Gambar 2.11 Bentuk shift register dibangkitkan dengan teknik m-sequence..... 21 Gambar 2.12 Diagram blok pembangkitan kode pseudo noise dengan teknik Gold Code…………………………..…………………….……….............…… 22 Gambar 2.13 Blok Diagram Modulator BPSK Pada Sisi Pengirim……… 23 Gambar 2.14 Blok Diagram Demodulator BPSK Pada Sisi Penerima........ 23 Gambar 2.15 Diagram Phasor, Diagram Konstelasi, dan table kebenaran.. 24 Gambar 2.16 System transmitter dan receiver dari system FHSS............... 26 Gambar 2.17 Diagram Blok FHSS bagian pengirim.................................. 27 Gambar 2.18 Diagram Blok FHSS bagian penerima.................................. 27 Gambar 2.19 Diagram Blok HYBRID bagian pengirim............................ 28 Gambar 2.20 Diagram Blok HYBRID bagian penerima.......................... 29 Gambar 3.1 Model Sistem DSSS............................................................. 31 Gambar 3.2 Blokset pemilihan input data................................................ 32 Gambar 3.3 diagram alur pseudo noise tipe m-sequence......................... 35 Gambar 3.4 Blokset pembuatan PN Gold Code..................................... 37 Gambar 3.5 Blokset proses spreading (perkalian input data dengan pseudo noise goldcode).................................................................................................... 38 Gambar 3.6 Diagram alur modulasi BPSK................................................39 Gambar 3.7 Blokset simulasi proses modulasi data terspreading menggunakan modulator 2-PSK / BPSK.................……………………….......................…… 40 Gambar 3.8 Blokset simulasi DSSS pada sisi receiver..............................41 Gambar 3.9 Blokset simulasi FHSS pada sisi transmitter...................... 42 Gambar 3.10 Blokset simulasi FHSS pada sisi receiver........................... 43 Gambar 3.11 Blokset simulasi HIBRID pada sisi transmitter.................... 44 Gambar 3.12 Blokset simulasi HIBRID pada sisi receiver......................... 45 Gambar 4.1 Tampilan pengaturan pada DSSS pertama………………… 47 Gambar 4.2 Tampilan hasil sinyal transmitter DSSS…………………... 48 Gambar 4.3 Tampilan hasil sinyal receiver DSSS…………….…………49 Gambar 4.4 Tampilan pengaturan pada DSSS kedua………………… 50
Gambar 4.5 Gambar 4.6 Gambar 4.7 Gambar 4.8 Gambar 4.9 Gambar 4.10 Gambar 4.11 Gambar 4.12 Gambar 4.13 Gambar 4.14 Gambar 4.15 Gambar 4.16 Gambar 4.17 Gambar 4.18
Tampilan hasil sinyal transmitter2 DSSS………………...... 51 Tampilan hasil sinyal receiver2 DSSS................... 52 Tampilan pengaturan pada FHSS pertama………… … 53 Tampilan hasil sinyal transmitter FHSS……….………….. 54 Tampilan hasil sinyal receiver FHSS……………………… 55 Tampilan pengaturan pada FHSS kedua………………… 56 Tampilan hasil sinyal transmitter2 FHSS………………… 57 Tampilan hasil sinyal receiver2 FHSS…………………. 58 Tampilan pengaturan pada HIBRID pertama……………. 59 Tampilan hasil sinyal transmitter HIBRID……………….. 60 Tampilan hasil sinyal receiver HIBRID………………….. 61 Tampilan pengaturan pada HIBRID kedua……………… 62 Tampilan hasil sinyal transmitter2 HIBRID.......................... 63 Tampilan hasil sinyal receiver2 HIBRID………………… 64
DAFTAR TABEL Tabel 2.1 Tabel 2.2
koneksi feedback untuk m-sequence..................................... 19 koneksi feedback pasangan m-sequence untuk gold cod…. 20
BAB I PENDAHULUAN 1.1 Latar Belakang Kebutuhan akan Sistem Komunikasi yang dapat mengatasi masalah interferensi, dapat menjamin kerahasiaan informasi yang dikirim dan dapat beroperasi pada tingkat S/N (Signal to Noise Ratio) yang rendah atau tahan terhadap pada derau yang besar. Dalam sistem komunikasi sekarang ini, dimana penggunaan frekuensi sudah cukup padat sehingga interferensi dan noise dari transceiver lain cukup besar. Dalam sistem komunikasi radio kita juga sering mendengar adanya penyadapan pembicaraan pada handphone oleh pesawat radio lain. Namun dengan sistem Spread Spektrum ketakutan yang dialami pada sistem komunikasi di atas akan dapat di atasi karena data yang dipancarkan pada sistem spread spectrum adalah data acak yang dikenal noise. Jadi jika penerima tidak mengetahui kode yang digunakan untuk melebarkan data maka penerima hanya akan menerima sinya noise saja. Pada proyek akhir ini, akan dibuat sebuah system yang dapat menggambarkan aliran data pengiriman informasi dari transmitter hingga sampai receiver sesuai blok diagram system komunikasi direct sequence spread spectrum, frekuensi hopping spread spectrum, dan metode hybrid. Sistem yang dibuat yaitu berupa perangkat lunak (software). Perangat lunak atau software yang dibuat, diharapkan dapat menggambarkan bentuk sinyal (visualisasi) dari setiap blok komunikasi yang dilalui oleh sinyal informasi, sehingga kita dapat mengetahui secara pasti aliran perjalanan sinyal informasi mulai dari sisi pengirim sampai dengan pada penerima. Hal ini dapat memudahkan dalam mempelajari sistem komunikasi dengan menggunakan teknologi spread spektrum.
1.2 Tujuan Sesuai dengan judul “ Simulasi Pengiriman Dan Penerimaan Informasi Menggunakan Teknologi Spread Spektrum” maka tujuan khusus tersebut antara lain :
1.
2.
3.
Membuat Simulasi pengiriman data dari pengirim ke penerima dengan menggunakan metode DSSS (Direct Sequence Spread Spectrum). Membuat Simulasi pengiriman data dari pengirim ke penerima dengan menggunakan metode FHSS (Frequency Hopping Spread Spectrum). Membuat Simulasi pengiriman data dari pengirim ke penerima dengan menggunakan metode Hibrid (DS-FH).
1.3 Perumusan Masalah Berdasarkan uraian sebelumnya, maka dapat dirumuskan beberapa masalah yang timbul dalam pembuatan proyek akhir ini yaitu: 1. Bagaimana cara membuat suatu perangkat lunak (software) simulasi yang dapat menggambarkan pengiriman dan penerimaan sinyal keluaran informasi dengan metode DSSS (Direct Sequence Spread Spectrum), FHSS (Frequency Hopping Spread Spectrum) dan Metode Hibrid (DS-FH). 2. Bagaimana Output sinyal informasi dari masing – masing blok system komunikasi DSSS (Direct Sequence Spread Spectrum), FHSS (Frequency Hopping Spread Spectrum) dan Metode Hibrid (DS-FH). 1.4 Batasan Masalah Adapun batasan masalah yang dibuat agar pengerjaan proyek akhir ini dapat berjalan dengan baik, yakni: • Pengolahan data informasi yang dikirim menggunakan metode spread spectrum (DSSS, FHSS), serta spread spectrum hybrid. • Pada proyek akhir ini proses pengiriman informasi menggunakan modulasi BPSK. • Pada proyek akhir ini menggunakan pemrograman simulasi mathlab dengan tampilan GUI.
1.5 Tinjauan Pustaka Penelitian Sebelumnya Abas Ali Pangera [5] telah berhasil membandingkan dan menganalisa pengiriman informasi menggunakan teknologi spread spectrum. Analisis ini mampu memberikan keamanan yang lebih terjamin kepada militer.
Sinyal-sinyal spread spectrum mirip dengan noise (derau), sulit dideteksi, dan bahkan lebih sulit lagi ditangkap atau didemodulasi tanpa menggunakan perangkat yang tepat. Jamming dan interferensi memiliki pengaruh yang lebih ringan terhadap komunikasi spread spectrum jika dibanding terhadap komunikasi narrow band. Karena alasan ini, teknologi spread spectrum telah lama menjadi teknologi unggulan di dunia militer. Pada 9 oktober 2008 Rustamaji dan Elan Djaelani [8], Mahasiswa ITENAS LIPI telah berhasil membuat Aplikasi Rangkaian Terintregasi Direct DigitalSynthetizer (DSS) Sebagai Pembangkit Sinyal Frekuensi Hopping Spread Spectrum (FHSS). Sistem ini dijalankan untuk pengamanan informasi rahasia. Pada Frekuensi Hopping Spread Spectrum, Proses penebaran dilakukan dengan mengubah-ubah frekuensi pembawa secara periodik. Daerah sinyal informasi ditebarkan tergantung pada sinyal penebar, dimana sinyal penebar ini dibangkitkan oleh suatu rangkaian Frekuency Syntesizer yang dikendalikan oleh suatu urutan kode penebar (Spreading code squence). Sesuai dengan spesifikasi yang diharapkan, Frekuency Synthesizer yang digunakan adalah Direct Digital Synthesizer (DDS). 1.6 Metodologi 1. Studi Literatur Pada tahap studi literatur ini akan dilakukan pencarian data, bahan atau literatur mengenai hal yang berhubungan dengan komunikasi spread spectrum yang meliputi FHSS, DSSS, Hybrid . 2. Mempersiapkan Alat dan Bahan Perencanaan dilakukan dengan cara membagi sistem menjadi subbagian software, kemudian disusun peralatan & bahan –bahan ataupun installer program yang mendukung dan dapat digunakan dalam pembuatan sistem tersebut. 3. Perencanaan Perangkat lunak Perangkat lunak matlab GUI dibuat agar sistem dapat melakukan komunikasi menggunakan spread spektrum dan mengolah data. Software juga dipakai apabila alat mengalami kerusakan (error) pada proses pengiriman data. Oleh karena itu, dengan adanya software ini maka proses pengiriman data menjadi lebih efektif dan
4.
bisa termonitoring jika sewaktu-waktu terjadi error.sehingga proses pengiriman informasi berhasil dilakukan. Pengujian pada sistem Pengujian sistem dilakukan untuk memastikan bahwa sistem ini telah berjalan dengan baik.
1.7 Sistematika Penulisan Sistematika penulisan dalam tugas akhir ini adalah sebagai berikut: Bab I Pendahuluan Bab I berisi latar belakang, perumusan masalah, tujuan, batasan masalah, metodologi tugas akhir dan sistematika penulisan. Bab II Landasan Teori Bab II Bab ini menjelaskan secara teori dasar dari pembuatan software atau perangkat lunak pengiriman dan penerimaan sinyal informasi dengan menggunakan teknik spread spectrum yang meliputi ( DSSS, FHSS , dan metode HYBRID ). Bab III Perencanaan dan Pembuatan Bab III berisi uraian , Blok Diagram dan Flowchart tentang pembuatan software atau perangkat lunak untuk pengiriman dan penerimaan sinyal informasi dengan mengunakan menggunakan teknik spread spectrum yang meliputi ( DSSS, FHSS , dan metode HYBRID ). Bab IV Pengujian Alat dan Analisa Bab IV berisi data hasil pengujian dan pembahasan terhadap sistem yang telah dibuat. Bab V Penutup Bab V berisi kesimpulan dan saran terhadap seluruh kegiatan proyek akhir yang telah dilakukan.
------------Halaman Ini Sengaja Dikosongkan----------
BAB II LANDASAN TEORI
2.1 Narrow band transmission Untuk membahas pengertian spread spectrum kita harus terlebih dahulu memiliki suatu referensi dengan membahas konsep narrow band transmission. Narrow band transmission merupakan suatu teknologi komunikasi yang hanya menggunakan spektrum frekuensi sekadar cukup untuk membawa sinyal data, tidak lebih dari itu. Memang telah menjadi misi FCC untuk sedapat mungkin menghemat penggunaan frekuensi, yaitu dengan memberikan sebatas yang diperlukan untuk membuat agar fungsi dapat berjalan. Bertentangan dengan misi FCC di atas, teknologi spread spectrum justru menggunakan band frekuensi yang jauh lebih lebar disbanding dengan frekuensi yang dibutuhkan untuk memancarkan. Sinyal dapat dinyatakan bersifat spread spectrum jika bandwidth-nya jauh lebih lebar jika dibandingkan dengan bandwidth yang dibutuhkan untuk mengirim informasi. Gambar 2.1 mengilustrasikan perbedaan antar narrowband transmission dan spread spectrum transmission. Agar sinyal narrowband dapat diterima, maka sinyal-sinyal itu harus dapat bertahan di atas general noise level, yang disebut noise floor, hingga suatu taraf yang signifikan. Karena lebar band-nya terlalu sempit, maka suatu peak power tinggi mampu menjamin penerimaan sinyal narrowband secara sempurna.
Gambar 2.1. Narrowband vs. spread spectrum dalam hal domain frekuensi. Selain kebutuhan peak power tinggi untuk pengiriman sinyal, kelemahan lain dari narrowband transmission adalah bahwa sinyal narrowband dapat di-jam atau mudah sekali mengalami interferensi. Jamming adalah tindakan secara sengaja untuk menindih suatu transmisi dengan daya lebih tinggi menggunakan sinyal yang tak diinginkan pada band yang sama. Karena band-nya terlalu sempit, maka sinyal sinyal band lainnya, termasuk derau, dapat sepenuhnya melenyapkan informasi melalui overpowering atas suatu narrowband transmission.
2.2 Teknologi Spread Spektrum Spread spectrum lahir pada pertengahan tahun 1950 dilatar belakangi oleh kebutuhan akan sistem komunikasi yang dapat mengatasi masalah interferensi, dapat menjamin kerahasiaan informasi yang dikirim dan dapat beroperasi pada tingkat S/N (signal to noise ratio) yang rendah atau tahan terhadap derau yang besar. Dalam sistem komunkasi sekarang ini, dimana penggunaan frekuensi sudah cukup padat sehingga interferensi dan noise dari transceiver lain cukup besar. Dalam komunikasi radio kita juga sering mendengar adanya penyadapan pembicaraan pada handphone oleh pesawat radio lain. Namun dengan sistem spread spektrum ketakutan yang dialami pada sistem komunikasi diatas akan dapat di atasi karena data yang ditransmit pada sistem spread spektrum adalah data acak yang dikenal sebagai noise. Jadi jika penerima tidak mengetahui code yang digunakan untuk melebarkan data maka penerima hanya akan menerima sinyal noise saja.
Spread spectrum adalah sebuah metode komunikasi dimana semua sinyal komunikasi disebar di seluruh spectrum frekuensi yang tersedia. Pada awalnya dikembangkan untuk kepentingan militer intelejen. Ide dasarnya adalah untuk menyebarkan sinyal informasi melalui bandwith yang lebih luas untuk mencegah dilakukannya pencegatan informasi dan gangguan gangguan lainnya. Istilah spread spectrum digunakan karena pada system ini sinyal yang ditransmisikan memiliki bandwith yang jauh lebih lebar dari bandwith sinyal informasi. Proses pelebaran bandwith sinyal informasi disebut spreading. Spektrum penyebaran jenis pertama yang dikembangkan dikenal dengan frekuency hopping atau lompatan frekuensi. Versi yang terbaru adalah spectrum penebaran secara langsung. Kedua tenik tersebut dipergunakan dalam berbagai produk jaringan data tanpa kabel. Selain itu juga untuk aplikasi lainnya seperti telepon tanpa kawat (cordless telephone). Sebuah sistem spread spectrum harus memenuhi syarat sebagai berikut : 1.
Sinyal yang dikirimkan menduduki bandwith minimum yang diperlukan untuk mengirimkan sinyal informasi. 2. Pada pengiriman terjadi proses spreading yang menyebarkan sinyal informasi dengan bantuan sinyal kode yang bersifat independent terhadap informasi. 3. Pada penerima terjadi proses dispreading yang melibatkan korelasi antara sinyal yang diterima dan replica sinyal kode yang dibangkitkan sendiri oleh suatu generator local. Dalam spread spectrum semakin lebar bandwith akan semakin tahan terhadap jamming dan akan semakin terjamin tingkat kerahasiaannya. Disamping itu akan semakin banyak kanal yang bisa dipakai, seperti yang di terangkan oleh Shanon, salah seorang ahli statistic telekomunikasi, dalam ilmu komunikasi dinyatakan bahwa kapasitas kanal akan sebanding dengan bandwith tansmisi dan logaritmik dari S/N nya. Jadi agar system komunikasi dapat bekerja dengan kapasitas kanal yang tetap pada level daya noise yang tinggi (S/N yang rendah), dapat dilakukan dengan jalan memperbesar
bandwith transmisi. Selain itu Shannon juga mengemukakan bahwa sebuah kanal mentransmisikan informasi dengan probabilitas salah yang kecil apabila terhadap informasi tersebut dilakukan pengkodean yang tepat dan rate informasi yang tidak melebihi kapasitas kanal meskipun kanal tersebut memuat interferensi acak. Teknologi spread spectrum memungkinkan kita untuk membawa sejumlah informasi yang sama seperti yang dapat dikirimkan dengan menggunakan narrowband carrier signal dan menyebarkan sinyal itu pada kisaran frekuensi yang jauh lebih besar. Sebagai contoh, kita mungkin menggunakan 1 MHz pada 10 Watt dengan narrowband, namun pada spread spectrum kita dapat menggunakan 20 MHz pada 100 mW. Dengan menggunakan spektrum frekuensi yang lebih lebar, kita dapat memperkecil kemungkinan bahwa data akan mengalami perubahan/pengurangan (corrupted) atau jamming. Suatu upaya jamming terhadap narrowband pada suatu sinyal spread spectrum kemungkinan besar akan digagalkan oleh sebagian kecil informasi yang masuk ke dalam kisaran frekuensi narrowband signals. Sebagian besar data digital akan diterima secara sempurna. Radio RF spread spectrum yang ada sekarang dapat memancarkan kembali sejumlah kecil data yang hilang akibat interferensi narrowband. Agar suatu sinyal dikelompokkan sebagai spread spectrum, sinyal itu harus menggunakan daya yang rendah. Dua karakteristik spread spectrum ini (penggunaan band frekuensi lebar dan daya yang sangat rendah) membuat sinyal ini seolah-olah merupakan sinyal derau bagi sebagian besar penerima. Kode yang digunakan pada system spread spectrum memiliki sifat acak tetapi periodic sehingga disebut sinyal acak semu (pseudo random). Kode tersebut bersifat sebagai noise sehingga disebut juga noise semu (pseudo noise). Pembangkit sinyal kode ini disebut Pseudo Random Generator (PRG) atau pseudo noise generator (PNG). PRG inilah yang akan melebarkan dan sekaligus mengacak sinyal data yang akan dikirimkan. Dalam komunikasi spread spectrum semakin lebar bandwith akan semakin tahan terhadap jamming dan akan semakin
terjamin tangkat kerahasiaannya. Disamping itu akan semakin banyak kanal yang bias dipakai. Seperti yang siterangkan Shannon, salah seorang ahli statistic telekomunikasi, dalam ilmu komunikasi dinyatakan bahwa kapasitas kanal akan sebanding dengan bandwith transmisi dari S/N-nya. Jadi agar system komunikasi dapat bekerja dengan kapasitas kanal yang tetap pada level daya noise yang tinggi (S/N yang rendah), dapat dilakukan dengan jalan memperbesar bandwith transmisi. Disamping itu Shannon juga, mengemukakan bahwa sebuah kanal dapat mentransmisikan informasi dengan probabilitas salah yang kecil apabila terhadap informasi tersebut dilakukan pengkodean yang tepat dan rate informasi yang tidak melebihi kapasitas kanal, meskipun kanal tersebut memuat derau acak. System komunikasi spread spectrum sebagai salah satu system komunikasi digital, memiliki beberapa kelebihan dibandingkan system komunikasi analog yaitu: • • • • •
Lebih tebal terhadap jamming Mampu menekan interface Dapat dioperasikan pada level daya yang rendah Kemampuan multiple acces secara CDMA (Code Division Multiple Access) Kerahasiaan lebih terjamin
Ada 3 cara untuk menyebarkan bandwidth dari sebuah sinyal: 1.
2.
Direct sequence. Data digital di kodekan oleh bit-bit yang mempunyai kecepatan lebih tinggi dati kecepatan data.kode dibangkitkan secara random, pada sisi penerima dengan kode yang sama sinyal data diperoleh kembali. Frequency hopping. Sinyal akan berpindah-pindah frekuensi (hopping) dengan cepat dalam beberapa periode waktu tertentu.
3.
2.2.1
Hybrid Method. Perpaduan antara DS dan FH, data di acak terlebih dahulu menggunakan PN generator kemudian sinyal berpindah-pindah frekuensi (hopping).
Direct Sequence Spread Spectrum (DSSS) Direct sequence spread spectrum merupakan jenis spread spectrum yang paling luas dikenal dan paling banyak digunakan, karena sistem ini dikenal paling mudah implementasinya dan memiliki data rate yang tinggi. Sebagian besar peralatan atau piranti LAN nirkabel yang ada di pasaran sekarang ini menggunakan teknologi DSSS.
2.2.1.1.
Bagaimana DSSS bekerja DSSS menggabungkan sinyal data pada stasiun pengirim dengan suatu data rate bit sequence yang lebih tinggi, yang dikenal sebagai chipping code atau processing gain. Processing gain yang tinggi meningkatkan tahanan sinyal terhadap interferensi. Linear processing gain minimum yang diijinkan oleh FCC adalah 10. Proses direct sequence dimulai dengan suatu carrier yang dimodulasi dengan suatu code sequence. Jumlah “chips” dalam code tersebut akan menentukan seberapa besar penyebaran (spreading) terjadi, dan jumlah chip per bit dan laju code (dalam chip per detik) akan menentukan data rate. Prinsip kerja DSSS yaitu menebarkan sinyal informasi dengan sinyal acak yang dihasilkan dari pseudo random. Pada sisi pengirim, sinyal informasi
yang di masukan oleh user akan ditebarkan dengan cara meng-XOR-kan antara sinyal informasi dengan sinyal pseudo noise yang telah dibangkitkan oleh pseudo random generator, sehingga menghasilkan sinyal baru dengan lebar periode sinyal yang sama dengan pseudo noise. Sinyal tersebut di modulasi BPSK terlebih dahulu sebelum di pancarkan melalui antena. Bentuk pengiriman dan penerimaan sinyal dapat dilihat pada gambar 2.2.
Gambar 2.2 Bentuk pengiriman dan penerimaan sinyal informasi dengan menggunakan teknik DSSS
Pada teknnik DSSS terdapat 2 blok diagram yaitu sisi pengirim dan penerima. Blok- blok diagram ini meliputi : input data berupa data biner, pseudo noise, pseudo random generator (PRG), modulasi, spreading, demodulasi, despreading, output data. Hal ini ditunjukan pada gambar 2.3 dan gambar 2.4.
Gambar 2.3 Blok Diagram DSSS pada sisi pengirim
Gambar 2.4 Blok Diagram DSSS pada sisi penerima
Pada gambar 2.5 dibawah ini merupakan gambar sinyal hasil spreading sinyal informasi terhadap pseudo noise.
Gambar 2.5 Bentuk sinyal hasil spreading antara sinyal informasi dengan pseudo noise.
Kemudian pada sisi penerima, sinyal akan diterima dan di demodulasi sehingga hanya sinyal dengan kode acak saja yang akan diproses selanjutnya. Sinyal tersebut akan di-XOR-kan dengan kode pseudo noise yang berada pada sisi penerima. Apabila kode pseudo noise yang berada pada sisi penerima sama dengan kode pseudo noise yang berada pada sisi pengirim maka sinyal tersebut akan dapat dibaca. Sebaliknya apabila kode pseudo noise yang berada pada sisi penerima tidak sama dengan kode pseudo noise yang berada pada sisi pengirim, maka penerima akan mendapatkan sinyal-sinyal tertentu yang menyerupai seperti noise Blok sistem komunikasi Direct Sequence Spread Spectrum terlihat pada gambar 2.6
Gambar 2.6 Blok sistem komunikasi Direct Sequence Spread Spectrum (DSSS)
Proses sisi Spreading: Pada sisi pemancar, data input biner dt (untuk BPSK), I dan Q untuk QPSK dikalikan langsung dengann deretan PN code pnt yang bersifat independent dari data input menghasilkan sinyal base band yang akan dikirim txb,
Txb = dt . pnt
pada proses spreading digunakan perkalian digital antara data input dengan PN code. Akibat perkalian tersebut akan menebarkan lebar base band Rc (terjadi penebaran terhadap lebar bandwidth sinyal informasi menjadi jauh lenih besar identik dengan lebar bandwidth PN code).Ilustrasi proses spreading dapat dilihat pada gambar 2.7.
Gambar 2.7 Proses Spreading
Proses despreading : Sinyal spektrum tidak dapat dideeteksi oleh penerima sinyal sempit (narrowband) karena daya sinyalnya yang lemah, hampir menyerupai noise. Pada penerima sinyal baseband yang diterima rxb harus dikalikan lagi dengan deretan PN code pnt. Proses despreading dapat dilihat pada gambar 2.8.
Gambar 2.8 Proses Despreading
Jika pnt (PN code pada pemancar) sama dengan Pnr (PN code pada penerima), maka akan diperoleh data informasi (dr) yang sesuai dengan data informasi yang dikirimkan (dt). Pengaruh dari perkalian antara sinyal spread spectrum rxb dengan deretan PN code pnr akan merampingkan (despreading) lebar band dari rxb ke lebar band baseband Rs kembali.Proses despreading dapat dilihat pada gambar 2.9.
Gambar 2.9 Proses despreading kondisi pnt = pnr Jika pnt tidak sama dengan pnr maka tidak akan terjadi proses despreading. Sinyal keluaran bukan sinyal data output dr melainkan tetap berupa sinyal spread spectrum. Penerima tidak dapat mengenali deretan PN code pemancar dan tidak akan memperoleh ulang sinyal data biner yang dikirimkan.
2.2.1.2. Pseudo Noise (PN) 2.2.1.2.1. Maximal-Length Sequence Pada metode M-Sequence digunakan beberapa shift register yang tersusun dan umpan balik menurut pola tertentu. Sebuah generator shift register sederhana (SSRG) menerima sinyal feedback yang dikembalikan kepada single inputnya. Sebuah SSRG bersifat linier bila fungsi feedbacknya dapat diekspresikan sebagai XOR (modulo 2 sum), secara diagram blok dapat ditunjukan pada gambar 2.10.
Gambar 2.10 Blok Diagram sebuah SSRG
Berikut ini adalah tabel 2.1 yang menunjukan koneksi feedback m-sequence dan tabel 2.2 menunujukan pasangan m sequence untuk gold code.
Tabel 2.1 koneksi feedback untuk m-sequence
Tabel 2.2 koneksi feedback pasangan m-sequence untuk gold code
Selama penyusunan elemen pada kode pseudo noise mengikuti kode oktal seperti pada tabel 2.1 diatas dapat dipastikan periode output yang dihasilkan sesuai dengan jumlah dari rumus dibawah ini : n
T=2 –1
Contoh : Misalkan dibangkitkan kode pseudo noise 8 bit shift register memakai tipe kode oktal [545], maka apabila kode ini dikonversi ke dalam biner menjadi : 545 = 101100101. Deretan biner tersebut mewakili koefisien dari persamaan polinomial sederhana g(D), dengan g0 pada digit paling kanan sampai dengan gr pada digit paling kiri.
Maka hasil persamaan polinomialnya adalah 2
5
6
8
g(D) = 1 + D + D + D + D
dari persamaan diatas maka dibentuk shift register kode PN adalah sebagai berikut :
Gambar 2.11 Bentuk shift register dibangkitkan dengan teknik m-sequence
Deretan kode pseudo noise yang dihasilkan adalah output yang di ambil dari bit paling belakang (bit 1) dimana pengambilanya pada tiap clock.
2.2.1.2.2. Gold Code Dasar dari metode ini adalah penjumlahan modulo-2 dari output kode pada metode m-sequence. Dua buah msequence yang dijumlahkan harus mempunyai panjang yang sama dengan kode m-sequence yang akan dijumlahkan. Penggambaranya dalam blok diagram adalah sebagai berikut :
Gambar 2.12 Diagram blok pembangkitan kode pseudo noise dengan teknik Gold Code
Penjumlahan dengan adder modulo-2 dilakukan tiap chip sehingga periode kode yanng terjadi mengikuti kode awalnya (m-sequence).
Output dari diagram blok di atas adalah sebagai berikut :
kondisi awal : 10110101 output sequence pada 10 clock pertama yang menunjukan operasi penambahan (modulo-2 adder)..
2.2.1.3.
Binary Phase Shift Keying (BPSK) Modulasi merupakan suatu sistem yang dapat menumpangkan suatu sinyal informasi pada sinyal carrier yang berguna untuk mentransmisikan sinyal ke udara. Bentuk sinyal yang dihasilkan oleh sistem modulasi ini yaitu berupa sinyal analog. Banyak sekali modulasi yang ada saat ini, misalnya : BPSK (Binary Phase Shift Keying), QPSK (Quaternary Phase Shift Keying), FSK (FrequencyShift Keying), MSK (Minimum Shift Keying), dsb. Untuk proyek akhir ini modulasi yang dipakai yaitu BPSK (Binary Phase Shift Keying). Peranan dari modulasi ini sangat penting bagi pengiriman sinyal informasi, sebab sinyal digital tidak dapat ditransmisikan dikarenakan mempunyai daya pancar yang kecil. Oleh sebab itu, sinyal digital yang telah dihasilkan dari proses spreading tersebut akan ditumpangkan pada sinyal carrier yang dihasilkan oleh sistem modulasi. Pada sisi penerima untuk mendapatkan kembali sinyal informasi tersebut, sebelum melakukan dispreading, sinyal yang ditangkap, harus mengalami proses demodulasi. Hal ini berguna untuk memisahkan sinyal tersebut dengan sinyal yang lain.
Gambar 2.13 Blok Diagram Modulator BPSK Pada Sisi Pengirim
Gambar 2.14 Blok Diagram Demodulator BPSK Pada Sisi Penerima
BPSK menghasilkan keluaran yang mempunyai dua perbedaan phase sinyal carrier. Binary berarti “2”, dimana input logika “1” menghasilkan nilai keluaran phase satu dan logika “0” menghasilkan keluaran phase lainnya. Balanced modulator bentuk nyatanya seperti switch pembalik phase tergantung pada kondisi logika dari sinyal input digital. Sinyal carrier yang berasal dari reference carrier oscillator masuk ke balanced modulator akan menghasilkan keluaran dengan beda phase “180”, tergantung dari logika sinyal input digital, sehingga sinyal keluaran balanced modulator menghasilkan 0 0 dua phase yang berlainan yaitu 0 dan 180 terhadap phase
sinyal. Untuk mengetahui perubahan yang terjadi pada sistem modulasi digital dapat dilihat menggunakan diagram phasor dan diagram konstelasi serta table kebenaran sebagai berikut:
Gambar 2.15 Diagram Phasor, Diagram Konstelasi, dan table kebenaran
Untuk input data yang masuk ke dalam modulator terdapat 2 bilangan biner yaitu “1” dan “0”. Nilai “1” dikategorikan sebagai +1V dan “0” sebagai -1V. maka hasil persamaan yang dihasilkan untuk membentuk sinyal modulasi yaitu : +1sin ωct Atau
2.2.2
Frequency Hopping Spread Spectrum (FHSS) Bagaimana FHSS bekerja
Pada system frekuensi Hopping, carrier mengubah frekuensi, atau hops, tergantung pada pseudorandom sequence.pseudorandom sequence merupakan daftar dari beberapa frekuensi dimana carrier akan melompat pada interval waktu yang dispesifikasikan sebelum terjadi berulang-ulang. Transmitter menggunakan sequence hop untuk memilih transmisi frekuensi. Tidak sepperti teknik DSSS, frequency-hopping spreadspectrum menyebar secara sekuensial daripada secara instan. frekuensi pembawa sinyal melompat secara acak dari satu frekuensi ke lain sehingga spektrum sinyal yang ditransmisikan hanya mencakup satu saluran kecil di atas setiap kasus, namun juga meliputi beragam dalam jangka panjang. karena frekuensi hopping tidak mencakup keseluruhan spread spectrum seketika, kita dituntun untuk mempertimbangkan tingkat di mana lompatan terjadi. Terdapat dua tipe dasar dari frekuensi hopping, yaitu : • Slow-frequency hopping, dimana informasi pesat symbol lebih besar dari pesar hopping, beberapa symbol ditransmisikan pada satu frekuensi hop. • Fast-frequency hopping, dimana informasi pesat symbol lebih kecil disbanding pesat hopping, frekuensi pembawa akan berubah beberapa kali seam proses transmisi.
Gambar 2.16 System transmitter dan receiver dari system FHSS
Frekuensi hopping merupakan metode dari pengiriman data dimana system pengirim dan penerima bergabung bersama pada pattern yang berulang pada frekuensi bersama. Pada kenyataanya, interferensi sinyal narrow band yang memungkinkan beberapa megahertz dari bandwidth. Sejak frekuensi hopping berada diatas 83 MHz,
meskipun sinyal interferensi dapat menyebabkan degradasi yang kecil dari sinyal spread spectrum.
Diagram Blok Sistem FHSS
Gambar 2.17 Diagram Blok FHSS bagian pengirim Mekanisme kerja sistem FHSS bagian pengirim 1.
2.
Data input yang termodulasi BPSK dicampur (mixer) dengan frekuensi acak yang dikeluarkan oleh Frequency Synthesizer yang dibangkitkan Pseudo Random generator (PRG). Setelah proses mixer, hasil sinyal dikirimkan menggunakan media transmisi antena.
Gambar 2.18 Diagram Blok FHSS bagian penerima Mekanisme kerja sistem FHSS bagian penerima
1.
2. 3. 4.
2.2.3
Pada sisi penerima, sinyal informasi diterima oleh antenna dan dideteksi dengan frekkuensi acak yang sama dengan pengirim, sehingga pengirim bisa mengambil sinyal informasi. Setelah diterima oleh frekuensi acak yang sama, sinya di filter menggunakan BPF untuk lebih di jernihkan. Setelah sinyal terfilter, maka sinyal akan di demodulasi BPSK sehingga didapatkan hasil data informasi. Jika bagian penerima tidak menggunakan frekuensi acak yang sama dengan pengirim maka penerima tidak dapat mengambil data informasi.
Hybrid Method (DS-FH) Antara teknologi FHSS dan DSSS keduanya memiliki kelebi han dan kekurangan, Spread spectrum dengan metode hibrid adalah metode penggabungan keduanya yakni data digital /informasi di-XOR-kan dengan PN Code sehingga menjadi data ter spreading, selanjutnya PN code tersebut dipakai untuk pemicu frekuensi sintetiser mengubah- ubah frekuensi . frekuensi tersebut dikalikan dengan data terspreading dan hasilnya dimodulasi kemudian sinyal tersebut ditransmisikan melalui udara.
Gambar 2.19 Diagram Blok HYBRID bagian pengirim
Pada sisi receiver sinyal yang diterima di akuisi dengan frekuensi sintetiser yang dipicu oleh PN code yang berada pada sisi receiver.hasil akuisi kemudian dikalikan langsung dengan PN code receiver sehingga menjadi data dispreading atau data informasi kembali.
Gambar 2.20 Diagram Blok HYBRID bagian penerima
------------Halaman Ini Sengaja Dikosongkan----------
BAB III PERENCANAAN DAN PEMBUATAN SOFTWARE
Pada bab ini akan dijelaskan mengenai pembuatan software untuk pengiriman dan penerimaan sinyal informasi dengan menggunakan tiga teknik yang terdiri atas perancangan software untuk system DSSS, perancangan software untuk system FHSS dan perancangan system hibrid. 3.1
DSSS ( Direct sequence spread spectrum ) 3.1.1. Umum Pada teknik direct seguence spread spectrum (DSSS) meliputi : input data, kode pseudo noise, spreading, modulasi, demodulasi, dispreading, output data.
Gambar 3.1 model Sistem DSSS
3.1.2.
Input Data Input data diberikan oleh user bias berupa : suara, data, gambar, video dan sebagainya. Tetapi pada priyek akhir ini, kita asumsikan input data yang dimasukkan berupa data biner, sebab semua data yang masih belum menjadi data biner akan diolah terlebih dahulu menjadi data biner seperti suara. Sebelum suara tersebut spreading dengan pseudo noise, maka terlebih dahulu
suara tersebut dikonversi ke dalam data biner melalui A/D (Analog to Digital Converter) sehingga pada proses spreading, input data sudah dalam keadaan biner.
Gambar 3.2 Blokset pemilihan input data
Dari blokset diatas, input data dihasilkan dari bilangan biner yang dihasilkan random integer dan disimpan pada suatu variable tertentu. Kemudian variable yang akan dipanggil pada perhitungan XOR dengan pseudo random generator. Proses Pembentukkan Signal masukkan yang akan di spreading, dilakukan dengan m file berikut :
%Pembentukan Signal S1=get(handles.edit2,'string'); digit=''; L=length(S1);
Program di atas adalah program untuk mengambil data yang dimasukkan di form GUI
cnt=0; clear Signal; Signal=[]; j=0; for i=1:L digit=S1(i); if (digit=='0') j=j+1; else if (digit=='1') j=j+1; end end
end
Program diatas digunakan untuk pengecekkan jumlah data biner yang dimasukkan pada form GUI
if (j<8) for i=1:8-j cnt=cnt+1; Signal(2,cnt)=0; end end
Program diatas digunakan bila nilai data biner yang di masukkan di GUI kurang dari 8 bit, maka nilai 0 dimasukkan di MSB signal yang dibentuk, variable cnt dipakai untuk membentuk jumlah elemen matriks signal yang dibentuk.
for i=1:L digit=S1(i); if (digit=='0') cnt=cnt+1; Signal(2,cnt)=str2num(digit); else if (digit=='1') cnt=cnt+1; Signal(2,cnt)=str2num(digit); end end end
Program di atas untuk mengkonversikan data masukkan dari GUI (format teks) untuk menjadi data elemen matriks sinyal (format numerik).
[i n]=size(PN_Signal);
i1=cnt; if i1==0 i1=1; end j=0; for i=i1:n j=j+1; if j>8 j=1; end Signal(2,i)=Signal(2,j); Signal(1,i)=PN_Signal(1,i); if i<101 x(i)=i; y(i)=Signal(2,i); end end
Script di atas bertujuan membentuk sinyal sepanjang PN Sequence, dilanjutkan dengan proses penyimpanan ke file untuk tujuan proses simulink selanjutnya seperti potongan program di bawah ini: %Simpan Data Signal dan PN code gold save('Signal_Input.mat','Signal'); save('Signal_PN.mat','PN_Signal');
3.1.3.
Kode Pseudo Noise Tipe pseudo noise yang dipakai pada pembuatan software untuk pengiriman dan penerimaan sinyal informasi ini berupa maxima-length sequence (m-sequence) dan gold code. Kode pseudo noise ini akan dihasilkan dari pseudo random generator.
3.1.3.1.
Maximal-length Sequence M-sequence tersusun dari deretan elemen shift register yang diberi feedback sebagai input tunggalnya. Pemberian feedback ini diatur berdasarkan kode octal – kode octal yang telah ditetapkan seperti telihat pada table 2.1. Hal ini telah dijelaskan secara teoritis pada bab sebelumnya yaitu bab 2. Dibawah ini merupakan diagram alur dari pembangkitan kode m-sequence:
Gambar 3.3 diagram alur pseudo noise tipe m-sequence Misalnya: Tipe shift register yang dipakai 8 dengan tipe random generator 545. Terlebih dahulu kita konversikan ke dalam biner sesuai tabel 2.2, sehinggan menghasikan bentuk biner: 545=10100101 Maka hasil persamaan polinomialnya yaitu: g(D)= 1 + D2 + D5 + D6 + D
8
sehingga bentuk shift register dari kode pseudo noise tersebut yaitu sebagai berikut:
untuk membangkitkan sinyal pseudo noise yang dihasilkan dari pseudo noise random generator dengan menggunakan persamaan diatas, maka blokset simulasi yang dipakai adalah
Parameter yang diisi adalah: Generator Polynomial: [1 0 1 1 0 0 0 1 1 1] misal ,untuk tipe random generator 543 iniitial states: [0 0 0 0 0 0 0 0 1] defaultnya output mask vektor: 8 (untuk 8 bit data) sample time: 1/32 (dalam 1bit data disample sebanyak 32 bit)
Blokset diatas menjelaskan nilai awal dihasilkan dari pengambilan bilangan random biner sampai mencapai 8 bit.
3.1.3.2.
Gold Code Tipe kode pseudo noise ini dihasilkan dari bentuk percampuran dari 2 bentuk code pseudo noise m sequence.
Percampuran dilakukan dengan menggunakan XOR. Dengan melakukan XOR diharapkan menghasilkan kode pseudo noise yang lebih kompleks dari bentuk m-sequence sebelumnya. Untuk mendapatkan nilai percampuran kode pseudo noise ini yaitu dengan menjumlahkan keluaran yang dihasilkan dari masing–masing msequence. Hal ini telah dijelaskan pada bab sebelumnya yaitu bab 2. Untuk membangkitkan nilai pseudo noise yang dihasilkan dari pseudo random generator untuk mendapatkan gold code, maka blokset simulasi yang dipakai yaitu :
Gambar 3.4 Blokset pembuatan PN Gold Code Blokset simulasi diatas menjelaskan pembuatan nilai kode pseudo noise dari 2 buah blokset pn sequence generator yang di-XOR-kan .
3.1.4.
Spreading Spreading dilakukan dengan meng-XOR-kan nilai pseudo noise dengan input data yang diperoleh, sehingga dihasilkan kode–kode data yang acak dengan bandwith yang sangat lebar.
Gambar 3.5 Blokset proses spreading (perkalian input data dengan pseudo noise goldcode)
Blok set diatas menjelaskan nilai pseudo noise gold code yang dihasilkan di-XOR-kan dengan input data dengan melalui perantara variable PN_mat. Hasil perhitungan XOR antara pseudo noise dan input data akan diletakkan pada variable Signal_3.mat.
variable-variabel tersebut ditampilkan melalui GUI.
3.1.5.
nantinya
akan
dipanggil
dan
Modulasi Modulasi yang dipakai yaitu modulasi dengan tipe modulasi BPSK (Binary Phase Shift Keying). System kerja dari modulasi ini yaitu menghasilkan nilai phase antara 0º dan 180º dari nilai hasil spreading. Bila nilai input yang dihasilkan dari spreading tersebut bernilai “1”, maka phase yang dihasikan 0º, sedangkan nilai input yang masuk pada modulasi ini, phase akan dihasilkan yaitu bernilai 180º. Hal ini dapat kita lihat pada diagram phasor yang telah dijelaskan pada bab 2.
Gambar 3.6 Diagram alurmodulasi BPSK
Blokset simulasi yang dipakai untuk membuat suatu modulasi sinyal dari hasil perhitungan spreading sebagai berikut :
Gambar 3.7 Blokset simulasi proses modulasi data terspreading menggunakan modulator 2-PSK / BPSK
3.1.6. AWGN Channel Data yang sudah di modulasi akan dikirimkan ke udara sebelum diterima pada sisi receiver. Blokset simulasi yang dipakai untuk mensimulasikan pengiriman data di udara adalah sebagai berikut:
Parameter pada kanal AWGN sebagai berikut: Initial seed
: 37 (default)
Es/No (dB)
: 10
symbol period(s) : 1/4096
3.1.7.
DSSS Pada Sisi Receiver
Gambar 3.8 Blokset simulasi DSSS pada sisi receiver
Pada sisi receiver system DSSS, sinyal yang diterima dari udara langsung masuk kedalam blokset demodulator yang mana parameter M-ary diisikan 2 sehingga berfungsi sebagai demodulator demodulator BPSK. Sinyal yang sudah didemodulasi akan dispreading dengan mem-product sinyal yang diterima dengan sinyal PN code pada sisi receiver. Hasil signal dispreading kemudian dimasukan kedalam filter karena masih tercampur noise saat pentransmisian melalui kanal AWGN, signal hasil filter kemudian disimpan pada variable signal_7.mat yang mana sinyal pada variable tersebut akan dibandingkan dalam blokset simulasi Error Rate calculation.
Signal informasi dimasukan pada input ‘Tx’ dan hasil akhhir sinyal pada sisi receiver dimasukan pada input ‘Rx’ pada blokset error rate calculation untuk mengetahui BER dengan perbandingan bit yang eror dan jumlah bit sehingga didapatkan prosentase perbandingan error.
3.2
FHSS (Frequency Hopping spread spectrum ) Pada system frekuensi Hopping, carrier mengubah frekuensi, atau hops, tergantung pada pseudorandom sequence.pseudorandom sequence merupakan daftar dari beberapa frekuensi dimana carrier akan melompat pada interval waktu yang dispesifikasikan sebelum terjadi berulangulang. Transmitter menggunakan sequence hop untuk memilih transmisi frekuensi.
3.2.1.
FHSS pada sisi Transmitter
Gambar 3.9 Blokset simulasi FHSS pada sisi transmitter
FHSS pada sisi transmitter , data input dimasukan pada input data pada modulator BPSK, 2 buah PN sequence di-XOR-kan menjadi PN gold code. Hasil sinyal PN gold code digunakan untuk merubahubah frequensi pada frequensi sintetiser ,sinyal output dari sintetiser dimasukan pada carier input modulator BPSK. Sinyal keluaran Modulator langsung ditransmisikan keudara melaui kanal AWGN.
3.2.2.
FHSS pada sisi receiver
Gambar 3.10 Blokset simulasi FHSS pada sisi receiver
Sedangkan pada sisi penerima Sinyal yang diterima dari udara dimasukan pada data input demodulator, PN gold code dari sisi receiver digunakan untuk mengubah frekuensi pada sintetiser. Sinyal
keluaran sintetiser dimasukan pada input carier demodulator sehingga apabila PN pada transmitter dan PN pada receiver sama maka keluaran sinyal dari demodulator adalah sinyal output, yang mana akan pasti sama dengan sinyal input pada transmitter.
3.3
Metode Hibrid ( DS - FH ) Spread spectrum dengan metode hibrid adalah metode penggabungan keduanya yakni data digital /informasi di-XOR-kan dengan PN Code sehingga menjadi data ter spreading, selanjutnya PN code tersebut dipakai untuk pemicu frekuensi sintetiser mengubahubah frekuensi . frekuensi tersebut dikalikan dengan data terspreading dan hasilnya dimodulasi kemudian sinyal tersebut ditransmisikan melalui udara. 3.3.1.
Hybrid pada sisi Transmitter
Gambar 3.11 Blokset simulasi HIBRID pada sisi transmitter
Pada transmitter hybrid sinyal PN gold code digunakan untuk proses spreading selain itu PN gold code juga digunakan untuk mengatur frekuensi carier pada sintetiser. Hasil product sinyal informasi dengan PN gold code dimasukan pada input data pada modulator BPSK sedangkan hasil sinyal keluaran sintetiser dimasukan pada input carier pada modulator. Hasil sinyal yang sudah dimodulasi langsung ditransmisikan ke udara melalui kanal AWGN. 3.3.2.
Hibrid pada sisi Receiver
Gambar 3.12 Blokset simulasi HIBRID pada sisi receiver
Sedangkan pada receiver, sinyal yang diterima dari udara dimasukan pada input data modulator BPSK. Sinyal keluaran dari proses sintetiser diasukan pada input carier modulator . Hasil setelah demodulasi langsung di product kan dengan PN gold code pada receiver dan hasil dispreading tersebut di filter karena saat pentransmisian pada kanal AWGN terdapat noise. Sinyal hasil filtering tersebut adalah sinyal output. Sinyal input dibandingkan dengan sinyal output pada receiver untuk mengetahui nilai BER.
BAB IV PENGUJIAN SOFTWARE DAN ANALISA 4.1. Pengujian DSSS ( Direct Sequence Spread Spectrum ) 4.1.1. Pengaturan Pertama
Gambar 4.1 Tampilan pengaturan pada DSSS pertama Pada Tampilan konfigurasi pertama: 1.
2.
Kita Memilih tipe kode PN pertama dank ode PN yang kedua pada sisi transmitter dan receiver diatur sama nilainya. misalnya dipilih PN pertama = 435 dan PN pasangan goldcodenya = 747. Selanjutnya memilih data informasi biner nya, misalnya Sinyal informasinya adalah 01000011
3.
Tekan tombol OK pada sisi transmitter untuk melihat hasil sinyal pada sisi transmitter dan tekan tombol OK pada sisi receiver untuk melihat hasil sinyal pada sisi receiver.
Maka tampilan hasil sinyal pada sisi transmitter dan hasil sinyal padda sisi receiver dapat dilihat dalam gambar 4.2 dan gambar 4.3:
Gambar 4.2 Tampilan hasil sinyal transmitter DSSS
Gambar 4.3 Tampilan hasil sinyal receiver DSSS
Dari perbandingan hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver didapatkan sinyal input sama dengan sinyal output. Hal ini dikarenakan pemilihan tipe PN code sama antara PN code transmitter dan PN code receiver sehingga didapatkan BER=0 karena tidak ada bit yang eror.
4.1.2.
Pengaturan Kedua
Gambar 4.4 Tampilan pengaturan pada DSSS kedua
Pada Tampilan konfigurasi kedua: 1.
2.
3.
Kita Memilih tipe kode PN pertama dan kode PN yang kedua pada sisi transmitter dan receiver diatur berbeda nilainya. misalnya pada transmitter dipilih PN 1 = 435 dan PN pasangan goldcodenya = 747. Pada reciver PN1 = 435 dan Pn pasangannya = 703 Selanjutnya data informasi biner nya tetap sama dengan pengaturan pertama, Sinyal informasinya adalah 1 0 0 1 1 1 1 0 Tekan tombol OK pada sisi transmitter untuk melihat hasil sinyal pada sisi transmitter dan tekan tombol OK pada sisi receiver untuk melihat hasil sinyal pada sisi receiver.
Maka tampilan hasil sinyal pada sisi transmitter dan hasil sinyal padda sisi receiver dapat dilihat dalam gambar 4.5 dan gambar 4.6:
Gambar 4.5 Tampilan hasil sinyal transmitter2 DSSS
Gambar 4.6 Tampilan hasil sinyal receiver2 DSSS
Dari perbandingan kedua hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver didapatkan sinyal input transmitter tidak sama dengan sinyal output receiver. Hal ini dikarenakan pemilihan tipe PN code tidak sama antara PN code transmitter dan PN code receiver sehingga didapatkan BER=0.5 karena ada 4 bit yang eror dari 8 bit jumlah datanya.
4.2. Pengujian FHSS ( Frequency Hopping Spread Spectrum ) 4.2.1. Pengaturan Pertama
Gambar 4.7 Tampilan pengaturan pada FHSS pertama Pada Tampilan konfigurasi pertama: 1.
2. 3.
Kita Memilih tipe kode PN pertama dank ode PN yang kedua pada sisi transmitter dan receiver diatur sama nilainya. misalnya dipilih PN pertama = 435dan PN pasangannya = 747. Selanjutnya memilih data informasi biner nya, misalnya Sinyal informasinya adalah 0 1 0 0 0 0 1 1 Tekan tombol OK pada sisi transmitter untuk melihat hasil sinyal pada sisi transmitter dan tekan tombol OK pada sis receiver untuk melihat hasil sinyal pada sisi receiver.
Maka tampilan hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver dapat dilihat dalam gambar 4.8 dan gambar 4.9:
Gambar 4.8 Tampilan hasil sinyal transmitter FHSS
Gambar 4.9 Tampilan hasil sinyal receiver FHSS
Dari perbandingan kedua hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver didapatkan sinyal input pada transmitter sama dengan sinyal output receiver. Hal ini dikarenakan pemilihan tipe PN code yang sama antara PN code transmitter dan PN code receiver sehingga didapatkan BER=0 karena tidak ada bit yang eror.
4.2.2. Pengaturan Kedua
Gambar 4.10 Tampilan pengaturan pada FHSS kedua
Pada Tampilan konfigurasi kedua: 1.
2. 3.
Kita Memilih tipe kode PN pertama dan kode PN yang kedua pada sisi transmitter dan receiver diatur tidak sama nilainya. misalnya pada transmitter dipilih PN pertama = 435 dan PN pasangannya = 747. Dan pada receiver dipilih PN pertama = 545 dan PN pasangannya 747 Selanjutnya memilih data informasi biner nya, misalnya Sinyal informasinya adalah 0 1 0 0 0 0 1 1 Tekan tombol OK pada sisi transmitter untuk melihat hasil sinyal pada sisi transmitter dan tekan tombol OK pada sisi receiver untuk melihat hasil sinyal pada sisi receiver.
Maka tampilan hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver dapat dilihat dalam gambar 4.11 dan gambar 4.12:
Gambar 4.11 Tampilan hasil sinyal transmitter2 FHSS
Gambar 4.12 Tampilan hasil sinyal receiver2 FHSS
Dari perbandingan kedua hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver didapatkan sinyal input tidak sama dengan sinyal output. Hal ini dikarenakan pemilihan tipe PN code transmitter sama dan PN code receiver dipilih sama sehingga didapatkan BER=0.5 karena ada 4 bit yang eror dari jumlah data informasi 8 bit.
4.3. Pengujian Hybrid method ( DS-FH ) 4.3.1. Pengaturan Pertama
Gambar 4.13 Tampilan pengaturan pada HIBRID pertama
Pada Tampilan konfigurasi pertama: 1.
2.
Kita Memilih tipe kode PN pertama dan kode PN yang kedua pada sisi transmitter dan receiver diatur sama nilainya. Misalnya pada transmiter dipilih PN pertama = 435 dan PN pasangannya = 703. Pada receiver PN pertama = 435 dan PN pasangannya = 703 Selanjutnya memilih data informasi biner nya, misalnya Sinyal informasinya adalah 0 1 1 1 1 0 1 1
3.
Tekan tombol OK pada sisi transmitter untuk melihat hasil sinyal pada sisi transmitter dan tekan tombol OK pada sisi receiver untuk melihat hasil sinyal pada sisi receiver. Maka tampilan hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver dapat dilihat dalam gambar 4.14 dan gambar 4.15:
Gambar 4.14 Tampilan hasil sinyal transmitter HIBRID
Gambar 4.15 Tampilan hasil sinyal receiver HIBRID
Dari perbandingan kedua hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver didapatkan sinyal input sama dengan sinyal output. Hal ini dikarenakan pemilihan tipe PN code yang sama antara PN code transmitter dan PN code receiver sehingga didapatkan BER = 0 karena tidak ada bit yang eror.
4.3.2. Pengaturan Kedua
Gambar 4.16 Tampilan pengaturan pada HIBRID kedua Pada Tampilan konfigurasi pertama: 1.
2. 3.
Kita Memilih tipe kode PN pertama dan kode PN yang kedua pada sisi transmitter dan receiver diatur tidak sama nilainya. misalnya pada transmitter dipilih PN pertama = 435 dan PN pasangannya = 703. Pada receiver PN pertama = 543 dan PN pasangannya = 703 Selanjutnya memilih data informasi biner-nya, misalnya Sinyal informasinya adalah 01000011 Tekan tombol OK pada sisi transmitter untuk melihat hasil sinyal pada sisi transmitter dan tekan tombol OK pada sisi receiver untuk melihat hasil sinyal pada sisi receiver.
Maka tampilan hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver dapat dilihat dalam gambar 4.17 dan gambar 4.18:
Gambar 4.17 Tampilan hasil sinyal transmitter2 HIBRID
Gambar 4.18 Tampilan hasil sinyal receiver2 HIBRID Dari perbandingan kedua hasil sinyal pada sisi transmitter dan hasil sinyal pada sisi receiver didapatkan sinyal input tidak sama dengan sinyal output. Hal ini dikarenakan pemilihan tipe PN code tidak sama antara PN code transmitter dan PN code receiver sehingga didapatkan BER=0.75 karena ada 6 bit yang eror dari jumlah data informasi 8 bit.
BAB V PENUTUP 5.1 Kesimpulan Dari pembahasan perencanaan dan pembuatan Software Simulasi Pengiriman Dan Penerimaan Informasi Menggunakan Teknologi Spread Spektrum yaitu pada bab-bab sebelumnya maka penulis dapat mengambil kesimpulan sebagai berikut :
1. Pada Simulasi Pengiriman Dan Penerimaan Informasi Menggunakan Dirrect Sequence Spread Spektrum akan terjadi Processing gain yang tinggiakibat penggabungan sinyal dengan data rate yang tinggi sehingga meningkatkan tahanan sinyal terhadap interferensi.
2. Pada Simulasi Pengiriman Dan Penerimaan Informasi Menggunakan Frequency Hopping Spread Spektrum dengan menggunakan teknik FHSS, sinyal informasi yang mempunyai bandwidth terbatas dapat di tebarkan pada frekuensi BW transmisi yang jauh lebih besar. sehingga sangat sulit untuk dapat dideteksi dan diganggu oleh penerima yang tidak dikehendaki (lawan)
3. Pada Simulasi Pengiriman Dan Penerimaan Informasi Menggunakan Spread Spektrum metode Hibrid mempunyai keunggulan lebih karena metode ini adalah penggabungan DS dan FH, sehingga bebas interferensi dan tidak bisa dideteksi oleh pihak lain.
5.2 Saran Agar dalam pembuatan software yang serupa di masa mendatang tidak mengalami kesulitan dan dapat menambah keefektifan software simulasi ini maka saran yang dapat diberikan penulis adalah sebagai berikut :
1. Sistem – system ini dapat dikembangkan lebih lanjut dengan menggunakan memperbanyak derajat polynomial PN generator dan menambahkan filter yang lebih bagus sehingga saat proses penerimaan data informasi pada sisi penerima bisa lebih teliti dan lebih akurat.
DAFTAR PUSTAKA [1]. A.J.Viterbi, CDMA: Principles of Spread Spectrum Comunikation, Addison-Wesley, 1995 [2]. J. B. Dabney and T. L. Harman, Mastering Simulink, Prentice Hall, 2004.Engineering and Computer Science, Hochschule Ostwestfalen Lippe, Lemgo, Germany, 2009. [3]. John G Proakis and Masoud Salehi, ” Contemporary Communication System Using MATLAB” , 2000. [4]. K. Cheun, “Performance of Direct-Sequence Spread Spectrum RAKE receivers with Random Spreading Sequences,” IEEE Trans. Comm., September 1997. [5]. Pangera, Abas Ali, “Perbandingan Frekuensi Hopping Spread Spectrum dan Direct Squence Spread Spectrum ”. Proyek Akhir, STMIK AMIKOM Yogyakarta. 2009 [6]. Pérez, S.; Rabadán, J.; Delgado, F.; Velázquez, J & Pérez, R. (2003). Design of a synchronous Fast Frequency Hopping Spread Spectrum transceiver for indoor Wireless Optical Communications based on Programmable Logic Devices and Direct Digital Synthesizers, Proceedings of XVIII Conference on Design of Circuits and Integrated Systems, pp. 737-742, ISBN 84-87087-40-X, Ciudad Real, Spain, November, 2003. [7]. Pratiarso , Aries, “Sistem Komunikasi Spread Spectrum”, Materi kuliah , 2003 [8]. Rustamaji, Elan Djaelani, “Aplikasi Rangkaian Terintregasi Direct DigitalSynthetizer (DSS) Sebagai Pembangkit Sinya Frekuensi Hopping Spread Spectrum (FHSS)”. Proyek Akhir, ITENAS. 2008 [9]. Simon, M.; Omura, J.; Scholtz, R. & Levitt, B. (1994). Spread Spectrum Communications Handbook, McGraw-Hill Professional, ISBN 0071382151, USA [10]. Wautier and S. Ammari, “Rake Receiver Sensitivity to Spreading Sequence,” Vehicular Technology Conference, Spring 2001, pages 2001-2005. [11]. Yulindon,Afrizal Yunanef,Rika Anosa,dan Temisia Ruza,”Perancangan Dan Implementasi teknik modulasi digital Menggunakan BPSK” ,2006.”
LAMPIRAN
DATA PENDUKUNG BAHWA HYBRID LEBIH BAIK Diagram system pada transmitter FHSS :
Sinyal input :
Sinyal PN goldcode :
Hasil Sinyal frekuensi hop :
Hasil sinya input yang termodulasi dengan frekuensi hop yang mana frekuensi hop tersebut dibentuk atau di acak oleh PN gold code :
Diagram system pada transmitter HYBRID :
Sinyal input :
Sinyal PN gold code :
Hasil Sinyal spreading :
Hasil Sinyal frekuensi hopp :
Hasil Sinyal spreading yang termodulasi dengan frekuensi hopp yang mana frekuensi hopp tersebut dibentuk oleh PN gold code :
Dari perbandingan sinyal yang akan dikirim oleh transmitter FHSS dan transmitter HYBRID didapatkan hasil yang berbeda. Hasil output transmitter HYBRID akan lebih sulit untuk dideteksi ataupun di jamming oleh pihak lain yang tidak dikehendaki. Hal ini dikarenakan pada transmitter FHSS sinyal input yang dimasukan sebagai data input pada modulator BPSK saat proses modulasi, sedangkan pada transmitter HYBRID hasil sinyal yang sudah ter-spread atau teracak yang dimasukan sebagai data input pada modulator BPSK saat proses modulasi.
GUI UNTUK DSSS function varargout = GUI(varargin) %GUI M-file for GUI.fig % GUI, by itself, creates a new GUI or raises the existing % singleton*. % % H = GUI returns the handle to a new GUI or the handle to % Last Modified by GUIDE v2.5 02-Jan2012 10:01:51 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @GUI_OpeningFcn, ... 'gui_OutputFcn', @GUI_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 GUI is made visible. function GUI_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 unrecognized PropertyName/PropertyValue pairs from the % command line (see VARARGIN) % Choose default command line output for GUI handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes GUI wait for user response (see UIRESUME) % uiwait(handles.figure1); clc; % --- Outputs from this function are returned to the command line. function varargout = GUI_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT); % Get default command line output from handles structure varargout{1} = handles.output; % --- 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) A=get(handles.listbox1,'Value'); B=get(handles.listbox2,'Value'); set(handles.text13,'string','Tunggu ...'); if (A==1) P1=1; else if (A==2) P1=2;
else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp1.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp2.mat','px'); pause(0.1); A=get(handles.listbox5,'Value'); if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else
if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp3.mat','px'); pause(0.1); A=get(handles.listbox3,'Value'); B=get(handles.listbox4,'Value'); if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8)
P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp4.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp5.mat','px'); pause(0.1); sim('DSSS_final'); clc; set(handles.text13,'string','Selesai ...'); Hasil_Sinyal_Transmitter; set(handles.text13,'string','');
% --- Executes during object deletion, before destroying properties. function pushbutton3_DeleteFcn(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)
% --- Executes on button press in pushbutton7. function pushbutton7_Callback(hObject, eventdata, handles) % hObject handle to pushbutton7 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA) A=get(handles.listbox1,'Value'); B=get(handles.listbox2,'Value'); set(handles.text13,'string','Tunggu ...'); if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp1.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp2.mat','px');
pause(0.1); A=get(handles.listbox5,'Value'); if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp3.mat','px'); pause(0.1); A=get(handles.listbox3,'Value'); B=get(handles.listbox4,'Value'); set(handles.text13,'string','Tunggu ...'); if (A==1) P1=1; else if (A==2) P1=2;
else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp4.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp5.mat','px'); pause(0.1); sim('DSSS_final'); set(handles.text13,'string','Selesai ...'); clc; Hasil_Sinyal_Receiver; set(handles.text13,'string','');
GUI Untuk DSSS Transmitter function varargout = Hasil_Sinyal_Transmitt er(varargin) % Hasil_Sinyal_Transmitt er M-file for Hasil_Sinyal_Transmitt er.fig % Hasil_Sinyal_Transmitt er, by itself, creates a new Hasil_Sinyal_Transmitt er or raises the existing % singleton*. % Edit the above text to modify the response to help Hasil_Sinyal_Transmitt er % Last Modified by GUIDE v2.5 02-Jan-2012 09:47:30 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Hasil_Sinyal_Transmit ter_OpeningFcn, ...
'gui_OutputFcn', @Hasil_Sinyal_Transmit ter_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 Hasil_Sinyal_Transmitt er is made visible. function Hasil_Sinyal_Transmitt er_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 Hasil_Sinyal_Transmitt er (see VARARGIN) % Choose default command line output for Hasil_Sinyal_Transmitt er handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes Hasil_Sinyal_Transmitt er wait for user response (see UIRESUME) % uiwait(handles.figure1 ); nbit=8;
load('signal_1.mat'); y1_1(1)=0; y1_2(1)=y1(2,1); [i n]=size(y1); clear str; str=''; for i=1:n-1 str1=num2str(y1(2,i)); str=[str str1]; str=[str ' ']; end set(handles.edit1,'str ing',str); axes(handles.axes1); cla; x(1)=0; x(2)=nbit; y(1)=-1; y(2)=2; plot(x,y,'+'); hold on; plot(y1(1,:),y1(2,:),' b'); %pause; hold off; n=n-1; j=1; for i=2:(nbit*100) j1=floor(i/100); j2=i/100; if j2==j1 if j
axes(handles.axes1); cla; x(1)=0; x(2)=nbit; y(1)=-1; y(2)=2; plot(x,y,'+'); hold on; plot(y1_1,y1_2,'b'); %return [i n]=size(y1); load('PN_1.mat') axes(handles.axes2); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(PN1_1(1,:),PN1_1( 2,:)); %return [i m]=size(PN1_1); clear str; str=''; for i=1:m str1=num2str(PN1_1(2,i )); str=[str str1]; end set(handles.edit2,'str ing',str); load('Signal_3.mat') axes(handles.axes3); cla; x(1)=0; x(2)=n-1;
y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y3(1,:),y3(2,:)); [i m]=size(y3); load('Signal_4.mat') axes(handles.axes4); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y4(1,:),y4(2,:)); load('Signal_9.mat') axes(handles.axes9); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y9(1,:),y9(2,:));
% --- Outputs from this function are returned to the command line. function varargout = Hasil_Sinyal_Transmitt er_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; % Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'B ackgroundColor'), get(0,'defaultUicontro lBackgroundColor')) set(hObject,'Backgroun dColor','white'); end % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'B ackgroundColor'), get(0,'defaultUicontro lBackgroundColor')) set(hObject,'Backgroun dColor','white'); end
function edit4_Callback(hObject , eventdata, handles) % hObject handle to edit4 (see GCBO) setting all properties. function edit4_CreateFcn(hObjec t, eventdata, handles) % hObject handle to edit4 (see GCBO) background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'B ackgroundColor'), get(0,'defaultUicontro lBackgroundColor')) set(hObject,'Backgroun dColor','white'); end
% --- Executes on button press in pushbutton1. function pushbutton1_Callback(h Object, eventdata, handles) % hObject handle to pushbutton1 (see GCBO) function pushbutton2_Callback(h Object, eventdata, handles)
GUI Untuk DSSS Receiver function varargout = Hasil_Sinyal_Receiver( varargin) % HASIL_SINYAL_RECEIVER M-file for Hasil_Sinyal_Receiver. fig % HASIL_SINYAL_RECEIVER, by itself, creates a new HASIL_SINYAL_RECEIVER or raises the existing % singleton*. % % H = HASIL_SINYAL_RECEIVER returns the handle to a new HASIL_SINYAL_RECEIVER or the handle to % the existing singleton*. % % % Last Modified by GUIDE v2.5 13-Jan-2012 17:46:33 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Hasil_Sinyal_Receiver _OpeningFcn, ... 'gui_OutputFcn', @Hasil_Sinyal_Receiver _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 Hasil_Sinyal_Receiver is made visible.
function Hasil_Sinyal_Receiver_ 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 Hasil_Sinyal_Receiver handles.output = hObject; % Update handles structure guidata(hObject, handles); % UIWAIT makes Hasil_Sinyal_Receiver wait for user response (see UIRESUME) % uiwait(handles.figure1 ); nbit=8; n=nbit; load('Signal_8.mat') axes(handles.axes1); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on;
plot(y8(1,:),y8(2,:)); %return load('PN_2.mat') axes(handles.axes2); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(PN_2(1,:),PN_2(2, :)); [i m]=size(PN_2); clear str; str=''; for i=1:m str1=num2str(PN_2(2,i) ); str=[str str1]; end set(handles.edit2,'str ing',str); load('Signal_5.mat') axes(handles.axes5); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y5(1,:),y5(2,:)); load('Signal_6.mat') axes(handles.axes3); cla; x(1)=0;
x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y6(1,:),y6(2,:)); load('signal_7.mat'); [i n]=size(y7); dx=n/nbit; clear y8; for i=1:nbit xx=dx*i; xx1=floor(xx); dxx=xx-xx1; if dxx<0.5 xx=floor(dx*i); else xx=ceil(dx*i); end y8(i)=y7(2,xx); end y1_1(1)=0; y1_2(1)=y8(1); [i n]=size(y8); j=1; for i=2:(nbit*100) j1=floor(i/100); j2=i/100; if j2==j1 if j
x(1)=0; x(2)=nbit; y(1)=-1; y(2)=2; plot(x,y,'+'); hold on; plot(y1_1,y1_2,'b'); [i m]=size(y8); clear str; str=''; for i=1:m str1=num2str(y8(i)); str=[str str1]; end set(handles.edit4,'str ing',str); load('err_ber.mat'); str=num2str(err_ber(2, 9)); %str=num2str(err_ber(1 ,1)); set(handles.edit5,'str ing',str); % --- Outputs from this function are returned to the command line.
GUI untuk FHSS function varargout = GUI(varargin) % Last Modified by GUIDE v2.5 02-Jan2012 10:01:51 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @GUI_OpeningFcn, ... 'gui_OutputFcn', @GUI_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 clc; % Update handles structure guidata(hObject, handles); % UIWAIT makes GUI wait for user response (see UIRESUME) % uiwait(handles.figure1); clc; sudah=0; A1=0; A2=0; B1=0; B2=0; C=0; save('control.mat','sudah','A1','A2','B1','B2' ,'C');
pause(0.1); 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) load('control.mat'); A=get(handles.listbox1,'Value'); B=get(handles.listbox2,'Value'); A1_1=A; B1_1=B; set(handles.text14,'string','Tunggu ...'); if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end
px(1,1)=P1; px(2,1)=P1; save('temp1.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp2.mat','px'); pause(0.1); A=get(handles.listbox5,'Value'); C2=A; if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp3.mat','px'); pause(0.1);
A=get(handles.listbox3,'Value'); B=get(handles.listbox4,'Value'); A1_2=A; B1_2=B; if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp4.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp5.mat','px'); pause(0.1);
set(handles.text14,'string','Tunggu ...'); t_sudah=0; if A1_1==A1 if B1_1==B1 if A1_2==A2 if B1_2==B2 if C2==C t_sudah=1; end end end end end sudah=t_sudah; if sudah==0 sim('FHSS_final'); end A1=A1_1; A2=A1_2; B1=B1_1; B2=B1_2; C=C2; set(handles.text14,'string','Selesai ...'); clc; Hasil_Sinyal_Transmitter; set(handles.text14,'string',''); sudah=1; pause(0.1); save('control.mat','sudah','A1','A2','B1','B2' ,'C'); pause(0.1); % --- Executes on button press in pushbutton7. function pushbutton7_Callback(hObject, eventdata, handles) % hObject handle to pushbutton7 (see GCBO) load('control.mat'); sudah A=get(handles.listbox1,'Value'); B=get(handles.listbox2,'Value'); set(handles.text14,'string','Tunggu ...'); A1_1=A; B1_1=B; if (A==1) P1=1; else if (A==2) P1=2; else if (A==3)
P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp1.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp2.mat','px'); pause(0.1); A=get(handles.listbox5,'Value'); C2=A; if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4)
P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp3.mat','px'); pause(0.1); A=get(handles.listbox3,'Value'); B=get(handles.listbox4,'Value'); A1_2=A; B1_2=B; if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8)
P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp4.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp5.mat','px'); pause(0.1); set(handles.text14,'string','Tunggu ...'); t_sudah=0; if A1_1==A1 if B1_1==B1 if A1_2==A2 if B1_2==B2 if C2==C t_sudah=1; end end end end end sudah=t_sudah; if sudah==0 sim('FHSS_final'); end A1=A1_1; A2=A1_2; B1=B1_1; B2=B1_2; C=C2; set(handles.text14,'string','Seleai ...'); clc; Hasil_Sinyal_Receiver; sudah=1; pause(0.1);
set(handles.text14,'string',''); pause(0.1);
save('control.mat','sudah','A1','A2','B1','B2' ,'C'); pause(0.1);
GUI untuk FHSS Transmitter function varargout = Hasil_Sinyal_Transmitter(varargin) % Hasil_Sinyal_Transmitter M-file for Hasil_Sinyal_Transmitter.fig % Hasil_Sinyal_Transmitter, by itself, creates a new Hasil_Sinyal_Transmitter or raises the existing % Edit the above text to modify the response to help Hasil_Sinyal_Transmitter
function Hasil_Sinyal_Transmitter_OpeningFcn(h Object, eventdata, handles, varargin) % This function has no output args, see OutputFcn. handles.output = hObject;
% Last Modified by GUIDE v2.5 02-Jan2012 09:47:30
% UIWAIT makes Hasil_Sinyal_Transmitter wait for user response (see UIRESUME) % uiwait(handles.figure1);
% Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Hasil_Sinyal_Transmitter_OpeningFcn, ... 'gui_OutputFcn', @Hasil_Sinyal_Transmitter_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
% Update handles structure guidata(hObject, handles);
%jumlah bit nbit=8; load('signal_1.mat'); y1_1(1)=0; y1_2(1)=y1(2,1); [i n]=size(y1); clear str; str=''; for i=1:n-1 str1=num2str(y1(2,i)); str=[str str1]; str=[str ' ']; end set(handles.edit1,'string',str); n=n-1; j=1; for i=2:(nbit*100) j1=floor(i/100); j2=i/100; if j2==j1 if j
end %y1_1 %y1_2 axes(handles.axes1); cla; x(1)=0; x(2)=nbit; y(1)=-1; y(2)=2; plot(x,y,'+'); hold on; plot(y1_1,y1_2,'b'); [i n]=size(y1); load('PN_1.mat') axes(handles.axes2); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(PN1_1(1,:),PN1_1(2,:)); [i m]=size(PN1_1); clear str; str=''; for i=1:m str1=num2str(PN1_1(2,i)); str=[str str1]; end set(handles.edit2,'string',str); load('Signal_3.mat') axes(handles.axes3); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y3(1,:),y3(2,:));
[i m]=size(y3); load('Signal_4.mat') axes(handles.axes4); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y4(1,:),y4(2,:)); [i m]=size(y4); load('Signal_9.mat') axes(handles.axes9); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y9(1,:),y9(2,:)); % --- Outputs from this function are returned to the command line. function varargout = Hasil_Sinyal_Transmitter_OutputFcn(hOb ject, 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;
GUI untuk FHSS Receiver function varargout = Hasil_Sinyal_Receiver(varargin) % HASIL_SINYAL_RECEIVER M-file for Hasil_Sinyal_Receiver.fig % HASIL_SINYAL_RECEIVER, by itself, creates a new HASIL_SINYAL_RECEIVER or raises the existing % singleton*. % % H = HASIL_SINYAL_RECEIVER returns the handle to a new HASIL_SINYAL_RECEIVER or the handle to % the existing singleton*. % % HASIL_SINYAL_RECEIVER('CALLBA CK',hObject,eventData,handles,...) calls the local % function named CALLBACK in HASIL_SINYAL_RECEIVER.M with the given input arguments. % % HASIL_SINYAL_RECEIVER('Property',' Value',...) creates a new HASIL_SINYAL_RECEIVER or raises the % existing singleton*. Starting from the left, property value pairs are % applied to the GUI before Hasil_Sinyal_Receiver_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application % stop. All inputs are passed to Hasil_Sinyal_Receiver_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 Hasil_Sinyal_Receiver % Last Modified by GUIDE v2.5 02-Jan2012 10:08:48 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Hasil_Sinyal_Receiver_OpeningFcn, ... 'gui_OutputFcn', @Hasil_Sinyal_Receiver_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 Hasil_Sinyal_Receiver is made visible. function Hasil_Sinyal_Receiver_OpeningFcn(hObj ect, eventdata, handles, varargin) % This function has no output args, see OutputFcn.
% UIWAIT makes Hasil_Sinyal_Receiver wait for user response (see UIRESUME) % uiwait(handles.figure1);
% jumlah bit nbit=8; n=nbit; load('Signal_8.mat') axes(handles.axes1); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y8(1,:),y8(2,:)); load('PN_2.mat') axes(handles.axes2); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(PN_2(1,:),PN_2(2,:)); [i m]=size(PN_2); clear str; str=''; for i=1:m str1=num2str(PN_2(2,i)); str=[str str1]; end set(handles.edit2,'string',str); load('Signal_6.mat') axes(handles.axes3); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y6(1,:),y6(2,:));
load('signal_7.mat'); [i n]=size(y7); dx=n/nbit; clear y8; for i=1:nbit xx=dx*i; xx1=floor(xx); dxx=xx-xx1; if dxx<0.5 xx=floor(dx*i); else xx=ceil(dx*i); end y8(i)=y7(2,xx); end y1_1(1)=0; y1_2(1)=y8(1); [i n]=size(y8); j=1; for i=2:(nbit*100) j1=floor(i/100); j2=i/100; if j2==j1 if j
load('err_ber.mat'); str=num2str(err_ber(2,9)); set(handles.edit5,'string',str); end
GUI Untuk HYBRID function varargout = GUI(varargin) %GUI M-file for GUI.fig % GUI, by itself, creates a new % Last Modified by GUIDE v2.5 02-Jan-2012 10:01:51 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @GUI_OpeningFcn, ... 'gui_OutputFcn', @GUI_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 clc; % UIWAIT makes GUI wait for user response (see UIRESUME) % uiwait(handles.figure1); clc; sudah=0; A1=0; A2=0; B1=0; B2=0; C=0;
save('control.mat','sudah','A1','A2','B 1','B2','C'); pause(0.1); pushbutton3_Callback(hObject, eventdata, handles) and user data (see GUIDATA) load('control.mat'); A=get(handles.listbox1,'Value'); B=get(handles.listbox2,'Value'); A1_1=A; B1_1=B; set(handles.text14,'string','Tunggu ...'); if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end
px(1,1)=P1; px(2,1)=P1; save('temp1.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp2.mat','px'); pause(0.1); A=get(handles.listbox5,'Value'); C2=A; if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1;
px(2,1)=P1; save('temp3.mat','px'); pause(0.1); A=get(handles.listbox3,'Value'); B=get(handles.listbox4,'Value'); A1_2=A; B1_2=B; if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp4.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end
end px(1,1)=P1; px(2,1)=P1; save('temp5.mat','px'); pause(0.1); set(handles.text14,'string','Tunggu ...'); t_sudah=0; if A1_1==A1 if B1_1==B1 if A1_2==A2 if B1_2==B2 if C2==C t_sudah=1; end end end end end sudah=t_sudah; if sudah==0 sim('HYBRID_final'); end A1=A1_1; A2=A1_2; B1=B1_1; B2=B1_2; C=C2; set(handles.text14,'string','Selesai ...'); clc; Hasil_Sinyal_Transmitter; set(handles.text14,'string',''); sudah=1; pause(0.1); save('control.mat','sudah','A1','A2','B 1','B2','C'); pause(0.1); load('control.mat'); sudah A=get(handles.listbox1,'Value'); B=get(handles.listbox2,'Value'); set(handles.text14,'string','Tunggu ...'); A1_1=A; B1_1=B;
if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp1.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp2.mat','px'); pause(0.1); A=get(handles.listbox5,'Value'); C2=A;
if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp3.mat','px'); pause(0.1); A=get(handles.listbox3,'Value'); B=get(handles.listbox4,'Value'); A1_2=A; B1_2=B; if (A==1) P1=1; else if (A==2) P1=2; else if (A==3) P1=4; else
if (A==4) P1=8; else if (A==5) P1=16; else if (A==6) P1=32; else if (A==7) P1=64; else if (A==8) P1=128; end end end end end end end end px(1,1)=P1; px(2,1)=P1; save('temp4.mat','px'); pause(0.1); if (B==1) P1=1; else if (B==2) P1=2; end end px(1,1)=P1; px(2,1)=P1; save('temp5.mat','px'); pause(0.1); set(handles.text14,'string','Tunggu ...'); t_sudah=0; if A1_1==A1 if B1_1==B1 if A1_2==A2 if B1_2==B2 if C2==C t_sudah=1; end end end
end end sudah=t_sudah; if sudah==0 sim('HYBRID_final'); end A1=A1_1; A2=A1_2; B1=B1_1; B2=B1_2; C=C2; set(handles.text14,'string','Selesai ...'); clc;
Hasil_Sinyal_Receiver; sudah=1; pause(0.1); set(handles.text14,'string',''); pause(0.1); save('control.mat','sudah','A1','A2','B 1','B2','C'); pause(0.1); % --- Executes on selection change in listbox1. function listbox1_Callback(hObject, eventdata, handles)
GUI Untuk HYBRID Transmiter function varargout = Hasil_Sinyal_Transmitter(varargin) % Hasil_Sinyal_Transmitter M-file % Last Modified by GUIDE v2.5 02-Jan-2012 09:47:30 % Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Hasil_Sinyal_Transmitter_Openin gFcn, ... 'gui_OutputFcn', @Hasil_Sinyal_Transmitter_Output Fcn, ... '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 % uiwait(handles.figure1); nbit=8; load('signal_1.mat'); y1_1(1)=0; y1_2(1)=y1(2,1); [i n]=size(y1); clear str; str=''; for i=1:n-1 str1=num2str(y1(2,i)); str=[str str1]; str=[str ' ']; end set(handles.edit1,'string',str); n=n-1; j=1; for i=2:(nbit*100) j1=floor(i/100); j2=i/100; if j2==j1 if j
j=j+1; end end y1_1(i)=i/100; y1_2(i)=y1(2,j); end %y1_1 %y1_2 axes(handles.axes1); cla; x(1)=0; x(2)=nbit; y(1)=-1; y(2)=2; plot(x,y,'+'); hold on; plot(y1_1,y1_2,'b'); [i n]=size(y1); load('PN_1.mat') axes(handles.axes2); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(PN1_1(1,:),PN1_1(2,:)); [i m]=size(PN1_1); clear str; str=''; for i=1:m str1=num2str(PN1_1(2,i)); str=[str str1]; end set(handles.edit2,'string',str);
load('Signal_3.mat') axes(handles.axes3); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y3(1,:),y3(2,:)); [i m]=size(y3); load('Signal_4.mat') axes(handles.axes4); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y4(1,:),y4(2,:)); [i m]=size(y4); load('Signal_9.mat') axes(handles.axes9); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y9(1,:),y9(2,:));
GUI Untuk HYBRID Receiver function varargout = Hasil_Sinyal_Receiver(varargin) % HASIL_SINYAL_RECEIVER
y(2)=2; plot(x,y,'+'); hold on; plot(y8(1,:),y8(2,:));
% Last Modified by GUIDE v2.5 13-Jan-2012 17:28:02
load('PN_2.mat') axes(handles.axes2); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(PN_2(1,:),PN_2(2,:));
gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Hasil_Sinyal_Receiver_OpeningF cn, ... 'gui_OutputFcn', @Hasil_Sinyal_Receiver_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 % uiwait(handles.figure1); nbit=8; n=nbit; load('Signal_8.mat') axes(handles.axes1); cla; x(1)=0; x(2)=n-1; y(1)=-2;
[i m]=size(PN_2); clear str; str=''; for i=1:m str1=num2str(PN_2(2,i)); str=[str str1]; end set(handles.edit2,'string',str); load('Signal_6.mat') axes(handles.axes3); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y6(1,:),y6(2,:)); load('un_filter.mat'); axes(handles.axes5); cla; x(1)=0; x(2)=n-1; y(1)=-2; y(2)=2; plot(x,y,'+'); hold on; plot(y_filter(1,:),y_filter(2,:));
load('signal_7.mat'); [i n]=size(y7); dx=n/nbit; clear y8; for i=1:nbit xx=dx*i; xx1=floor(xx); dxx=xx-xx1; if dxx<0.5 xx=floor(dx*i); else xx=ceil(dx*i); end y8(i)=y7(2,xx); end y1_1(1)=0; y1_2(1)=y8(1); [i n]=size(y8); j=1; for i=2:(nbit*100) j1=floor(i/100); j2=i/100; if j2==j1 if j
end set(handles.edit4,'string',str); load('err_ber.mat'); str=num2str(err_ber(2,9)); set(handles.edit5,'string
RIWAYAT HIDUP PENULIS Penulis merupakan anak kedua dari dua bersaudara.Lahir dari seorang ibu yang bernama Wiji Suyati dan seorang ayah yang bernama Antonius Sunaryo. Berikut biodata lengkap penulis : Nama Lengkap : Ria Puasasi Nama Panggilan: Ria Tempat Lahir : Malang Tanggal Lahir : 9 April 1989 Alamat : Jl. Ahmad Yani no 184 Turen - Malang No Telepon : 085790900355 Email :
[email protected]
Riwayat pendidikan formal yang pernah ditempuh : 1. 2. 3. 4. 5.
SD Taman Siswa Turen - Malang (1995-2001) SLTP Taman Siswa Turen - Malang (2001-2004) SMA Negeri 1 Turen - Malang (2004-2007) D3 Jurusan Telekomunikasi, Politeknik Negeri Malang tahun 2007 – 2010 (D3 Telkom D). D4 Lanjut Jenjang Jurusan Telekomunikasi, Politeknik Elektronika Negeri Surabaya, Institut Teknologi Sepuluh Nopember Surabaya (PENS -ITS) tahun 2010 – 2012.
Pada tanggal 26 Januari 2012 mengikuti Ujian Seminar Proyek Akhir sebagai salah satu persyaratan untuk mendapatkan gelar Sarjana Sains Terapan di Politeknik Elektronika Negeri Surabaya, Institut Teknologi Sepuluh Nopember (ITS).
iv
RIWAYAT HIDUP PENULIS Penulis merupakan anak kedua dari dua bersaudara. Lahir dari seorang ibu yang bernama Wiji Suyati dan seorang ayah yang bernama Antonius Sunaryo. Berikut biodata lengkap penulis : Nama Lengkap Nama Panggilan Tempat Lahir Tanggal Lahir Alamat No Telepon Email
: Ria Puasasi : Ria : Malang : 9 April 1989 : Jl. Ahmad Yani no 184 Turen - Malang : 085790900355 :
[email protected]
Riwayat pendidikan formal yang pernah ditempuh : 1. 2. 3. 4. 5.
SD Taman Siswa Turen - Malang (1995-2001) SLTP Taman Siswa Turen - Malang (2001-2004) SMA Negeri 1 Turen - Malang (2004-2007) D3 Jurusan Telekomunikasi, Politeknik Negeri Malang tahun 2007 – 2010 (D3 Telkom D). D4 Lanjut Jenjang Jurusan Telekomunikasi, Politeknik Elektronika Negeri Surabaya, Institut Teknologi Sepuluh Nopember Surabaya (PENS -ITS) tahun 2010 – 2012.
Pada tanggal 26 Januari 2012 mengikuti Ujian Seminar Proyek Akhir sebagai salah satu persyaratan untuk mendapatkan gelar Sarjana Sains Terapan di Politeknik Elektronika Negeri Surabaya, Institut Teknologi Sepuluh Nopember (ITS).
iv