BAB 2 LANDASAN TEORI
2.1. Sistem Parkir Sistem parkir di Indonesia dapat dibagi menjadi dua jenis yaitu sistem parkir di badan jalan (on-street parking) dan sistem parkir di dalam pelataran parkir (off-street parking). Pada sistem di dalam pelataran parkir dapat dibagi lagi menjadi dua jenis yaitu gedung parkir (parking building) dan parkir di bawah tanah (basement parking)[1].
2.1.1.
Komponen Sebuah Sistem Parkir Pada umumnya komponen-komponen yang terdapat pada sebuah sistem parkir seperti di atas yaitu petugas parkir, PC (personal computer) yang ditempatkan pada pos masuk dan pos keluar. Petugas parkir pada pos masuk bertugas untuk memasukkan data berupa nomor plat mobil ke dalam database pada PC dan memberikan tiket pada costumer. Sedangkan petugas parkir pada pos keluar bertugas untuk mengambil tiket dan uang parkir dari costumer. Dengan berkembangnya teknologi, sistem parkir juga
mengalami
perkembangan
dengan
memanfaatkan
teknologi
didalamnya. Sistem parkir dengan menggunakan teknologi yang mana dapat juga disebut TechnoParking[2] menggunakan komponen seperti barcode
7
8
reader, barcode card, ticket dispenser dan portal. Pada sistem TechnoParking, petugas parkir memasukkan nomor plat kendaraan ke dalam database kemudian tiket di-print dengan menggunakan ticket dispenser dan costumer menggambil tiket tersebut. Pada saat keluar, customer memberikan tiket kepada petugas parkir dan selanjutnya tiket di-scan dengan menggunakan barcode reader dan portal diangkat.
2.1.2.
Issue pada Sistem Parkir Pada sistem parkir telah ada seperti sistem TechnoParking mempunyai keunggulan yaitu: ¾ Mengurangi tingkat kebocoran uang parkir. ¾ Pemeliharaan sistem yang mudah dan murah. ¾ Laporan administrasi transaksi parkir yang jelas dan akurat. ¾ Menggunakan komponen-komponen yang mudah diaplikasikan (user friendly). ¾ Keamanan yang lebih terjamin. Disamping itu, sistem parkir di atas juga mempunyai kekurangan yaitu : ¾ Jika jumlah kendaraan yang parkir banyak maka membingungkan customer untuk mencari slot parkir yang kosong (belum ada informasi slot parkir yang kosong). Oleh karena itu, pada penelitian ini dibuat sebuah sistem yang dapat membantu memberikan informasi mengenai letak dan kondisi slot parkir kepada petugas pos masuk.
9
2.1.3.
Teknologi untuk Sistem Parkir Pada saat ini, teknologi yang telah digunakan didalam sistem parkir diantaranya seperti: ¾ Smart Card ¾ RF ID ¾ Webcam ¾ Loop Sensor ¾ Sensor Ultrasonic ¾ Sensor Metal Detector Pada penelitian ini, Mapping Parking System menggunakan Sensor PING Ultrasonic.
2.2. Sensor PING Ultrasonic Dalam Mapping Parking Sistem untuk melakukan pendeteksian mobil pada slot parkir digunakan PING)))TM Ultrasonic Distance Sensor(#28015). Sensor PING Ultrasonic yang digunakan adalah sensor dari perusahaan PARALLAX yang memiliki karakteristik sebagai berikut[3]: 1. Sumber catu daya yang dibutuhkan adalah 5 volt dan sumber arus 30 mA (minimum) dan 35 mA (maksimum). 2. Jarak objek yang dideteksi adalah 2cm (minimum) sampai dengan 300cm (maksimum). 3. Mempunyai 3 pin interface (power, ground, signal I/O atau SIG). 4. Input trigger-nya merupakan pulsa TTL positive, 2 µS min, 5 µS typ. 5. Pulsa Echo-nya merupakan pulsa TTL positive, 115 µS to 18.5 µS.
10
6. Hold off Echo-nya merupakan 350 µS dari kondisi falling dari pulsa trigger. 7. Frekuensi burst-nya 40 KHz (diatas kemampuan manusia untuk mendengar) untuk 200 µS. Skematik dari Sensor PING Ultrasonic adalah sebagai berikut :
Gambar 2.1 Skematik Sensor PING Ultrasonic Untuk dapat membuat Sensor PING Ultrasonic melakukan pendeteksian jarak suatu objek maka dibutuhkan sinyal pulsa trigger selama 2 µS kemudian Sensor PING Ultrasonic akan memancarkan gelombang ultrasonik. Gelombang ultrasonik ini melalui udara dengan kecepatan kurang lebih 344 meter per detik, mengenai objek dan memantul kembali ke Sensor PING Ultrasonic. Sensor PING Ultrasonic akan mengeluarkan pulsa ’high’ pada pin SIG setelah memancarkan gelombang ultrasonik dan setelah terdeteksi sinyal pantul atau Echo maka Sensor PING Ultrasonic akan membuat pin SIG ’low’. Lebar pulsa ’high’ ini sesuai dengan lama waktu gelombang ultrasonik untuk 2 kali jarak terhadap objek, sehingga dapat dibuat persamaan sebagai berikut ini :
Jarak objek =
lebar pulsa waktu tempuh x 344 m/s 2
Pers. 1
11
Gambar berikut adalah cara kerja Sensor PING Ultrasonic:
Gambar 2.2 Cara kerja Sensor PING Ultrasonic
2.2.1.
Gelombang Ultrasonik
Gelombang ultrasonik adalah gelombang yang memiliki frekuensi diatas 20 KHz dan diluar jangkauan pendengaran manusia[4]. Sensor Ultrasonik bekerja berdasarkan prinsip pantulan gelombang suara, dimana sensor ini menghasilkan gelombang suara yang kemudian menangkapnya kembali dengan perbedaan waktu sebagai dasar penginderaanya. Perbedaan waktu antara gelombang suara yang dipancarkan dengan ditangkapnya kembali gelombang suara tersebut merupakan representasi jarak. Kecepatan rambat gelombang ultrasonik dipengaruhi oleh beberapa faktor antara lain adalah suhu, tekanan, kelembaban dan sinyal radio. Hal yang harus diperhatikan ketika menggunakan sensor ultrasonik terhadap suatu objek yaitu sebagai berikut : ¾ Bentuk dan ukuran objek
Objek dengan ukuran yang lebih besar akan memantulkan lebih banyak gelombang dibandingkan dengan objek yang
12
berukuran kecil sehingga memberikan hasil yang lebih presisi. Bentuk suatu objek mempengaruhi banyaknya pantulan yang dipantulkan objek. Objek dengan bentuk bulat akan memantulkan gelombang ke segala arah sehingga pantulan yang ditangkap menjadi lemah. Objek dengan bentuk datar akan memantulkan gelombang dengan lebih baik. ¾ Jenis material
Objek padat akan memantulkan gelombang lebih baik dibandingkan dengan objek cair. Objek padat yang terbuat dari besi atau baja akan memberikan pantulan (echo) yang lebih baik dibandingkan dengan objek padat terbuat dari kayu atau gabus. Hal ini terjadi karena objek padat yang terbuat dari kayu atau gabus
sedikit-banyak
akan
menyerap
gelombang
yang
mengenainya sebelum dipantulkan kembali.
¾ Pola permukaan
Objek dengan permukaan datar, halus dan tegak lurus terhadap sinyal ultrasonik yang dipancarkan sensor akan memberikan pantulan (echo) yang lebih kuat daripada objek dengan permukaan tidak rata.
13
2.3. Microcontroller AT89S52 Microcontroller AT89S52 adalah sebuah microcontroller 8 bit yang
merupakan keluarga dari microcontroller AT89S51 tetapi dengan kapasitas RAM dan ROM yang lebih besar dan juga memiliki timer tambahan[5].
Gambar 2.3 Block Diagram AT89S52
14
2.3.1.
Fitur Atmel AT89S52 Microcontroller
Fitur yang disediakan oleh AT89S52 yaitu sebagai berikut ini[5]: 1. 8 bit microcontroller dengan In-System Programmable (ISP) flash memory.
2. Single bit logic . 3. Pengalamatan program memory (ROM) sebesar 64 K. 4. Pengalamatan data memory (RAM) sebesar 64 K. 5. On chip ROM, dengan ukuran 8KB. 6. On chip RAM, dengan ukuran 256 Byte. 7. 32 biderectional I/O (4 port) . 8. 2 buah 16 bit timer/counter. 9. Saluran full duplex UART. 10. 6 buah sumber interrupt.
2.3.2.
Arsitektur Microcontroller AT89S52 Microcontroller AT89S52 di rancang dengan logika statis untuk
operasi dengan frekuensi menurun sampai nol dan mendukung 2 mode piranti lunak hemat daya yang dapat dipilih. Mode idle menghentikan CPU tetapi memperbolehkan RAM, timer/counter, port serial dan sistem interrupt untuk tetap aktif. Mode power down menyimpan isi dari RAM
tetapi menghentikan oscilator, men-disable fungsi chip lainnya sampai reset perangkat keras selanjutnya.
15
Gambar 2.4 Arsitektur Microcontroller AT89S52
2.3.3.
Konfigurasi Pin-pin Microcontroller AT89S52
Gambar 2.5 Konfigurasi Pin-pin Microcontroller AT89S52
16
Port 0 adalah port input/output bi-directional open drain 8 bit,
ketika logika 1 dituliskan pada pin pada port 0, pin dapat digunakan sebagai masukkan hambatan tinggi, selain itu port 0 juga dapat dikonfigurasikan sebagai jalur data/alamat multiplexed order selama akses memori data dan program. Dalam mode ini port 0 memiliki pull-up internal. Port 0 juga menerima bytes kode selama pemrograman flash dan
keluaran dari bytes kode selama verifikasi program. Selama verifikasi berlangsung dibutuhkan pull-up external. Port 1 adalah port input/output bi-directional 8 bit dengan pull-up internal. Buffer keluaran port 1 dapat menangani 4 masukkan TTL,
ketika logika 1 dituliskan pada pin port 1, pin-pin tersebut dinaikkan menjadi high oleh pull-up internal sehingga dapat digunakan sebagai masukkan. Pin port 1 yang diturunkan secara eksternal menjadi low akan menimbulkan arus (IIL) dikarenakan oleh pull-up internal. Pada port 1 juga menerima alamat bytes low order selama pemrograman dan verifikasi. Disamping itu, P1.0 dan P1.1 dapat dikonfigurasi menjadi timer/counter
2
masukkan
penghitung
eksternal
(P1.0/T2)
dan
timer/counter 2 masukkan trigger (P1.1/T2EX). Port 2 adalah port input/output bi-directional 8 bit dengan pull-up internal. Buffer keluaran pada port 2 dapat menangani 4 input TTL,
ketika logika 1 dituliskan pada pin port 2, pin-pin tersebut akan dinaikkan menjadi high oleh pull-up internal dan dapat digunakan sebagai masukkan. Port 2 mengeluarkan alamat byte high order selama pengambilan dari memori program eksternal yang menggunakan alamat
17
16 bit. Port 2 juga menerima bit alamat high order dan beberapa sinyal control selama pemrograman flash dan verifikasi. Port 3 adalah port input/output bi-directional 8 bit dengan pull-up internal. Buffer keluaran pada port 3 dapat menangani 4 input TTL,
ketika logika 1 dituliskan pada pin port 3,
pin-pin tersebut akan
dinaikkan menjadi high oleh pull-up internal dan dapat digunakan sebagai masukkan. Pin ALE (Address Latch Enable) adalah pulse keluaran untuk latching low byte dari suatu alamat selama akses ke memori eksternal. Pin ini juga memberikan masukkan pulse program atau PROG selama
pemrograman flash. Dalam pengoperasian normal, ALE mengeluarkan pulse secara tetap 1/6 dari nilai frekuensi oscilator dan dapat digunakan
untuk tujuan clocking atau timing external. Satu pulse ALE dilewati setiap akses ke memori data eksternal. Pin Reset (RST) adalah masukkan untuk reset. Logika high pada pin ini terjadi selama 2 siklus instruksi oscilator bekerja ketika akan mereset device. Pin PSEN (Program Store Enable) adalah strobe baca ke memori
program eksternal. Ketika microcontroller AT89S52 mengeksekusi kode dari memori program eksternal, PSEN diaktifkan 2 kali setiap siklus instruksi, kecuali pengaktifan 2 PSEN dilewati selama masing-masing akses ke memori data eksternal. Pin EA (External Access Enable) harus disambungkan ke GND (ground) dengan tujuan untuk meng-enable device agar dapat mengambil
18
kode dari memori program eksternal yang berlokasi dari 0000h sampai dengan FFFFh. Pin EA harus dihubungkan ke VCC untuk dapat melakukan eksekusi program internal. Pin ini juga menerima tegangan enable pemrograman sebesar 12 Volt (Vpp) selama pemrograman flash
ketika pemrograman 12 Volt dipilih. Pin XTAL 1 adalah masukkan ke amplifier dengan inverting oscilator dan masukkan ke clock internal pada rangkaian operasi. Pin XTAL 2 adalah keluaran dari amplifier dengan inverting oscilator.
2.3.4.
Organisasi Memori Microcontroller AT89S52 Microcontroller AT89S52 mengimplementasikan 256 byte dari onchip RAM. Sebagian dari memori tersebut yaitu sebesar 128 byte
bagian atas mengerjakan ruang alamat paralel ke Special Function Register (SFR) sehingga 128 byte bagian atas memiliki alamat yang sama
dengan ruang SFR tetapi secara fisik terpisah dari ruang SFR. Jika sebuah instruksi mengakses lokasi internal di atas alamat 7Fh, mode alamat yang digunakan dalam instruksi menunjukkan apakah CPU mengakses 128 byte bagian atas dari RAM atau ruang SFR. Ruang SFR di akses dengan
instruksi yang menggunakan mode pengalamatan direct adderssing.
19
2.3.5.
Timer pada Microcontroller AT89S52
Pada microcontroller AT89S52 terdapat tiga buah timer yakni timer 0, timer 1 dan timer 2. Kegunaan dari timer pada microcontroller AT89S52 yaitu sebagai berikut : ¾
Menghitung dan menyimpan nilai dari waktu diantara events.
¾
Menghitung jumlah dari events itu sendiri.
¾
Membangkitkan bandrates untuk port serial. Timer 0 dan timer 1 pada microcontroller AT89S52 memiliki
fungsi yang sama secara esensial. Kedua timer tersebut terbagi dua SFR yakni TMOD dan TCON yang mengontrol timer. Berikut merupakan SFR yang berhubungan dengan timer pada microcontroller AT89S52: Table 2.1. SFR pada Timer SFR Deskripsi TH0 Timer 0 high TL0 Timer 0 low TH1 Timer 1 high TL1 Timer 1 low TH2 Timer 2 high TL2 Timer 2 low TCON Kontrol timer T2CON Kontrol timer 2 TMOD Mode timer T2MOD Mode timer 2
Address SFR 8Ch 8Ah 8Dh 8Bh 8Eh 8Fh 88h 0C8h 0C9h 89h
Timer 2 merupakan timer 16 bit yang dapat beroperasi seperti
penghitung events. Jenis operasi dipilih berdasarkan bit C/T2 dalam SFR T2CON. Timer 2 memiliki tiga mode operasi yakni capture, auto reload
dan baudrate generator. Timer 2 terdiri dari dua buah 8 bit register yaitu TH2 dan TL2.
20
2.3.5.1. SFR TMOD SFR TMOD pada microcontroller AT89S52 digunakan
untuk mengontrol mode timer (timer 0 dan timer 1) yang akan digunakan. Masing-masing bit dari SFR digunakan untuk memberikan
informasi
spesifik
kepada
microcontroller
mengenai cara menjalankan timer. Terdapat 4 bit high (bit 4 s.d. bit 7) terhubung dengan timer 1 sedangkan 4 bit low (bit 0 s.d. bit 3) melakukan fungsi yang sama tetapi hanya digunakan
untuk timer 0. Berikut merupakan alternatif pemilihan mode operasi: Table 2.2. Alternatif Mode Operasi Timer 0 dan Timer 1 TxM0 TxM1 Mode Timer Deskripsi Mode 0 0 0 Timer 13 bit 0 1 1 Timer 16 bit 1 0 2 Timer 8 bit auto reload 1 1 3 Mode timer split
2.3.5.2. SFR TCON SFR TCON untuk timer 0 dan timer 1 terdapat pada alamat
88h sedangkan SFR T2CON untuk timer 2 terdapat pada alamat 0C8h. SFR TCON dapat dialamatkan secara bit. SFR TCON digunakan untuk mengkonfigurasi dan mengubah ketiga timer pada
microcontroller
AT89S52
untuk
beroperasi.
SFR
mengendalikan apakah ketiga timer berjalan atau berhenti dan terdapat flag yang bertujuan untuk mengindikasikan bahwa masing-masing timer telah overflow. Berikut ini merupakan
21
timer control untuk masing-masing timer pada microcontroller AT89S52: Table 2.3. TCON pada Microcontroller AT89S52 Bit 7 6 5 4
2.3.6.
Nama TF1 TR1 TF0 TR0
Alamat Bit 8Fh 8Eh 8Dh 8Ch
Fungsi Timer 1 overflow Timer 1 dijalankan Timer 0 overflow Timer 0 dijalankan
Timer 1 1 0 0
Komunikasi Serial Microcontroller AT89S52 Microcontroller
AT89S52
memiliki
kemampuan
untuk
berkomunikasi secara serial melalui pin RXD dan TXD. Satu hal yang perlu diingat tingkat tegangan komunikasi kedua pin serial menggunakan tingkat tegangan TTL. Pada perinsipnya, komunikasi serial adalah komunikasi dengan transmisi
data
yang
dilakukan
per-bit.
interface
serial
hanya
membutuhkan jalur yang sedikit (umumnya hanya 2 jalur) sehingga lebih menghemat pin jika dibandingkan dengan interface parallel. Komunikasi serial ada 2 macam, asynchronous serial dan synchonous serial. Synchonous serial adalah komunikasi serial dimana
hanya ada satu pihak (penerima atau pengirim) yang menghasilkan clock dan mengirimkan clock tersebut bersama-sama dengan data. Contoh penggunaan synchonous serial terdapat pada transmisi data keyboard. Asynchonous serial adalah komunikasi dimana kedua pihak
(pengirim atau penerima) masing-masing menghasilkan clock namun hanya data yang ditransmisikan, tanpa clock. Agar data yang dikirim
22
dengan data yang diterima, maka frekuensi clock pengirim dan penerima harus sama dan harus terdapat sinkronisasi. Setelah adanya sinkronisasi, pengirim akan mengirimkan datanya sesuai
dengan
frekuensi
clock
penerima.
Contoh
penggunaan
asynchonous serial adalah pada universal asynchonous recevier transmitter (UART) yang digunakan pada serial port (COM) komputer. Microcontroller AT89S52 mendukung komunikasi serial secara
asinkron, bahkan dari empat serial mode yang dimiliki microcontroller AT89S52 kompatibel dengan UART. Dalam komunikasi serial, perlu
diperhatikan kecepatan transfer data atau disebut juga dengan baud rate. Untuk membangkitkan baud rate dapat digunakan timer 1 dengan mode 8 bit auto-reload maupun timer 2 dengan mode 16 bit auto-reload.
Secara singkat komunikasi serial pada Microcontroller dapat diwakili dengan blok diagram sebagai berikut :
Gambar 2.6 Blok Diagram Komunikasi Serial Microcontroller AT89S52
23
SCON atau yang lebih dikenal dengan Serial Condition
merupakan kondisi logic dari bit yang digunakan dalam komunikasi serial dan dapat direperesentasikan sebagai berikut : Tabel 2.4. Struktur dari SCON (Serial Condition) SM0
2.3.7.
SM1
SM2
REN
TB8
RB8
TI
RI
Mode Operasi Microcontroller AT89S52 Microcontroller AT89S52 memiliki 4 mode komunikasi serial.
Mode 0 berupa synchonous serial (shift register), sedangkan 3 mode yang laian berupa asynchonous serial (UART). Pada semua mode, pengiriman dilakukan jika ada intsruksi yang mengisi nilai register SBUF. Sedangkan pada saat penerimaan, data yang diterima akan disimpan pada register SBUF.
Secara ringkas keempat mode kerja tersebut bisa dibedakan sebagai berikut: Mode 0, Mode ini bekerja secara sinkron, data serial dikirim dan
diterima melalui kaki P3.0 (RxD), dan kaki P3.1 (TxD) dipakai untuk menyalurkan clock pendorong data serial yang dibangkitkan oleh microcontroller.
Data dikirim atau diterima 8 bit sekaligus, dimulai dari bit yang bobotnya paling kecil (bit ke-0) dan diakhiri dengan bit yang bobotnya paling besar (bit ke-7). Kecepatan pengiriman data (baudrate) adalah sebagai berikut : Baudrate =
1 × f osilator _ kristal 12
Pers.2
24
Mode 1, Mode ini dan mode-mode berikutnya bekerja secara asinkron,
data dikirim melalui kaki P3.1 (TxD), dan diterima melalui kaki P3.0 (RxD). Pada mode 1 data dikirim atau diterima 10 bit sekaligus, diawali dengan 1 bit start, disusul dengan 8 bit data yang di mulai dari bit yang bobotnya paling kecil (bit ke-0), diakhiri dengan 1 bit stop. Pada microcontroller AT89351 yang berfungsi sebagai penerima bit stop ditampung pada RB8 dalam register SCON. Kecepatan pengiriman data (baudrate) bisa diatur sebagai berikut : ¾ Using Timer 1 k ∗ FOSC 32 ∗ 12 ∗ (256 − TH 1 ) k ∗ FOSC TH1 = 256 − 384∗ Baud Rate Baud Rate =
Pers.3
Pers. 4
Nilai k tergantung pada bit SMOD (Register PCON)
If SMOD = 0, then K = 1 If SMOD = 1, then K = 2 Æ Double BaudRate ¾ Using Timer 2 o Jika Timer 2 diclock dari pin T2 (P1.0)
Baud Rate =
Timer 2 overflow Rate 16
Pers.5
o Jika Timer 2 diclock dari internal
Baud Rate =
Fosc. 32 * (65536 − ( RCAP 2 H , RCAP 2 L))
RCAP 2 H , RCAP 2 L = 65536 −
Fosc. 32 * Baud Rate
Pers.6
Pers.7
25
mode inilah yang umum dikenal sebagai UART (Universal Asynchronous Reciever/Transmitter) Mode 2, data dikirim/diterima 11 bit sekaligus, diawali dengan 1 bit
start, disusul 8 bit data yang dimulai dari bit yang bobotnya paling kecil (bit 0), kemudian bit ke 9 yang bisa diatur lebih lanjut, diakhiri dengan 1 bit stop. Pada microcontroller AT89S51 yang berfungsi sebagai pengirim, bit 9 tersebut berasal dari bit TB8 dalam register SCON. Pada microcontroller AT89S52 yang berfungsi sebagai penerima, bit 9 ditampung pada bit RB8 dalam register SCON, sedangkan bit stop diabaikan tidak ditampung. Kecepatan pengiriman data (baudrate) adalah sebagai berikut : ¾ Jika menggunakan SMOD = 1, maka persamaannya adalah
Baudrate =
1 × f osilator _ kristal 32
Pers.8
¾ Jika menggunakan SMOD = 0, maka persamaannya adalah :
Baudrate = Mode 3,
1 × f osilator _ kristal 64
Pers.9
Mode ini sama dengan mode 2, hanya saja kecepatan
pengiriman data (baudrate) bisa diatur sesuai dengan keperluan, seperti halnya mode 1. Pada mode asinkron (mode 1, mode 2, mode 3), port serial microcontroller AT89S52 bekerja secara full duplex, artinya pada saat yang sama port serial ini bisa mengirim data sekaligus menerima data.
26
Register SBUF merupakan register penghubung port serial. Dalam keempat mode diatas, semua instruksi yang mengakibatkan perubahan isi SBUF akan mengakibatkan port serial mengirimkan data keluar dari microcontroller AT89S52. Agar port serial bisa menerima data, bit dalam register SCON harus bernilai ’1’. Pada mode 0, proses penerimaan data dimulai dengan intsruksi CLR RI, sedangkan dalam mode lainnya proses penerimaan data diawali oleh bit start yang bernilai ’0’. Data yang diterima port serial dari luar microcontroller AT89S52 diambil dengan instruksi MOV A,SBUF. Mengambil data dari SBUF dan menyimpan data ke SBUF sesungguhnya bekerja pada 2 register yang berlainan meskipun nama register-nya sama-sama SBUF. Mode komunikasi serial pada microcontroller AT89S52 dapat dihadirkan dalam bentuk tabel dibawah ini: Table 2.5. Mode Komunikasi Serial AT89S52 SM0
SM1
Mo de
Description
BaudRate
0
0
0
SHIFT REGISTER
Fosc./12
0
1
1
8-Bit UART
Variable
1
0
2
9-Bit UART
1
1
3
9-Bit UART
F
/64 OR F
osc.
/32
osc.
Variable
2.4. Komunikasi RS-485
Komunikasi RS-485 dikembangkan ditahun 1983 dimana dengan teknik ini, komunikasi data dapat dilakukan pada jarak cukup jauh yaitu 1,2 Km. Selain dapat digunakan untuk jarak jauh teknik ini juga dapat digunakan untuk
27
menghubungkan 32 unit beban sekaligus hanya dengan menggunakan 2 (dua) buah kabel saja tanpa memerlukan referensi ground yang sama antara unit yang satu dengan unit lainnya[6].
2.4.1.
Arsitektur RS-485
Secara umum, RS-485 digunakan sebagai transceiver pada setiap titik dalam jaringan yang bekerja pada metode bi-directional half duplex, yaitu hanya menggunakan dua buah kabel pada jaringan multidrop. Aliran data dapat terjadi dua arah tetapi bergantian hanya terjadi satu aliran setiap saatnya. Agar kinerja jaringan dapat meningkat dengan jelas aliran data full duplex pada mode bi-directional, maka metode hubungan RS–485 harus menggunakan empat buah kabel jaringan. Berikut merupakan penyusun dari arsitektur dari RS-485:
2.4.1.1. Balanced Line Driver
Transmisi berimbang memungkinkan sepasang jalur sinyal mengirimkan suatu sinyal dengan kondisi logika tergantung pada jalur mana yang menghasilkan beda tegangan potensial beda tegangan potensial yang lebih besar dengan perbedaan tegangan antara +2 ~ +6 V yang terdapat pada terminal balanced line driver yang diaktifkan melalui sinyal ‘Enable’. Driver ini terhubung dengan ground, tetapi data biner tidak dapat dipengaruhi oleh sinyal ground tersebut.
28
2.4.1.2. Balanced Line Receiver
Beda tegangan antara dua jalur sinyal masukan (A dan B) minimum sebesar ± 200 mV untuk menentukan kondisi logika dapat dideteksi oleh balanced line receiver dengan tegangan yang dapat diperbolehkan untuk atenuasi pada jalur transmisi berkisar 200mV ~ 6V.
2.4.2.
Karakteristik RS-485
Pada tabel berikut akan menunjukkan perbandingan antara standar komunikasi RS–232 dan RS–485. Tabel 2.6. Perbandingan antara RS–232 dan RS–485 Karakteristik RS–232 RS–485 Mode operasi Metode hubungan Aplikasi Modus komunikasi Transisi Data rate maksimal Jarak maksimal Rentang data ‘0’ Rentang data ‘1’ Tegangan keluaran driver ( V )
Single – ended
Differensial
Point to point 1 transmitter 1 receiver Full duplex Tak seimbang 20 Kbps pada 15 m 15 m saat 20 Kbps +5V ~ +14 V -5V ~ -14 V
Multidrop 32 transmitter 32 receiver Half duplex Seimbang 10 Mbps pada 12 m 1220 m saat 100 Kbps Beda 2 V~ 6 V (A
B)
± 12
-7 ~ +12
± 3000
± 200
3K ~7K
≥ 12K
Tegangan masukan receiver (mV) Tahanan masukan receiver (ohm)
29
2.4.3.
Komponen RS-485 2.4.3.1. Saluran Komunikasi Multidrop
Saluran komunikasi mutidrop menggunakan sepasang kabel yang panjangnya tidak lebih dari 4000 feet, pada kedua ujung saluran masing–masing di pasang resistor 120 Ohm yang menghubungkan kedua kabel, seperti dilihat di rangkaian Gambar 3.8. Resistor tersebut dimaksud untuk mengurangi terjadinya gelombang pantul dalam saluran, yang sering terjadi pada transmisi dengan kecepatan tinggi. Selanjutnya pada saluran tersebut bias di pasangkan sebanyak–banyaknya 32 chip MAX485 Multidrop RS-485 Tranceiver, pin A (pin 6) dari masing–masing IC harus di hubungkan pada kabel pembentuk saluran yang sama, dan pin B (pin 7) dihubungkan ke kabel yang lain. Karena saluran dipakai bersama oleh banyak transceiver, agar Output Line Generator dari masing–masing transceiver tidak berbenturan, dalam rangkaian saluran komunikasi multidrop ditentukan semua Output Line Generator harus dalam keadaan non-aktif
(GE = 0, mengambang–high impedance
state), kecuali Line Generator dari transceiver yang berfungsi sebagai induk (Master) yang boleh aktif (GE = 1). Saat beroperasi Master secara bergilir menghubungi Slave, setelah itu Master menonaktifkan Line Generatornya, Slave yang terpanggil akan mengaktifkan Line Generatornya dan
30
mengirimkan informasi ke saluran kemudian Slave tersebut menonaktifkan kembali Line Generatornya lalu Master mengaktifkan Line Generator untuk menghubungi Slave yang lain. Dengan demikian Master berfungsi untuk mengendalikan saluran, dan komunikasi yang terjadi di saluran adalah komunikasi half-duple, yakni komunikasi dua arah secara bergantian. Pada saat pergantian aktivitas Line Generator Master dan Slave, suatu saat bisa terjadi semua Line Generator tidak aktif secara bersamaan, akibatnya saluran menjadi mengambang dan keadaan logika dari saluran tidak menentu. Untuk mencegah terjadinya hal tersebut, pada saluran ditambahkan 2 buah resistor masing–masing bernilai 82 Ohm. Resistor yang terhubung ke pin A di hubungkan ke +5 Volt dan resistor yang terhubung ke B dihubungkan ke ground. Dengan cara tersebut jika semua Line Generator tidak aktif, maka bisa dipastikan saluaran dalam keadaan ‘1’. Meskipun kerja dari Line Receiver tidak memerlukan ground, tapi untuk menjamin agar pertukaran sinyal antar transceiver bisa terjadi dengan baik, biasanya di samping sepasang kabel saluran multidrop ditambah lagi seutas kabel ground. Mengingat masing–masing transceiver letaknya bisa berjauhan satu sama lain dan terhubung dengan satu daya dari
31
instalasi jala-jala listrik yang berlainan sehingga antara transceiver satu dengan yang lainnya bisa mempunyai selisih potensial listrik yang cukup besar, untuk mencegah aliran arus besar yang bisa merusak transceiver, ground transceiver biasanya tidak dihubungkan langsung ke kabel ground, tapi dipasang resistor sebesar 100–120 Ohm. Aplikasi jaringan multidrop yang sebenarnya dapat diimplementasikan oleh RS–485, dengan kemampuan dapat mengontrol hingga 32 transceiver (transmitter/driver and receiver) pada saat bus transmisi berimbang untuk tegangan differensial common mode (-7 V ~ +12 V) dengan baudrate hingga 100 Kbps dan jangkauan mencapai 4000 feet (1220m). Penggunaan RS–485 pada jaringan komunikasi multidrop adalah dengan menghubungkan satu PC sebagai server yang merupakan pusat pengatur jalannya komunikasi dan pemrosesan data, dengan beberapa peralatan lain sebagai slave yang masing–masing dapat dialamati secara unik. Seluruh device dalam jaringan multidrop terintegrasi dengan penggunaan dua kabel (A dan B) secara bersama–sama.
2.4.3.2. Terminasi pada RS–485
Sebagian besar jalur RS-485 membutuhkan transmisi akibat dari transisi yang cepat, data rate yang tinggi atau kabel yang panjang. Tujuan dari terminasi ini selain untuk
32
menghindari fenomena saluran transmisi, seperti reflection, digunakan juga untuk menyamakan impedansi dari saluran transmisi dan impedansi dari persambungan (node). Jika impedansinya tidak sama, sinyal yang ditransmisikan tidak sepenuhnya masuk ke receiver, dan ada bagian yang ada di refleksikan kembali kesaluran transmisi. Dengan menyamakan impedansi ini, maka efek reflection akan hilang. Kedua ujung dari kabel utama membutuhkan terminasi, berupa terminating resistor. Yang harus diperhatikan, terminating resistor harus ditempatkan di kedua ujung dari kabel, tidak pada tiap node. Besarnya resistor yang digunakan, harus sesuai dengan karakteristik impedansi dari media transmisi yang digunakan, umumnya antara 100Ω sampai 120Ω. Terdapat beberapa pilihan untuk melakukan terminasi pada RS–485, antara lain adalah sebagai berikut: ¾
No Termination
No termination digunakan apabila kabel yang digunakan pendek (10m) dan data rate yang digunakan rendah 100 Kbps. Pada No termination kualitas sinyalnya terbatas. ¾
Parallel
Terminasi parallel merupakan terminasi yang paling populer, yaitu dengan menghubungkan sebuah resistor secara parallel diantara pasangan konduktor yang berada
33
pada setiap ujung. Nilai dari resistor harus sama dengan karakteristik impedansi dari kabel dalam mode diferensial. Jika terminasi dengan cara ini dilakukan maka reflection tidak akan terjadi dan kemurnian dari sinyal yang digunakan sangat baik. ¾
RC Termination
Terminasi RC digunakan untuk meminimalkan disipasi daya. Sebagai ganti dari sebuah resistor, digunakan sebuah resistor yang diserikan dengan sebuah kapasitor. Kapasitor akan tampak seperti hubungan singkat
selama
masa
transisi,
dan
resistor
akan
menterminasi jalur tersebut. Saat kapasitor sedang mengisi (charging), kapasitor tersebut akan memblok arus DC loop dan menghadirkan load yang ringan terhadap jalur. Efek dari low–pass membatasi RC termination untuk data rate yang rendah. Selain itu, kualitas sinyalnya juga terbatas. ¾
Fail safe Bias
Fail safe bias merupakan pilihan terminasi yang paling populer dan terbaik. Ketika jaringan RS–485 dalam keadaan idle, semua RS-485 berada dalam kondisi receive. Dalam kondisi ini, driver tidak aktif, melainkan dalam kondisi tristate, maka kondisi dari jaringan juga tidak diketahui.
34
Kondisi tegangan sebesar 200mV antara B dan A merupakan kondisi yang aman untuk jaringan RS-485, sebab kondisi output dari receiver akan sama dengan kondisi sebelumnya. Untuk menjaga keadaan ini, dipasang hambatan bias (bias resistor) yang berupa resistor pull up dan resistor pull down. Perlu diperhatikan, untuk konfigurasi four wire multidrop network, hambatan bias harus dipasang di sisi receiver.
2.4.3.3. Stub pada RS–485
Menghubungkan
sebuah
node
dengan
kabel
akan
menimbulkan stub (sambungan pada kabel). oleh karena itu, setiap node akan mempunyai stub. Meminimalkan panjang dari stub akan meminimalkan masalah pada saluran transmisi. Standar dari waktu transisi sekitar 10nSec, maka stub harus lebih pendek dari nilai tersebut dan membuat stub sependek mungkin. Stub yang timbul ada 2 titik, yang pertama adalah antara hambatan
terminasi
dan
node
peralatan
dibelakangnya,
sedangkan yang kedua diantara kabel utama dan node yang berada diantara kabel. Stub yang panjang akan menyebabkan sebuah sinyal yang melalui stub tersebut akan terpantul kepada kabel utama setelah mengenai impedansi input dari peralatan
35
yang berada di ujung dari stub tersebut. Efek dari jaringan ini adalah penurunan dari kualitas sinyal.
2.5. Komunikasi RS-232
RS-232
merupakan
standar
komunikasi
single
ended[7],
yang
dikeluarkan oleh EIA sekitar tahun 1962. Sinyal RS-232 menggunakan transmisi tak berimbang (unbalanced transmissiion) yang mempunyai karakteristik, untuk tegangan diatas +3 Volt diterjemahkan sebagai logika low sedangkan untuk yang lebih kecil dari -3 Volt diterjemahkan sebagai logika high. Umumnya tegangan yang dipakai komputer pada port serial adalah +12 Volt (low) dan -12 Volt (high). RS-232 mempunyai kemampuan efektif pada single rate (kecepatan transfer) maksimum 20 Kbps dan jarak media transmisi maksimum 15 meter.
2.6. Tampilan pada GUI
Tampilan yang digunakan dibuat dengan menggunakan program Microsoft Visual Basic 6.0 dimana tampilan yang diberikan sederhana, mudah dimengerti dan jelas bagi petugas parkir pos masuk. Tampilan yang dibuat mengacu pada 8 aturan emas (8 Golden Rule) mengenai perancangan display yang baik[8]. 8 aturan tersebut yaitu: 1. Strive for consistency 2. Enable frequent users to use shortcuts 3. Offer informative feedback 4. Design dialog to yield closure 5. Offer simple error handling
36
6. Permit easy reversal of actions 7. Support internal locus of control 8. Reduce short-term memory load