Laporan PDU

December 19, 2018 | Author: Fafaa 'a Espera' | Category: N/A
Share Embed Donate


Short Description

njkszndfshfdv...

Description

LAPORAN PRAKTIKUM KOMUNIKASI DATA “PDU



Disusun Oleh :

Eva Novianingsih (04) TT-2A

PROGRAM STUDI TEKNIK TELEKOMUNIKASI TELEKOMUNIKASI JURUSAN TEKNIK ELEKTRO POLITEKNIK NEGERI MALANG 2014

I.

TUJUAN KHUSUS

1. Mampu menghubungkan HP dengan komputer 2. Mampu mengkonversi teks yang dikirim dan diterima ke format Protocol Data Unit (PDU)

II.

TUJUAN UMUM

1. Dapat melakukan instalasi untuk komponen yang tidak terdapat pada Delphi (MSCOMM) 2. Dapat membuat program untuk komunikasi antara komputer ke Handphone. 3. Dapat mengirimkan dan menerima SMS (Sort Message Service) dari komputer. 4. Dapat merubah format teks ke dalam format Protocol Data Unit  (  ( PDU   PDU ) dengan  program Delphi

III.

ALAT DAN BAHAN

1. Program Delphi versi 6 ke atas 2. Komponen serial ( MSCOMM   MSCOMM ) 3. Handphone (Siemens type M35,C45 atau A55) 1 buah 4. Kabel data 5. Komputer 1 buah

IV.

DASAR TEORI 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

 Nomor

Skema

SMS/SM

 Nomor

Ponsel

Bentuk

Encoding

S

Referensi

Penerima

SMS

Data I/O

SUBMIT

SMS (8 bit)

(targantung

(8 bit)

(7 bit / 8

(8 bit)

operator)

 bit)

Jangka Waktu

Isi SMS (jumlah

Sebelum

 bit tergantung pada

SMS Expired

 jumlah karakter

(8 bit)

yang dikirim)

Gambar 1. Header Protocol  PDU  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. 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

Total pasangan SMSC dank ode nasional 6 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

Total 7 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 PD U 

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: 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. 7. Jangka Waktu Sebelum SMS Expired

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 h

e

8

1 110

1000

3

2

00 11

0010 1

9 l

100 1

B

1011 00

F l

o

1111

D

1101 100

0

6

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 : 07912658050000F011000C912618927533730000FF05E8329BFD06

V.

DISKRIPSI PROGRAM

Program ini dibuat agar mahasiswa dapat membuat program untuk komunikasi antara komputer dengan HP menggunakan MSCOMM dengan menggunakan format PDU. Program ini juga mempermudah kita untuk mengirimkan dan menerima SMS dari komputer.

VI.

FLOWCHART FLOWCHART

Teks ke PDU

PDU ke Teks

START

START

Pilih Metode Konversi

 Ambil Hasil Konversi PDU Lengkap

Nasional

Subheader dan Format SMS Center Internasional

 Ambil PDU dari Operator pada PDU lengkap

Subheader dan Format SMS Center Nasional  Ambil PDU dari Nomor HP pada PDU Lengkap Pilih Operator Seluler 

Masukkan Nomor HP Tujuan

Masukkan Pesan Teks

 Ambil PDU dari pesan teks pada PDU Lengkap

Rekonvert masing-masing PDU

FINISH Generate Kode PDU

FINISH

VII.

LISTING PROGRAM

unit Unpdu;

interface

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;

type TForm1 = class(TForm) Label1: TLabel; Panel1: TPanel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Edhasil: TEdit; Edno: TEdit; Edhasil2: TEdit; Label6: TLabel; Label8: TLabel; Label9: TLabel; Memo2: TMemo;

btkonversi: TButton;  bthapus: TButton;  btexit: TButton; Memo3: TMemo; edsms: TEdit; Memo1: TMemo; Label7: TLabel; Memo4: TMemo;  btkonversi2: TButton; //

procedure Label6Click(Sender: TObject);

//

procedure Edhasil2Change(Sender: TObject);

//

procedure btexitClick(Sender: TObject);

//

procedure EdsmsChange(Sender: TObject);

//

procedure Label2Click(Sender: TObject);

//

procedure EdhasilChange(Sender: TObject);  procedure btkonversiClick(Sender: TObject);

//

procedure EdnoChange(Sender: TObject);  procedure bthapusClick(Sender: TObject);  procedure btexitClick(Sender: TObject);  procedure btkonversi2Click(Sender: TObject);  procedure Memo1Change(Sender: TObject);

//

procedure Memo1Change(Sender: TObject);

 private { Private declarations }  public

{ Public declarations } end;

var Form1: TForm1; t_biner,t_heksa:string;

implementation

{$R *.dfm}

 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'; 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_center(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';

//sms //7bit //maksimum

 begin sms_center(edsms.Text); nomer_penerima(edno.Text); text2pdu(memo1.Text);

memo3.Text:=edhasil.Text+tipe_sms+no_ref+edhasil2.Text+bentuk_sms+encoding+expired+m emo2.Text; end;

//procedure Tform1.edsmsKeyPress(Sender: TObject; var Key: Char); //begin //

if key=chr(vk_return) then

//

begin

// //

konversiClick(self); end;

//end;

 procedure TForm1.bthapusClick(Sender: TObject);  begin edsms.Clear; edhasil.Clear; edno.Clear; edhasil2.Clear; memo1.Clear; memo2.Clear; end;

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

Konversiclick(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';

//sms //7bit //maksimum

 begin memo4.Text:=edsms.Text+tipe_sms+no_ref+edno.Text+bentuk_sms+encoding+expired+memo 1.Text;

end;  procedure TForm1.Memo1Change(Sender: TObject);  begin

end;

end.

VIII. TAMPILAN PROGRAM

IX.

KESIMPULAN

1. Kita dapat mempelajari bahasa pemrograman Delphi antara pc to HP dengan menggunakan MSCOMM dengan format PDU 2. Kita dapat mengetahui bagian-bagian atau header untuk mengirim maupun menerima  pesan seperti Nomor SMS Center Tipe SMS, Nomor Referensi SMS, Nomor Ponsel Penerima, Bentuk SMS, Skema encoding Data I/O, jangka waktu sebelum SMS expired, dan isi SMS.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF