• Tidak ada hasil yang ditemukan

LAPORAN PRAKTIKUM KOMUNIKASI DATA KONVERSI TO PDU

N/A
N/A
Protected

Academic year: 2021

Membagikan "LAPORAN PRAKTIKUM KOMUNIKASI DATA KONVERSI TO PDU"

Copied!
15
0
0

Teks penuh

(1)

LAPORAN PRAKTIKUM

KOMUNIKASI DATA

KONVERSI TO PDU

Oleh :

Ellen Kurniawati Esmono 1331130015 / TT-2A

POLITEKNIK NEGERI MALANG

JURUSAN TEKNIK ELEKTRO

PROGRAM STUDI TEKNIK TELEKOMUNIKASI

2015

(2)

PRAKTIKUM KOMUNIKASI DATA KONVERSI TO PDU

I. Tujuan

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

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

III. Alat dan Bahan

1) Program Delphi versi 7 2) Komputer 1 unit IV. Teori Dasar

A. 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/SM S SUBMIT (8 bit) Nomor Referensi SMS (8 bit) Nomor Ponsel Penerima (targantung operator) Bentuk SMS (8 bit) Skema Encodin g 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 ProtocolPDU beserta ukuran bit 1. Nomor SMS Center

Header pertama ini terbagi atas tiga subheader,yaitu:

a. Jumlah pasangan heksadesimal SMS-Center dalam bilangan heksa. b. Kode nasional/internasional untuk negara Indonesia

Untuk national , kode subheader-nya adalah 81 Untuk international, kode subheader-nya adalah 91

c. Nomor SMS-Center-nya sendiri dalam pasangan heksa dibalik-balik

Jika tertinggal satu angka heksa yang tidak memiliki pasangan, angka tersebut akan dipasangkan dengan F didepannya.

(3)

Contoh: nomor SMS-Center Indosat-IM3 dapat ditulis dengan dua cara sebagai berikut:

Cara 1 (nasional):

0855000000 diubah menjadi:

a. 0855000000 : ada 5 pasang nomor smsc b. 81 : 1 pasang

c. 80-55-00-00-00: 5 pasang nomor smsc yang sudah dibalik perpasangan Digabung menjadi: 06818055000000

Cara 2 (internasional):

a. 62855000000F : ada 6 pasang b. 91 : ada 1 pasang

c. 26-58-05-00-00-F0 : 6 pasang smsc yang sudah dibalik perpasangan Digabung menjadi 07912658050000F0

Berikut beberapa contoh nomor SMS-Center operator seluler di Indonesia. Tabel 1.1 Nomor SMS Center dengan Cara 1

NO .

Operator Seluler SMS-Center Kode PDU

1. Telkomsel 0811000000 06818011000000

2. Satelindo 0816124 0581806121F4

3. Excelcom 0818445009 0681081440590

4. Indosat-IM3 0855000000 06818055000000

Tabel 1.2 Nomor SMS Center dengan cara 2 NO

.

Operator Celuler SMS-Center Kode PDU

1. Telkomsel 62811000000 07912618010000F0

2. Satelindo 62816124 059126181642

3. Excelcom 62818445009 07912618485400F9

4. Indosat-IM3 62855000000 07912658050000F0

2. Tipe SMS (SMS SUBMIT)

Tipe SMS SUBMIT = 11 (kode pengiriman SMS). 3. Nomor Referensi SMS

Nomor referensi dibiarkan 0. Jadi, bilangan heksanya 00. Selanjutnya akan diberikan sebuah nomor referensi otomatis oleh ponsel/alat SMS-gateway.

4. Nomor Ponsel Penerima

Sama seperti menulis PDU Header untuk SMS-Center, header ini juga terbagi atas tiga bagian, yaitu:

Total pasangan SMSC dank ode nasional 6 pasang

(4)

a. Jumlah bilangan desimal nomor ponsel yang dituju dalam bilangan heksa. b. Kode nasional/internasional untuk negara Indonesia

c. Untuk nasional, kode subheader-nya: 81 d. 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: 0B818021593733F7 Cara 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: 0C91261892753373 5. Bentuk SMS

0 → 00 → dikirim sebagai SMS 1 → 01 → dikirim sebagai telex 2 → 02 → dikirim sebagai fax

Dalam hal ini, pengiriman dalam bentuk SMS tentu saja memakai 00. 6. Skema Encoding Data I/O

Ada dua skema, yaitu:

a. Skema 7 bit → ditandai dengan angka 0 → 00

b. 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.

(5)

Jika 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 SMS

Header terdiri atas dua subheader, yaitu: a. Panjang isi (jumlah huruf dari isi)

Misalnya: untuk kata “hello” → ada 5 huruf → 05 b. Isi berupa pasangan bilangan heksa

Ponsel/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 “hello” Langkah pertama: Bit 7 1 h 110 1000 e 110 0101 l 110 1100 l 110 1100 o 110 1111 langkah kedua: E 8 h 1 110 1000 3 2

(6)

e 00 11 0010 1 9 B l 100 1 1011 00 F D l 1111 1101 100 0 6 o 0000 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 :

(7)
(8)

VI. Pembahasan

Pertama-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}

(9)

procedure kebiner1(t_HExa:string); var

data: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); var data: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); var temp: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';

(10)

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<=length(data) +2 ) do begin nomer[a+1]:=temp[a]; nomer[a]:=temp[a+1]; a:=a+2; end; form1.Edit2.Text:='0'+inttostr(jumlah_pasangan)+kode+nomer; end; procedure nomer_penerima(data:string); var a:integer; nomer,kode,temp,jumlah_nomer:string; begin a:=1; nomer:=data; jumlah_nomer:=inttohex(length(data),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'; while(a<=length(data) + 2) do

begin

(11)

nomer[a]:=temp[a+1]; a:=a+2; end; form1.Edit4.Text:='0'+jumlah_nomer+kode+nomer; end; procedure text2pdu(data:string); var jumlah_kata,pesan,hexa,temp,temp2:string; a,b,c:integer; begin b:=0;c:=0; jumlah_kata:=inttohex(length(data),1);

if length(jumlah_kata)<2 then jumlah_kata:='0'+jumlah_kata; pesan:=data;

for a:=length(pesan) downto 1 do begin hexa:=inttohex(ord(pesan[a]),2); kebiner1(hexa[1]); kebiner2(hexa[2]); temp:=temp+t_biner; end;

if length(temp) mod 8 <>0 then begin b:=length(pesan); if b>8 then b:=b mod 8; for a:=1 to b do begin temp:='0'+temp; end; end; b:=0; temp2:=''; hexa:=''; for a :=length(temp) downto 1 do begin temp2:=temp[a]+temp2; inc(b); if b>=4 then begin b:=0; keheksa(temp2); inc(c); temp2:=''; if c>=2 then begin hexa:=hexa+t_heksa; c:=0; t_heksa:=''; end; end; end;

(12)

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;

(13)

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 :

(14)

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

(15)

VII. Kesimpulan

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

VIII. Referensi

Gambar

Tabel 1.2 Nomor SMS Center dengan cara 2 NO

Referensi

Dokumen terkait

Jika ianya bukan demikian bentuk rupa yang khusus ini diketahui oleh Allah dan dikehendaki oleh-Nya, Dia tidak akan membawa kita kepada kewujudan atasnya, dan rupa bentuk ini

Penulis melihat selama melakukan on the job training di hotel sintesa peninsula manado, bahwa peran order taker sangat penting untuk menunjang kelancaran yang ada

(6) Sarana Pembelajaran adalah fasilitas yang dimiliki STPB yang dapat digunakan oleh Mahasiswa dan atau peserta didik lainnya dengan mengikuti ketentuan yang

Sejarah pertumbuhan dan perkembangan madrasah di Indonesia, ada dua momentum yang sangat menentukan eksistensi madrasah; pertama, SKB 3 Menteri 1975 yang menjadi

4) Penghayatan atas maksud dan makna pekerjaan, yakni bila seseorang karyawan tetap tahu kegunaan dari pekerjaan, dan juga sudah tahu betapa sangat pentingnya pekerjaannya. Maka

public relations saat itu adalah ketika para perintis kemerdekaan Indonesia ( the founding fathers ) mengadakan konferensi pers untuk memberitakan

Menurut Rahman, pendidikan jenis ini disebut pendidikan orang dewasa karena diberikan kepada orang banyak yang tujuan utamanya adalah untuk mengajarkan mereka mengenai Alquran

Seluruh Dosen Pengajar Sekolah Pascasarjana Program Studi Magister Manajemen Universitas Sumatera Utara yang telah memberikan ilmu- ilmunya selama perkuliahan