• Tidak ada hasil yang ditemukan

Sistem Komunikasi RS-232 Secara Multipoint Untuk Aplikasi Perhotelan.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Sistem Komunikasi RS-232 Secara Multipoint Untuk Aplikasi Perhotelan."

Copied!
56
0
0

Teks penuh

(1)

ABSTRAK

RS-232 adalah salah satu port komunikasi yang terdapat pada komputer. Port

ini mengirimkan data secara serial sehingga sering disebut pula sebagai serial port.

Salah satu keunggulan dari serial port adalah kompatibilitasnya terhadap

mikrokontroler, sehingga komputer dapat mengontrol mikrokontroler melalui serial

port tersebut. Namun serial port mempunyai keterbatasan yaitu hanya dapat berkomunikasi secara point to point.

Untuk meningkatkan efektifitas dari serial port maka pada tugas akhir ini

akan dirancang sebuah prototipe komunikasi RS-232 secara multipoint dari komputer

ke mikrokontroler. Prototipe ini dirancang untuk diaplikasikan pada bidang

perhotelan khususnya sebagai pengendali pintu kamar hotel, dimana setiap tamu yang

ingin masuk harus memasukan nomor PIN tertentu dan PIN tersebut kemudian

dikirim ke komputer server melalui serial port untuk diuji validitasnya.

Prototipe komunikasi RS-232 secara multipoint ini telah diujikan dengan

pintu dimisalkan sebagai LED. Hasil pengujian adalah berhasil dimana komunikasi

dari komputer ke mikrokontoler - mikrokontroler berhasil terjadi secara multipoint

(2)

ABSTRACT

RS-232 is one of communications port on the computer. The port send the

data using serial method, so this port also known as serial port. One of the advantages

using serial port is the compatibility with microcontroller, so a computer can control

the microcontroller through the serial port. But serial port is limited by point to point

communication way.

To increase the effectiveness of serial port, this final project will design a

prototype of RS - 232 multipoint communication system for communication between

computer and microcontroller. The prototype is designed for hotels application

especially as a controller of access door, where every guest who want to access the

door must input a PIN and the PIN will send to computer through the serial port for

validation checking.

Prototype of RS - 232 multipoint communication system has been tried with

an assumption that a LED is the access door. The test result was success, the

communication between computer and microcontrollers was occurred in multipoint

(3)

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus atas kasih

setia, rahmat dan karuniaNya yang selalu memberikan tuntunan, pertolongan dan

kekuatan sehingga laporan tugas akhir dengan judul “ Sistem Komunikasi RS-232

Secara Multipoint Untuk Aplikasi Perhotelan” dapat diselesaikan.

Penulis menyadari bahwa terciptanya laporan tugas akhir ini adalah berkat

bantuan dari berbagai pihak, oleh karena itu penulis ingin mengucapkan terima kasih

kepada:

1. Bapak Roy Pramono Adhie S.T , M.T , selaku pembimbing yang telah

membantu dalam pelaksanaan tugas akhir ini.

2. Ibu Ir. Anita Soepartono M.Sc , selaku koordinator tugas akhir, yang telah

membantu dalam proses pelaksanaan tugas akhir.

3. Bapak Ir. Aan Darmawan M.T , selaku Ketua Jurusan Teknik Elektro,

Universitas Kristen Maranatha.

4. Bapak Marvin C. Wijaya S.T , M.M , M.T , Bapak Semuil Tjiharjadi S.T,

M.M , M.T , Bapak Ir. Soepartono M.Sc, selaku dosen penguji.

5. Para dosen, karyawan, dan staff Jurusan Teknik Elektro Universitas

Kristen Maranatha atas ilmu dan bantuan dalam proses perkuliahan.

6. Pohan , Budi Hertanto, Sugiono , Herman , Davin , Hendra , Hendry ,

Faisal , Heru yang telah membantu serta meminjamkan alat.

7. Keluarga yang selalu memberikan dukungan dalam doa, dana, dorongan

dan semangat dalam menyelesaikan tugas akhir.

8. Indri Tantono yang selalu memberikan dukungan , bantuan dan doa

dalam melaksanakan tugas akhir ini.

9. Rekan-rekan serta semua pihak yang tidak dapat disebutkan satu-persatu

yang telah membantu dan memberikan dukungan baik secara langsung

(4)

Penulis menyadari bahwa laporan tugas akhir ini memiliki banyak kekurangan

karena keterbatasan ilmu dan pengetahuan yang penulis miliki, oleh karena itu

penulis mengharapkan kritik dan saran yang membangun. Akhir kata, dengan segala

keterbatasan dan kekurangan yang ada, penulis berharap semoga laporan tugas akhir

ini dapat bermanfaat bagi pembaca sekalian.

Bandung, Januari 2007

(5)

DAFTAR ISI

II.2 Cara Kerja Mikroprosesor ..……… 7

II.3 Mikrokontroler AT89S52 ..……… 10

II.4 Pemrograman AT89S52 ..……….. 11

II.4.1 Register AT89S52 ..………... 12

II.5 RS-232 (Serial Port) ..……… 16

BAB III PERANCANGAN ALAT ..……… 22

III.1 Pendahuluan ..……… 22

III.2 Perancangan Hardware ..……….. 23

III.2.1 Rangkaian Hardware ..……….. 24

III.2.2 Flowchart Mikrokontroler Pengendali ………. 25

(6)

III.3 Perancangan Software ..……… 27

III.3.1 Flowchart software ..………. 29

III.4 Protokol Komunikasi ..………. 30

BAB IV PENGUJIAN ALAT ..……… 35

IV.1 Pengujian Dengan Hyper Terminal ..……… 35

IV.1.1 Hasil Uji Coba ..………. 35

IV.2 Pengujian Dengan Software Tugas Akhir ……… 37

IV.2.1 Hasil Uji Coba ..………. 38

IV.2.1.1 Hasil Pengujian Proses Looping Cek Status Mikrokontroler dan Penerimaan Status Mikrokontroler …... 38

IV.2.1.2 Hasil Pengujian untuk Password Benar dan Password Salah ……. 41

BAB V KESIMPULAN DAN SARAN ..……… 47

V.1 Kesimpulan ..………. 47

V.2 Saran ..……… 47

DAFTAR PUSTAKA

(7)

DAFTAR TABEL

Tabel II.1 Fungsi Bit- bit pada Register TCON ………. 13

Tabel II.2 Fungsi Bit- bit pada Register TMOD ……… 14

Tabel II.3 Mode Operasi Timer / Counter ………. 14

Tabel II.4 Fungsi Bit – bit pada Register SCON ……….. 15

Tabel II.5 Mode Operasi Serial Port ………. 15

Tabel II.6 Kombinasi Pemilihan Baud Rate ……….. 19

Tabel II.7 Fungsi Pin- pin RS – 232 ……….. 20

Tabel III.1 Alamat Komputer dan Mikrokontroler …..……… 30

Tabel III.2 Format Alamat dalam Heksadesimal dan ASCII ……….. 30

Tabel III.3 Daftar Perintah ………..……… 31

(8)

DAFTAR GAMBAR

Gambar II.1 Diagram Blok Mikroprosesor ……… 5

Gambar II.2 Diagram Blok Sistem Mikroprosesor ……… 5

Gambar II.3 Siklus Kerja Mikroprosesor ……….. 8

Gambar II.4 Chip Mikroprosesor AT89S52 ……….. 10

Gambar II.5 Diagram Blok Mikroprosesor AT89S52 ……… 11

Gambar II.6 Format Pengiriman 1 Karakter Pada Serial Port ……….. 16

Gambar II.7 Gambar Konektor RS-232 ………. 21

Gambar III.1 Blok Diagram ………. 22

Gambar III.2 Rangkaian hardware ……….. 24

Gambar III.3 Flowchart Mikrokontroler Pengendali ……….. 25

Gambar III.4 Menu Utama ……….. 27

Gambar III.5 Menu Check In ………... 28

Gambar III.6 Menu Check Out ……… 28

Gambar III.7 Flowchart Software pada Komputer ………. 29

Gambar III.8 Format Data ……….. 30

Gambar III.9 Prosedur Ask to Send – Replied No Data ………. 31

Gambar III.10 Prosedur Ask to Send – Replied With Data ………... 32

Gambar III.11 Prosedur Ask to Send – Request Time Out ……… 33

Gambar III.12 Prosedur Password Accepted ……… 34

Gambar III.13 Prosedur Password Denied ………... 34

Gambar IV.1 Inisialisasi Hyper Terminal ……….. 36

Gambar IV.2 Hasil Uji Coba ……….. 36

Gambar IV.3 Hasil Pengujian Status Mikrokontroler 1 ………. 38

Gambar IV.4 Hasil Pengujian Status Mikrokontroler 2 ………. 39

Gambar IV.5 Hasil Pengujian Status Mikrokontroler 3 ………. 40

(9)

Gambar IV.7 Hasil Pengujian Password Accepted Mikrokontroler 2 ………... 42

Gambar IV.8 Hasil Pengujian Password Accepted Mikrokontroler 3 ………... 43

Gambar IV.9 Hasil Pengujian Password Denied Mikrokontroler 1 ………….. 44

Gambar IV.10 Hasil Pengujian Password Denied Mikrokontroler 2 ………….. 45

(10)

DAFTAR LAMPIRAN

LAMPIRAN A LIST PROGRAM MIKROKONTROLER

LAMPIRAN B LIST PROGRAM DELPHI

(11)

LAMPIRAN A

(12)

List Program Mikrokontroler 1

CJNE A,#61H,Terima3

CJNE R0,#10H,NoData

AJMP Kirim

Terima3: ;access denied

CJNE A,#67H,Terima4

MOV P2,#00H

MOV A,#65H

CLR TI

MOV SBUF,A

JNB TI,$

AJMP Inisialisasi

Terima4:

CJNE A,#66H,Inisialisasi ;access granted

(13)

MOV A,#65H

CLR TI

MOV SBUF,A

JNB TI,$

AJMP Inisialisasi

NoData:

AJMP Inisialisasi

Terima: ;address checking

CJNE R3,#00H,Terima2

(14)

MOV A,R4

AJMP Inisialisasi

Delay:

MOV R2,#0FFH

(15)
(16)
(17)
(18)
(19)
(20)

Batal:

JNB P1.1,$

AJMP Inisialisasi

Next3:

CJNE R0,#04H,Batal

MOV R7,A

ACALL Delay

AJMP Start

(21)

List Program Mikrokontroler 2

CJNE A,#61H,Terima3

CJNE R0,#10H,NoData

AJMP Kirim

Terima3: ;access denied

CJNE A,#67H,Terima4

MOV P2,#00H

MOV A,#65H

CLR TI

MOV SBUF,A

JNB TI,$

AJMP Inisialisasi

Terima4:

CJNE A,#66H,Inisialisasi ;access granted

(22)

MOV A,#65H

CLR TI

MOV SBUF,A

JNB TI,$

AJMP Inisialisasi

NoData:

AJMP Inisialisasi

Terima: ;address checking

CJNE R3,#00H,Terima2

(23)

MOV A,R4

AJMP Inisialisasi

Delay:

MOV R2,#0FFH

(24)
(25)
(26)
(27)
(28)
(29)

Batal:

JNB P1.1,$

AJMP Inisialisasi

Next3:

CJNE R0,#04H,Batal

MOV R7,A

ACALL Delay

AJMP Start

(30)

List Program Mikrokontroler 3

CJNE A,#61H,Terima3

CJNE R0,#10H,NoData

AJMP Kirim

Terima3: ;access denied

CJNE A,#67H,Terima4

MOV P2,#00H

MOV A,#65H

CLR TI

MOV SBUF,A

JNB TI,$

AJMP Inisialisasi

Terima4:

CJNE A,#66H,Inisialisasi ;access granted

(31)

MOV A,#65H

CLR TI

MOV SBUF,A

JNB TI,$

AJMP Inisialisasi

NoData:

AJMP Inisialisasi

Terima: ;address checking

CJNE R3,#00H,Terima2

(32)

MOV A,R4

AJMP Inisialisasi

Delay:

MOV R2,#0FFH

(33)
(34)
(35)
(36)
(37)
(38)

Batal:

JNB P1.1,$

AJMP Inisialisasi

Next3:

CJNE R0,#04H,Batal

MOV R7,A

ACALL Delay

AJMP Start

(39)

LAMPIRAN B

(40)

unit Hotel;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, Mask, DBCtrls, DB, ADODB, ExtCtrls, Grids, DBGrids,

ComCtrls,CPort,CPortCtl;

type

TForm1 = class(TForm)

PageControl1: TPageControl;

TabSheet1: TTabSheet;

TabSheet2: TTabSheet;

TabSheet3: TTabSheet;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

Label1: TLabel;

ComboBox1: TComboBox;

Edit1: TEdit;

DataSource1: TDataSource;

ADOTable1: TADOTable;

ADOConnection1: TADOConnection;

ADOTable1Nama: TWideStringField;

ADOTable1Alamat: TWideStringField;

ADOTable1WaktuCheckIn: TDateTimeField;

ADOTable1Kamar: TIntegerField;

ADOTable1Password: TIntegerField;

(41)

Label2: TLabel;

ADOTable1WaktuCheckOut: TDateTimeField;

ADOTable1Biaya: TBCDField;

ADOTable1Discount: TIntegerField;

ADOTable1Tagihan: TBCDField;

(42)

DBEdit13: TDBEdit;

procedure DBGrid1TitleClick(Column: TColumn);

procedure Edit1KeyPress(Sender: TObject; var Key: Char);

procedure FormShow(Sender: TObject);

procedure ComPort1RxChar(Sender: TObject; Count: Integer);

procedure Button2Click(Sender: TObject);

procedure FormActivate(Sender: TObject);

procedure Button1Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Timer1Timer(Sender: TObject);

(43)

procedure Timer2Timer(Sender: TObject);

function RandomPassword(PLen: Integer): string;

var

Result := Result + str[Random(Length(str)) + 1];

until

(Length(Result) = PLen)

end;

procedure TForm1.DBGrid1TitleClick(Column: TColumn);

(44)

ADOTable1.IndexFieldNames := Column.FieldName;

end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

If Key = chr(VK_RETURN) Then

Begin

Key := #0;

AdoTable1.IndexFieldNames := ComboBox1.Text;

ADOTable1.Locate(ComboBox1.Text,Edit1.Text,[loPartialKey]);

End;

end;

procedure TForm1.FormShow(Sender: TObject);

Var I : Integer;

begin

ComboBox1.Clear;

For I := 0 To ADOTable1.FieldCount-1 Do

If ADOTable1.Fields[i].DataType = ftWideString

Then ComboBox1.Items.Add(ADOTable1.Fields[i].FieldName);

end;

procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);

Var

Str: String;

w: integer;

begin

ComPort1.ReadStr(Str,Count);

(45)

w:=120;

(Edit4.Text = ADOTable1.FieldByName('Kamar').AsString )and

(Edit5.Text = ADOTable1.FieldByName('Password').AsString )

(46)
(47)

procedure TForm1.Button2Click(Sender: TObject);

Var

Str : String;

begin

Str := Edit2.Text;

Comport1.WriteStr(Str);

end;

procedure TForm1.FormActivate(Sender: TObject);

begin

Comport1.Open;

Comport1.WriteStr('R');

Comport1.Close;

Comport1.Open;

Comport1.WriteStr('a');

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

DBEdit5.Text := RandomPassword(4);

end;

procedure TForm1.Button3Click(Sender: TObject);

var Str: string;

begin

if edit4.text = '101' then Str:= 'S' else

if edit4.text = '102' then Str:= 'T' else

(48)

Comport1.Open;

Comport1.WriteStr(Str);

Str:='a';

Comport1.WriteStr(Str);

timer1.Enabled := true;

end;

procedure TForm1.Timer1Timer(Sender: TObject);

var Str: string;

begin

if edit4.text = '101' then Str:= 'S' else

if edit4.text = '102' then Str:= 'T' else

if edit4.text = '103' then Str:= 'R';

Comport1.Open;

Comport1.WriteStr(Str);

Str:='a';

Comport1.WriteStr(Str);

end;

procedure TForm1.Button4Click(Sender: TObject);

begin

Comport1.Close;

edit3.Clear;

edit4.clear;

end;

procedure TForm1.Timer2Timer(Sender: TObject);

var Str: string;

(49)

Str:= edit2.text;

Comport1.WriteStr(Str);

edit4.text:= '101';

end;

(50)

LAMPIRAN C

(51)
(52)

1

BAB I

PENDAHULUAN

I.1 Latar Belakang

Aplikasi berbasis mikrokontroler pada berbagai perangkat elektronika

berkembang sangat pesat dewasa ini. Berbagai robot canggih, sistem keamanan

rumah, telekomunikasi dan sistem komputer banyak menggunakan mikrokontroler

sebagai unit pengontrol utama. Perbedaan mikroprosesor dan mikrokontroler terletak

pada kelengkapannya, di mana mikrokontroler adalah mikroprosesor yang

mempunyai memory dan port I/O sendiri.

Keunggulan lain dari mikrokontroler yaitu dari kompatibilitasnya terhadap

komputer, salah satu cara komunikasi antara mikrokontroler dengan komputer adalah

melalui serial port(RS-232). Namun serial portmempunyai keterbatasan yaitu hanya

dapat berkomunikasi secara point to point. Tujuan dari tugas akhir ini adalah untuk

membuat sistem komunikasi RS-232 secara multipoint sehingga dapat mengendalikan

beberapa mikrokontroler sekaligus.

Aplikasi dari sistem komunikasi RS-232 secara multipoint diantaranya

diterapkan pada bidang perhotelan yaitu untuk mengontrol kunci pada tiap kamar.

Cara kerja sistem pengontrolannya yaitu dengan mencocokkan kode PIN ke database

(53)

2

I.2 Identifikasi Masalah

1. Bagaimana mengendalikan beberapa mikrokontroler melalui sebuah serial

port ?

2. Bagaimana membuat database untuk sistem akses pintu dengan

password?

I.3. Tujuan

1. Mengendalikan beberapa mikrokontroler pengontrol pintu dari komputer

utama melalui sebuah serial port yang mampu berkomunikasi secara

multipoint.

2. Membuat database untuk sistem akses pintu dengan password.

I.4 Pembatasan Masalah

1. Sistem komunikasi RS-232 secara multipoint untuk perhotelan diaplikasikan

berupa prototype.

2. Human interface device yang digunakan berupa keypad dan berjumlah 3 buah. 3. Database dibuat menggunakan Microsoft Access 2000

(54)

3

I.5 Sistematika Pembahasan

Bab I

Pada bab I dibahas tentang latar belakang, identifikasi masalah, tujuan

dan pembatasan masalah pada tugas akhir ini.

Bab II

Pada bab II dibahas tentang landasan teori mengenai mikrokontroler

pada umumnya, mengenai mikrokontroler AT89S52 pada khususnya,

serta mengenai serial port (RS-232).

Bab III

Pada bab III dibahas tentang perancangan hardware, perancangan

software, serta protokol komunikasi antara komputer dengan mikrokontroler.

Bab IV

Pada bab IV dibahas mengenai uji coba dari hardware, software serta

uji coba hardware dan software secara keseluruhan.

Bab V

Pada bab V dibahas mengenai kesimpulan dan saran dari pelaksanaan

(55)

47

BAB V

KESIMPULAN DAN SARAN

V.1 Kesimpulan

1. RS-232 dapat berkomunikasi secara multipoint dengan menggunakan

protokol tugas akhir ini. Dengan kemampuan komunikasi secara multipoint

tersebut RS-232 dapat dikembangkan lebih lanjut untuk berbagai aplikasi lain.

2. Database untuk sistem akses pintu dengan password dapat direalisasikan pada tugas akhir ini.

V.2 Saran

1. Mikrokontroler pengendali dapat dikembangkan lebih jauh sebagai pengendali

ruangan seperti pengendali lampu, pengendali pendingin ruangan dll.

2. Sistem komunikasi RS-232 secara multipoint dapat dikembangkan menjadi

(56)

DAFTAR PUSTAKA

1. Budiharto, Widodo, “ Perancangan Sistem dan Aplikasi Mikrokontroler”, Elex

Media Komputindo, Jakarta, 2005.

2. Malvino, Albert Paul ; Jerald A. Brown, “Digital Computer Electronics”, Mc

Graw Hill, 3rd Edition, 1992.

3. Marcus, Teddy ; Agus Prijono ; Josef Widiadhi, “ Pemrograman Delphi dengan

ADOExpress” , Informatika , Bandung, 2005.

4. Setiawan , Rachmad, “ Mikrokontroler MCS-51”, Graha Ilmu, Yogyakarta,

2006.

5. www.atmel.com , 9 Maret 2006.

Referensi

Dokumen terkait

Eli.2011.Hubungan Gaya Belajar Visual, Auditori, dan Kinestetik dengan prestasi Belajar siswa kelas IV Gugus Gajah mungkur kecamatan getasan

Secara umum orang yang mengalami stress mengalami sejumlah gangguan fsik seperti : mudah masuk angin, mudah pening-pening, kejang otot (kram), mengalami

Hal tersebut didukung pula oleh angket sebagai data tambahan bahwa pada umumnya bahasa yang sering digunakan mahasiswa baik di lingkungan keluarga maupun ketika

Karena saat anda berkata tidak bisa, sama dengan menegaskan kepada pikiran bawah sadar anda untuk tidak bisa, sedangkan suatu saat anda pasti bisa.Tentunya hal

Berdasarkan analisa data lapangan yang telah dilakukan maka dapat ditarik kesimpulan sebagai berikut : Kebutuhan air irigasi di lahan kering desa Parsanga

Dari hasil penelitian dan pembahasan maka dapat disimpulkan bahwa pengembangan perangkat pembelajaran IPA terpadu berkarakter menggunakan pendekatan humanistik berbantu alat

Puji syukur penulis panjatkan kehadirat Allah SWT yang telah melimpahkan Rahmat dan Hidayah-Nya sehingga penulis dapat menyelesaikan skripsi dengan judul “Hubungan Antara

The research has been conducted on the incident and analysis of risk factors drug liver injury (DILI) in a Surabaya Hospital.. The aim of this study was to determine the incident