Ridho Wicaksono_18_Laporan Pratikum III

Embed Size (px)

DESCRIPTION

Komunikasi serial Pcto Pc

Citation preview

LAPORAN PRAKTIKUM IIIKOMUNIKASI DATAKOMUNIKASI SERIAL(KOMUNIKASI KOMPUTER DENGAN KOMPUTER)

Oleh :Ridho Wicaksono ( 18 / TT 2D )1331130035

PROGRAM STUDI TEKNIK TELEKOMUNIKASIJURUSAN TEKNIK ELEKTROPOLITEKNIK NEGERI MALANG2015

BAB IPENDAHULUAN

1.1 Tujuan1.1.1 Tujuan Umum1. Mampu melakukan komunikasi antara dua komputer menggunakan interface serial RS 2322. Memahami sistem pengkabelan untuk menghubungkan dua komputer melalui port serial3. Memahami standarisasi komunikasi serial RS 2324. Memahami prosedur untuk melakukan komunikasi serial RS 232

1.1.2 Tujuan Khusus1. Memahami komponen untuk melakukan komunikasi serial RS 232 menggunakan Delphi2. Mampu melakukan instalasi komponen komunikasi serial RS 232 (Cport)3. Mampu membuat program untuk komunikasi antara komputer dengan komputer.

1.2 Teori Penunjang1.2.1 Komunikasi Serial RS232

No.IstilahPenjelasan

1.BaudrateKecepatan transfer data dinyatakan dalam satuan bps (bit per second)

2.Data BitJumlah bit yang dikirimkan dalam 1 frame data (5bit 9 bit)

3.Parity Bit Bit parity digunakan dalam pengecekan error untuk menemukan kesalahan yang mungkin terjadi selama transmisi data

4.Start BitBit yang digunakan sebagai indikator awal sebuah frame data (selalu Low)

5.Stop BitBit yang digunakan sebagai indikator akhir sebuah frame data (selalu high)

Komunikasi serial adalah komunikasi yang mengantarkan data digit secara bit per bit secara secara berurutan dan bergantian yang dikirimkan melalui seuntai kabel pada suatu waktu tertentu atau melalui media interface serial. Pengiriman data melalui interface dapat dilkakukan secara bit per bit (setiap satu step waktu = 1 bit) adu juga dalam satuan baud Diana 1 baud tidak selalu senilai dengan 1 bit per Second, tergantung besaran data untuk setiap kali clock transfer.

Tabel 1. Daftar Istilah pada Komunikasi Serial

Komunikasi ini mempunyai suatu kelebihan yaitu hanya membutuhkan satu jalur dan kabel yang sedikit dibandingkan dengan komunikasi paralel. Pada prinsipnya komunikasi serial merupakan komunikasi dimana pengiriman data dilakukan per bit sehingga lebih lambat dibandingkan komunikasi parallel, atau dengan kata lain komunikasi serial merupakan salah satu metode komunikasi data di mana hanya satu bit data yang dikirimkan melalui seuntai kabel pada suatu waktu tertentu. Pada dasarnya komunikasi serial adalah kasus khusus komunikasi paralel dengan nilai n = 1, atau dengan kata lain adalah suatu bentuk komunikasi paralel dengan jumlah kabel hanya satu dan hanya mengirimkan satu bit data secara simultan.Hal ini dapat disandingkan dengan komunikasi paralel yang sesungguhnya di mana n-bit data dikirimkan bersamaan, dengan nilai umumnya 8 n 128.

Gambar 1. Ilustrasi Pengiriman Komunikasi SerialKomunikasi serial ada dua macam, asynchronous serial dan synchronous serial.Synchronous serial adalah komunikasi dimana hanya ada satu pihak (pengirim atau penerima) yang menghasilkan clock dan mengirimkan clock tersebut bersama-sama dengan data. Contoh pengunaan synchronous serial terdapat pada transmisi data keyboard. Asynchronous serial adalah komunikasi dimana kedua pihak (pengirim dan penerima) masing-masing menghasilkan clock namun hanya data yang ditransmisikan, tanpa clock. Agar data yang dikirim sama dengan data yang diterima, maka kedua frekuensi clock harus sama dan harus terdapat sinkronisasi. Setelah adanya sinkronisasi, pengirim akan mengirimkan datanya sesuai dengan frekuensi clock pengirim dan penerima akan membaca data sesuai dengan frekuensi clock penerima. Contoh penggunaan asynchronous serial adalah pada Universal Asynchronous Receiver Transmitter (UART) yang digunakan pada serial port (COM) komputer

1.2.2 Prinsip Kerja Pengiriman Frame Data pada Komunikasi Serial

Data yang dikirim ke serial port akan dikirim ke buffer pengirim (Tx buffer) begitupun data yg diterima adalah data yg diambil dari buffer penerima (RX buffer).

Gambar 2. Gambaran Cara Kerja Buffer pada Komunikasi Serial(sumber : https://pccontrol.wordpress.com/2014/06/28/pengetahuan-dasar-serial-komunikasi-pada-arduino/)1.2.3 Parameter Komunikasi Serial

Pada komunikasi serial data yang dikirimkan berupa bit 1 (high) atau bit 0 (low), untuk bit 1 diwakili sebagai tegangan +3 s/d +15 volt dan bit 0 diwakili sebagai tegangan -3 s/d -15 volt dengan demikian tegangan dalam komunikasi serial memiliki ayunan tegangan maksimal sebesar 30 volt.

Gambar 3. Gelombang informasi komunikasi serial (https://wangready.wordpress.com/2011/02/02/rs232-komunikasi-serial-dengan-mikrokontroler/)

Gambar 3. menunjukan bentuk gelombang komunikasi serial dengan format 8N1, yaitu 1 bit-data, t parity dan 2 stop bit. Pada keadaan idle atau menganggur, jalur RS232 ditandai dengan mark state atau logika high. Pengiriman data diawali dengan start bit yang berlogika nol 0 atau low, berikutnya data dikirimkan bit demi bit mulai dari LSB (Least Significant Bit) atau bit ke-0 (nol). Pengiriman setiap byte diakhiri dengan stop bit yang berlogika high. Gambar 3 memperlihatkan kondisi low setiap stop bit, ini adalah start bit yang menandakan data berikutnya akan dikirimkan. Jika tidak ada lagi data yang ingin dikirim, maka jalur transmisi ini akan dibiarkan dalam keadaan high. Ada yang disebut break sinyal, yaitu keadaan low yang lamanya cukup untuk mengirimkan 8-bit data. Jika pengirim menyebabkan jalur komunikasi dalam keadaan seperti ini, penerima akan menganggap ini adalah break sinyal atau sinyal rusak.

1.2.4 Konfigurasi Pengkabelan Komunikasi Serial antara 2 komputer Untuk dapat melakukan komunikasi serial antara dua komputer maka di butuhkan media kabel untuk mengirimkan informasi. Dalam komunikasi serial antara dua komputer dibutuhkan media kabel serta konektor yang berupa DB9 (female). DB9 (female) memiliki 9 pin out yang tiap-tiap pin out memiliki fungsi masing-masing. Pada Tabel 1. dibawah ini, menunjukan konfigurasi pin out beserta fungsi dari masing-masing pin.

Tabel 2. fungsi dari masing-masing pin keluaran Fungsi Pin OutKeteranganFungsi

TXTransmit DataUntuk pengiriman data serial

RXReceive DataUntuk penerimaan data serial

CTSClear To SendDigunakan untuk memberitahukan bahwa modem siap untuk melakukan pertukaran data

CDCarrier DetectSaat modem mendeteksi suatu carrier dari modem lain (dari tempat lain) maka sinyal ini akan diaktifkan

DSRData Set ReadyMemberitahukan UART bahwa modem siap untuk melakukan komunikasi (Link)

DTRData Terminal ReadyKebalikan dari DSR, untuk memberitahukan bahwa UAT siap untuk melakukan hubungan komunikasi

RTSRequest To SendSinyal untuk menginformasikan modem bahwa UART siap untuk melakukan pertukaran data

RIRing InduktorAkan aktif jika modem mendeteksi adanya sinyal dering dari saluran telepon

Untuk konfigurasi pin out antara DB9 (female) dengan DB9 (female) yang lain ditunjukan pada gambar berikut :

RXTX

PIN 1 : CD

PIN 2 : RX

PIN 3 : TX PIN 4 : DTR

PIN 5 : SG PIN 6 : DSR PIN 7 : RTS PIN 8 : CTS PIN 9 : RIPIN 1 : CD

PIN 2 : RX

PIN 3 : TX

PIN 4 : DTR

PIN 5 : SG

PIN 6 : DSR

PIN 7 : RTS

PIN 8 : CTS

PIN 9 : RI

Gambar 4. Konfigurasi pin out DB9

Pada gambar 4 diatas merupakan konfigurasi untuk komunikasi antara dua komputer yang menggunakan koneksi point-to-point, artinya hanya komunikasi dalam mode half duplex.

1.2.5 Installasi Komponen Cport pada delphiUntuk melakukan komunikasi serial komputer ke komputer menggunakan program Delphi dibutuhkan komponen serial, terdapat banyak sekali komponen komunikasi serial yang dapat digunakan, salah satunya adalah cport. Untuk mendapatkannya, dapat diunduh di alamat www.progdigy.com. File yang diperoleh masih dalam format terkompresi, sehingga unuk menggunakannya dan melakukan instalasi ke program delphi diperlukan tahapan sebagai berikut :

Cara menginstall Komponen Serial 1. Unkompres file cport yang telah di download.2. Copy file cport hasil unkompres ke folder dimana program delphi diinstall, biasanya terdapat di C:\Program Files\Borland\Delphi73. Ubah nama folder menjadi comserial (optional), sehingga menjadi C:\Program Files\Borland\Delphi7\comserial4. Jalankan program delphi. Setelah itu klik ke sub menu tools Environment Options

Gambar 5. Tampilan Environment Options

5. Pada environment window klik ke library

Gambar 6. Tampilan Environment Windows Library

6. Pada tab library pilih tanda (browse) pada library path

Gambar 7. Tampilan Library path

7. Klik tanda (browse) pada Directories

Gambar 8. Tampilan Directories

8. Arahkan ke file cport (sesuai dengan penempatan file cport uncompress)9. Setelah itu tekan tombol ADD

Gambar 9. Tampilan tombol ADD pada Directories

10. Buka file CportLib7 pada folder file cport uncrompress ditempatkan, disini ditempatkan pada C:\Program Files\Borland\Delphi7\comserial11. Setelah itu tekan tombol install

Gambar 10. Tampilan tombol Install

12. Buka DsgnCport7 pada folder file cport uncrompress ditempatkan, disini ditempatkan pada C:\Program Files\Borland\Delphi7\comserial

Gambar 11. Tampilan tombol Install

13. Cek di program delphi apakah komponen sudah terinstall, jika proses install sukses akan tampak seperti gambar dibawah.

Gambar 12. Tampilan komponen Cport pada Delphi

BAB IIPEMBAHASAN

2.1 Prosedur Praktikum Tugas PengembanganAdapun prosedur pada praktikum ini adalah :1. Mempersiapkan instalasi kabel pada konektor DB9 (female) seperti Gambar 4.2. Merangkai setiap komponen dipanel borland delphi sesuai dengan konsep tata letak komponen.

Gambar 13. Tata letak dari setiap komponenKomponenPropertySetting

Form1CaptionKOMUNIKASI PC do PC

Namefrmpctopc

Label1CaptionKIRIM

Label2CaptionDESIMAL

Label3CaptionDESIMAL

Label4CaptionHEXA

Label5CaptionBINER

Label6CaptionHEXA

Label7CaptionBINER

Label8CaptionTERIMA

Labe9CaptionMasukkan

Label0CaptionKOMUNIKASI SERIAL PC TO PC

Label11CaptionTEKNIK TELEKOMUNIKASI 2-D

Label12CaptionRidho Wicaksono / Anisa Shinta A.P

Memo1NameMengirim

Memo2NameDesisender

Memo3NameHexasender

Memo4NameBinersender

Memo5NameMenerima

Memo6NameMengirimdesi

Memo7NameMengirimhexa

Memo8Namemengirimbiner

Edit1Text-

Nameedinputteks

Button 1CaptionSend

NameBtsend

Button 2CaptionClear

NameBtclear

Button 3CaptionSetup

NameBtsetup

Button 5Captionexit

Namebtnexit

2.2 Program Praktikum Tugas Pengembangan3. Membuat program untuk mengirimkan serta menerima pesan (teks) secara serial dari PC ke PC. Mengubah teks yang diterima ke dalam bentuk heksadesimal dan biner.

unit Unit1;

interface

usesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, CPort;

type Tfrmpctopc = class(TForm) ComPort1: TComPort; mengirim: TMemo; Label1: TLabel; btsend: TButton; btsetup: TButton; exit: TButton; edinputteks: TEdit; btclear: TButton; mengirimdesi: TMemo; mengirimhexa: TMemo; mengirimbiner: TMemo; menerima: TMemo; desisender: TMemo; hexasender: TMemo; binersender: TMemo; Label2: TLabel; Label6: TLabel; Label8: TLabel; Label9: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label7: TLabel; Label10: TLabel; Label11: TLabel; Label12: TLabel; procedure FormCreate(Sender: TObject); procedure btsendClick(Sender: TObject); procedure btsetupClick(Sender: TObject); procedure exitClick(Sender: TObject); procedure ComPort1RxChar(Sender: TObject; Count: Integer); procedure btclearClick(Sender: TObject); procedure mengirimChange(Sender: TObject); private { Private declarations } public { Public declarations } end;var frmpctopc: Tfrmpctopc;implementation

{$R *.dfm}

procedure Tfrmpctopc.FormCreate(Sender: TObject);begin comport1.open;end;

procedure Tfrmpctopc.btsendClick(Sender: TObject);var str:string; //variabel menyimpanan data yang diterima b,a:integer; data,kode,kode_ascii,kode_hexa,kode_biner:string; begin str:=edinputteks.Text; comport1.WriteStr(str); mengirim.Text:=mengirim.Text+str; for a:= 1 to length(str) do begin kode_ascii:=inttostr(ord(str[a])); desisender.Lines.Add(str[a]+'>'+kode_ascii); kode_hexa:=inttohex(ord(str[a]),1); hexasender.Lines.Add(str[a]+'>'+kode_hexa); for b:=1 to 2 do beginkode:=kode_hexa[b]; if kode='0' then data :='0000'; if kode='1' then data :='0001'; if kode='2' then data :='0010'; if kode='3' then data :='0011'; if kode='4' then data :='0100'; if kode='5' then data :='0101'; if kode='6' then data :='0110'; if kode='7' then data :='0111'; if kode='8' then data :='1000'; if kode='9' then data :='1001'; if kode='a' then data :='1010'; if kode='b' then data :='1011'; if kode='c' then data :='1100'; if kode='d' then data :='1101'; if kode='e' then data :='1110'; if kode='f' then data :='1111'; kode_biner:= kode_biner +' '+ data; end; binersender.Lines.Add(str[a]+'>'+kode_biner); kode_biner:=' '; end;end;

procedure Tfrmpctopc.btsetupClick(Sender: TObject);begin comport1.ShowSetupDialog;end;

procedure Tfrmpctopc.exitClick(Sender: TObject);begin comport1.Close; //menutup port com application.Terminate //keluar dari programend;

procedure Tfrmpctopc.ComPort1RxChar(Sender: TObject; Count: Integer);var str,status:string; //variabel menyimpanan data yang diterima b,a,jumlah:integer; data,kode,kode_ascii,kode_hexa,kode_biner:string;begin comport1.ReadStr(str, count); jumlah:=length(str); if jumlah mod 2=1 then status:=' ' else status:=' '; menerima.Text:=menerima.Text+str+status; for a:= 1 to length(str) do begin kode_ascii:=inttostr(ord(str[a])); mengirimdesi.Lines.Add(str[a]+'>'+kode_ascii); kode_hexa:=inttohex(ord(str[a]),1); mengirimhexa.Lines.Add(str[a]+'>'+kode_hexa); for b:=1 to 2 do begin kode:=kode_hexa[b]; if kode='0' then data :='0000'; if kode='1' then data :='0001'; if kode='2' then data :='0010'; if kode='3' then data :='0011'; if kode='4' then data :='0100'; if kode='5' then data :='0101'; if kode='6' then data :='0110'; if kode='7' then data :='0111'; if kode='8' then data :='1000'; if kode='9' then data :='1001'; if kode='a' then data :='1010'; if kode='b' then data :='1011'; if kode='c' then data :='1100'; if kode='d' then data :='1101'; if kode='e' then data :='1110'; if kode='f' then data :='1111'; kode_biner:= kode_biner +' '+ data; end; mengirimbiner.Lines.Add(str[a]+'>'+kode_biner); kode_biner:=' '; end; //menerima.Lines.Add(' ');end;

procedure Tfrmpctopc.btclearClick(Sender: TObject);begin menerima.Text:=' '; mengirim.Text:=' '; mengirimdesi.Text:=' '; mengirimhexa.Text:=' '; mengirimbiner.Text:=' '; desisender.Text:=' '; hexasender.Text:=' '; binersender.Text:=' ';end;

procedure Tfrmpctopc.mengirimChange(Sender: TObject);beginend;

end.

2.3 Flowchart Program Praktikum Tugas Pengembangan4. Membuat Flowchart program komunikasi serial pc do pc.

2.4 Design Tata Letak Komponen pada Delphi

Gambar 14. Design sebelum program di-Run

Gambar 15. Design setelah program di-Run2.5 Tabel Percobaan

TxRx

Baud RateStop BitParity BitKarakterBaud RateStop BitParity BitKarakter

96001NoneRidho R>0101 0010i> 0110 1001d>0110 0100h>0110 1000o>0110 011096001NoneRidho R>0101 0010i> 0110 1001d>0110 0100h>0110 1000o>0110 0110

96001NoneANISAA>0100 0001N>0100 0100I>0100 1001S>0101 0011A>0100 000196001NoneANISAA>0100 0001N>0100 0100I>0100 1001S>0101 0011A>0100 0001

BAB IIIPENUTUP

1.1 Kesimpulan

Berdasarkan percobaan yang telah dilakukan dapat disimpulkan bahwa komunikasi serial menggunakan Cport adalah:a. Bila baud ratenya besar maka data yang diterima banyak, sebaliknya bila baud ratenya kecil maka data yang diterima kecil tapi datanya salah.b. Jika mengubah parity yang sama antara Tx dan Rx dapat mengurangi kesalahanc. Bila merubah stop bit tidak berpengaruh pada data .

KIRIM

HEXA

DESIMAL

BINER

TERIMA

HEXA

DESIMAL

BINER

START

MASUKKAN DATA

SEND

SETUP

KONFIGURASISERIAL

TX

CLEAR

EXIT

KOSONGKAN SEMUA MEMO

KELUAR DARI PROGRAM

RX

START