konversi text to pdu

21
LAPORAN PRAKTIKUM KOMUNIKASI DATA KONVERSI TO PDU Oleh : Ellen Kurniawati Esmono 1331130015 / TT-2A POLITEKNIK NEGERI MALANG JURUSAN TEKNIK ELEKTRO PROGRAM STUDI TEKNIK TELEKOMUNIKASI

Upload: ellenesmono

Post on 16-Dec-2015

347 views

Category:

Documents


23 download

DESCRIPTION

Komunikasi Data Teknik Telekomunikasi

TRANSCRIPT

LAPORAN PRAKTIKUMKOMUNIKASI DATA

KONVERSI TO PDU

Oleh :Ellen Kurniawati Esmono1331130015 / TT-2A

POLITEKNIK NEGERI MALANGJURUSAN TEKNIK ELEKTROPROGRAM STUDI TEKNIK TELEKOMUNIKASI2015

PRAKTIKUM KOMUNIKASI DATAKONVERSI TO PDU

I. Tujuan 1) Mampu mengkonversi teks yang dikirim dan diterima ke format Protocol Data Unit.

II. Tujuan Umum1) Dapat merubah format teks ke dalam format Protocol Data Unit (PDU) dengan program Delphi.

III. Alat dan Bahan1) Program Delphi versi 72) Komputer 1 unit

IV. Teori DasarA. Protocol Data Unit (PDU)Format data yang diterima atau yang dikirim handphone berupa Protocol Data Unit (PDU), PDU yang diterima dari handphone berbeda dengan PDU yang di kirim, namun tetap menggunakan aturan yang sama. Perbedaannya terutama pada field yang dikandung, baik nilai maupun fungsinya. Untuk format PDU yang dikirim memiliki jumlah header sebanyak 8 bagian. Berikut ini ke delapan header dari PDU yang dikirimkan :Nomor SMS Center(tergantung operator)Tipe SMS/SMS SUBMIT(8 bit)Nomor Referensi SMS (8 bit)Nomor Ponsel Penerima (targantung operator)Bentuk SMS (8 bit)Skema Encoding Data I/O (7 bit / 8 bit)Jangka Waktu Sebelum SMS Expired (8 bit)Isi SMS (jumlah bit tergantung pada jumlah karakter yang dikirim)

Gambar 1. Header Protocol PDU beserta ukuran bit

1. Nomor SMS CenterHeader pertama ini terbagi atas tiga subheader,yaitu:a. Jumlah pasangan heksadesimal SMS-Center dalam bilangan heksa.b. Kode nasional/internasional untuk negara IndonesiaUntuk national , kode subheader-nya adalah 81Untuk international, kode subheader-nya adalah 91c. Nomor SMS-Center-nya sendiri dalam pasangan heksa dibalik-balikJika tertinggal satu angka heksa yang tidak memiliki pasangan, angka tersebut akan dipasangkan dengan F didepannya.Contoh: nomor SMS-Center Indosat-IM3 dapat ditulis dengan dua cara sebagai berikut:Cara 1 (nasional):0855000000 diubah menjadi:a. Total pasangan SMSC dank ode nasional 6 pasang0855000000 : ada 5 pasang nomor smscb. 81 : 1 pasangc. 80-55-00-00-00: 5 pasang nomor smsc yang sudah dibalik perpasangan Digabung menjadi: 06818055000000Cara 2 (internasional):a. Total 7 pasang62855000000F : ada 6 pasangb. 91 : ada 1 pasangc. 26-58-05-00-00-F0 : 6 pasang smsc yang sudah dibalik perpasanganDigabung menjadi 07912658050000F0Berikut beberapa contoh nomor SMS-Center operator seluler di Indonesia.Tabel 1.1 Nomor SMS Center dengan Cara 1NO.Operator SelulerSMS-CenterKode PDU

1.Telkomsel081100000006818011000000

2.Satelindo08161240581806121F4

3.Excelcom08184450090681081440590

4.Indosat-IM3085500000006818055000000

Tabel 1.2 Nomor SMS Center dengan cara 2NO.Operator CelulerSMS-CenterKode PDU

1.Telkomsel6281100000007912618010000F0

2.Satelindo62816124059126181642

3.Excelcom6281844500907912618485400F9

4.Indosat-IM36285500000007912658050000F0

2. Tipe SMS (SMS SUBMIT)Tipe SMS SUBMIT = 11 (kode pengiriman SMS). 3. Nomor Referensi SMSNomor referensi dibiarkan 0. Jadi, bilangan heksanya 00. Selanjutnya akan diberikan sebuah nomor referensi otomatis oleh ponsel/alat SMS-gateway.4. Nomor Ponsel PenerimaSama seperti menulis PDU Header untuk SMS-Center, header ini juga terbagi atas tiga bagian, yaitu:a. Jumlah bilangan desimal nomor ponsel yang dituju dalam bilangan heksa.b. Kode nasional/internasional untuk negara Indonesiac. Untuk nasional, kode subheader-nya: 81d. Untuk internasional, kode subheader-nya: 91.e. Nomor ponsel yang dituju dalam pasangan heksa dibalik-balik.Jika tertinggal satu angka heksa yang tidak memiliki pasangan, angka tersebut dipasangkan dengan huruf F didepannya.Contoh:Nomor ponsel yang dituju 628129573337 maka dapat ditulis dengan dua cara , yaitu sebagai berikut :Cara 1 (nasional): 08129573337 diubah menjadi:a. 0B: ada 11 angka (jumlah bilangan desimal dari nomor tujuan) b. 81 (subheader nasional)c. 80-21-59-37-33-F7 (penggabungan nomor tujuan yang dibalik, apabila tertinggal 1 angka maka ditambahkan huruf F didepanya)Digabung menjadi: 0B818021593733F7Cara 2: 628129573337 diubah menjadi:a. 0C: ada 12 angka (jumlah bilangan desimal dari nomor tujuan)b. 91 (subheader nasional)c. 26-81-92-75-33-F7 (penggabungan nomor tujuan yang dibalik, apabila tertinggal 1 angka maka ditambahkan huruf F didepanya)Digabung menjadi: 0C912618927533735. Bentuk SMS0 00 dikirim sebagai SMS1 01 dikirim sebagai telex2 02 dikirim sebagai faxDalam hal ini, pengiriman dalam bentuk SMS tentu saja memakai 00.6. Skema Encoding Data I/OAda dua skema, yaitu:a. Skema 7 bit ditandai dengan angka 0 00b. Skema 8 bit ditandai dengan angka lebih besar dari 0 yang diubah ke heksa.Kebanyakan ponsel/SMS Gateway yang ada di pasaran sekarang menggunakan skema 7 bit sehingga kita menggunakan kode 00. 7. Jangka Waktu Sebelum SMS ExpiredJika bagian ini di-skip, berarti kita tidak membatasi waktu berlakunya SMS, sehingga tidak perlu memberikan nilai apapun di PDU headernya. Selain dengan cara tersebut juga dapat dilakukan dengan memberikan nilai heksa FF yang juga berarti memberikan waktu validitas maksimum. Sementara itu, jika kita mengisinya dengan suatu bilangan integer yang kemudian diubah ke pasangan heksa tertentu, bilangan yang kita berikan tersebut akan mewakili jumlah waktu validitas SMS tersebut.8. Isi SMSHeader terdiri atas dua subheader, yaitu:a. Panjang isi (jumlah huruf dari isi)Misalnya: untuk kata hello ada 5 huruf 05b. Isi berupa pasangan bilangan heksaPonsel/SMS Gateway berskema encoding 7 bit berarti jika kita mengetikkan suatu huruf dari keypad-nya, kita telah membuat 7 angka I/O berturutan.Ada dua langkah yang harus kita lakukan untuk mengkonversi isi SMS, yaitu:Langkah pertama: mengubah menjadi kode 7 bit.Langkah kedua: mengubah kode 7 bit menjadi 8 bit, yang diwakili oleh pasangan heksa.Contoh: untuk kata helloLangkah pertama:Bit 7 1h1101000e1100101l1101100l1101100o1101111

langkah kedua: E8h1 110 1000 32e00 11 0010 1 9Bl100 1 1011 00 FDl1111 1101 100 06o0000 0 110 1111 Oleh karena total 7 bit x 5 huruf = 35 bit, sedangkan yang kita perlukan adalah 8 bit x 5 bit = 40 bit, maka diperlukan 5 bit dummy yang diisi dengan bilangan 0.Setiap 8 bit mewakili suatu pasangan heksa. Setiap 4 bit mewakili suatu angka heksa, tentu saja karena secara logika 24 = 16. Dengan demikian,maka kata hello hasil konversinya menjadi E8329BFD06.Setelah semua header terbentuk, maka selanjutnya adalah menggabungkan semua header yang terbentuk, Masing-masing header maupun subheader untuk mengirim SMS diatas harus digabungkan menjadi sebuah PDU yang lengkap.Contoh: jika mengirimkan kata hello ke ponsel nomor 628129573337 lewat SMS-Center Indosat-M3, denagan waktu valid maksimum, maka PDU lengkapnya adalah :07912658050000F011000C912618927533730000FF05E8329BFD06

V. Perencanaan

VI. PembahasanPertama-tama yang dilakukan dalam membuat tampilan Komunikasi Serial adalah melakukan identifikasi pada setiap fungsi-fungsi yang diperlukan. Identifikasi ini dilakukan dengan mengedit pada menu Box Inspector sesuai dengan yang diinginkan sehingga pada listing program akan muncul otomatis sepeti ini.type TForm1 = class(TForm) Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Memo1: TMemo; Memo2: TMemo; btkonversi: TButton; btkonversi2: TButton; bthapus: TButton; btexit: TButton; Memo3: TMemo; Memo4: TMemo; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel; procedure btkonversiClick(Sender: TObject); procedure Edit1KeyPress(Sender: TObject; var Key: Char); procedure bthapusClick(Sender: TObject); procedure Memo1KeyPress(Sender: TObject; var Key: Char); procedure btexitClick(Sender: TObject); procedure btkonversi2Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; t_biner,t_heksa:string;

Selanjutnya adalah menuliskan procedure program, berikut adalah listing programnya:implementation

{$R *.dfm}

procedure kebiner1(t_HExa:string);vardata:string;begin data:=t_hexa; if data = '0' then data :='000'; if data = '1' then data :='001'; if data = '2' then data :='010'; if data = '3' then data :='011'; if data = '4' then data :='100'; if data = '5' then data :='101'; if data = '6' then data :='110'; if data = '7' then data :='111'; if data = '8' then data :='1000'; t_biner := data;end;

procedure kebiner2(t_Hexa:string);vardata:string;begin data:=t_Hexa; if data = '0' then data :='0000'; if data = '1' then data :='0001'; if data = '2' then data :='0010'; if data = '3' then data :='0011'; if data = '4' then data :='0100'; if data = '5' then data :='0101'; if data = '6' then data :='0110'; if data = '7' then data :='0111'; if data = '8' then data :='1000'; if data = '9' then data :='1001'; if data = 'A' then data :='1010'; if data = 'B' then data :='1011'; if data = 'C' then data :='1100'; if data = 'D' then data :='1101'; if data = 'E' then data :='1110'; if data = 'F' then data :='1111'; t_biner:=t_biner+data;end;

procedure keheksa(data:string);vartemp:string;begin temp:=data; if temp = '0000' then temp :='0'; if temp = '0001' then temp :='1'; if temp = '0010' then temp :='2'; if temp = '0011' then temp :='3'; if temp = '0100' then temp :='4'; if temp = '0101' then temp :='5'; if temp = '0110' then temp :='6'; if temp = '0111' then temp :='7'; if temp = '1000' then temp :='8'; if temp = '1001' then temp :='9'; if temp = '1010' then temp :='A'; if temp = '1011' then temp :='B'; if temp = '1100' then temp :='C'; if temp = '1101' then temp :='D'; if temp = '1110' then temp :='E'; if temp = '1111' then temp :='F'; t_heksa:=temp+t_heksa;end;

procedure sms_centre(data:string);var jumlah_pasangan,a:integer; nomer,kode,temp:string;begin a:=1; if length(data) mod 2=1 then data:=data+'F'; nomer:=data; temp:=data; if nomer [1]='0' then kode:='81' else kode:='91'; jumlah_pasangan:=length(data) div 2+1; while(a=2 then begin hexa:=hexa+t_heksa; c:=0; t_heksa:=''; end; end; end; form1.Memo2.Text:=jumlah_kata+hexa;end;

procedure TForm1.btkonversiClick(Sender: TObject);const tipe_sms='11'; no_ref='00'; bentuk_sms='00'; encoding='00'; expired='FF';begin sms_centre(edit1.Text); nomer_penerima(edit3.Text); text2pdu(memo1.Text); memo3.Text:=edit2.Text+tipe_sms+no_ref+edit4.Text+bentuk_sms+encoding+expired+memo2.Text;end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);begin if key=chr(vk_return) then begin btkonversiClick(self); end;end;

procedure TForm1.bthapusClick(Sender: TObject);begin edit1.Clear; edit2.clear; edit3.Clear; edit4.Clear; memo1.clear; memo2.Clear;

end;

procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);begin if key=chr(vk_return) then begin btkonversiclick(self); key:=chr(vk_back); end;end;

procedure TForm1.btexitClick(Sender: TObject);begin Application.Terminate;end;

procedure TForm1.btkonversi2Click(Sender: TObject);const tipe_sms='11'; no_ref='00'; bentuk_sms='00'; encoding='00'; expired='FF';begin memo4.Text:=edit1.Text+tipe_sms+no_ref+edit3.Text+bentuk_sms+encoding+expired+memo1.Text;end;end.Selesai penulisan listing program selanjutnya klik Run. Tampilan awal saat dilakukan Run :

Selanjutnya adalah mengisikan SMS Centre, Nomor Penerima, dan Isi Pesan pada kolom yang telah tersedia. Lalu selanjutnya klik KonversiTEXTtoPDU dan klik KonversiPDUtoTEXT maka akan muncul hasil konversi dari SMS Centre, Nomor Penerima, Isi Pesan, dan hasil konversi dari Text ke PDU setelah digabungkan serta hasil konversi dari PDU ke Text. Tampilannya seperti berikut :

Jika ingin menghapus data dan memulai konversi lagi maka dapat di klik Hapus sehingga data awal akan terhapus dan dapat dilakukan konversi kembali.

Jika ingin keluar dari program maka klik Exit.

VII. Kesimpulan1) Dengan menggunakan program Delphi7 dapat dilakukan pengubahan format data ke Protocol Data Unit (PDU).

VIII. Referensi1) Panduan Praktikum Komunikasi DataSTART

Pilih Metode Konversi

Nasional

Subheader dan Format SMS Center Nasional

Subheader dan Format SMS Center Internasional

Pilih Operator Seluler

Masukkan Nomor HP Tujuan

Masukkan Pesan Teks

Generate Kode PDU

FINISH

Teks ke PDU

START

Ambil PDU dari Operator pada PDU lengkap

Ambil Hasil Konversi PDU Lengkap

Ambil PDU dari Nomor HP pada PDU Lengkap

Ambil PDU dari pesan teks pada PDU Lengkap

Rekonvert masing-masing PDU

FINISH

PDU ke Teks